home *** CD-ROM | disk | FTP | other *** search
/ 95.86.62.111 / 95.86.62.111.tar / 95.86.62.111 / Verzija_Dominik.rar / Verzija_Dominik / SQL / Wtrg.sql < prev   
Text File  |  2011-07-08  |  8MB  |  204,672 lines

  1. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KDrugo6_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KDrugo6_Vnes_Izmena
  2.  
  3. Go
  4. CREATE  TRIGGER tr_KDrugo6_Vnes_Izmena 
  5. ON dbo.KDrugo6
  6. FOR INSERT, UPDATE
  7. AS
  8. BEGIN
  9. Declare 
  10.     @Sifra_6k    smallint,
  11.     @Propagiraj    char(1),
  12.     @Redovi     smallint,
  13.     @VtoraBaza    varchar(20),
  14.     @DaliKup    char(1),
  15.     @DaliPodelKup    char(1),
  16.     @SSQL      varchar(8000)
  17.     SELECT @Sifra_6k = Sifra_6k
  18.     FROM INSERTED 
  19. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  20.     Set @Propagiraj = (Select Propagiraj From KDrugo6 Where Sifra_6k = @Sifra_6k)
  21.     If @Propagiraj='D' 
  22.     Begin
  23.         Update KDrugo6 Set Propagiraj=Null  Where Sifra_6k = @Sifra_6k
  24.         Select Rbr, ImeBaza
  25.         From FirParal
  26.         Set @Redovi = @@RowCount
  27.         While @Redovi > 0  
  28.         Begin
  29.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  30.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  31.             Begin
  32.                 Set @SSQL =  ' Select  Sifra_6k From ' + @VtoraBaza + '..KDrugo6
  33.                         Where Sifra_6k = ' + cast(@Sifra_6k as varchar(5)) + ' '
  34.                 Exec(@SSQL)
  35.                 If @@RowCount <> 0
  36.                       Begin
  37.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KDrugo6
  38.                     Set Ime_6k=D.Ime_6k
  39.                     From KDrugo6 D
  40.                     Where D.Sifra_6k = ' + cast(@Sifra_6k as varchar(5)) + ' 
  41.                     and ' + @VtoraBaza + '..KDrugo6.Sifra_6k = ' + cast(@Sifra_6k as varchar(5)) + ' '
  42.                     Exec(@SSQL)
  43.                      End  -- If  @@RowCount <> 0
  44.                 Else
  45.                      Begin
  46.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KDrugo6 Select * From KDrugo6 Where Sifra_6k= ' + cast(@Sifra_6k as varchar(5)) + ' '
  47.                      Exec(@SSQL)        
  48.                      End  -- Else
  49.             End -- DaliArt
  50.             Set @Redovi = @Redovi - 1
  51.                        end -- While
  52.     End -- Propagiraj
  53. End --Triger
  54. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  55.  
  56. Go
  57. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Grad_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Grad_Vnes_Izmena
  58.  
  59. Go
  60. CREATE  TRIGGER tr_Grad_Vnes_Izmena 
  61. ON dbo.Grad
  62. FOR INSERT, UPDATE
  63. AS
  64. BEGIN
  65. Declare 
  66.     @Sifra_Grad    smallint,
  67.     @Propagiraj    char(1),
  68.     @Redovi     smallint,
  69.     @VtoraBaza    varchar(20),
  70.     @DaliKup    char(1),
  71.     @DaliPodelKup    char(1),
  72.     @SSQL      varchar(8000)
  73.     SELECT @Sifra_Grad = Sifra_Grad
  74.     FROM INSERTED 
  75. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  76.     Set @Propagiraj = (Select Propagiraj From Grad Where Sifra_Grad = @Sifra_Grad)
  77.     If @Propagiraj='D' 
  78.     Begin
  79.         Update Grad Set Propagiraj=Null  Where Sifra_Grad = @Sifra_Grad
  80.         Select Rbr, ImeBaza
  81.         From FirParal
  82.         Set @Redovi = @@RowCount
  83.         While @Redovi > 0  
  84.         Begin
  85.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  86.             If @DaliKup = 'D' And (@DaliPodelKup<>'N' Or @DaliPodelKup Is Null)
  87.             Begin
  88.                 Set @SSQL =  ' Select  Sifra_Grad From ' + @VtoraBaza + '..Grad
  89.                         Where Sifra_Grad = ' + cast(@Sifra_Grad as varchar(5)) + ' '
  90.                 Exec(@SSQL)
  91.                 If @@RowCount <> 0
  92.                       Begin
  93.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Grad
  94.                     Set ImeGrad=D.ImeGrad
  95.                     From Grad D
  96.                     Where D.Sifra_Grad = ' + cast(@Sifra_Grad as varchar(5)) + ' 
  97.                     and ' + @VtoraBaza + '..Grad.Sifra_Grad = ' + cast(@Sifra_Grad as varchar(5)) + ' '
  98.                     Exec(@SSQL)
  99.                      End  -- If  @@RowCount <> 0
  100.                 Else
  101.                      Begin
  102.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Grad Select * From Grad Where Sifra_Grad= ' + cast(@Sifra_Grad as varchar(5)) + ' '
  103.                      Exec(@SSQL)        
  104.                      End  -- Else
  105.             End -- DaliArt
  106.             Set @Redovi = @Redovi - 1
  107.                        end -- While
  108.     End -- Propagiraj
  109. End --Triger
  110. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  111.  
  112. Go
  113. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KDrugo7_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KDrugo7_Vnes_Izmena
  114.  
  115. Go
  116. CREATE  TRIGGER tr_KDrugo7_Vnes_Izmena 
  117. ON dbo.KDrugo7
  118. FOR INSERT, UPDATE
  119. AS
  120. BEGIN
  121. Declare 
  122.     @Sifra_7k    smallint,
  123.     @Propagiraj    char(1),
  124.     @Redovi     smallint,
  125.     @VtoraBaza    varchar(20),
  126.     @DaliKup    char(1),
  127.     @DaliPodelKup    char(1),
  128.     @SSQL      varchar(8000)
  129.     SELECT @Sifra_7k = Sifra_7k
  130.     FROM INSERTED 
  131. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  132.     Set @Propagiraj = (Select Propagiraj From KDrugo7 Where Sifra_7k = @Sifra_7k)
  133.     If @Propagiraj='D' 
  134.     Begin
  135.         Update KDrugo7 Set Propagiraj=Null  Where Sifra_7k = @Sifra_7k
  136.         Select Rbr, ImeBaza
  137.         From FirParal
  138.         Set @Redovi = @@RowCount
  139.         While @Redovi > 0  
  140.         Begin
  141.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  142.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  143.             Begin
  144.                 Set @SSQL =  ' Select  Sifra_7k From ' + @VtoraBaza + '..KDrugo7
  145.                         Where Sifra_7k = ' + cast(@Sifra_7k as varchar(5)) + ' '
  146.                 Exec(@SSQL)
  147.                 If @@RowCount <> 0
  148.                       Begin
  149.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KDrugo7
  150.                     Set Ime_7k=D.Ime_7k
  151.                     From KDrugo7 D
  152.                     Where D.Sifra_7k = ' + cast(@Sifra_7k as varchar(5)) + ' 
  153.                     and ' + @VtoraBaza + '..KDrugo7.Sifra_7k = ' + cast(@Sifra_7k as varchar(5)) + ' '
  154.                     Exec(@SSQL)
  155.                      End  -- If  @@RowCount <> 0
  156.                 Else
  157.                      Begin
  158.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KDrugo7 Select * From KDrugo7 Where Sifra_7k= ' + cast(@Sifra_7k as varchar(5)) + ' '
  159.                      Exec(@SSQL)        
  160.                      End  -- Else
  161.             End -- DaliArt
  162.             Set @Redovi = @Redovi - 1
  163.                        end -- While
  164.     End -- Propagiraj
  165. End --Triger
  166. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  167.  
  168. Go
  169. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_NarReal_Brisi' AND type = 'TR') DROP TRIGGER tr_NarReal_Brisi
  170.  
  171. Go
  172. CREATE TRIGGER tr_NarReal_Brisi
  173. ON [dbo].[NarReal] 
  174. FOR DELETE 
  175. AS
  176. BEGIN
  177. Declare @NarID        int,
  178.     @Sifra_Art    varchar(20), 
  179.     @Kolicina    decimal(18,6),
  180.     @KolicVoStNar    decimal(18,6),
  181.     @RealizKolic    decimal(18,6),
  182.     @Realiziran    char(1)
  183.     SELECT @NarID = NarID, @Sifra_Art = Sifra_Art,  @Kolicina = Kolicina
  184.     FROM INSERTED
  185.     SELECT @KolicVoStNar = Kolic, @RealizKolic = Realiz_Kolic, @Realiziran=Realiziran
  186.     FROM StaNarac
  187.     WHERE NarID = @NarID AND Sifra_Art = @Sifra_Art
  188.     IF @@ROWCOUNT = 0    
  189.     BEGIN
  190.         SET @RealizKolic = @RealizKolic - @Kolicina
  191.         IF @RealizKolic = @KolicVoStNar 
  192.             SET @Realiziran = 'D'
  193.         UPDATE StaNarac SET Realiz_Kolic = @RealizKolic, Realiziran = @Realiziran
  194.         WHERE NarID = @NarID AND Sifra_Art = @Sifra_Art
  195.     END
  196. END
  197.  
  198. Go
  199. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_GRegion_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_GRegion_Vnes_Izmena
  200.  
  201. Go
  202. CREATE  TRIGGER tr_GRegion_Vnes_Izmena 
  203. ON dbo.GRegion
  204. FOR INSERT, UPDATE
  205. AS
  206. BEGIN
  207. Declare 
  208.     @Sifra_Reg    smallint,
  209.     @Propagiraj    char(1),
  210.     @Redovi     smallint,
  211.     @VtoraBaza    varchar(20),
  212.     @DaliKup    char(1),
  213.     @DaliPodelKup    char(1),
  214.     @SSQL      varchar(8000)
  215.     SELECT @Sifra_Reg = Sifra_Reg
  216.     FROM INSERTED 
  217. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  218.     Set @Propagiraj = (Select Propagiraj From GRegion Where Sifra_Reg = @Sifra_Reg)
  219.     If @Propagiraj='D' 
  220.     Begin
  221.         Update GRegion Set Propagiraj=Null  Where Sifra_Reg = @Sifra_Reg
  222.         Select Rbr, ImeBaza
  223.         From FirParal
  224.         Set @Redovi = @@RowCount
  225.         While @Redovi > 0  
  226.         Begin
  227.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  228.             If @DaliKup = 'D' And (@DaliPodelKup<>'N' Or @DaliPodelKup Is Null)
  229.             Begin
  230.                 Set @SSQL =  ' Select  Sifra_Reg From ' + @VtoraBaza + '..GRegion
  231.                         Where Sifra_Reg = ' + cast(@Sifra_Reg as varchar(5)) + ' '
  232.                 Exec(@SSQL)
  233.                 If @@RowCount <> 0
  234.                       Begin
  235.                     Set @SSQL = ' Update ' + @VtoraBaza + '..GRegion
  236.                     Set ImeRegion=D.ImeRegion
  237.                     From GRegion D
  238.                     Where D.Sifra_Reg = ' + cast(@Sifra_Reg as varchar(5)) + ' 
  239.                     and ' + @VtoraBaza + '..GRegion.Sifra_Reg = ' + cast(@Sifra_Reg as varchar(5)) + ' '
  240.                     Exec(@SSQL)
  241.                      End  -- If  @@RowCount <> 0
  242.                 Else
  243.                      Begin
  244.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..GRegion Select * From GRegion Where Sifra_Reg= ' + cast(@Sifra_Reg as varchar(5)) + ' '
  245.                      Exec(@SSQL)        
  246.                      End  -- Else
  247.             End -- DaliArt
  248.             Set @Redovi = @Redovi - 1
  249.                        end -- While
  250.     End -- Propagiraj
  251. End --Triger
  252. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  253.  
  254. Go
  255. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KSPromet_Vnes' AND type = 'TR') DROP TRIGGER tr_KSPromet_Vnes
  256.  
  257. Go
  258. CREATE TRIGGER tr_KSPromet_Vnes ON [dbo].[KSPromet] 
  259. FOR INSERT
  260. AS
  261. BEGIN
  262.     Declare @Sifra_OE smallint, @Sifra_Art varchar(20), @Kolic decimal(18,6), @Sost decimal(18,6)
  263.     Declare InsStavki Cursor Fast_Forward For
  264.     Select Sifra_OE, Sifra_Art, Kolic     From Inserted
  265.     Open InsStavki
  266.     Fetch Next From InsStavki  Into @Sifra_OE, @Sifra_Art, @Kolic
  267.     While @@Fetch_Status = 0
  268.     Begin
  269.         SELECT @Sost = Sostojba FROM KatKasa WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art
  270.         IF @@RowCount >0
  271.             UPDATE KatKasa SET Sostojba = @Sost - @Kolic WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art
  272.         Fetch Next From InsStavki Into @Sifra_OE, @Sifra_Art, @Kolic
  273.     End --While
  274.     Close InsStavki
  275.     Deallocate InsStavki
  276. END
  277.  
  278. Go
  279. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_StaNaracRealReal_Insert' AND type = 'TR') DROP TRIGGER tr_StaNaracRealReal_Insert
  280.  
  281. Go
  282. CREATE  TRIGGER tr_StaNaracRealReal_Insert
  283. ON dbo.StaNaracReal
  284. FOR INSERT
  285. AS
  286. BEGIN
  287. DECLARE
  288.     @NarId             int,
  289.     @Sifra_Art         varchar(20),
  290.     @Kolic             decimal(18, 6),
  291.     @Kolic_BO         decimal(18, 6),
  292.     @Sifra_Nar         smallint,
  293.     @Sifra_OE        Smallint,
  294.     @VlIzl            Char(1),
  295.     @Sifra_GrNar    smallint,
  296.     @POsn            Decimal(6,2),
  297.     @soaVlez        decimal(18,6),
  298.     @soaIzlez        decimal(18,6),
  299.     @soaVlez_BO        decimal(18,6),
  300.     @soaIzlez_BO    decimal(18,6),
  301.     @Prvo            int,
  302.     @DokrID        int
  303. set @Prvo = 1
  304. Declare InsStavki Cursor Fast_Forward For
  305. Select NarId, Sifra_Art, Kolic, Kolic_BO, Sifra_Nar, DokrID
  306. From Inserted
  307. Open InsStavki
  308. Fetch Next From InsStavki 
  309. INTO @NarId, @Sifra_Art, @Kolic, @Kolic_BO, @Sifra_Nar,@DokrID
  310. While @@Fetch_Status = 0
  311. Begin
  312.    if @Prvo = 1
  313.    Begin
  314.        set @Prvo = 0    -- Za da ne prebaruvame vo baza edno te isto 100 pati
  315.        Select @VlIzl = VlIzl, @Sifra_GrNar = Sifra_GrNar 
  316.        FROM TipNarac WHERE Sifra_Nar = @Sifra_Nar
  317.        Select @Sifra_Oe=Sifra_Oe From Naracki Where NarID=@NarID
  318.        Select @Posn=T.ProcOsn From Katart K Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar
  319.    end
  320.    If @Sifra_GrNar IS NOT NULL AND @DokrID IS NOT NULL
  321.    Begin
  322.     if @Kolic_BO is null
  323.        set @Kolic_BO = 0
  324.     -- Barame zapis vo SoNar
  325.     Select @soaVlez=Vlez, @soaIzlez=Izlez, @SoaVlez_BO=Vlez_BO, @SoaIzlez_BO=Izlez_BO
  326.     From SoNar Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  327.     -- Ako ne postoi dodavame nov
  328.     IF @@ROWCOUNT = 0                -- Ne postoi zapis vo SoNar
  329.         Begin                        -- pa vednas dodavame soodveten
  330.             if @SoaVlez_BO is null
  331.                 set @SoaVlez_BO = 0
  332.                 if @SoaIzlez_BO is null
  333.                 set @SoaIzlez_BO = 0
  334.             If @VlIzl = 'V'
  335.                 Begin
  336.                     Set @soaVlez = 0
  337.                     Set @soaIzlez = @Kolic
  338.                     Set @soaVlez_BO = 0
  339.                     Set @soaIzlez_BO = @Kolic_BO
  340.                 End
  341.             Else
  342.                 Begin
  343.                     Set @soaVlez = @Kolic
  344.                     Set @soaIzlez = 0
  345.                     Set @soaVlez_BO = @Kolic_BO
  346.                     Set @soaIzlez_BO = 0
  347.                 End
  348.             Insert SoNar (Sifra_OE, Sifra_Art, Sifra_GrNar, Vlez, Izlez, Cena, DanCena, POsn, Vlez_BO, Izlez_BO)
  349.             Values(@Sifra_OE, @Sifra_Art, @Sifra_GrNar, @soaVlez, @soaIzlez, 0, 'D', @Posn, @soaVlez_BO, @soaIzlez_BO)
  350.         End
  351.     ELSE    
  352.         Begin
  353.             if @SoaVlez_BO is null
  354.                 set @SoaVlez_BO = 0
  355.             if @SoaIzlez_BO is null
  356.                 set @SoaIzlez_BO = 0
  357.             If @VlIzl = 'V'
  358.                 Begin
  359.                     Set @soaIzlez = @soaIzlez + @Kolic
  360.                     set @soaIzlez_BO = @soaIzlez_BO + @Kolic_BO
  361.                     Update SoNar
  362.                     Set Vlez=@soaVlez, Izlez=@soaIzlez, Vlez_BO=@SoaVlez_BO, Izlez_BO=@soaIzlez_BO
  363.                     Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  364.                 End
  365.             Else    
  366.                 Begin
  367.                     Set @soaVlez = @soaVlez + @Kolic
  368.                     Set @soaVlez_BO = @soaVlez_BO + @Kolic_BO
  369.                     Update SoNar
  370.                     Set Vlez=@soaVlez, Izlez=@soaIzlez, Vlez_BO=@soaVlez_BO, Izlez_BO=@soaIzlez_BO
  371.                     Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  372.                 End
  373.         END
  374.    End
  375.    Fetch Next From InsStavki 
  376.    INTO @NarId, @Sifra_Art, @Kolic, @Kolic_BO, @Sifra_Nar, @DokrID
  377. End --While
  378. Close InsStavki
  379. Deallocate InsStavki
  380. END
  381.  
  382. Go
  383. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_StaNaracReal_Delete' AND type = 'TR') DROP TRIGGER tr_StaNaracReal_Delete
  384.  
  385. Go
  386. CREATE                      TRIGGER tr_StaNaracReal_Delete
  387. ON dbo.StaNaracReal
  388. FOR DELETE
  389. AS
  390. BEGIN
  391. DECLARE
  392.     @NarId         int,
  393.     @Sifra_Art     varchar(20),
  394.     @Kolic         decimal(18, 6),
  395.     @Kolic_BO     decimal(18, 6),
  396.     @Sifra_Nar     smallint,
  397.     @Sifra_OE        Smallint,
  398.     @VlIzl            Char(1),
  399.     @Sifra_GrNar    smallint,
  400.     @POsn            Decimal(6,2),
  401.     @soaVlez        decimal(18,6),
  402.     @soaIzlez        decimal(18,6),
  403.     @soaVlez_BO        decimal(18,6),
  404.     @soaIzlez_BO    decimal(18,6),
  405.     @Prvo            int,
  406.     @DokrID        int
  407. set @Prvo = 1
  408. Declare DelStavki Cursor Fast_Forward For
  409. Select NarId, Sifra_Art, Kolic, Kolic_BO, Sifra_Nar, DokrID
  410. From Deleted
  411. Open DelStavki
  412. Fetch Next From DelStavki 
  413. Into @NarId, @Sifra_Art, @Kolic, @Kolic_BO, @Sifra_Nar, @DokrID
  414. While @@Fetch_Status = 0
  415. Begin
  416.    if @Prvo = 1
  417.    begin
  418.     set @Prvo = 0
  419.     Select @VlIzl = VlIzl, @Sifra_GrNar = Sifra_GrNar 
  420.     FROM TipNarac WHERE Sifra_Nar = @Sifra_Nar
  421.     Select @Sifra_Oe=Sifra_Oe From Naracki Where NarID=@NarID
  422.     Select @Posn=T.ProcOsn From Katart K Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar
  423.    end
  424.    If @Sifra_GrNar IS NOT NULL AND @DokrID IS NOT NULL
  425.    Begin
  426.         if @Kolic_BO is null
  427.         set @Kolic_BO = 0
  428.     -- Barame zapis vo SoNar
  429.     Select @soaVlez=Vlez, @soaIzlez=Izlez, @SoaVlez_BO=Vlez_BO, @SoaIzlez_BO=Izlez_BO FROM SoNar
  430.     Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  431.     -- Ako ne postoi dodavame nov
  432.     IF @@ROWCOUNT = 0
  433.         Begin        
  434.             if @SoaVlez_BO is null
  435.                 set @SoaVlez_BO = 0
  436.             if @SoaIzlez_BO is null
  437.                 set @SoaIzlez_BO = 0
  438.             If @VlIzl = 'V'
  439.                 Begin
  440.                     Set @soaVlez = 0
  441.                     Set @soaIzlez = - @Kolic
  442.                     Set @soaVlez_BO = 0
  443.                     Set @soaIzlez_BO = - @Kolic_BO
  444.                 End
  445.             Else
  446.                 Begin
  447.                     Set @soaVlez = - @Kolic
  448.                     Set @soaIzlez = 0
  449.                     Set @soaVlez_BO = - @Kolic_BO
  450.                     Set @soaIzlez_BO = 0
  451.                 End
  452.             Insert SoNar (Sifra_OE, Sifra_Art, Sifra_GrNar, Vlez, Izlez, Cena, DanCena, POsn, Vlez_BO, Izlez_BO)
  453.             Values(@Sifra_OE,@Sifra_Art,@Sifra_GrNar,@soaVlez,@soaIzlez,0,'D',@Posn, @soaVlez_BO, @soaIzlez_BO)
  454.         End
  455.     ELSE    
  456.         Begin
  457.             if @SoaVlez_BO is null
  458.                 set @SoaVlez_BO = 0
  459.             if @SoaIzlez_BO is null
  460.                 set @SoaIzlez_BO = 0
  461.             If @VlIzl = 'V'
  462.                         begin
  463.                 Set @soaIzlez = @soaIzlez - @Kolic
  464.                 set @soaIzlez_BO = @soaIzlez_BO - @Kolic_BO
  465.             end
  466.             Else 
  467.             begin
  468.                 Set @soaVlez = @soaVlez - @Kolic
  469.                 Set @soaVlez_BO = @soaVlez_BO - @Kolic_BO
  470.             end
  471.             Update SoNar
  472.             Set Vlez=@soaVlez, Izlez=@soaIzlez, Vlez_BO=@soaVlez_BO, Izlez_BO=@soaIzlez_BO
  473.             Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  474.         END        
  475.    End
  476.    Fetch Next From DelStavki 
  477.    Into @NarId, @Sifra_Art, @Kolic, @Kolic_BO, @Sifra_Nar, @DokrID
  478. End --While
  479. Close DelStavki
  480. Deallocate DelStavki
  481. END
  482.  
  483. Go
  484. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tg_Anal_Insert_Update' AND type = 'TR') DROP TRIGGER tg_Anal_Insert_Update
  485.  
  486. Go
  487. CREATE   TRIGGER tg_Anal_Insert_Update
  488. ON dbo.Anal
  489. FOR INSERT, UPDATE
  490. AS 
  491. BEGIN
  492.     Declare @Kto_Anal Char(10)
  493.     Declare @ImeAnal Varchar(40)
  494.     Declare @VtoraBaza as Varchar(20)
  495.     Declare @DaliAnal as char(1)
  496.     Declare @SSQL as varchar(8000)
  497.     Declare @Redovi as Smallint
  498.     Declare @Propagiraj as char(1)
  499.     Declare @Klas    char(3)
  500.     Declare @Sint    char(3)
  501.     Select @Kto_Anal = Kto_Anal, @ImeAnal = ImeAnal From Inserted
  502. -------------------------------------  Dodadeno 11.06.2007  za Azuriranje na Paralelni Bazi --------------------------
  503.     Set @Propagiraj = (Select Propagiraj From Anal Where Kto_Anal = @Kto_Anal)
  504.     If @Propagiraj='D' 
  505.     Begin
  506.         Update Anal Set Propagiraj=Null  Where Kto_Anal = @Kto_Anal
  507.         Select Rbr, ImeBaza, DaliAnal 
  508.         From FirParal
  509.         Set @Redovi = @@RowCount
  510.         While @Redovi > 0  
  511.         Begin
  512.             Select @VtoraBaza=ImeBaza, @DaliAnal=DaliAnal From FirParal Where Rbr=@Redovi    
  513.             If @DaliAnal = 'D'
  514.                     Begin
  515.                 Set @SSQL =  ' Select Kto_Anal From ' + @VtoraBaza + '..Anal
  516.                     Where Kto_Anal = ''' + @Kto_Anal + ''' '
  517.                 Exec(@SSQL)
  518.                 If @@RowCount <> 0--Exists Exec(@SSQL)
  519.                       Begin
  520.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Anal
  521.                     Set ImeAnal=A.ImeAnal, ImeAnal2=A.ImeAnal2, SImeAnal=A.SImeAnal, SImeAnal2=A.SImeAnal2,
  522.                     DaliOrg=A.DaliOrg, DaliKupuv=A.DaliKupuv, DaliDev=A.DaliDev, OtvPrenos=A.OtvPrenos, MozeTrans=A.MozeTrans,
  523.                     Kto_Sint=Substring(A.Kto_Anal, 1,3), Prenos_PoOE = A.Prenos_PoOE, DanMaskGlk=A.DanMaskGlk
  524.                     From Anal A
  525.                     Where A.Kto_Anal = ''' + @Kto_Anal + ''' 
  526.                     and ' + @VtoraBaza + '..Anal.Kto_Anal = ''' + @Kto_Anal + ''' '
  527.                     Exec(@SSQL)
  528.                      End  -- If  @@RowCount <> 0
  529.                 Else
  530.                      Begin
  531.                     Set @Klas = Null
  532.                     Set @Sint = Null
  533.                     Set @SSQL = ' SELECT Kto_Klas FROM ' + @VtoraBaza + '..Klas WHERE Kto_Klas = Substring( ''' + @Kto_Anal + ''',1,1) '
  534.                     Exec (@SSQL)
  535.                     If @@RowCount = 0
  536.                     Begin 
  537.                         Set @SSQL = ' INSERT INTO ' + @VtoraBaza + '..Klas (Kto_Klas, ImeKlasa) VALUES (Substring(''' + @Kto_Anal + ''',1,1), ''Klasa'') '
  538.                         Exec(@SSQL)
  539.                     End
  540.                     Set @SSQL = ' SELECT Kto_Sint FROM ' + @VtoraBaza + '..Sint WHERE Kto_Sint = Substring( ''' + @Kto_Anal + ''',1,3) '
  541.                     Exec (@SSQL)
  542.                     If @@RowCount = 0
  543.                     Begin 
  544.                         Set @SSQL = ' INSERT INTO ' + @VtoraBaza + '..Sint (Kto_Sint, ImeSint) VALUES (Substring(''' + @Kto_Anal + ''',1,3), ''' + @ImeAnal + ''') '
  545.                         Exec(@SSQL)
  546.                     End
  547.                      Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Anal 
  548.                         (Kto_Anal, ImeAnal, ImeAnal2, SImeAnal, SImeAnal2, DaliOrg, DaliKupuv, DaliDev, 
  549.                         OtvPrenos, MozeTrans, Kto_Sint, Prenos_PoOE,DanMaskGlk)
  550.                         Select 
  551.                          Kto_Anal, ImeAnal, ImeAnal2, SImeAnal, SImeAnal2, DaliOrg, DaliKupuv, DaliDev, 
  552.                         OtvPrenos, MozeTrans, Kto_Sint, Prenos_PoOE,DanMaskGlk
  553.                         From Anal Where Kto_Anal= ''' + @Kto_Anal + ''' '
  554.                      Exec(@SSQL)        
  555.                    End  -- Else
  556.                   End --If @DaliAnal = 'D'
  557.             Set @Redovi = @Redovi - 1
  558.                   end -- While
  559.     End -- Propagiraj
  560. End --Triger
  561. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  562.  
  563. Go
  564. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Banki_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Banki_Vnes_Izmena
  565.  
  566. Go
  567. CREATE   TRIGGER tr_Banki_Vnes_Izmena 
  568. ON dbo.Banki
  569. FOR INSERT, UPDATE
  570. AS
  571. BEGIN
  572. Declare 
  573.     @Sifra_Ban    char(6),
  574.     @Propagiraj    char(1),
  575.     @Redovi     smallint,
  576.     @VtoraBaza    varchar(20),
  577.     @DaliKup    char(1),
  578.     @SSQL      varchar(8000)
  579.     SELECT @Sifra_Ban = Sifra_Ban
  580.     FROM INSERTED 
  581. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  582.     Set @Propagiraj = (Select Propagiraj From Banki Where Sifra_Ban = @Sifra_Ban)
  583.     If @Propagiraj='D' 
  584.     Begin
  585.         Update Banki Set Propagiraj=Null  Where Sifra_Ban = @Sifra_Ban
  586.         Select Rbr, ImeBaza
  587.         From FirParal
  588.         Set @Redovi = @@RowCount
  589.         While @Redovi > 0  
  590.         Begin
  591.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup From FirParal Where Rbr=@Redovi    
  592.             If @DaliKup = 'D'
  593.             Begin
  594.                 Set @SSQL =  ' Select  Sifra_Ban From ' + @VtoraBaza + '..Banki
  595.                         Where Sifra_Ban = ''' + @Sifra_Ban + ''' '
  596.                 Exec(@SSQL)
  597.                 If @@RowCount <> 0
  598.                       Begin
  599.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Banki
  600.                     Set ImeBanka=B.ImeBanka, ZiroSkaNBRM=B.ZiroSkaNBRM, Zabeleska=B.Zabeleska
  601.                     From Banki B
  602.                     Where B.Sifra_Ban = ''' + @Sifra_Ban + ''' 
  603.                     and ' + @VtoraBaza + '..Banki.Sifra_Ban = ''' + @Sifra_Ban + ''' '
  604.                     Exec(@SSQL)
  605.                      End  -- If  @@RowCount <> 0
  606.                 Else
  607.                      Begin
  608.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Banki Select * From Banki Where Sifra_Ban= ''' + @Sifra_Ban + ''' '
  609.                      Exec(@SSQL)        
  610.                      End  -- Else
  611.             End -- DaliArt
  612.             Set @Redovi = @Redovi - 1
  613.                        end -- While
  614.     End -- Propagiraj
  615. End --Triger
  616. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  617.  
  618. Go
  619. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tg_KBanki_Insert' AND type = 'TR') DROP TRIGGER tg_KBanki_Insert
  620.  
  621. Go
  622.  
  623. CREATE  TRIGGER tg_KBanki_Insert
  624. ON dbo.KBanki
  625. FOR INSERT, UPDATE
  626. AS 
  627. BEGIN
  628.     Declare @Sifra_Kup Char(6)
  629.     Declare @RbrBan Smallint
  630.     Declare @Propagiraj    char(1)
  631.     Declare @Redovi     smallint
  632.     Declare @VtoraBaza    varchar(20)
  633.     Declare @DaliKup    char(1)
  634.     Declare @SSQL      varchar(8000)
  635.     Select @Sifra_Kup=Sifra_Kup, @RbrBan=RbrBan From Inserted
  636. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  637.     Set @Propagiraj = (Select Propagiraj From KBanki Where Sifra_Kup = @Sifra_Kup and RbrBan = @RbrBan)
  638.     If @Propagiraj='D' 
  639.     Begin
  640.         Update KBanki Set Propagiraj=Null  Where Sifra_Kup = @Sifra_Kup and RbrBan = @RbrBan
  641.         Select Rbr, ImeBaza
  642.         From FirParal
  643.         Set @Redovi = @@RowCount
  644.         While @Redovi > 0  
  645.         Begin
  646.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup From FirParal Where Rbr=@Redovi    
  647.             If @DaliKup = 'D'
  648.             Begin
  649.                 Set @SSQL =  ' Select  Sifra_Kup, RbrBan From ' + @VtoraBaza + '..KBanki
  650.                         Where Sifra_Kup = ''' + @Sifra_Kup + ''' and RbrBan = ' + cast(@RbrBan as varchar(5)) + ' '
  651.                 Exec(@SSQL)
  652.                 If @@RowCount <> 0
  653.                       Begin
  654.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KBanki
  655.                     Set ZiroSka=KB.ZiroSka, Sifra_Ban=KB.Sifra_Ban, ImeKor=KB.ImeKor
  656.                     From KBanki KB
  657.                     Where KB.Sifra_Kup = ''' + @Sifra_Kup + ''' and KB.RbrBan = ' + cast(@RbrBan as varchar(5)) + ' 
  658.                     and ' + @VtoraBaza + '..KBanki.Sifra_Kup = ''' + @Sifra_Kup + ''' 
  659.                     and ' + @VtoraBaza + '..KBanki.RbrBan = ' + cast(@RbrBan as varchar(5)) + ' '
  660.                     Exec(@SSQL)
  661.                      End  -- If  @@RowCount <> 0
  662.                 Else
  663.                      Begin
  664.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KBanki Select * From KBanki 
  665.                                         Where Sifra_Kup = ''' + @Sifra_Kup + '''
  666.                                         and RbrBan= ' + cast(@RbrBan as varchar(5)) + ' '
  667.                      Exec(@SSQL)        
  668.                      End  -- Else
  669.             End -- DaliArt
  670.             Set @Redovi = @Redovi - 1
  671.                        end -- While
  672.     End -- Propagiraj
  673. End --Triger
  674. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  675.  
  676. Go
  677. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_MagStavr_Delete' AND type = 'TR') DROP TRIGGER tr_MagStavr_Delete
  678.  
  679. Go
  680.  
  681. CREATE     TRIGGER tr_MagStavr_Delete
  682. ON dbo.MagStavr
  683. FOR DELETE
  684. AS
  685. BEGIN
  686. DECLARE
  687.     @Sifra_OE        Smallint,
  688.     @Sifra_Art        varchar(20),
  689.     @Sifra_KatPak        Int,
  690.     @Sifra_KatStatus    int,
  691.     @Lokacija        Char(10),
  692.     @VlIzl            Char(1),
  693.     @LotBr            varchar(20),
  694.     @Kolic            Decimal(18,6),
  695.     @Stara_Sostojba        decimal(18,6),
  696.     @Nova_Sostojba        decimal(18,6),
  697.     @RokRed            varchar(6),
  698.     @WHMSys            char(1),
  699.     @Sifra_Oe_WHM        smallint
  700.     Declare DelStavki Cursor Fast_Forward For
  701.        Select Sifra_OE, Sifra_Art, Sifra_KatPak, Sifra_KatStatus, Lokacija, VlIzl, LotBr, Kolic, RokRed, WHMSys, Sifra_Oe_WHM
  702.     From Deleted
  703.     Open DelStavki
  704.     Fetch Next From DelStavki 
  705.     Into @Sifra_OE, @Sifra_Art, @Sifra_KatPak, @Sifra_KatStatus, @Lokacija, @VlIzl, @LotBr, @Kolic, @RokRed, @WHMSys, @Sifra_Oe_WHM
  706.     While @@Fetch_Status = 0
  707.     Begin
  708.         if @WHMSys = 'D'
  709.         begin
  710.            IF @Lokacija is not null and @LotBr is not null and @Sifra_KatStatus is not null
  711.            Begin
  712.             SELECT @Stara_Sostojba = Sostojba
  713.             FROM WHMSost
  714.             WHERE Sifra_OE = @Sifra_OE_WHM and Sifra_Art = @Sifra_Art and 
  715.                       Sifra_KatStatus = @Sifra_KatStatus and Lokac_ID = @Lokacija and LotBr = @LotBr
  716.             IF @@ROWCOUNT = 0
  717.             Begin
  718.                 IF @VlIzl = 'V'
  719.                     SET @Nova_Sostojba = - @Kolic
  720.                 else IF @VlIzl = 'I'
  721.                     SET @Nova_Sostojba = - (- @Kolic)
  722.                 INSERT WHMSost (Sifra_OE, Sifra_Art, Sifra_KatStatus, Lokac_ID, LotBr, Sostojba, RokRed)
  723.                 VALUES (@Sifra_OE_WHM, @Sifra_Art,  @Sifra_KatStatus, @Lokacija, @LotBr, @Nova_Sostojba, @RokRed)
  724.             End
  725.             ELSE
  726.             Begin
  727.                 IF @VlIzl = 'V'
  728.                     SET @Nova_Sostojba = @Stara_Sostojba - @Kolic
  729.                 IF @VlIzl = 'I'
  730.                     SET @Nova_Sostojba = @Stara_Sostojba - (- @Kolic)
  731.                 UPDATE WHMSost SET Sostojba = @Nova_Sostojba 
  732.                 WHERE Sifra_OE = @Sifra_OE_WHM and Sifra_Art = @Sifra_Art and 
  733.                           Sifra_KatStatus = @Sifra_KatStatus and Lokac_ID = @Lokacija and LotBr = @LotBr
  734.             End                        
  735.            End
  736.         end
  737.         else IF @Lokacija is not null and @LotBr is not null and @Sifra_KatPak is not null and @Sifra_KatStatus is not null
  738.         Begin
  739.             SELECT @Stara_Sostojba = Sostojba
  740.             FROM SoMag
  741.             WHERE Sifra_OE = @Sifra_OE and Sifra_Art = @Sifra_Art and Sifra_KatPak = @Sifra_KatPak and 
  742.                                       Sifra_KatStatus = @Sifra_KatStatus and Lokacija = @Lokacija and LotBr = @LotBr
  743.             IF @@ROWCOUNT = 0
  744.             Begin
  745.                 IF @VlIzl = 'V'
  746.                     SET @Nova_Sostojba = - @Kolic
  747.                 else IF @VlIzl = 'I'
  748.                     SET @Nova_Sostojba = - (- @Kolic)
  749.                 INSERT SoMag (Sifra_OE, Sifra_Art, Sifra_KatPak, Sifra_KatStatus, Lokacija, LotBr, Sostojba, RokRed)
  750.                 VALUES (@Sifra_OE, @Sifra_Art, @Sifra_KatPak, @Sifra_KatStatus, @Lokacija, @LotBr, @Nova_Sostojba, @RokRed)
  751.             End
  752.             ELSE
  753.             Begin
  754.                 IF @VlIzl = 'V'
  755.                     SET @Nova_Sostojba = @Stara_Sostojba - @Kolic
  756.                 IF @VlIzl = 'I'
  757.                     SET @Nova_Sostojba = @Stara_Sostojba - (- @Kolic)
  758.                 UPDATE SoMag SET Sostojba = @Nova_Sostojba 
  759.                 WHERE Sifra_OE = @Sifra_OE and Sifra_Art = @Sifra_Art and Sifra_KatPak = @Sifra_KatPak and 
  760.                                           Sifra_KatStatus = @Sifra_KatStatus and Lokacija = @Lokacija and LotBr = @LotBr
  761.             End                        
  762.         End
  763.         Fetch Next From DelStavki 
  764.         Into @Sifra_OE, @Sifra_Art, @Sifra_KatPak, @Sifra_KatStatus, @Lokacija, @VlIzl, @LotBr, @Kolic, @RokRed, @WHMSys, @Sifra_Oe_WHM
  765.     End --While
  766.     Close DelStavki
  767.     Deallocate DelStavki
  768. END
  769.  
  770. Go
  771. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_MagStavr_Insert' AND type = 'TR') DROP TRIGGER tr_MagStavr_Insert
  772.  
  773. Go
  774.  
  775. CREATE      TRIGGER tr_MagStavr_Insert
  776. ON dbo.MagStavr
  777. FOR INSERT
  778. AS
  779. BEGIN
  780. DECLARE
  781.     @Sifra_OE        Smallint,
  782.     @Sifra_Art        varchar(20),
  783.     @Sifra_KatPak        Int,
  784.     @Sifra_KatStatus    int,
  785.     @Lokacija        Char(10),
  786.     @VlIzl            Char(1),
  787.     @LotBr            varchar(20),
  788.     @Kolic            Decimal(18,6),
  789.     @Stara_Sostojba        decimal(18,6),
  790.     @Nova_Sostojba        decimal(18,6),
  791.     @RokRed            varchar(6),
  792.     @WHMSys            char(1),
  793.     @Sifra_Oe_WHM        smallint
  794.     Declare InsStavki Cursor Fast_Forward For
  795.            Select Sifra_OE, Sifra_Art, Sifra_KatPak, Sifra_KatStatus, Lokacija, VlIzl, LotBr, Kolic, RokRed, WHMSys, Sifra_Oe_WHM
  796.         From Inserted
  797.     Open InsStavki
  798.     Fetch Next From InsStavki 
  799.     Into @Sifra_OE, @Sifra_Art, @Sifra_KatPak, @Sifra_KatStatus, @Lokacija, @VlIzl, @LotBr, @Kolic, @RokRed, @WHMSys, @Sifra_Oe_WHM
  800.     While @@Fetch_Status = 0
  801.     Begin
  802.         if @WHMSys = 'D'
  803.         begin
  804.            IF @Lokacija is not null and @LotBr is not null and @Sifra_KatStatus is not null
  805.            Begin
  806.             SELECT @Stara_Sostojba = Sostojba
  807.             FROM WHMSost
  808.             WHERE Sifra_OE = @Sifra_OE_Whm and Sifra_Art = @Sifra_Art and  
  809.                                        Sifra_KatStatus = @Sifra_KatStatus and Lokac_ID = @Lokacija and LotBr = @LotBr
  810.             IF @@ROWCOUNT = 0
  811.             Begin
  812.                 IF @VlIzl = 'V'
  813.                     SET @Nova_Sostojba = @Kolic
  814.                 else IF @VlIzl = 'I'
  815.                     SET @Nova_Sostojba = - @Kolic
  816.                 INSERT WHMSost (Sifra_OE, Sifra_Art, Sifra_KatStatus, Lokac_ID, 
  817.                         LotBr, Sostojba, RokRed, Vreme_Posl_Prom)
  818.                 VALUES (@Sifra_OE_WHM, @Sifra_Art, @Sifra_KatStatus, @Lokacija, 
  819.                     @LotBr, @Nova_Sostojba, @RokRed, GetDate())
  820.             End
  821.             ELSE
  822.             Begin
  823.                 IF @VlIzl = 'V'
  824.                     SET @Nova_Sostojba = @Stara_Sostojba + @Kolic
  825.                 IF @VlIzl = 'I'
  826.                     SET @Nova_Sostojba = @Stara_Sostojba - @Kolic
  827.                 UPDATE WHMSost 
  828.                 SET Sostojba = @Nova_Sostojba, Vreme_Posl_Prom = GetDate () 
  829.                 WHERE Sifra_OE = @Sifra_OE_WHM and Sifra_Art = @Sifra_Art and 
  830.                           Sifra_KatStatus = @Sifra_KatStatus and Lokac_ID = @Lokacija and LotBr = @LotBr
  831.             End                        
  832.            End
  833.         end
  834.         else IF @Lokacija is not null and @LotBr is not null and @Sifra_KatPak is not null and @Sifra_KatStatus is not null
  835.         Begin
  836.             SELECT @Stara_Sostojba = Sostojba
  837.             FROM SoMag
  838.             WHERE Sifra_OE = @Sifra_OE and Sifra_Art = @Sifra_Art and Sifra_KatPak = @Sifra_KatPak and 
  839.                                       Sifra_KatStatus = @Sifra_KatStatus and Lokacija = @Lokacija and LotBr = @LotBr
  840.             IF @@ROWCOUNT = 0
  841.             Begin
  842.                 IF @VlIzl = 'V'
  843.                     SET @Nova_Sostojba = @Kolic
  844.                 else IF @VlIzl = 'I'
  845.                     SET @Nova_Sostojba = - @Kolic
  846.                 INSERT SoMag (Sifra_OE, Sifra_Art, Sifra_KatPak, Sifra_KatStatus, Lokacija, LotBr, Sostojba, RokRed)
  847.                 VALUES (@Sifra_OE, @Sifra_Art, @Sifra_KatPak, @Sifra_KatStatus, @Lokacija, @LotBr, @Nova_Sostojba, @RokRed)
  848.             End
  849.             ELSE
  850.             Begin
  851.                 IF @VlIzl = 'V'
  852.                     SET @Nova_Sostojba = @Stara_Sostojba + @Kolic
  853.                 IF @VlIzl = 'I'
  854.                     SET @Nova_Sostojba = @Stara_Sostojba - @Kolic
  855.                 UPDATE SoMag SET Sostojba = @Nova_Sostojba 
  856.                 WHERE Sifra_OE = @Sifra_OE and Sifra_Art = @Sifra_Art and Sifra_KatPak = @Sifra_KatPak and 
  857.                                           Sifra_KatStatus = @Sifra_KatStatus and Lokacija = @Lokacija and LotBr = @LotBr
  858.             End                        
  859.         End
  860.         Fetch Next From InsStavki 
  861.         Into @Sifra_OE, @Sifra_Art, @Sifra_KatPak, @Sifra_KatStatus, @Lokacija, @VlIzl, @LotBr, @Kolic, @RokRed, @WHMSys, @Sifra_Oe_WHM
  862.     End --While
  863.     Close InsStavki
  864.     Deallocate InsStavki
  865. END
  866.  
  867. Go
  868. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_ProdMest_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_ProdMest_Vnes_Izmena
  869.  
  870. Go
  871. CREATE    TRIGGER tr_ProdMest_Vnes_Izmena 
  872. ON dbo.ProdMest
  873. FOR INSERT, UPDATE
  874. AS
  875. BEGIN
  876. Declare 
  877.     @Sifra_Mest    int,
  878.     @Propagiraj    char(1),
  879.     @Redovi     smallint,
  880.     @VtoraBaza    varchar(20),
  881.     @DaliKup    char(1),
  882.     @SSQL      varchar(8000)
  883.     SELECT @Sifra_Mest = Sifra_Mest
  884.     FROM INSERTED 
  885. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  886.     Set @Propagiraj = (Select Propagiraj From ProdMest Where Sifra_Mest = @Sifra_Mest)
  887.     If @Propagiraj='D' 
  888.     Begin
  889.         Update ProdMest Set Propagiraj=Null  Where Sifra_Mest = @Sifra_Mest
  890.         Select Rbr, ImeBaza
  891.         From FirParal
  892.         Set @Redovi = @@RowCount
  893.         While @Redovi > 0  
  894.         Begin
  895.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup From FirParal Where Rbr=@Redovi    
  896.             If @DaliKup = 'D'
  897.             Begin
  898.                 Set @SSQL =  ' Select  Sifra_Mest From ' + @VtoraBaza + '..ProdMest
  899.                         Where Sifra_Mest = ' + cast(@Sifra_Mest as varchar(10)) + ' '
  900.                 Exec(@SSQL)
  901.                 If @@RowCount <> 0
  902.                       Begin
  903.                     Set @SSQL = ' Update ' + @VtoraBaza + '..ProdMest
  904.                     Set Opis=P.Opis, Opis2=P.Opis2, Sifra_Kup=P.Sifra_Kup, Sifra_Obj=P.Sifra_Obj, 
  905.                         DaliAktiven=P.DaliAktiven, Posrednik=P.Posrednik, DaliSporen=P.DaliSporen
  906.                     From ProdMest P
  907.                     Where P.Sifra_Mest = ' + cast(@Sifra_Mest as varchar(10)) + ' 
  908.                     and ' + @VtoraBaza + '..ProdMest.Sifra_Mest = ' + cast(@Sifra_Mest as varchar(10)) + ' '
  909.                     Exec(@SSQL)
  910.                      End  -- If  @@RowCount <> 0
  911.                 Else
  912.                      Begin
  913.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..ProdMest Select * From ProdMest Where Sifra_Mest= ' + cast(@Sifra_Mest as varchar(10)) + ' '
  914.                      Exec(@SSQL)        
  915.                      End  -- Else
  916.             End -- DaliArt
  917.             Set @Redovi = @Redovi - 1
  918.                        end -- While
  919.     End -- Propagiraj
  920. End --Triger
  921. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  922.  
  923. Go
  924. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RabNal_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_RabNal_IzmeniBrisi
  925.  
  926. Go
  927. CREATE TRIGGER tr_RabNal_IzmeniBrisi
  928.     ON dbo.RabNal
  929.     FOR DELETE, UPDATE
  930.     AS 
  931.     BEGIN
  932.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  933.         Begin
  934.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  935.             Rollback Tran
  936.         End
  937.     END
  938.  
  939. Go
  940. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KatGAmb_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KatGAmb_Vnes_Izmena
  941.  
  942. Go
  943.  
  944. CREATE  TRIGGER tr_KatGAmb_Vnes_Izmena 
  945. ON dbo.KatGAmb
  946. FOR INSERT, UPDATE
  947. AS
  948. BEGIN
  949. Declare 
  950.     @Sifra_GAmb    char(6),
  951.     @Propagiraj    char(1),
  952.     @Redovi     smallint,
  953.     @VtoraBaza    varchar(20),
  954.     @DaliArt    char(1),
  955.     @SSQL      varchar(8000)
  956.     SELECT @Sifra_GAmb = Sifra_GAmb
  957.     FROM INSERTED 
  958. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  959.     Set @Propagiraj = (Select Propagiraj From KatGAmb Where Sifra_GAmb = @Sifra_GAmb)
  960.     If @Propagiraj='D' 
  961.     Begin
  962.         Update KatGAmb Set Propagiraj=Null  Where Sifra_GAmb = @Sifra_GAmb
  963.         Select Rbr, ImeBaza
  964.         From FirParal
  965.         Set @Redovi = @@RowCount
  966.         While @Redovi > 0  
  967.         Begin
  968.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  969.             If @DaliArt = 'D'
  970.             Begin
  971.                 Set @SSQL =  ' Select  Sifra_GAmb From ' + @VtoraBaza + '..KatGAmb
  972.                         Where Sifra_GAmb = ' + cast(@Sifra_GAmb as varchar(6)) + ' '
  973.                 Exec(@SSQL)
  974.                 If @@RowCount <> 0
  975.                       Begin
  976.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KatGAmb
  977.                     Set ImeGAmb=D.ImeGAmb, SodrziAmb=D.SodrziAmb, DodadenNa=D.DodadenNa, DodadenOd=D.DodadenOd,
  978.                          IzmenetNa=D.IzmenetNa, IzmenetOd=D.IzmenetOd
  979.                     From KatGAmb D
  980.                     Where D.Sifra_GAmb= ' + @Sifra_GAmb + ' 
  981.                     and ' + @VtoraBaza + '..KatGAmb.Sifra_GAmb = ' + @Sifra_GAmb + ' '
  982.                     Exec(@SSQL)
  983.                      End  -- If  @@RowCount <> 0
  984.                 Else
  985.                      Begin
  986.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KatGAmb Select * From KatGAmb Where Sifra_GAmb= ' + @Sifra_GAmb + ' '
  987.                      Exec(@SSQL)        
  988.                      End  -- Else
  989.             End -- DaliArt
  990.             Set @Redovi = @Redovi - 1
  991.                        end -- While
  992.     End -- Propagiraj
  993. End --Triger
  994. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  995.  
  996. Go
  997. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_FavtVrski_Brisi' AND type = 'TR') DROP TRIGGER tr_FavtVrski_Brisi
  998.  
  999. Go
  1000. CREATE      TRIGGER tr_FavtVrski_Brisi 
  1001. ON FAvtVrski
  1002. FOR DELETE
  1003. AS
  1004. BEGIN
  1005.     Declare @GstID  Int
  1006.     Declare @Dolzi decimal (18, 4)
  1007.     Declare @Pobaruva decimal (18, 4)
  1008.     Declare @Dev_Dolzi decimal (18, 4)
  1009.     Declare @Dev_Pobaruva decimal (18, 4)
  1010.     Declare @Bazna_Dolzi decimal (18, 4)
  1011.     Declare @Bazna_Pobaruva decimal (18, 4)
  1012.     Declare @KolkuVrski int
  1013.     SELECT @GstID=GstID, @Dolzi=Dolzi, @Pobaruva=Pobaruva,  @Dev_Dolzi=Dev_Dolzi, @Dev_Pobaruva=Dev_Pobaruva,  
  1014.         @Bazna_Dolzi=Bazna_Dolzi, @Bazna_Pobaruva=Bazna_Pobaruva
  1015.     FROM Deleted
  1016.     IF EXISTS (SELECT * FROM Gstav WHERE GstId=@GstId and OdKade = 'V')        --     Mnogui vazno e deka zasega e samo za Vrzani!
  1017.     begin
  1018.         UPDATE Gstav
  1019.         SET Dolzi=Dolzi-@Dolzi, Pobaruva=Pobaruva-@Pobaruva, Dev_Dolzi=Dev_Dolzi-@Dev_Dolzi , Dev_Pobaruva=Dev_Pobaruva-@Dev_Pobaruva, 
  1020.         Bazna_Dolzi=Bazna_Dolzi-@Bazna_Dolzi, Bazna_Pobaruva=Bazna_Pobaruva-@Bazna_Pobaruva, KolkuVrski=KolkuVrski - 1
  1021.         WHERE GstId = @GstId
  1022.     end
  1023. END
  1024.  
  1025. Go
  1026. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_FavtVrski_Zacuvaj' AND type = 'TR') DROP TRIGGER tr_FavtVrski_Zacuvaj
  1027.  
  1028. Go
  1029. CREATE   TRIGGER tr_FavtVrski_Zacuvaj 
  1030. ON FAvtVrski
  1031. FOR INSERT
  1032. AS
  1033. BEGIN
  1034.    Declare @GstID  Int
  1035.    Declare @Dolzi decimal (18, 4)
  1036.    Declare @Pobaruva decimal (18, 4)
  1037.    Declare @Dev_Dolzi decimal (18, 4)
  1038.    Declare @Dev_Pobaruva decimal (18, 4)
  1039.    Declare @Bazna_Dolzi decimal (18, 4)
  1040.    Declare @Bazna_Pobaruva decimal (18, 4)
  1041.    SELECT @GstID=GstID, @Dolzi=Dolzi, @Pobaruva=Pobaruva,  @Dev_Dolzi=Dev_Dolzi, @Dev_Pobaruva=Dev_Pobaruva,  
  1042.           @Bazna_Dolzi=Bazna_Dolzi, @Bazna_Pobaruva=Bazna_Pobaruva
  1043.    FROM Inserted
  1044.    IF EXISTS (SELECT * FROM Gstav WHERE GstId=@GstId and OdKade = 'V' )            --      Mnogui vazno e deka zasega e samo za Vrzani!
  1045.    begin
  1046.       UPDATE Gstav
  1047.       SET Dolzi=Dolzi+@Dolzi, Pobaruva=Pobaruva+@Pobaruva, Dev_Dolzi=Dev_Dolzi+@Dev_Dolzi , Dev_Pobaruva=Dev_Pobaruva+@Dev_Pobaruva, 
  1048.           Bazna_Dolzi=Bazna_Dolzi+@Bazna_Dolzi, Bazna_Pobaruva=Bazna_Pobaruva+@Bazna_Pobaruva, KolkuVrski = KolkuVrski + 1
  1049.       WHERE GstId = @GstId
  1050.   end
  1051. END
  1052.  
  1053. Go
  1054. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KomintIzmena' AND type = 'TR') DROP TRIGGER tr_KomintIzmena
  1055.  
  1056. Go
  1057. CREATE     TRIGGER tr_KomintIzmena
  1058. ON dbo.Komint 
  1059. FOR UPDATE 
  1060. AS
  1061. BEGIN
  1062.     Declare @Sifra_Kup Char(6)
  1063.     Select @Sifra_Kup=Sifra_Kup From Inserted
  1064. --dodadeno 22.03.04
  1065.     INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)
  1066.     Values (GetDate(),     'IzmKomint', 'INF', 'trig', 'Komintent:' + @Sifra_Kup + ' ' + 'Korisnik: ' + SUser_SName(), Substring(SUser_SName(),1,20))
  1067. ------------------------------------------------------Dodadeno 14.04.2006 ------------------------------------------------------------------------
  1068.     Declare @MozeIsporaka as char(1)
  1069.     Declare @MozeIsporakaBese as char(1)
  1070.     Select @MozeIsporaka = MozeIsporaka From Inserted
  1071.     Select @MozeIsporakaBese = MozeIsporaka From Deleted
  1072.     If @MozeIsporaka<>@MozeIsporakaBese
  1073.         Insert Into IstBlokKom (Sifra_Kup, Datum, MozeIsporaka, IzmenetNa, IzmenetOd)
  1074.         Values (@Sifra_Kup,  dbo.fn_VratiDatum(GetDate()), @MozeIsporaka, GetDate(), SUser_SName())
  1075. End --Triger
  1076. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1077.  
  1078. Go
  1079. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Nalozi_Izmena' AND type = 'TR') DROP TRIGGER tr_Nalozi_Izmena
  1080.  
  1081. Go
  1082.  
  1083. CREATE      TRIGGER tr_Nalozi_Izmena
  1084. ON Nalozi
  1085. FOR UPDATE
  1086. AS
  1087. BEGIN
  1088.    Declare @Sifra_Nal Smallint
  1089.    Declare @Broj_Nal Int
  1090.    Declare @Datum_Nal Smalldatetime
  1091.    SELECT @Sifra_Nal=Sifra_Nal, @Broj_Nal=Broj_Nal, @Datum_Nal=Datum_Nal FROM Inserted
  1092.    Declare @DatNalSta Smalldatetime
  1093.    SELECT @DatNalSta=Datum_Nal FROM Deleted
  1094.    IF EXISTS(SELECT * FROM Brnal WHERE Sifra_Nal=@Sifra_Nal And Broj_Nal=@Broj_Nal)
  1095.       UPDATE Brnal SET Datum_Nal=@Datum_Nal WHERE Sifra_Nal=@Sifra_Nal And Broj_Nal=@Broj_Nal
  1096.     UPDATE AnFinDok
  1097.         SET Datum_Nal=@Datum_Nal, Prenesen=''
  1098.     Where Sifra_Nal=@Sifra_Nal And Broj_Nal=@Broj_Nal AND Datum_Nal<>@Datum_Nal
  1099.     UPDATE GStav SET Datum_Nal=@Datum_Nal
  1100.     Where Sifra_Nal=@Sifra_Nal And Broj_Nal=@Broj_Nal AND Datum_Nal<>@Datum_Nal         
  1101.     If @DatNalSta<>@Datum_Nal
  1102.         UPDATE Nalozi Set Izmenet_Od=SUser_SName(), Izmenet_Na=GetDate() Where Sifra_Nal=@Sifra_Nal And Broj_Nal=@Broj_Nal 
  1103. END
  1104.  
  1105. Go
  1106. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_StavOsnSred_Vnes' AND type = 'TR') DROP TRIGGER tr_StavOsnSred_Vnes
  1107.  
  1108. Go
  1109.  
  1110.  
  1111. CREATE    TRIGGER tr_StavOsnSred_Vnes
  1112. ON dbo.StavOsnSred 
  1113. FOR INSERT
  1114. AS
  1115. BEGIN
  1116. Declare @Inv_Broj        Char(10),
  1117.     @Datum_Dok        smalldatetime,
  1118.     @Tip_StaOsn        Char(1),
  1119.     @Orig_Nab_Vr        decimal(18,2),
  1120.     @Valuta        char(3),
  1121.     @Orig_Nab_Vr_Val    decimal(18,2),
  1122.     @Sifra_MikLok        char(10), 
  1123.     @Delov_God        smallint,
  1124.     @Osn_Amor        decimal(18,2),
  1125.     @Otpis_Pret        decimal(18,2),
  1126.     @RedTrans        int,
  1127.     @Sifra_Rab        int,
  1128.     @Sifra_Div         smallint,
  1129.     @Sifra_TrosM    smallint,
  1130.     @Sifra_TrosV    smallint
  1131. Declare StavIV Cursor Fast_Forward For 
  1132. SELECT Inv_Broj, Datum_Dok, Tip_StaOsn, Orig_Nab_Vr, Valuta, Orig_Nab_Vr_Val, Sifra_MikLok, RedTrans,
  1133.     Delov_God, Osn_Amor, Otpis_Pret, Sifra_Rab, Sifra_Div, Sifra_TrosM, Sifra_TrosV FROM INSERTED 
  1134. Open StavIV
  1135. Fetch Next From StavIV Into @Inv_Broj, @Datum_Dok, @Tip_StaOsn, @Orig_Nab_Vr, @Valuta, 
  1136.     @Orig_Nab_Vr_Val, @Sifra_MikLok, @RedTrans, @Delov_God, @Osn_Amor, @Otpis_Pret, @Sifra_Rab, @Sifra_Div, @Sifra_TrosM, @Sifra_TrosV
  1137. While @@Fetch_Status=0
  1138. Begin
  1139. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1140.     If @Tip_StaOsn In ('I', 'P')
  1141.     Begin 
  1142.         Update OsnSred Set DatAkt=@Datum_Dok, Orig_Nab_Vr=@Orig_Nab_Vr, 
  1143.             Valuta=@Valuta, Orig_Nab_Vr_Val=@Orig_Nab_Vr_Val   Where Inv_Broj=@Inv_Broj
  1144.     End
  1145.     If @Tip_StaOsn = 'Y'
  1146.     Begin 
  1147.         Update OsnSred Set DatNab=@Datum_Dok, DatAkt=@Datum_Dok, Orig_Nab_Vr=@Orig_Nab_Vr, 
  1148.             Valuta=@Valuta, Orig_Nab_Vr_Val=@Orig_Nab_Vr_Val   Where Inv_Broj=@Inv_Broj
  1149.     End
  1150.     If @Tip_StaOsn In ('F', 'R', 'T', 'Q')
  1151.     Begin 
  1152.         Update OsnSred Set DatPrest=@Datum_Dok Where Inv_Broj=@Inv_Broj
  1153.     End
  1154.     If @Tip_StaOsn In ('I', 'P', 'Z', 'Y') --, 'F', 'R', 'T', 'Q')  --sto baraat ovde R-rashod,F-prodazba,T-otpis,Q-otpis_pregupiranje
  1155.     Begin 
  1156.         Update OsnSred Set Sifra_MikLok=@Sifra_MikLok, Sifra_Rab=@Sifra_Rab Where Inv_Broj=@Inv_Broj
  1157.     End
  1158.     If @Tip_StaOsn In ('I', 'P', 'Y', '1', '2', '3') --, 'F', 'R', 'T', 'Q')  --sto baraat ovde R-rashod,F-prodazba,T-otpis,Q-otpis_pregupiranje
  1159.     Begin 
  1160.         Update OsnSred Set Sifra_Div=@Sifra_Div, Sifra_TrosM=@Sifra_TrosM, Sifra_TrosV=@Sifra_TrosV Where Inv_Broj=@Inv_Broj
  1161.     End
  1162.     If @Tip_StaOsn ='I' OR @Tip_StaOsn='Y'
  1163.     Begin 
  1164.         Insert Into PocSostOsn (Inv_Broj, Godina, Osn_Amor, Otpis_Pret, Sifra_MikLok, Sifra_Rab, Sifra_Div, Sifra_TrosM, Sifra_TrosV)
  1165.         Values(@Inv_Broj, @Delov_God, @Osn_Amor, @Otpis_Pret, @Sifra_MikLok, @Sifra_Rab, @Sifra_Div, @Sifra_TrosM, @Sifra_TrosV)
  1166.     End
  1167.     Fetch Next From StavIV Into @Inv_Broj, @Datum_Dok, @Tip_StaOsn, @Orig_Nab_Vr, @Valuta, 
  1168.     @Orig_Nab_Vr_Val, @Sifra_MikLok, @RedTrans, @Delov_God, @Osn_Amor, @Otpis_Pret, @Sifra_Rab, @Sifra_Div, @Sifra_TrosM, @Sifra_TrosV
  1169. End
  1170. Close StavIV
  1171. Deallocate StavIV
  1172. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1173. End --Triger
  1174.  
  1175. Go
  1176. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_StavOsnSred_Izmena' AND type = 'TR') DROP TRIGGER tr_StavOsnSred_Izmena
  1177.  
  1178. Go
  1179.  
  1180.  
  1181. CREATE     TRIGGER tr_StavOsnSred_Izmena
  1182. ON dbo.StavOsnSred 
  1183. FOR UPDATE
  1184. AS
  1185. BEGIN
  1186. Declare @Inv_Broj        Char(10),
  1187.     @Datum_Dok        smalldatetime,
  1188.     @Tip_StaOsn        Char(1),
  1189.     @Orig_Nab_Vr        decimal(18,2),
  1190.     @Valuta        char(3),
  1191.     @Orig_Nab_Vr_Val    decimal(18,2),
  1192.     @Sifra_MikLok        char(10),
  1193.     @RedTrans        smallint,
  1194.     @RedTransOsnSred    smallint,
  1195.     @Delov_God        smallint,
  1196.     @Osn_Amor        decimal(18,2),
  1197.     @Otpis_Pret        decimal(18,2),
  1198.     @Sifra_Rab        int,
  1199.     @Sifra_Div         smallint,
  1200.     @Sifra_TrosM    smallint,
  1201.     @Sifra_TrosV    smallint
  1202. Declare StavIO Cursor Fast_Forward For 
  1203. SELECT Inv_Broj, Datum_Dok, Tip_StaOsn, Orig_Nab_Vr, Valuta, Orig_Nab_Vr_Val, Sifra_MikLok, RedTrans,
  1204.     Delov_God, Osn_Amor, Otpis_Pret, Sifra_Rab, Sifra_Div, Sifra_TrosM, Sifra_TrosV FROM INSERTED 
  1205. Open StavIO
  1206. Fetch Next From StavIO Into @Inv_Broj, @Datum_Dok, @Tip_StaOsn, @Orig_Nab_Vr, @Valuta, 
  1207.     @Orig_Nab_Vr_Val, @Sifra_MikLok, @RedTrans, @Delov_God, @Osn_Amor, @Otpis_Pret, @Sifra_Rab, @Sifra_Div, @Sifra_TrosM, @Sifra_TrosV
  1208. While @@Fetch_Status=0
  1209. Begin
  1210. --    SELECT @Inv_Broj=Inv_Broj, @Datum_Dok=Datum_Dok, @Tip_StaOsn=Tip_StaOsn, @Orig_Nab_Vr=Orig_Nab_Vr,
  1211. --        @Valuta=Valuta, @Orig_Nab_Vr_Val=Orig_Nab_Vr_Val, @Sifra_MikLok=Sifra_MikLok, @RedTrans=RedTrans,
  1212. --        @Delov_God=Delov_God, @Osn_Amor=Osn_Amor, @Otpis_Pret=Otpis_Pret, @Sifra_Rab=Sifra_Rab
  1213. --    FROM INSERTED 
  1214. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1215.     If @Tip_StaOsn In ('I', 'P')
  1216.     Begin 
  1217.         Update OsnSred Set DatAkt=@Datum_Dok, Orig_Nab_Vr=@Orig_Nab_Vr, 
  1218.             Valuta=@Valuta, Orig_Nab_Vr_Val=@Orig_Nab_Vr_Val   Where Inv_Broj=@Inv_Broj
  1219.     End
  1220.     If @Tip_StaOsn = 'Y'
  1221.     Begin 
  1222.         Update OsnSred Set DatNab=@Datum_Dok, DatAkt=@Datum_Dok, Orig_Nab_Vr=@Orig_Nab_Vr, 
  1223.             Valuta=@Valuta, Orig_Nab_Vr_Val=@Orig_Nab_Vr_Val   Where Inv_Broj=@Inv_Broj
  1224.     End
  1225.     If @Tip_StaOsn In ('F', 'R', 'T', 'Q')
  1226.     Begin 
  1227.         Update OsnSred Set DatPrest=@Datum_Dok Where Inv_Broj=@Inv_Broj
  1228.     End
  1229.     If @Tip_StaOsn In ('I', 'P', 'Z', 'Y') --, 'F', 'R', 'T', 'Q' )        ----???????  zosto T, Q, R, F
  1230.     Begin 
  1231.         Set @RedTransOsnSred=(Select RedTrans From OsnSred Where Inv_Broj=@Inv_Broj)
  1232.         If @RedTrans=@RedTransOsnSred
  1233.         Begin
  1234.             Update OsnSred Set Sifra_MikLok=@Sifra_MikLok, Sifra_Rab=@Sifra_Rab Where Inv_Broj=@Inv_Broj
  1235.         End
  1236.     End
  1237.     If @Tip_StaOsn In ('I', 'P', '1','2','3', 'Y') --, 'F', 'R', 'T', 'Q' )        ----???????  zosto T, Q, R, F
  1238.     Begin 
  1239.         Set @RedTransOsnSred=(Select RedTrans From OsnSred Where Inv_Broj=@Inv_Broj)
  1240.         If @RedTrans=@RedTransOsnSred
  1241.         Begin
  1242.             Update OsnSred Set Sifra_Div=@Sifra_Div, Sifra_TrosM=@Sifra_TrosM, Sifra_TrosV=@Sifra_TrosV Where Inv_Broj=@Inv_Broj
  1243.         End
  1244.     End
  1245.     If @Tip_StaOsn = 'I' OR @Tip_StaOsn = 'Y'
  1246.     Begin 
  1247.         If Not Exists(Select Inv_Broj From PocSostOsn Where Inv_Broj=@Inv_Broj And Godina=@Delov_God)
  1248.         Begin
  1249.             Insert Into PocSostOsn (Inv_Broj, Godina, Osn_Amor, Otpis_Pret, Sifra_MikLok, Sifra_Rab, Sifra_Div, Sifra_TrosM, Sifra_TrosV)
  1250.             Values(@Inv_Broj, @Delov_God, @Osn_Amor, @Otpis_Pret, @Sifra_MikLok, @Sifra_Rab, @Sifra_Div, @Sifra_TrosM, @Sifra_TrosV)
  1251.         End
  1252.         Else
  1253.         Begin
  1254.             Update PocSostOsn Set Osn_Amor=@Osn_Amor, Otpis_Pret=@Otpis_Pret, Sifra_MikLok=@Sifra_MikLok,
  1255.                 Sifra_Rab=@Sifra_Rab, Sifra_Div=@Sifra_Div, Sifra_TrosM=@Sifra_TrosM, Sifra_TrosV=@Sifra_TrosV    Where Inv_Broj=@Inv_Broj And Godina=@Delov_God
  1256.         End
  1257.     End
  1258.     Fetch Next From StavIO Into @Inv_Broj, @Datum_Dok, @Tip_StaOsn, @Orig_Nab_Vr, @Valuta, 
  1259.     @Orig_Nab_Vr_Val, @Sifra_MikLok, @RedTrans, @Delov_God, @Osn_Amor, @Otpis_Pret, @Sifra_Rab, @Sifra_Div, @Sifra_TrosM, @Sifra_TrosV
  1260. End
  1261. Close StavIO
  1262. Deallocate  StavIO
  1263. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1264. End --Triger
  1265.  
  1266. Go
  1267. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_StavOsnSred_Brisi' AND type = 'TR') DROP TRIGGER tr_StavOsnSred_Brisi
  1268.  
  1269. Go
  1270.  
  1271. CREATE   TRIGGER tr_StavOsnSred_Brisi
  1272. ON dbo.StavOsnSred 
  1273. FOR DELETE
  1274. AS
  1275. BEGIN
  1276. Declare @Inv_Broj        Char(10),
  1277.     @Tip_StaOsn        Char(1),
  1278.     @Delov_God        smallint,
  1279.     @Sifra_MikLok_Od    char(10),
  1280.     @Sifra_RabOd    int,
  1281.     @Sifra_Div_Od     smallint,
  1282.     @Sifra_TrosM_Od    smallint,
  1283.     @Sifra_TrosV_Od    smallint
  1284.     Declare Stavki Cursor Fast_Forward For 
  1285.     SELECT Inv_Broj, Tip_StaOsn, Delov_God, Sifra_MikLok_Od, Sifra_RabOd, Sifra_Div_Od, Sifra_TrosM_Od,    Sifra_TrosV_Od FROM DELETED
  1286.     Open Stavki
  1287.     Fetch Next From Stavki Into @Inv_Broj, @Tip_StaOsn, @Delov_God, @Sifra_MikLok_Od, @Sifra_RabOd, @Sifra_Div_Od, @Sifra_TrosM_Od, @Sifra_TrosV_Od
  1288.     While @@Fetch_Status=0
  1289.     Begin
  1290.         If @Tip_StaOsn ='I' OR @Tip_StaOsn='Y'
  1291.         Begin 
  1292.             Delete From PocSostOsn Where Inv_Broj=@Inv_Broj And Godina=@Delov_God
  1293.         End
  1294.         If @Tip_StaOsn = 'Z'
  1295.         Begin
  1296.             Update OsnSred Set Sifra_MikLok=@Sifra_MikLok_Od, Sifra_Rab=@Sifra_RabOd Where Inv_Broj=@Inv_Broj
  1297.         End
  1298.         If @Tip_StaOsn IN ('1','2','3')
  1299.         Begin
  1300.             Update OsnSred Set Sifra_Div=@Sifra_Div_Od, Sifra_TrosM=@Sifra_TrosM_Od, Sifra_TrosV=@Sifra_TrosV_Od Where Inv_Broj=@Inv_Broj
  1301.         End
  1302.         If @Tip_StaOsn in ('R', 'F', 'T', 'Q')
  1303.         Begin
  1304.             Update OsnSred Set DatPrest=Null Where Inv_Broj=@Inv_Broj
  1305.         End
  1306.         Fetch Next From Stavki Into @Inv_Broj, @Tip_StaOsn, @Delov_God, @Sifra_MikLok_Od, @Sifra_RabOd, @Sifra_Div_Od, @Sifra_TrosM_Od, @Sifra_TrosV_Od
  1307.     End
  1308.     Close Stavki
  1309.     Deallocate  Stavki
  1310. End --Triger
  1311.  
  1312. Go
  1313. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RazlCeni_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_RazlCeni_IzmeniBrisi
  1314.  
  1315. Go
  1316. CREATE TRIGGER tr_RazlCeni_IzmeniBrisi
  1317.     ON dbo.RazlCeni
  1318.     FOR DELETE, UPDATE
  1319.     AS 
  1320.     BEGIN
  1321.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1322.         Begin
  1323.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1324.             Rollback Tran
  1325.         End
  1326.     END
  1327.  
  1328. Go
  1329. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RazlProd_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_RazlProd_IzmeniBrisi
  1330.  
  1331. Go
  1332. CREATE TRIGGER tr_RazlProd_IzmeniBrisi
  1333.     ON dbo.RazlProd
  1334.     FOR DELETE, UPDATE
  1335.     AS 
  1336.     BEGIN
  1337.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1338.         Begin
  1339.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1340.             Rollback Tran
  1341.         End
  1342.     END
  1343.  
  1344. Go
  1345. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RazlFin_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_RazlFin_IzmeniBrisi
  1346.  
  1347. Go
  1348. CREATE TRIGGER tr_RazlFin_IzmeniBrisi
  1349.     ON dbo.RazlFin
  1350.     FOR DELETE, UPDATE
  1351.     AS 
  1352.     BEGIN
  1353.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1354.         Begin
  1355.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1356.             Rollback Tran
  1357.         End
  1358.     END
  1359.  
  1360. Go
  1361. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_GStav_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_GStav_IzmeniBrisi
  1362.  
  1363. Go
  1364. CREATE TRIGGER tr_GStav_IzmeniBrisi
  1365.     ON dbo.GStav
  1366.     FOR DELETE, UPDATE
  1367.     AS 
  1368.     BEGIN
  1369.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1370.         Begin
  1371.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1372.             Rollback Tran
  1373.         End
  1374.     END
  1375.  
  1376. Go
  1377. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AnFinDok_Zacuvaj' AND type = 'TR') DROP TRIGGER tr_AnFinDok_Zacuvaj
  1378.  
  1379. Go
  1380.  
  1381. CREATE       TRIGGER tr_AnFinDok_Zacuvaj
  1382. ON dbo.AnFinDok
  1383. FOR INSERT
  1384. AS 
  1385. BEGIN
  1386.    Declare @Sifra_OE Smallint
  1387.    Declare @Sifra_Dok Smallint
  1388.    Declare @Broj_Dok Int
  1389.     Declare @DaliMater Char(1)
  1390.     ------------------------------------------------------------
  1391.     -- 18/09/2003 Dodadeno: Inner Join TipDok... i uslovot za
  1392.     -- azuriranje na BrDok samo koga dokumentot e cisto finansiski
  1393.     -- a ne i materijalen koj doagja od "Azuriranje na dokumenti"
  1394.     ------------------------------------------------------------
  1395.    SELECT @Sifra_OE=I.Sifra_OE, @Sifra_Dok=I.Sifra_Dok, @Broj_Dok=I.Broj_Dok, @DaliMater=TD.DaliMater
  1396.     FROM Inserted I
  1397.     Inner Join TipDok TD On I.Sifra_Dok=TD.Sifra_Dok
  1398.     If @Sifra_Dok is not null AND @DaliMater='N'
  1399.         Begin
  1400.            IF EXISTS(SELECT * FROM Brdok WITH(NOLOCK) WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok)
  1401.               UPDATE Brdok SET Broj_Dok=@Broj_Dok WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok
  1402.            ELSE
  1403.               INSERT INTO Brdok(Sifra_OE, Sifra_Dok, Broj_Dok)
  1404.                  VALUES(@Sifra_OE, @Sifra_Dok, @Broj_Dok)
  1405.         End
  1406.     ------------------------------------------------------------
  1407.     -- 26/09/2003 Dodadeno: Zacuvaj i vo OpstLog
  1408.     ------------------------------------------------------------
  1409.     /*INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)    TRGNATO 26.10.03
  1410.     Values 
  1411.         (     GetDate(),
  1412.             'ZacuvAnFin',
  1413.             'INF',
  1414.             'trig',
  1415.             'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' +
  1416.             'Dok:' + Cast(@Sifra_Dok As Varchar(6)) + ' ' +
  1417.             'Broj:' + Cast(@Broj_Dok As Varchar(10)) + ' ' +
  1418.             'Korisnik: ' + SUser_SName(),
  1419.             Substring(SUser_SName(),1,20))  */
  1420. END
  1421.  
  1422. Go
  1423. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Dokr_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_Dokr_IzmeniBrisi
  1424.  
  1425. Go
  1426. CREATE TRIGGER tr_Dokr_IzmeniBrisi
  1427.     ON dbo.Dokr
  1428.     FOR DELETE, UPDATE
  1429.     AS 
  1430.     BEGIN
  1431.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1432.         Begin
  1433.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1434.             Rollback Tran
  1435.         End
  1436.     END
  1437.  
  1438. Go
  1439. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AnFinDok_Izmeni' AND type = 'TR') DROP TRIGGER tr_AnFinDok_Izmeni
  1440.  
  1441. Go
  1442. CREATE    TRIGGER tr_AnFinDok_Izmeni
  1443. ON dbo.AnFinDok
  1444. FOR UPDATE
  1445. AS 
  1446. BEGIN
  1447.    Declare @Sifra_OE Smallint
  1448.    Declare @Sifra_Dok Smallint
  1449.    Declare @Broj_Dok Int
  1450.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Dok=Sifra_Dok, @Broj_Dok=Broj_Dok FROM Inserted
  1451.     INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)
  1452.     Values (    GetDate(), 'IzmenAnFin',     'INF', 'trig', 
  1453.     'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' + 'Dok:' + Cast(@Sifra_Dok As Varchar(6)) + ' ' + 'Broj:' + Cast(@Broj_Dok As Varchar(10)) + ' ' +
  1454.     'Korisnik: ' + SUser_SName(), Substring(SUser_SName(),1,20))
  1455. END
  1456.  
  1457. Go
  1458. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Naracki_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_Naracki_IzmeniBrisi
  1459.  
  1460. Go
  1461. CREATE TRIGGER tr_Naracki_IzmeniBrisi
  1462.     ON dbo.Naracki
  1463.     FOR DELETE, UPDATE
  1464.     AS 
  1465.     BEGIN
  1466.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1467.         Begin
  1468.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1469.             Rollback Tran
  1470.         End
  1471.     END
  1472.  
  1473. Go
  1474. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AnFinDok_Brisi' AND type = 'TR') DROP TRIGGER tr_AnFinDok_Brisi
  1475.  
  1476. Go
  1477. CREATE TRIGGER tr_AnFinDok_Brisi
  1478. ON dbo.AnFinDok
  1479. FOR DELETE
  1480. AS 
  1481. BEGIN
  1482.    Declare @Sifra_OE Smallint
  1483.    Declare @Sifra_Dok Smallint
  1484.    Declare @Broj_Dok Int
  1485.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Dok=Sifra_Dok, @Broj_Dok=Broj_Dok FROM Deleted
  1486.     INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)
  1487.     Values 
  1488.         (     GetDate(),
  1489.             'BrisiAnFin',
  1490.             'INF',
  1491.             'trig',
  1492.             'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' +
  1493.             'Dok:' + Cast(@Sifra_Dok As Varchar(6)) + ' ' +
  1494.             'Broj:' + Cast(@Broj_Dok As Varchar(10)) + ' ' +
  1495.             'Korisnik: ' + SUser_SName(),
  1496.             Substring(SUser_SName(),1,20))
  1497.     INSERT INTO BrsFinDok (Sifra_OE, Sifra_Dok, Broj_Dok, Prenesen)
  1498.     SELECT Sifra_OE, Sifra_Dok, Broj_Dok, ''  FROM Deleted
  1499. END
  1500.  
  1501. Go
  1502. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KreditVrskaZatv_Del' AND type = 'TR') DROP TRIGGER tr_KreditVrskaZatv_Del
  1503.  
  1504. Go
  1505.  
  1506. create TRIGGER tr_KreditVrskaZatv_Del
  1507. ON dbo.KreditVrskaZatv
  1508. FOR DELETE
  1509. AS 
  1510. BEGIN
  1511.    Declare SiteZatv CURSOR FOR 
  1512.     SELECT SifrA_oe_1, Broj_Kredit_1, Rbr_KreditTrans_1,
  1513.            SifrA_oe_2, Broj_Kredit_2, Rbr_KreditTrans2,
  1514.            Iznos, Datum_Zatv 
  1515.         FROM DELETED
  1516.     Declare @SifrA_Oe_1 Int
  1517.     Declare @Broj_Kredit_1 Int
  1518.     Declare @Rbr_KreditTrans_1 int
  1519.     Declare @SifrA_Oe_2 Int
  1520.     Declare @Broj_Kredit_2 Int
  1521.     Declare @Rbr_KreditTrans_2 int
  1522.     Declare @Iznos Numeric(18, 4)
  1523.     Declare @Datum_Zatv smalldatetime
  1524.     OPEN SiteZatv
  1525.     FETCH NEXT FROM SiteZatv
  1526.     INTO @SifrA_oe_1, @Broj_Kredit_1, @Rbr_KreditTrans_1,
  1527.                   @SifrA_oe_2, @Broj_Kredit_2, @Rbr_KreditTrans_2,
  1528.                     @Iznos, @Datum_Zatv
  1529.     WHILE @@FETCH_STATUS = 0
  1530.     Begin
  1531.         update KreditTransakc
  1532.         set Plateno_Pobaruva = Plateno_Pobaruva - @Iznos
  1533.         WHERE Sifra_oe = @SifrA_oe_1 and Broj_Kredit = @Broj_Kredit_1
  1534.             and Rbr_KreditTrans = @Rbr_KreditTrans_1
  1535.         update KreditTransakc
  1536.         set Plateno_Dolzi = Plateno_Dolzi - @Iznos
  1537.         WHERE Sifra_oe = @SifrA_oe_2 and Broj_Kredit = @Broj_Kredit_2
  1538.             and Rbr_KreditTrans = @Rbr_KreditTrans_2
  1539.         FETCH NEXT FROM SiteZatv
  1540.         INTO @SifrA_oe_1, @Broj_Kredit_1, @Rbr_KreditTrans_1,
  1541.                   @SifrA_oe_2, @Broj_Kredit_2, @Rbr_KreditTrans_2,
  1542.                     @Iznos, @Datum_Zatv
  1543.     End --While
  1544.     CLOSE SiteZatv
  1545.     DEALLOCATE SiteZatv
  1546. END --Trigger
  1547.  
  1548. Go
  1549. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KreditVrskaZatv_Ins' AND type = 'TR') DROP TRIGGER tr_KreditVrskaZatv_Ins
  1550.  
  1551. Go
  1552.  
  1553.  
  1554. CREATE TRIGGER tr_KreditVrskaZatv_Ins
  1555. ON dbo.KreditVrskaZatv
  1556. FOR INSERT
  1557. AS 
  1558. BEGIN
  1559.    Declare SiteZatv CURSOR FOR 
  1560.     SELECT SifrA_oe_1, Broj_Kredit_1, Rbr_KreditTrans_1,
  1561.            SifrA_oe_2, Broj_Kredit_2, Rbr_KreditTrans2,
  1562.            Iznos, Datum_Zatv 
  1563.         FROM INSERTED
  1564.     Declare @SifrA_Oe_1 Int
  1565.     Declare @Broj_Kredit_1 Int
  1566.     Declare @Rbr_KreditTrans_1 int
  1567.     Declare @SifrA_Oe_2 Int
  1568.     Declare @Broj_Kredit_2 Int
  1569.     Declare @Rbr_KreditTrans_2 int
  1570.     Declare @Iznos Numeric(18, 4)
  1571.     Declare @Datum_Zatv smalldatetime
  1572.     Declare @Datum_1 smalldatetime
  1573.     Declare @Datum_2 smalldatetime
  1574.     OPEN SiteZatv
  1575.     FETCH NEXT FROM SiteZatv
  1576.     INTO @SifrA_oe_1, @Broj_Kredit_1, @Rbr_KreditTrans_1,
  1577.                   @SifrA_oe_2, @Broj_Kredit_2, @Rbr_KreditTrans_2,
  1578.                     @Iznos, @Datum_Zatv
  1579.     WHILE @@FETCH_STATUS = 0
  1580.     Begin
  1581.         SELECT  @Datum_1 = Datum_Dosp
  1582.         FROM KreditTransakc 
  1583.         WHERE Sifra_oe = @SifrA_oe_1 and Broj_Kredit = @Broj_Kredit_1
  1584.             and Rbr_KreditTrans = @Rbr_KreditTrans_1
  1585.         SELECT  @Datum_2 = Datum_Dosp
  1586.         FROM KreditTransakc 
  1587.         WHERE Sifra_oe = @SifrA_oe_2 and Broj_Kredit = @Broj_Kredit_2
  1588.             and Rbr_KreditTrans= @Rbr_KreditTrans_2
  1589.         update KreditTransakc
  1590.         set Plateno_Pobaruva = Plateno_Pobaruva + @Iznos,
  1591.             Datum_Kontra = @Datum_2
  1592.         WHERE Sifra_oe = @SifrA_oe_1 and Broj_Kredit = @Broj_Kredit_1
  1593.             and Rbr_KreditTrans = @Rbr_KreditTrans_1
  1594.         update KreditTransakc
  1595.         set Plateno_Dolzi = Plateno_Dolzi + @Iznos,
  1596.             Datum_Kontra = @Datum_1
  1597.         WHERE Sifra_oe = @SifrA_oe_2 and Broj_Kredit = @Broj_Kredit_2
  1598.             and Rbr_KreditTrans = @Rbr_KreditTrans_2
  1599.         FETCH NEXT FROM SiteZatv
  1600.         INTO @SifrA_oe_1, @Broj_Kredit_1, @Rbr_KreditTrans_1,
  1601.                   @SifrA_oe_2, @Broj_Kredit_2, @Rbr_KreditTrans_2,
  1602.                     @Iznos, @Datum_Zatv
  1603.     End --While
  1604.     CLOSE SiteZatv
  1605.     DEALLOCATE SiteZatv
  1606. END --Trigger
  1607.  
  1608. Go
  1609. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Popis_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_Popis_IzmeniBrisi
  1610.  
  1611. Go
  1612. CREATE TRIGGER tr_Popis_IzmeniBrisi
  1613.     ON dbo.Popis
  1614.     FOR DELETE, UPDATE
  1615.     AS 
  1616.     BEGIN
  1617.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1618.         Begin
  1619.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1620.             Rollback Tran
  1621.         End
  1622.     END
  1623.  
  1624. Go
  1625. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KartProm_Insert' AND type = 'TR') DROP TRIGGER tr_KartProm_Insert
  1626.  
  1627. Go
  1628. CREATE   TRIGGER tr_KartProm_Insert
  1629. ON dbo.KartProm
  1630. FOR INSERT
  1631. AS
  1632. BEGIN
  1633. DECLARE
  1634.     @Sifra_OE        Smallint,
  1635.     @Broj_Ska        Int,
  1636.     @Sifra_Kor         VarChar(20),
  1637.     @Sifra_Nac        Int,
  1638.     @Datum_Ska        SmallDateTime,
  1639.     @Dolzi            Decimal(18,6),
  1640.     @Pobaruva        Decimal(18,6),
  1641.     @FraUpl        Char(1),
  1642.     @VnsOnLine        Char(1),
  1643.     @Sifra_Kup        Char(6),
  1644.     @KlubDolzi        Decimal(18,6)
  1645.     Declare InsStavki Cursor Fast_Forward For
  1646.        Select Sifra_OE, Broj_Ska, Sifra_Kor, Sifra_Nac, Datum_Ska, Dolzi, Pobaruva, FraUpl, VnsOnLine,  Sifra_Kup, KlubDolzi
  1647.     From Inserted
  1648.     Open InsStavki
  1649.     Fetch Next From InsStavki 
  1650.     Into @Sifra_OE, @Broj_Ska, @Sifra_Kor, @Sifra_Nac, @Datum_Ska, @Dolzi, @Pobaruva, @FraUpl, @VnsOnLine,  @Sifra_Kup, @KlubDolzi
  1651.     While @@Fetch_Status = 0
  1652.     Begin
  1653.         IF @FraUpl='U'
  1654.         Begin
  1655.             INSERT ArkaKartKpm (Sifra_Oe , Grp_Kasa, BrKasa, Broj_Ska ,Sifra_Kor , Sifra_Nac, cDatumSka, Datum_Ska,Dolzi , Pobaruva,FraUpl, VnsOnLine, Sifra_Kup, KlubDolzi , Rasknizen )
  1656.             VALUES (@Sifra_OE, @Sifra_OE, @Sifra_OE, @Broj_Ska, @Sifra_Kor, @Sifra_Nac, cast (Year(@Datum_Ska) as Char(4)) 
  1657.                                                     + (case when Month(@Datum_Ska)<10 then '0' else '' end) +  cast (month(@Datum_Ska) as varchar(2))            
  1658.                                                     + (case when day(@Datum_Ska)<10 then '0' else '' end) +  cast (day(@Datum_Ska) as varchar(2)),
  1659.                                                                 @Datum_Ska, @Dolzi, @Pobaruva, @FraUpl, @VnsOnLine,  @Sifra_Kup, @KlubDolzi,'N')
  1660.         End
  1661.         Fetch Next From InsStavki 
  1662.         Into @Sifra_OE, @Broj_Ska, @Sifra_Kor, @Sifra_Nac, @Datum_Ska, @Dolzi, @Pobaruva, @FraUpl, @VnsOnLine,  @Sifra_Kup, @KlubDolzi
  1663.     End --While
  1664.     Close InsStavki
  1665.     Deallocate InsStavki
  1666. END
  1667.  
  1668. Go
  1669. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KasStav_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_KasStav_IzmeniBrisi
  1670.  
  1671. Go
  1672. CREATE TRIGGER tr_KasStav_IzmeniBrisi
  1673.     ON dbo.KasStav
  1674.     FOR DELETE, UPDATE
  1675.     AS 
  1676.     BEGIN
  1677.         If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  1678.         Begin
  1679.             RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  1680.             Rollback Tran
  1681.         End
  1682.     END
  1683.  
  1684. Go
  1685. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Nivo_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Nivo_Vnes_Izmena
  1686.  
  1687. Go
  1688. CREATE  TRIGGER tr_Nivo_Vnes_Izmena 
  1689. ON dbo.Nivo
  1690. FOR INSERT, UPDATE
  1691. AS
  1692. BEGIN
  1693. Declare 
  1694.     @Sifra_Nivo    char(2),
  1695.     @Propagiraj    char(1),
  1696.     @Redovi     smallint,
  1697.     @VtoraBaza    varchar(20),
  1698.     @DaliKup    char(1),
  1699.     @DaliPodelKup    char(1),
  1700.     @SSQL      varchar(8000)
  1701.     SELECT @Sifra_Nivo = Sifra_Nivo
  1702.     FROM INSERTED 
  1703. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  1704.     Set @Propagiraj = (Select Propagiraj From Nivo Where Sifra_Nivo = @Sifra_Nivo)
  1705.     If @Propagiraj='D' 
  1706.     Begin
  1707.         Update Nivo Set Propagiraj=Null  Where Sifra_Nivo = @Sifra_Nivo
  1708.         Select Rbr, ImeBaza
  1709.         From FirParal
  1710.         Set @Redovi = @@RowCount
  1711.         While @Redovi > 0  
  1712.         Begin
  1713.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  1714.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  1715.             Begin
  1716.                 Set @SSQL =  ' Select  Sifra_Nivo From ' + @VtoraBaza + '..Nivo
  1717.                         Where Sifra_Nivo = ''' + @Sifra_Nivo  + ''' '
  1718.                 Exec(@SSQL)
  1719.                 If @@RowCount <> 0
  1720.                       Begin
  1721.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Nivo
  1722.                     Set ImeNivo=D.ImeNivo, Prioritet=D.Prioritet, Rok_Dosp=D.Rok_Dosp, 
  1723.                         Kasa=D.Kasa, Uces=D.Uces, KojaCena=D.KojaCena
  1724.                     From Nivo D
  1725.                     Where D.Sifra_Nivo = ' + cast(@Sifra_Nivo as varchar(5)) + ' 
  1726.                     and ' + @VtoraBaza + '..Nivo.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  1727.                     Exec(@SSQL)
  1728.                      End  -- If  @@RowCount <> 0
  1729.                 Else
  1730.                      Begin
  1731.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Nivo Select * From Nivo Where Sifra_Nivo= ''' + @Sifra_Nivo + ''' '
  1732. print @SSQL
  1733.                      Exec(@SSQL)        
  1734.                      End  -- Else
  1735.             End -- DaliArt
  1736.             Set @Redovi = @Redovi - 1
  1737.                        end -- While
  1738.     End -- Propagiraj
  1739. End --Triger
  1740. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1741.  
  1742. Go
  1743. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_GTipKup_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_GTipKup_Vnes_Izmena
  1744.  
  1745. Go
  1746. CREATE  TRIGGER tr_GTipKup_Vnes_Izmena 
  1747. ON dbo.GTipKup
  1748. FOR INSERT, UPDATE
  1749. AS
  1750. BEGIN
  1751. Declare 
  1752.     @TipKup    varchar(11),
  1753.     @Propagiraj    char(1),
  1754.     @Redovi     smallint,
  1755.     @VtoraBaza    varchar(20),
  1756.     @DaliKup    char(1),
  1757.     @DaliPodelKup    char(1),
  1758.     @SSQL      varchar(8000)
  1759.     SELECT @TipKup = TipKup
  1760.     FROM INSERTED 
  1761. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  1762.     Set @Propagiraj = (Select Propagiraj From GTipKup Where TipKup = @TipKup)
  1763.     If @Propagiraj='D' 
  1764.     Begin
  1765.         Update GTipKup Set Propagiraj=Null  Where TipKup = @TipKup
  1766.         Select Rbr, ImeBaza
  1767.         From FirParal
  1768.         Set @Redovi = @@RowCount
  1769.         While @Redovi > 0  
  1770.         Begin
  1771.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  1772.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  1773.             Begin
  1774.                 Set @SSQL =  ' Select  TipKup From ' + @VtoraBaza + '..GTipKup
  1775.                         Where TipKup = ''' + @TipKup + ''' '
  1776.                 Exec(@SSQL)
  1777.                 If @@RowCount <> 0
  1778.                       Begin
  1779.                     Set @SSQL = ' Update ' + @VtoraBaza + '..GTipKup
  1780.                     Set ImeTipKup=D.ImeTipKup
  1781.                     From GTipKup D
  1782.                     Where D.TipKup = ''' + @TipKup + ''' 
  1783.                     and ' + @VtoraBaza + '..GTipKup.TipKup = ''' + @TipKup + ''' '
  1784.                     Exec(@SSQL)
  1785.                      End  -- If  @@RowCount <> 0
  1786.                 Else
  1787.                      Begin
  1788.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..GTipKup Select * From GTipKup Where TipKup= ''' + @TipKup + ''' '
  1789. print @SSQL
  1790.                      Exec(@SSQL)        
  1791.                      End  -- Else
  1792.             End -- DaliArt
  1793.             Set @Redovi = @Redovi - 1
  1794.                        end -- While
  1795.     End -- Propagiraj
  1796. End --Triger
  1797. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1798.  
  1799. Go
  1800. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KDrugo1_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KDrugo1_Vnes_Izmena
  1801.  
  1802. Go
  1803. CREATE  TRIGGER tr_KDrugo1_Vnes_Izmena 
  1804. ON dbo.KDrugo1
  1805. FOR INSERT, UPDATE
  1806. AS
  1807. BEGIN
  1808. Declare 
  1809.     @Sifra_1k    smallint,
  1810.     @Propagiraj    char(1),
  1811.     @Redovi     smallint,
  1812.     @VtoraBaza    varchar(20),
  1813.     @DaliKup    char(1),
  1814.     @DaliPodelKup    char(1),
  1815.     @SSQL      varchar(8000)
  1816.     SELECT @Sifra_1k = Sifra_1k
  1817.     FROM INSERTED 
  1818. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  1819.     Set @Propagiraj = (Select Propagiraj From KDrugo1 Where Sifra_1k = @Sifra_1k)
  1820.     If @Propagiraj='D' 
  1821.     Begin
  1822.         Update KDrugo1 Set Propagiraj=Null  Where Sifra_1k = @Sifra_1k
  1823.         Select Rbr, ImeBaza
  1824.         From FirParal
  1825.         Set @Redovi = @@RowCount
  1826.         While @Redovi > 0  
  1827.         Begin
  1828.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  1829.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  1830.             Begin
  1831.                 Set @SSQL =  ' Select  Sifra_1k From ' + @VtoraBaza + '..KDrugo1
  1832.                         Where Sifra_1k = ' + cast(@Sifra_1k as varchar(5)) + ' '
  1833.                 Exec(@SSQL)
  1834.                 If @@RowCount <> 0
  1835.                       Begin
  1836.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KDrugo1
  1837.                     Set Ime_1k=D.Ime_1k, VoZemjata=D.VoZemjata
  1838.                     From KDrugo1 D
  1839.                     Where D.Sifra_1k = ' + cast(@Sifra_1k as varchar(5)) + ' 
  1840.                     and ' + @VtoraBaza + '..KDrugo1.Sifra_1k = ' + cast(@Sifra_1k as varchar(5)) + ' '
  1841.                     Exec(@SSQL)
  1842.                      End  -- If  @@RowCount <> 0
  1843.                 Else
  1844.                      Begin
  1845.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KDrugo1 Select * From KDrugo1 Where Sifra_1k= ' + cast(@Sifra_1k as varchar(5)) + ' '
  1846.                      Exec(@SSQL)        
  1847.                      End  -- Else
  1848.             End -- DaliArt
  1849.             Set @Redovi = @Redovi - 1
  1850.                        end -- While
  1851.     End -- Propagiraj
  1852. End --Triger
  1853. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1854.  
  1855. Go
  1856. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Naracki_Brisi' AND type = 'TR') DROP TRIGGER tr_Naracki_Brisi
  1857.  
  1858. Go
  1859. CREATE  TRIGGER tr_Naracki_Brisi
  1860. ON dbo.Naracki
  1861. FOR DELETE
  1862. AS 
  1863. BEGIN
  1864.    Declare @Sifra_OE Smallint
  1865.    Declare @Sifra_Nar Smallint
  1866.    Declare @Broj_Nar Int
  1867.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Nar=Sifra_Nar, @Broj_Nar=Broj_Nar FROM Deleted
  1868.     INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)
  1869.     Values 
  1870.         (     GetDate(),
  1871.             'BrisiNar',
  1872.             'INF',
  1873.             'trig',
  1874.             'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' +
  1875.             'Nar:' + Cast(@Sifra_Nar As Varchar(6)) + ' ' +
  1876.             'Broj:' + Cast(@Broj_Nar As Varchar(10)) + ' ' +
  1877.             'Korisnik: ' + SUser_SName(),
  1878.             Substring(SUser_SName(),1,20))
  1879. END
  1880.  
  1881. Go
  1882. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KDrugo2_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KDrugo2_Vnes_Izmena
  1883.  
  1884. Go
  1885. CREATE  TRIGGER tr_KDrugo2_Vnes_Izmena 
  1886. ON dbo.KDrugo2
  1887. FOR INSERT, UPDATE
  1888. AS
  1889. BEGIN
  1890. Declare 
  1891.     @Sifra_2k    smallint,
  1892.     @Propagiraj    char(1),
  1893.     @Redovi     smallint,
  1894.     @VtoraBaza    varchar(20),
  1895.     @DaliKup    char(1),
  1896.     @DaliPodelKup    char(1),
  1897.     @SSQL      varchar(8000)
  1898.     SELECT @Sifra_2k = Sifra_2k
  1899.     FROM INSERTED 
  1900. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  1901.     Set @Propagiraj = (Select Propagiraj From KDrugo2 Where Sifra_2k = @Sifra_2k)
  1902.     If @Propagiraj='D' 
  1903.     Begin
  1904.         Update KDrugo2 Set Propagiraj=Null  Where Sifra_2k = @Sifra_2k
  1905.         Select Rbr, ImeBaza
  1906.         From FirParal
  1907.         Set @Redovi = @@RowCount
  1908.         While @Redovi > 0  
  1909.         Begin
  1910.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  1911.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  1912.             Begin
  1913.                 Set @SSQL =  ' Select  Sifra_2k From ' + @VtoraBaza + '..KDrugo2
  1914.                         Where Sifra_2k = ' + cast(@Sifra_2k as varchar(5)) + ' '
  1915.                 Exec(@SSQL)
  1916.                 If @@RowCount <> 0
  1917.                       Begin
  1918.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KDrugo2
  1919.                     Set Ime_2k=D.Ime_2k, VoZemjata=D.VoZemjata
  1920.                     From KDrugo2 D
  1921.                     Where D.Sifra_2k = ' + cast(@Sifra_2k as varchar(5)) + ' 
  1922.                     and ' + @VtoraBaza + '..KDrugo2.Sifra_2k = ' + cast(@Sifra_2k as varchar(5)) + ' '
  1923.                     Exec(@SSQL)
  1924.                      End  -- If  @@RowCount <> 0
  1925.                 Else
  1926.                      Begin
  1927.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KDrugo2 Select * From KDrugo2 Where Sifra_2k= ' + cast(@Sifra_2k as varchar(5)) + ' '
  1928.                      Exec(@SSQL)        
  1929.                      End  -- Else
  1930.             End -- DaliArt
  1931.             Set @Redovi = @Redovi - 1
  1932.                        end -- While
  1933.     End -- Propagiraj
  1934. End --Triger
  1935. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1936.  
  1937. Go
  1938. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KDrugo3_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KDrugo3_Vnes_Izmena
  1939.  
  1940. Go
  1941. CREATE  TRIGGER tr_KDrugo3_Vnes_Izmena 
  1942. ON dbo.KDrugo3
  1943. FOR INSERT, UPDATE
  1944. AS
  1945. BEGIN
  1946. Declare 
  1947.     @Sifra_3k    smallint,
  1948.     @Propagiraj    char(1),
  1949.     @Redovi     smallint,
  1950.     @VtoraBaza    varchar(20),
  1951.     @DaliKup    char(1),
  1952.     @DaliPodelKup    char(1),
  1953.     @SSQL      varchar(8000)
  1954.     SELECT @Sifra_3k = Sifra_3k
  1955.     FROM INSERTED 
  1956. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  1957.     Set @Propagiraj = (Select Propagiraj From KDrugo3 Where Sifra_3k = @Sifra_3k)
  1958.     If @Propagiraj='D' 
  1959.     Begin
  1960.         Update KDrugo3 Set Propagiraj=Null  Where Sifra_3k = @Sifra_3k
  1961.         Select Rbr, ImeBaza
  1962.         From FirParal
  1963.         Set @Redovi = @@RowCount
  1964.         While @Redovi > 0  
  1965.         Begin
  1966.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  1967.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  1968.             Begin
  1969.                 Set @SSQL =  ' Select  Sifra_3k From ' + @VtoraBaza + '..KDrugo3
  1970.                         Where Sifra_3k = ' + cast(@Sifra_3k as varchar(5)) + ' '
  1971.                 Exec(@SSQL)
  1972.                 If @@RowCount <> 0
  1973.                       Begin
  1974.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KDrugo3
  1975.                     Set Ime_3k=D.Ime_3k
  1976.                     From KDrugo3 D
  1977.                     Where D.Sifra_3k = ' + cast(@Sifra_3k as varchar(5)) + ' 
  1978.                     and ' + @VtoraBaza + '..KDrugo3.Sifra_3k = ' + cast(@Sifra_3k as varchar(5)) + ' '
  1979.                     Exec(@SSQL)
  1980.                      End  -- If  @@RowCount <> 0
  1981.                 Else
  1982.                      Begin
  1983.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KDrugo3 Select * From KDrugo3 Where Sifra_3k= ' + cast(@Sifra_3k as varchar(5)) + ' '
  1984.                      Exec(@SSQL)        
  1985.                      End  -- Else
  1986.             End -- DaliArt
  1987.             Set @Redovi = @Redovi - 1
  1988.                        end -- While
  1989.     End -- Propagiraj
  1990. End --Triger
  1991. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  1992.  
  1993. Go
  1994. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Naracki_Izmeni' AND type = 'TR') DROP TRIGGER tr_Naracki_Izmeni
  1995.  
  1996. Go
  1997. CREATE   TRIGGER tr_Naracki_Izmeni
  1998. ON dbo.Naracki
  1999. FOR UPDATE
  2000. AS 
  2001. BEGIN
  2002.    Declare @Sifra_OE Smallint
  2003.    Declare @Sifra_Nar Smallint
  2004.    Declare @Broj_Nar Int
  2005.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Nar=Sifra_Nar, @Broj_Nar=Broj_Nar FROM Inserted
  2006.     INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)
  2007.     Values 
  2008.         (     GetDate(),
  2009.             'IzmenNar',
  2010.             'INF',
  2011.             'trig',
  2012.             'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' +
  2013.             'Nar:' + Cast(@Sifra_Nar As Varchar(6)) + ' ' +
  2014.             'Broj:' + Cast(@Broj_Nar As Varchar(10)) + ' ' +
  2015.             'Korisnik: ' + SUser_SName(),
  2016.             Substring(SUser_SName(),1,20))
  2017. END
  2018.  
  2019. Go
  2020. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AnZatv_Ins' AND type = 'TR') DROP TRIGGER tr_AnZatv_Ins
  2021.  
  2022. Go
  2023.  
  2024. CREATE         TRIGGER tr_AnZatv_Ins
  2025. ON dbo.AnZatv
  2026. FOR INSERT
  2027. AS 
  2028. BEGIN
  2029.    Declare SiteZatv CURSOR FOR 
  2030.     SELECT Anid1, Anid2, Iznos, Iznos_Dev FROM INSERTED
  2031.     Declare @Anid1 Int
  2032.     Declare @Anid2 Int
  2033.     Declare @Iznos Numeric(18, 4)
  2034.     Declare @Iznos_Dev Numeric(18, 4)
  2035.     Declare @Dolzi Numeric(18, 4)
  2036.     Declare @Pobaruva Numeric(18, 4)
  2037.     Declare @Plateno_Dolzi Numeric(18, 4)
  2038.     Declare @Plateno_Pobar Numeric(18, 4)
  2039.     Declare @DevDolzi Numeric(18, 4)
  2040.     Declare @DevPobaruva Numeric(18, 4)
  2041.     Declare @DevPlateno_Dolzi Numeric(18, 4)
  2042.     Declare @DevPlateno_Pobar Numeric(18, 4)
  2043.     Declare @Kurs Numeric(18,6)
  2044.     Declare @Sifra_Dok Smallint
  2045.     Declare @Vl_Izl Char(1)
  2046.     Declare @Sifra_Za Char(1)
  2047.     Declare @TipDok Char(1)
  2048.     Declare @Plus_Minus Char(1)
  2049.     Declare @Dev Char(1)
  2050.     Declare @Kom_I_Prim char(1)
  2051.     Declare @Kto char(10)
  2052.     Declare @DevZatvDen char(1)
  2053.     OPEN SiteZatv
  2054.     FETCH NEXT FROM SiteZatv
  2055.         INTO @Anid1, @Anid2, @Iznos, @Iznos_Dev
  2056.     WHILE @@FETCH_STATUS = 0
  2057.     Begin
  2058.         --------------------------------------------------
  2059.         --Go zemame prviot dokument identifikuvan so Anid1
  2060.         -------------------------------------------------- 
  2061.         SELECT @Dolzi=Dolzi, @Pobaruva=Pobaruva, @Sifra_Za=Sifra_Za,
  2062.             @Plateno_Dolzi=Plateno_Dolzi, @Plateno_Pobar=Plateno_Pobar,
  2063.             @DevDolzi=Dev_Dolzi, @DevPobaruva=Dev_Pobaruva,
  2064.             @DevPlateno_Dolzi=Dev_Plat_Dolzi, @DevPlateno_Pobar=Dev_Plat_Pobar,
  2065.             @Sifra_Dok=Sifra_Dok, @Kto=Kto, @Kurs=Kurs
  2066.         FROM AnFinDok WHERE ANID=@Anid1
  2067.         SELECT @Sifra_Dok=Sifra_Dok, @Vl_Izl=Vl_Izl, @Kom_I_Prim=Kom_I_Prim, --@Sifra_Za=Sifra_Za,
  2068.                 @TipDok=TipDok, @Plus_Minus=Plus_Minus, @Dev = Dev
  2069.         FROM TipDok WHERE Sifra_Dok=@Sifra_Dok
  2070.         If @Kom_I_Prim='D' AND @TipDok='4' SET @TipDok='1'
  2071.         IF @Dev='D'
  2072.             SELECT @DevZatvDen=DevZatvDen FROM Anal WHERE Kto_Anal=@Kto
  2073.         IF @DevZatvDen IS NULL
  2074.             SET @DevZatvDen='N'
  2075.         IF (@Sifra_Za=1 AND @TipDok=1) OR (@Sifra_Za=2 AND @TipDok=2)
  2076.             Begin --Fra za Kupuvac ili Uplata na Dobavuvac
  2077.                 If (@Dolzi>0 and @Iznos<0) or (@Dolzi<0 and @Iznos>0)
  2078.                 Begin        --1
  2079.                     If @Dev = 'D'
  2080.                     Begin    --2
  2081.                         IF @DevZatvDen='D'
  2082.                         Begin
  2083.                             IF @Kurs=0
  2084.                             UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2085.                             ELSE    
  2086.                             UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi+round(@Iznos/@Kurs,2)  * -1,
  2087.                                     Plateno_Dolzi=@Plateno_Dolzi+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2088.                         End
  2089.                         ELSE
  2090.                             UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi+@Iznos_Dev * -1,
  2091.                                     Plateno_Dolzi=@Plateno_Dolzi+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2092.                     End    --2
  2093.                     Else
  2094.                         UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2095.                 End        --1
  2096.                 Else
  2097.                 Begin
  2098.                     If @Dev = 'D'
  2099.                     Begin
  2100.                         IF @DevZatvDen='D'
  2101.                         Begin
  2102.                             IF @Kurs=0
  2103.                             UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2104.                             ELSE
  2105.                             UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi+round(@Iznos/@Kurs,2),
  2106.                                 Plateno_Dolzi=@Plateno_Dolzi+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2107.                         End
  2108.                         ELSE
  2109.                             UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi+@Iznos_Dev,
  2110.                                 Plateno_Dolzi=@Plateno_Dolzi+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2111.                     End
  2112.                     Else
  2113.                         UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2114.                 End
  2115.             End
  2116.         ELSE IF (@Sifra_Za=1 AND @TipDok=2) OR (@Sifra_Za=2 AND @TipDok=1)
  2117.             Begin --Uplata od Kupuvac ili Fra od Dobavuvac
  2118.                 If (@Pobaruva>0 and @Iznos<0) or (@Pobaruva<0 and @Iznos>0)
  2119.                 Begin
  2120.                     If @Dev = 'D'
  2121.                     Begin
  2122.                         IF @DevZatvDen='D'
  2123.                         Begin
  2124.                             IF @Kurs=0
  2125.                                 UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2126.                             ELSE
  2127.                                 UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar+round(@Iznos/@Kurs,2) * -1,
  2128.                                 Plateno_Pobar=@Plateno_Pobar+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2129.                         End
  2130.                         Else
  2131.                         UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar+@Iznos_Dev * -1,
  2132.                                 Plateno_Pobar=@Plateno_Pobar+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2133.                     End
  2134.                     Else
  2135.                          UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar+@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2136.                 End
  2137.                 Else
  2138.                 Begin
  2139.                     If @Dev = 'D'
  2140.                     Begin
  2141.                         IF @DevZatvDen='D'
  2142.                         Begin
  2143.                             IF @Kurs=0
  2144.                                 UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2145.                             ELSE
  2146.                                 UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar+ROUND(@Iznos/@Kurs,2),
  2147.                                 Plateno_Pobar=@Plateno_Pobar+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2148.                         End
  2149.                         Else
  2150.                         UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar+@Iznos_Dev,
  2151.                             Plateno_Pobar=@Plateno_Pobar+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2152.                     End
  2153.                     Else                    
  2154.                            UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar+@Iznos, Prenesen='' WHERE ANID=@Anid1
  2155.                 End
  2156.             End
  2157.         ---------------------------------------------------
  2158.         --Go zemame vtoriot dokument identifikuvan so Anid2
  2159.         ---------------------------------------------------
  2160.         SELECT @Dolzi=Dolzi, @Pobaruva=Pobaruva,@Sifra_Za=Sifra_Za,
  2161.             @Plateno_Dolzi=Plateno_Dolzi, @Plateno_Pobar=Plateno_Pobar,
  2162.             @DevDolzi=Dev_Dolzi, @DevPobaruva=Dev_Pobaruva,
  2163.             @DevPlateno_Dolzi=Dev_Plat_Dolzi, @DevPlateno_Pobar=Dev_Plat_Pobar,
  2164.             @Sifra_Dok=Sifra_Dok
  2165.         FROM AnFinDok
  2166.         WHERE ANID=@Anid2
  2167.         SELECT @Sifra_Dok=Sifra_Dok, @Vl_Izl=Vl_Izl, @Kom_I_Prim=Kom_I_Prim, --@Sifra_Za=Sifra_Za,
  2168.                 @TipDok=TipDok, @Plus_Minus=Plus_Minus, @Dev = Dev
  2169.         FROM TipDok     WHERE Sifra_Dok=@Sifra_Dok
  2170.         If @Kom_I_Prim='D' AND @TipDok='4' SET @TipDok='1'
  2171.         IF (@Sifra_Za=1 AND @TipDok=1) OR (@Sifra_Za=2 AND @TipDok=2)
  2172.             Begin --Fra za Kupuvac ili Uplata na Dobavuvac
  2173.                 If (@Dolzi>0 and @Iznos<0) or (@Dolzi<0 and @Iznos>0)
  2174.                     Begin
  2175.                         If @Dev = 'D'
  2176.                             UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi+@Iznos_Dev * -1,
  2177.                                 Plateno_Dolzi=@Plateno_Dolzi+@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2178.                         Else                    
  2179.                             UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi+@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2180.                     End
  2181.                 Else
  2182.                     Begin
  2183.                         If @Dev = 'D'
  2184.                             UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi+@Iznos_Dev,
  2185.                                 Plateno_Dolzi=@Plateno_Dolzi+@Iznos, Prenesen='' WHERE ANID=@Anid2
  2186.                         Else                    
  2187.                             UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi+@Iznos, Prenesen='' WHERE ANID=@Anid2
  2188.                     End
  2189.             End
  2190.         ELSE IF (@Sifra_Za=1 AND @TipDok=2) OR (@Sifra_Za=2 AND @TipDok=1)
  2191.             Begin --Uplata od Kupuvac ili Fra od Dobavuvac
  2192.                 If (@Pobaruva>0 and @Iznos<0) or (@Pobaruva<0 and @Iznos>0)
  2193.                     Begin
  2194.                         If @Dev = 'D'
  2195.                             UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar+@Iznos_Dev * -1,
  2196.                                 Plateno_Pobar=@Plateno_Pobar+@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2197.                         Else                    
  2198.                              UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar+@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2199.                     End
  2200.                 Else
  2201.                     Begin
  2202.                         If @Dev = 'D'
  2203.                              UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar+@Iznos_Dev,
  2204.                                 Plateno_Pobar=@Plateno_Pobar+@Iznos, Prenesen='' WHERE ANID=@Anid2
  2205.                         Else                    
  2206.                              UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar+@Iznos, Prenesen='' WHERE ANID=@Anid2
  2207.                     End
  2208.             End
  2209.         FETCH NEXT FROM SiteZatv
  2210.             INTO @Anid1, @Anid2, @Iznos, @Iznos_Dev
  2211.     End --While
  2212.     CLOSE SiteZatv
  2213.     DEALLOCATE SiteZatv
  2214. END --Trigger
  2215.  
  2216. Go
  2217. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KDrugo4_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KDrugo4_Vnes_Izmena
  2218.  
  2219. Go
  2220. CREATE  TRIGGER tr_KDrugo4_Vnes_Izmena 
  2221. ON dbo.KDrugo4
  2222. FOR INSERT, UPDATE
  2223. AS
  2224. BEGIN
  2225. Declare 
  2226.     @Sifra_4k    smallint,
  2227.     @Propagiraj    char(1),
  2228.     @Redovi     smallint,
  2229.     @VtoraBaza    varchar(20),
  2230.     @DaliKup    char(1),
  2231.     @DaliPodelKup    char(1),
  2232.     @SSQL      varchar(8000)
  2233.     SELECT @Sifra_4k = Sifra_4k
  2234.     FROM INSERTED 
  2235. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  2236.     Set @Propagiraj = (Select Propagiraj From KDrugo4 Where Sifra_4k = @Sifra_4k)
  2237.     If @Propagiraj='D' 
  2238.     Begin
  2239.         Update KDrugo4 Set Propagiraj=Null  Where Sifra_4k = @Sifra_4k
  2240.         Select Rbr, ImeBaza
  2241.         From FirParal
  2242.         Set @Redovi = @@RowCount
  2243.         While @Redovi > 0  
  2244.         Begin
  2245.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  2246.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  2247.             Begin
  2248.                 Set @SSQL =  ' Select  Sifra_4k From ' + @VtoraBaza + '..KDrugo4
  2249.                         Where Sifra_4k = ' + cast(@Sifra_4k as varchar(5)) + ' '
  2250.                 Exec(@SSQL)
  2251.                 If @@RowCount <> 0
  2252.                       Begin
  2253.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KDrugo4
  2254.                     Set Ime_4k=D.Ime_4k, Denovi=D.Denovi, Uces=D.Uces
  2255.                     From KDrugo4 D
  2256.                     Where D.Sifra_4k = ' + cast(@Sifra_4k as varchar(5)) + ' 
  2257.                     and ' + @VtoraBaza + '..KDrugo4.Sifra_4k = ' + cast(@Sifra_4k as varchar(5)) + ' '
  2258.                     Exec(@SSQL)
  2259.                      End  -- If  @@RowCount <> 0
  2260.                 Else
  2261.                      Begin
  2262.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KDrugo4 Select * From KDrugo4 Where Sifra_4k= ' + cast(@Sifra_4k as varchar(5)) + ' '
  2263.                      Exec(@SSQL)        
  2264.                      End  -- Else
  2265.             End -- DaliArt
  2266.             Set @Redovi = @Redovi - 1
  2267.                        end -- While
  2268.     End -- Propagiraj
  2269. End --Triger
  2270. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  2271.  
  2272. Go
  2273. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AnZatv_Del' AND type = 'TR') DROP TRIGGER tr_AnZatv_Del
  2274.  
  2275. Go
  2276.  
  2277.  
  2278.  
  2279.  
  2280. CREATE         TRIGGER tr_AnZatv_Del
  2281. ON dbo.AnZatv
  2282. FOR DELETE
  2283. AS 
  2284. BEGIN
  2285.    Declare SiteZatv CURSOR FOR 
  2286.         SELECT Anid1, Anid2, Iznos, Iznos_Dev FROM DELETED
  2287.     Declare @Anid1 Int
  2288.     Declare @Anid2 Int
  2289.     Declare @Iznos Numeric(18, 4)
  2290.     Declare @Iznos_Dev Numeric(18, 4)
  2291.     Declare @Dolzi Numeric(18, 4)
  2292.     Declare @Pobaruva Numeric(18, 4)
  2293.     Declare @Plateno_Dolzi Numeric(18, 4)
  2294.     Declare @Plateno_Pobar Numeric(18, 4)
  2295.     Declare @DevDolzi Numeric(18, 4)
  2296.     Declare @DevPobaruva Numeric(18, 4)
  2297.     Declare @DevPlateno_Dolzi Numeric(18, 4)
  2298.     Declare @DevPlateno_Pobar Numeric(18, 4)
  2299.     Declare @Kurs Numeric(18,6)
  2300.     Declare @Sifra_Dok Smallint
  2301.     Declare @Vl_Izl Char(1)
  2302.     Declare @Sifra_Za Char(1)
  2303.     Declare @TipDok Char(1)
  2304.     Declare @Plus_Minus Char(1)
  2305.     Declare @Dev Char(1)
  2306.     Declare @Kom_I_Prim char(1)
  2307.     Declare @Kto char(10)
  2308.     Declare @DevZatvDen char(1)
  2309.     OPEN SiteZatv
  2310.     FETCH NEXT FROM SiteZatv
  2311.         INTO @Anid1, @Anid2, @Iznos, @Iznos_Dev
  2312.     WHILE @@FETCH_STATUS = 0
  2313.     Begin
  2314.     --    insert into tmptmp (anid1, anid2, iznos) values (@anid1, @anid2, @iznos)
  2315.         --------------------------------------------------
  2316.         --Go zemame prviot dokument identifikuvan so Anid1
  2317.         -------------------------------------------------- 
  2318.         SELECT @Dolzi=Dolzi, @Pobaruva=Pobaruva, @Sifra_Za=Sifra_Za,
  2319.             @Plateno_Dolzi=Plateno_Dolzi, @Plateno_Pobar=Plateno_Pobar,
  2320.             @DevDolzi=Dev_Dolzi, @DevPobaruva=Dev_Pobaruva,
  2321.             @DevPlateno_Dolzi=Dev_Plat_Dolzi, @DevPlateno_Pobar=Dev_Plat_Pobar,
  2322.             @Sifra_Dok=Sifra_Dok, @Kto=Kto, @Kurs=Kurs
  2323.         FROM AnFinDok
  2324.         WHERE ANID=@Anid1
  2325.         SELECT @Sifra_Dok=Sifra_Dok, @Vl_Izl=Vl_Izl, @Kom_I_Prim=Kom_I_Prim, --@Sifra_Za=Sifra_Za,
  2326.                 @TipDok=TipDok, @Plus_Minus=Plus_Minus, @Dev = Dev
  2327.         FROM TipDok WHERE Sifra_Dok=@Sifra_Dok
  2328.         If @Kom_I_Prim='D' AND @TipDok='4' SET @TipDok='1'
  2329.         IF @Dev='D'
  2330.             SELECT @DevZatvDen=DevZatvDen FROM Anal WHERE Kto_Anal=@Kto
  2331.         IF @DevZatvDen IS NULL
  2332.             SET @DevZatvDen='N'
  2333.         IF (@Sifra_Za=1 AND @TipDok=1) OR (@Sifra_Za=2 AND @TipDok=2)
  2334.             Begin --Fra za Kupuvac ili Uplata na Dobavuvac
  2335.                 If (@Dolzi>0 and @Iznos<0) or (@Dolzi<0 and @Iznos>0)
  2336.                     Begin
  2337.                         If @Dev = 'D'                   
  2338.                         Begin    --2
  2339.                             IF @DevZatvDen='D'
  2340.                             Begin
  2341.                             IF @Kurs=0
  2342.                                 UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2343.                             ELSE
  2344.                                 UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi-round(@Iznos/@Kurs,2) * -1,
  2345.                                 Plateno_Dolzi=@Plateno_Dolzi-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2346.                             End
  2347.                             ELSE    --ne zatvden
  2348.                            UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi-@Iznos_Dev * -1,
  2349.                             Plateno_Dolzi=@Plateno_Dolzi-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2350.                         End        --2
  2351.                         Else    --ne e dev
  2352.                            UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2353.                     End
  2354.                 Else
  2355.                     Begin
  2356.                         If @Dev = 'D'
  2357.                         Begin    --2
  2358.                             IF @DevZatvDen='D'
  2359.                             Begin
  2360.                             IF @Kurs=0
  2361.                               UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi-@Iznos, Prenesen='' WHERE ANID=@Anid1    
  2362.                             ELSE
  2363.                               UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi-round(@Iznos/@Kurs,2),
  2364.                                 Plateno_Dolzi=@Plateno_Dolzi-@Iznos, Prenesen='' WHERE ANID=@Anid1    
  2365.                             End
  2366.                             ELSE     --ne zatvden
  2367.                           UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi-@Iznos_Dev,
  2368.                             Plateno_Dolzi=@Plateno_Dolzi-@Iznos, Prenesen='' WHERE ANID=@Anid1    
  2369.                         End        --2
  2370.                         Else    --ne e dev
  2371.                            UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi-@Iznos, Prenesen='' WHERE ANID=@Anid1
  2372.                     End
  2373.             End
  2374.         ELSE IF (@Sifra_Za=1 AND @TipDok=2) OR (@Sifra_Za=2 AND @TipDok=1)
  2375.             Begin --Uplata od Kupuvac ili Fra od Dobavuvac
  2376.                 If (@Pobaruva>0 and @Iznos<0) or (@Pobaruva<0 and @Iznos>0)
  2377.                     Begin
  2378.                         If @Dev = 'D'                   
  2379.                         Begin    --2
  2380.                             IF @DevZatvDen='D'
  2381.                             Begin
  2382.                             IF @Kurs=0
  2383.                                 UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2384.                             ELSE
  2385.                                 UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar-round(@Iznos/@Kurs,2) * -1,
  2386.                                 Plateno_Pobar=@Plateno_Pobar-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2387.                             End
  2388.                             ELSE     --ne zatvden
  2389.                             UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar-@Iznos_Dev * -1,
  2390.                             Plateno_Pobar=@Plateno_Pobar-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2391.                         End        --2
  2392.                          Else     --ne e dev
  2393.                            UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar-@Iznos * -1, Prenesen='' WHERE ANID=@Anid1
  2394.                     End    
  2395.                 Else
  2396.                     Begin
  2397.                         If @Dev = 'D'                   
  2398.                         Begin    --2
  2399.                             IF @DevZatvDen='D'
  2400.                             Begin
  2401.                             IF @Kurs=0
  2402.                                UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar-@Iznos, Prenesen='' WHERE ANID=@Anid1
  2403.                             ELSE
  2404.                                UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar-round(@Iznos/@Kurs,2),
  2405.                                 Plateno_Pobar=@Plateno_Pobar-@Iznos, Prenesen='' WHERE ANID=@Anid1
  2406.                             End
  2407.                             ELSE     --ne zatvden
  2408.                                UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar-@Iznos_Dev,
  2409.                                 Plateno_Pobar=@Plateno_Pobar-@Iznos, Prenesen='' WHERE ANID=@Anid1
  2410.                         End        --2
  2411.                         Else
  2412.                            UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar-@Iznos, Prenesen='' WHERE ANID=@Anid1
  2413.                     End
  2414.             End
  2415.         ---------------------------------------------------
  2416.         --Go zemame vtoriot dokument identifikuvan so Anid2
  2417.         ---------------------------------------------------
  2418.         SELECT @Dolzi=Dolzi, @Pobaruva=Pobaruva, @Sifra_Za=Sifra_Za,
  2419.             @Plateno_Dolzi=Plateno_Dolzi, @Plateno_Pobar=Plateno_Pobar,
  2420.             @DevDolzi=Dev_Dolzi, @DevPobaruva=Dev_Pobaruva,
  2421.             @DevPlateno_Dolzi=Dev_Plat_Dolzi, @DevPlateno_Pobar=Dev_Plat_Pobar,
  2422.             @Sifra_Dok=Sifra_Dok
  2423.         FROM AnFinDok
  2424.         WHERE ANID=@Anid2
  2425.         SELECT @Sifra_Dok=Sifra_Dok, @Vl_Izl=Vl_Izl, @Kom_I_Prim=Kom_I_Prim, --@Sifra_Za=Sifra_Za,
  2426.                 @TipDok=TipDok, @Plus_Minus=Plus_Minus, @Dev=Dev
  2427.         FROM TipDok WHERE Sifra_Dok=@Sifra_Dok
  2428.         If @Kom_I_Prim='D' AND @TipDok='4' SET @TipDok='1'
  2429.         IF (@Sifra_Za=1 AND @TipDok=1) OR (@Sifra_Za=2 AND @TipDok=2)
  2430.             Begin --Fra za Kupuvac ili Uplata na Dobavuvac
  2431.                 If (@Dolzi>0 and @Iznos<0) or (@Dolzi<0 and @Iznos>0)
  2432.                     Begin
  2433.                         If @Dev = 'D'                   
  2434.                            UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi-@Iznos_Dev * -1,
  2435.                             Plateno_Dolzi=@Plateno_Dolzi-@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2436.                         Else
  2437.                            UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi-@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2438.                     End
  2439.                 Else
  2440.                     Begin
  2441.                         If @Dev = 'D'
  2442.                           UPDATE AnFinDok SET Dev_Plat_Dolzi=@DevPlateno_Dolzi-@Iznos_Dev,
  2443.                             Plateno_Dolzi=@Plateno_Dolzi-@Iznos, Prenesen='' WHERE ANID=@Anid2
  2444.                         Else
  2445.                            UPDATE AnFinDok SET Plateno_Dolzi=@Plateno_Dolzi-@Iznos, Prenesen='' WHERE ANID=@Anid2
  2446.                     End
  2447.             End
  2448.         ELSE IF (@Sifra_Za=1 AND @TipDok=2) OR (@Sifra_Za=2 AND @TipDok=1)
  2449.             Begin --Uplata od Kupuvac ili Fra od Dobavuvac
  2450.                 If (@Pobaruva>0 and @Iznos<0) or (@Pobaruva<0 and @Iznos>0)
  2451.                     Begin
  2452.                         If @Dev = 'D'                   
  2453.                             UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar-@Iznos_Dev * -1,
  2454.                             Plateno_Pobar=@Plateno_Pobar-@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2455.                          Else 
  2456.                            UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar-@Iznos * -1, Prenesen='' WHERE ANID=@Anid2
  2457.                     End    
  2458.                 Else
  2459.                     Begin
  2460.                         If @Dev = 'D'                   
  2461.                            UPDATE AnFinDok SET Dev_Plat_Pobar=@DevPlateno_Pobar-@Iznos_Dev,
  2462.                             Plateno_Pobar=@Plateno_Pobar-@Iznos, Prenesen='' WHERE ANID=@Anid2
  2463.                         Else
  2464.                            UPDATE AnFinDok SET Plateno_Pobar=@Plateno_Pobar-@Iznos, Prenesen='' WHERE ANID=@Anid2
  2465.                     End
  2466.             End
  2467.         FETCH NEXT FROM SiteZatv
  2468.             INTO @Anid1, @Anid2, @Iznos, @Iznos_Dev
  2469.     End --While
  2470.     CLOSE SiteZatv
  2471.     DEALLOCATE SiteZatv
  2472. END --Trigger
  2473.  
  2474. Go
  2475. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KDrugo5_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KDrugo5_Vnes_Izmena
  2476.  
  2477. Go
  2478. CREATE  TRIGGER tr_KDrugo5_Vnes_Izmena 
  2479. ON dbo.KDrugo5
  2480. FOR INSERT, UPDATE
  2481. AS
  2482. BEGIN
  2483. Declare 
  2484.     @Sifra_5k    smallint,
  2485.     @Propagiraj    char(1),
  2486.     @Redovi     smallint,
  2487.     @VtoraBaza    varchar(20),
  2488.     @DaliKup    char(1),
  2489.     @DaliPodelKup    char(1),
  2490.     @SSQL      varchar(8000)
  2491.     SELECT @Sifra_5k = Sifra_5k
  2492.     FROM INSERTED 
  2493. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  2494.     Set @Propagiraj = (Select Propagiraj From KDrugo5 Where Sifra_5k = @Sifra_5k)
  2495.     If @Propagiraj='D' 
  2496.     Begin
  2497.         Update KDrugo5 Set Propagiraj=Null  Where Sifra_5k = @Sifra_5k
  2498.         Select Rbr, ImeBaza
  2499.         From FirParal
  2500.         Set @Redovi = @@RowCount
  2501.         While @Redovi > 0  
  2502.         Begin
  2503.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  2504.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  2505.             Begin
  2506.                 Set @SSQL =  ' Select  Sifra_5k From ' + @VtoraBaza + '..KDrugo5
  2507.                         Where Sifra_5k = ' + cast(@Sifra_5k as varchar(5)) + ' '
  2508.                 Exec(@SSQL)
  2509.                 If @@RowCount <> 0
  2510.                       Begin
  2511.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KDrugo5
  2512.                     Set Ime_5k=D.Ime_5k
  2513.                     From KDrugo5 D
  2514.                     Where D.Sifra_5k = ' + cast(@Sifra_5k as varchar(5)) + ' 
  2515.                     and ' + @VtoraBaza + '..KDrugo5.Sifra_5k = ' + cast(@Sifra_5k as varchar(5)) + ' '
  2516.                     Exec(@SSQL)
  2517.                      End  -- If  @@RowCount <> 0
  2518.                 Else
  2519.                      Begin
  2520.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KDrugo5 Select * From KDrugo5 Where Sifra_5k= ' + cast(@Sifra_5k as varchar(5)) + ' '
  2521.                      Exec(@SSQL)        
  2522.                      End  -- Else
  2523.             End -- DaliArt
  2524.             Set @Redovi = @Redovi - 1
  2525.                        end -- While
  2526.     End -- Propagiraj
  2527. End --Triger
  2528. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  2529.  
  2530. Go
  2531. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_ZacuvajKartProm_Klub_KumulC' AND type = 'TR') DROP TRIGGER tr_ZacuvajKartProm_Klub_KumulC
  2532.  
  2533. Go
  2534.  
  2535. CREATE   TRIGGER [dbo].[tr_ZacuvajKartProm_Klub_KumulC] ON [dbo].[KartProm_Klub_KumulC]
  2536. FOR INSERT
  2537. AS
  2538.     Declare @OsnovKumul int
  2539.     Declare @TokenStamp bigint
  2540.     Declare @Sifra_Kor varchar(20)
  2541.     Declare @TipTransVouch char(1)
  2542.     Declare @PoeniOdSmetka decimal(18, 2)
  2543.     Declare @PoeniDobieni decimal(18, 2)
  2544.     Declare @PoeniIskoristeni decimal(18, 2)
  2545.     Declare @Datum_Ska smalldatetime
  2546.     Select @Sifra_Kor=Sifra_Kor, @OsnovKumul=OsnovKumul, @TipTransVouch=TipTransVouch, 
  2547.         @PoeniOdSmetka=PoeniOdSmetka, @PoeniIskoristeni=PoeniIskoristeni,
  2548.         @PoeniDobieni = PoeniDobieni, @Datum_Ska = Datum_Ska
  2549.     From Inserted
  2550.     --Set @VoCentralaSum = dbo.fix_VoCentralaSum()
  2551.     If dbo.fix_VoCentralaSum() = 'D'
  2552.     Begin
  2553.         If @TipTransVouch = 'V' And @PoeniOdSmetka <> 0
  2554.         Begin
  2555.             If Not Exists (Select Sifra_Kor From KartKor_Klub_KumulC Where Sifra_Kor=@Sifra_Kor And OsnovKumul=@OsnovKumul)
  2556.                 Insert Into KartKor_Klub_KumulC (Sifra_Kor, OsnovKumul, Poeni_Prethodni_Meseci, Poeni_Tekoven_Mesec, 
  2557.                     Datum_Posl_Izdavanje_Voucher, Dobiena_Vredn_Posl_Voucher, Dobieni_Voucheri_Vredn, Potroseni_Voucheri_Vredn)
  2558.                 Values (@Sifra_Kor, @OsnovKumul, 0, @PoeniOdSmetka, Null, 0, 0, 0)
  2559.             Else
  2560.                 Update KartKor_Klub_KumulC 
  2561.                 Set Poeni_Tekoven_Mesec = Poeni_Tekoven_Mesec + @PoeniOdSmetka
  2562.                 Where Sifra_Kor=@Sifra_Kor And OsnovKumul=@OsnovKumul
  2563.         End
  2564.         Else If @TipTransVouch = 'T'    -- Trosenje na voucher
  2565.         Begin    
  2566.             Update KartKor_Klub_KumulC 
  2567.             Set Potroseni_Voucheri_Vredn = Potroseni_Voucheri_Vredn + @PoeniIskoristeni
  2568.             Where Sifra_Kor=@Sifra_Kor And OsnovKumul=@OsnovKumul
  2569.         End 
  2570.         Else If @TipTransVouch = 'I' and @PoeniDobieni > 0    -- Izdavanje na voucher
  2571.         Begin
  2572.             Update KartKor_Klub_KumulC 
  2573.             Set Dobieni_Voucheri_Vredn = Dobieni_Voucheri_Vredn + @PoeniDobieni,
  2574.                 Datum_Posl_Izdavanje_Voucher = @Datum_Ska,
  2575.                 Dobiena_Vredn_Posl_Voucher = @PoeniDobieni,
  2576.                 Poeni_Tekoven_Mesec = case when Poeni_Tekoven_Mesec >= 1500 then 0 else Poeni_Tekoven_Mesec end,
  2577.                 Poeni_Prethodni_Meseci = 0
  2578.             Where Sifra_Kor=@Sifra_Kor And OsnovKumul=@OsnovKumul
  2579.         End 
  2580.     End
  2581.  
  2582. Go
  2583. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Grupi_Vnes' AND type = 'TR') DROP TRIGGER tr_Grupi_Vnes
  2584.  
  2585. Go
  2586. CREATE  TRIGGER tr_Grupi_Vnes 
  2587. ON dbo.Grupi
  2588. FOR INSERT, UPDATE
  2589. AS
  2590. BEGIN
  2591. Declare 
  2592.     @Sifra_Gr    char(3),
  2593.     @Propagiraj    char(1),
  2594.     @Redovi     smallint,
  2595.     @VtoraBaza    varchar(20),
  2596.     @DaliArt    char(1),
  2597.     @SSQL      varchar(8000)
  2598.     SELECT @Sifra_Gr = Sifra_Gr
  2599.     FROM INSERTED 
  2600. -------------------------------------  Dodadeno 20.09.2004  za Azuriranje na Paralelni Bazi --------------------------
  2601.     Set @Propagiraj = (Select Propagiraj From Grupi Where Sifra_Gr = @Sifra_Gr)
  2602.     If @Propagiraj='D' 
  2603.     Begin
  2604.         Update Grupi Set Propagiraj=Null  Where Sifra_Gr = @Sifra_Gr
  2605.         Select Rbr, ImeBaza
  2606.         From FirParal
  2607.         Set @Redovi = @@RowCount
  2608.         While @Redovi > 0  
  2609.         Begin
  2610.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  2611.             If @DaliArt = 'D'
  2612.             Begin
  2613.                 Set @SSQL =  ' Select  Sifra_Gr From ' + @VtoraBaza + '..Grupi
  2614.                         Where Sifra_Gr = ' + @Sifra_Gr + ' '
  2615.                 Exec(@SSQL)
  2616.                 If @@RowCount <> 0
  2617.                       Begin
  2618.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Grupi
  2619.                     Set Ime_Gr=G.Ime_Gr 
  2620.                     From Grupi G
  2621.                     Where G.Sifra_Gr = ''' + @Sifra_Gr + ''' 
  2622.                     and ' + @VtoraBaza + '..Grupi.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  2623.                     Exec(@SSQL)
  2624.                      End  -- If  @@RowCount <> 0
  2625.                 Else
  2626.                      Begin
  2627.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Grupi Select * From Grupi Where Sifra_Gr= ''' + @Sifra_Gr + ''' '
  2628.                      Exec(@SSQL)        
  2629.                      End  -- Else
  2630.             End -- DaliArt
  2631.             Set @Redovi = @Redovi - 1
  2632.                        end -- While
  2633.     End -- Propagiraj
  2634. End --Triger
  2635. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  2636.  
  2637. Go
  2638. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tg_KObjekti_Delete' AND type = 'TR') DROP TRIGGER tg_KObjekti_Delete
  2639.  
  2640. Go
  2641.  
  2642. CREATE TRIGGER tg_KObjekti_Delete
  2643. ON dbo.KObjekti
  2644. FOR Delete
  2645. AS 
  2646. BEGIN
  2647.     Declare @Sifra_Kup Char(6)
  2648.     Declare @Sifra_Obj Smallint
  2649.     Select @Sifra_Kup=Sifra_Kup, @Sifra_Obj=Sifra_Obj From Deleted
  2650.     Select Sifra_Obj From KObjekti Where Sifra_Kup=@Sifra_Kup And Sifra_Obj>0
  2651.     If @Sifra_Obj=0 And @@ROWCOUNT>0
  2652.         Begin
  2653.         RaisError (50005,16,1) With Nowait
  2654.         Rollback Transaction
  2655.         End
  2656.     Else If @Sifra_Obj<>0 And @@ROWCOUNT=0
  2657.         Update Komint Set ImaObj=Null Where Sifra_Kup=@Sifra_Kup
  2658. END
  2659.  
  2660. Go
  2661. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_DevStavKons_Insert' AND type = 'TR') DROP TRIGGER tr_DevStavKons_Insert
  2662.  
  2663. Go
  2664.  
  2665. CREATE  TRIGGER tr_DevStavKons_Insert
  2666. ON dbo.DevStavKons
  2667. FOR INSERT
  2668. AS
  2669. BEGIN
  2670. DECLARE
  2671.     @DevKonsID    Integer,
  2672.     @Sifra_OE    smallint,
  2673.     @Sifra_Dok    smallint,
  2674.     @Broj_Kons    int,
  2675.     @Sifra_Art    varchar(20),
  2676.     @Kolic        decimal(18,6),
  2677.     @DevCena    decimal(18,6),
  2678.     @Uces        decimal(6,2),
  2679.     @CenaIznos    char(1),
  2680.     @Koleti        decimal(18,6),
  2681.     @Bruto        decimal(18,6),
  2682.     @Neto        decimal(18,6),
  2683.     @VlIzl        char(1),
  2684.     @KojaVal    char(3),
  2685.     @Sifra_Dok_Vlez    smallint,
  2686.     @Broj_Kons_Vlez    smallint,
  2687.     @Cena_Pak    decimal(18,6),
  2688.     @Vlez        Decimal(18,6),
  2689.     @Izlez        Decimal(18,6),
  2690.     @soaVlez    Decimal(18,6),
  2691.     @soaIzlez    Decimal(18,6),
  2692.     @soaCena    Decimal(18,6),
  2693.     @soaBruto_Vl    decimal(18, 6) ,
  2694.     @soaNeto_Vl    decimal(18, 6) ,
  2695.     @soaKoleti_Vl    decimal(18, 6),
  2696.     @soaBruto_Izl    decimal(18, 6),
  2697.     @soaNeto_Izl    decimal(18, 6) ,
  2698.     @soaKoleti_Izl    decimal(18, 6),
  2699.     @soaCena_Pak decimal(18, 6),
  2700.     @soaVr_Vlez    decimal(18, 6),
  2701.     @soaVr_Izlez    decimal(18, 6) 
  2702.     Declare InsStavki Cursor Fast_Forward For
  2703.     Select I.Sifra_OE, I.Sifra_Dok, I.Broj_Kons, I.Sifra_Art, I.Kolic, I.DevCena,I.VlIzl, I.Koleti, I.Bruto, I.Neto,
  2704.         I.Sifra_Dok_Vlez, I.Broj_Kons_Vlez, I.Cena_Pak, D.KojaVal
  2705.     From Inserted  I INNER JOIN DevKons D  ON I.DevKonsID = D.DevKonsID
  2706.     Open InsStavki
  2707.     Fetch Next From InsStavki 
  2708.     Into @Sifra_OE, @Sifra_Dok, @Broj_Kons, @Sifra_Art, @Kolic, @DevCena,@VlIzl, @Koleti, @Bruto, @Neto, @Sifra_Dok_Vlez, 
  2709.         @Broj_Kons_Vlez, @Cena_Pak, @KojaVal
  2710.     While @@Fetch_Status = 0
  2711.     Begin
  2712.         If @VlIzl='V'
  2713.         Begin
  2714.             SET @Broj_Kons_Vlez = @Broj_Kons
  2715.             SET @Sifra_Dok_Vlez = @Sifra_Dok
  2716.         End
  2717.         IF @Kolic IS NULL SET @Kolic = 0    
  2718.         IF @Bruto IS NULL SET @Bruto = 0
  2719.         IF @Neto IS NULL SET @Neto = 0
  2720.         IF @Koleti IS NULL SET @Koleti = 0
  2721.         -- Barame zapis vo soart
  2722.         Select @soaVlez=Vlez, @soaIzlez=Izlez, @soaCena=DevCena,
  2723.         @soaBruto_Vl=Bruto_Vl, @soaNeto_Vl=Neto_Vl, @soaKoleti_Vl=Koleti_Vl, @soaBruto_Izl=Bruto_Izl,
  2724.         @soaNeto_Izl=Neto_Izl, @soaKoleti_Izl=Koleti_Izl, @soaVr_Vlez=Vr_Vlez, @soaVr_Izlez=Vr_Izlez, @soaCena_Pak=Cena_Pak
  2725.         From SoartKons 
  2726.         Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_Dok = @Sifra_Dok_Vlez AND Broj_Kons = @Broj_Kons_Vlez
  2727.         -- Ako ne postoi dodavame nov, i zaradi performansi
  2728.         -- vednas gi popolnuvame potrebnite polinja
  2729.         IF @@ROWCOUNT = 0            -- Ne postoi zapis vo soart
  2730.             Begin                        -- pa vednas dodavame soodveten
  2731.                 If @VlIzl = 'V'
  2732.                     Begin
  2733.                         Set @soaVlez =@Kolic
  2734.                         Set @soaIzlez=0
  2735.                         Set @soaBruto_Vl=@Bruto
  2736.                         Set @soaNeto_Vl=@Neto
  2737.                         Set @soaKoleti_Vl=@Koleti
  2738.                         Set @soaBruto_Izl=0
  2739.                         Set @soaNeto_Izl=0
  2740.                         Set @soaKoleti_Izl=0
  2741.                         Set @soaVr_Vlez=@Kolic * @DevCena
  2742.                         Set @soaVr_Izlez=0
  2743.                     End
  2744.                 Else
  2745.                     Begin
  2746.                         Set @soaVlez =0
  2747.                         Set @soaIzlez=@Kolic
  2748.                         Set @soaBruto_Vl=0
  2749.                         Set @soaNeto_Vl=0
  2750.                         Set @soaKoleti_Vl=0
  2751.                         Set @soaBruto_Izl=@Bruto
  2752.                         Set @soaNeto_Izl=@Neto
  2753.                         Set @soaKoleti_Izl=@Koleti
  2754.                         Set @soaVr_Vlez=0
  2755.                         Set @soaVr_Izlez=@Kolic * @DevCena
  2756.                     End
  2757.                 Insert SoartKons (Sifra_OE,  Sifra_Dok, Broj_Kons, Sifra_Art, Vlez, Izlez, DevCena, KojaVal,
  2758.                 Bruto_Vl, Neto_Vl, Koleti_Vl, Bruto_Izl, Neto_Izl, Koleti_Izl, Vr_Vlez, Vr_Izlez, Cena_Pak)
  2759.                 Values(@Sifra_OE, @Sifra_Dok_Vlez, @Broj_Kons_Vlez,@Sifra_Art, @soaVlez, @soaIzlez, @DevCena, @KojaVal,
  2760.                 @soaBruto_Vl, @soaNeto_Vl, @soaKoleti_Vl, @soaBruto_Izl, @soaNeto_Izl, @soaKoleti_Izl, @soaVr_Vlez, 
  2761.                 @soaVr_Izlez, @Cena_Pak    )
  2762.             End
  2763.         ELSE    -- Postoi zapis vo Soart, @@ROWCOUNT <> 0
  2764.             Begin
  2765.                 If @VlIzl = 'V'
  2766.                     Begin
  2767.                         Set @Vlez =@soaVlez+@Kolic
  2768.                         Set @soaBruto_Vl=@soaBruto_Vl + @Bruto
  2769.                         Set @soaNeto_Vl=@soaNeto_Vl + @Neto
  2770.                         Set @soaKoleti_Vl=@soaKoleti_Vl + @Koleti
  2771.                         Set @soaVr_Vlez= @soaVr_Vlez + @Kolic * @DevCena
  2772.                         Update SoartKons
  2773.                         Set Vlez=@Vlez, DevCena=@DevCena, KojaVal = @KojaVal, Cena_Pak=@Cena_Pak,
  2774.                         Bruto_Vl = @soaBruto_Vl, Neto_Vl = @soaNeto_Vl, Koleti_Vl = @soaKoleti_Vl, Vr_Vlez=@soaVr_Vlez
  2775.                         Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND 
  2776.                         Sifra_Dok = @Sifra_Dok_Vlez AND Broj_Kons = @Broj_Kons_Vlez
  2777.                     End
  2778.                 Else    --@VlIzl='I'
  2779.                     Begin
  2780.                         Set @Izlez=@soaIzlez+@Kolic
  2781.                         Set @soaBruto_Izl=@soaBruto_Izl + @Bruto
  2782.                         Set @soaNeto_Izl=@soaNeto_Izl + @Neto
  2783.                         Set @soaKoleti_Izl=@soaKoleti_Izl + @Koleti
  2784.                         Set @soaVr_Izlez= @soaVr_Izlez + @Kolic * @DevCena
  2785.                         If @SoaCena = 0 
  2786.                             Set @soaCena = @DevCena
  2787.                         If @SoaCena_Pak = 0 
  2788.                             Set @soaCena_Pak = @Cena_Pak
  2789.                         Update SoartKons
  2790.                         Set Izlez=@Izlez, DevCena=@soaCena, Cena_Pak=@soaCena_Pak,
  2791.                         Bruto_Izl = @soaBruto_Izl, Neto_Izl = @soaNeto_Izl, Koleti_Izl = @soaKoleti_Izl, Vr_Izlez=@soaVr_Izlez
  2792.                         Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND 
  2793.                         Sifra_Dok = @Sifra_Dok_Vlez AND Broj_Kons = @Broj_Kons_Vlez
  2794.                     End
  2795.             END        -- IF @@ROWCOUNT = 0 ...
  2796.         Fetch Next From InsStavki Into @Sifra_OE, @Sifra_Dok, @Broj_Kons, @Sifra_Art, @Kolic, @DevCena,@VlIzl, @Koleti, @Bruto, @Neto, @Sifra_Dok_Vlez, 
  2797.         @Broj_Kons_Vlez, @Cena_Pak, @KojaVal
  2798.     End --While
  2799.     Close InsStavki
  2800.     Deallocate InsStavki
  2801. END
  2802.  
  2803. Go
  2804. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Stavr_Delete' AND type = 'TR') DROP TRIGGER tr_Stavr_Delete
  2805.  
  2806. Go
  2807.  
  2808.  
  2809. CREATE                    TRIGGER tr_Stavr_Delete
  2810. ON dbo.Stavr
  2811. FOR DELETE
  2812. AS
  2813. BEGIN
  2814. DECLARE
  2815.     @Sifra_OE        Smallint,
  2816.     @Sifra_Dok        Smallint,
  2817.     @Broj_Dok        Int,
  2818.     @Sifra_Prim        Smallint,
  2819.     @ImaDodatna        Char(1),
  2820.     @VlIzl            Char(1),
  2821.     @Sifra_Art        varchar(20),
  2822.     @Kolic            Decimal(18,6),
  2823.     @DokCena        Decimal(18,6),
  2824.     @MagCena        Decimal(18,6),
  2825.     @NabCena        Decimal(18,6),
  2826.     @POsn            Decimal(6,2),
  2827.     @PTar            Char(3),    
  2828.     @Uces            Decimal(6,2),
  2829.     @DanDokCena        Char(1),
  2830.     @DanMagCena        Char(1),
  2831.     @CenaIznos        Char(1),
  2832.     @Kod_Danok        Char(1),
  2833.     @Datum_Dok        Smalldatetime,
  2834.     @soaVlez        Decimal(18,6),
  2835.     @soaIzlez        Decimal(18,6),
  2836.     @soaCena        Decimal(18,6),
  2837.     @soaDanCena        Char(1),
  2838.     @soaPOsn        Decimal(6,2),
  2839.     @soaNabCena        Decimal(18,6),
  2840.     @soaDokCena        Decimal(18,6),
  2841.     @soaUces        Decimal(6,2),
  2842.     @Sifra_Razl        Char(3),
  2843.     @Kolicina        Decimal(18,6),
  2844.     @PocCena        Decimal(18,6),
  2845.     @KrCena        Decimal(18,6),
  2846.     @DanPocCena        Char(1),
  2847.     @DanKrCena        Char(1),
  2848.     @Vlez            Decimal(18,6),
  2849.     @Izlez            Decimal(18,6),
  2850.     @ZacuvajRazliki    Tinyint,
  2851.     @soaNNabCena    decimal(18,6),        -- Dodadeno 11/12/2003
  2852.     @NovaNabCena    decimal(18,6),        
  2853.     @wKolic        Decimal(18,6),
  2854.     @Vr_Stara        Decimal(18,6),
  2855.     @Vr_Nova        Decimal(18,6),
  2856.     @Stara_kolic        decimal(18,6),
  2857.     @Nova_Kolic        decimal(18,6),
  2858.     @Nova_NNabCena    decimal(18,6),
  2859.     @Ima_Nova        char(1),
  2860.     @NMaxCena        decimal(18,6),
  2861.     @NMinCena        decimal(18,6),
  2862.     @KontrSer        varchar(40),
  2863.     @SoKontrVlez        decimal(18,6),
  2864.     @SoKontrIzlez        decimal(18,6), 
  2865.     @Redosled        varchar(25)
  2866.     --@Nova_MaxCena    decimal(18,6),
  2867.     --@Nova_MinCena    decimal(18,6)
  2868.     Declare DelStavki Cursor Fast_Forward For
  2869.        Select Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna, VlIzl, Sifra_Art,
  2870.                  Kolic,DokCena, MagCena, NabCena, POsn, PTar, Uces, 
  2871.                  DanDokCena, DanMagCena, Kod_Danok, Datum_Dok, KontrSer
  2872.        From Deleted
  2873.     Open DelStavki
  2874.     Fetch Next From DelStavki 
  2875.         Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna, @VlIzl, @Sifra_Art, 
  2876.               @Kolic, @DokCena, @MagCena, @NabCena, @POsn, @PTar, @Uces,
  2877.               @DanDokCena, @DanMagCena, @Kod_Danok, @Datum_Dok, @KontrSer
  2878.     While @@Fetch_Status = 0
  2879.     Begin
  2880.         -- Barame zapis vo soaart
  2881.         Select @soaVlez=Vlez, @soaIzlez=Izlez, @soaCena=Cena, @soaDanCena=DanCena, 
  2882.             @soaPOsn=POsn, @soaNabCena=NabCena, @soaDokCena=DokCena, @soaUces=Uces, 
  2883.             @soaNNabCena = NNabCena, @NMaxCena = NMaxCena, @NMinCena = NMinCena
  2884.         From Soart 
  2885.         Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  2886.         -- Ako ne postoi dodavame nov, i zaradi performansi
  2887.         -- vednas gi popolnuvame potrebnite polinja
  2888.         IF @@ROWCOUNT = 0
  2889.             Begin                        -- pa vednas dodavame soodveten
  2890.                 If @soaNNabCena IS NULL
  2891.                     SET @soaNNabCena = 0
  2892.                 If @NMaxCena IS NULL
  2893.                     SET @NMaxCena = 0
  2894.                 If @NMinCena IS NULL
  2895.                     SET @NMinCena = 0
  2896.                                     Set @ZacuvajRazliki=0
  2897.                  If @VlIzl = 'V'
  2898.                     Begin
  2899.                         Set @soaVlez = (-1) * @Kolic
  2900.                         Set @soaIzlez=0
  2901.                         Set @soaCena =@MagCena
  2902.                         Set @soaDanCena=@DanMagCena
  2903.                         Set @Nova_NNabCena = @NabCena
  2904.                     End
  2905.                 Else
  2906.                     Begin
  2907.                         Set @soaVlez =0
  2908.                         Set @soaIzlez= (-1) * @Kolic
  2909.                         Set @soaCena =@DokCena * (1 - @Uces / 100)
  2910.                         Set @soaDanCena=@DanDokCena
  2911.                         Set @Nova_NNabCena = 0
  2912.                     End
  2913.                 Set @soaPOsn   =@POsn
  2914.                 Set @soaNabCena=@NabCena
  2915.                 Set @soaDokCena=@DokCena
  2916.                 Set @soaUces   =@Uces
  2917.                 Insert Soart (Sifra_OE,  Sifra_Art,  Vlez,     Izlez,     Cena,     DanCena,     POsn,     NabCena,     DokCena,     Uces, NNabCena)
  2918.                 Values(@Sifra_OE, @Sifra_Art, @soaVlez, @soaIzlez, @soaCena, @soaDanCena, @soaPosn, @soaNabCena, @soaDokCena, @soaUces, @Nova_NNabCena)
  2919.                 -- Ako zapisuvame nesto vo RazlCeni, da se napravi ovde
  2920.                                                      -- Treba samo ako sakame da ima evidencija na promenata na cena, iako vrednosta na razlikata ke e 0 i ne vlijae na slaganjeto
  2921.             End
  2922.         ELSE    -- Postoi zapis vo Soart, @@ROWCOUNT <> 0
  2923.             Begin
  2924.                 If @soaNNabCena IS NULL
  2925.                     SET @soaNNabCena = 0
  2926.                 If @NMaxCena IS NULL
  2927.                     SET @NMaxCena = 0
  2928.                 If @NMinCena IS NULL
  2929.                     SET @NMinCena = 0
  2930.                 Set @Stara_Kolic = @soaVlez - @soaIzlez                --dod. 11.12.03
  2931.                 If @soaNNabCena <> 0 
  2932.                     SET @Vr_Stara = @soaNNabCena * @Stara_Kolic
  2933.                 Else
  2934.                     SET @Vr_Stara = @NabCena * @Stara_Kolic            --dod. 11.12.03
  2935.                 If @VlIzl = 'V'
  2936.                     Begin
  2937.                         Set @Vlez =@soaVlez-@Kolic
  2938.                         Set @Izlez=@soaIzlez
  2939.                         SET @Vr_Nova = @Vr_Stara + @NabCena * @Kolic * (-1)        --dod. 11.12.03
  2940.                         SET @Nova_Kolic = @Stara_Kolic + @Kolic * (-1)            --dod. 11.12.03
  2941.                     End
  2942.                 Else -- @VlIzl = 'I'
  2943.                     Begin
  2944.                         Set @Vlez=@soaVlez
  2945.                         Set @Izlez=@soaIzlez-@Kolic
  2946.                         SET @Vr_Nova = @Vr_Stara + @NabCena * @Kolic        --dod. 11.12.03
  2947.                         SET @Nova_Kolic = @Stara_Kolic + @Kolic            --dod. 11.12.03
  2948.                     End
  2949.                 Begin                                        --dod. 11.12.03
  2950.                     SET @Ima_Nova = 'N'      --Ne postoese do Mar 15, 2004
  2951.                     If Abs(@Nova_Kolic) > 0.000001
  2952.                         Begin
  2953.                             SET @Nova_NNabCena = @Vr_Nova / @Nova_Kolic
  2954.                             If @Nova_NNabCena > 0 
  2955.                             SET @Ima_Nova = 'D'
  2956.                         End
  2957.                     If @Ima_Nova = 'N'
  2958.                     Begin
  2959.                         If @soaNNabCena <> 0
  2960.                             SET @Nova_NNabCena = @soaNNabCena
  2961.                         Else
  2962.                             SET @Nova_NNabCena = @NabCena
  2963.                     End
  2964.                     SET @Nova_NNabCena = dbo.Pros_Min_Max(@Nova_NNabCena, @NMinCena, @NMaxCena, 0)
  2965.                 End
  2966.                 Update Soart
  2967.                 Set Vlez=@Vlez, Izlez=@Izlez, NNabCena = @Nova_NNabCena
  2968.                 Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  2969.                 -- Zapisuvame vo RazlCeni ako e potrebno
  2970.                 If @VlIzl='V'
  2971.                     Begin
  2972.                         If @DanMagCena = 'D'
  2973.                             Set @MagCena=@MagCena/(1+@POsn/100)
  2974.                         If @soaDanCena = 'D'
  2975.                             Set @soaCena=@soaCena/(1+@soaPOsn/100)
  2976.                         If Abs(@MagCena-@soaCena)>=0.001
  2977.                             Begin
  2978.                                 Set @ZacuvajRazliki = 1
  2979.                                 If @DanMagCena = 'D'
  2980.                                     Set @MagCena=@MagCena*(1+@POsn/100)
  2981.                                 If @soaDanCena = 'D'
  2982.                                     Set @soaCena=@soaCena*(1+@soaPOsn/100)
  2983.                                 Set @Sifra_Razl='903'
  2984.                                 Set @Kolicina=@Kolic
  2985.                                 Set @PocCena=@soaCena
  2986.                                 Set @KrCena =@MagCena
  2987.                                 Set @DanPocCena=@soaDanCena
  2988.                                 Set @DanKrCena =@DanMagCena
  2989.                             End                    
  2990.                         Else
  2991.                             Set @ZacuvajRazliki = 0
  2992.                     End
  2993.                 Else If @VlIzl='I'
  2994.                     Begin
  2995.                         If @DanDokCena = 'D'
  2996.                             Set @DokCena=@DokCena/(1+@POsn/100)
  2997.                         If @soaDanCena = 'D'
  2998.                             Set @soaCena=@soaCena/(1+@soaPOsn/100)
  2999.                         Set @DokCena=@DokCena*(1-@Uces/100)
  3000.                         If Abs(@DokCena-@soaCena)>=0.001
  3001.                             Begin
  3002.                                 Set @ZacuvajRazliki = 1
  3003.                                 If @DanDokCena = 'D'
  3004.                                     Set @DokCena=@DokCena*(1+@POsn/100)
  3005.                                 If @soaDanCena = 'D'
  3006.                                     Set @soaCena=@soaCena*(1+@soaPOsn/100)
  3007.                                 Set @Sifra_Razl='904'
  3008.                                 Set @Kolicina=(-1)*@Kolic
  3009.                                 Set @PocCena=@soaCena
  3010.                                 Set @KrCena =@DokCena
  3011.                                 Set @DanPocCena=@soaDanCena
  3012.                                 Set @DanKrCena =@DanDokCena
  3013.                             End
  3014.                         Else
  3015.                             Set @ZacuvajRazliki = 0
  3016.                     End
  3017.                 If @ZacuvajRazliki = 1    
  3018.                     Insert RazlCeni
  3019.                     (Sifra_Razl,  Sifra_OE,  Orig_Dok, Orig_Broj, Orig_Prim, Orig_ImaDod, Broj_Nal, Sifra_Art, Kolic, PocCena, KrCena, POsn, PTar, DanPocCena,  DanKrCena, Datum_Dok, Datum_Vnes, Sifra_Oper)
  3020.                     Values(@Sifra_Razl, @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna, NULL, @Sifra_Art, @Kolicina, @PocCena, 
  3021.                     @KrCena, @POsn, @PTar, @DanPocCena, @DanKrCena, @Datum_Dok, GETDATE(),SUSER_SNAME())
  3022.             END        -- IF @@ROWCOUNT = 0 ...
  3023. --Sega ke az. vo SoKontrSer kade sto ima kontr.br
  3024.     IF @KontrSer IS NOT NULL   AND @KontrSer <> '' AND (SubString(@KontrSer,1,3)='RR>' OR SubString(@KontrSer,1,3)='KK>' OR SubString(@KontrSer,1,3)='DD>')
  3025.     Begin
  3026.         SELECT @soKontrVlez = Vlez, @SoKontrIzlez = Izlez FROM SoKontrSer
  3027.         WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art AND KontrSer = @KontrSer
  3028.         IF @@ROWCOUNT = 0
  3029.         Begin
  3030.             SET @Redosled = dbo.fn_VratiGodMesDen (@KontrSer, @Datum_Dok)
  3031.             SET @soKontrVlez = 0
  3032.             SET @SoKontrIzlez = 0
  3033.             IF @VlIzl = 'V'
  3034.                 SET @soKontrVlez = @Kolic * -1
  3035.             IF @VlIzl = 'I'
  3036.                 SET @soKontrIzlez = @Kolic * -1
  3037.             INSERT SoKontrSer (Sifra_OE, Sifra_Art, KontrSer, Vlez, Izlez, Redosled)
  3038.             VALUES (@Sifra_OE, @Sifra_Art, @KontrSer, @soKontrVlez, @SoKontrIzlez, @Redosled)
  3039.         End
  3040.         ELSE
  3041.         Begin
  3042.             IF @VlIzl = 'V'
  3043.                 SET @soKontrVlez = @soKontrVlez - @Kolic
  3044.             IF @VlIzl = 'I'
  3045.                 SET @soKontrIzlez = @soKontrIzlez - @Kolic
  3046.             UPDATE SoKontrSer SET Vlez = @SoKontrVlez, Izlez = @SoKontrIzlez 
  3047.             WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art AND KontrSer = @KontrSer
  3048.         End                        
  3049.     End
  3050.         Fetch Next From DelStavki Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna, 
  3051.             @VlIzl, @Sifra_Art, @Kolic, @DokCena, @MagCena, @NabCena, 
  3052.             @POsn, @PTar, @Uces, @DanDokCena, @DanMagCena, @Kod_Danok, @Datum_Dok, @KontrSer
  3053.     End --While
  3054.     Close DelStavki
  3055.     Deallocate DelStavki
  3056. END
  3057.  
  3058. Go
  3059. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Podgrupi_Vnes' AND type = 'TR') DROP TRIGGER tr_Podgrupi_Vnes
  3060.  
  3061. Go
  3062. CREATE  TRIGGER tr_Podgrupi_Vnes 
  3063. ON dbo.Podgrupi
  3064. FOR INSERT, UPDATE
  3065. AS
  3066. BEGIN
  3067. Declare 
  3068.     @Sifra_Podg    char(6),
  3069.     @Propagiraj    char(1),
  3070.     @Redovi     smallint,
  3071.     @VtoraBaza    varchar(20),
  3072.     @DaliArt    char(1),
  3073.     @SSQL      varchar(8000)
  3074.     SELECT @Sifra_Podg = Sifra_Podg
  3075.     FROM INSERTED 
  3076. -------------------------------------  Dodadeno 20.09.2004  za Azuriranje na Paralelni Bazi --------------------------
  3077.     Set @Propagiraj = (Select Propagiraj From Podgrupi Where Sifra_Podg = @Sifra_Podg)
  3078.     If @Propagiraj='D' 
  3079.     Begin
  3080.         Update Podgrupi Set Propagiraj=Null  Where Sifra_Podg = @Sifra_Podg
  3081.         Select Rbr, ImeBaza
  3082.         From FirParal
  3083.         Set @Redovi = @@RowCount
  3084.         While @Redovi > 0  
  3085.         Begin
  3086.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  3087.             If @DaliArt = 'D'
  3088.             Begin
  3089.                 Set @SSQL =  ' Select  Sifra_Podg From ' + @VtoraBaza + '..Podgrupi
  3090.                         Where Sifra_Podg = ' + @Sifra_Podg + ' '
  3091.                 Exec(@SSQL)
  3092.                 If @@RowCount <> 0
  3093.                       Begin
  3094.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Podgrupi
  3095.                     Set Ime_Podg=P.Ime_Podg, Ime_Podg2=P.Ime_Podg2, Sifra_Gr=P.Sifra_Gr, DodadenNa=P.DodadenNa, 
  3096.                     DodadenOd=P.DodadenOd, IzmenetNa=P.IzmenetNa, IzmenetOd=P.IzmenetOd, Period_Nar=P.Period_Nar, 
  3097.                     Period_Sigurno=P.Period_Sigurno, Marza_Gol=P.Marza_Gol, Marza_Mal=P.Marza_Mal 
  3098.                     From Podgrupi P
  3099.                     Where P.Sifra_Podg = ''' + @Sifra_Podg + ''' 
  3100.                     and ' + @VtoraBaza + '..Podgrupi.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  3101.                     Exec(@SSQL)
  3102.                      End  -- If  @@RowCount <> 0
  3103.                 Else
  3104.                      Begin
  3105.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Podgrupi Select * From Podgrupi Where Sifra_Podg= ''' + @Sifra_Podg + ''' '
  3106.                      Exec(@SSQL)        
  3107.                      End  -- Else
  3108.             End -- DaliArt
  3109.             Set @Redovi = @Redovi - 1
  3110.                        end -- While
  3111.     End -- Propagiraj
  3112. End --Triger
  3113. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  3114.  
  3115. Go
  3116. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KatAmb_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_KatAmb_Vnes_Izmena
  3117.  
  3118. Go
  3119. CREATE  TRIGGER tr_KatAmb_Vnes_Izmena 
  3120. ON dbo.KatAmb
  3121. FOR INSERT, UPDATE
  3122. AS
  3123. BEGIN
  3124. Declare 
  3125.     @Sifra_Amb    char(6),
  3126.     @Propagiraj    char(1),
  3127.     @Redovi     smallint,
  3128.     @VtoraBaza    varchar(20),
  3129.     @DaliArt    char(1),
  3130.     @SSQL      varchar(8000)
  3131.     SELECT @Sifra_Amb = Sifra_Amb
  3132.     FROM INSERTED 
  3133. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  3134.     Set @Propagiraj = (Select Propagiraj From KatAmb Where Sifra_Amb = @Sifra_Amb)
  3135.     If @Propagiraj='D' 
  3136.     Begin
  3137.         Update KatAmb Set Propagiraj=Null  Where Sifra_Amb = @Sifra_Amb
  3138.         Select Rbr, ImeBaza
  3139.         From FirParal
  3140.         Set @Redovi = @@RowCount
  3141.         While @Redovi > 0  
  3142.         Begin
  3143.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  3144.             If @DaliArt = 'D'
  3145.             Begin
  3146.                 Set @SSQL =  ' Select  Sifra_Amb From ' + @VtoraBaza + '..KatAmb
  3147.                         Where Sifra_Amb = ' + cast(@Sifra_Amb as varchar(6)) + ' '
  3148.                 Exec(@SSQL)
  3149.                 If @@RowCount <> 0
  3150.                       Begin
  3151.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KatAmb
  3152.                     Set ImeAmb=D.ImeAmb, SodrziArt=D.SodrziArt, Sifra_GAmb=D.Sifra_GAmb, DodadenNa=D.DodadenNa,
  3153.                     DodadenOd=D.DodadenOd, IzmenetNa=D.IzmenetNa, IzmenetOd=D.IzmenetOd, VoGAmb=D.VoGAmb
  3154.                     From KatAmb D
  3155.                     Where D.Sifra_Amb= ' + @Sifra_Amb + ' 
  3156.                     and ' + @VtoraBaza + '..KatAmb.Sifra_Amb = ' + @Sifra_Amb + ' '
  3157.                     Exec(@SSQL)
  3158.                      End  -- If  @@RowCount <> 0
  3159.                 Else
  3160.                      Begin
  3161.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KatAmb Select * From KatAmb Where Sifra_Amb= ' + @Sifra_Amb + ' '
  3162.                      Exec(@SSQL)        
  3163.                      End  -- Else
  3164.             End -- DaliArt
  3165.             Set @Redovi = @Redovi - 1
  3166.                        end -- While
  3167.     End -- Propagiraj
  3168. End --Triger
  3169. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  3170.  
  3171. Go
  3172. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Stavr_Insert' AND type = 'TR') DROP TRIGGER tr_Stavr_Insert
  3173.  
  3174. Go
  3175.  
  3176.  
  3177. CREATE                                   TRIGGER tr_Stavr_Insert
  3178. ON dbo.Stavr
  3179. FOR INSERT
  3180. AS
  3181. BEGIN
  3182. DECLARE
  3183.     @Sifra_OE        Smallint,
  3184.     @Sifra_Dok        Smallint,
  3185.     @Broj_Dok        Int,
  3186.     @Sifra_Prim        Smallint,
  3187.     @ImaDodatna        Char(1),
  3188.     @VlIzl            Char(1),
  3189.     @Sifra_Art        varchar(20),
  3190.     @Kolic            Decimal(18,6),
  3191.     @DokCena        Decimal(18,6),
  3192.     @MagCena        Decimal(18,6),
  3193.     @NabCena        Decimal(18,6),
  3194.     @POsn            Decimal(6,2),
  3195.     @PTar            Char(3),    
  3196.     @Uces            Decimal(6,2),
  3197.     @DanDokCena        Char(1),
  3198.     @DanMagCena        Char(1),
  3199.     @CenaIznos        Char(1),
  3200.     @Kod_Danok        Char(1),
  3201.     @Datum_Dok        Smalldatetime,
  3202.     @soaVlez        Decimal(18,6),
  3203.     @soaIzlez        Decimal(18,6),
  3204.     @soaCena        Decimal(18,6),
  3205.     @soaDanCena        Char(1),
  3206.     @soaPOsn        Decimal(6,2),
  3207.     @soaNabCena        Decimal(18,6),
  3208.     @soaDokCena        Decimal(18,6),
  3209.     @soaUces        Decimal(6,2),
  3210.     @soaNNabCena    Decimal(18,6),
  3211.     @Sifra_Razl        Char(3),
  3212.     @Kolicina        Decimal(18,6),
  3213.     @PocCena        Decimal(18,6),
  3214.     @KrCena        Decimal(18,6),
  3215.     @DanPocCena        Char(1),
  3216.     @DanKrCena        Char(1),
  3217.     @Vlez            Decimal(18,6),
  3218.     @Izlez            Decimal(18,6),
  3219.     @Cena            Decimal(18,6),
  3220.     @DanCena        Char(1),
  3221.     @ZacuvajRazliki    Tinyint,
  3222.     @POsnNov        Decimal(6,2),        -- Dodadeno na 01/10/2003
  3223.     @DanCenaNov        Char(1),            -- Kraj za dodadeno na 01/10/2003
  3224.     @DokID        int,                   -- 03.12.03
  3225.     @NovaNabCena    decimal(18,6),        -- Dodadeno 11/12/2003
  3226.     @wKolic        Decimal(18,6),
  3227.     @Vr_Stara        Decimal(18,6),
  3228.     @Vr_Nova        Decimal(18,6),
  3229.     @Stara_kolic        decimal(18,6),
  3230.     @Nova_Kolic        decimal(18,6),
  3231.     @Nova_NNabCena    decimal(18,6),
  3232.     @Ima_Nova        char(1),
  3233.     @NMaxCena        decimal(18,6),
  3234.     @NMinCena        decimal(18,6),
  3235.     @Nova_MaxCena    decimal(18,6),
  3236.     @Nova_MinCena    decimal(18,6),
  3237.     @CenaNNabDava       decimal(18,6),
  3238.     @Nisto                  int,
  3239.     @KontrSer        varchar(40),
  3240.     @SoKontrVlez        decimal(18,6),
  3241.     @SoKontrIzlez        decimal(18,6), 
  3242.     @Redosled        varchar(25),
  3243.         @DaliCenaSoa         char (1),
  3244.         @NabCenaZadad        char (1)
  3245.     SET @Ima_Nova = 'N'
  3246.     Declare InsStavki Cursor Fast_Forward For
  3247.        Select Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna, VlIzl, Sifra_Art,
  3248.                  Kolic,DokCena, MagCena, NabCena, POsn, PTar, Uces, 
  3249.                  DanDokCena, DanMagCena, Kod_Danok, Datum_Dok, DokID, KontrSer, DaliCenaSoa, NabCenaZadad
  3250.        From Inserted
  3251.     Open InsStavki
  3252.     Fetch Next From InsStavki 
  3253.         Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna, @VlIzl, @Sifra_Art, 
  3254.               @Kolic, @DokCena, @MagCena, @NabCena, @POsn, @PTar, @Uces,
  3255.               @DanDokCena, @DanMagCena, @Kod_Danok, @Datum_Dok, @DokID, @KontrSer, @DaliCenaSoa, @NabCenaZadad
  3256.     While @@Fetch_Status = 0
  3257.     Begin
  3258.                 -- Dodadeno 3.3.2004
  3259.                 -- Ako e prenosnica, vidi ja cenata na strana DAVA vo SOART
  3260.         Begin
  3261.                 If @ImaDodatna is null
  3262.                 set @Nisto = 0
  3263.             Else if @ImaDodatna = 'P' and @VlIzl = 'V'
  3264.             Begin
  3265.                             if @NabCenaZadad = 'D'
  3266.                 set @Nisto = 0
  3267.                             else if dbo.fix_uproseci_izlez (@Sifra_Art, @Sifra_Oe, @Sifra_Dok, @Sifra_Prim) = 'N'
  3268.                                begin
  3269.                                  -- ne treba da gleda od SOART od DAVA, tuku ednostavno toa e DOK.CENATA
  3270.                                  set @Nabcena = dbo.fn_vraticena(@Dokcena, @Posn, @DanDokCena, 'N')
  3271.                                  update stavr SET NabCena = @NabCena    
  3272.                         WHERE DokID = @DokID    
  3273.                                end
  3274.                             else
  3275.                               begin
  3276.                 Select @CenaNNabDava = NNabCena
  3277.                 From Soart
  3278.                 Where Sifra_OE=@Sifra_Prim And Sifra_Art=@Sifra_Art     --Vsusnost e ORG - DAVA
  3279.                 IF @@ROWCOUNT = 0            -- Ne postoi zapis vo soart
  3280.                     Set @Nisto = 0
  3281.                 Else
  3282.                 Begin
  3283.                     Set @NabCena = @CenaNNabDava
  3284.                     IF @NabCena IS NULL   SET @NabCena=0
  3285.                     If @NabCena > 0    
  3286.                         UPDATE Stavr SET NabCena = @NabCena     --trgnato 24.03.04 RNabC = 'D'
  3287.                         WHERE DokID = @DokID                    --dod. 11.12.03
  3288.                 End
  3289.                               end
  3290.             End
  3291.         End
  3292.         -- Gotovo so 3.3.2004 za prenosnicite
  3293.         -- Barame zapis vo soart
  3294.         Select @soaVlez=Vlez, @soaIzlez=Izlez, @soaCena=Cena, @soaDanCena=DanCena, @soaPOsn=POsn,
  3295.             @soaNabCena=NabCena, @soaDokCena=DokCena, @soaUces=Uces, @soaNNabCena = NNabCena,
  3296.             @NMaxCena = NMaxCena, @NMinCena = NMinCena
  3297.         From Soart 
  3298.         Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  3299.         -- Ako ne postoi dodavame nov, i zaradi performansi
  3300.         -- vednas gi popolnuvame potrebnite polinja
  3301.         IF @@ROWCOUNT = 0            -- Ne postoi zapis vo soart
  3302.             Begin                        -- pa vednas dodavame soodveten
  3303.                 If @soaNNabCena IS NULL
  3304.                     SET @soaNNabCena = 0
  3305.                 If @NMaxCena IS NULL
  3306.                     SET @NMaxCena = 0
  3307.                 If @NMinCena IS NULL
  3308.                     SET @NMinCena = 0
  3309.                 If @VlIzl = 'V'
  3310.                     Begin
  3311.                         Set @soaVlez = @Kolic
  3312.                         Set @soaIzlez = 0
  3313.                         Set @soaCena = @MagCena
  3314.                         Set @soaDanCena = @DanMagCena
  3315.                         Set @Nova_NNabCena    = @NabCena
  3316.                         Set @Nova_MaxCena    = @NabCena 
  3317.                         Set @Nova_MinCena    = @NabCena 
  3318.                         if @ImaDodatna is null
  3319.                             begin
  3320.                                 Set @soaNabCena = @NabCena
  3321.                                 Set @soaDokCena = @DokCena
  3322.                                 Set @soaUces    = @Uces
  3323.                                 if @DanDokCena = 'N'
  3324.                                 Set @soaDokCena = @soaDokCena * (1 + @POsn / 100)
  3325.                             end
  3326.                                                 else
  3327.                                                     begin
  3328.                                 Set @soaNabCena = 0
  3329.                                 Set @soaDokCena = 0
  3330.                                 Set @soaUces    = 0
  3331.                                                     end
  3332.                     End
  3333.                 Else
  3334.                     Begin
  3335.                         Set @soaVlez = 0
  3336.                         Set @soaIzlez = @Kolic
  3337.                         Set @soaCena = @DokCena * (1 - @Uces / 100)
  3338.                         Set @soaDanCena = @DanDokCena
  3339.                         Set @Nova_NNabCena = 0
  3340.                         Set @Nova_MaxCena    = 0
  3341.                         Set @Nova_MinCena    = 0
  3342.                         Set @soaNabCena = 0
  3343.                         Set @soaDokCena = 0
  3344.                         Set @soaUces    = 0
  3345.                     End
  3346.                 Set @soaPOsn   =@POsn
  3347.                 --- Do Sept 22, 07  gresno  Set @soaNabCena=@NabCena
  3348.                 --- Do Sept 22, 07  gresno  Set @soaDokCena=@DokCena
  3349.                 --- Do Sept 22, 07  gresno  Set @soaUces   =@Uces
  3350.                 Insert Soart (Sifra_OE, Sifra_Art, Vlez, Izlez, Cena, DanCena, POsn, NabCena, DokCena, Uces, NNabCena, NMaxCena, NMinCena)
  3351.                 Values(@Sifra_OE, @Sifra_Art, @soaVlez, @soaIzlez, @soaCena, @soaDanCena, @soaPosn, @soaNabCena, @soaDokCena, @soaUces,
  3352.                      @Nova_NNabCena, @Nova_MaxCena, @Nova_MinCena)
  3353.                 -- Ako zapisuvame nesto vo RazlCeni, da se napravi ovde
  3354.                                 -- Treba samo ako sakame da ima evidencija na promenata na cena, iako vrednosta na razlikata ke e 0 i ne vlijae na slaganjeto
  3355.                 if @VlIzl = 'V'            -- Dodadeno Noe 18, 2005 DK
  3356.                                 Begin
  3357.                     Insert RazlCeni
  3358.                     (Sifra_Razl,  Sifra_OE,  Orig_Dok,   Orig_Broj, Orig_Prim,   Orig_ImaDod, 
  3359.                     Broj_Nal,  Sifra_Art,  Kolic, PocCena,  KrCena,  POsn,  PTar,  DanPocCena,  DanKrCena,  Datum_Dok, Datum_Vnes, Sifra_Oper)
  3360.                     Values('903', @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna, NULL, 
  3361.                         @Sifra_Art, 0, 0, @SoaCena, @POsn, @PTar, @SoaDanCena, @SoaDanCena, @Datum_Dok, GETDATE(),SUSER_SNAME())
  3362.                                 end
  3363.             End
  3364.         ELSE    -- Postoi zapis vo Soart, @@ROWCOUNT <> 0
  3365.             Begin
  3366.                 If @soaNNabCena IS NULL
  3367.                     SET @soaNNabCena = 0
  3368.                 If @NMaxCena IS NULL
  3369.                     SET @NMaxCena = 0
  3370.                 If @NMinCena IS NULL
  3371.                     SET @NMinCena = 0
  3372.                 If @VlIzl = 'V'
  3373.                     Begin
  3374.                         Set @Vlez =@soaVlez+@Kolic
  3375.                         Set @Izlez=@soaIzlez
  3376.                         Set @Stara_Kolic = @soaVlez - @soaIzlez                --dod. 11.12.03
  3377.                         If @soaNNabCena <> 0 
  3378.                              SET @Vr_Stara = @soaNNabCena * @Stara_Kolic
  3379.                         Else
  3380.                              SET @Vr_Stara = @NabCena * @Stara_Kolic
  3381.                         SET @Vr_Nova = @Vr_Stara + @NabCena * @Kolic
  3382.                         SET @Nova_Kolic = @Stara_Kolic + @Kolic
  3383.                         SET @Ima_Nova = 'N'
  3384.                         If Abs(@Nova_Kolic) > 0.000001
  3385.                             Begin
  3386.                               SET @Nova_NNabCena = @Vr_Nova / @Nova_Kolic
  3387.                               If @Nova_NNabCena > 0 
  3388.                                 SET @Ima_Nova = 'D'
  3389.                             End
  3390.                         If @Ima_Nova = 'N'
  3391.                         Begin
  3392.                             If @NabCena <> 0
  3393.                                 SET @Nova_NNabCena = @NabCena
  3394.                             Else
  3395.                                 SET @Nova_NNabCena = @soaNNabCena        
  3396.                         End
  3397.                         SET @Nova_NNabCena = dbo.Pros_Min_Max(@Nova_NNabCena, @NMinCena, @NMaxCena, @NabCena)
  3398.                         SET @Nova_MaxCena = @NMaxCena                            
  3399.                         SET @Nova_MinCena = @NMinCena
  3400.                         If @NabCena > 0 and (@NabCena < @Nova_MinCena or @Nova_MinCena <= 0)
  3401.                             SET @Nova_MinCena = @NabCena
  3402.                         If @NabCena > 0 and (@NabCena > @Nova_MaxCena or @Nova_MaxCena <= 0)
  3403.                             SET @Nova_MaxCena = @NabCena            --dod. 11.12.03
  3404.                                                 if @DaliCenaSoa = 'N'
  3405.                             Begin
  3406.                                 Set @Cena=@soaCena
  3407.                                 Set @POsnNov=@soaPOsn
  3408.                                 Set @DanCenaNov=@soaDanCena
  3409.                             End
  3410.                         else
  3411.                           begin 
  3412.                                      If @Kolic >= 0    -- DK Okt 27, 2010 -- bese samo > 0 i ne ja menuvase kat.cena pri kolic = 0
  3413.                             Begin
  3414.                                 Set @Cena=@MagCena
  3415.                                 Set @POsnNov=@POsn
  3416.                                 Set @DanCenaNov=@DanMagCena
  3417.                                 if @ImaDodatna is null
  3418.                                     begin
  3419.                                         Set @soaNabCena = @NabCena
  3420.                                         Set @soaDokCena = @DokCena
  3421.                                         Set @soaUces    = @Uces
  3422.                                         if @DanDokCena = 'N'
  3423.                                             Set @soaDokCena = @soaDokCena * (1 + @POsn / 100)
  3424.                                     end
  3425.                             End
  3426.                              Else    --@Kolic < 0
  3427.                             Begin
  3428.                                 Set @Cena=@soaCena
  3429.                                 Set @POsnNov=@soaPOsn
  3430.                                 Set @DanCenaNov=@soaDanCena
  3431.                             End
  3432.                                                   end
  3433.                         Update Soart
  3434.                         Set Vlez=@Vlez, Izlez=@Izlez, Cena=@Cena,
  3435.                             NabCena=@soaNabCena, DokCena=@soaDokCena, DanCena=@DanCenaNov,
  3436.                             Uces=@soaUces, POsn=@POsnNov,
  3437.                             NNabCena = @Nova_NNabCena, NMaxCena = @Nova_MaxCena, NMinCena = @Nova_MinCena
  3438.                         Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  3439.                     End
  3440.                 Else    --@VlIzl='I'
  3441.                     Begin
  3442.                            Set @Vlez=@soaVlez
  3443.                        Set @Izlez=@soaIzlez+@Kolic
  3444.                                    if @NabCenaZadad = 'D'
  3445.                         set @Nisto = 0
  3446.                                    else if dbo.fix_uproseci_izlez (@Sifra_Art, @Sifra_Oe, @Sifra_Dok, @Sifra_Prim) = 'N'
  3447.                                      begin
  3448.                                          -- ne treba da gleda od SOART, tuku ednostavno toa e DOK.CENATA
  3449.                                             update stavr SET NabCena = dbo.fn_vraticena(@Dokcena, @Posn, @DanDokCena, 'N')    
  3450.                             WHERE DokID = @DokID
  3451.                                      end
  3452.                                            else
  3453.                                          begin 
  3454.                         if @soaNNabCena > 0                            --dod. 11.12.03
  3455.                             UPDATE Stavr SET NabCena = @soaNNabCena             --trgnato 24.03.04, RNabC = 'D'
  3456.                             WHERE DokID = @DokID                    --dod. 11.12.03
  3457.                                              end 
  3458.                                          Update Soart
  3459.                        Set Vlez=@Vlez, Izlez=@Izlez
  3460.                        Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  3461.                     End
  3462.                 -- Zapisuvame vo RazlCeni ako e potrebno
  3463.                 If @VlIzl='V'
  3464.                     Begin
  3465.                         If @DanMagCena = 'D'
  3466.                             Set @MagCena=@MagCena/(1+@POsn/100)
  3467.                         If @soaDanCena = 'D'
  3468.                             Set @soaCena=@soaCena/(1+@soaPOsn/100)
  3469.                         If Abs(@MagCena-@soaCena)>=0.001
  3470.                             Begin
  3471.                                 If @DanMagCena = 'D'
  3472.                                     Set @MagCena=@MagCena*(1+@POsn/100)
  3473.                                 If @soaDanCena = 'D'
  3474.                                     Set @soaCena=@soaCena*(1+@soaPOsn/100)
  3475.                                 Set @ZacuvajRazliki = 1
  3476.                                 Set @Sifra_Razl='903'
  3477.                                                                 if @DaliCenaSoa = 'N'
  3478.                                                                   begin
  3479.                                      Set @Kolicina=@Kolic
  3480.                                                                      Set @KrCena=@soaCena
  3481.                                      Set @PocCena =@MagCena
  3482.                                      Set @DanKrCena=@soaDanCena
  3483.                                      Set @DanPocCena =@DanMagCena
  3484.                                                                   end
  3485.                                                                 else
  3486.             begin
  3487.                                      If @Kolic > 0
  3488.                                     Set @Kolicina=@soaVlez-@soaIzlez
  3489.                                      Else
  3490.                                      Set @Kolicina=(-1)*@Kolic
  3491.                                                                      Set @PocCena=@soaCena
  3492.                                      Set @KrCena =@MagCena
  3493.                                       Set @DanPocCena=@soaDanCena
  3494.                                      Set @DanKrCena =@DanMagCena
  3495.                                                                   end
  3496.                             End
  3497.                         Else
  3498.                             Set @ZacuvajRazliki = 0
  3499.                     End
  3500.                 Else If @VlIzl='I'
  3501.                     Begin
  3502.                         If @DanDokCena = 'D'
  3503.                             Set @DokCena=@DokCena/(1+@POsn/100)
  3504.                         If @soaDanCena = 'D'
  3505.                             Set @soaCena=@soaCena/(1+@soaPOsn/100)
  3506.                         Set @DokCena=@DokCena*(1-@Uces/100)
  3507.                         If Abs(@DokCena-@soaCena)>=0.001
  3508.                             Begin
  3509.                                 If @DanDokCena = 'D'
  3510.                                     Set @DokCena=@DokCena*(1+@POsn/100)
  3511.                                 If @soaDanCena = 'D'
  3512.                                     Set @soaCena=@soaCena*(1+@soaPOsn/100)
  3513.                                 Set @ZacuvajRazliki = 1
  3514.                                 Set @Sifra_Razl='904'
  3515.                                 Set @Kolicina=@Kolic
  3516.                                 Set @PocCena=@soaCena
  3517.                                 Set @KrCena =@DokCena
  3518.                                 Set @DanPocCena=@soaDanCena
  3519.                                 Set @DanKrCena =@DanDokCena
  3520.                             End
  3521.                         Else
  3522.                             Set @ZacuvajRazliki = 0
  3523.                     End
  3524.                 If @ZacuvajRazliki = 1    
  3525.                     Insert RazlCeni
  3526.                     (Sifra_Razl,  Sifra_OE,  Orig_Dok,   Orig_Broj, Orig_Prim,     Orig_ImaDod, Broj_Nal,  Sifra_Art,  Kolic, PocCena,  KrCena,  POsn,  PTar,  DanPocCena,  DanKrCena,  Datum_Dok, Datum_Vnes, Sifra_Oper)
  3527.                     Values(@Sifra_Razl, @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim,    @ImaDodatna, NULL, @Sifra_Art, @Kolicina, @PocCena, 
  3528.                     @KrCena, @POsn, @PTar, @DanPocCena, @DanKrCena, @Datum_Dok, GETDATE(),SUSER_SNAME())
  3529.             END        -- IF @@ROWCOUNT = 0 ...
  3530.         --Sega ke az. vo SoKontrSer kade sto ima kontr.br
  3531.         IF @KontrSer IS NOT NULL   AND @KontrSer <> '' AND (SubString(@KontrSer,1,3)='RR>' OR SubString(@KontrSer,1,3)='KK>' OR SubString(@KontrSer,1,3)='DD>')
  3532.         Begin
  3533.             SET @Redosled = dbo.fn_VratiGodMesDen (@KontrSer, @Datum_Dok)
  3534.             SELECT @soKontrVlez = Vlez, @SoKontrIzlez = Izlez FROM SoKontrSer
  3535.             WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art AND KontrSer = @KontrSer
  3536.             IF @@ROWCOUNT = 0
  3537.             Begin
  3538.                 SET @soKontrVlez = 0
  3539.                 SET @SoKontrIzlez = 0
  3540.                 IF @VlIzl = 'V'
  3541.                     SET @soKontrVlez = @Kolic
  3542.                 IF @VlIzl = 'I'
  3543.                     SET @soKontrIzlez = @Kolic
  3544.                 INSERT SoKontrSer (Sifra_OE, Sifra_Art, KontrSer, Vlez, Izlez, Redosled)
  3545.                 VALUES (@Sifra_OE, @Sifra_Art, @KontrSer, @soKontrVlez, @SoKontrIzlez, @Redosled)
  3546.             End
  3547.             ELSE
  3548.             Begin
  3549.                 IF @SoKontrVlez = 0
  3550.                     UPDATE SoKontrSer SET Redosled = @Redosled
  3551.                 WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art AND KontrSer = @KontrSer
  3552.                 IF @VlIzl = 'V'
  3553.                     SET @soKontrVlez = @soKontrVlez + @Kolic
  3554.                 IF @VlIzl = 'I'
  3555.                     SET @soKontrIzlez = @soKontrIzlez + @Kolic
  3556.                 UPDATE SoKontrSer SET Vlez = @SoKontrVlez, Izlez = @SoKontrIzlez 
  3557.                 WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art AND KontrSer = @KontrSer
  3558.             End                        
  3559.         End
  3560.         Fetch Next From InsStavki Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna, 
  3561.             @VlIzl, @Sifra_Art, @Kolic, @DokCena, @MagCena, @NabCena, 
  3562.             @POsn, @PTar, @Uces, @DanDokCena, @DanMagCena, @Kod_Danok, @Datum_Dok, @DokID, @KontrSer, @DaliCenaSoa, @NabCenaZadad
  3563.     End --While
  3564.     Close InsStavki
  3565.     Deallocate InsStavki
  3566. END
  3567.  
  3568. Go
  3569. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Dokr_Zacuvaj' AND type = 'TR') DROP TRIGGER tr_Dokr_Zacuvaj
  3570.  
  3571. Go
  3572.  
  3573. CREATE     TRIGGER tr_Dokr_Zacuvaj
  3574. ON dbo.Dokr
  3575. FOR INSERT
  3576. AS 
  3577. BEGIN
  3578.    Declare @Sifra_OE Smallint
  3579.    Declare @Sifra_Dok Smallint
  3580.    Declare @Broj_Dok Int
  3581.    Declare @Imadodatna char(1)
  3582.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Dok=Sifra_Dok, @Broj_Dok=Broj_Dok, @Imadodatna=Imadodatna  
  3583.    FROM Inserted
  3584.   if (@Imadodatna = 'D' or @Imadodatna is null or ltrim(@Imadodatna) = '' or @Imadodatna='Z')  
  3585.     AND @Broj_Dok IS NOT NULL
  3586.      begin
  3587.        IF EXISTS(SELECT * FROM Brdok WITH(NOLOCK) WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok)
  3588.           UPDATE Brdok SET Broj_Dok=@Broj_Dok WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok
  3589.        ELSE
  3590.           INSERT INTO Brdok(Sifra_OE, Sifra_Dok, Broj_Dok)
  3591.                  VALUES(@Sifra_OE, @Sifra_Dok, @Broj_Dok)
  3592.      end
  3593.     /*INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)        TRGNATO 26.10.03
  3594.     Values 
  3595.         (     GetDate(),
  3596.             'ZacuvDokr',
  3597.             'INF',
  3598.             'trig',
  3599.             'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' +
  3600.             'Dok:' + Cast(@Sifra_Dok As Varchar(6)) + ' ' +
  3601.             'Broj:' + Cast(@Broj_Dok As Varchar(10)) + ' ' +
  3602.             'Korisnik: ' + SUser_SName(),
  3603.             Substring(SUser_SName(),1,20))        */
  3604. END
  3605.  
  3606. Go
  3607. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_DevStavKons_Delete' AND type = 'TR') DROP TRIGGER tr_DevStavKons_Delete
  3608.  
  3609. Go
  3610.  
  3611. CREATE  TRIGGER tr_DevStavKons_Delete
  3612. ON dbo.DevStavKons
  3613. FOR DELETE
  3614. AS
  3615. BEGIN
  3616. DECLARE
  3617.     @DevKonsID    Integer,
  3618.     @Sifra_OE    smallint,
  3619.     @Sifra_Dok    smallint,
  3620.     @Broj_Kons    int,
  3621.     @Sifra_Art    varchar(20),
  3622.     @Kolic        decimal(18,6),
  3623.     @DevCena    decimal(18,6),
  3624.     @Uces        decimal(6,2),
  3625.     @Koleti        decimal(18,6),
  3626.     @Bruto        decimal(18,6),
  3627.     @Neto        decimal(18,6),
  3628.     @VlIzl        char(1),
  3629.     @KojaVal    char(3),
  3630.     @Sifra_Dok_Vlez    smallint,
  3631.     @Broj_Kons_Vlez    smallint,
  3632.     @Cena_Pak    decimal(18,6),
  3633.     @Vlez        Decimal(18,6),
  3634.     @Izlez        Decimal(18,6),
  3635.     @soaVlez    Decimal(18,6),
  3636.     @soaIzlez    Decimal(18,6),
  3637.     @soaCena    Decimal(18,6),
  3638.     @soaBruto_Vl decimal(18, 6) ,
  3639.     @soaNeto_Vl decimal(18, 6) ,
  3640.     @soaKoleti_Vl decimal(18, 6),
  3641.     @soaBruto_Izl decimal(18, 6),
  3642.     @soaNeto_Izl decimal(18, 6) ,
  3643.     @soaKoleti_Izl decimal(18, 6),
  3644.     @soaCena_Pak decimal(18, 6),
  3645.     @soaVr_Vlez decimal(18, 6),
  3646.     @soaVr_Izlez decimal(18, 6) 
  3647.     Declare DelStavki Cursor Fast_Forward For
  3648.     Select D.Sifra_OE, D.Sifra_Dok, D.Broj_Kons, D.Sifra_Art, D.Kolic, D.DevCena, D.VlIzl, D.Sifra_Dok_Vlez, 
  3649.         D.Broj_Kons_Vlez, D.Cena_Pak, K.KojaVal, D.Bruto, D.Neto, D.Koleti
  3650.     From Deleted  D INNER JOIN DevKons K ON D.DevKonsID = K.DevKonsID
  3651.     Open DelStavki
  3652.     Fetch Next From DelStavki 
  3653.     Into @Sifra_OE, @Sifra_Dok, @Broj_Kons, @Sifra_Art, @Kolic, @DevCena, 
  3654.         @VlIzl, @Sifra_Dok_Vlez, @Broj_Kons_Vlez, @Cena_Pak, @KojaVal, @Bruto, @Neto, @Koleti
  3655.     While @@Fetch_Status = 0
  3656.     Begin
  3657.         -- Barame zapis vo soart
  3658.         If @VlIzl='V'
  3659.         Begin
  3660.             SET @Broj_Kons_Vlez = @Broj_Kons
  3661.             SET @Sifra_Dok_Vlez = @Sifra_Dok
  3662.         End
  3663.         IF @Kolic IS NULL SET @Kolic = 0    
  3664.         IF @Bruto IS NULL SET @Bruto = 0
  3665.         IF @Neto IS NULL SET @Neto = 0
  3666.         IF @Koleti IS NULL SET @Koleti = 0
  3667.         Select @soaVlez=Vlez, @soaIzlez=Izlez, @soaCena=DevCena, 
  3668.             @soaBruto_Vl=Bruto_Vl, @soaNeto_Vl =Neto_Vl, @soaKoleti_Vl=Koleti_Vl, 
  3669.             @soaBruto_Izl=Bruto_Izl, @soaNeto_Izl=Neto_Izl, @soaKoleti_Izl =Koleti_Izl,
  3670.             @soaCena_Pak =Cena_Pak, @soaVr_Vlez =Vr_Vlez, @soaVr_Izlez=Vr_Izlez
  3671.         From SoartKons 
  3672.         Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_Dok=@Sifra_Dok_Vlez AND Broj_Kons=@Broj_Kons_Vlez
  3673.         -- Ako ne postoi dodavame nov
  3674.         IF @@ROWCOUNT = 0
  3675.             Begin                        -- pa vednas dodavame soodveten
  3676.                  If @VlIzl = 'V'
  3677.                     Begin
  3678.                         Set @soaVlez =(-1) * @Kolic
  3679.                         Set @soaIzlez=0
  3680.                         Set @soaBruto_Vl=(-1) * @Bruto 
  3681.                         Set @soaNeto_Vl =(-1) * @Neto
  3682.                         Set @soaKoleti_Vl=(-1) * @Koleti
  3683.                         Set @soaBruto_Izl=0
  3684.                         Set @soaNeto_Izl=0
  3685.                         Set @soaKoleti_Izl =0
  3686.                         Set @soaVr_Vlez =(-1) * @Kolic * @DevCena
  3687.                         Set @soaVr_Izlez=0
  3688.                     End
  3689.                 Else
  3690.                     Begin
  3691.                         Set @soaVlez =0
  3692.                         Set @soaIzlez= (-1) * @Kolic
  3693.                         Set @soaBruto_Vl=0
  3694.                         Set @soaNeto_Vl =0
  3695.                         Set @soaKoleti_Vl=0
  3696.                         Set @soaBruto_Izl=(-1) * @Bruto
  3697.                         Set @soaNeto_Izl=(-1) * @Neto
  3698.                         Set @soaKoleti_Izl =(-1) * @Koleti
  3699.                         Set @soaVr_Vlez =0
  3700.                         Set @soaVr_Izlez=(-1) * @Kolic * @DevCena
  3701.                     End
  3702.                 Insert SoartKons (Sifra_OE,  Sifra_Dok, Broj_Kons, Sifra_Art, Vlez, Izlez, DevCena, KojaVal,
  3703.                 Bruto_Vl, Neto_Vl, Koleti_Vl, Bruto_Izl, Neto_Izl, Koleti_Izl, Cena_Pak, Vr_Vlez, Vr_Izlez)
  3704.                 Values(@Sifra_OE, @Sifra_Dok_Vlez, @Broj_Kons_Vlez, @Sifra_Art, @soaVlez, @soaIzlez, @DevCena, @KojaVal,
  3705.                 @soaBruto_Vl, @soaNeto_Vl, @soaKoleti_Vl, @soaBruto_Izl, @soaNeto_Izl, @soaKoleti_Izl, @Cena_Pak, @soaVr_Vlez, @soaVr_Izlez)
  3706.             End
  3707.         ELSE    -- Postoi zapis vo Soart, @@ROWCOUNT <> 0
  3708.             Begin
  3709.                 If @VlIzl = 'V'
  3710.                     Begin
  3711.                         Set @Vlez =@soaVlez-@Kolic
  3712.                         Set @Izlez=@soaIzlez
  3713.                         Set @soaBruto_Vl=@soaBruto_Vl-@Bruto
  3714.                         Set @soaNeto_Vl =@soaNeto_Vl-@Neto
  3715.                         Set @soaKoleti_Vl=@soaKoleti_Vl - @Koleti
  3716.                         Set @soaVr_Vlez =@soaVr_Vlez - @Kolic * @DevCena
  3717.                     End
  3718.                 Else -- @VlIzl = 'I'
  3719.                     Begin
  3720.                         Set @Vlez=@soaVlez
  3721.                         Set @Izlez=@soaIzlez-@Kolic
  3722.                         Set @soaBruto_Izl=@soaBruto_Izl-@Bruto
  3723.                         Set @soaNeto_Izl=@soaNeto_Izl-@Neto                        Set @soaKoleti_Izl =@soaKoleti_Izl- @Koleti
  3724.                         Set @soaVr_Izlez=@soaVr_Izlez - @Kolic * @DevCena
  3725.                     End
  3726.                 Update SoartKons
  3727.                 Set Vlez=@Vlez, Izlez=@Izlez, Bruto_Vl = @soaBruto_Vl, Neto_Vl=@soaNeto_Vl,
  3728.                     Koleti_Vl = @soaKoleti_Vl, Vr_Vlez = @soaVr_Vlez, Bruto_Izl = @soaBruto_Izl, 
  3729.                     Neto_Izl=@soaNeto_Izl, Koleti_Izl = @soaKoleti_Izl, Vr_Izlez = @soaVr_Izlez
  3730.                 Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art  AND Sifra_Dok=@Sifra_Dok_Vlez AND Broj_Kons=@Broj_Kons_Vlez
  3731.             End
  3732.         Fetch Next From DelStavki Into  @Sifra_OE, @Sifra_Dok, @Broj_Kons, @Sifra_Art, @Kolic, @DevCena, @VlIzl, @Sifra_Dok_Vlez, 
  3733.                 @Broj_Kons_Vlez, @Cena_Pak, @KojaVal, @Bruto, @Neto, @Koleti
  3734.     End --While
  3735.     Close DelStavki
  3736.     Deallocate DelStavki
  3737. END
  3738.  
  3739. Go
  3740. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Kompenz_BrKomp' AND type = 'TR') DROP TRIGGER tr_Kompenz_BrKomp
  3741.  
  3742. Go
  3743.  
  3744. CREATE   TRIGGER tr_Kompenz_BrKomp
  3745. ON dbo.Kompenz
  3746. FOR INSERT
  3747. AS 
  3748. BEGIN
  3749.    Declare @Broj_Komp Int
  3750.    SELECT @Broj_Komp=Broj_Komp FROM Inserted
  3751.    IF EXISTS(SELECT * FROM BrKomp)
  3752.       UPDATE BrKomp SET Broj_Komp=@Broj_Komp
  3753.    ELSE
  3754.       INSERT INTO BrKomp(Broj_Komp)
  3755.          VALUES(@Broj_Komp)
  3756. END
  3757.  
  3758. Go
  3759. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Dokr_Izmeni' AND type = 'TR') DROP TRIGGER tr_Dokr_Izmeni
  3760.  
  3761. Go
  3762.  
  3763. CREATE  TRIGGER tr_Dokr_Izmeni
  3764. ON dbo.Dokr
  3765. FOR UPDATE
  3766. AS 
  3767. BEGIN
  3768.    Declare @Sifra_OE Smallint
  3769.    Declare @Sifra_Dok Smallint
  3770.    Declare @Broj_Dok Int
  3771.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Dok=Sifra_Dok, @Broj_Dok=Broj_Dok FROM Inserted
  3772.     INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)
  3773.     Values 
  3774.         (     GetDate(),
  3775.             'IzmenDokr',
  3776.             'INF',
  3777.             'trig',
  3778.             'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' +
  3779.             'Dok:' + Cast(@Sifra_Dok As Varchar(6)) + ' ' +
  3780.             'Broj:' + Cast(@Broj_Dok As Varchar(10)) + ' ' +
  3781.             'Korisnik: ' + SUser_SName(),
  3782.             Substring(SUser_SName(),1,20))
  3783. END
  3784.  
  3785. Go
  3786. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Tarifi_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Tarifi_Vnes_Izmena
  3787.  
  3788. Go
  3789. CREATE  TRIGGER tr_Tarifi_Vnes_Izmena 
  3790. ON dbo.Tarifi
  3791. FOR INSERT, UPDATE
  3792. AS
  3793. BEGIN
  3794. Declare 
  3795.     @Sifra_Tar    char(3),
  3796.     @Propagiraj    char(1),
  3797.     @Redovi     smallint,
  3798.     @VtoraBaza    varchar(20),
  3799.     @DaliArt    char(1),
  3800.     @SSQL      varchar(8000)
  3801.     SELECT @Sifra_Tar = Sifra_Tar
  3802.     FROM INSERTED 
  3803. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  3804.     Set @Propagiraj = (Select Propagiraj From Tarifi Where Sifra_Tar = @Sifra_Tar)
  3805.     If @Propagiraj='D' 
  3806.     Begin
  3807.         Update Tarifi Set Propagiraj=Null  Where Sifra_Tar = @Sifra_Tar
  3808.         Select Rbr, ImeBaza
  3809.         From FirParal
  3810.         Set @Redovi = @@RowCount
  3811.         While @Redovi > 0  
  3812.         Begin
  3813.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  3814.             If @DaliArt = 'D'
  3815.             Begin
  3816.                 Set @SSQL =  ' Select  Sifra_Tar From ' + @VtoraBaza + '..Tarifi
  3817.                         Where Sifra_Tar = ' + @Sifra_Tar + ' '
  3818.                 Exec(@SSQL)
  3819.                 If @@RowCount <> 0
  3820.                       Begin
  3821.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Tarifi
  3822.                     Set ImeTar=T.ImeTar, ProcOsn=T.ProcOsn
  3823.                     From Tarifi T
  3824.                     Where T.Sifra_Tar = ''' + @Sifra_Tar + ''' 
  3825.                     and ' + @VtoraBaza + '..Tarifi.Sifra_Tar = ''' + @Sifra_Tar + ''' '
  3826.                     Exec(@SSQL)
  3827.                      End  -- If  @@RowCount <> 0
  3828.                 Else
  3829.                      Begin
  3830.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Tarifi Select * From Tarifi Where Sifra_Tar= ''' + @Sifra_Tar + ''' '
  3831.                      Exec(@SSQL)        
  3832.                      End  -- Else
  3833.             End -- DaliArt
  3834.             Set @Redovi = @Redovi - 1
  3835.                        end -- While
  3836.     End -- Propagiraj
  3837. End --Triger
  3838. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  3839.  
  3840. Go
  3841. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Dokr_Brisi' AND type = 'TR') DROP TRIGGER tr_Dokr_Brisi
  3842.  
  3843. Go
  3844. CREATE TRIGGER tr_Dokr_Brisi
  3845. ON dbo.Dokr
  3846. FOR DELETE
  3847. AS 
  3848. BEGIN
  3849.    Declare @Sifra_OE Smallint
  3850.    Declare @Sifra_Dok Smallint
  3851.    Declare @Broj_Dok Int
  3852.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Dok=Sifra_Dok, @Broj_Dok=Broj_Dok FROM Deleted
  3853.     INSERT INTO OpstLog (Koga, ImeLog, Tip, Izvor, Tekst, Korisnik)
  3854.     Values 
  3855.         (     GetDate(),
  3856.             'BrisiDokr',
  3857.             'INF',
  3858.             'trig',
  3859.             'OE:' + Cast(@Sifra_OE As Varchar(6)) + ' ' +
  3860.             'Dok:' + Cast(@Sifra_Dok As Varchar(6)) + ' ' +
  3861.             'Broj:' + Cast(@Broj_Dok As Varchar(10)) + ' ' +
  3862.             'Korisnik: ' + SUser_SName(),
  3863.             Substring(SUser_SName(),1,20))
  3864. END
  3865.  
  3866. Go
  3867. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_StaNarac_Insert' AND type = 'TR') DROP TRIGGER tr_StaNarac_Insert
  3868.  
  3869. Go
  3870.  
  3871.  
  3872.  
  3873. CREATE                   TRIGGER tr_StaNarac_Insert
  3874. ON dbo.StaNarac
  3875. FOR INSERT
  3876. AS
  3877. BEGIN
  3878. DECLARE
  3879.     @Sifra_OE        Smallint,
  3880.     @Sifra_Nar        Smallint,
  3881.     @VlIzl            Char(1),
  3882.     @Sifra_GrNar        smallint,
  3883.     @Sifra_Art        varchar(20),
  3884.     @Kolic            Decimal(18,6),
  3885.     @DokCena        Decimal(18,6),
  3886.     @POsn            Decimal(6,2),
  3887.     @PTar            Char(3),    
  3888.     @DanDokCena        Char(1),
  3889.     @Uces            decimal(18,6),
  3890.     @soaVlez        decimal(18,6),
  3891.     @soaIzlez        decimal(18,6),
  3892.     @soaCena        decimal(18,6),
  3893.     @Kolic_BO        Decimal(18,6),
  3894.     @soaVlez_BO        decimal(18,6),
  3895.     @soaIzlez_BO        decimal(18,6),
  3896.     @Prvo            int
  3897. set @Prvo = 1
  3898. Declare InsStavki Cursor Fast_Forward For
  3899. Select Sifra_OE, Sifra_Nar, Sifra_Art, Kolic, DokCena, POsn, DanDokCena, Uces, Kolic_BO
  3900. From Inserted
  3901. Open InsStavki
  3902. Fetch Next From InsStavki 
  3903. INTO @Sifra_OE, @Sifra_Nar, @Sifra_Art, @Kolic, @DokCena, @POsn, @DanDokCena, @Uces, @Kolic_BO
  3904. While @@Fetch_Status = 0
  3905. Begin
  3906.    if @Prvo = 1
  3907.    Begin
  3908.        set @Prvo = 0    -- Za da ne prebaruvame vo baza edno te isto 100 pati
  3909.        Select @VlIzl = VlIzl, @Sifra_GrNar = Sifra_GrNar 
  3910.        FROM TipNarac WHERE Sifra_Nar = @Sifra_Nar
  3911.    end
  3912.    If @Sifra_GrNar IS NOT NULL 
  3913.    Begin
  3914.     if @Kolic_BO is null
  3915.        set @Kolic_BO = 0
  3916.     -- Barame zapis vo SoNar
  3917.     Select @soaVlez=Vlez, @soaIzlez=Izlez, @SoaVlez_BO=Vlez_BO, @SoaIzlez_BO=Izlez_BO
  3918.     From SoNar Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  3919.     -- Ako ne postoi dodavame nov
  3920.     IF @@ROWCOUNT = 0                -- Ne postoi zapis vo SoNar
  3921.         Begin                        -- pa vednas dodavame soodveten
  3922.             if @SoaVlez_BO is null
  3923.                 set @SoaVlez_BO = 0
  3924.                 if @SoaIzlez_BO is null
  3925.                 set @SoaIzlez_BO = 0
  3926.             If @VlIzl = 'V'
  3927.                 Begin
  3928.                     Set @soaVlez = @Kolic
  3929.                     Set @soaIzlez = 0
  3930.                     Set @soaCena = @DokCena
  3931.                     Set @soaVlez_BO = @Kolic_BO
  3932.                     Set @soaIzlez_BO = 0
  3933.                 End
  3934.             Else
  3935.                 Begin
  3936.                     Set @soaVlez = 0
  3937.                     Set @soaIzlez = @Kolic
  3938.                     Set @soaCena = @DokCena * (1 - @Uces / 100)
  3939.                     Set @soaVlez_BO = 0
  3940.                     Set @soaIzlez_BO = @Kolic_BO
  3941.                 End
  3942.             Insert SoNar (Sifra_OE, Sifra_Art, Sifra_GrNar, Vlez, Izlez, Cena, DanCena, POsn, Vlez_BO, Izlez_BO)
  3943.             Values(@Sifra_OE, @Sifra_Art, @Sifra_GrNar, @soaVlez, @soaIzlez, @soaCena, @DanDokCena, @Posn, @soaVlez_BO, @soaIzlez_BO)
  3944.         End
  3945.     ELSE    
  3946.         Begin
  3947.             if @SoaVlez_BO is null
  3948.                 set @SoaVlez_BO = 0
  3949.                 if @SoaIzlez_BO is null
  3950.                 set @SoaIzlez_BO = 0
  3951.             If @VlIzl = 'V'
  3952.                 Begin
  3953.                     Set @soaVlez = @soaVlez + @Kolic
  3954.                     Set @soaVlez_BO = @soaVlez_BO + @Kolic_BO
  3955.                     Update SoNar
  3956.                     Set Vlez=@soaVlez, Izlez=@soaIzlez, Cena=@DokCena, DanCena=@DanDokCena, POsn=@POsn, Vlez_BO=@soaVlez_BO, Izlez_BO=@soaIzlez_BO
  3957.                     Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  3958.                 End
  3959.             Else    
  3960.                 Begin
  3961.                     Set @soaIzlez = @soaIzlez + @Kolic
  3962.                     set @soaIzlez_BO = @soaIzlez_BO + @Kolic_BO
  3963.                     Update SoNar
  3964.                     Set Vlez=@soaVlez, Izlez=@soaIzlez, Vlez_BO=@SoaVlez_BO, Izlez_BO=@soaIzlez_BO
  3965.                     Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  3966.                 End
  3967.         END
  3968.    End
  3969.    Fetch Next From InsStavki 
  3970.    INTO @Sifra_OE, @Sifra_Nar, @Sifra_Art, @Kolic, @DokCena, @POsn, @DanDokCena, @Uces, @Kolic_BO
  3971. End --While
  3972. Close InsStavki
  3973. Deallocate InsStavki
  3974. END
  3975.  
  3976. Go
  3977. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tg_KObjekti_Insert' AND type = 'TR') DROP TRIGGER tg_KObjekti_Insert
  3978.  
  3979. Go
  3980. CREATE  TRIGGER tg_KObjekti_Insert
  3981. ON dbo.KObjekti
  3982. FOR INSERT, UPDATE
  3983. AS 
  3984. BEGIN
  3985.     Declare @Sifra_Kup Char(6)
  3986.     Declare @Sifra_Obj Smallint
  3987.     Declare @Propagiraj    char(1)
  3988.     Declare @Redovi     smallint
  3989.     Declare @VtoraBaza    varchar(20)
  3990.     Declare @DaliKup    char(1)
  3991.     Declare @DaliPodelKup    char(1)
  3992.     Declare @SSQL      varchar(8000)
  3993.     Select @Sifra_Kup=Sifra_Kup, @Sifra_Obj=Sifra_Obj From Inserted
  3994.     If @Sifra_Obj<>0
  3995.         Update Komint Set ImaObj='D' Where Sifra_Kup=@Sifra_Kup
  3996. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  3997.     Set @Propagiraj = (Select Propagiraj From KObjekti Where Sifra_Kup = @Sifra_Kup and Sifra_Obj = @Sifra_Obj)
  3998.     If @Propagiraj='D' 
  3999.     Begin
  4000.         Update KObjekti Set Propagiraj=Null  Where Sifra_Kup = @Sifra_Kup and Sifra_Obj = @Sifra_Obj
  4001.         Select Rbr, ImeBaza
  4002.         From FirParal
  4003.         Set @Redovi = @@RowCount
  4004.         While @Redovi > 0  
  4005.         Begin
  4006.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  4007.             If @DaliKup = 'D' And (@DaliPodelKup<>'N' Or @DaliPodelKup Is Null)
  4008.             Begin
  4009.                 Set @SSQL =  ' Select  Sifra_Kup, Sifra_Obj From ' + @VtoraBaza + '..KObjekti
  4010.                         Where Sifra_Kup = ''' + @Sifra_Kup + ''' and Sifra_Obj = ' + cast(@Sifra_Obj as varchar(5)) + ' '
  4011.                 Exec(@SSQL)
  4012.                 If @@RowCount <> 0
  4013.                       Begin
  4014.                     Set @SSQL = ' Update ' + @VtoraBaza + '..KObjekti
  4015.                     Set Star_Kup=KO.Star_Kup, ImeObj=KO.ImeObj, ImeObj2=KO.ImeObj2, Adresa=KO.Adresa, 
  4016.                         Adresa2=KO.Adresa2, SMesto=KO.SMesto, Posta=KO.Posta, Zemja=KO.Zemja, Telefon=KO.Telefon, 
  4017.                         Tel1=KO.Tel1, Tel2=KO.Tel2, TelMobil=KO.TelMobil, Fax=KO.Fax, Telex=KO.Telex, 
  4018.                         EMail=KO.EMail, Kontakt=KO.Kontakt, Sifra_Pat=KO.Sifra_Pat, Sifra_Grad=KO.Sifra_Grad, 
  4019.                         TipKup=KO.TipKup, Sifra_Reg=KO.Sifra_Reg, Sifra_Nivo=KO.Sifra_Nivo, Sifra_Tip=KO.Sifra_Tip, 
  4020.                         Zabeleska=KO.Zabeleska, Aktiven=KO.Aktiven, BrProdMesta=KO.BrProdMesta, BrAktProdMesta=KO.BrAktProdMesta, 
  4021.                         KDrugo4=KO.KDrugo4, KDrugo3=KO.KDrugo3, KDrugo2=KO.KDrugo2, Kdrugo1=KO.Kdrugo1,
  4022.                         Sifra_Pat2=KO.Sifra_Pat2
  4023.                     From KObjekti KO
  4024.                     Where KO.Sifra_Kup = ''' + @Sifra_Kup + ''' and KO.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(5)) + ' 
  4025.                     and ' + @VtoraBaza + '..KObjekti.Sifra_Kup = ''' + @Sifra_Kup + ''' 
  4026.                     and ' + @VtoraBaza + '..KObjekti.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(5)) + ' '
  4027.                     Exec(@SSQL)
  4028.                      End  -- If  @@RowCount <> 0
  4029.                 Else
  4030.                      Begin
  4031.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..KObjekti Select * From KObjekti 
  4032.                                         Where Sifra_Kup = ''' + @Sifra_Kup + '''
  4033.                                         and Sifra_Obj= ' + cast(@Sifra_Obj as varchar(5)) + ' '
  4034.                      Exec(@SSQL)        
  4035.                      End  -- Else
  4036.             End -- DaliArt
  4037.             Set @Redovi = @Redovi - 1
  4038.                        end -- While
  4039.     End -- Propagiraj
  4040. End --Triger
  4041. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4042.  
  4043. Go
  4044. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Patnici_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Patnici_Vnes_Izmena
  4045.  
  4046. Go
  4047. CREATE   TRIGGER tr_Patnici_Vnes_Izmena 
  4048. ON dbo.Patnici
  4049. FOR INSERT, UPDATE
  4050. AS
  4051. BEGIN
  4052. Declare 
  4053.     @Sifra_Pat    smallint,
  4054.     @Propagiraj    char(1),
  4055.     @Redovi     smallint,
  4056.     @VtoraBaza    varchar(20),
  4057.     @DaliKup    char(1),
  4058.     @DaliPodelKup    char(1),
  4059.     @SSQL      varchar(8000)
  4060.     SELECT @Sifra_Pat = Sifra_Pat
  4061.     FROM INSERTED 
  4062. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4063.     Set @Propagiraj = (Select Propagiraj From Patnici Where Sifra_Pat = @Sifra_Pat)
  4064.     If @Propagiraj='D' 
  4065.     Begin
  4066.         Update Patnici Set Propagiraj=Null  Where Sifra_Pat = @Sifra_Pat
  4067.         Select Rbr, ImeBaza
  4068.         From FirParal
  4069.         Set @Redovi = @@RowCount
  4070.         While @Redovi > 0  
  4071.         Begin
  4072.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  4073.             If @DaliKup = 'D' And (@DaliPodelKup Is Null Or @DaliPodelKup<>'N')
  4074.             Begin
  4075.                 Set @SSQL =  ' Select  Sifra_Pat From ' + @VtoraBaza + '..Patnici
  4076.                         Where Sifra_Pat = ' + cast(@Sifra_Pat as varchar(5)) + ' '
  4077.                 Exec(@SSQL)
  4078.                 If @@RowCount <> 0
  4079.                       Begin
  4080.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Patnici
  4081.                     Set ImePat=P.ImePat, Adresa=P.Adresa, Adresa2=P.Adresa2, SMesto=P.SMesto, 
  4082.                         Posta=P.Posta, Zemja=P.Zemja, Aktiven=P.Aktiven, Telefon=P.Telefon, 
  4083.                         TelMobil=P.TelMobil, Fax=P.Fax, EMail=P.EMail, LK=P.LK, Sopst_Mat=P.Sopst_Mat
  4084.                     From Patnici P
  4085.                     Where P.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(5)) + ' 
  4086.                     and ' + @VtoraBaza + '..Patnici.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(5)) + ' '
  4087.                     Exec(@SSQL)
  4088.                      End  -- If  @@RowCount <> 0
  4089.                 Else
  4090.                      Begin
  4091.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Patnici Select * From Patnici Where Sifra_Pat= ' + cast(@Sifra_Pat as varchar(5)) + ' '
  4092.                      Exec(@SSQL)        
  4093.                      End  -- Else
  4094.             End -- DaliArt
  4095.             Set @Redovi = @Redovi - 1
  4096.                        end -- While
  4097.     End -- Propagiraj
  4098. End --Triger
  4099. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4100.  
  4101. Go
  4102. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Nalozi_Brnal' AND type = 'TR') DROP TRIGGER tr_Nalozi_Brnal
  4103.  
  4104. Go
  4105. CREATE  TRIGGER tr_Nalozi_Brnal
  4106. ON Nalozi
  4107. FOR INSERT
  4108. AS 
  4109. BEGIN
  4110.    Declare @Sifra_Nal Smallint
  4111.    Declare @Broj_Nal Int
  4112.    Declare @Datum_Nal Smalldatetime
  4113.    Declare @VleguvaVorekap char(1)
  4114.    SELECT @Sifra_Nal=Sifra_Nal, @Broj_Nal=Broj_Nal, @Datum_Nal=Datum_Nal, @VleguvaVorekap=VleguvaVorekap FROM Inserted
  4115.    IF @VleguvaVorekap IS NULL    SET @VleguvaVorekap=''
  4116. If @VleguvaVorekap <> 'N'
  4117. Begin
  4118.     IF EXISTS(SELECT * FROM Brnal WHERE Sifra_Nal=@Sifra_Nal)
  4119.         UPDATE Brnal SET Broj_Nal=@Broj_Nal, Datum_Nal=@Datum_Nal 
  4120.         WHERE Sifra_Nal=@Sifra_Nal
  4121.     ELSE
  4122.         INSERT INTO Brnal(Sifra_Nal, Broj_Nal, Datum_Nal)
  4123.         VALUES(@Sifra_Nal, @Broj_Nal, @Datum_Nal)
  4124. End
  4125. END
  4126.  
  4127. Go
  4128. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Drugo1_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Drugo1_Vnes_Izmena
  4129.  
  4130. Go
  4131. CREATE  TRIGGER tr_Drugo1_Vnes_Izmena 
  4132. ON dbo.Drugo1
  4133. FOR INSERT, UPDATE
  4134. AS
  4135. BEGIN
  4136. Declare 
  4137.     @Sifra_1    smallint,
  4138.     @Propagiraj    char(1),
  4139.     @Redovi     smallint,
  4140.     @VtoraBaza    varchar(20),
  4141.     @DaliArt    char(1),
  4142.     @SSQL      varchar(8000)
  4143.     SELECT @Sifra_1 = Sifra_1
  4144.     FROM INSERTED 
  4145. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4146.     Set @Propagiraj = (Select Propagiraj From Drugo1 Where Sifra_1 = @Sifra_1)
  4147.     If @Propagiraj='D' 
  4148.     Begin
  4149.         Update Drugo1 Set Propagiraj=Null  Where Sifra_1 = @Sifra_1
  4150.         Select Rbr, ImeBaza
  4151.         From FirParal
  4152.         Set @Redovi = @@RowCount
  4153.         While @Redovi > 0  
  4154.         Begin
  4155.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4156.             If @DaliArt = 'D'
  4157.             Begin
  4158.                 Set @SSQL =  ' Select  Sifra_1 From ' + @VtoraBaza + '..Drugo1
  4159.                         Where Sifra_1 = ' + cast(@Sifra_1 as varchar(5)) + ' '
  4160.                 Exec(@SSQL)
  4161.                 If @@RowCount <> 0
  4162.                       Begin
  4163.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Drugo1
  4164.                     Set Ime_1=D.Ime_1
  4165.                     From Drugo1 D
  4166.                     Where D.Sifra_1 = ' + cast(@Sifra_1 as varchar(5)) + ' 
  4167.                     and ' + @VtoraBaza + '..Drugo1.Sifra_1 = ' + cast(@Sifra_1 as varchar(5)) + ' '
  4168.                     Exec(@SSQL)
  4169.                      End  -- If  @@RowCount <> 0
  4170.                 Else
  4171.                      Begin
  4172.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Drugo1 Select * From Drugo1 Where Sifra_1= ' + cast(@Sifra_1 as varchar(5)) + ' '
  4173.                      Exec(@SSQL)        
  4174.                      End  -- Else
  4175.             End -- DaliArt
  4176.             Set @Redovi = @Redovi - 1
  4177.                        end -- While
  4178.     End -- Propagiraj
  4179. End --Triger
  4180. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4181.  
  4182. Go
  4183. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_StaNarac_Delete' AND type = 'TR') DROP TRIGGER tr_StaNarac_Delete
  4184.  
  4185. Go
  4186.  
  4187. CREATE                     TRIGGER tr_StaNarac_Delete
  4188. ON dbo.StaNarac
  4189. FOR DELETE
  4190. AS
  4191. BEGIN
  4192. DECLARE
  4193.     @Sifra_OE        Smallint,
  4194.     @Sifra_Nar        Smallint,
  4195.     @VlIzl            Char(1),
  4196.     @Sifra_Art        varchar(20),
  4197.     @Kolic            Decimal(18,6),
  4198.     @DokCena        Decimal(18,6),
  4199.     @POsn            Decimal(6,2),
  4200.     @Uces            Decimal(6,2),
  4201.     @DanDokCena        Char(1),
  4202.     @Sifra_GrNar        smallint,
  4203.     @soaVlez        Decimal(18,6),
  4204.     @soaIzlez        Decimal(18,6),
  4205.     @soaCena        Decimal(18,6),
  4206.     @Kolic_BO        Decimal(18,6),
  4207.     @soaVlez_BO        decimal(18,6),
  4208.     @soaIzlez_BO        decimal(18,6),
  4209.     @Prvo            int
  4210. set @Prvo = 1
  4211. Declare DelStavki Cursor Fast_Forward For
  4212. Select Sifra_OE, Sifra_Nar, Sifra_Art, Kolic, DokCena, POsn, Uces, DanDokCena, Kolic_BO
  4213. From Deleted
  4214. Open DelStavki
  4215. Fetch Next From DelStavki 
  4216. Into @Sifra_OE, @Sifra_Nar, @Sifra_Art, @Kolic, @DokCena, @POsn, @Uces, @DanDokCena, @Kolic_BO
  4217. While @@Fetch_Status = 0
  4218. Begin
  4219.    if @Prvo = 1
  4220.    begin
  4221.     set @Prvo = 0
  4222.     Select @VlIzl = VlIzl, @Sifra_GrNar = Sifra_GrNar 
  4223.     FROM TipNarac WHERE Sifra_Nar = @Sifra_Nar
  4224.    end
  4225.    If @Sifra_GrNar IS NOT NULL 
  4226.    Begin
  4227.         if @Kolic_BO is null
  4228.         set @Kolic_BO = 0
  4229.     -- Barame zapis vo SoNar
  4230.     Select @soaVlez=Vlez, @soaIzlez=Izlez, @SoaVlez_BO=Vlez_BO, @SoaIzlez_BO=Izlez_BO FROM SoNar
  4231.     Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  4232.     -- Ako ne postoi dodavame nov
  4233.     IF @@ROWCOUNT = 0
  4234.         Begin        
  4235.             if @SoaVlez_BO is null
  4236.                 set @SoaVlez_BO = 0
  4237.                 if @SoaIzlez_BO is null
  4238.                 set @SoaIzlez_BO = 0
  4239.             If @VlIzl = 'V'
  4240.                 Begin
  4241.                     Set @soaVlez = - @Kolic
  4242.                     Set @soaIzlez = 0
  4243.                     Set @soaCena = @DokCena
  4244.                     Set @soaVlez_BO = - @Kolic_BO
  4245.                     Set @soaIzlez_BO = 0
  4246.                 End
  4247.             Else
  4248.                 Begin
  4249.                     Set @soaVlez = 0
  4250.                     Set @soaIzlez = - @Kolic
  4251.                     Set @soaCena = @DokCena * (1 - @Uces / 100)
  4252.                     Set @soaVlez_BO = 0
  4253.                     Set @soaIzlez_BO = - @Kolic_BO
  4254.                 End
  4255.             Insert SoNar (Sifra_OE, Sifra_Art, Sifra_GrNar, Vlez, Izlez, Cena, DanCena, POsn, Vlez_BO, Izlez_BO)
  4256.             Values(@Sifra_OE,@Sifra_Art,@Sifra_GrNar,@soaVlez,@soaIzlez,@soaCena,@DanDokCena,@Posn, @soaVlez_BO, @soaIzlez_BO)
  4257.         End
  4258.     ELSE    
  4259.         Begin
  4260.             if @SoaVlez_BO is null
  4261.                 set @SoaVlez_BO = 0
  4262.                 if @SoaIzlez_BO is null
  4263.                 set @SoaIzlez_BO = 0
  4264.             If @VlIzl = 'V'
  4265.                         begin
  4266.                 Set @soaVlez = @soaVlez - @Kolic
  4267.                 Set @soaVlez_BO = @soaVlez_BO - @Kolic_BO
  4268.             end
  4269.             Else 
  4270.             begin
  4271.                 Set @soaIzlez = @soaIzlez - @Kolic
  4272.                 set @soaIzlez_BO = @soaIzlez_BO - @Kolic_BO
  4273.             end
  4274.             Update SoNar
  4275.             Set Vlez=@soaVlez, Izlez=@soaIzlez, Vlez_BO=@soaVlez_BO, Izlez_BO=@soaIzlez_BO
  4276.             Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art AND Sifra_GrNar=@Sifra_GrNar
  4277.         END        
  4278.    End
  4279.    Fetch Next From DelStavki 
  4280.    Into @Sifra_OE, @Sifra_Nar, @Sifra_Art, @Kolic, @DokCena, @POsn, @Uces, @DanDokCena, @Kolic_BO
  4281. End --While
  4282. Close DelStavki
  4283. Deallocate DelStavki
  4284. END
  4285.  
  4286. Go
  4287. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Drugo6_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Drugo6_Vnes_Izmena
  4288.  
  4289. Go
  4290. CREATE  TRIGGER tr_Drugo6_Vnes_Izmena 
  4291. ON dbo.Drugo6
  4292. FOR INSERT, UPDATE
  4293. AS
  4294. BEGIN
  4295. Declare 
  4296.     @Sifra_6    smallint,
  4297.     @Propagiraj    char(1),
  4298.     @Redovi     smallint,
  4299.     @VtoraBaza    varchar(20),
  4300.     @DaliArt    char(1),
  4301.     @SSQL      varchar(8000)
  4302.     SELECT @Sifra_6 = Sifra_6
  4303.     FROM INSERTED 
  4304. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4305.     Set @Propagiraj = (Select Propagiraj From Drugo6 Where Sifra_6 = @Sifra_6)
  4306.     If @Propagiraj='D' 
  4307.     Begin
  4308.         Update Drugo6 Set Propagiraj=Null  Where Sifra_6 = @Sifra_6
  4309.         Select Rbr, ImeBaza
  4310.         From FirParal
  4311.         Set @Redovi = @@RowCount
  4312.         While @Redovi > 0  
  4313.         Begin
  4314.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4315.             If @DaliArt = 'D'
  4316.             Begin
  4317.                 Set @SSQL =  ' Select  Sifra_6 From ' + @VtoraBaza + '..Drugo6
  4318.                         Where Sifra_6 = ' + cast(@Sifra_6 as varchar(5)) + ' '
  4319.                 Exec(@SSQL)
  4320.                 If @@RowCount <> 0
  4321.                       Begin
  4322.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Drugo6
  4323.                     Set Ime_6=D.Ime_6
  4324.                     From Drugo6 D
  4325.                     Where D.Sifra_6 = ' + cast(@Sifra_6 as varchar(5)) + ' 
  4326.                     and ' + @VtoraBaza + '..Drugo6.Sifra_6 = ' + cast(@Sifra_6 as varchar(5)) + ' '
  4327.                     Exec(@SSQL)
  4328.                      End  -- If  @@RowCount <> 0
  4329.                 Else
  4330.                      Begin
  4331.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Drugo6 Select * From Drugo6 Where Sifra_6= ' + cast(@Sifra_6 as varchar(5)) + ' '
  4332.                      Exec(@SSQL)        
  4333.                      End  -- Else
  4334.             End -- DaliArt
  4335.             Set @Redovi = @Redovi - 1
  4336.                        end -- While
  4337.     End -- Propagiraj
  4338. End --Triger
  4339. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4340.  
  4341. Go
  4342. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Naracki_Brnar' AND type = 'TR') DROP TRIGGER tr_Naracki_Brnar
  4343.  
  4344. Go
  4345. CREATE   TRIGGER tr_Naracki_Brnar
  4346. ON dbo.Naracki
  4347. FOR INSERT
  4348. AS 
  4349. BEGIN
  4350.    Declare @Sifra_OE Smallint
  4351.    Declare @Sifra_Nar Smallint
  4352.    Declare @Broj_Nar Int
  4353.    SELECT @Sifra_OE=Sifra_OE, @Sifra_Nar=Sifra_Nar, @Broj_Nar=Broj_Nar FROM Inserted
  4354.    IF EXISTS(SELECT * FROM Brnar WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar)
  4355.       UPDATE Brnar SET Broj_Nar=@Broj_Nar WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar
  4356.    ELSE
  4357.       INSERT INTO Brnar(Sifra_OE, Sifra_Nar, Broj_Nar)
  4358.          VALUES(@Sifra_OE, @Sifra_Nar, @Broj_Nar)
  4359. END
  4360.  
  4361. Go
  4362. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Drugo2_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Drugo2_Vnes_Izmena
  4363.  
  4364. Go
  4365.  
  4366. CREATE  TRIGGER tr_Drugo2_Vnes_Izmena 
  4367. ON dbo.Drugo2
  4368. FOR INSERT, UPDATE
  4369. AS
  4370. BEGIN
  4371. Declare 
  4372.     @Sifra_2    smallint,
  4373.     @Propagiraj    char(1),
  4374.     @Redovi     smallint,
  4375.     @VtoraBaza    varchar(20),
  4376.     @DaliArt    char(1),
  4377.     @SSQL      varchar(8000)
  4378.     SELECT @Sifra_2 = Sifra_2
  4379.     FROM INSERTED 
  4380. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4381.     Set @Propagiraj = (Select Propagiraj From Drugo2 Where Sifra_2 = @Sifra_2)
  4382.     If @Propagiraj='D' 
  4383.     Begin
  4384.         Update Drugo2 Set Propagiraj=Null  Where Sifra_2 = @Sifra_2
  4385.         Select Rbr, ImeBaza
  4386.         From FirParal
  4387.         Set @Redovi = @@RowCount
  4388.         While @Redovi > 0  
  4389.         Begin
  4390.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4391.             If @DaliArt = 'D'
  4392.             Begin
  4393.                 Set @SSQL =  ' Select  Sifra_2 From ' + @VtoraBaza + '..Drugo2
  4394.                         Where Sifra_2 = ' + cast(@Sifra_2 as varchar(5)) + ' '
  4395.                 Exec(@SSQL)
  4396.                 If @@RowCount <> 0
  4397.                       Begin
  4398.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Drugo2
  4399.                     Set Ime_2=D.Ime_2
  4400.                     From Drugo2 D
  4401.                     Where D.Sifra_2 = ' + cast(@Sifra_2 as varchar(5)) + ' 
  4402.                     and ' + @VtoraBaza + '..Drugo2.Sifra_2 = ' + cast(@Sifra_2 as varchar(5)) + ' '
  4403.                     Exec(@SSQL)
  4404.                      End  -- If  @@RowCount <> 0
  4405.                 Else
  4406.                      Begin
  4407.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Drugo2 Select * From Drugo2 Where Sifra_2= ' + cast(@Sifra_2 as varchar(5)) + ' '
  4408.                      Exec(@SSQL)        
  4409.                      End  -- Else
  4410.             End -- DaliArt
  4411.             Set @Redovi = @Redovi - 1
  4412.                        end -- While
  4413.     End -- Propagiraj
  4414. End --Triger
  4415. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4416.  
  4417. Go
  4418. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KatArt_Vnes' AND type = 'TR') DROP TRIGGER tr_KatArt_Vnes
  4419.  
  4420. Go
  4421. CREATE  TRIGGER tr_KatArt_Vnes 
  4422. ON dbo.KatArt 
  4423. FOR INSERT, UPDATE
  4424. AS
  4425. BEGIN
  4426. Declare 
  4427.     @Sifra_Art    varchar(20),
  4428.     @Lokacija    varchar(10),
  4429.     @Propagiraj    char(1),
  4430.     @Redovi     smallint,
  4431.     @VtoraBaza    varchar(20),
  4432.     @DaliArt    char(1),
  4433.     @DaliArtCeni    char(1),
  4434.     @SSQL      varchar(8000)
  4435.     SELECT @Sifra_Art = Sifra_Art, @Lokacija = Lokacija
  4436.     FROM INSERTED 
  4437.     --If Not Exists (Select Sifra_Art From KatLokProm Where Sifra_Art = @Sifra_Art) And @Lokacija IS NOT NULL
  4438.     --    INSERT INTO KatLokProm (Sifra_Art, Nova_Lok, Datum_Prom, Sifra_Oper)
  4439.     --    VALUES (@Sifra_Art, @Lokacija, GETDATE(), SUSER_SNAME())   -- gk; dm 23.08.2010 
  4440.     ------------------------------------------------ Istorija za promena Artiklite ------------------------------------------------------------------------
  4441.     Insert Into KatartH (Sifra_Art, ImeArt, ImeArt2, EdMera, Alt_Ime, Alt_Ime2, Alt_EdMera, Sifra_Podg, Sifra_Tar, 
  4442.             Kto, Cena, Sostojba, CarBroj, SMatUsl, Sifra_Drg, KolkuDrg, Drugo1, Drugo2, Drugo3, Drugo4, Drugo5, 
  4443.             DaliSurov, Uces, Datum_Cena, Fakturna, Nabavna, DogCena, MalCena, GotCena, SpeCena, PCena4, PCena5, 
  4444.             PCena6, Proc_Marza, Nom, SMin_Sost, SMax_Sost, SOpt_Sost, Lokacija, Popust, ImaBroevi, ImaKomerc, 
  4445.             Tezina, PopusMar, IzmenetNa, IzmenetOd, Alt_Sifra, Iskluci, SpecRabat, SpecRabatOd, SpecRabatDo, BTezina, 
  4446.             Volumen, Rabat_Dali, SodrziEd, Propagiraj, ProcAlk, RokKontrDali, Aktiven, Sifra_Amb, Prenesen, Rok_Tra, 
  4447.             ImaPaleta, RokTraDen, PDA_Ime, Sifra_Div, Sif_Depoz_Amb, Sifra_KHier, Kto_Anal, DeklArt, Koef, Drugo6, Drugo7, 
  4448.             ProcKalo, VoPDA, MKProiz, AkcijaDali, Sifra_ATC)
  4449.     Select Sifra_Art, ImeArt, ImeArt2, EdMera, Alt_Ime, Alt_Ime2, Alt_EdMera, Sifra_Podg, Sifra_Tar, 
  4450.             Kto, Cena, Sostojba, CarBroj, SMatUsl, Sifra_Drg, KolkuDrg, Drugo1, Drugo2, Drugo3, Drugo4, Drugo5, 
  4451.             DaliSurov, Uces, Datum_Cena, Fakturna, Nabavna, DogCena, MalCena, GotCena, SpeCena, PCena4, PCena5, 
  4452.             PCena6, Proc_Marza, Nom, SMin_Sost, SMax_Sost, SOpt_Sost, Lokacija, Popust, ImaBroevi, ImaKomerc, 
  4453.             Tezina, PopusMar, GetDate(), SUser_SName(), Alt_Sifra, Iskluci, SpecRabat, SpecRabatOd, SpecRabatDo, BTezina, 
  4454.             Volumen, Rabat_Dali, SodrziEd, Propagiraj, ProcAlk, RokKontrDali, Aktiven, Sifra_Amb, Prenesen, Rok_Tra, 
  4455.             ImaPaleta, RokTraDen, PDA_Ime, Sifra_Div, Sif_Depoz_Amb, Sifra_KHier, Kto_Anal, DeklArt, Koef, Drugo6, Drugo7, 
  4456.             ProcKalo, VoPDA, MKProiz, AkcijaDali, Sifra_ATC
  4457.     From Inserted
  4458. -------------------------------------  Dodadeno 20.09.2004  za Azuriranje na Paralelni Bazi --------------------------
  4459.     Set @Propagiraj = (Select Propagiraj From Katart Where Sifra_Art = @Sifra_Art)
  4460.     If @Propagiraj='D' 
  4461.     Begin
  4462.         Update Katart Set Propagiraj=Null  Where Sifra_Art = @Sifra_Art
  4463.         Select Rbr, ImeBaza, DaliArt, DaliArtCeni 
  4464.         From FirParal
  4465.         Set @Redovi = @@RowCount
  4466.         While @Redovi > 0  
  4467.         Begin
  4468.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt, @DaliArtCeni=DaliArtCeni From FirParal Where Rbr=@Redovi    
  4469.             If @DaliArt = 'D'
  4470.                     Begin
  4471.                 Set @SSQL =  ' Select  Sifra_Art From ' + @VtoraBaza + '..Katart
  4472.                     Where Sifra_Art = ''' + @Sifra_Art + ''' '
  4473.                 Exec(@SSQL)
  4474.                 If @@RowCount <> 0
  4475.                       Begin
  4476.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Katart
  4477.                     Set ImeArt=K.ImeArt, ImeArt2=K.ImeArt2, EdMera=K.EdMera, Alt_Ime=K.Alt_Ime, Alt_Ime2=K.Alt_Ime2, 
  4478.                     Alt_EdMera=K.Alt_EdMera, Sifra_Podg=K.Sifra_Podg, Sifra_Tar=K.Sifra_Tar, Kto=K.Kto, Cena=K.Cena, 
  4479.                     Sostojba=K.Sostojba, CarBroj=K.CarBroj, SMatUsl=K.SMatUsl, Sifra_Drg=K.Sifra_Drg, KolkuDrg=K.KolkuDrg, 
  4480.                     Drugo1=K.Drugo1, Drugo2=K.Drugo2, Drugo3=K.Drugo3, Drugo4=K.Drugo4, Drugo5=K.Drugo5, 
  4481.                     DaliSurov=K.DaliSurov, Uces=K.Uces, Datum_Cena=K.Datum_Cena, Fakturna=K.Fakturna, Nabavna=K.Nabavna, 
  4482.                     PCena4=K.PCena4, PCena5=K.PCena5, PCena6=K.PCena6, Proc_Marza=K.Proc_Marza, Nom=K.Nom, 
  4483.                     SMin_Sost=K.SMin_Sost, SMax_Sost=K.SMax_Sost, SOpt_Sost=K.SOpt_Sost, Lokacija=K.Lokacija, 
  4484.                     Popust=K.Popust, ImaBroevi=K.ImaBroevi, ImaKomerc=K.ImaKomerc, Tezina=K.Tezina, PopusMar=K.PopusMar, 
  4485.                     DodadenNa=K.DodadenNa, DodadenOd=K.DodadenOd, IzmenetNa=K.IzmenetNa, IzmenetOd=K.IzmenetOd, 
  4486.                     Alt_Sifra=K.Alt_Sifra, Iskluci=K.Iskluci, SpecRabat=K.SpecRabat, SpecRabatOd=K.SpecRabatOd, 
  4487.                     SpecRabatDo=K.SpecRabatDo, BTezina=K.BTezina, Volumen=K.Volumen, Rabat_Dali=K.Rabat_Dali, 
  4488.                     SodrziEd=K.SodrziEd, ProcAlk=K.ProcAlk, RokKontrDali=K.RokKontrDali, Aktiven=K.Aktiven, Sifra_Amb=K.Sifra_Amb,
  4489.                     MKProiz=K.MkProiz '
  4490.                     If @DaliArtCeni = 'D'
  4491.                     Begin
  4492.                         Set @SSQL = @SSQL + ', DogCena=K.DogCena, MalCena=K.MalCena, GotCena=K.GotCena, 
  4493.                                     SpeCena=K.SpeCena '
  4494.                     End
  4495.                     Set @SSQL = @SSQL + ' From Katart K
  4496.                     Where K.Sifra_Art = ''' + @Sifra_Art + ''' 
  4497.                     and ' + @VtoraBaza + '..Katart.Sifra_Art = ''' + @Sifra_Art + ''' '
  4498.                     Exec(@SSQL)
  4499.                      End  -- If  @@RowCount <> 0
  4500.                 Else
  4501.                      Begin
  4502.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Katart Select * From Katart Where Sifra_Art= ''' + @Sifra_Art + ''' '
  4503.                      Exec(@SSQL)        
  4504.                      End  -- Else
  4505.                   End --If @DaliKup = 'D'
  4506.             Set @Redovi = @Redovi - 1
  4507.                   end -- While
  4508.     End -- Propagiraj
  4509. End --Triger
  4510. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4511.  
  4512. Go
  4513. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Drugo3_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Drugo3_Vnes_Izmena
  4514.  
  4515. Go
  4516.  
  4517. CREATE  TRIGGER tr_Drugo3_Vnes_Izmena 
  4518. ON dbo.Drugo3
  4519. FOR INSERT, UPDATE
  4520. AS
  4521. BEGIN
  4522. Declare 
  4523.     @Sifra_3    smallint,
  4524.     @Propagiraj    char(1),
  4525.     @Redovi     smallint,
  4526.     @VtoraBaza    varchar(20),
  4527.     @DaliArt    char(1),
  4528.     @SSQL      varchar(8000)
  4529.     SELECT @Sifra_3 = Sifra_3
  4530.     FROM INSERTED 
  4531. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4532.     Set @Propagiraj = (Select Propagiraj From Drugo3 Where Sifra_3 = @Sifra_3)
  4533.     If @Propagiraj='D' 
  4534.     Begin
  4535.         Update Drugo3 Set Propagiraj=Null  Where Sifra_3 = @Sifra_3
  4536.         Select Rbr, ImeBaza
  4537.         From FirParal
  4538.         Set @Redovi = @@RowCount
  4539.         While @Redovi > 0  
  4540.         Begin
  4541.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4542.             If @DaliArt = 'D'
  4543.             Begin
  4544.                 Set @SSQL =  ' Select  Sifra_3 From ' + @VtoraBaza + '..Drugo3
  4545.                         Where Sifra_3 = ' + cast(@Sifra_3 as varchar(5)) + ' '
  4546.                 Exec(@SSQL)
  4547.                 If @@RowCount <> 0
  4548.                       Begin
  4549.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Drugo3
  4550.                     Set Ime_3=D.Ime_3
  4551.                     From Drugo3 D
  4552.                     Where D.Sifra_3 = ' + cast(@Sifra_3 as varchar(5)) + ' 
  4553.                     and ' + @VtoraBaza + '..Drugo3.Sifra_3 = ' + cast(@Sifra_3 as varchar(5)) + ' '
  4554.                     Exec(@SSQL)
  4555.                      End  -- If  @@RowCount <> 0
  4556.                 Else
  4557.                      Begin
  4558.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Drugo3 Select * From Drugo3 Where Sifra_3= ' + cast(@Sifra_3 as varchar(5)) + ' '
  4559.                      Exec(@SSQL)        
  4560.                      End  -- Else
  4561.             End -- DaliArt
  4562.             Set @Redovi = @Redovi - 1
  4563.                        end -- While
  4564.     End -- Propagiraj
  4565. End --Triger
  4566. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4567.  
  4568. Go
  4569. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tg_Komint_Insert' AND type = 'TR') DROP TRIGGER tg_Komint_Insert
  4570.  
  4571. Go
  4572.  
  4573.  
  4574. CREATE      TRIGGER tg_Komint_Insert
  4575. ON dbo.Komint
  4576. FOR INSERT, UPDATE
  4577. AS 
  4578. BEGIN
  4579.     Declare @Sifra_Kup Char(6)
  4580.     Declare @VtoraBaza as Varchar(20)
  4581.     Declare @DaliKup as char(1)
  4582.     Declare @DaliPodelKup as char(1)
  4583.     Declare @SSQL as varchar(8000)
  4584.     Declare @ImeKup Varchar(40)
  4585.     Declare @Redovi as Smallint
  4586.     Declare @Propagiraj as char(1)
  4587. -------------------------------------  Od Stariot Triger -------------------------------------------------------------------------------------
  4588.     Select @Sifra_Kup=Sifra_Kup, @ImeKup=ImeKup From Inserted
  4589.     -- UPDATE Komint SET DodadenNa=GetDate(), DodadenOd=SUser_SName() WHERE Sifra_Kup = @Sifra_Kup   Trgnato 12.08.2010 (staveno vo procedurata)
  4590.     If Not Exists (Select Sifra_Obj From KObjekti Where Sifra_Kup = @Sifra_Kup)
  4591.         Insert KObjekti (Sifra_Kup, Sifra_Obj, ImeObj)
  4592.         Values (@Sifra_Kup, 0, @ImeKup)
  4593. ------------------------------------------------ Istorija za promena komintenti ------------------------------------------------------------------------
  4594. -------- Log za izmena na komintenti -------
  4595.     Insert Into KomintH (Sifra_Kup, ImeKup, ImeKup2, Adresa, Adresa2, SMesto, Posta, Zemja, ImaObj, IspAdresa, IspAdresa2, IspMesto, IspPosta, IspZemja, 
  4596.                 Telefon, Tel1, Tel2, TelMobil, Fax, Telex, EMail, AdrWeb, Sopstvenik, LK, Sopst_Mat, Danocen, Ziro, Ziro2, Banka, Banka2, 
  4597.                 Sifra_Ban, Sifra_Ban2, BRIZJAVA, KONTAKT, Sifra_Pat, Sifra_Grad, TipKup, Sifra_reg, Sifra_Nivo, Sifra_Tip, KDrugo1, KDrugo2, 
  4598.                 KDrugo3, KDrugo4, KDrugo5, Uces, KojaSmetka, Rok_Dosp, Kasa, KojaCena, BrPoseti, DirDistr, ZemaOd, Zabeleska, Aktiven, BrProdMesta, 
  4599.                 BrAktProdMesta, IzmenetNa, IzmenetOd, ImaBanka, Alt_ImeKup, Alt_Adresa, DogovorBroj, MozeIsporaka, Garancija, Propagiraj, MatBr, Sifra_Pat2,
  4600.                 Sopst_Adr, Sopst_Mesto, Prenesen, ForsUces, Limit_Dolzi, Prioritet, FraRepr, Aneks1, Aneks2, God_Rabat, Spec_Rabat, m2, Sifra_VPJ, Rok_Dobav, 
  4601.                 Uces_Kol, SkrOznaka, KDrugo6, KDrugo7, MemoKup, Priv_Lice, VidStalazi, TolerDena_Dosp)
  4602.     Select Sifra_Kup, ImeKup, ImeKup2, Adresa, Adresa2, SMesto, Posta, Zemja, ImaObj, IspAdresa, IspAdresa2, IspMesto, IspPosta, IspZemja, 
  4603.                 Telefon, Tel1, Tel2, TelMobil, Fax, Telex, EMail, AdrWeb, Sopstvenik, LK, Sopst_Mat, Danocen, Ziro, Ziro2, Banka, Banka2, 
  4604.                 Sifra_Ban, Sifra_Ban2, BRIZJAVA, KONTAKT, Sifra_Pat, Sifra_Grad, TipKup, Sifra_reg, Sifra_Nivo, Sifra_Tip, KDrugo1, KDrugo2, 
  4605.                 KDrugo3, KDrugo4, KDrugo5, Uces, KojaSmetka, Rok_Dosp, Kasa, KojaCena, BrPoseti, DirDistr, ZemaOd, Zabeleska, Aktiven, BrProdMesta, 
  4606.                 BrAktProdMesta, GetDate(), Suser_Sname(), ImaBanka, Alt_ImeKup, Alt_Adresa, DogovorBroj, MozeIsporaka, Garancija, Propagiraj, MatBr, Sifra_Pat2,
  4607.                 Sopst_Adr, Sopst_Mesto, Prenesen, ForsUces, Limit_Dolzi, Prioritet, FraRepr, Aneks1, Aneks2, God_Rabat, Spec_Rabat, m2, Sifra_VPJ, Rok_Dobav, 
  4608.                 Uces_Kol, SkrOznaka, KDrugo6, KDrugo7, MemoKup, Priv_Lice, VidStalazi, TolerDena_Dosp
  4609.     From Inserted
  4610. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4611. -------------------------------------  Dodadeno 20.09.2004  za Azuriranje na Paralelni Bazi -------------------------------------------
  4612.     Set @Propagiraj = (Select Propagiraj From Komint Where Sifra_Kup = @Sifra_Kup)
  4613.     If @Propagiraj='D' 
  4614.     Begin
  4615.         Update Komint Set Propagiraj=Null  Where Sifra_Kup = @Sifra_Kup        
  4616.         Select Rbr, ImeBaza, DaliKup, DaliPodelKup
  4617.         From FirParal
  4618.         Set @Redovi = @@RowCount
  4619.         While @Redovi > 0  
  4620.         Begin
  4621.             Select @VtoraBaza=ImeBaza, @DaliKup=DaliKup, @DaliPodelKup=DaliPodelKup From FirParal Where Rbr=@Redovi    
  4622.             If @DaliKup = 'D'
  4623.                     Begin
  4624.                 Set @SSQL =  ' Select  Sifra_Kup From ' + @VtoraBaza + '..Komint
  4625.                     Where Sifra_Kup = ' + @Sifra_Kup + ' '
  4626.                 Exec(@SSQL)
  4627.                 If @@RowCount <> 0--Exists Exec(@SSQL)
  4628.                       Begin
  4629.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Komint
  4630.                             Set ImeKup=K.ImeKup, ImeKup2=K.ImeKup2, Adresa=K.Adresa, Adresa2=K.Adresa2, SMesto=K.SMesto, Posta=K.Posta, Zemja=K.Zemja, 
  4631.                             ImaObj=K.ImaObj, IspAdresa=K.IspAdresa, IspAdresa2=K.IspAdresa2, IspMesto=K.IspMesto, IspPosta=K.IspPosta, 
  4632.                             IspZemja=K.IspZemja, Telefon=K.Telefon, Tel1=K.Tel1, Tel2=K.Tel2, TelMobil=K.TelMobil, Fax=K.Fax, Telex=K.Telex, 
  4633.                             EMail=K.EMail, AdrWeb=K.AdrWeb, Sopstvenik=K.Sopstvenik, LK=K.LK, Sopst_Mat=K.Sopst_Mat, Danocen=K.Danocen, 
  4634.                             Ziro=K.Ziro, Ziro2=K.Ziro2, Banka=K.Banka, Banka2=K.Banka2, Sifra_Ban=K.Sifra_Ban, Sifra_Ban2=K.Sifra_Ban2, 
  4635.                             KONTAKT=K.KONTAKT, KojaSmetka=K.KojaSmetka, DodadenNa=K.DodadenNa, DodadenOd=K.DodadenOd, 
  4636.                             IzmenetNa=K.IzmenetNa, IzmenetOd=K.IzmenetOd, ImaBanka=K.ImaBanka, Alt_ImeKup=K.Alt_ImeKup, Alt_Adresa=K.Alt_Adresa, 
  4637.                             Garancija=K.Garancija, MatBr=K.MatBr, Sopst_Adr=K.Sopst_Adr, Sopst_Mesto=K.Sopst_Mesto,
  4638.                             FraRepr=K.FraRepr, m2=K.m2 '
  4639.                     If @DaliPodelKup <> 'N' Or @DaliPodelKup Is Null
  4640.                         Set @SSQL = @SSQL + ', Sifra_Pat=K.Sifra_Pat, Sifra_Grad=K.Sifra_Grad, TipKup=K.TipKup, 
  4641.                             Sifra_reg=K.Sifra_reg, Sifra_Nivo=K.Sifra_Nivo, Sifra_Tip=K.Sifra_Tip, KDrugo1=K.KDrugo1, KDrugo2=K.KDrugo2, 
  4642.                             KDrugo3=K.KDrugo3, KDrugo4=K.KDrugo4, KDrugo5=K.KDrugo5, Sifra_Pat2=K.Sifra_Pat2, Sifra_VPJ=K.Sifra_VPJ,
  4643.                             Uces=K.Uces, Rok_Dosp=K.Rok_Dosp, Kasa=K.Kasa, KojaCena=K.KojaCena, God_Rabat=K.God_Rabat, Spec_Rabat=K.Spec_Rabat, 
  4644.                             Rok_Dobav=K.Rok_Dobav, Uces_Kol=K.Uces_Kol, BRIZJAVA=K.BRIZJAVA, 
  4645.                             DogovorBroj=K.DogovorBroj, BrPoseti=K.BrPoseti, DirDistr=K.DirDistr, ZemaOd=K.ZemaOd, Zabeleska=K.Zabeleska,
  4646.                             Aktiven=K.Aktiven, BrProdMesta=K.BrProdMesta, BrAktProdMesta=K.BrAktProdMesta,  
  4647.                             ForsUces=K.ForsUces, Aneks1=K.Aneks1, Aneks2=K.Aneks2, Prioritet=K.Prioritet '
  4648.                     If @DaliPodelKup <> 'L' Or @DaliPodelKup Is Null
  4649.                         Set @SSQL = @SSQL + ', Limit_Dolzi=K.Limit_Dolzi '--,MozeIsporaka=K.MozeIsporaka  ' trgnato 18.05.2011 PKB
  4650.                     Set @SSQL = @SSQL + ' From Komint K
  4651.                             Where K.Sifra_Kup = ''' + @Sifra_Kup + ''' 
  4652.                             and ' + @VtoraBaza + '..Komint.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  4653.                     Exec(@SSQL)
  4654.                      End  -- If  @@RowCount <> 0
  4655.                 Else
  4656.                      Begin
  4657.                     --Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Komint Select * From Komint Where Sifra_Kup= ''' + @Sifra_Kup + ''' '
  4658.                      Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Komint 
  4659.                             (Sifra_Kup, ImeKup, ImeKup2, Adresa, Adresa2, SMesto, Posta, Zemja, ImaObj, IspAdresa, 
  4660.                              IspAdresa2, IspMesto, IspPosta, IspZemja, Telefon, Tel1, Tel2, TelMobil, Fax, Telex, 
  4661.                              EMail, AdrWeb, Sopstvenik, LK, Sopst_Mat, Danocen, Ziro, Ziro2, Banka, Banka2, Sifra_Ban, 
  4662.                              Sifra_Ban2, KONTAKT, KojaSmetka, 
  4663.                              DodadenNa, DodadenOd, IzmenetNa, IzmenetOd, ImaBanka, Alt_ImeKup, Alt_Adresa,  
  4664.                              Garancija, Propagiraj, MatBr, Sopst_Adr, Sopst_Mesto, Prenesen, 
  4665.                              FraRepr, m2 '
  4666.                     If @DaliPodelKup <> 'N' Or @DaliPodelKup Is Null
  4667.                         Set @SSQL = @SSQL + ', Sifra_Pat, Sifra_Grad, TipKup, Sifra_reg, Sifra_Nivo, 
  4668.                              Sifra_Tip, KDrugo1, KDrugo2, KDrugo3, KDrugo4, KDrugo5, Sifra_Pat2, Sifra_VPJ,
  4669.                              Uces, Rok_Dosp, Kasa, KojaCena, God_Rabat, Spec_Rabat, Rok_Dobav, Uces_Kol, BRIZJAVA,
  4670.                              DogovorBroj, BrPoseti, DirDistr, ZemaOd,  Aktiven, BrProdMesta, BrAktProdMesta,
  4671.                              ForsUces, Aneks1, Aneks2, Prioritet  '
  4672.                     If @DaliPodelKup <> 'L' Or @DaliPodelKup Is Null
  4673.                         Set @SSQL = @SSQL + ', Limit_Dolzi '--MozeIsporaka ' trgnato 18.05.2011 PKB
  4674.                     Set @SSQL = @SSQL + ') 
  4675.                              Select 
  4676.                              Sifra_Kup, ImeKup, ImeKup2, Adresa, Adresa2, SMesto, Posta, Zemja, ImaObj, IspAdresa, 
  4677.                              IspAdresa2, IspMesto, IspPosta, IspZemja, Telefon, Tel1, Tel2, TelMobil, Fax, Telex, 
  4678.                              EMail, AdrWeb, Sopstvenik, LK, Sopst_Mat, Danocen, Ziro, Ziro2, Banka, Banka2, Sifra_Ban, 
  4679.                              Sifra_Ban2, KONTAKT, KojaSmetka, 
  4680.                              DodadenNa, DodadenOd, IzmenetNa, IzmenetOd, ImaBanka, Alt_ImeKup, Alt_Adresa,  
  4681.                              Garancija, Propagiraj, MatBr, Sopst_Adr, Sopst_Mesto, Prenesen, 
  4682.                              FraRepr, m2 '
  4683.                     If @DaliPodelKup <> 'N' Or @DaliPodelKup Is Null
  4684.                         Set @SSQL = @SSQL + ', Sifra_Pat, Sifra_Grad, TipKup, Sifra_reg, Sifra_Nivo, 
  4685.                              Sifra_Tip, KDrugo1, KDrugo2, KDrugo3, KDrugo4, KDrugo5, Sifra_Pat2, Sifra_VPJ,
  4686.                              Uces, Rok_Dosp, Kasa, KojaCena, God_Rabat, Spec_Rabat, Rok_Dobav, Uces_Kol, BRIZJAVA,
  4687.                              DogovorBroj, BrPoseti, DirDistr, ZemaOd,  Aktiven, BrProdMesta, BrAktProdMesta,
  4688.                              ForsUces, Aneks1, Aneks2, Prioritet '
  4689.                     If @DaliPodelKup <> 'L' Or @DaliPodelKup Is Null
  4690.                         Set @SSQL = @SSQL + ', Limit_Dolzi '--, MozeIsporaka ' trgnato 18.05.2011 PKB
  4691.                     Set @SSQL = @SSQL + ' From Komint Where Sifra_Kup= ''' + @Sifra_Kup + ''' '
  4692.                      Exec(@SSQL)        
  4693.                    End  -- Else
  4694.                   End --If @DaliKup = 'D'
  4695.             Set @Redovi = @Redovi - 1
  4696.                   end -- While
  4697.     End -- Propagiraj
  4698. End --Triger
  4699. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4700.  
  4701. Go
  4702. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Drugo4_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Drugo4_Vnes_Izmena
  4703.  
  4704. Go
  4705.  
  4706. CREATE  TRIGGER tr_Drugo4_Vnes_Izmena 
  4707. ON dbo.Drugo4
  4708. FOR INSERT, UPDATE
  4709. AS
  4710. BEGIN
  4711. Declare 
  4712.     @Sifra_4    smallint,
  4713.     @Propagiraj    char(1),
  4714.     @Redovi     smallint,
  4715.     @VtoraBaza    varchar(20),
  4716.     @DaliArt    char(1),
  4717.     @SSQL      varchar(8000)
  4718.     SELECT @Sifra_4 = Sifra_4
  4719.     FROM INSERTED 
  4720. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4721.     Set @Propagiraj = (Select Propagiraj From Drugo4 Where Sifra_4 = @Sifra_4)
  4722.     If @Propagiraj='D' 
  4723.     Begin
  4724.         Update Drugo4 Set Propagiraj=Null  Where Sifra_4 = @Sifra_4
  4725.         Select Rbr, ImeBaza
  4726.         From FirParal
  4727.         Set @Redovi = @@RowCount
  4728.         While @Redovi > 0  
  4729.         Begin
  4730.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4731.             If @DaliArt = 'D'
  4732.             Begin
  4733.                 Set @SSQL =  ' Select  Sifra_4 From ' + @VtoraBaza + '..Drugo4
  4734.                         Where Sifra_4 = ' + cast(@Sifra_4 as varchar(5)) + ' '
  4735.                 Exec(@SSQL)
  4736.                 If @@RowCount <> 0
  4737.                       Begin
  4738.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Drugo4
  4739.                     Set Ime_4=D.Ime_4
  4740.                     From Drugo4 D
  4741.                     Where D.Sifra_4 = ' + cast(@Sifra_4 as varchar(5)) + ' 
  4742.                     and ' + @VtoraBaza + '..Drugo4.Sifra_4 = ' + cast(@Sifra_4 as varchar(5)) + ' '
  4743.                     Exec(@SSQL)
  4744.                      End  -- If  @@RowCount <> 0
  4745.                 Else
  4746.                      Begin
  4747.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Drugo4 Select * From Drugo4 Where Sifra_4= ' + cast(@Sifra_4 as varchar(5)) + ' '
  4748.                      Exec(@SSQL)        
  4749.                      End  -- Else
  4750.             End -- DaliArt
  4751.             Set @Redovi = @Redovi - 1
  4752.                        end -- While
  4753.     End -- Propagiraj
  4754. End --Triger
  4755. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4756.  
  4757. Go
  4758. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Drugo7_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Drugo7_Vnes_Izmena
  4759.  
  4760. Go
  4761. CREATE  TRIGGER tr_Drugo7_Vnes_Izmena 
  4762. ON dbo.Drugo7
  4763. FOR INSERT, UPDATE
  4764. AS
  4765. BEGIN
  4766. Declare 
  4767.     @Sifra_7    smallint,
  4768.     @Propagiraj    char(1),
  4769.     @Redovi     smallint,
  4770.     @VtoraBaza    varchar(20),
  4771.     @DaliArt    char(1),
  4772.     @SSQL      varchar(8000)
  4773.     SELECT @Sifra_7 = Sifra_7
  4774.     FROM INSERTED 
  4775. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4776.     Set @Propagiraj = (Select Propagiraj From Drugo7 Where Sifra_7 = @Sifra_7)
  4777.     If @Propagiraj='D' 
  4778.     Begin
  4779.         Update Drugo7 Set Propagiraj=Null  Where Sifra_7 = @Sifra_7
  4780.         Select Rbr, ImeBaza
  4781.         From FirParal
  4782.         Set @Redovi = @@RowCount
  4783.         While @Redovi > 0  
  4784.         Begin
  4785.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4786.             If @DaliArt = 'D'
  4787.             Begin
  4788.                 Set @SSQL =  ' Select  Sifra_7 From ' + @VtoraBaza + '..Drugo7
  4789.                         Where Sifra_7 = ' + cast(@Sifra_7 as varchar(5)) + ' '
  4790.                 Exec(@SSQL)
  4791.                 If @@RowCount <> 0
  4792.                       Begin
  4793.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Drugo7
  4794.                     Set Ime_7=D.Ime_7
  4795.                     From Drugo7 D
  4796.                     Where D.Sifra_7 = ' + cast(@Sifra_7 as varchar(5)) + ' 
  4797.                     and ' + @VtoraBaza + '..Drugo7.Sifra_7 = ' + cast(@Sifra_7 as varchar(5)) + ' '
  4798.                     Exec(@SSQL)
  4799.                      End  -- If  @@RowCount <> 0
  4800.                 Else
  4801.                      Begin
  4802.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Drugo7 Select * From Drugo7 Where Sifra_7= ' + cast(@Sifra_7 as varchar(5)) + ' '
  4803.                      Exec(@SSQL)        
  4804.                      End  -- Else
  4805.             End -- DaliArt
  4806.             Set @Redovi = @Redovi - 1
  4807.                        end -- While
  4808.     End -- Propagiraj
  4809. End --Triger
  4810. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4811.  
  4812. Go
  4813. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Drugo5_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_Drugo5_Vnes_Izmena
  4814.  
  4815. Go
  4816.  
  4817. CREATE  TRIGGER tr_Drugo5_Vnes_Izmena 
  4818. ON dbo.Drugo5
  4819. FOR INSERT, UPDATE
  4820. AS
  4821. BEGIN
  4822. Declare 
  4823.     @Sifra_5    smallint,
  4824.     @Propagiraj    char(1),
  4825.     @Redovi     smallint,
  4826.     @VtoraBaza    varchar(20),
  4827.     @DaliArt    char(1),
  4828.     @SSQL      varchar(8000)
  4829.     SELECT @Sifra_5 = Sifra_5
  4830.     FROM INSERTED 
  4831. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4832.     Set @Propagiraj = (Select Propagiraj From Drugo5 Where Sifra_5 = @Sifra_5)
  4833.     If @Propagiraj='D' 
  4834.     Begin
  4835.         Update Drugo5 Set Propagiraj=Null  Where Sifra_5 = @Sifra_5
  4836.         Select Rbr, ImeBaza
  4837.         From FirParal
  4838.         Set @Redovi = @@RowCount
  4839.         While @Redovi > 0  
  4840.         Begin
  4841.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4842.             If @DaliArt = 'D'
  4843.             Begin
  4844.                 Set @SSQL =  ' Select  Sifra_5 From ' + @VtoraBaza + '..Drugo5
  4845.                         Where Sifra_5 = ' + cast(@Sifra_5 as varchar(5)) + ' '
  4846.                 Exec(@SSQL)
  4847.                 If @@RowCount <> 0
  4848.                       Begin
  4849.                     Set @SSQL = ' Update ' + @VtoraBaza + '..Drugo5
  4850.                     Set Ime_5=D.Ime_5
  4851.                     From Drugo5 D
  4852.                     Where D.Sifra_5 = ' + cast(@Sifra_5 as varchar(5)) + ' 
  4853.                     and ' + @VtoraBaza + '..Drugo5.Sifra_5 = ' + cast(@Sifra_5 as varchar(5)) + ' '
  4854.                     Exec(@SSQL)
  4855.                      End  -- If  @@RowCount <> 0
  4856.                 Else
  4857.                      Begin
  4858.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..Drugo5 Select * From Drugo5 Where Sifra_5= ' + cast(@Sifra_5 as varchar(5)) + ' '
  4859.                      Exec(@SSQL)        
  4860.                      End  -- Else
  4861.             End -- DaliArt
  4862.             Set @Redovi = @Redovi - 1
  4863.                        end -- While
  4864.     End -- Propagiraj
  4865. End --Triger
  4866. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4867.  
  4868. Go
  4869. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_DrgPodel_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_DrgPodel_Vnes_Izmena
  4870.  
  4871. Go
  4872. CREATE  TRIGGER tr_DrgPodel_Vnes_Izmena 
  4873. ON dbo.DrgPodel
  4874. FOR INSERT, UPDATE
  4875. AS
  4876. BEGIN
  4877. Declare 
  4878.     @Sifra_Drg    smallint,
  4879.     @Propagiraj    char(1),
  4880.     @Redovi     smallint,
  4881.     @VtoraBaza    varchar(20),
  4882.     @DaliArt    char(1),
  4883.     @SSQL      varchar(8000)
  4884.     SELECT @Sifra_Drg = Sifra_Drg
  4885.     FROM INSERTED 
  4886. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4887.     Set @Propagiraj = (Select Propagiraj From DrgPodel Where Sifra_Drg = @Sifra_Drg)
  4888.     If @Propagiraj='D' 
  4889.     Begin
  4890.         Update DrgPodel Set Propagiraj=Null  Where Sifra_Drg = @Sifra_Drg
  4891.         Select Rbr, ImeBaza
  4892.         From FirParal
  4893.         Set @Redovi = @@RowCount
  4894.         While @Redovi > 0  
  4895.         Begin
  4896.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4897.             If @DaliArt = 'D'
  4898.             Begin
  4899.                 Set @SSQL =  ' Select  Sifra_Drg From ' + @VtoraBaza + '..DrgPodel
  4900.                         Where Sifra_Drg = ' + cast(@Sifra_Drg as varchar(5)) + ' '
  4901.                 Exec(@SSQL)
  4902.                 If @@RowCount <> 0
  4903.                       Begin
  4904.                     Set @SSQL = ' Update ' + @VtoraBaza + '..DrgPodel
  4905.                     Set Ime=D.Ime, Sifra_Drg1=D.Sifra_Drg1, DodadenNa=D.DodadenNa, DodadenOd=D.DodadenOd,
  4906.                         IzmenetNa=D.IzmenetNa, IzmenetOd=D.IzmenetOd, MinSuma=D.MinSuma, Uces=D.Uces
  4907.                     From DrgPodel D
  4908.                     Where D.Sifra_Drg = ' + cast(@Sifra_Drg as varchar(5)) + ' 
  4909.                     and ' + @VtoraBaza + '..DrgPodel.Sifra_Drg = ' + cast(@Sifra_Drg as varchar(5)) + ' '
  4910.                     Exec(@SSQL)
  4911.                      End  -- If  @@RowCount <> 0
  4912.                 Else
  4913.                      Begin
  4914.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..DrgPodel Select * From DrgPodel Where Sifra_Drg= ' + cast(@Sifra_Drg as varchar(5)) + ' '
  4915.                      Exec(@SSQL)        
  4916.                      End  -- Else
  4917.             End -- DaliArt
  4918.             Set @Redovi = @Redovi - 1
  4919.                        end -- While
  4920.     End -- Propagiraj
  4921. End --Triger
  4922. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  4923.  
  4924. Go
  4925. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tg_StaProdMest_Insert' AND type = 'TR') DROP TRIGGER tg_StaProdMest_Insert
  4926.  
  4927. Go
  4928.  
  4929.  
  4930.  
  4931.  
  4932.  
  4933. CREATE      TRIGGER tg_StaProdMest_Insert
  4934.  ON [dbo].[StaProdMest] 
  4935. FOR  INSERT
  4936. AS 
  4937. BEGIN
  4938.     Declare @Sifra_Mest Int,    
  4939.         @Sifra_Kup Char(6),
  4940.         @Sifra_Obj Smallint,
  4941.         @VlIzlPros Char(1)
  4942.     Select @Sifra_Mest=Sifra_Mest, @Sifra_Kup=Sifra_Kup, @Sifra_Obj=Sifra_Obj, @VlIzlPros=VlIzlPros From Inserted
  4943.     If Exists (Select * From ProdMest Where Sifra_Mest=@Sifra_Mest)
  4944.     Begin
  4945.         If @VlIzlPros = 'I'
  4946.             Update ProdMest Set Sifra_Kup=@Sifra_Kup, Sifra_Obj=@Sifra_Obj  Where Sifra_Mest=@Sifra_Mest
  4947.         If @VlIzlPros = 'V' or @VlIzlPros = 'N'
  4948.             Update ProdMest Set Sifra_Kup=Null, Sifra_Obj=Null  Where Sifra_Mest=@Sifra_Mest
  4949.         If @VlIzlPros = 'O'
  4950.             Update ProdMest Set DaliAktiven='N'  Where Sifra_Mest=@Sifra_Mest
  4951.         If @VlIzlPros = 'A'
  4952.             Update ProdMest Set DaliAktiven='D'  Where Sifra_Mest=@Sifra_Mest
  4953.         If @VlIzlPros = 'P'
  4954.             Update ProdMest Set DaliSporen='D'  Where Sifra_Mest=@Sifra_Mest
  4955.         If @VlIzlPros = 'E'
  4956.             Update ProdMest Set DaliSporen='N'  Where Sifra_Mest=@Sifra_Mest
  4957.     End
  4958.     Else
  4959.         Begin
  4960.         Insert Into ProdMest(Sifra_Mest, Sifra_Kup, Sifra_Obj)
  4961.         Values (@Sifra_Mest, @Sifra_Kup, @Sifra_Obj)
  4962.     End
  4963. END
  4964.  
  4965. Go
  4966. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_DrgPodel1_Vnes_Izmena' AND type = 'TR') DROP TRIGGER tr_DrgPodel1_Vnes_Izmena
  4967.  
  4968. Go
  4969. CREATE  TRIGGER tr_DrgPodel1_Vnes_Izmena 
  4970. ON dbo.DrgPodel1
  4971. FOR INSERT, UPDATE
  4972. AS
  4973. BEGIN
  4974. Declare 
  4975.     @Sifra_Drg1    smallint,
  4976.     @Propagiraj    char(1),
  4977.     @Redovi     smallint,
  4978.     @VtoraBaza    varchar(20),
  4979.     @DaliArt    char(1),
  4980.     @SSQL      varchar(8000)
  4981.     SELECT @Sifra_Drg1 = Sifra_Drg1
  4982.     FROM INSERTED 
  4983. -------------------------------------  Azuriranje na Paralelni Bazi --------------------------
  4984.     Set @Propagiraj = (Select Propagiraj From DrgPodel1 Where Sifra_Drg1 = @Sifra_Drg1)
  4985.     If @Propagiraj='D' 
  4986.     Begin
  4987.         Update DrgPodel1 Set Propagiraj=Null  Where Sifra_Drg1 = @Sifra_Drg1
  4988.         Select Rbr, ImeBaza
  4989.         From FirParal
  4990.         Set @Redovi = @@RowCount
  4991.         While @Redovi > 0  
  4992.         Begin
  4993.             Select @VtoraBaza=ImeBaza, @DaliArt=DaliArt From FirParal Where Rbr=@Redovi    
  4994.             If @DaliArt = 'D'
  4995.             Begin
  4996.                 Set @SSQL =  ' Select  Sifra_Drg1 From ' + @VtoraBaza + '..DrgPodel1
  4997.                         Where Sifra_Drg1 = ' + cast(@Sifra_Drg1 as varchar(5)) + ' '
  4998.                 Exec(@SSQL)
  4999.                 If @@RowCount <> 0
  5000.                       Begin
  5001.                     Set @SSQL = ' Update ' + @VtoraBaza + '..DrgPodel1
  5002.                     Set Ime_Drg1=D.Ime_Drg1
  5003.                     From DrgPodel1 D
  5004.                     Where D.Sifra_Drg1 = ' + cast(@Sifra_Drg1 as varchar(5)) + ' 
  5005.                     and ' + @VtoraBaza + '..DrgPodel1.Sifra_Drg1 = ' + cast(@Sifra_Drg1 as varchar(5)) + ' '
  5006.                     Exec(@SSQL)
  5007.                      End  -- If  @@RowCount <> 0
  5008.                 Else
  5009.                      Begin
  5010.                     Set @SSQL = ' Insert Into ' + @VtoraBaza + '..DrgPodel1 Select * From DrgPodel1 Where Sifra_Drg1= ' + cast(@Sifra_Drg1 as varchar(5)) + ' '
  5011.                      Exec(@SSQL)        
  5012.                      End  -- Else
  5013.             End -- DaliArt
  5014.             Set @Redovi = @Redovi - 1
  5015.                        end -- While
  5016.     End -- Propagiraj
  5017. End --Triger
  5018. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  5019.  
  5020. Go
  5021. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_NarReal_Vnes' AND type = 'TR') DROP TRIGGER tr_NarReal_Vnes
  5022.  
  5023. Go
  5024. CREATE TRIGGER tr_NarReal_Vnes
  5025. ON [dbo].[NarReal] 
  5026. FOR INSERT
  5027. AS
  5028. BEGIN
  5029. Declare @NarID        int,
  5030.     @Sifra_Art    varchar(20), 
  5031.     @Kolicina    decimal(18,6),
  5032.     @KolicVoStNar    decimal(18,6),
  5033.     @RealizKolic    decimal(18,6),
  5034.     @Realiziran    char(1)
  5035.     SELECT @NarID = NarID, @Sifra_Art = Sifra_Art,  @Kolicina = Kolicina
  5036.     FROM INSERTED
  5037.     SELECT @KolicVoStNar = Kolic, @RealizKolic = Realiz_Kolic, @Realiziran=Realiziran
  5038.     FROM StaNarac
  5039.     WHERE NarID = @NarID AND Sifra_Art = @Sifra_Art
  5040.     IF @@ROWCOUNT = 0    
  5041.     BEGIN
  5042.         SET @RealizKolic = @RealizKolic + @Kolicina
  5043.         IF @RealizKolic = @KolicVoStNar 
  5044.             SET @Realiziran = 'D'
  5045.         UPDATE StaNarac SET Realiz_Kolic = @RealizKolic, Realiziran = @Realiziran
  5046.         WHERE NarID = @NarID AND Sifra_Art = @Sifra_Art
  5047.     END
  5048. END
  5049.  
  5050. Go
  5051. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AnFinDok_IzmeniBrisi' AND type = 'TR') DROP TRIGGER tr_AnFinDok_IzmeniBrisi
  5052.  
  5053. Go
  5054. CREATE TRIGGER tr_AnFinDok_IzmeniBrisi ON dbo.AnFinDok
  5055.                         FOR DELETE, UPDATE
  5056.                         AS 
  5057.                         BEGIN
  5058.                             If Exists(Select Zaklucen From Deleted Where Zaklucen ='D')   
  5059.                             Begin
  5060.                                 RaisError(' Zapisot e zaklucen i ne moze da se BRISE / MENUVA ' , 16, 1)
  5061.                                 Rollback Tran
  5062.                             End
  5063.                         END 
  5064. Go
  5065. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AkciiProd_Insert' AND type = 'TR') DROP TRIGGER tr_AkciiProd_Insert
  5066.  
  5067. Go
  5068. CREATE TRIGGER tr_AkciiProd_Insert 
  5069. ON AkciiProd 
  5070. FOR INSERT
  5071. AS
  5072. Begin
  5073.     Declare @Sifra_Art_Paket Varchar(20), @Kolic decimal(18,0), @Kolic_Ispor decimal(18,0)
  5074.     Declare InsStavki Cursor Fast_Forward For
  5075.     Select Sifra_Art_Paket, Kolic
  5076.     From Inserted
  5077.     Open InsStavki
  5078.     Fetch Next From InsStavki Into @Sifra_Art_Paket, @Kolic
  5079.     While @@Fetch_Status = 0
  5080.     Begin
  5081.         Set @Kolic_Ispor = 0
  5082.         Select @Kolic_Ispor = Kolic_Ispor From AkciiKolic Where Sifra_Art_Paket = @Sifra_Art_Paket
  5083.         If @Kolic_Ispor Is Null
  5084.             Set @Kolic_Ispor = 0
  5085.         If @Kolic Is Null
  5086.             Set @Kolic = 0
  5087.         Set @Kolic_Ispor = @Kolic_Ispor + @Kolic
  5088.         Update AkciiKolic Set Kolic_Ispor = @Kolic_Ispor Where  Sifra_Art_Paket = @Sifra_Art_Paket
  5089.         Fetch Next From InsStavki Into @Sifra_Art_Paket, @Kolic
  5090.     End
  5091.     Close InsStavki
  5092.     Deallocate InsStavki
  5093. End
  5094.  
  5095. Go
  5096. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AkciiProd_Delete' AND type = 'TR') DROP TRIGGER tr_AkciiProd_Delete
  5097.  
  5098. Go
  5099. CREATE TRIGGER tr_AkciiProd_Delete
  5100. ON AkciiProd 
  5101. FOR DELETE
  5102. AS
  5103. Begin
  5104.     Declare @Sifra_Art_Paket Varchar(20), @Kolic decimal(18,0), @Kolic_Ispor decimal(18,0)
  5105.     Declare DelStavki Cursor Fast_Forward For
  5106.     Select Sifra_Art_Paket, Kolic
  5107.     From Deleted
  5108.     Open DelStavki
  5109.     Fetch Next From DelStavki Into @Sifra_Art_Paket, @Kolic
  5110.     While @@Fetch_Status = 0
  5111.     Begin
  5112.         Set @Kolic_Ispor = 0
  5113.         Select @Kolic_Ispor = Kolic_Ispor From AkciiKolic Where Sifra_Art_Paket = @Sifra_Art_Paket
  5114.         If @Kolic_Ispor Is Null
  5115.             Set @Kolic_Ispor = 0
  5116.         If @Kolic Is Null
  5117.             Set @Kolic = 0
  5118.         Set @Kolic_Ispor = @Kolic_Ispor - @Kolic
  5119.         Update AkciiKolic Set Kolic_Ispor = @Kolic_Ispor Where  Sifra_Art_Paket = @Sifra_Art_Paket
  5120.         Fetch Next From DelStavki Into @Sifra_Art_Paket, @Kolic
  5121.     End
  5122.     Close DelStavki
  5123.     Deallocate DelStavki
  5124. End
  5125.  
  5126. Go
  5127. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_brandkolic]'))
  5128. begin declare @SSQL as varchar(8000) set @SSQL = '
  5129.  
  5130.  
  5131.  
  5132.  
  5133. create    FUNCTION fix_BrandKolic
  5134. (
  5135.     @KolkuDrg Float
  5136. )
  5137. RETURNS Float
  5138. AS
  5139. BEGIN
  5140.     If @KolkuDrg Is Null Or @kolkuDrg = 0.0
  5141.         Set @KolkuDrg = 1
  5142.     Return(@KolkuDrg)
  5143. END
  5144.  
  5145.  
  5146.  
  5147.  
  5148. ' exec(@SSQL)
  5149. end
  5150.  
  5151. Go
  5152. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_dajcenapreddatum]'))
  5153. begin declare @SSQL as varchar(8000) set @SSQL = '
  5154.  
  5155. CREATE      FUNCTION dbo.fix_DajCenaPredDatum
  5156. (    @VlIzl            char(1)=''I'', 
  5157.     @Tip_Sif_Kup        char(1)='''', 
  5158.     @Sif_Kup_Gen        varchar(11)='''',
  5159.     @Tip_Sif_Art        char(1)=''A'',
  5160.     @Sif_Art_Gen        varchar(20),
  5161.     @Datum    smalldatetime,
  5162.     @MalCena    decimal(18,6)   )
  5163. RETURNS  @UslKomerc TABLE
  5164. ( Rok_Dosp    smallint,
  5165.   Uces        decimal(6,2),
  5166.   Dod_Uces    decimal(6,2),
  5167.   Cena        decimal(18,4),
  5168.   MalCena    decimal(18,4),
  5169.   DanCena    char(1),
  5170.   DanMalCena    char(1),
  5171.   Datum_Od    smalldatetime,
  5172.   Datum_Do    smalldatetime  )
  5173. AS  
  5174. BEGIN 
  5175.     INSERT INTO @UslKomerc
  5176.     SELECT TOP 1 Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena, Datum_Od, Datum_Do
  5177.     FROM Usl_Komerc_Per WHERE VlIzl=@VlIzl and Tip_Sif_Kup=@Tip_Sif_Kup and Sif_Kup_Gen=@Sif_Kup_Gen 
  5178.     and Tip_Sif_Art=@Tip_Sif_Art and Sif_Art_Gen = @Sif_Art_Gen AND Datum_Do IS NULL AND Datum_Od<@Datum AND MalCena<>@MalCena
  5179.     ORDER BY Datum_Od DESC
  5180. RETURN
  5181. END
  5182.  
  5183.  
  5184.  
  5185.  
  5186.  
  5187.  
  5188. ' exec(@SSQL)
  5189. end
  5190.  
  5191. Go
  5192. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_dajcenazadatum]'))
  5193. begin declare @SSQL as varchar(8000) set @SSQL = '
  5194.  
  5195.  
  5196.  
  5197.  
  5198.  
  5199. CREATE      FUNCTION dbo.fix_DajCenaZaDatum
  5200. (    @VlIzl            char(1)=''I'', 
  5201.     @Tip_Sif_Kup        char(1)='''', 
  5202.     @Sif_Kup_Gen        varchar(11)='''',
  5203.     @Tip_Sif_Art        char(1)=''A'',
  5204.     @Sif_Art_Gen        varchar(20),
  5205.     @Datum    smalldatetime   )
  5206. RETURNS  @UslKomerc TABLE
  5207. ( Rok_Dosp    smallint,
  5208.   Uces        decimal(6,2),
  5209.   Dod_Uces    decimal(6,2),
  5210.   Cena        decimal(18,4),
  5211.   MalCena    decimal(18,4),
  5212.   DanCena    char(1),
  5213.   DanMalCena    char(1), 
  5214.   Datum_Od    smalldatetime, 
  5215.   Datum_Do      smalldatetime,
  5216.   Sif_art_gen    varchar(20))
  5217. AS  
  5218. BEGIN 
  5219.     INSERT INTO @UslKomerc
  5220.     SELECT TOP 1 Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena, Datum_Od, Datum_Do, Sif_Art_Gen
  5221.     FROM Usl_Komerc_Per WHERE VlIzl=@VlIzl and Tip_Sif_Kup=@Tip_Sif_Kup and Sif_Kup_Gen=@Sif_Kup_Gen and Tip_Sif_Art=@Tip_Sif_Art and Sif_Art_Gen = @Sif_Art_Gen AND Datum_Do IS NOT NULL AND Datum_Od <= @Datum AND Datum_Do >= @Datum 
  5222.     ORDER BY Datum_Od DESC
  5223.  
  5224.     IF @@RowCount < 1
  5225.     Begin
  5226.     INSERT INTO @UslKomerc
  5227.     SELECT TOP 1 Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena, Datum_Od, Datum_Do, Sif_Art_Gen
  5228.     FROM Usl_Komerc_Per WHERE VlIzl=@VlIzl and Tip_Sif_Kup=@Tip_Sif_Kup and Sif_Kup_Gen=@Sif_Kup_Gen and Tip_Sif_Art=@Tip_Sif_Art and Sif_Art_Gen = @Sif_Art_Gen AND Datum_Do IS NULL AND Datum_Od <= @Datum
  5229.     ORDER BY Datum_Od DESC
  5230.     End
  5231. RETURN
  5232. END
  5233.  
  5234.  
  5235.  
  5236.  
  5237.  
  5238.  
  5239. ' exec(@SSQL)
  5240. end
  5241.  
  5242. Go
  5243. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_dokrbrsmoze]'))
  5244. begin declare @SSQL as varchar(8000) set @SSQL = '
  5245.  
  5246. create FUNCTION fix_DokrBrsMoze
  5247. (    @Sega smalldatetime,
  5248.     @Sifra_Oe smallint,
  5249.     @Sifra_Dok smallint,
  5250.     @Broj_Dok int,
  5251.     @ImaDodatna char(1),
  5252.     @Sifra_Prim smallint
  5253. )
  5254. RETURNS char (1)
  5255. AS
  5256. BEGIN
  5257.  
  5258.     Return (''D'')
  5259.  
  5260. END
  5261.  
  5262. ' exec(@SSQL)
  5263. end
  5264.  
  5265. Go
  5266. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_dokrizmmoze]'))
  5267. begin declare @SSQL as varchar(8000) set @SSQL = '
  5268.  
  5269. create  FUNCTION fix_DokrIzmMoze
  5270. (    @Sega smalldatetime,
  5271.     @Datum_Dok smalldatetime,
  5272.     @Sifra_Oe smallint,
  5273.     @Sifra_Dok smallint,
  5274.     @Broj_Dok int,
  5275.     @ImaDodatna char(1),
  5276.     @Sifra_Prim smallint
  5277. )
  5278. RETURNS char (1)
  5279. AS
  5280. BEGIN
  5281.  
  5282.     Return (''D'')
  5283.  
  5284. END
  5285.  
  5286. ' exec(@SSQL)
  5287. end
  5288.  
  5289. Go
  5290. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_dokrvnesmoze]'))
  5291. begin declare @SSQL as varchar(8000) set @SSQL = '
  5292.  
  5293.  
  5294. create   FUNCTION fix_DokrVnesMoze
  5295. (    @Sega smalldatetime,
  5296.     @Datum_Dok smalldatetime
  5297. )
  5298. RETURNS char (1)
  5299. AS
  5300. BEGIN
  5301.  
  5302.     Return (''D'')
  5303.  
  5304. END
  5305.  
  5306.  
  5307. ' exec(@SSQL)
  5308. end
  5309.  
  5310. Go
  5311. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_kade_pec_treb]'))
  5312. begin declare @SSQL as varchar(8000) set @SSQL = '
  5313.  
  5314. CREATE FUNCTION fix_Kade_Pec_Treb
  5315. (
  5316.     @Sifra_Podg     char(6),
  5317.     @Spec_Opis    varchar(200)
  5318. )
  5319. RETURNS Smallint
  5320. AS
  5321. BEGIN
  5322.     Declare @KadePec as smallint
  5323.  
  5324.     If @Sifra_Podg < ''000500''
  5325.         If @Spec_Opis Is Not Null And @Spec_Opis <> '' ''
  5326.             Set @KadePec = 0
  5327.         Else
  5328.             Set @KadePec = 1
  5329.     Else if @Sifra_Podg >= ''000500'' and @Sifra_Podg < ''000900''
  5330.         Set @KadePec = 2
  5331.     Else 
  5332.         If @Spec_Opis Is Not Null And @Spec_Opis <> '' ''
  5333.             Set @KadePec = 0
  5334.         Else
  5335.             Set @KadePec = 3
  5336.     Return(@KadePec)
  5337. END
  5338.  
  5339.  
  5340.  
  5341.  
  5342.  
  5343. ' exec(@SSQL)
  5344. end
  5345.  
  5346. Go
  5347. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_list_atr]'))
  5348. begin declare @SSQL as varchar(8000) set @SSQL = '
  5349.  
  5350.  
  5351. CREATE   FUNCTION [dbo].fix_list_atr
  5352. ()
  5353. RETURNS  @ListAtr TABLE
  5354. (
  5355.     [Tip_Atr] [varchar](20) NOT NULL,
  5356.     [Sifra_Art] [varchar](20) NOT NULL,
  5357.     [dParam1] [decimal](9, 2) NULL,
  5358.     [dParam2] [decimal](18, 6) NULL,
  5359.     [cParam3] [varchar](20) NULL,
  5360.     [cParam4] [varchar](20) NULL,
  5361.     [Markiraj] [char](1) NULL
  5362.  )
  5363.  
  5364. AS  
  5365. BEGIN 
  5366.  
  5367. INSERT INTO @ListAtr
  5368.     SELECT ''BOIVEL'', Sifra_Art, Sifra_Boja, Sifra_Velic, Sifra_PodSif_Art, null, null
  5369.     from KatPodSifra WITH (NOLOCK)
  5370.     Return
  5371.  
  5372. END
  5373.  
  5374. ' exec(@SSQL)
  5375. end
  5376.  
  5377. Go
  5378. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_moze_isporaka]'))
  5379. begin declare @SSQL as varchar(8000) set @SSQL = '
  5380.  
  5381.  
  5382.  
  5383.  
  5384. CREATE      FUNCTION fix_Moze_Isporaka
  5385. (
  5386.     @Sifra_Kup char(6), 
  5387.     @MozeIsporaka char(1),
  5388.     @Limit_Dolzi decimal(9,0),
  5389.     @Garancija varchar(30),
  5390.     @Denes smalldatetime,
  5391.     @KDrugo5 smallint
  5392. )
  5393. RETURNS char (1)
  5394. AS
  5395. BEGIN
  5396.     Return(@MozeIsporaka)
  5397. END 
  5398.  
  5399.  
  5400.  
  5401.  
  5402.  
  5403.  
  5404.  
  5405.  
  5406.  
  5407. ' exec(@SSQL)
  5408. end
  5409.  
  5410. Go
  5411. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_odredi_kto_grupa]'))
  5412. begin declare @SSQL as varchar(8000) set @SSQL = '
  5413.  
  5414.  
  5415.  
  5416. CREATE    FUNCTION fix_Odredi_Kto_Grupa
  5417. (    @Sifra_OE    smallint,
  5418.     @Sifra_Dok    smallint,
  5419.     @Broj_Dok    int)
  5420. RETURNS varchar(3)  --ova mislam deka e dovolno 3
  5421. AS 
  5422. BEGIN
  5423.     RETURN ''''
  5424. END
  5425.  
  5426.  
  5427.  
  5428.  
  5429. ' exec(@SSQL)
  5430. end
  5431.  
  5432. Go
  5433. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_podel5_vo_cparam2_dali]'))
  5434. begin declare @SSQL as varchar(8000) set @SSQL = '
  5435.  
  5436.  
  5437. CREATE FUNCTION dbo.fix_Podel5_Vo_CParam2_Dali ()
  5438.  
  5439. RETURNS  char (1)
  5440.  
  5441. as
  5442.  
  5443. BEGIN 
  5444.  
  5445.     -- Fixirano da vraka 
  5446.     return (''N'')
  5447.  
  5448. END
  5449.  
  5450.  
  5451. ' exec(@SSQL)
  5452. end
  5453.  
  5454. Go
  5455. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_podgr_arkakat_dali]'))
  5456. begin declare @SSQL as varchar(8000) set @SSQL = '
  5457.  
  5458.  
  5459.  
  5460.  
  5461. CREATE    FUNCTION dbo.fix_Podgr_ArkaKat_Dali ()
  5462.  
  5463. RETURNS  char (1)
  5464.  
  5465. as
  5466.  
  5467. BEGIN 
  5468.  
  5469.     -- Fixirano da vraka 
  5470.     return (''N'')
  5471.  
  5472. END
  5473.  
  5474.  
  5475.  
  5476.  
  5477. ' exec(@SSQL)
  5478. end
  5479.  
  5480. Go
  5481. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_sp_upros]'))
  5482. begin declare @SSQL as varchar(8000) set @SSQL = '
  5483.  
  5484.  
  5485. create   PROCEDURE FIX_SP_Upros
  5486.     @Sifra_Oe smallint
  5487.  
  5488. ----- SE KORISTI VO SCHEDULER SO    
  5489. -- EXEC FIX_SP_Upros 1      (sifrata na org.edinica)
  5490.  
  5491. AS
  5492.  
  5493.     Declare @Sifra_Art_Od    varchar(20)
  5494.     Declare @Sifra_Art_Do    varchar(20)
  5495.     Declare @AzurProsCena    char(1)
  5496.     Declare @Datum_Poc    smalldatetime   -- Tipicno e NULL (ekviv.na ona "ign.poc.datum vo maskata") DK Apr 2, 06
  5497.     Declare @AzurNabCStavr    char (1)    -- D=azuriraj kade sto ne se azurirani, 
  5498.                         -- F=forsiraj azuriranje na site dokumenti, bez ogled na azurirani
  5499.     Declare @Datum_Od    smalldatetime    -- Vazen samo pri azuriranje na nabavnata cena vo STAVR    DK Apr 2, 06
  5500.     Declare @Azur_DokMagCena char (1)
  5501.     Declare @Azur_DokMag_TipDok varchar (50) 
  5502.  
  5503.     Declare @Datum_Do    smalldatetime
  5504.  
  5505.     ------------------------------------------------------------
  5506.  
  5507.     set @Datum_Do = getdate ()
  5508.     set @Sifra_Art_Od = null
  5509.     set @Sifra_Art_Do = null
  5510.     set @AzurProsCena = ''D''
  5511.     set @AzurNabCStavr = ''F''
  5512.  
  5513.     set @Datum_Poc = null
  5514.     set @Datum_Od = null
  5515.     set @Azur_DokMagCena = null
  5516.     set @Azur_DokMag_TipDok = null
  5517.  
  5518. print @Sifra_Oe
  5519.  
  5520.         EXEC sp_NajdiFinRazl @Sifra_OE, @Sifra_Art_Od, @Sifra_Art_Do, @Datum_Do, @AzurProsCena, @Datum_Poc,
  5521.                              @AzurNabCStavr, @Datum_Od, @Azur_DokMagCena, @Azur_DokMag_Tipdok
  5522.  
  5523. ' exec(@SSQL)
  5524. end
  5525.  
  5526. Go
  5527. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_uproseci_izlez]'))
  5528. begin declare @SSQL as varchar(8000) set @SSQL = '
  5529.  
  5530. CREATE FUNCTION fix_uproseci_izlez
  5531. (
  5532.     @Sifra_Art varchar(20),
  5533.         @Sifra_Oe smallint,
  5534.         @Sifra_Dok smallint,
  5535.         @Sifra_Prim smallint
  5536. )
  5537. RETURNS char (1)
  5538. AS
  5539. BEGIN
  5540.     Return (''D'')
  5541. END
  5542.  
  5543. ' exec(@SSQL)
  5544. end
  5545.  
  5546. Go
  5547. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_vocentralasum]'))
  5548. begin declare @SSQL as varchar(8000) set @SSQL = '
  5549. CREATE   FUNCTION dbo.fix_VoCentralaSum ()
  5550. RETURNS  char (1)
  5551. AS
  5552. BEGIN 
  5553.     -- Fixirano da vraka 
  5554.     Return (''N'')
  5555.  
  5556. END
  5557.  
  5558.  
  5559.  
  5560.  
  5561.  
  5562.  
  5563.  
  5564.  
  5565. ' exec(@SSQL)
  5566. end
  5567.  
  5568. Go
  5569. if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fix_vopda_arkakat_dozvsifra]'))
  5570. begin declare @SSQL as varchar(8000) set @SSQL = '
  5571.  
  5572.  
  5573.  
  5574. CREATE   FUNCTION dbo.fix_VOPDA_ArkaKat_DozvSifra ()
  5575.  
  5576. RETURNS  char (1)
  5577.  
  5578. as
  5579.  
  5580. BEGIN 
  5581.  
  5582.     -- Fixirano da vraka 
  5583.     return (''N'')
  5584.  
  5585. END
  5586.  
  5587.  
  5588.  
  5589.  
  5590.  
  5591. ' exec(@SSQL)
  5592. end
  5593.  
  5594. Go
  5595. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_bojdenovipogodmes]'))
  5596. drop function [dbo].[fn_bojdenovipogodmes]
  5597.  
  5598. Go
  5599.  
  5600.  
  5601. CREATE    function fn_BojDenoviPoGodMes
  5602.     (
  5603.     @GodMes char(7)
  5604.     )
  5605. returns smallint
  5606. AS
  5607. BEGIN
  5608. declare @Dat_Od smalldatetime
  5609. declare @Dat_Do smalldatetime
  5610. declare @Dat_OdS smalldatetime
  5611. declare @Dat_DoS smalldatetime
  5612. declare @denovi as smallint
  5613. SET @Dat_Od = Cast(Substring(@GodMes,1, 4) + '-' + Substring(@GodMes, 6, 7) + '-' + '01' as smalldatetime)
  5614. SET @Dat_Do=DateADD(month, 1, @Dat_Od)
  5615. SET @Dat_Do=DateADD(day, -1, @Dat_Do)
  5616. set @denovi=day(@Dat_Do) - day(@Dat_Od) + 1
  5617.     RETURN (@denovi)
  5618. END
  5619.  
  5620.  
  5621.  
  5622.  
  5623. Go
  5624. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_brandkolic]'))
  5625. drop function [dbo].[fn_brandkolic]
  5626.  
  5627. Go
  5628.  
  5629.  
  5630.  
  5631. CREATE   FUNCTION fn_BrandKolic
  5632. (
  5633.     @KolkuDrg Float
  5634. )
  5635. RETURNS Float
  5636. AS
  5637. BEGIN
  5638.     If @KolkuDrg Is Null Or @kolkuDrg = 0.0
  5639.         Set @KolkuDrg = 1
  5640.     Return(@KolkuDrg)
  5641. END
  5642.  
  5643.  
  5644.  
  5645.  
  5646.  
  5647.  
  5648. Go
  5649. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_cenadatum]'))
  5650. drop function [dbo].[fn_cenadatum]
  5651.  
  5652. Go
  5653. CREATE    FUNCTION fn_CenaDatum 
  5654.     (@Sifra_OE Smallint,
  5655.      @Sifra_Art Varchar(20),
  5656.      @Datum Smalldatetime,
  5657.      @SoDDV Char(1))
  5658. RETURNS decimal(18,4)
  5659. AS
  5660. BEGIN
  5661.     Declare @DatumStavr Smalldatetime
  5662.     Declare @DatumRazl  Smalldatetime
  5663.     Declare @CenaStavr Decimal(18,6)
  5664.     Declare @CenaRazl Decimal(18,6)
  5665.     Declare @DanCenaStavr Char(1)
  5666.     Declare @DanCenaRazl Char(1)
  5667.     Declare @DanCena Char(1)
  5668.     Declare @POsn Decimal(6,2)
  5669.     Declare @Cena Decimal(18,6)
  5670.     Select Top 1 @DatumStavr=Datum_Dok,
  5671.              @CenaStavr=MagCena,
  5672.              @DanCenaStavr=DanMagCena,
  5673.              @POsn=POsn
  5674.     From Stavr Where Sifra_Art=@Sifra_Art And VlIzl='V' And Kolic>=0 And Sifra_OE=@Sifra_OE And Datum_Dok<=@Datum
  5675.     Order By Datum_Dok Desc, DokID Desc
  5676.     If @@RowCount = 1
  5677.         Begin
  5678.             If @SoDDV='D' And @DanCenaStavr='N'
  5679.                 Set @CenaStavr=@CenaStavr*(1+@POsn/100)
  5680.             If @SoDDV='N' And @DanCenaStavr='D'
  5681.                 Set @CenaStavr=@CenaStavr/(1+@POsn/100)
  5682.         End
  5683.     Else
  5684.         Begin
  5685.             Set @CenaStavr=0
  5686.             Set @DatumStavr='1900-01-01'
  5687.         End
  5688.     Select Top 1 @DatumRazl=Datum_Dok,
  5689.              @CenaRazl=KrCena,
  5690.              @DanCenaRazl=DanKrCena,
  5691.              @POsn=POsn
  5692.     From RazlCeni Where Sifra_Art=@Sifra_Art And Sifra_Razl='902' And Sifra_OE=@Sifra_OE And Datum_Dok<=@Datum
  5693.     Order By Datum_Dok Desc, RDokID Desc
  5694.     If @@RowCount = 1
  5695.         Begin
  5696.             If @SoDDV='D' And @DanCenaRazl='N'
  5697.                 Set @CenaRazl=@CenaRazl*(1+@POsn/100)
  5698.             If @SoDDV='N' And @DanCenaRazl='D'
  5699.                 Set @CenaRazl=@CenaRazl/(1+@POsn/100)
  5700.         End
  5701.     Else
  5702.         Begin
  5703.             Set @CenaRazl=0
  5704.             Set @DatumRazl='1900-01-01'
  5705.         End
  5706.     If @CenaStavr <> 0 And @CenaRazl = 0
  5707.         Set @Cena = @CenaStavr
  5708.     Else If @CenaStavr = 0 And @CenaRazl <> 0
  5709.         Set @Cena = @CenaRazl
  5710.     Else If @CenaStavr = 0 And @CenaRazl = 0
  5711.         Set @Cena = 0
  5712.     Else
  5713.         If @DatumStavr > @DatumRazl
  5714.             Set @Cena = @CenaStavr
  5715.         Else
  5716.             Set @Cena = @CenaRazl
  5717.     If @Cena = 0
  5718.         Begin
  5719.             Select @Cena=Cena, @DanCena=DanCena, @POsn=POsn From Soart
  5720.             Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  5721.             If @SoDDV='D' And @DanCena='N'
  5722.                 Set @Cena=@Cena*(1+@POsn/100)
  5723.             If @SoDDV='N' And @DanCena='D'
  5724.                 Set @Cena=@Cena/(1+@POsn/100)
  5725.             If @Cena Is Null
  5726.                 Set @Cena = 0
  5727.         End
  5728.     Return @Cena
  5729. END
  5730.  
  5731.  
  5732.  
  5733.  
  5734. Go
  5735. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_cenadatum_dokcena]'))
  5736. drop function [dbo].[fn_cenadatum_dokcena]
  5737.  
  5738. Go
  5739.  
  5740.  
  5741.  
  5742.  
  5743. CREATE        FUNCTION fn_CenaDatum_DokCena
  5744.     (@Sifra_OE Smallint,
  5745.      @Sifra_Art Varchar(20),
  5746.      @Datum Smalldatetime,
  5747.      @SoDDV Char(1))
  5748. RETURNS decimal(18,4)
  5749. AS
  5750. BEGIN
  5751.     Declare @DatumStavr Smalldatetime
  5752.     Declare @CenaStavr Decimal(18,6)
  5753.     Declare @DanCenaStavr Char(1)
  5754.     Declare @DanCena Char(1)
  5755.     Declare @POsn Decimal(6,2)
  5756.     Declare @Cena Decimal(18,6)
  5757.     Declare @Uces Decimal(6,2)
  5758.     Declare @Kasa Decimal(6,2)
  5759.     Select Top 1 @DatumStavr=S.Datum_Dok,
  5760.              @CenaStavr=S.DokCena,
  5761.              @DanCenaStavr=S.DanDokCena,
  5762.              @POsn=S.POsn,
  5763.              @Uces=S.Uces,
  5764.              @Kasa=D.Kasa
  5765.     From Stavr S 
  5766.     Inner Join Dokr D On D.DokrID=S.DokrID
  5767.     Where S.Sifra_Art=@Sifra_Art And S.VlIzl='V' And D.Sifra_Za='2' And S.Kolic>0 And S.Sifra_OE=@Sifra_OE And S.Datum_Dok<=@Datum
  5768.     Order By S.Datum_Dok Desc, S.DokID Desc
  5769.     If @@RowCount = 1
  5770.         Begin
  5771.             If @SoDDV='D' And @DanCenaStavr='N'
  5772.                 Set @CenaStavr=@CenaStavr*(1+@POsn/100)*(1-@Uces/100)*(1-@Kasa/100)
  5773.             Else If @SoDDV='D' And @DanCenaStavr='D'
  5774.                 Set @CenaStavr=@CenaStavr*(1-@Uces/100)*(1-@Kasa/100)
  5775.             Else If @SoDDV='N' And @DanCenaStavr='D'
  5776.                 Set @CenaStavr=@CenaStavr/(1+@POsn/100)*(1-@Uces/100)*(1-@Kasa/100)
  5777.             Else If @SoDDV='N' And @DanCenaStavr='N'
  5778.                 Set @CenaStavr=@CenaStavr*(1-@Uces/100)*(1-@Kasa/100)
  5779.         End
  5780.     Else
  5781.         Begin
  5782.             Set @CenaStavr=0
  5783.             Set @DatumStavr='1900-01-01'
  5784.         End
  5785. /*    If @Cena = 0
  5786.         Begin
  5787.             Select @Cena=Cena, @DanCena=DanCena, @POsn=POsn From Soart
  5788.             Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  5789.             If @SoDDV='D' And @DanCena='N'
  5790.                 Set @Cena=@Cena*(1+@POsn/100)
  5791.             If @SoDDV='N' And @DanCena='D'
  5792.                 Set @Cena=@Cena/(1+@POsn/100)
  5793.             If @Cena Is Null
  5794.                 Set @Cena = 0
  5795.         End
  5796. */
  5797.     Return @CenaStavr
  5798. END
  5799.  
  5800.  
  5801.  
  5802.  
  5803. Go
  5804. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_cenadatumnarac]'))
  5805. drop function [dbo].[fn_cenadatumnarac]
  5806.  
  5807. Go
  5808. CREATE   FUNCTION fn_CenaDatumNarac
  5809.     (@Sifra_OE Smallint,
  5810.      @Sifra_Art Varchar(20),
  5811.      @Datum Smalldatetime,
  5812.      @SoDDV Char(1))
  5813. RETURNS decimal(18,4)
  5814. AS
  5815. BEGIN
  5816.     Declare @DatumStavr Smalldatetime
  5817.     Declare @DatumRazl  Smalldatetime
  5818.     Declare @CenaStavr Decimal(18,6)
  5819.     Declare @CenaRazl Decimal(18,6)
  5820.     Declare @DanCenaStavr Char(1)
  5821.     Declare @DanCenaRazl Char(1)
  5822.     Declare @DanCena Char(1)
  5823.     Declare @POsn Decimal(6,2)
  5824.     Declare @Cena Decimal(18,6)
  5825.     Select Top 1 @DatumStavr=Realiz_Na,
  5826.              @CenaStavr=MagCena,
  5827.              @DanCenaStavr=DanMagCena,
  5828.              @POsn=POsn
  5829.     From StaNarac Where Sifra_Art=@Sifra_Art And Sifra_OE=@Sifra_OE And Realiz_Na<=@Datum
  5830.     Order By Realiz_Na Desc, StaNarID Desc
  5831.     If @@RowCount = 1
  5832.         Begin
  5833.             If @SoDDV='D' And @DanCenaStavr='N'
  5834.                 Set @CenaStavr=@CenaStavr*(1+@POsn/100)
  5835.             If @SoDDV='N' And @DanCenaStavr='D'
  5836.                 Set @CenaStavr=@CenaStavr/(1+@POsn/100)
  5837.         End
  5838.     Else
  5839.         Begin
  5840.             Set @CenaStavr=0
  5841.             Set @DatumStavr='1900-01-01'
  5842.         End
  5843.     Set @Cena = @CenaStavr
  5844.     If @Cena = 0
  5845.         Begin
  5846.             Select @Cena=Cena, @DanCena=DanCena, @POsn=POsn From Soart
  5847.             Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  5848.             If @SoDDV='D' And @DanCena='N'
  5849.                 Set @Cena=@Cena*(1+@POsn/100)
  5850.             If @SoDDV='N' And @DanCena='D'
  5851.                 Set @Cena=@Cena/(1+@POsn/100)
  5852.             If @Cena Is Null
  5853.                 Set @Cena = 0
  5854.         End
  5855.     Return @Cena
  5856. END
  5857.  
  5858.  
  5859.  
  5860.  
  5861. Go
  5862. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_dajbrojvlez]'))
  5863. drop function [dbo].[fn_dajbrojvlez]
  5864.  
  5865. Go
  5866.  
  5867. CREATE FUNCTION dbo.fn_DajBrojVlez
  5868. (    @Broj_Kons        int,
  5869.     @Broj_Kons_Vlez    int,
  5870.     @VlIzl            char(1)
  5871. )  
  5872. RETURNS int
  5873. AS  
  5874. BEGIN 
  5875.     Declare @Vrati    int
  5876.     If @VlIzl = 'V'
  5877.         SET @Vrati = @Broj_Kons
  5878.     Else
  5879.         SET @Vrati = @Broj_Kons_Vlez
  5880.     RETURN (@Vrati) 
  5881. END
  5882.  
  5883.  
  5884.  
  5885.  
  5886. Go
  5887. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_dajdatumvlez]'))
  5888. drop function [dbo].[fn_dajdatumvlez]
  5889.  
  5890. Go
  5891.  
  5892. CREATE FUNCTION dbo.fn_DajDatumVlez
  5893. (    @Dat_dok        smalldatetime,
  5894.     @Dat_Dok_Vlez    smalldatetime,
  5895.     @VlIzl            char(1)
  5896. )  
  5897. RETURNS smalldatetime
  5898. AS  
  5899. BEGIN 
  5900.     Declare @Vrati    smalldatetime
  5901.     If @VlIzl = 'V'
  5902.         SET @Vrati = @Dat_Dok
  5903.     Else
  5904.         SET @Vrati = @Dat_Dok_Vlez
  5905.     RETURN (@Vrati) 
  5906. END
  5907.  
  5908.  
  5909.  
  5910.  
  5911. Go
  5912. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_dajdrvlez]'))
  5913. drop function [dbo].[fn_dajdrvlez]
  5914.  
  5915. Go
  5916.  
  5917. CREATE FUNCTION dbo.fn_DajDrVlez
  5918. (    @Od_Dok        varchar(50),
  5919.     @Od_Dok_Vlez        varchar(50),
  5920.     @VlIzl            char(1)
  5921. )  
  5922. RETURNS varchar(50)
  5923. AS  
  5924. BEGIN 
  5925.     Declare @Vrati    varchar(50)
  5926.     If @VlIzl = 'V'
  5927.         SET @Vrati = @Od_Dok
  5928.     Else
  5929.         SET @Vrati = @Od_Dok_Vlez
  5930.     RETURN (@Vrati) 
  5931. END
  5932.  
  5933.  
  5934.  
  5935.  
  5936. Go
  5937. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_dajkurszadatum]'))
  5938. drop function [dbo].[fn_dajkurszadatum]
  5939.  
  5940. Go
  5941. CREATE  FUNCTION dbo.fn_DajKursZaDatum
  5942. (    @Datum as datetime,
  5943.     @SImeVal as char(3))  
  5944. RETURNS  decimal (9,6)  AS  
  5945. BEGIN 
  5946.     Declare @Kurs decimal (9,6)
  5947.     Select Top 1 @Kurs = KursSreden
  5948.     From KrsVaznost Where Datum <= @Datum and SImeVal = @SImeVal Order By Datum desc 
  5949.     IF @Kurs IS NULL     SET @Kurs = 1
  5950.     RETURN @Kurs
  5951. END
  5952.  
  5953.  
  5954.  
  5955.  
  5956. Go
  5957. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_dajsifravlez]'))
  5958. drop function [dbo].[fn_dajsifravlez]
  5959.  
  5960. Go
  5961.  
  5962. CREATE FUNCTION dbo.fn_DajSifraVlez
  5963. (    @Sifra_dok        smallint,
  5964.     @Sifra_Dok_Vlez    smallint,
  5965.     @VlIzl            char(1)
  5966. )  
  5967. RETURNS smallint
  5968. AS  
  5969. BEGIN 
  5970.     Declare @Vrati    smallint
  5971.     If @VlIzl = 'V'
  5972.         SET @Vrati = @Sifra_Dok
  5973.     Else
  5974.         SET @Vrati = @Sifra_Dok_Vlez
  5975.     RETURN (@Vrati) 
  5976. END
  5977.  
  5978.  
  5979.  
  5980.  
  5981. Go
  5982. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_dekada]'))
  5983. drop function [dbo].[fn_dekada]
  5984.  
  5985. Go
  5986.  
  5987. CREATE  FUNCTION fn_dekada
  5988. (
  5989.     @PocDatum Smalldatetime,
  5990.     @Datum Smalldatetime,
  5991.     @Denovi Smallint
  5992. )
  5993. RETURNS Smallint
  5994. AS
  5995. BEGIN
  5996.     Declare @Dekada Smallint
  5997.     Set @Dekada = 1+(DATEDIFF(day, @PocDatum, @Datum))/@Denovi
  5998.     Return(@Dekada)
  5999. END
  6000.  
  6001.  
  6002.  
  6003.  
  6004. Go
  6005. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_dekada_round]'))
  6006. drop function [dbo].[fn_dekada_round]
  6007.  
  6008. Go
  6009. CREATE  FUNCTION fn_dekada_Round
  6010. (
  6011.     @PocDatum Smalldatetime,
  6012.     @Datum Smalldatetime,
  6013.     @Denovi Smallint
  6014. )
  6015. RETURNS Smallint
  6016. AS
  6017. BEGIN
  6018.     Declare @Period as decimal(6,2)
  6019.     Set @Period = @Denovi
  6020.     Declare @Dekada Decimal(6,2)
  6021.     Set @Dekada = Round((DATEDIFF(day, @PocDatum, @Datum))/@Period, 0)
  6022.     If @dekada < 1 
  6023.         Set @Dekada = 1
  6024.     Return(@Dekada)
  6025. END
  6026.  
  6027.  
  6028.  
  6029.  
  6030. Go
  6031. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_denodnedela]'))
  6032. drop function [dbo].[fn_denodnedela]
  6033.  
  6034. Go
  6035. CREATE FUNCTION fn_DenOdNedela
  6036. (    @Datum smalldatetime )
  6037. RETURNS smallint
  6038. AS
  6039. BEGIN
  6040.     Declare @Den smallint
  6041.     SET @Den = datepart(dw, @Datum)
  6042.     IF @Den=1 SET @Den=7
  6043.     Else SET @Den=@Den-1
  6044.     RETURN @Den
  6045. END    
  6046.  
  6047.  
  6048.  
  6049. Go
  6050. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_denovistaz]'))
  6051. drop function [dbo].[fn_denovistaz]
  6052.  
  6053. Go
  6054.  
  6055.  
  6056.  
  6057.  
  6058.  
  6059.  
  6060. CREATE       function fn_DenoviStaz
  6061.     (
  6062.     @Sif_Rabot int,
  6063.     @GodMes char(7)
  6064.     )
  6065. returns smallint
  6066. AS
  6067. BEGIN
  6068. declare @Dat_Od smalldatetime
  6069. declare @Dat_Do smalldatetime
  6070. declare @Dat_OdS smalldatetime
  6071. declare @Dat_DoS smalldatetime
  6072. declare @denovi as smallint
  6073. SET @Dat_Od = Cast(Substring(@GodMes,1, 4) + '-' + Substring(@GodMes, 6, 7) + '-' + '01' as smalldatetime)
  6074. SET @Dat_Do=DateADD(month, 1, @Dat_Od)
  6075. SET @Dat_Do=DateADD(day, -1, @Dat_Do)
  6076. SELECT @Dat_OdS = DatumOd FROM Staz WHERE Sifra_Rab=@Sif_Rabot AND DatumOd>=@Dat_Od AND DatumOd<=@Dat_Do
  6077. IF @Dat_OdS IS NOT NULL SET @Dat_Od=@Dat_OdS
  6078. SELECT @Dat_DoS = DatumDo FROM Staz where Sifra_Rab=@Sif_Rabot AND DatumDo<=@Dat_Do And DatumDo>=@Dat_Od
  6079. If @Dat_DoS IS NOT NULL set @Dat_Do=@Dat_DoS
  6080. set @denovi=day(@Dat_Do) - day(@Dat_Od) + 1
  6081.     RETURN (@denovi)
  6082. END
  6083.  
  6084.  
  6085.  
  6086.  
  6087. Go
  6088. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_desnonuli]'))
  6089. drop function [dbo].[fn_desnonuli]
  6090.  
  6091. Go
  6092.  
  6093.  
  6094. create   FUNCTION dbo.fn_DesnoNuli  (@Broj as Decimal(15,0), @Dolzina as smallint)  
  6095. RETURNS varchar(15)
  6096. AS  
  6097. BEGIN 
  6098.     Declare @VratiStr varchar(15)
  6099.     SET @VratiStr = Cast(@Broj as varchar(15))
  6100.     While Len(@VratiStr) < @Dolzina
  6101.     Begin
  6102.         SET @VratiStr = @VratiStr + '0'
  6103.     End
  6104.     RETURN (@VratiStr)
  6105. END
  6106.  
  6107.  
  6108.  
  6109.  
  6110.  
  6111.  
  6112. Go
  6113. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_godinivraboten]'))
  6114. drop function [dbo].[fn_godinivraboten]
  6115.  
  6116. Go
  6117. CREATE Function fn_GodiniVraboten
  6118. (
  6119.     @Mat_br varchar(13),
  6120.     @GodMes char(7)
  6121. )
  6122. Returns smallint
  6123. As
  6124.     Begin
  6125.     Declare @Datum smalldatetime
  6126.     Declare @Godini smallint
  6127.     Declare @DatumRag smalldatetime
  6128.  
  6129.     SET @Datum = Cast(Substring(@GodMes,1, 4) + '-' + Substring(@GodMes, 6, 2) + '-' + '01' as smalldatetime)
  6130.     SET @DatumRag = Cast('1' + Substring(@Mat_Br,5, 3) + '-' + Substring(@Mat_br, 3, 2) + '-' + Substring(@Mat_br, 1, 2) as smalldatetime)
  6131.     Set @Godini=datediff(year, @DatumRag, @Datum)    
  6132.     Return (@Godini)
  6133. end
  6134.  
  6135.  
  6136.  
  6137. Go
  6138. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_kolicsoznak]'))
  6139. drop function [dbo].[fn_kolicsoznak]
  6140.  
  6141. Go
  6142.  
  6143.  
  6144.  
  6145.  
  6146. CREATE    FUNCTION fn_KolicSoZnak
  6147. (
  6148.     @Plus_Minus char(1), 
  6149.     @Kolic      decimal(18,4)
  6150. )
  6151. RETURNS decimal(18,4)
  6152. AS
  6153. BEGIN
  6154.     Declare @KolicZn  decimal(18,4)
  6155.     Set @KolicZn = 0
  6156.     If @Plus_Minus = '+'
  6157.         Set @KolicZn = @Kolic
  6158.     Else
  6159.         Set @KolicZn = @Kolic * -1
  6160.     Return(@KolicZn)
  6161. END
  6162.  
  6163.  
  6164.  
  6165.  
  6166. Go
  6167. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_kolicvlizl]'))
  6168. drop function [dbo].[fn_kolicvlizl]
  6169.  
  6170. Go
  6171.  
  6172.  
  6173.  
  6174.  
  6175.  
  6176. CREATE     FUNCTION fn_KolicVlIzl
  6177. (
  6178.     @VlIzl    char(1), 
  6179.     @Kolic    Decimal(18,4),
  6180.     @Sakam    char(1)
  6181. )
  6182. RETURNS decimal(18,4)
  6183. AS
  6184. BEGIN
  6185.     Declare @KolicZ  decimal(18,4)
  6186.     Set @KolicZ = 0
  6187.     If @Sakam = @VlIzl
  6188.         Set @KolicZ = @Kolic
  6189.     Return(@KolicZ)
  6190. END
  6191.  
  6192.  
  6193.  
  6194.  
  6195. Go
  6196. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_konvvodec]'))
  6197. drop function [dbo].[fn_konvvodec]
  6198.  
  6199. Go
  6200.  
  6201. CREATE FUNCTION dbo.fn_KonvVoDec
  6202. (    @Broj    decimal(18,6)
  6203. )  
  6204. RETURNS decimal(18,6)
  6205. AS  
  6206. BEGIN 
  6207.     Declare @Vrati    decimal(18,6)
  6208.     If @Broj IS NULL
  6209.         SET @Vrati = 0
  6210.     Else
  6211.         SET @Vrati = @Broj
  6212.     RETURN (@Vrati) 
  6213. END
  6214.  
  6215.  
  6216.  
  6217.  
  6218. Go
  6219. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_konvvostr]'))
  6220. drop function [dbo].[fn_konvvostr]
  6221.  
  6222. Go
  6223.  
  6224.  
  6225. CREATE  FUNCTION dbo.fn_KonvVoStr
  6226. (    @Podatok    varchar(50)
  6227. )  
  6228. RETURNS varchar(50)
  6229. AS  
  6230. BEGIN 
  6231.     Declare @Vrati    varchar(50)
  6232.     If @Podatok IS NULL
  6233.         SET @Vrati = ''
  6234.     Else
  6235.         SET @Vrati = @Podatok
  6236.     RETURN (@Vrati) 
  6237. END
  6238.  
  6239.  
  6240.  
  6241.  
  6242. Go
  6243. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_levonuli]'))
  6244. drop function [dbo].[fn_levonuli]
  6245.  
  6246. Go
  6247.  
  6248. CREATE  FUNCTION dbo.fn_LevoNuli  (@Broj as Decimal(15,0), @Dolzina as smallint)  
  6249. RETURNS varchar(15)
  6250. AS  
  6251. BEGIN 
  6252.     Declare @VratiStr varchar(15)
  6253.     SET @VratiStr = Cast(@Broj as varchar(15))
  6254.     While Len(@VratiStr) < @Dolzina
  6255.     Begin
  6256.         SET @VratiStr = '0'+@VratiStr
  6257.     End
  6258.     RETURN (@VratiStr)
  6259. END
  6260.  
  6261.  
  6262.  
  6263.  
  6264.  
  6265. Go
  6266. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_levonulidecimal]'))
  6267. drop function [dbo].[fn_levonulidecimal]
  6268.  
  6269. Go
  6270.  
  6271. CREATE  FUNCTION dbo.fn_LevoNuliDecimal  (@Broj as Decimal(11,0), @Dolzina as smallint)  
  6272. RETURNS decimal(10,2)
  6273. AS  
  6274. BEGIN 
  6275.     Declare @VratiStr decimal(10,2)
  6276.     SET @VratiStr = Cast(@Broj as varchar(15))
  6277.     While Len(@VratiStr) < @Dolzina
  6278.     Begin
  6279.         SET @VratiStr = '0'+@VratiStr
  6280.     End
  6281.     RETURN (@VratiStr)
  6282. END
  6283.  
  6284.  
  6285.  
  6286.  
  6287. Go
  6288. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_levonulistr]'))
  6289. drop function [dbo].[fn_levonulistr]
  6290.  
  6291. Go
  6292.  
  6293.  
  6294.  
  6295.  
  6296. CREATE     FUNCTION dbo.fn_LevoNuliStr  (@Nesto as varchar(20), @Dolzina as smallint)  
  6297. RETURNS varchar(20)
  6298. AS  
  6299. BEGIN 
  6300.     Declare @VratiStr varchar(20)
  6301.     SET @VratiStr = Cast(@Nesto as varchar(20))
  6302.     While Len(@VratiStr) < @Dolzina
  6303.     Begin
  6304.         SET @VratiStr = '0'+@VratiStr
  6305.     End
  6306.     RETURN (@VratiStr)
  6307. END
  6308.  
  6309.  
  6310.  
  6311.  
  6312.  
  6313.  
  6314.  
  6315. Go
  6316. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_nabcenadatum]'))
  6317. drop function [dbo].[fn_nabcenadatum]
  6318.  
  6319. Go
  6320. CREATE   FUNCTION fn_NabCenaDatum 
  6321.     (@Sifra_Art Varchar(20),
  6322.      @Datum Smalldatetime,
  6323.      @SoDDV Char(1))
  6324. RETURNS decimal(18,4)
  6325. AS
  6326. BEGIN
  6327.     Declare @DatumStavr Smalldatetime
  6328.     Declare @CenaStavr Decimal(18,6)
  6329.     Declare @DanCenaStavr Char(1)
  6330.     Declare @POsn Decimal(6,2)
  6331.     Select Top 1 @DatumStavr=Datum_Dok,
  6332.              @CenaStavr=DokCena,
  6333.              @DanCenaStavr=DanDokCena,
  6334.              @POsn=POsn
  6335.     From Stavr Where Sifra_Art=@Sifra_Art And VlIzl='V' And Datum_Dok<=@Datum And Sifra_Dok=132
  6336.     Order By Datum_Dok Desc--, DokID Desc
  6337.     If @@RowCount = 1
  6338.         Begin
  6339.             If @SoDDV='D' And @DanCenaStavr='N'
  6340.                 Set @CenaStavr=@CenaStavr*(1+@POsn/100)
  6341.             If @SoDDV='N' And @DanCenaStavr='D'
  6342.                 Set @CenaStavr=@CenaStavr/(1+@POsn/100)
  6343.         End
  6344.     Else
  6345.         Begin
  6346.             Set @CenaStavr=0
  6347.             Set @DatumStavr='1900-01-01'
  6348.         End
  6349.     Return @CenaStavr
  6350. END
  6351.  
  6352.  
  6353.  
  6354.  
  6355. Go
  6356. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_napravidatum]'))
  6357. drop function [dbo].[fn_napravidatum]
  6358.  
  6359. Go
  6360. CREATE     FUNCTION fn_NapraviDatum
  6361. (
  6362.     @Godina smallint,
  6363.     @Mesec    smallint,
  6364.     @Den    smallint
  6365. )
  6366. RETURNS smalldatetime
  6367. AS
  6368. BEGIN
  6369.     Declare @Datum  smalldatetime
  6370.     Set @Datum = NULL
  6371.     Set @Datum = Cast(Cast(@Godina as Varchar(4)) + '-' + 
  6372.             Cast(@Mesec as Varchar(2))  + '-' + 
  6373.             Cast(@Den as Varchar(2)) as smalldatetime)
  6374.     Return(@Datum)
  6375. END
  6376.  
  6377.  
  6378.  
  6379.  
  6380. Go
  6381. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_napravisifra]'))
  6382. drop function [dbo].[fn_napravisifra]
  6383.  
  6384. Go
  6385.  
  6386. CREATE  FUNCTION dbo.fn_NapraviSifra
  6387. (
  6388.     @Prefix    char(2),
  6389.     @Kod    char(4)
  6390. )
  6391. RETURNS char(6)
  6392. AS
  6393. BEGIN
  6394.     Declare @Sifra    char(6)
  6395.     Declare @Kod1    char(4)
  6396.     Declare @LenKod    smallint
  6397.     Declare @i        smallint
  6398.     Set @LenKod = Len(@Kod)
  6399.     if @LenKod = 4 
  6400.         Set @Kod1 = @Kod
  6401.     Else If @LenKod = 3
  6402.         Set @Kod1 = '0' + Ltrim(@Kod)
  6403.     Else If @LenKod = 2
  6404.         Set @Kod1 = '00' + Ltrim(@Kod)
  6405.     Else If @LenKod = 1
  6406.         Set @Kod1 = '000' + Ltrim(@Kod)
  6407.     IF Len(@Prefix) = 2
  6408.         Set @Sifra = @Prefix+@Kod1    
  6409.     ELSE
  6410.         Set @Sifra = '0'+LTrim(@Prefix)+@Kod1    
  6411.     RETURN @Sifra
  6412. END
  6413.  
  6414.  
  6415.  
  6416.  
  6417. Go
  6418. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_nom]'))
  6419. drop function [dbo].[fn_nom]
  6420.  
  6421. Go
  6422. CREATE   FUNCTION fn_Nom
  6423. (
  6424.     @Sifra_Art Varchar(20)
  6425. )
  6426. RETURNS Varchar(50)
  6427. AS
  6428. BEGIN
  6429.     Declare @Nom Varchar(50)
  6430.     Select Top 1 @Nom=Nom From ABarKod Where Sifra_Art=@Sifra_Art
  6431.     Return(@Nom)
  6432. END
  6433.  
  6434.  
  6435.  
  6436.  
  6437. Go
  6438. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_odvoiimeodrabotnikimerab]'))
  6439. drop function [dbo].[fn_odvoiimeodrabotnikimerab]
  6440.  
  6441. Go
  6442.  
  6443.  
  6444. CREATE  function fn_OdvoiImeOdRabotnikImeRab
  6445.     (
  6446.     @ImeRab varchar(30)
  6447.     )
  6448. returns varchar(30)
  6449. AS
  6450. BEGIN    
  6451.     declare @ime as varchar(30) 
  6452.     declare @pos as smallint
  6453.     set @pos=CHARINDEX(' ', @ImeRab, 1)
  6454.     set @ime = substring(@ImeRab,1, @pos)
  6455.     RETURN (@ime)
  6456. END
  6457.  
  6458.  
  6459.  
  6460.  
  6461. Go
  6462. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_odvoiprezimeodrabotnikimerab]'))
  6463. drop function [dbo].[fn_odvoiprezimeodrabotnikimerab]
  6464.  
  6465. Go
  6466.  
  6467.  
  6468. create  function fn_OdvoiPrezimeOdRabotnikImeRab
  6469.     (
  6470.     @ImeRab varchar(30)
  6471.     )
  6472. returns varchar(30)
  6473. AS
  6474. BEGIN    
  6475.     declare @pos as smallint
  6476.     declare @len as smallint
  6477.     declare @prezime as varchar(30)
  6478.     set @pos=CHARINDEX(' ', @ImeRab, 1)
  6479.     set @len=LEN(@ImeRab)
  6480.     set @prezime = substring(@ImeRab,@pos, @len)
  6481.     RETURN (@prezime)
  6482. END
  6483.  
  6484.  
  6485.  
  6486.  
  6487. Go
  6488. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_opsegcena]'))
  6489. drop function [dbo].[fn_opsegcena]
  6490.  
  6491. Go
  6492.  
  6493.  
  6494. CREATE   FUNCTION fn_OpsegCena
  6495. (
  6496.     @Cena Decimal(18,6)
  6497. )
  6498. RETURNS Decimal
  6499. AS
  6500. BEGIN
  6501.     If @Cena Is Null Or @Cena <= 10.0
  6502.         Set @Cena = 10.0
  6503.     Else If @Cena > 10.0 And @Cena <= 20.0
  6504.         Set @Cena = 20.0
  6505.     Else If @Cena > 20.0 And @Cena <= 30.0
  6506.         Set @Cena = 30.0
  6507.     Else If @Cena > 30.0 And @Cena <= 40.0
  6508.         Set @Cena = 40.0
  6509.     Else If @Cena > 40.0 And @Cena <= 50.0
  6510.         Set @Cena = 50.0
  6511.     Else If @Cena > 50.0 And @Cena <= 60.0
  6512.         Set @Cena = 60.0
  6513.     Else If @Cena > 60.0 And @Cena <= 70.0
  6514.         Set @Cena = 70.0
  6515.     Else If @Cena > 70.0 And @Cena <= 80.0
  6516.         Set @Cena = 80.0
  6517.     Else If @Cena > 80.0 And @Cena <= 90.0
  6518.         Set @Cena = 90.0
  6519.     Else If @Cena > 90.0 And @Cena <= 100.0
  6520.         Set @Cena = 100.0
  6521.     Else If @Cena > 100.0 And @Cena <= 120.0
  6522.         Set @Cena = 120.0
  6523.     Else If @Cena > 120.0 And @Cena <= 140.0
  6524.         Set @Cena = 140.0
  6525.     Else If @Cena > 140.0 And @Cena <= 160.0
  6526.         Set @Cena = 160.0
  6527.     Else If @Cena > 160.0 And @Cena <= 180.0
  6528.         Set @Cena = 180.0
  6529.     Else If @Cena > 180.0 And @Cena <= 200.0
  6530.         Set @Cena = 200.0
  6531.     Else If @Cena > 200.0 And @Cena <= 250.0
  6532.         Set @Cena = 250.0
  6533.     Else If @Cena > 250.0 And @Cena <= 300.0
  6534.         Set @Cena = 300.0
  6535.     Else If @Cena > 300.0 And @Cena <= 350.0
  6536.         Set @Cena = 350.0
  6537.     Else If @Cena > 350.0 And @Cena <= 400.0
  6538.         Set @Cena = 400.0
  6539.     Else If @Cena > 400.0 And @Cena <= 450.0
  6540.         Set @Cena = 450.0
  6541.     Else If @Cena > 450.0 And @Cena <= 500.0
  6542.         Set @Cena = 500.0
  6543.     Else If @Cena > 500.0 And @Cena <= 600.0
  6544.         Set @Cena = 600.0
  6545.     Else If @Cena > 600.0 And @Cena <= 700.0
  6546.         Set @Cena = 700.0
  6547.     Else If @Cena > 700.0 And @Cena <= 800.0
  6548.         Set @Cena = 800.0
  6549.     Else If @Cena > 800.0 And @Cena <= 900.0
  6550.         Set @Cena = 900.0
  6551.     Else If @Cena > 900.0 And @Cena <= 1000.0
  6552.         Set @Cena = 1000.0
  6553.     Else If @Cena > 1000.0 And @Cena <= 1100.0
  6554.         Set @Cena = 1100.0
  6555.     Else If @Cena > 1200.0 And  @Cena <= 1300.0
  6556.         Set @Cena = 1300.0
  6557.     Else If @Cena > 1300.0 And @Cena <= 1400.0
  6558.         Set @Cena = 1400.0
  6559.     Else If @Cena > 1400.0 And @Cena <= 1500.0
  6560.         Set @Cena = 1500.0
  6561.     Else If @Cena > 1500.0 And @Cena <= 1600.0
  6562.         Set @Cena = 1600.0
  6563.     Else If @Cena > 1600.0 And @Cena <= 1700.0
  6564.         Set @Cena = 1700.0
  6565.     Else If @Cena > 1700.0 And @Cena <= 1800.0
  6566.         Set @Cena = 1800.0
  6567.     Else If @Cena > 1800.0 And @Cena <= 1900.0
  6568.         Set @Cena = 1900.0
  6569.     Else If @Cena > 1900.0 And @Cena <= 2000.0
  6570.         Set @Cena = 2000.0
  6571.     Else If @Cena > 2000.0 And @Cena <= 3000.0
  6572.         Set @Cena = 3000.0
  6573.     Else If @Cena > 3000.0 And @Cena <= 4000.0
  6574.         Set @Cena = 4000.0
  6575.     Else If @Cena > 4000.0 And @Cena <= 5000.0
  6576.         Set @Cena = 5000.0
  6577.     Else If @Cena > 5000.0 And @Cena <= 6000.0
  6578.         Set @Cena = 6000.0
  6579.     Else If @Cena > 6000.0 And @Cena <= 7000.0
  6580.         Set @Cena = 7000.0
  6581.     Else If @Cena > 7000.0 And @Cena <= 8000.0
  6582.         Set @Cena = 8000.0
  6583.     Else If @Cena > 8000.0 And @Cena <= 9000.0
  6584.         Set @Cena = 9000.0
  6585.     Else If @Cena > 9000.0 And @Cena <= 10000.0
  6586.         Set @Cena = 10000.0
  6587.     Else If @Cena > 10000.0 
  6588.         Set @Cena = 10001.0
  6589. Return(@Cena)
  6590. END
  6591.  
  6592.  
  6593.  
  6594.  
  6595. Go
  6596. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_popisobraboten]'))
  6597. drop function [dbo].[fn_popisobraboten]
  6598.  
  6599. Go
  6600. CREATE   FUNCTION fn_PopisObraboten
  6601. (
  6602.     @IdPopis int
  6603. )
  6604. RETURNS char(1)
  6605. AS
  6606. BEGIN
  6607.     Declare @Obraboten char(1)
  6608.     Set @Obraboten = 'N'
  6609.     If Exists (Select Top 1 IdPopis From RPopis Where IdPopis=@IdPopis)
  6610.         Set @Obraboten = 'D'
  6611.     Return(@Obraboten)
  6612. END
  6613.  
  6614.  
  6615.  
  6616.  
  6617. Go
  6618. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_presmamor]'))
  6619. drop function [dbo].[fn_presmamor]
  6620.  
  6621. Go
  6622.  
  6623. CREATE      FUNCTION fn_PresmAmor
  6624. (
  6625.     @PocDat smalldatetime,
  6626.     @KrDat    smalldatetime,
  6627.     @Osn_Amor decimal(18,6),
  6628.     @Stapka_Amor decimal(9,3),
  6629.     @Otpis_Pret decimal(18,6)
  6630. )
  6631. RETURNS decimal(18,4)
  6632. AS
  6633. BEGIN
  6634.     Declare @Amor decimal(18,6)
  6635.     Declare @BrMeseci smallint
  6636.     Declare @SegVr decimal(18,6)
  6637.     SET @BrMeseci = DateDiff(month, @PocDat, @KrDat)+1
  6638.     SET @Amor = Round(((@Osn_Amor * @Stapka_Amor / 100) * @BrMeseci / 12), 2)
  6639.     SET @SegVr = @Osn_Amor - (@Amor + @Otpis_Pret)
  6640.     IF @SegVr < 0 
  6641.         SET @Amor = @Osn_Amor - @Otpis_Pret
  6642.     IF @Amor < 0 SET @Amor = 0
  6643.     Return(@Amor)
  6644. END
  6645.  
  6646.  
  6647.  
  6648.  
  6649. Go
  6650. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_presmrevalnabprethgod]'))
  6651. drop function [dbo].[fn_presmrevalnabprethgod]
  6652.  
  6653. Go
  6654. CREATE FUNCTION fn_PresmRevalNabPrethGod
  6655. (
  6656.     @DatAkt    smalldatetime,
  6657.     @DatPrest    smalldatetime,
  6658.     @DatPresmOd    smalldatetime,
  6659.     @DatPresmDo    smalldatetime
  6660. )
  6661. RETURNS decimal(18,3)
  6662. AS  
  6663. BEGIN
  6664.     Declare @Koef decimal(18,3)
  6665.     Declare @PomalMes smallint
  6666.     Declare @KoefOdMes decimal(18,4)
  6667.     Declare @KoefDoMes decimal(18,4)
  6668.  
  6669.     If @DatAkt>@DatPresmDo    -- Neaktivirano do datumpt na presmetka
  6670.         Set @Koef = 0 
  6671.  
  6672.     If Month(@DatPrest)<>0 And Year(@DatPrest)<Year(@DatPresmOd)            -- Otpisano vo prethodni godini
  6673.         Set @Koef=0
  6674.     Else If Month(@DatPrest)<>0 And Year(@DatPrest)=Year(@DatPresmOd)    -- Otpisano Godinava
  6675.     Begin
  6676.         If Year(@DatPrest)=Year(@DatPresmOd) And Month(@DatPrest)<Month(@DatPresmDo)  -- ???????????????
  6677.             Set @Koef=0
  6678.         Else
  6679.         Begin
  6680.             If Month(@DatPrest)<Month(@DatPresmDo) 
  6681.                 Set @PomalMes = Month(@DatPrest)
  6682.             Else
  6683.                 Set @PomalMes = Month(@DatPresmDo)
  6684.  
  6685.             Set @Koef = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6686.         End    
  6687.     End
  6688.     Else   --Neotpisano, mislam deka moze slobodno da se zeme 12 kako mesec za utvrduvanje na koef
  6689.     Begin
  6690.             If Month(@DatPresmDo) <= 12 
  6691.                 Set @PomalMes = Month(@DatPresmDo)
  6692.             Else
  6693.                 Set @PomalMes = 12
  6694.             Set @Koef = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6695.     End
  6696.     
  6697.     Return @Koef
  6698.  
  6699. END
  6700.  
  6701.  
  6702.  
  6703.  
  6704.  
  6705.  
  6706. Go
  6707. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_presmrevalnabtekgod]'))
  6708. drop function [dbo].[fn_presmrevalnabtekgod]
  6709.  
  6710. Go
  6711. CREATE FUNCTION fn_PresmRevalNabTekGod
  6712. (
  6713.     @DatAkt    smalldatetime,
  6714.     @DatPrest    smalldatetime,
  6715.     @DatPresmOd    smalldatetime,
  6716.     @DatPresmDo    smalldatetime
  6717. )
  6718. RETURNS decimal(18,3)
  6719. AS  
  6720. BEGIN
  6721.     Declare @Koef decimal(18,3)
  6722.     Declare @PomalMes smallint
  6723.     Declare @KoefOdMes decimal(18,4)
  6724.     Declare @KoefDoMes decimal(18,4)
  6725.  
  6726.     If @DatAkt>@DatPresmDo    -- Neaktivirano do datumpt na presmetka
  6727.         Set @Koef = 0 
  6728.  
  6729.     If Year(@DatAkt) = Year(@DatPresmOd) And Month(@DatAkt) > Month(@DatPresmDo) -- Aktivirano po datumot na presmetka
  6730.         Set @Koef=0
  6731.     Else If Month(@DatPrest) <> 0 And Year(@DatPrest) < Year(@DatPresmOd)   -- Otpisano vo prethodni god
  6732.         Set @Koef=0
  6733.     Else If Month(@DatPrest) <> 0  And Year(@DatPrest)=Year(@DatPresmOd)   -- Otpisano godinava
  6734.     Begin
  6735.         If Month(@DatAkt) >= Month(@DatPrest)   -- Aktivirano posle presmetkata
  6736.             Set @Koef=0
  6737.         Else If Year(@DatPrest)=Year(@DatPresmOd) And Month(@DatPrest)<Month(@DatPresmDo) -- ?????????????
  6738.             Set @Koef=0
  6739.         Else
  6740.         Begin 
  6741.             If Month(@DatPrest)<Month(@DatPresmDo) 
  6742.                 Set @PomalMes = Month(@DatPrest)
  6743.             Else
  6744.                 Set @PomalMes = Month(@DatPresmDo)
  6745.  
  6746.             Set @KoefOdMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=Month(@DatAkt))
  6747.             Set @KoefDoMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6748.             Set @Koef = (1+@KoefDoMes)/(1+@KoefOdMes) - 1
  6749.         End
  6750.     End
  6751.     Else
  6752.     Begin
  6753.             If Month(@DatPresmDo) <= 12 
  6754.                 Set @PomalMes = Month(@DatPresmDo)
  6755.             Else
  6756.                 Set @PomalMes = 12
  6757.  
  6758.             Set @KoefOdMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=Month(@DatAkt))
  6759.             Set @KoefDoMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6760. --print @KoefOdMes, @KoefDoMes
  6761.             Set @Koef = (1+@KoefDoMes)/(1+@KoefOdMes) - 1
  6762. --set @koef = @KoefDoMes
  6763.     End
  6764.       
  6765.     Return @Koef
  6766. END
  6767.  
  6768.  
  6769.  
  6770.  
  6771.  
  6772.  
  6773. Go
  6774. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_presmrevalorizacija]'))
  6775. drop function [dbo].[fn_presmrevalorizacija]
  6776.  
  6777. Go
  6778. CREATE FUNCTION fn_PresmRevalorizacija
  6779. (
  6780.     @DatAkt    smalldatetime,
  6781.     @DatPrest    smalldatetime,
  6782.     @DatPresmOd    smalldatetime,
  6783.     @DatPresmDo    smalldatetime
  6784. )
  6785. RETURNS decimal(18,4)
  6786. AS  
  6787. BEGIN
  6788.     Declare @Koef decimal(18,4)
  6789.     Declare @PomalMes smallint
  6790.     Declare @KoefOdMes decimal(18,4)
  6791.     Declare @KoefDoMes decimal(18,4)
  6792.  
  6793.     If @DatAkt>@DatPresmDo    -- Neaktivirano do datumpt na presmetka
  6794.         Set @Koef = 0 
  6795.     Else If Year(@DatAkt)<Year(@DatPresmOd)   -- Nabaveni vo prethodni godini
  6796.     Begin
  6797.         If Month(@DatPrest)<>0 And Year(@DatPrest)<Year(@DatPresmOd)            -- Otpisano vo prethodni godini
  6798.             Set @Koef=0
  6799.         Else If Month(@DatPrest)<>0 And Year(@DatPrest)=Year(@DatPresmOd)    -- Otpisano Godinava
  6800.         Begin
  6801.             If Year(@DatPrest)=Year(@DatPresmOd) And Month(@DatPrest)<Month(@DatPresmDo)
  6802.                 Set @Koef=0
  6803.             Else
  6804.             Begin
  6805.                 If Month(@DatPrest)<Month(@DatPresmDo) 
  6806.                     Set @PomalMes = Month(@DatPrest)
  6807.                 Else
  6808.                     Set @PomalMes = Month(@DatPresmDo)
  6809.  
  6810.                 Set @Koef = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6811.             End    
  6812.         End
  6813.         Else   --Neotpisano, mislam deka moze slobodno da se zeme 12 kako mesec za utvrduvanje na koef
  6814.         Begin
  6815.                 If Month(@DatPrest) <= 12 
  6816.                     Set @PomalMes = Month(@DatPrest)
  6817.                 Else
  6818.                     Set @PomalMes = 12
  6819.  
  6820.                 Set @Koef = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6821.         End
  6822.     End
  6823.     Else  -- Nabaveni godinava
  6824.     Begin
  6825.         If Year(@DatAkt) = Year(@DatPresmOd) And Month(@DatAkt) > Month(@DatPresmDo)
  6826.             Set @Koef=0
  6827.         Else If Month(@DatPrest) <> 0 And Year(@DatPrest) < Year(@DatPresmOd)
  6828.             Set @Koef=0
  6829.         Else If Month(@DatPrest) <> 0  And Year(@DatPrest)=Year(@DatPresmOd)
  6830.         Begin
  6831.             If Month(@DatAkt) >= Month(@DatPrest)
  6832.                 Set @Koef=0
  6833.             Else If Year(@DatPrest)=Year(@DatPresmOd) And Month(@DatPrest)<Month(@DatPresmDo)
  6834.                 Set @Koef=0
  6835.             Else
  6836.             Begin 
  6837.                 If Month(@DatPrest)<Month(@DatPresmDo) 
  6838.                     Set @PomalMes = Month(@DatPrest)
  6839.                 Else
  6840.                     Set @PomalMes = Month(@DatPresmDo)
  6841.  
  6842.                 Set @KoefOdMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=Month(@DatAkt))
  6843.                 Set @KoefDoMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6844.                 Set @Koef = (1+@KoefDoMes)/(1+@KoefOdMes) - 1
  6845.             End
  6846.         End
  6847.         Else
  6848.         Begin
  6849.                 If Month(@DatPrest) <= 12 
  6850.                     Set @PomalMes = Month(@DatPrest)
  6851.                 Else
  6852.                     Set @PomalMes = 12
  6853.  
  6854.                 Set @KoefOdMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=Month(@DatAkt))
  6855.                 Set @KoefDoMes = (Select Stapka From PorastCeniSt Where Godina = Year(@DatPresmDo) And Mesec=@PomalMes)
  6856.                 Set @Koef = (1+@KoefDoMes)/(1+@KoefOdMes) - 1
  6857.         End
  6858.     End    
  6859.           
  6860.     Return @Koef
  6861.  
  6862. END
  6863.  
  6864.  
  6865.  
  6866. Go
  6867. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_rbrsort]'))
  6868. drop function [dbo].[fn_rbrsort]
  6869.  
  6870. Go
  6871.  
  6872. CREATE   FUNCTION fn_RbrSort
  6873. (
  6874.     @RbrSt        int,
  6875.     @RbrVrs    int
  6876. )
  6877. RETURNS int
  6878. AS
  6879. BEGIN
  6880.     Declare @RbrVrati int
  6881.     If @RbrVrs Is NULL
  6882.         Set @RbrVrati = @RbrSt
  6883.     Else
  6884.         Begin
  6885.             If @RbrSt > @RbrVrs
  6886.                 Set @RbrVrati = @RbrSt
  6887.             Else
  6888.                 Set @RbrVrati = @RbrVrs
  6889.         End
  6890.     Return(@RbrVrati)
  6891. END
  6892.  
  6893.  
  6894.  
  6895.  
  6896. Go
  6897. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_soannab]'))
  6898. drop function [dbo].[fn_soannab]
  6899.  
  6900. Go
  6901.  
  6902. CREATE   FUNCTION fn_soannab
  6903. (
  6904.     @NNabCena Decimal(18,6),
  6905.     @VRN_Vlez Decimal(18,6),
  6906.     @VRN_Izlez Decimal(18,6),
  6907.     @Vlez Decimal(18,6),
  6908.     @Izlez Decimal(18,6)
  6909. )
  6910. RETURNS Decimal(18,6)
  6911. AS
  6912. BEGIN
  6913.     Declare @tempCena Decimal(18,6)
  6914.     If @Vlez-@Izlez <> 0
  6915.         Set @tempCena = (@VRN_Vlez-@VRN_Izlez)/(@Vlez-@Izlez)
  6916.     If @tempCena > 0
  6917.         Set @NNabCena = @tempCena
  6918.     Return(@NNabCena)
  6919. END
  6920.  
  6921.  
  6922.  
  6923.  
  6924. Go
  6925. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_split]'))
  6926. drop function [dbo].[fn_split]
  6927.  
  6928. Go
  6929.  
  6930. CREATE  FUNCTION dbo.fn_Split(@String varchar(8000), @Delimiter char(1))     
  6931.     returns @temptable TABLE (Pole varchar(8000))     
  6932. as     
  6933. begin     
  6934.     declare @idx int     
  6935.     declare @slice varchar(8000)     
  6936.     select @idx = 1     
  6937.     if len(@String)<1 or @String is null 
  6938.          return     
  6939.     while @idx != 0     
  6940.     begin     
  6941.         set @idx = charindex(@Delimiter,@String)     
  6942.         if @idx != 0
  6943.             set @slice = left(@String, @idx - 1)     
  6944.         else
  6945.             set @slice = @String     
  6946.         if len(@slice) > 0
  6947.             insert into @temptable     (Pole) 
  6948.             values(@slice)     
  6949.         set @String = right(@String,len(@String) - @idx)     
  6950.         if len(@String) = 0 
  6951.             break     
  6952.     end 
  6953. return     
  6954. end
  6955.  
  6956.  
  6957.  
  6958.  
  6959.  
  6960. Go
  6961. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_ulkod]'))
  6962. drop function [dbo].[fn_ulkod]
  6963.  
  6964. Go
  6965.  
  6966.  
  6967.  
  6968.  
  6969. CREATE    FUNCTION fn_ULKod
  6970. (
  6971.     @Sifra_Art  Varchar(20), 
  6972.     @Alt_Sifra  varchar(15)
  6973. )
  6974. RETURNS char(5)
  6975. AS
  6976. BEGIN
  6977.     Declare @Kod  char(5)
  6978.     Set @Kod = '     '
  6979.     If LTRIM(@Alt_Sifra) <> ''
  6980.         Set @Kod = LTRIM(@Alt_Sifra)
  6981.     Else
  6982.         Set @Kod = 'L' + SUBSTRING(@Sifra_Art, 3, 4)
  6983.     Return(@Kod)
  6984. END
  6985.  
  6986.  
  6987.  
  6988.  
  6989. Go
  6990. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vodat]'))
  6991. drop function [dbo].[fn_vodat]
  6992.  
  6993. Go
  6994. CREATE  FUNCTION fn_VoDat
  6995. (
  6996.     @Dat    varchar(20)
  6997. )
  6998. RETURNS smalldatetime--Varchar(20)
  6999. AS
  7000. BEGIN
  7001.     Declare @Datum smalldatetime
  7002.     Declare @God varchar(4)
  7003.     Declare @Mes varchar(2)
  7004.     Declare @Den varchar(2)
  7005.     Set @God = Substring(@Dat, 7, 2)
  7006.     Set @Mes = Substring(@Dat, 4, 2)
  7007.     Set @Den = Substring(@Dat, 1, 2)
  7008.     Set @Datum = ('20'+@God + '-' + @Mes + '-' + @Den)
  7009.     Return(@Datum)
  7010. END
  7011.  
  7012.  
  7013.  
  7014.  
  7015. Go
  7016. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vr_krajna]'))
  7017. drop function [dbo].[fn_vr_krajna]
  7018.  
  7019. Go
  7020.  
  7021. CREATE    FUNCTION fn_vr_krajna
  7022. (
  7023.     @Kolic Decimal(18,6),
  7024.     @DokCena Decimal(18,6),
  7025.     @DanDokCena Char(1),
  7026.     @POsn Decimal(6,2),
  7027.     @Uces Decimal(6,2),
  7028.     @Kasa Decimal(6,2)
  7029. )
  7030. RETURNS Decimal(18,6)
  7031. AS
  7032. BEGIN
  7033.     Declare @Vr_Krajna Decimal(18,6)
  7034.     Set @Vr_Krajna = 0
  7035.     If @DokCena = 0 
  7036.         Return(@Vr_Krajna)
  7037.     If @DanDokCena='D'
  7038.         Set @Vr_Krajna = @Kolic * @DokCena * (1 - @Uces / 100) * (1 - @Kasa / 100)
  7039.     Else If @DanDokCena='N'
  7040.         Set @Vr_Krajna = @Kolic * (@DokCena * (1 + @POsn / 100)) * (1 - @Uces / 100) * (1 - @Kasa / 100)
  7041.     Return(@Vr_Krajna)
  7042. END
  7043.  
  7044.  
  7045.  
  7046.  
  7047. Go
  7048. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vr_osnov]'))
  7049. drop function [dbo].[fn_vr_osnov]
  7050.  
  7051. Go
  7052.  
  7053. CREATE  FUNCTION fn_vr_osnov
  7054. (
  7055.     @Kolic Decimal(18,6),
  7056.     @DokCena Decimal(18,6),
  7057.     @DanDokCena Char(1),
  7058.     @POsn Decimal(6,2)
  7059. )
  7060. RETURNS Decimal(18,6)
  7061. AS
  7062. BEGIN
  7063.     Declare @Vr_Osnov Decimal(18,6)
  7064.     If @DanDokCena='D'
  7065.         Set @Vr_Osnov = @Kolic *(@DokCena / (1 + (@POsn / 100)))
  7066.     Else If @DanDokCena='N'
  7067.         Set @Vr_Osnov = @Kolic * @DokCena
  7068.     Return(@Vr_Osnov)
  7069. END
  7070.  
  7071.  
  7072.  
  7073.  
  7074. Go
  7075. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vr_sorabat]'))
  7076. drop function [dbo].[fn_vr_sorabat]
  7077.  
  7078. Go
  7079.  
  7080. CREATE  FUNCTION fn_vr_sorabat
  7081. (
  7082.     @Kolic Decimal(18,6),
  7083.     @DokCena Decimal(18,6),
  7084.     @DanDokCena Char(1),
  7085.     @POsn Decimal(6,2),
  7086.     @Uces Decimal(6,2),
  7087.     @Kasa Decimal(6,2)
  7088. )
  7089. RETURNS Decimal(18,6)
  7090. AS
  7091. BEGIN
  7092.     Declare @Vr_SoRabat Decimal(18,6)
  7093.     If @DanDokCena='D'
  7094.         Set @Vr_SoRabat = @Kolic *(@DokCena / (1 + (@POsn / 100)) * (1 - @Uces / 100)) * (1 - @Kasa / 100)
  7095.     Else If @DanDokCena='N'
  7096.         Set @Vr_SoRabat = @Kolic * @DokCena  * (1 - @Uces / 100) * (1 - @Kasa / 100)
  7097.     Return(@Vr_SoRabat)
  7098. END
  7099.  
  7100.  
  7101.  
  7102.  
  7103. Go
  7104. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratiakciza]'))
  7105. drop function [dbo].[fn_vratiakciza]
  7106.  
  7107. Go
  7108. CREATE     FUNCTION fn_VratiAkciza
  7109. (
  7110.     @Kolic Decimal(18,6),
  7111.     @Tezina Float,
  7112.     @ProcAlk Decimal(9,6),
  7113.     @AlkAkciza Decimal(18,6)
  7114. )
  7115. RETURNS Decimal(18,6)
  7116. AS
  7117. BEGIN
  7118.     Declare @Vrednost Decimal(18,6)
  7119.     Set @Vrednost = 0
  7120. --    Declare @AlkAkciza Char(10)
  7121. --    Set @AlkAkciza = (Select Cast(AlkAkciza as decimal(18,6)) From Konfig)
  7122.     Set @Vrednost = @Kolic * @Tezina* @ProcAlk * @AlkAkciza / 1000
  7123.     Return(@Vrednost)
  7124. END
  7125.  
  7126.  
  7127.  
  7128.  
  7129. Go
  7130. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vraticena]'))
  7131. drop function [dbo].[fn_vraticena]
  7132.  
  7133. Go
  7134.  
  7135.  
  7136. CREATE    FUNCTION fn_VratiCena
  7137. (
  7138.     @Cena Decimal(18,6),
  7139.     @POsn Decimal(6,2),
  7140.     @CenaSoDanok Char(1),
  7141.     @VratiCenaSoDanok Char(1)
  7142. )
  7143. RETURNS Decimal(18,6)
  7144. AS
  7145. BEGIN
  7146.     Declare @Vr_Krajna Decimal(18,6)
  7147.     Set @Vr_Krajna = 0
  7148.     if @Cena = 0 
  7149.         Return(@Vr_Krajna)
  7150.     If (@CenaSoDanok='D' and @VratiCenaSoDanok='D') or (@CenaSoDanok='N' and @VratiCenaSoDanok='N')
  7151.         Set @Vr_Krajna = @Cena 
  7152.     Else If @CenaSoDanok='N' and @VratiCenaSoDanok='D'
  7153.         Set @Vr_Krajna = @Cena * (1 + @POsn / 100)
  7154.     Else If @CenaSoDanok='D' and @VratiCenaSoDanok='N'
  7155.         Set @Vr_Krajna = @Cena / (1 + @POsn / 100)
  7156.     Return(@Vr_Krajna)
  7157. END
  7158.  
  7159.  
  7160.  
  7161.  
  7162. Go
  7163. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vraticenaakciza]'))
  7164. drop function [dbo].[fn_vraticenaakciza]
  7165.  
  7166. Go
  7167. CREATE     FUNCTION fn_VratiCenaAkciza
  7168. (
  7169.     @DokCena Decimal(18,6),
  7170.     @DanDokCena Char(1),
  7171.     @POsn Decimal(6,2),
  7172.     @Uces Decimal(6,2),
  7173.     @Kasa Decimal(6,2),
  7174.     @Kolic Decimal(18,6),
  7175.     @Tezina Float,
  7176.     @ProcAlk Decimal(9,6),
  7177.     @AlkAkciza decimal(18,6)
  7178. )
  7179. RETURNS Decimal(18,6)
  7180. AS
  7181. BEGIN
  7182.     Declare @Vr_Krajna Decimal(18,6)
  7183.     Set @Vr_Krajna = 0
  7184.     Declare @Cena Decimal(18,6)
  7185.     Set @Cena=0
  7186.     Declare @Vrednost Decimal(18,6)
  7187.     Declare @Danok Decimal(18,6)
  7188.     Declare @NetoVredn Decimal(18,6)
  7189.     Declare @Akciza Decimal(18,6)
  7190. --    Declare @AlkAkciza Char(10)
  7191. --    Set @AlkAkciza = (Select Cast(AlkAkciza as decimal(18,6)) From Konfig)
  7192.     If @DokCena = 0 
  7193.         Return(@Vr_Krajna)
  7194.     If @DanDokCena = 'D'
  7195.         Set @Cena = @DokCena * (1 - @Uces/100)  * (1 - @Kasa / 100) / (1 + @Posn / 100)
  7196.     else If @DanDokCena='N'
  7197.         Set @Cena = @DokCena * (1 - @Uces/100)  * (1 - @Kasa / 100)
  7198.     Set @NetoVredn = @Cena * @Kolic
  7199.     Set @Akciza = @AlkAkciza * @Kolic * @Tezina * @ProcAlk / 1000          -- @AlkAkciza - Cena po litar alkohol ,       (@Kolic * @Tezina * @ProcAlk / 1000)  - Presmetan litar alkohol      
  7200.     If @Kolic <> 0
  7201.         Set @Vr_Krajna = (@NetoVredn - @Akciza) / @Kolic
  7202.     Else
  7203.         Set @Vr_Krajna = 0
  7204.     Return(@Vr_Krajna)
  7205. END
  7206.  
  7207.  
  7208.  
  7209.  
  7210. Go
  7211. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vraticenagg]'))
  7212. drop function [dbo].[fn_vraticenagg]
  7213.  
  7214. Go
  7215.  
  7216.  
  7217. CREATE   FUNCTION fn_VratiCenaGG
  7218. (
  7219.     @Cena Decimal(18,6)
  7220. )
  7221. RETURNS Decimal(18,6)
  7222. AS
  7223. BEGIN
  7224.     Return(@Cena)
  7225. END
  7226.  
  7227.  
  7228.  
  7229.  
  7230. Go
  7231. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vraticenaosnov]'))
  7232. drop function [dbo].[fn_vraticenaosnov]
  7233.  
  7234. Go
  7235. CREATE     FUNCTION fn_VratiCenaOsnov
  7236. (
  7237.     @DokCena Decimal(18,6),
  7238.     @DanDokCena Char(1),
  7239.     @POsn Decimal(6,2),
  7240.     @Uces Decimal(6,2),
  7241.     @Kasa Decimal(6,2)
  7242. )
  7243. RETURNS Decimal(18,6)
  7244. AS
  7245. BEGIN
  7246.     Declare @Vr_Krajna Decimal(18,6)
  7247.     Set @Vr_Krajna = 0
  7248.     If @DokCena = 0 
  7249.         Return(@Vr_Krajna)
  7250.     If @DanDokCena = 'D'
  7251.         Set @Vr_Krajna = @DokCena * (1 - @Uces/100)  * (1 - @Kasa / 100) / (1 + @Posn / 100)
  7252.     else If @DanDokCena='N'
  7253.         Set @Vr_Krajna = @DokCena * (1 - @Uces/100)  * (1 - @Kasa / 100)
  7254.     Return(@Vr_Krajna)
  7255. END
  7256.  
  7257.  
  7258.  
  7259.  
  7260. Go
  7261. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vraticenapopis]'))
  7262. drop function [dbo].[fn_vraticenapopis]
  7263.  
  7264. Go
  7265. CREATE   FUNCTION fn_VratiCenaPopis
  7266. (
  7267.     @KolPopis Decimal(18,6),
  7268.     @VrPopis Decimal(18,6),
  7269.     @KolKnig Decimal(18,6),
  7270.     @VrKnig Decimal(18,6)
  7271. )
  7272. RETURNS Decimal(18,6)
  7273. AS
  7274. BEGIN
  7275.     Declare @Cena Decimal(18,6)
  7276.     Set @Cena = 0
  7277.     If @KolPopis <> 0
  7278.     Begin
  7279.         Set @Cena = @VrPopis/@KolPopis    
  7280.             If @Cena > 0
  7281.                 Return (@Cena)
  7282.     End
  7283.     If @KolKnig <> 0
  7284.     Begin
  7285.         Set @Cena = @VrKnig/@KolKnig    
  7286.             If @Cena > 0
  7287.                 Return (@Cena)
  7288.     End
  7289.     Set @Cena = 0
  7290.     Return(@Cena)
  7291. END
  7292.  
  7293.  
  7294.  
  7295.  
  7296. Go
  7297. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vraticenasoddvbezrabat]'))
  7298. drop function [dbo].[fn_vraticenasoddvbezrabat]
  7299.  
  7300. Go
  7301.  
  7302. CREATE     FUNCTION fn_VratiCenaSoDDVBezRabat
  7303. (
  7304.     @DokCena Decimal(18,6),
  7305.     @DanDokCena Char(1),
  7306.     @POsn Decimal(6,2),
  7307.     @Uces Decimal(6,2),
  7308.     @Kasa Decimal(6,2)
  7309. )
  7310. RETURNS Decimal(18,6)
  7311. AS
  7312. BEGIN
  7313.     Declare @Vr_Krajna Decimal(18,6)
  7314.     Set @Vr_Krajna = 0
  7315.     If @DokCena = 0 
  7316.         Return(@Vr_Krajna)
  7317.     Set @Vr_Krajna = @DokCena * (1 - @Uces/100)  * (1 - @Kasa / 100)
  7318.     If @DanDokCena='N'
  7319.         Set @Vr_Krajna = @Vr_Krajna * (1 + @Posn / 100) 
  7320.     Return(@Vr_Krajna)
  7321. END
  7322.  
  7323.  
  7324.  
  7325.  
  7326. Go
  7327. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vraticenazalager]'))
  7328. drop function [dbo].[fn_vraticenazalager]
  7329.  
  7330. Go
  7331.  
  7332.  
  7333. CREATE    FUNCTION fn_VratiCenaZaLager
  7334. (
  7335.     @SoDanok char(1),
  7336.     @VlIzl char(1),
  7337.     @MagCena Decimal(18,6),
  7338.     @DanMagCena char(1),
  7339.     @POsn Decimal(5,2),
  7340.     @DokCena Decimal(18,6),
  7341.     @DanDokCena char(1),
  7342.     @POsnPren Decimal(5,2)
  7343. )
  7344. RETURNS Decimal(18,6)
  7345. AS
  7346. BEGIN
  7347.     Declare @Vr_Krajna Decimal(18,6)
  7348.     Set @Vr_Krajna = 0
  7349.     /*Declare @VlIzl char(1)
  7350.     Declare @MagCena Decimal(18,6)
  7351.     Declare @DanMagCena char(1)
  7352.     Declare @POsn Decimal(5,2)
  7353.     Declare @DokCena Decimal(18,6)
  7354.     Declare @DanDokCena char(1)
  7355.     Declare @POsnPren Decimal(5,2)
  7356.     SELECT @VlIzl=VlIzl, @MagCena=MagCena, @DanMagCena=DanMagCena,
  7357.              @POsn=POsn, @DokCena=DokCena, @DanDokCena=DanDokCena, @POsnPren=POsnPren
  7358.     FROM Stavr
  7359.     WHERE DokID=@DokID    */
  7360.     If @VlIzl = 'I'
  7361.         Set @Vr_Krajna=dbo.fn_VratiCena(@DokCena, @POsnPren, @DanDokCena, @SoDanok) 
  7362.     If @VlIzl = 'V'
  7363.         Set @Vr_Krajna=dbo.fn_VratiCena(@MagCena, @POsn, @DanMagCena, @SoDanok) 
  7364.     Return(@Vr_Krajna)
  7365. END
  7366.  
  7367.  
  7368.  
  7369.  
  7370. Go
  7371. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatum]'))
  7372. drop function [dbo].[fn_vratidatum]
  7373.  
  7374. Go
  7375. CREATE    FUNCTION fn_VratiDatum
  7376. (
  7377.     @DatumVreme smalldatetime
  7378. )
  7379. RETURNS smalldatetime
  7380. AS
  7381. BEGIN
  7382.     Declare @Datum  smalldatetime
  7383.     Set @Datum = NULL
  7384.     Set @Datum  = cast(cast(datepart(yyyy, @DatumVreme) as char(4)) +'-'+ 
  7385.             cast(datepart(mm, @DatumVreme) as char(2)) +'-'+
  7386.             cast(datepart(dd, @DatumVreme) as char(2)) as smalldatetime)
  7387.     Return(@Datum)
  7388. END
  7389.  
  7390.  
  7391.  
  7392.  
  7393. Go
  7394. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumbezcrti]'))
  7395. drop function [dbo].[fn_vratidatumbezcrti]
  7396.  
  7397. Go
  7398.  
  7399.  
  7400.  
  7401.  
  7402.  
  7403.  
  7404. CREATE           FUNCTION fn_VratiDatumBezCrti
  7405. (
  7406.     @DatumVreme smalldatetime
  7407. )
  7408. RETURNS char(10)
  7409. AS
  7410. BEGIN
  7411.     Declare @Datum  char(10)
  7412.     Set @Datum = NULL
  7413.     Set @Datum  = cast(datepart(yyyy, @DatumVreme) as char(4)) + 
  7414.             case when cast(datepart(mm, @DatumVreme) as char(2))<10 then '0'+ cast(datepart(mm, @DatumVreme) as char(1)) else cast(datepart(mm, @DatumVreme) as char(2)) end +
  7415.             case when cast(datepart(dd, @DatumVreme) as char(2))<10 then '0'+ cast(datepart(dd, @DatumVreme) as char(1)) else cast(datepart(dd, @DatumVreme) as char(2)) end
  7416.     Return(@Datum)
  7417. END
  7418.  
  7419.  
  7420.  
  7421.  
  7422.  
  7423.  
  7424.  
  7425.  
  7426. Go
  7427. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumbezcrtiobratno]'))
  7428. drop function [dbo].[fn_vratidatumbezcrtiobratno]
  7429.  
  7430. Go
  7431. CREATE       FUNCTION fn_VratiDatumBezCrtiObratno
  7432. (
  7433.     @DatumVreme smalldatetime
  7434. )
  7435. RETURNS char(10)
  7436. AS
  7437. BEGIN
  7438.     Declare @Datum  char(10)
  7439.     Set @Datum = NULL
  7440.     Set @Datum  = case when datepart(dd, @DatumVreme)<10 then '0'+ cast(datepart(dd, @DatumVreme) as char(1)) 
  7441.                     else cast(datepart(dd, @DatumVreme) as char(2)) end +
  7442.                   case when  datepart(mm, @DatumVreme)<10 then '0'+ cast(datepart(mm, @DatumVreme) as char(1)) 
  7443.                     else cast(datepart(mm, @DatumVreme) as char(2)) end +
  7444.                   cast(datepart(yyyy, @DatumVreme) as char(4))
  7445.     Return(@Datum)
  7446. END
  7447.  
  7448. Go
  7449. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumod]'))
  7450. drop function [dbo].[fn_vratidatumod]
  7451.  
  7452. Go
  7453. CREATE    FUNCTION fn_VratiDatumOd
  7454. (
  7455.     @Godina smallint,
  7456.     @Mesec smallint
  7457. )
  7458. RETURNS smalldatetime
  7459. AS
  7460. BEGIN
  7461.     Declare @DatOd  smalldatetime
  7462.     Set @DatOd = NULL
  7463.     Set @DatOd = Cast(Cast(@Godina as Varchar(4)) + '-' + Cast(@Mesec as Varchar(2))+ '-' + '01' as smalldatetime)
  7464.     Return(@DatOd)
  7465. END
  7466.  
  7467.  
  7468.  
  7469.  
  7470. Go
  7471. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumoddo]'))
  7472. drop function [dbo].[fn_vratidatumoddo]
  7473.  
  7474. Go
  7475. CREATE    FUNCTION fn_VratiDatumOdDo
  7476. (
  7477.     @Godina varchar(4),
  7478.     @Mesec varchar(2),
  7479.     @Den varchar(2)
  7480. )
  7481. RETURNS smalldatetime
  7482. AS
  7483. BEGIN
  7484.     If @Den > 30 and @Mesec In (4,6,9,11)
  7485.         Set @Den = 30 
  7486.     Else If @Den > 28 and @Mesec=2
  7487.     Begin
  7488.         Declare @DatPres as smalldatetime
  7489.         Set @DatPres = Cast(@Godina + '-03-01' as smalldatetime)
  7490.         Set @DatPres = dateadd(day, -1, @DatPres)
  7491.         Set @Den = Day(@DatPres)
  7492.     End
  7493.     Declare @Dat  smalldatetime
  7494.     Set @Dat = NULL
  7495.     Set @Dat = Cast(@Godina + '-' + @Mesec + '-' + @Den as smalldatetime)
  7496.     Return(@Dat)
  7497. END
  7498.  
  7499.  
  7500.  
  7501.  
  7502. Go
  7503. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumstring]'))
  7504. drop function [dbo].[fn_vratidatumstring]
  7505.  
  7506. Go
  7507.  
  7508. CREATE     FUNCTION fn_VratiDatumString
  7509. (
  7510.     @Datum smalldatetime
  7511. )
  7512. RETURNS varchar(30)
  7513. AS
  7514. BEGIN
  7515.     Declare @DatOd  varchar(30)
  7516.     Declare @Mesec varchar(2)
  7517.     Declare @Den varchar(2)
  7518.     If Month(@Datum) < 10
  7519.         Set @Mesec = '0' + cast(Month(@Datum) as varchar(1))
  7520.     Else 
  7521.         Set @Mesec = cast(Month(@Datum) as varchar(2))
  7522.     If Day(@Datum) < 10
  7523.         Set @Den = '0' + cast(Day(@Datum) as varchar(1))
  7524.     Else 
  7525.         Set @Den = cast(Day(@Datum) as varchar(2))
  7526.     Set @DatOd = NULL
  7527.     Set @DatOd = @Den + '-' + @Mesec + '-' + Cast(Year(@Datum) as Varchar(4))
  7528.     Return(@DatOd)
  7529. END
  7530.  
  7531.  
  7532.  
  7533.  
  7534. Go
  7535. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumstring2]'))
  7536. drop function [dbo].[fn_vratidatumstring2]
  7537.  
  7538. Go
  7539. Create      FUNCTION fn_VratiDatumString2
  7540. (
  7541.     @Datum smalldatetime
  7542. )
  7543. RETURNS varchar(30)
  7544. AS
  7545. BEGIN
  7546.     Declare @DatOd  varchar(30)
  7547.     Declare @Mesec varchar(2)
  7548.     Declare @Den varchar(2)
  7549.     If Month(@Datum) < 10
  7550.         Set @Mesec = '0' + cast(Month(@Datum) as varchar(1))
  7551.     Else 
  7552.         Set @Mesec = cast(Month(@Datum) as varchar(2))
  7553.     If Day(@Datum) < 10
  7554.         Set @Den = '0' + cast(Day(@Datum) as varchar(1))
  7555.     Else 
  7556.         Set @Den = cast(Day(@Datum) as varchar(2))
  7557.     Set @DatOd = NULL
  7558.     Set @DatOd = @Den + '/' + @Mesec + '/' + Cast(Year(@Datum) as Varchar(4))
  7559.     Return(@DatOd)
  7560. END
  7561.  
  7562.  
  7563.  
  7564.  
  7565.  
  7566. Go
  7567. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumstringobratno]'))
  7568. drop function [dbo].[fn_vratidatumstringobratno]
  7569.  
  7570. Go
  7571.  
  7572. CREATE    FUNCTION fn_VratiDatumStringObratno
  7573. (
  7574.     @Datum smalldatetime
  7575. )
  7576. RETURNS varchar(8)
  7577. AS
  7578. BEGIN
  7579.     Declare @DatOd  varchar(30)
  7580.     Declare @Mesec varchar(2)
  7581.     Declare @Den varchar(2)
  7582.     If Month(@Datum) < 10
  7583.         Set @Mesec = '0' + cast(Month(@Datum) as varchar(1))
  7584.     Else 
  7585.         Set @Mesec = cast(Month(@Datum) as varchar(2))
  7586.     If Day(@Datum) < 10
  7587.         Set @Den = '0' + cast(Day(@Datum) as varchar(1))
  7588.     Else 
  7589.         Set @Den = cast(Day(@Datum) as varchar(2))
  7590.     Set @DatOd = NULL
  7591.     Set @DatOd =  Cast(Year(@Datum) as varchar(4))+ @Mesec+@Den 
  7592.     Set @DatOd=substring(@DatOd, 3, 6)
  7593.     Return(@DatOd)
  7594. END
  7595.  
  7596.  
  7597.  
  7598.  
  7599. Go
  7600. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumstringobratnopoc]'))
  7601. drop function [dbo].[fn_vratidatumstringobratnopoc]
  7602.  
  7603. Go
  7604.  
  7605. CREATE     FUNCTION fn_VratiDatumStringObratnoPoc
  7606. (
  7607.     @Datum smalldatetime
  7608. )
  7609. RETURNS varchar(8)
  7610. AS
  7611. BEGIN
  7612.     Declare @DatOd  varchar(30)
  7613.     Declare @Mesec varchar(2)
  7614.     Declare @Den varchar(2)
  7615.     If Month(@Datum) < 10
  7616.         Set @Mesec = '0' + cast(Month(@Datum) as varchar(1))
  7617.     Else 
  7618.         Set @Mesec = cast(Month(@Datum) as varchar(2))
  7619.     If Day(@Datum) < 10
  7620.         Set @Den = '0' + cast(Day(@Datum) as varchar(1))
  7621.     Else 
  7622.         Set @Den = cast(Day(@Datum) as varchar(2))
  7623.     Set @DatOd = NULL
  7624.     Set @DatOd =  Cast(Year(@Datum) as varchar(4))+ @Mesec+@Den 
  7625.     Set @DatOd=substring(@DatOd, 1, 8)
  7626.     Return(@DatOd)
  7627. END
  7628.  
  7629.  
  7630.  
  7631.  
  7632.  
  7633.  
  7634. Go
  7635. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidatumstringsocrti]'))
  7636. drop function [dbo].[fn_vratidatumstringsocrti]
  7637.  
  7638. Go
  7639.  
  7640. CREATE    FUNCTION fn_VratiDatumStringSoCrti
  7641. (
  7642.     @Datum smalldatetime
  7643. )
  7644. RETURNS varchar(30)
  7645. AS
  7646. BEGIN
  7647.     Declare @DatOd  varchar(30)
  7648.     Declare @Mesec varchar(2)
  7649.     Declare @Den varchar(2)
  7650.     If Month(@Datum) < 10
  7651.         Set @Mesec = '0' + cast(Month(@Datum) as varchar(1))
  7652.     Else 
  7653.         Set @Mesec = cast(Month(@Datum) as varchar(2))
  7654.     If Day(@Datum) < 10
  7655.         Set @Den = '0' + cast(Day(@Datum) as varchar(1))
  7656.     Else 
  7657.         Set @Den = cast(Day(@Datum) as varchar(2))
  7658.     Set @DatOd = Cast(Year(@Datum) as Varchar(4)) + '-' + @Mesec + '-' + @Den 
  7659.     Return(@DatOd)
  7660. END
  7661.  
  7662.  
  7663.  
  7664.  
  7665.  
  7666. Go
  7667. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratidenabezvikend]'))
  7668. drop function [dbo].[fn_vratidenabezvikend]
  7669.  
  7670. Go
  7671.  
  7672. CREATE     FUNCTION fn_VratiDenaBezVikend
  7673. (
  7674.     @Datum smalldatetime
  7675. )
  7676. RETURNS Smallint
  7677. AS
  7678. BEGIN
  7679.     Declare @Denovi as smallint
  7680.     Set @Denovi = 0
  7681.  
  7682.     IF DatePart(weekday, @Datum) IN (5,6,7) 
  7683.         Set @Denovi = 2
  7684.     Return(@Denovi)
  7685. END
  7686.  
  7687.  
  7688.  
  7689.  
  7690.  
  7691. Go
  7692. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratigodmes]'))
  7693. drop function [dbo].[fn_vratigodmes]
  7694.  
  7695. Go
  7696. CREATE FUNCTION dbo.fn_VratiGodMes
  7697. (    @Datum as datetime    )  
  7698. RETURNS  int   AS  
  7699. BEGIN 
  7700.     Declare @GodMes     char(6)
  7701.     Declare @IGodMes    int
  7702.     Declare @Mes         char(2)
  7703.     SET @IGodMes = 0
  7704.     IF @Datum IS NULL   RETURN @IGodMes
  7705.     SET @GodMes    =CAST(YEAR(@Datum) as char(4)) 
  7706.     IF Month(@Datum) < 10 
  7707.         SET @Mes = '0' + ltrim(CAST(MONTH(@Datum) as char(1)))
  7708.     ELSE
  7709.         SET @Mes = ltrim(CAST(MONTH(@Datum) as char(2)))
  7710.     SET @IGodMes = Cast(rtrim(ltrim(@GodMes)) + @Mes  as int)    
  7711.     RETURN @IGodMes
  7712. END
  7713.  
  7714.  
  7715.  
  7716.  
  7717. Go
  7718. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratigodmesden]'))
  7719. drop function [dbo].[fn_vratigodmesden]
  7720.  
  7721. Go
  7722.  
  7723.  
  7724. CREATE   FUNCTION dbo.fn_VratiGodMesDen
  7725. (    @KontrSer as varchar(25),
  7726.     @Datum_Dok as smalldatetime    )  
  7727. RETURNS  varchar(25)   AS  
  7728. BEGIN         --Mnogu vazna fn - SE UPOTREBUVA vo trigeri na Stavr
  7729.     Declare @God     char(4)
  7730.     Declare @Mes    char(2)
  7731.     Declare @Den    char(2)
  7732.     Declare @Datum     smalldatetime
  7733.     Declare @Prefix    char(3)
  7734.     SET @Prefix = Substring(@KontrSer,1,3)
  7735.     IF @Prefix = 'RR>' OR @Prefix = 'DD>'
  7736.         SET @Datum = dbo.fn_NapraviDatum(Cast(Substring(@KontrSer, 10, 4) as smallint), 
  7737. Cast(Substring(@KontrSer, 7, 2) as smallint), Cast(Substring(@KontrSer, 4, 2) as smallint))
  7738.     Else IF @Prefix = 'KK>' 
  7739.         SET @Datum = @Datum_Dok
  7740.     IF @Datum IS NULL   RETURN ''
  7741.     SET @God = CAST(YEAR(@Datum) as char(4)) 
  7742.     IF Month(@Datum) < 10 
  7743.         SET @Mes = '0' + ltrim(CAST(MONTH(@Datum) as char(1)))
  7744.     ELSE
  7745.         SET @Mes = ltrim(CAST(MONTH(@Datum) as char(2)))
  7746.     IF Day(@Datum) < 10 
  7747.         SET @Den = '0' + ltrim(CAST(Day(@Datum) as char(1)))
  7748.     ELSE
  7749.         SET @Den = ltrim(CAST(Day(@Datum) as char(2)))
  7750.     RETURN @God+@Mes+@Den
  7751. END
  7752.  
  7753.  
  7754.  
  7755.  
  7756. Go
  7757. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratigodmesdenbas]'))
  7758. drop function [dbo].[fn_vratigodmesdenbas]
  7759.  
  7760. Go
  7761.  
  7762. CREATE  FUNCTION dbo.fn_VratiGodMesDenBas
  7763. (    @Datum as datetime    )  
  7764. RETURNS  CHAR(8)   AS  
  7765. BEGIN 
  7766.     Declare @GodMesDen     varchar(8)
  7767.     IF @Datum IS NULL   RETURN @GodMesDen
  7768.     SET @GodMesDen    =CAST(YEAR(@Datum) as char(4)) 
  7769.     IF Month(@Datum) < 10 
  7770.         SET @GodMesDen = @GodMesDen + '0' + CAST(MONTH(@Datum) as char(1))
  7771.     ELSE
  7772.         SET @GodMesDen = @GodMesDen + CAST(MONTH(@Datum) as char(2))
  7773.     IF Day(@Datum) < 10 
  7774.         SET @GodMesDen = @GodMesDen + '0' + CAST(Day(@Datum) as char(1))
  7775.     ELSE
  7776.         SET @GodMesDen = @GodMesDen + CAST(Day(@Datum) as char(2))
  7777.     RETURN @GodMesDen
  7778. END
  7779.  
  7780.  
  7781.  
  7782.  
  7783. Go
  7784. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratigodmespred]'))
  7785. drop function [dbo].[fn_vratigodmespred]
  7786.  
  7787. Go
  7788. CREATE  FUNCTION dbo.fn_VratiGodMesPred
  7789. (    @IGodMes    as int,
  7790.     @MesPred    as smallint
  7791. )  
  7792. RETURNS  int   AS  
  7793. BEGIN 
  7794.     Declare @GodMes     char(6)
  7795.     Declare @Mes        char(2)
  7796.     Declare @IMes        int
  7797.     Declare @Vrati        int
  7798.     SET @GodMes = CAST(@IGodMes as char(6))
  7799.     SET @IMes = Cast(Substring(@GodMes,5,2) as smallint)
  7800.     IF @IMes >= @MesPred
  7801.     Begin
  7802.         If @MesPred <10
  7803.         begin
  7804.             SET @Mes = '0' + ltrim(CAST(@MesPred as char(1))) 
  7805.         end
  7806.         Else 
  7807.             SET @Mes = CAST(@MesPred as char(2)) 
  7808.         SET @Vrati = Cast(Cast(Cast(substring(@GodMes, 1,4) as int) as char(4)) + cast(@Mes as char(2)) as int)
  7809.     end
  7810.     ELSE
  7811.     Begin
  7812.         SET @IMes = @IMes +12
  7813.         SET @Vrati = Cast(Cast(Cast(substring(@GodMes, 1,4) as int) -1 as char(4)) + cast(@IMes as char(2)) as int)
  7814.         SET @Vrati = @Vrati - @MesPred+1
  7815.     End
  7816.     RETURN @Vrati
  7817. /*
  7818.     IF @IMes > @MesPred
  7819.         SET @Vrati = @IGodMes - 1    
  7820.     ELSE
  7821.     Begin
  7822.         SET @IMes = @IMes +12
  7823.         SET @Vrati = Cast(Cast(Cast(substring(@GodMes, 1,4) as int) -1 as char(4)) + cast(@IMes as char(2)) as int)
  7824.         SET @Vrati = @Vrati - @MesPred
  7825.     End
  7826.     RETURN @Vrati
  7827. */
  7828. END
  7829.  
  7830.  
  7831.  
  7832.  
  7833. Go
  7834. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratikasabezddv]'))
  7835. drop function [dbo].[fn_vratikasabezddv]
  7836.  
  7837. Go
  7838.  
  7839.  
  7840. CREATE       FUNCTION fn_VratiKasaBezDDV
  7841. (
  7842.     @Kolic    Decimal(18,6),
  7843.     @DokCena Decimal(18,6),
  7844.     @DanDokCena Char(1),
  7845.     @POsn    Decimal(6,2),
  7846.     @Uces    Decimal(6,2),
  7847.     @Kasa    Decimal(6,2) 
  7848. )
  7849. RETURNS Decimal(18,6)
  7850. AS
  7851. BEGIN
  7852.     Declare @Vr_Krajna Decimal(18,6)
  7853.     Set @Vr_Krajna = 0
  7854.     If @Kasa = 0 
  7855.         Return(@Vr_Krajna)
  7856.     Set @Vr_Krajna = @Kolic * @DokCena *  (1-@Uces/100) * @Kasa/100
  7857.     If @DanDokCena='D'
  7858.         Set @Vr_Krajna = @Vr_Krajna / (1 + @Posn / 100)
  7859.     Return(@Vr_Krajna)
  7860. END
  7861.  
  7862.  
  7863.  
  7864.  
  7865. Go
  7866. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratimarza]'))
  7867. drop function [dbo].[fn_vratimarza]
  7868.  
  7869. Go
  7870.  
  7871.  
  7872.  
  7873. CREATE    FUNCTION fn_VratiMarza
  7874. (
  7875.     @NabavnaC  Decimal(18,6),
  7876.     @ProdaznaC Decimal(18,6)
  7877. )
  7878. RETURNS Decimal(18,6)
  7879. AS
  7880. BEGIN
  7881.     Declare @Marza Decimal(18,6)
  7882.     Set @Marza = 0
  7883.     if @NabavnaC IS NULL 
  7884.         Return(@Marza)
  7885.     if @NabavnaC = 0 
  7886.         Return(@Marza)
  7887.     Set @Marza = Round((@ProdaznaC / @NabavnaC - 1) * 100, 2)
  7888.     Return(@Marza)
  7889. END
  7890.  
  7891.  
  7892.  
  7893.  
  7894. Go
  7895. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratiperiod]'))
  7896. drop function [dbo].[fn_vratiperiod]
  7897.  
  7898. Go
  7899. CREATE    FUNCTION fn_VratiPeriod
  7900. (
  7901.     @Datum smalldatetime,
  7902.     @DenVoPer smallint,
  7903.     @BrPeriodi smallint
  7904. )
  7905. RETURNS Smallint
  7906. AS
  7907. BEGIN
  7908.     Declare @Period as smallint
  7909.     Set @Period = NULL
  7910.     Set @Period = (day(@Datum) - 1) / @DenVoPer + 1
  7911.     If @Period > @BrPeriodi
  7912.         Set @Period = @BrPeriodi
  7913.     Return(@Period)
  7914. END
  7915.  
  7916.  
  7917.  
  7918.  
  7919. Go
  7920. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratiprvdatumsledenmes]'))
  7921. drop function [dbo].[fn_vratiprvdatumsledenmes]
  7922.  
  7923. Go
  7924. CREATE FUNCTION fn_VratiPrvDatumSledenMes
  7925. (    @Datum        smalldatetime,
  7926.     @GodPresm    smallint
  7927. )
  7928. RETURNS smalldatetime
  7929. AS
  7930. BEGIN
  7931.     Declare @Godina varchar(4)
  7932.     Declare @Mesec varchar(2)
  7933.     Declare @IMes smallint
  7934.     Declare @Den varchar(2)
  7935.     SET @Godina = Year(@Datum)
  7936.     SET @IMes = Month(@Datum)
  7937.     SET @Den = '01'
  7938. IF @Godina < @GodPresm 
  7939.     Begin
  7940.         SET @Godina = @GodPresm
  7941.         SET @Mesec = '01'
  7942.     End
  7943. ELSE
  7944.     Begin
  7945.         SET @IMes = @IMes + 1
  7946.         IF @IMes = 13
  7947.         Begin
  7948.             SET @Godina = Year(@Datum) + 1
  7949.             SET @Mesec = '01'
  7950.         End
  7951.         ELSE
  7952.             SET @Mesec = cast(@IMes as varchar(2))
  7953.     End
  7954.     Declare @Dat  smalldatetime
  7955.     Set @Dat = NULL
  7956.     Set @Dat = Cast(@Godina + '-' + @Mesec + '-' + @Den as smalldatetime)
  7957.     Return(@Dat)
  7958. END
  7959.  
  7960.  
  7961.  
  7962.  
  7963. Go
  7964. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratirabatbezddv]'))
  7965. drop function [dbo].[fn_vratirabatbezddv]
  7966.  
  7967. Go
  7968.  
  7969. CREATE      FUNCTION fn_VratiRabatBezDDV
  7970. (
  7971.     @Kolic    Decimal(18,6),
  7972.     @DokCena Decimal(18,6),
  7973.     @DanDokCena Char(1),
  7974.     @POsn Decimal(6,2),
  7975.     @Uces Decimal(6,2)
  7976. )
  7977. RETURNS Decimal(18,6)
  7978. AS
  7979. BEGIN
  7980.     Declare @Vr_Krajna Decimal(18,6)
  7981.     Set @Vr_Krajna = 0
  7982.     If @Uces IS NULL  
  7983.         Return(@Vr_Krajna)
  7984.     If @Uces = 0  
  7985.         Return(@Vr_Krajna)
  7986.     Set @Vr_Krajna = @Kolic * @DokCena *  @Uces/100
  7987.     If @DanDokCena='D'
  7988.         Set @Vr_Krajna = @Vr_Krajna / (1 + @Posn / 100)
  7989.     Return(@Vr_Krajna)
  7990. END
  7991.  
  7992.  
  7993.  
  7994.  
  7995. Go
  7996. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratirabatsoddv]'))
  7997. drop function [dbo].[fn_vratirabatsoddv]
  7998.  
  7999. Go
  8000.  
  8001. CREATE     FUNCTION fn_VratiRabatSoDDV
  8002. (
  8003.     @DokCena Decimal(18,6),
  8004.     @DanDokCena Char(1),
  8005.     @POsn Decimal(6,2),
  8006.     @Uces Decimal(6,2),
  8007.     @Kasa Decimal(6,2)
  8008. )
  8009. RETURNS Decimal(18,6)
  8010. AS
  8011. BEGIN
  8012.     Declare @Vr_Krajna Decimal(18,6)
  8013.     Set @Vr_Krajna = 0
  8014.     If @Uces = 0 
  8015.         Return(@Vr_Krajna)
  8016.     Set @Vr_Krajna = @DokCena * (1-(1- @Uces/100) * (1 - @Kasa/100))
  8017.     If @DanDokCena='N'
  8018.         Set @Vr_Krajna = @Vr_Krajna * (1 + @Posn / 100)
  8019.     Return(@Vr_Krajna)
  8020. END
  8021.  
  8022.  
  8023.  
  8024.  
  8025. Go
  8026. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratirabdenovi]'))
  8027. drop function [dbo].[fn_vratirabdenovi]
  8028.  
  8029. Go
  8030. CREATE Function dbo.fn_VratiRabDenovi (@DatumOD as smalldatetime, @DatumDo as smalldatetime)
  8031. returns integer
  8032. as
  8033. BEGIN
  8034.     declare @BrDenovi as integer
  8035.     declare @PocDatum as smalldatetime
  8036.     Set @BrDenovi=0
  8037.     Set @PocDatum=@DatumOd
  8038.     While @DatumOd>@DatumDo
  8039.         begin
  8040.             if datepart(dw, @PocDatum)in (1,7) 
  8041.                 set @BrDenovi=@Brdenovi
  8042.             else
  8043.                  set @BrDenovi=@BrDenovi+1
  8044.             set @PocDatum=dateadd(d,1,@PocDatum)
  8045.         end
  8046.     RETURN (@BrDenovi)
  8047. END
  8048.  
  8049. Go
  8050. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vratiskalcena]'))
  8051. drop function [dbo].[fn_vratiskalcena]
  8052.  
  8053. Go
  8054.  
  8055. CREATE   FUNCTION fn_VratiSkalCena
  8056. (
  8057.     @Cena Decimal(18,6),
  8058.     @POsn Decimal(6,2),
  8059.     @DanCenaOrgEd Char(1),
  8060.     @DanCenaSoArt Char(1)
  8061. )
  8062. RETURNS Decimal(18,6)
  8063. AS
  8064. BEGIN
  8065.     Declare @Vr_Krajna Decimal(18,6)
  8066.     Set @Vr_Krajna = 0
  8067.     If @Cena = 0 
  8068.         Return(@Vr_Krajna)
  8069.     If @DanCenaOrgEd = @DanCenaSoArt
  8070.         Return @Cena
  8071.     If @DanCenaOrgEd = 'N' And @DanCenaSoArt = 'D' 
  8072.         Set @Vr_Krajna = Round(@Cena / (1 + @POsn / 100), 4)
  8073.     Else
  8074.         Set @Vr_Krajna = Round(@Cena * (1 + @POsn / 100), 4)
  8075.     Return(@Vr_Krajna)
  8076. END
  8077.  
  8078.  
  8079.  
  8080.  
  8081. Go
  8082. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vrativredizl]'))
  8083. drop function [dbo].[fn_vrativredizl]
  8084.  
  8085. Go
  8086. CREATE     FUNCTION fn_VratiVredIzl
  8087. (
  8088.     @Kolic Decimal(18,6),
  8089.     @DokCena Decimal(18,6),
  8090.     @DanDokCena Char(1),
  8091.     @POsn Decimal(6,2),
  8092.     @Uces Decimal(6,2), 
  8093.     @Kasa Decimal(6,2),
  8094.     @VratiCenaSoDanok Char(1)
  8095. )
  8096. RETURNS Decimal(18,6)
  8097. AS
  8098. BEGIN
  8099.     Declare @Vr_Krajna Decimal(18,6)
  8100.     Set @Vr_Krajna = 0
  8101.     If @DokCena = 0 
  8102.         Return(@Vr_Krajna)
  8103.     If (@DanDokCena='D' and @VratiCenaSoDanok='D') or (@DanDokCena='N' and @VratiCenaSoDanok='N')
  8104.         Set @Vr_Krajna = @Kolic * @DokCena * (1 - @Uces / 100) * (1 - @Kasa / 100)
  8105.     Else If @DanDokCena='N' and @VratiCenaSoDanok='D'
  8106.         Set @Vr_Krajna = @Kolic * @DokCena * (1 + @POsn / 100) * (1 - @Uces / 100) * (1 - @Kasa / 100)
  8107.     Else If @DanDokCena='D' and @VratiCenaSoDanok='N'
  8108.         Set @Vr_Krajna = @Kolic * @DokCena / (1 + @POsn / 100) * (1 - @Uces / 100) * (1 - @Kasa / 100)
  8109.     Return(@Vr_Krajna)
  8110. END
  8111.  
  8112.  
  8113.  
  8114.  
  8115. Go
  8116. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_vrativreme]'))
  8117. drop function [dbo].[fn_vrativreme]
  8118.  
  8119. Go
  8120. CREATE       FUNCTION fn_VratiVreme
  8121. (
  8122.     @DatumVreme smalldatetime
  8123. )
  8124. RETURNS varchar(5)
  8125. AS
  8126. BEGIN
  8127.     Declare @Vreme  varchar(5)
  8128.     Declare @Cas varchar(2) 
  8129.     Declare @Min varchar(2) 
  8130.     Set @Vreme = ' '
  8131.     if @DatumVreme IS NOT NULL
  8132.     Set @Cas = cast(datepart(hh, @DatumVreme) as varchar(2))
  8133.     If @Cas < 10
  8134.         Set @Cas = '0' + @Cas
  8135.     Set @Min =  cast(datepart(mi, @DatumVreme) as varchar(2))
  8136.     If @Min < 10
  8137.         Set @Min = '0' + @Min
  8138.     Set @Vreme = @Cas + ':' + @Min
  8139. --         Set @Vreme  = cast(datepart(hh, @DatumVreme) as char(2)) +':'+ 
  8140. --                      cast(datepart(mi, @DatumVreme) as char(2))
  8141. --    Set @Vreme = Replace(@Vreme, ' ', '0')
  8142.     Return(@Vreme)
  8143. END
  8144.  
  8145.  
  8146.  
  8147.  
  8148. Go
  8149. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_zaokr_5]'))
  8150. drop function [dbo].[fn_zaokr_5]
  8151.  
  8152. Go
  8153.  
  8154.  
  8155. CREATE   FUNCTION fn_zaokr_5
  8156. (
  8157.     @NekojBroj Decimal(18,6)
  8158. )
  8159. RETURNS Decimal(18,6)
  8160. AS
  8161. BEGIN
  8162.     if @NekojBroj < 0
  8163.         Return - dbo.fn_zaokr_5(-@NekojBroj)
  8164.     Declare @Cel Decimal(18,6)
  8165.     Set @Cel = floor (@NekojBroj)
  8166.     If @NekojBroj - @Cel < 0.25
  8167.         Return (@Cel)
  8168.     else If @NekojBroj - @Cel > 0.75
  8169.         Return (@Cel + 1)
  8170.     Return (@Cel + 0.5)
  8171. END
  8172.  
  8173.  
  8174.  
  8175.  
  8176. Go
  8177. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_zaokr_5den]'))
  8178. drop function [dbo].[fn_zaokr_5den]
  8179.  
  8180. Go
  8181.  
  8182.  
  8183. create  FUNCTION fn_zaokr_5den
  8184. (
  8185.     @NekojBroj Decimal(18,6)
  8186. )
  8187. RETURNS Decimal(18,6)
  8188. AS
  8189. BEGIN
  8190.     if @NekojBroj < 0
  8191.         Return - dbo.fn_zaokr_5den(-@NekojBroj)
  8192.     Declare @Cel Decimal(18,6)
  8193.     set @NekojBroj = @NekojBroj / 10
  8194.     Set @Cel = floor (@NekojBroj)
  8195.     If @NekojBroj - @Cel < 0.25
  8196.         Return (@Cel * 10)
  8197.     else If @NekojBroj - @Cel > 0.75
  8198.         Return (@Cel + 1) * 10
  8199.     Return (@Cel * 10 + 5)
  8200. END
  8201.  
  8202.  
  8203.  
  8204.  
  8205. Go
  8206. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[fn_zaokr5]'))
  8207. drop function [dbo].[fn_zaokr5]
  8208.  
  8209. Go
  8210.  
  8211.  
  8212.  
  8213.  
  8214. create  FUNCTION fn_Zaokr5
  8215. (@Broj Decimal(18,6)
  8216. )
  8217. RETURNS decimal (18, 6)
  8218. AS
  8219. BEGIN
  8220.     Declare @Broj1 as decimal(18,6)
  8221.     Declare @BrojVrati as decimal(18,6)
  8222.     Declare @wCel as int
  8223.     Declare @wDec as decimal(18,6)
  8224.     SET @Broj1 = ABS(@Broj)
  8225.     SET @wCel = @Broj1
  8226.     SET @wDec = @Broj1 - @wCel
  8227.     IF @wDec<=0.255     -- DK -- do Apr 6, 2007 besse  0.0255  !?!
  8228.          SET @BrojVrati = @wCel
  8229.     ELSE IF @wDec > 0.755
  8230.         SET @BrojVrati = @wCel + 1
  8231.     ELSE  
  8232.         SET @BrojVrati = @wCel + 0.5
  8233.     IF @Broj<0 SET @BrojVrati = @BrojVrati * -1
  8234. RETURN @BrojVrati
  8235. END
  8236.  
  8237.  
  8238.  
  8239.  
  8240.  
  8241.  
  8242.  
  8243.  
  8244. Go
  8245. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[pros_min_max]'))
  8246. drop function [dbo].[pros_min_max]
  8247.  
  8248. Go
  8249. CREATE    FUNCTION dbo.Pros_Min_Max
  8250. (    @Kandidat_NabC    decimal(18,6),
  8251.     @TekMinCena        decimal(18,6),
  8252.     @TekMaxCena        decimal(18,6),
  8253.     @Stavr_NabCena    decimal(18,6) 
  8254. )  
  8255. RETURNS decimal(18,6)
  8256. AS  
  8257. BEGIN 
  8258.     Declare @wTekMinCena    decimal(18,6)
  8259.     Declare @wTekMaxCena    decimal(18,6)
  8260.     SET @wTekMinCena = @TekMinCena * 0.9   -- Sigurnosen faktor za dobivanje linearnost
  8261.     SET @wTekMaxCena = @TekMaxCena * 1.1    -- Sigurnosen faktor za dobivanje linearnost
  8262.     If @Stavr_NabCena > 0
  8263.     Begin
  8264.         If @Stavr_NabCena < @wTekMinCena
  8265.             SET @wTekMinCena = @Stavr_NabCena
  8266.         If @Stavr_NabCena > @wTekMaxCena
  8267.             SET @wTekMaxCena = @Stavr_NabCena
  8268.     End
  8269.     If @Kandidat_NabC < @wTekMinCena
  8270.         SET @Kandidat_NabC = @wTekMinCena
  8271.     If @Kandidat_NabC > @wTekMaxCena and @wTekMaxCena > 0
  8272.         SET @Kandidat_NabC = @wTekMaxCena
  8273.     RETURN @Kandidat_NabC
  8274. END
  8275.  
  8276.  
  8277.  
  8278.  
  8279.  
  8280. Go
  8281. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_902]'))
  8282. drop procedure [dbo].[sp_902]
  8283.  
  8284. Go
  8285.  
  8286.  
  8287.  
  8288.  
  8289.  
  8290. CREATE        PROCEDURE sp_902
  8291.     @Sifra_OE Smallint,
  8292.     @Sifra_Art Varchar(20),
  8293.     @KrCena Decimal(18,6),
  8294.     @DanKrCena Char(1),
  8295.     @Datum_Dok Smalldatetime,
  8296.         @Akciska_Prod Char(1)=null
  8297. AS
  8298.     Declare @soCena Decimal(18,6)
  8299.     Declare @soDanCena Char(1)
  8300.     Declare @soKolicina Decimal(18,6)
  8301.     Declare @POsn Decimal(6,2)
  8302.     Declare @PTar Char(3)
  8303.     Declare @Ima int    
  8304.     Declare @Artikal varchar(12)
  8305. Select @Artikal = Sifra_Art FROM KatArt WHERE Sifra_Art = @Sifra_Art
  8306. If @@RowCount > 0    
  8307.     Begin
  8308.     Select @soCena=S.Cena, @soDanCena=S.DanCena, @soKolicina=S.Vlez-S.Izlez, @POsn=T.ProcOsn, @PTar=K.Sifra_Tar From Soart S
  8309.     Inner Join Katart K on S.Sifra_Art=K.Sifra_Art
  8310.     Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar
  8311.     Where S.Sifra_OE=@Sifra_OE And S.Sifra_Art=@Sifra_Art
  8312.     Set @Ima = @@RowCount
  8313.     If @Ima < 1 
  8314.         Select @PTar=K.Sifra_Tar, @POsn=T.ProcOsn From Katart K
  8315.         Inner Join Tarifi T On K.Sifra_Tar=T.Sifra_Tar
  8316.         Where K.Sifra_Art=@Sifra_Art
  8317.     Declare @Raboti char(1) 
  8318.     Set @Raboti= 'N'
  8319.     If @DanKrCena = @soDanCena AND @KrCena <> @soCena
  8320.         Set @Raboti='D'
  8321.     Else
  8322.            Begin
  8323.         Declare @StaraCena Decimal(18,6)
  8324.         Set @StaraCena = dbo.fn_VratiCena(@soCena, @POsn, @soDanCena, @DanKrCena)
  8325.         If Abs(@KrCena- @Staracena) > 0.001
  8326.             Set @Raboti = 'D'
  8327.           End
  8328.      If @Raboti = 'D'
  8329.      Begin    
  8330.     If @Ima=1
  8331.         Begin
  8332.             Insert RazlCeni
  8333.             (Sifra_Razl, Sifra_OE, Sifra_Art, Kolic, PocCena, KrCena, POsn, PTar, DanPocCena, DanKrCena, Datum_Dok, Datum_Vnes, Sifra_Oper, Akciska_Prod)
  8334.             Values
  8335.             ('902', @Sifra_OE, @Sifra_Art, @soKolicina, @soCena, @KrCena, @POsn, @PTar, @soDanCena, @DanKrCena, @Datum_Dok, GETDATE(), SUSER_SNAME(), @Akciska_Prod)
  8336.             Update Soart
  8337.             Set Cena=@KrCena, DanCena=@DanKrCena
  8338.             Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  8339.         End
  8340.     Else
  8341.         Begin
  8342.             Insert Soart
  8343.             (Sifra_OE, Sifra_Art, Vlez, Izlez, Cena, DanCena, POsn, NabCena, DokCena, Uces)
  8344.             Values
  8345.             (@Sifra_OE, @Sifra_Art, 0.0, 0.0, @KrCena, @DanKrCena, @POsn, 0.0, 0.0, 0.0)
  8346.             Insert RazlCeni
  8347.             (Sifra_Razl, Sifra_OE, Sifra_Art, Kolic, PocCena, KrCena, POsn, PTar, DanPocCena, DanKrCena, Datum_Dok, Datum_Vnes, Sifra_Oper, Akciska_Prod)
  8348.             Values
  8349.             ('902', @Sifra_OE, @Sifra_Art, 0.0, 0.0, @KrCena, @POsn, @PTar, 'N', @DanKrCena, @Datum_Dok,GETDATE(),SUSER_SNAME(), @Akciska_Prod)
  8350.         End
  8351.       End
  8352. End
  8353.  
  8354.  
  8355.  
  8356.  
  8357.  
  8358.  
  8359.  
  8360. Go
  8361. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akciipromo_detalenpregled]'))
  8362. drop procedure [dbo].[sp_akciipromo_detalenpregled]
  8363.  
  8364. Go
  8365. CREATE  PROCEDURE sp_AkciiPromo_DetalenPregled
  8366.     @Sifra_Art_Paket    varchar(20) = Null,
  8367.     @Sifra_Art_Osnoven    varchar(20) = Null,
  8368.     @Datum_Od        smalldatetime = Null,
  8369.     @Datum_Do        smalldatetime = Null,
  8370.     @Sifra_Oe        smallint = Null,
  8371.     @KoiOe        varchar(6) = Null,
  8372.     @Sifra_Pat        smallint = Null
  8373. AS
  8374.     Declare @SSQL as varchar(8000)
  8375.     Set @SSQL = ' Select D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Kup, D.Sifra_Obj, 
  8376.             (Case When D.Sifra_Obj Is Not Null Then Kup.ImeKup + '' - '' + KO.ImeObj Else Kup.ImeKup End) as ImeKup, D.Sifra_Pat, 
  8377.             S.Sifra_Art_Paket, KA.ImeArt ImeArtPaket, S.Sifra_Art, K.ImeArt, S.Kolic, 
  8378.             (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000)) OsnovZaRabat,
  8379.             (S.UcesDod / 100) UcesDod, 
  8380.             ((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000) * Cast(UcesDod as decimal(9,2))/10000)) RabatAkc
  8381.         From Dokr D
  8382.         Inner Join Stavr S On D.DokrID = S.DokrID
  8383.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  8384.         Inner Join Katart KA On KA.Sifra_Art = S.Sifra_Art_Paket
  8385.         Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  8386.         Left Outer Join KObjekti KO On KO.Sifra_Kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  8387.         Where S.Sifra_Art_Paket Is Not Null And S.VlIzl = ''I'' '
  8388.     If @Sifra_Art_Paket Is Not Null
  8389.         Set @SSQL = @SSQL + ' And S.Sifra_Art_Paket = ''' + @Sifra_Art_Paket + ''' '
  8390.     If @Sifra_Art_Osnoven Is Not Null
  8391.         Set @SSQL = @SSQL + ' And S.Sifra_Art = ''' + @Sifra_Art_Osnoven + ''' '
  8392.     If @Sifra_Oe Is Not Null
  8393.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  8394.     If @KoiOe Is Not Null
  8395.         Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select Sifra_Oe From SGrOrg  where sif_GrOrg = ''' + @KoiOe  +  ''') '
  8396.     If @Datum_Od Is Not Null
  8397.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  8398.     If @Datum_Do Is Not Null
  8399.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  8400.     If @Sifra_Pat Is Not Null
  8401.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  8402.     Set @SSQL = @SSQL + ' Order By D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, S.Sifra_Art_Paket, S.Sifra_Art '
  8403. print @SSQL
  8404.     Exec (@SSQL)
  8405.  
  8406.  
  8407.  
  8408.  
  8409. Go
  8410. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akciipromo_kontrolen]'))
  8411. drop procedure [dbo].[sp_akciipromo_kontrolen]
  8412.  
  8413. Go
  8414. CREATE  PROCEDURE sp_AkciiPromo_Kontrolen
  8415.     @Sifra_Art_Osnoven    varchar(20) = Null, 
  8416.     @Datum_Od        smalldatetime = Null,
  8417.     @Datum_Do        smalldatetime = Null,
  8418.     @Sifra_Oe        smallint = Null,
  8419.     @KoiOe        varchar(6) = Null,
  8420.     @Sifra_Pat        smallint = Null,
  8421.     @Sifra_Dok        smallint = Null
  8422. AS
  8423.     Declare @SSQL as varchar(8000)
  8424.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Pat, S.Sifra_Art, K.ImeArt, S.Kolic, (S.UcesDod/100) UcesDod,  
  8425.             (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * 
  8426.                 (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000)) OsnovZaRabat,
  8427.             ((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * 
  8428.                 (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000)) * Cast(UcesDod as decimal(9,2))/10000) RabatAkc
  8429.         From Dokr D
  8430.         Inner Join Stavr S On D.DokrID = S.DokrID
  8431.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  8432.         Where S.Sifra_Art_Paket Is Null And S.UcesDod > 0 And S.VlIzl = ''I'' 
  8433.         And S.Kolic > 0 '
  8434.     If @Sifra_Art_Osnoven Is Not Null
  8435.         Set @SSQL = @SSQL + ' And S.Sifra_Art = ''' + @Sifra_Art_Osnoven + ''' '
  8436.     If @Sifra_Oe Is Not Null
  8437.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  8438.     If @Sifra_Dok Is Not Null
  8439.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  8440.     If @KoiOe Is Not Null
  8441.         Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select Sifra_Oe From SGrOrg  where sif_GrOrg = ''' + @KoiOe  +  ''') '
  8442.     If @Datum_Od Is Not Null
  8443.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  8444.     If @Datum_Do Is Not Null
  8445.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  8446.     If @Sifra_Pat Is Not Null
  8447.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  8448.     Set @SSQL = @SSQL + ' Order By D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, S.Sifra_Art '
  8449.     Exec (@SSQL)
  8450.  
  8451.  
  8452.  
  8453.  
  8454. Go
  8455. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akciipromo_tlk_zapisi]'))
  8456. drop procedure [dbo].[sp_akciipromo_tlk_zapisi]
  8457.  
  8458. Go
  8459. CREATE   PROCEDURE sp_AkciiPromo_tlk_Zapisi
  8460.     @Sifra_Oe    smallint,
  8461.     @Datum_Od    smalldatetime,
  8462.     @Datum_Do    smalldatetime,
  8463. --    @Sifra_Dok    smallint = Null,
  8464. --    @Sifra_Pat    int = Null
  8465. --    @Sifra_Art_Osn    varchar(20) = Null,
  8466.     @KojaObr    char(1) = 'S'        -- S - Site Artikli od akcijata da gi ima vo dokumentot
  8467.                         -- O - Site Artikli od akcijata osven 1 da gi ima vo dokumentot
  8468. AS
  8469.     Declare @KolkuArtVoAkc varchar(20)
  8470.     Declare @Sifra_Art_Paket varchar(20)
  8471.     Declare @Varij smallint
  8472.     Create Table #TmpAkc
  8473.     (
  8474.      Sifra_Art_Paket    varchar(20),
  8475.      Varij        smallint
  8476.     )
  8477.     Insert Into #TmpAkc 
  8478.     Select Distinct  Sifra_Art_Paket, Varij
  8479.     From AkciiPromoStaTemp
  8480.     Declare AP Cursor Fast_Forward For Select Sifra_Art_Paket, Varij From #TmpAkc
  8481.     Order By SifrA_ARt_Paket, Varij
  8482.     Open AP
  8483.     Fetch Next From AP Into @Sifra_Art_Paket, @Varij
  8484.     While @@fetch_status=0
  8485.     Begin
  8486.         Set @KolkuArtVoAkc = (Select Count(*) from AkciiPromoStaTemp 
  8487.                     where Sifra_Art_Paket = @Sifra_Art_Paket And Varij=@Varij)     -- Broj na artikli vo akcijata
  8488.         Create Table #Dok        -- Selekcija na dokumentite koi e mozno da imaat akcija vo niv
  8489.         (
  8490.          DokrID int,
  8491.          DokID    int,
  8492.          Sifra_Art_Osnoven varchar(20),
  8493.          Sifra_Art_Paket varchar(20),
  8494.          Kolku_Akcii smallint
  8495.         )
  8496.         Insert Into #Dok
  8497.         Select S.DokrID, S.DokID, A.Sifra_Art_Osnoven, A.Sifra_Art_Paket, (S.kolic/A.Kolicina) as Kolku_Akcii
  8498.         From Stavr S
  8499.         Inner Join AkciiPromoStaTemp A On A.Sifra_Art_Osnoven=S.Sifra_Art And A.Rabat=cast(S.UcesDod as decimal(18,2))/100 --S.UcesDod/100 bese vaka do 01.02.2008 
  8500.                            And S.kolic/A.Kolicina = round(S.kolic/A.Kolicina, 0)
  8501.         Where A.Sifra_Art_Paket = @Sifra_Art_Paket And A.Varij=@Varij
  8502.         And S.Sifra_Art_Paket Is Null And S.UcesDod > 0 And S.VlIzl = 'I'
  8503.         And S.Datum_Dok >= @Datum_Od And S.Datum_Dok <= @Datum_Do And S.Sifra_Oe = @Sifra_Oe
  8504.         --Select * from #Dok
  8505.         Create Table #DokSoAkc    -- ovde dokumentite koi imaat akcija
  8506.         (
  8507.          DokrID int,
  8508.          Kolku smallint
  8509.         )
  8510.         If @KojaObr = 'O'
  8511.         Begin
  8512.             Insert Into #DokSoAkc
  8513.             Select DokrID, Count(*) From #Dok
  8514.             Group By DokrID
  8515.             Having Count(*) = @KolkuArtVoAkc - 1
  8516.         End
  8517.         Else
  8518.         Begin
  8519.             Insert Into #DokSoAkc
  8520.             Select DokrID, Count(*) From #Dok
  8521.             Group By DokrID
  8522.             Having Count(*) = @KolkuArtVoAkc
  8523.         End
  8524.         --Select * from #DokSoAkc
  8525.         Update Stavr 
  8526.         Set Stavr.Sifra_Art_Paket=#Dok.Sifra_Art_Paket,
  8527.             Stavr.Kolku_Akcii=#Dok.Kolku_Akcii
  8528.         From #Dok
  8529.         Where Stavr.DokID=#Dok.DokID
  8530.         And Stavr.DokrID in (Select DokrID From #DokSoAkc)
  8531.         And Stavr.Sifra_Art_Paket Is Null
  8532.         Drop Table #dok
  8533.         Drop Table #DokSoAkc
  8534.         Fetch Next From AP Into @Sifra_Art_Paket, @Varij
  8535.     End
  8536.     Close AP
  8537.     Deallocate AP
  8538.  
  8539.  
  8540.  
  8541.  
  8542. Go
  8543. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akciipromo_tlk_zapisi_poedinecno]'))
  8544. drop procedure [dbo].[sp_akciipromo_tlk_zapisi_poedinecno]
  8545.  
  8546. Go
  8547. CREATE PROCEDURE sp_AkciiPromo_tlk_Zapisi_Poedinecno
  8548.     @Sifra_Oe    smallint,
  8549.     @Datum_Od    smalldatetime,
  8550.     @Datum_Do    smalldatetime,
  8551.         @KojaObr    char (1)  = Null
  8552. AS
  8553.     Update Stavr 
  8554.     Set Stavr.Sifra_Art_Paket=AkciiPromoStaTemp.Sifra_Art_Paket, Stavr.Kolku_Akcii = 1
  8555.     From  AkciiPromoStaTemp
  8556.     Where AkciiPromoStaTemp.Sifra_Art_Osnoven=Stavr.Sifra_Art And AkciiPromoStaTemp.Rabat=cast(Stavr.UcesDod as decimal(18,2))/100 -- Stavr.UcesDod/100 bese vaka do 01.02.2008
  8557.         And Stavr.VlIzl='I' And Stavr.Sifra_Art_Paket Is Null And Stavr.UcesDod > 0
  8558.         And Stavr.Sifra_Oe = @Sifra_Oe And Stavr.Datum_Dok >= @Datum_Od And Stavr.Datum_Dok <= @Datum_Do
  8559.  
  8560.  
  8561.  
  8562.  
  8563. Go
  8564. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akciipromo_zbirenpoart]'))
  8565. drop procedure [dbo].[sp_akciipromo_zbirenpoart]
  8566.  
  8567. Go
  8568. CREATE  PROCEDURE sp_AkciiPromo_ZbirenPoArt
  8569.     @Sifra_Art_Paket    varchar(20) = Null,
  8570.     @Sifra_Art_Osnoven    varchar(20) = Null,
  8571.     @Datum_Od        smalldatetime = Null,
  8572.     @Datum_Do        smalldatetime = Null,
  8573.     @Sifra_Oe        smallint = Null,
  8574.     @KoiOe        varchar(6) = Null,
  8575.     @Sifra_Pat        smallint = Null,
  8576.     @PoPatnici        char(1) = 'N'
  8577. AS
  8578.     Declare @SSQL as varchar(8000)
  8579.     If @PoPatnici = 'D'
  8580.         Set @SSQL = ' Select D.Sifra_Pat, '
  8581.     Else
  8582.         Set @SSQL = ' Select Null as Sifra_Pat, '
  8583.     Set @SSQL = @SSQL + ' S.Sifra_Art, K.ImeArt, Sum(S.Kolic) Kolic, 
  8584.             Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * 
  8585.                 (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000))) OsnovZaRabat,
  8586.             Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * 
  8587.                 (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000)) * Cast(UcesDod as decimal(9,2))/10000) RabatAkc,
  8588.               Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * (Cast(UcesKol as decimal(9,2))/10000))) RabatKol,
  8589.               Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * (Cast(UcesOsn as decimal(9,2))/10000))) RabatOsn
  8590.         From Dokr D
  8591.         Inner Join Stavr S On D.DokrID = S.DokrID
  8592.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  8593.         Where S.Sifra_Art_Paket Is Not Null And S.VlIzl = ''I'' '
  8594.     If @Sifra_Art_Paket Is Not Null
  8595.         Set @SSQL = @SSQL + ' And S.Sifra_Art_Paket = ''' + @Sifra_Art_Paket + ''' '
  8596.     If @Sifra_Art_Osnoven Is Not Null
  8597.         Set @SSQL = @SSQL + ' And S.Sifra_Art = ''' + @Sifra_Art_Osnoven + ''' '
  8598.     If @Sifra_Oe Is Not Null
  8599.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  8600.     If @KoiOe Is Not Null
  8601.         Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select Sifra_Oe From SGrOrg  where sif_GrOrg = ''' + @KoiOe  +  ''') '
  8602.     If @Datum_Od Is Not Null
  8603.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  8604.     If @Datum_Do Is Not Null
  8605.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  8606.     If @Sifra_Pat Is Not Null
  8607.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  8608.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art, K.ImeArt  '
  8609.     If @PoPatnici = 'D'
  8610.         Set @SSQL = @SSQL + ' , D.Sifra_Pat '
  8611.     Exec (@SSQL)
  8612.  
  8613.  
  8614.  
  8615.  
  8616. Go
  8617. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akciipromo_zbirenpopaket]'))
  8618. drop procedure [dbo].[sp_akciipromo_zbirenpopaket]
  8619.  
  8620. Go
  8621. CREATE  PROCEDURE sp_AkciiPromo_ZbirenPoPaket
  8622.     @Sifra_Art_Paket    varchar(20) = Null,
  8623.     @Sifra_Art_Osnoven    varchar(20) = Null,
  8624.     @Datum_Od        smalldatetime = Null,
  8625.     @Datum_Do        smalldatetime = Null,
  8626.     @Sifra_Oe        smallint = Null,
  8627.     @KoiOe        varchar(6) = Null,
  8628.     @Sifra_Pat        smallint = Null,
  8629.     @PoPatnici        char(1) = 'N'
  8630. AS
  8631.     Declare @SSQL as varchar(8000)
  8632.     Declare @SSQLUsl as varchar(8000)
  8633.     Set @SSQLUsl = ' '
  8634.     If @Sifra_Art_Paket Is Not Null
  8635.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art_Paket = ''' + @Sifra_Art_Paket + ''' '
  8636.     If @Sifra_Art_Osnoven Is Not Null
  8637.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art = ''' + @Sifra_Art_Osnoven + ''' '
  8638.     If @Sifra_Oe Is Not Null
  8639.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  8640.     If @KoiOe Is Not Null
  8641.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE IN (Select Sifra_Oe From SGrOrg  where sif_GrOrg = ''' + @KoiOe  +  ''') '
  8642.     If @Datum_Od Is Not Null
  8643.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  8644.     If @Datum_Do Is Not Null
  8645.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  8646.     If @Sifra_Pat Is Not Null
  8647.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  8648.     Create Table #TmpAkc
  8649.     (
  8650.      DokrID    int,
  8651.      Sifra_Kup char(6),
  8652.      Sifra_Obj char(4),
  8653.      Sifra_Art_Paket    varchar(20),
  8654.      Sifra_Pat smallint,
  8655.      OsnovAkcRabat decimal(18,6),
  8656.      AkcRabat decimal(18,6),
  8657.      RabatKol decimal(18,6),
  8658.      RabatOsn decimal(18,6)
  8659.     )
  8660.     Set @SSQL = ' Select D.DokrID, D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art_Paket, '
  8661.     If @PoPatnici = 'D'
  8662.         Set @SSQL = @SSQL + ' D.Sifra_Pat, '
  8663.     Else
  8664.         Set @SSQL = @SSQL + ' Null Sifra_Pat, '
  8665.     Set @SSQL = @SSQL + ' Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * 
  8666.                 (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000))) OsnovZaRabat,
  8667.                   Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * 
  8668.                 (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000)) * Cast(UcesDod as decimal(9,2))/10000) RabatAkc,
  8669.                   Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * (Cast(UcesKol as decimal(9,2))/10000))) RabatKol,
  8670.                   Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'') * (Cast(UcesOsn as decimal(9,2))/10000))) RabatOsn
  8671.         From Dokr D
  8672.         Inner Join Stavr S On D.DokrID = S.DokrID
  8673.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  8674.         Where S.Sifra_Art_Paket Is Not Null And S.VlIzl = ''I'' '
  8675.     Insert Into #TmpAkc Exec(@SSQL+@SSQLUsl + ' Group By D.DokrID, D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art_Paket, D.Sifra_Pat' )
  8676.  
  8677.     Create Table #Pak
  8678.     (
  8679.      DokrID    int,
  8680.      Sifra_Art_Paket    varchar(20),
  8681.      Kolku_Akcii int    
  8682.     )
  8683.     Set @SSQL = ' Select D.DokrID, S.Sifra_Art_Paket, Max(S.Kolku_Akcii) Kolku_Akcii
  8684.             From Dokr D
  8685.             Inner Join Stavr S On D.DokrID=S.DokrID
  8686.             Where S.Sifra_Art_Paket Is Not Null And S.VlIzl = ''I'' '
  8687.     Insert Into #Pak Exec(@SSQL + @SSQLUsl + ' Group By D.DokrID, S.Sifra_Art_Paket' ) 
  8688.  
  8689.     Select A.Sifra_Art_Paket, K.ImeArt, A.Sifra_Pat, Sum(P.Kolku_Akcii) BrPaketi, Sum(A.OsnovAkcRabat) OsnovAkcRabat, Sum(A.AkcRabat) AkcRabat, Sum(A.RabatKol) RabatKol, Sum(RabatOsn) RabatOsn,
  8690.         Count(Distinct Sifra_Kup+(Case When Sifra_Obj Is Not Null Then Sifra_Obj Else ' ' End)) BrKup
  8691.     From #TmpAkc A
  8692.     Inner Join #Pak P On P.DokrID=A.DokrID And P.Sifra_Art_Paket=A.Sifra_Art_Paket
  8693.     Inner Join Katart K On K.Sifra_Art=A.Sifra_Art_Paket
  8694.     Group By A.Sifra_Art_Paket, K.ImeArt, A.Sifra_Pat
  8695. Go
  8696. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akcpromoset_dalie]'))
  8697. drop procedure [dbo].[sp_akcpromoset_dalie]
  8698.  
  8699. Go
  8700.  
  8701. create   PROCEDURE sp_AkcPromoSet_DaliE
  8702.  
  8703.    @Sifra_Art_Paket  varchar(20),
  8704.    @Datum_Dok         smalldatetime,
  8705.    @SetE         char(1) = Null OUTPUT,
  8706.    @AktivenE         char(1) = NUll OUTPUT
  8707.  
  8708. AS
  8709.  
  8710.     Declare @Datum_Poc smalldatetime
  8711.     Declare @Datum_Kr smalldatetime
  8712.     Declare @Aktivna char(1)
  8713.     Declare @Sifra_Art_Paket_OdBaza varchar(20)
  8714.  
  8715.     select top 1 @Datum_Poc = AP.Datum_Poc, @Datum_Kr = AP.Datum_Kr, @Aktivna = AP.Aktivna,
  8716.              @Sifra_Art_Paket_OdBaza = APS.Sifra_Art_Paket
  8717.     from AkciiPromoSta APS
  8718.     inner join AkciiPromo AP
  8719.         on APS.Ozn_Akcija = AP.Ozn_Akcija
  8720.     where APS.Sifra_ARt_Paket = @Sifra_Art_Paket
  8721.     order by AP.Datum_Poc desc
  8722.  
  8723.     if @Sifra_Art_Paket_OdBaza is null    -- Go nema, najcest slucaj - normalen artikl
  8724.       begin
  8725.         set @SetE = 'N'
  8726.         set @AktivenE = 'N'
  8727.       end
  8728.     else if @Aktivna = 'N'
  8729.       begin
  8730.         set @SetE = 'D'
  8731.         set @AktivenE = 'N'
  8732.       end
  8733.     else if @Datum_Dok >= @Datum_Poc and @Datum_Dok <= @Datum_Kr
  8734.       begin
  8735.         set @SetE = 'D'
  8736.         set @AktivenE = 'D'
  8737.       end
  8738.     else
  8739.       begin
  8740.         set @SetE = 'D'
  8741.         set @AktivenE = 'N'
  8742.       end
  8743.  
  8744.  
  8745. Go
  8746. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_akcpromoset_podigni]'))
  8747. drop procedure [dbo].[sp_akcpromoset_podigni]
  8748.  
  8749. Go
  8750.  
  8751. create  PROCEDURE sp_AkcPromoSet_Podigni
  8752.  
  8753.    @Sifra_Art_Paket  varchar(20),
  8754.    @Datum_Dok         smalldatetime
  8755.  
  8756. AS
  8757.  
  8758.     select APS.*
  8759.     from AkciiPromoSta APS
  8760.     inner join AkciiPromo AP
  8761.         on APS.Ozn_Akcija = AP.Ozn_Akcija
  8762.     where APS.Sifra_ARt_Paket = @Sifra_Art_Paket
  8763.     order by AP.Datum_Poc desc, APS.Sifra_Art_Osnoven
  8764.  
  8765.  
  8766. Go
  8767. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ambalaza_poorged]'))
  8768. drop procedure [dbo].[sp_ambalaza_poorged]
  8769.  
  8770. Go
  8771. CREATE              PROCEDURE sp_Ambalaza_PoOrged
  8772.     @Sifra_OE smallint,
  8773.     @KoiOE varchar(6),
  8774.     @Sifra_Art varchar(20),
  8775.     @Sifra_Kup varchar(8),
  8776.     @Sifra_Obj smallint = Null,
  8777.     @Datum_Dok_Od Smalldatetime,
  8778.     @Datum_Dok_Do Smalldatetime
  8779. AS
  8780.     Declare @SSQL Varchar(4000)
  8781.     Declare @SSQLUsl Varchar(4000)
  8782.     Set @SSQL = ' '
  8783.     Set @SSQLUsl = ' '
  8784.     CREATE Table #Tab 
  8785.         (
  8786.          Sifra_art    varchar(20),
  8787.          Sifra_Oe    smallint,
  8788.          TekVlez    decimal(18,6),
  8789.          TekIzlez    decimal(18,6),
  8790.          Vlez        decimal(18,6),
  8791.          Izlez        decimal(18,6)
  8792.         )
  8793. --------------------------------------------------------------------------------- U S L O V --------------------------------------------------------------------------------------------
  8794.     If @Sifra_Art Is Not Null
  8795.         Set @SSQLUsl = @SSQLUsl + ' And S.[Sifra_Art]=''' + @Sifra_Art + ''' '
  8796.     If @Sifra_OE Is Not Null
  8797.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  8798.     If @KoiOE Is Not Null
  8799.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  8800.     If @Sifra_kup Is NOT Null
  8801.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_kup=''' + @Sifra_kup + ''' '
  8802.     If @Sifra_Obj Is Not Null
  8803.         Set @SSQLUsl = @SSQLUsl + 'And D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  8804.     If @Datum_Dok_Do Is NOT Null
  8805.          SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  8806.     SET @SSQLUsl =@SSQLUsl + 'Group BY  S.Sifra_Art, S.Sifra_OE '
  8807. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  8808. -------------------------------------------------------------------------- TEKOVEN PROMET ------------------------------------------------------------------------------------
  8809.     SET @SSQL='SELECT S.Sifra_Art, S.Sifra_OE,
  8810.         Sum(Case S.VlIzl
  8811.             When ''V'' Then (Case WHEN S.Kolic >= 0 Then S.Kolic  Else 0 End)
  8812.             Else 0
  8813.             End) ,
  8814.         Sum(Case S.VlIzl
  8815.             When ''I'' Then (Case WHEN S.Kolic >= 0 Then S.Kolic  Else 0 End)
  8816.             Else 0
  8817.             End), 0, 0
  8818.     FROM Stavr S
  8819.     INNER JOIN Dokr D ON S.DokrID = D.DokrID
  8820.     Inner Join Katart A On A.Sifra_Art = S.Sifra_Art
  8821.     WHERE A.Drugo5 = 2 '
  8822.     If @Datum_Dok_Od Is NOT Null
  8823.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  8824.          Insert Into #Tab EXEC(@SSQL+@SSQLUsl)
  8825.     SET @SSQL='SELECT S.Sifra_Art, S.Sifra_OE,
  8826.         Sum(Case S.VlIzl
  8827.             When ''I'' Then (Case WHEN S.Kolic < 0 Then Abs(S.Kolic)  Else 0 End)
  8828.             Else 0
  8829.             End),
  8830.         Sum(Case S.VlIzl
  8831.             When ''V'' Then (Case WHEN S.Kolic < 0 Then Abs(S.Kolic)  Else 0 End)
  8832.             Else 0
  8833.             End), 0, 0
  8834.     FROM Stavr S
  8835.     INNER JOIN Dokr D ON S.DokrID = D.DokrID
  8836.     Inner Join Katart A On A.Sifra_Art = S.Sifra_Art
  8837.     WHERE A.Drugo5 = 2 '
  8838.     If @Datum_Dok_Od Is NOT Null
  8839.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  8840.          Insert Into #Tab EXEC(@SSQL+@SSQLUsl)
  8841. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  8842. -------------------------------------------------------------------------- VKUPEN PROMET --------------------------------------------------------------------------
  8843.     SET @SSQL='SELECT S.Sifra_Art, S.Sifra_OE, 0, 0, 
  8844.         Sum(Case S.VlIzl
  8845.             When ''V'' Then  (Case WHEN S.Kolic >= 0 Then S.Kolic  Else 0 End)
  8846.             Else 0
  8847.             End),
  8848.         Sum(Case S.VlIzl
  8849.             When ''I'' Then (Case WHEN S.Kolic >= 0 Then S.Kolic  Else 0 End)
  8850.             Else 0
  8851.             End)
  8852.     FROM Stavr S
  8853.     INNER JOIN Dokr D ON S.DokrID = D.DokrID
  8854.     Inner Join Katart A On A.Sifra_Art = S.Sifra_Art
  8855.     WHERE A.Drugo5 = 2 '
  8856.          Insert Into #Tab EXEC(@SSQL+@SSQLUsl)
  8857.     SET @SSQL='SELECT S.Sifra_Art, S.Sifra_OE, 0, 0, 
  8858.         Sum(Case S.VlIzl
  8859.             When ''I'' Then  (Case WHEN S.Kolic < 0 Then Abs(S.Kolic)  Else 0 End)
  8860.             Else 0
  8861.             End),
  8862.         Sum(Case S.VlIzl
  8863.             When ''V'' Then (Case WHEN S.Kolic < 0 Then Abs(S.Kolic)  Else 0 End)
  8864.             Else 0
  8865.             End)
  8866.     FROM Stavr S
  8867.     INNER JOIN Dokr D ON S.DokrID = D.DokrID
  8868.     Inner Join Katart A On A.Sifra_Art = S.Sifra_Art
  8869.     WHERE A.Drugo5 = 2 '
  8870.          Insert Into #Tab EXEC(@SSQL+@SSQLUsl)
  8871. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  8872.     Select T.Sifra_Oe, O.ImeOrg, T.Sifra_art, K.ImeArt, (Sum(T.TekVlez)) TekVlez, (Sum(T.TekIzlez)) TekIzlez, (Sum(T.Vlez)) VkVlez, (Sum(T.Izlez)) VkIzlez
  8873.     From #Tab T
  8874.     Inner Join Katart K On K.Sifra_Art = T.Sifra_art
  8875.     Inner Join Orged O On O.Sifra_Oe = T.Sifra_Oe
  8876.     Group By T.Sifra_Oe, O.ImeOrg, T.Sifra_art, K.ImeArt
  8877.  
  8878.  
  8879.  
  8880.  
  8881.  
  8882. Go
  8883. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ambalazapodok]'))
  8884. drop procedure [dbo].[sp_ambalazapodok]
  8885.  
  8886. Go
  8887. CREATE    PROCEDURE sp_AmbalazaPoDok
  8888.     @Sifra_Oe    smallint,
  8889.     @Sifra_Dok    smallint,
  8890.     @Broj_Dok    int,
  8891.     @Povratna    char(1) = 'D',    -- Dali samo povratna ambalaza
  8892.     @DaliAmbOdDok    char(1) = 'N'
  8893.  AS
  8894.     Declare @SSQL as varchar(2000)
  8895.     Create Table #Amb            --A.ImeAmb, G.ImeAmb ImeGAmb, 
  8896.     (
  8897.      Sifra_Amb    varchar(20),
  8898.      KolicAmb    decimal(18,6),
  8899.      Sifra_GAmb    varchar(20),
  8900.      KolicGamb    decimal(18,6),
  8901.      So_GAmb    char(1),
  8902.      KolicAmbDok    decimal(18,6),
  8903.      KolicGambDok    decimal(18,6)
  8904.     )
  8905.     Set @SSQL = ' Select S.Sifra_Amb, 
  8906.             Sum(S.Kolic) KolicAmb,
  8907.             A.Sifra_GAmb, 
  8908.             Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then S.Kolic Else (S.Kolic/A.VoGAmb) End) KolicGAmb,
  8909.              S.So_GAmb, 0, 0
  8910.     From StaAmbal S
  8911.     Inner Join Dokr D On D.DokrID=S.DokrID
  8912.     Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb
  8913.     Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb 
  8914.     Where D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' 
  8915.     And D.Sifra_Dok= ' + cast(@Sifra_Dok as varchar(6)) + ' 
  8916.     And D.Broj_Dok= ' + cast(@Broj_Dok as varchar(10)) + ' '
  8917.     If @Povratna = 'D'
  8918.         Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  8919.     Set @SSQL = @SSQL + ' Group By S.Sifra_Amb, A.Sifra_GAmb, Sign(S.Kolic), S.So_GAmb '
  8920.     Insert Into #Amb Exec (@SSQL)
  8921.     --------------------------------- Ambalaza od dokumentot -----------------------------------------
  8922.     If @DaliAmbOdDok = 'D'
  8923.     Begin
  8924.         Set @SSQL = ' Select K.Sifra_Amb, 0, 
  8925.                 A.Sifra_GAmb, 0,
  8926.                  ''D'',
  8927.                 Sum(S.Kolic) KolicAmbDok, Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then S.Kolic Else (S.Kolic/A.VoGAmb) End) KolicGAmbDok
  8928.         From Stavr S
  8929.         Inner Join Dokr D On D.DokrID=S.DokrID
  8930.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  8931.         Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb
  8932.         Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb 
  8933.         Where D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' 
  8934.         And D.Sifra_Dok= ' + cast(@Sifra_Dok as varchar(6)) + ' 
  8935.         And D.Broj_Dok= ' + cast(@Broj_Dok as varchar(10)) + ' '
  8936.         If @Povratna = 'D'
  8937.             Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  8938.         Set @SSQL = @SSQL + ' Group By K.Sifra_Amb, A.Sifra_GAmb, Sign(S.Kolic) '
  8939.         Insert Into #Amb Exec (@SSQL)
  8940.     End
  8941.     ----------------------------------------------------------------------------------------------------------------------------
  8942.     Select T.Sifra_Amb, A.ImeAmb, Sum(T.KolicAmb) KolicAmb, G.ImeAmb ImeGAmb, T.Sifra_GAmb, Sum(T.KolicGamb) KolicGamb, T.So_GAmb, 
  8943.         Sum(T.KolicAmbDok) KolicAmbDok, Sum(T.KolicGambDok) KolicGambDok
  8944.     From #Amb T
  8945.     Inner Join KatAmb A On A.Sifra_Amb=T.Sifra_Amb
  8946.     Left Outer Join KatAmb G On G.Sifra_Amb=T.Sifra_GAmb 
  8947.     Group By T.Sifra_Amb, A.ImeAmb, G.ImeAmb, T.Sifra_GAmb, T.So_GAmb, Sign(T.KolicAmb), Sign(T.KolicAmbDok)
  8948. print @SSQL
  8949. --        Sum(Case When (A.VoGAmb Is Null Or A.SodrziArt = 0) Then S.Kolic    -- ovde da vratam samo VoGAmb a vo reportot da se deli ako ima potreba
  8950. --                Else (S.Kolic/A.VoGAmb) End) KolicGAmb            -- dali (S.Kolic/A.SodrziArt/VoGAmb) ili samo (S.Kolic/A.VoGAmb)
  8951.  
  8952.  
  8953.  
  8954. Go
  8955. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ambalazapokomint]'))
  8956. drop procedure [dbo].[sp_ambalazapokomint]
  8957.  
  8958. Go
  8959. CREATE  PROCEDURE sp_AmbalazaPoKomint
  8960.     @Sifra_Kup    char(6),
  8961.     @Sifra_art    varchar(20),
  8962.     @Datum_Od    smalldatetime,
  8963.     @Datum_Do    smalldatetime,
  8964.     @Sifra_Obj    smallint = Null
  8965.  AS
  8966.     Declare @SSQL as varchar(4000)
  8967.     Create Table #Tab
  8968.         (
  8969.            Sifra_Art    varchar(20),
  8970.            Sifra_Kup    char(6),
  8971.            Izdadeno    decimal(18,6),
  8972.            Vrateno    decimal(18,6),
  8973.            PrethIzd    decimal(18,6),
  8974.            PrethVrat    decimal(18,6)
  8975.         )
  8976.     Set @SSQL = ' Select S.Sifra_art, D.Sifra_Kup,
  8977.             Sum(Case WHEN S.Kolic >= 0 Then S.Kolic  Else 0 End) Izdadeno,
  8978.             Abs(Sum(Case When S.Kolic < 0 Then S.Kolic Else 0 End)) Vrateno,
  8979.             0, 0
  8980.             From Stavr S
  8981.             Inner Join Dokr D On D.DokrId=S.DokrId
  8982.             Inner Join Katart K On K.Sifra_art = S.Sifra_art
  8983.             Where S.VlIzl = ''I'' and D.Sifra_Kup Is Not Null and K.Drugo5 = 2 '
  8984.     If @Sifra_Kup Is Not Null 
  8985.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ' + @Sifra_Kup + ' '
  8986.     If @Sifra_Obj Is Not Null 
  8987.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(6)) + ' '
  8988.     If @Sifra_art Is Not Null 
  8989.         Set @SSQL = @SSQL + ' And S.Sifra_Art = ' + @Sifra_Art + ' '
  8990.     If @Datum_Od Is Not Null 
  8991.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(35)) + ''' '
  8992.     If @Datum_Do Is Not Null 
  8993.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(35)) + ''' '
  8994.     Set @SSQL = @SSQL + ' Group By S.Sifra_art, D.Sifra_Kup '
  8995.     Insert Into #Tab exec (@SSQL)
  8996.     If @Datum_Od Is Not Null
  8997.           Begin
  8998.         Set @SSQL = ' Select S.Sifra_art, D.Sifra_Kup,
  8999.                 0, 0,
  9000.                 Sum(Case WHEN S.Kolic >= 0 Then S.Kolic  Else 0 End) Izdadeno,
  9001.                 Abs(Sum(Case When S.Kolic < 0 Then S.Kolic Else 0 End)) Vrateno
  9002.                 From Stavr S
  9003.                 Inner Join Dokr D On D.DokrId=S.DokrId
  9004.                 Inner Join Katart K On K.Sifra_art = S.Sifra_art
  9005.                 Where S.VlIzl = ''I'' and D.Sifra_Kup Is Not Null and K.Drugo5 = 2 
  9006.                 And S.Datum_Dok < ''' + cast(@Datum_Od as varchar(35)) + ''' '
  9007.         If @Sifra_Kup Is Not Null 
  9008.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ' + @Sifra_Kup + ' '
  9009.         If @Sifra_Obj Is Not Null 
  9010.             Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(6)) + ' '
  9011.         If @Sifra_art Is Not Null 
  9012.             Set @SSQL = @SSQL + ' And S.Sifra_Art = ' + @Sifra_Art + ' '
  9013.         Set @SSQL = @SSQL + ' Group By S.Sifra_art, D.Sifra_Kup '
  9014.         Insert Into #Tab exec (@SSQL)
  9015.           End
  9016.     Select T.Sifra_Art, K.ImeArt, T.Sifra_Kup, Kup.ImeKup, Sum(T.Izdadeno) Izdadeno, Sum(T.Vrateno) Vrateno, Sum(T.PrethIzd) PrethIzdadeno, Sum(T.PrethVrat) PrethVrateno
  9017.     From #Tab T
  9018.     Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  9019.     Left Outer Join Komint Kup On Kup.Sifra_Kup = T.Sifra_kup
  9020.     Group By T.Sifra_Art, K.ImeArt, T.Sifra_Kup, Kup.ImeKup
  9021.  
  9022.  
  9023.  
  9024.  
  9025.  
  9026. Go
  9027. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ambalazapokup]'))
  9028. drop procedure [dbo].[sp_ambalazapokup]
  9029.  
  9030. Go
  9031. CREATE PROCEDURE sp_AmbalazaPoKup
  9032.     @Sifra_Oe    smallint,
  9033.     @Sifra_Dok    smallint,
  9034.     @Sifra_Kup    char(6),
  9035.     @Datum_Od    smalldatetime,
  9036.     @Datum_Do    smalldatetime,
  9037.     @Sifra_Amb    char(6),
  9038.     @Sifra_GAmb    char(6),
  9039.     @Povratna    char(1) = 'D',
  9040.     @Koi_Oe    Varchar(10) = Null,
  9041.     @Amb_GAmb    Char(1) = 'S',
  9042.     @Sifra_Obj    Smallint = Null,
  9043.     @KupDob    Char(1) = Null
  9044.  AS
  9045.     Declare @SSQL as varchar(8000)
  9046.     Create Table #Rez
  9047.     (
  9048.      DokrId        int,
  9049.      Sifra_Amb    char(6),
  9050.      Zadolz        decimal(18,6),
  9051.      Razdolz    decimal(18,6)
  9052.     )
  9053.     Set @SSQL = ' Select D.DokrId, K.Sifra_Amb,
  9054.             (Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End),
  9055.             Abs((Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End))
  9056.             From Dokr D
  9057.             Inner Join Stavr S On S.DokrID=D.DokrID
  9058.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  9059.             Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  9060.             Where 1=1 ' --D.VlIzl=''I'' and D.Sifra_Za=''1'' '
  9061.     If @KupDob = 'K'
  9062.         Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' and D.Sifra_Za=''1'' '
  9063.     Else If @KupDob = 'D'
  9064.         Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' and D.Sifra_Za=''2'' '
  9065.     If @Povratna = 'D'
  9066.         Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  9067.     If @Sifra_Oe Is Not Null
  9068.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  9069.     If @Sifra_Dok Is Not Null
  9070.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + cast(@Sifra_Dok as varchar(10)) + ' '
  9071.     If @Sifra_Obj Is Not Null
  9072.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(10)) + ' '
  9073.     If @Sifra_Kup Is Not Null
  9074.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  9075.     If @Datum_Od Is Not Null
  9076.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  9077.     If @Datum_Do Is Not Null
  9078.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  9079.     If @Sifra_Amb Is Not Null
  9080.         Set @SSQL = @SSQL + ' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  9081.     If @Sifra_GAmb Is Not Null
  9082.         Set @SSQL = @SSQL + ' And A.Sifra_GAmb = ''' + @Sifra_GAmb + ''' '
  9083.     If @Koi_OE Is Not NULL
  9084.              Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  9085.     Insert Into #Rez Exec(@SSQL)
  9086.     Set @SSQL = ' Select D.DokrId, S.Sifra_Amb,
  9087.             (Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End),
  9088.             Abs((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End))
  9089.             From Dokr D
  9090.             Inner Join StaAmbal S On S.DokrId=D.DokrID
  9091.             Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  9092.             Where 1=1 ' --D.VlIzl = ''I'' and D.Sifra_Za = ''1'' '
  9093.     If @KupDob = 'K'
  9094.         Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' and D.Sifra_Za=''1'' '
  9095.     Else If @KupDob = 'D'
  9096.         Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' and D.Sifra_Za=''2'' '
  9097.     If @Povratna = 'D'
  9098.         Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  9099.     If @Sifra_Oe Is Not Null
  9100.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  9101.     If @Sifra_Dok Is Not Null
  9102.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + cast(@Sifra_Dok as varchar(10)) + ' '
  9103.     If @Sifra_Obj Is Not Null
  9104.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(10)) + ' '
  9105.     If @Sifra_Kup Is Not Null
  9106.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  9107.     If @Datum_Od Is Not Null
  9108.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  9109.     If @Datum_Do Is Not Null
  9110.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  9111.     If @Sifra_Amb Is Not Null
  9112.         Set @SSQL = @SSQL + ' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  9113.     If @Sifra_GAmb Is Not Null
  9114.         Set @SSQL = @SSQL + ' And A.Sifra_GAmb = ''' + @Sifra_GAmb + ''' '
  9115.     If @Koi_OE Is Not NULL
  9116.              Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  9117.     If @Amb_GAmb = 'G' -- Gajbi
  9118.         Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''G'') '
  9119.     Else -- If @Amb_GAmb = 'A' -- Sisinja
  9120.         Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''N'') '
  9121.     Insert Into #Rez Exec(@SSQL)
  9122.      Set @SSQL = ' Select R.DokrID, D.Sifra_Oe, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup,  Kup.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  9123.         R.Sifra_Amb, A.ImeAmb, A.Sifra_GAmb, G.ImeAmb ImeGAmb, O.ImeOrg, A.SodrziArt, A.VoGamb, '
  9124.     If @Amb_GAmb = 'G'
  9125.         Set @SSQL = @SSQL + ' Round(Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then R.Zadolz Else (R.Zadolz/A.VoGAmb) End), 4) Zadolz, 
  9126.                       Round(Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then R.Razdolz Else (R.Razdolz/A.VoGAmb) End), 4) Razdolz '
  9127.     Else  -- If @Amb_GAmb = 'A'
  9128.         Set @SSQL = @SSQL + ' Sum(R.Zadolz) Zadolz, Sum(R.Razdolz) Razdolz '
  9129.     Set @SSQL = @SSQL + ' From #Rez R
  9130.         Inner Join Dokr D On D.DokrID = R.DokrId
  9131.         Left Outer Join KatAmb A On A.Sifra_Amb=R.Sifra_Amb
  9132.         Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb
  9133.         Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  9134.         Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  9135.         Left Outer Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  9136.         Left Outer Join Orged O On O.Sifra_Oe=D.Sifra_Oe 
  9137.         Group By R.DokrID, D.Sifra_Oe, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup,  Kup.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  9138.                 R.Sifra_Amb, A.ImeAmb, A.Sifra_GAmb, G.ImeAmb, O.ImeOrg, A.SodrziArt, A.VoGamb '
  9139.     Exec(@SSQL)
  9140.  
  9141.  
  9142.  
  9143.  
  9144. Go
  9145. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_amd_brz]'))
  9146. drop procedure [dbo].[sp_amd_brz]
  9147.  
  9148. Go
  9149.  
  9150. CREATE PROCEDURE sp_AMD_Brz
  9151.     @Sifra_OE     Smallint=Null,    --
  9152.     @KoiOE     Varchar(400)=Null,    --
  9153.     @Sifra_Nal     Smallint=Null,    --
  9154.     @Sifra_Dok     Smallint=Null,    --
  9155.     @Broj_Nal_Od     Int=Null,    --
  9156.     @Broj_Nal_Do     Int=Null,    --
  9157.     @Datum_Nal_Od  Smalldatetime=Null,    --
  9158.     @Datum_Nal_Do  Smalldatetime=Null,    --
  9159.     @Broj_Dok_Od     Int=Null,    --
  9160.     @Broj_Dok_Do     Int=Null,    --
  9161.     @Datum_Dok_Od Smalldatetime=Null,    --
  9162.     @Datum_Dok_Do Smalldatetime=Null,    --
  9163.     @Sifra_Kup     Char(6)=Null,    --
  9164.     @Sifra_Obj    smallint = Null,
  9165.     @Sifra_Mest    int = Null,
  9166.     @VlIzl         Char(1)=Null,    --
  9167.     @PecFisc     Char(1) = Null,  -- D - Ispecateni na fiskalen      
  9168.     @Sifra_Nivo     Char(2) = Null,
  9169.     @Sifra_Pat    smallint = Null,
  9170.     @Sifra_Oper    varchar(20) = Null,
  9171.     @PoKojDatum    char(1) = 'D'     -- D - Datum_Dok,      V - Datum_Vnes
  9172. AS
  9173.  
  9174.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  9175.             If @Datum_Dok_Do Is Not Null
  9176.             Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  9177.  
  9178.        Declare @SSQL Varchar(8000)
  9179.     SET @SSQL = 'SELECT D.DokrID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  9180.                 dbo.fn_VratiDatum(D.Datum_Vnes) Datum_Vnes, dbo.fn_VratiVreme(D.Datum_Vnes) Vreme_Vnes, 
  9181.                 D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, 
  9182.                 D.Sifra_Kup, K.ImeKup, K.Smesto, D.Sifra_Obj, KO.ImeObj, KO.Smesto as ObjSmesto,
  9183.                 D.Rok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  9184.                 TD.ImeDok, O.ImeOrg, D.Sifra_Oper, D.Sifra_OpIz, D.Datum_Izm , D.Datum_Vnes as Datum_Vnes_Cel, D.Sifra_Prim
  9185.                 FROM DOKR D
  9186.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  9187.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  9188.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  9189.                 LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj '
  9190.  
  9191.     If @Datum_Nal_Od Is Not Null Or @Datum_Nal_Do Is Not Null
  9192.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal '
  9193.  
  9194.     Set @SSQL = @SSQL + ' WHERE (D.Imadodatna = '''' or D.Imadodatna is null or D.ImaDodatna=''D'') '
  9195.  
  9196.     
  9197.     If @Sifra_Nal Is Not Null
  9198.         SET @SSQL = @SSQL + 'And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  9199.     If @Sifra_Nivo Is Not Null
  9200.         Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  9201.  
  9202.     If @PecFisc = 'D'
  9203.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  9204.     Else If @PecFisc = 'N'
  9205.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  9206.  
  9207.     If @Sifra_Dok Is NOT NULL
  9208.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  9209.        If @Sifra_OE Is NOT Null
  9210.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  9211.        If @KoiOE Is NOT Null
  9212.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  9213.     If @Sifra_Pat IS NOT NULL
  9214.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  9215.     If @Broj_Nal_Od Is NOT Null
  9216.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  9217.        If @Broj_Nal_Do Is NOT Null
  9218.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  9219.     If @Broj_Dok_Od Is NOT Null
  9220.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  9221.        If @Broj_Dok_Do Is NOT Null
  9222.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  9223.     If @PecFisc = 'D'
  9224.          Begin
  9225.         If @Datum_Dok_Od Is NOT Null
  9226.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  9227.            If @Datum_Dok_Do Is NOT Null
  9228.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  9229.          End
  9230.     Else
  9231.          Begin
  9232.         If @PoKojDatum = 'V'
  9233.               Begin
  9234.             If @Datum_Dok_Od Is NOT Null                SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  9235.             If @Datum_Dok_Do Is NOT Null
  9236.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  9237.               End
  9238.         Else
  9239.               Begin
  9240.             If @Datum_Dok_Od Is NOT Null
  9241.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  9242.                If @Datum_Dok_Do Is NOT Null
  9243.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  9244.               End
  9245.          End
  9246.     If @Datum_Nal_Od Is NOT Null
  9247.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  9248.        If @Datum_Nal_Do Is NOT Null
  9249.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  9250.     If @Sifra_Kup Is NOT Null
  9251.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  9252.        If @Sifra_Obj Is NOT Null
  9253.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  9254.     If @VlIzl Is NOT Null
  9255.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  9256.        If @Sifra_Mest Is NOT Null
  9257.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  9258.        If @Sifra_Oper IS NOT NULL
  9259.               SET @SSQL = @SSQL + 'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  9260.  
  9261.     if @Sifra_dok is null
  9262.     begin
  9263.               SET @SSQL = @SSQL + 'AND (TD.Iskl_Norm is null or TD.Iskl_Norm <> ''D'') '
  9264.         --ne gi prikazzuvaj nekoi tipovi dok voopssto ako ne se bass tie pobarani
  9265.     end
  9266.  
  9267.    EXEC(@SSQL)
  9268.  
  9269.  
  9270.  
  9271.  
  9272.  
  9273. Go
  9274. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_1450_1451]'))
  9275. drop procedure [dbo].[sp_anal_1450_1451]
  9276.  
  9277. Go
  9278.  
  9279.  
  9280.  
  9281. CREATE    PROCEDURE sp_Anal_1450_1451
  9282.     @BrOd            int = Null,
  9283.     @BrDo            int = Null,
  9284.     @Datum_Od    smalldatetime = Null,
  9285.     @Datum_Do    smalldatetime = Null,
  9286.     @DatVal_Od    smalldatetime = Null,
  9287.     @DatVal_Do    smalldatetime = Null,      
  9288.         @Banka        char(6) = Null,
  9289.         @Nalogodavac    Char(6) = Null
  9290. AS
  9291.     Declare @SSQL as varchar(4000)
  9292.     Set @SSQL = ' Select D.* , Ban.ImeKup ImeBan, Val.ImeVal, Kup.ImeKup 
  9293.         From Doznaki D
  9294.         Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sif_Nalogodav
  9295.             Left Outer Join Komint Ban On Ban.Sifra_Kup=D.Sif_Banka
  9296.                 Left Outer Join KrsLista Val On Val.SImeVal=D.KojaVal
  9297.          Where 1=1 '
  9298.     If @Datum_Od Is Not Null
  9299.         Set @SSQL = @SSQL + ' And D.Dat_Vnes >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  9300.     If @Datum_Do Is Not Null
  9301.         Set @SSQL = @SSQL + ' And D.Dat_Vnes <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  9302.     If @DatVal_Od Is Not Null
  9303.         Set @SSQL = @SSQL + ' And D.Dat_Dosp >= ''' + cast(@DatVal_Od as varchar(30)) + ''' '
  9304.     If @DatVal_Do Is Not Null
  9305.         Set @SSQL = @SSQL + ' And D.Dat_Dosp <= ''' + cast(@DatVal_Do as varchar(30)) + ''' '    
  9306.            If @BrOd Is NOT Null
  9307.         SET @SSQL = @SSQL + 'AND D.Broj_Doznaka>=''' + Cast(@BrOd As Varchar(6)) + ''' '
  9308.     If @BrDo Is NOT Null
  9309.          SET @SSQL = @SSQL + 'AND D.Broj_Doznaka<=''' + Cast(@BrDo As Varchar(6)) + ''' '
  9310.     If @Nalogodavac Is Not NULL
  9311.         Set @SSQL = @SSQL + ' And D.Sif_Nalogodav=' + Cast(@Nalogodavac As Varchar(6)) + ' '
  9312.     If @Banka Is Not NULL
  9313.         Set @SSQL = @SSQL + ' And D.Sif_Banka=' + Cast(@Banka As Varchar(6)) + ' '
  9314.     Exec(@SSQL)
  9315.  
  9316.  
  9317.  
  9318.  
  9319.  
  9320. Go
  9321. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_devfra]'))
  9322. drop procedure [dbo].[sp_anal_devfra]
  9323.  
  9324. Go
  9325.  
  9326. CREATE  PROCEDURE sp_Anal_DevFra
  9327.     @Sifra_Oe    smallint=Null,
  9328.     @KoiOe    varchar(10) = Null,
  9329.     @Datum_Od    smalldatetime=Null,
  9330.     @Datum_Do    smalldatetime=Null,
  9331.     @Sifra_Art_Od    varchar(20)=Null,
  9332.     @Sifra_Art_Do    varchar(20)=Null,
  9333.     @TipDok    varchar(200) = Null,
  9334.     @Sifra_Kup    char(6) = Null,
  9335.     @PoArtikli    char(1) = 'N'
  9336. AS
  9337.     Declare @SSQL as Varchar(8000)
  9338.     Set @SSQL = ' Select D.Sifra_Oe, O.ImeOrg, D.Broj_DevF, D.Datum_Dok, D.Sifra_Kup, Kup.ImeKup, D.KojaVal, V.ImeVal, D.Kurs, S.PTar, S.Posn, D.Sifra_Dok, D.Broj_Dok, '
  9339.     If @PoArtikli = 'D'
  9340.         Set @SSQL = @SSQL + ' S.Sifra_Art, K.ImeArt, Sum(S.Kolic) Kolic, S.DevCena, S.DenCena, '
  9341.     Else
  9342.         Set @SSQL = @SSQL + ' Null Sifra_Art, Null ImeArt, Null Kolic, Null DevCena, Null DenCena,'
  9343.             --Sum(S.Kolic*dbo.fn_VratiCenaOsnov(S.DevCena, ''D'', S.POsn, S.Uces, 0)) IznosDevNeto,   vaka bese do 15.11.2010
  9344.             --Sum(S.Kolic*dbo.fn_VratiCenaOsnov(S.DenCena, ''D'', S.POsn, S.Uces, 0)) IznosDenNeto,
  9345.             --Sum(dbo.fn_Vr_Krajna(S.Kolic, S.DevCena, ''D'', S.POsn, S.Uces, 0)) IznosDevDan, 
  9346.             --Sum(dbo.fn_Vr_Krajna(S.Kolic, S.DenCena, ''D'', S.POsn, S.Uces, 0)) IznosDenDan,
  9347.     Set @SSQL = @SSQL + ' Sum(S.Kolic*S.DevCena/(1+S.POsn/100)*(1-S.Uces/100)) IznosDevNeto, 
  9348.                   Sum(S.Kolic*S.DenCena/(1+S.POsn/100)*(1-S.Uces/100)) IznosDenNeto,
  9349.                   Sum(S.Kolic*S.DevCena*(1-S.Uces/100)) IznosDevDan, 
  9350.                   Sum(S.Kolic*S.DenCena*(1-S.Uces/100)) IznosDenDan,
  9351.                   Sum(S.Kolic*S.DevCena*(1-S.Uces/100)*(S.Posn/100)) DevDanok, 
  9352.                   Sum(S.Kolic*S.DenCena*(1-S.Uces/100)*(S.Posn/100)) DenDanok
  9353.             From DevFra D
  9354.             Inner Join DevFraStavk S on S.DevFraID=D.DevFraID
  9355.             Inner Join Orged O On O.Sifra_Oe=D.Sifra_Oe
  9356.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  9357.             Left Outer Join KrsLista V On V.SImeVal=D.KojaVal 
  9358.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  9359.             Where 1=1 '
  9360.     If @Sifra_Oe Is Not Null
  9361.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  9362.     If @KoiOe Is Not Null
  9363.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg= ''' + @KoiOe + ''') '
  9364.     If @TipDok Is Not Null
  9365.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDok + ') '
  9366.     If @Datum_Od Is Not Null
  9367.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  9368.     If @Datum_Do Is Not Null
  9369.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  9370.     If @Sifra_Kup Is Not Null
  9371.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  9372.     If @Sifra_Art_Od Is Not Null
  9373.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  9374.     If @Sifra_Art_Do Is Not Null
  9375.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  9376.     Set @SSQL = @SSQL + ' Group By D.Sifra_Oe, O.ImeOrg, D.Broj_DevF, D.Datum_Dok, D.Sifra_Kup, Kup.ImeKup, D.KojaVal, V.ImeVal, D.Kurs, S.PTar, S.Posn,D.Sifra_Dok, D.Broj_Dok '
  9377.     If @PoArtikli = 'D'
  9378.         Set @SSQL = @SSQL + ' , S.Sifra_Art, K.ImeArt, S.DevCena, S.DenCena '
  9379.     Exec(@SSQL)
  9380.  
  9381. Go
  9382. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_findok]'))
  9383. drop procedure [dbo].[sp_anal_findok]
  9384.  
  9385. Go
  9386.  
  9387.  
  9388.  
  9389.  
  9390.  
  9391. CREATE                         PROCEDURE sp_Anal_FinDok
  9392.     @Sifra_Nal Smallint,
  9393.    @Sifra_Dok varchar(200), 
  9394.    @Sifra_OE Smallint,
  9395.    @Broj_Nal_Od Int,
  9396.    @Broj_Nal_Do Int,
  9397.    @Broj_Dok_Od Int,
  9398.    @Broj_Dok_Do Int,
  9399.    @Datum_Dok_Od Datetime,
  9400.    @Datum_Dok_Do Datetime,
  9401.    @Datum_Nal_Od Datetime,
  9402.    @Datum_Nal_Do Datetime,
  9403.    @Kto Char(6),
  9404.    @Sifra_Kup_Od Char(6),
  9405.    @Sifra_Kup_Do Char(6),
  9406.     @Ime_Kup_Od Varchar(25),
  9407.     @Ime_Kup_Do Varchar(25),
  9408.    @Sifra_Za Char(1),
  9409.     @TipKup Varchar(11),
  9410.     @Pod1 Smallint = Null,
  9411.     @Pod2 Smallint = Null,
  9412.     @Pod3 Smallint = Null,
  9413.     @Pod4 Smallint = Null,
  9414.     @Pod5 Smallint = Null,
  9415.     @Sifra_Tip Smallint = Null,
  9416.     @KFSifra_Kup Char(1) = Null,
  9417.     @KFTipKup Char(1) = Null,
  9418.     @KFPod1 Char(1) = Null,
  9419.     @KFPod2 Char(1) = Null,
  9420.     @KFPod3 Char(1) = Null,
  9421.     @KFPod4 Char(1) = Null,
  9422.     @KFPod5 Char(1) = Null,
  9423.     @SamoBezExtBr char(1),
  9424.     @Sifra_Nivo Char(2) = Null,
  9425.     @KFSifra_Nivo Char(1) = Null,
  9426.     @Sifra_Pat    smallint = Null,
  9427.     @KoiOE    varchar(300) = Null,
  9428.     @KomercKako    char(1) = 'I',            -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  9429.     @NeVoKasStav char(1) = NULL,
  9430.     @Sifra_Div    smallint = Null,
  9431.     @NemaDivizija    char(1) = Null,
  9432.     @DaliDev    char(1)='N'  OUTPUT
  9433. AS
  9434.    Declare @SSQL Varchar(4000)
  9435.    Declare @SSQLSel Varchar(4000)
  9436.    Set @SSQLSel = ' ' 
  9437.    Set @SSQL = ' ' 
  9438.     If @Ime_Kup_Od Is Not Null
  9439.         Set @SSQL = @SSQL + 'And K.ImeKup>=''' + @Ime_Kup_Od + ''' '
  9440.     If @Ime_Kup_Do Is Not Null
  9441.         Set @SSQL = @SSQL + 'And K.ImeKup<=''' + @Ime_Kup_Do + ''' '
  9442.     If @KFSifra_Kup Is Null
  9443.         Begin
  9444.             If @Sifra_Kup_Od Is Not Null
  9445.                 SET @SSQL = @SSQL + 'And A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  9446.             If @Sifra_Kup_Do Is Not Null
  9447.                 SET @SSQL = @SSQL + 'And A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  9448.         End
  9449.     Else If @KFSifra_Kup='D' And @Sifra_Kup_Od Is Not Null
  9450.         Set @SSQL = @SSQL + 'And A.Sifra_Kup<>''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  9451.     If @KFSifra_Nivo Is Null
  9452.         Begin
  9453.             If @Sifra_Nivo Is Not Null
  9454.                 Set @SSQL = @SSQL + 'And A.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  9455.         End
  9456.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  9457.         Set @SSQL = @SSQL + 'And (A.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or A.Sifra_Nivo Is Null) '
  9458.     If @Sifra_Nal Is NOT Null
  9459.         SET @SSQL = @SSQL + 'AND Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  9460.     If @Sifra_Dok Is NOT Null 
  9461.         SET @SSQL = @SSQL + ' AND Sifra_Dok IN (' + Cast(@Sifra_Dok As Varchar(200)) + ') '
  9462.     If @Sifra_OE Is NOT Null
  9463.         SET @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  9464.     If @Broj_Nal_Od Is NOT Null
  9465.         SET @SSQL = @SSQL + 'AND A.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  9466.     If @Broj_Nal_Do Is NOT Null
  9467.          SET @SSQL = @SSQL + 'AND A.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  9468.     If @Broj_Dok_Od Is NOT Null
  9469.         SET @SSQL = @SSQL + 'AND A.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  9470.     If @Broj_Dok_Do Is NOT Null
  9471.          SET @SSQL = @SSQL + 'AND A.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  9472.     If @Datum_Dok_Od Is NOT Null
  9473.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  9474.     If @Datum_Dok_Do Is NOT Null
  9475.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  9476.     If @Datum_Nal_Od Is NOT Null
  9477.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  9478.     If @Datum_Nal_Do Is NOT Null
  9479.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  9480.     If @Sifra_Div IS NOT NULL
  9481.         SET @SSQL = @SSQL + ' AND A.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  9482. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div
  9483.     If @NemaDivizija = 'D'
  9484.         SET @SSQL = @SSQL + 'AND A.Sifra_Div Is Null ' 
  9485.     If @KomercKako = 'I'
  9486.         If @Sifra_Pat IS NOT NULL
  9487.             SET @SSQL = @SSQL + ' AND A.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  9488.     If @KomercKako = 'T'
  9489.         If @Sifra_Pat IS NOT NULL
  9490.             SET @SSQL = @SSQL + ' AND K.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  9491.     If @Kto Is NOT Null 
  9492.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  9493.     If @KoiOE Is NOT Null
  9494.               SET @SSQL = @SSQL + 'AND A.Sifra_OE In (' + @KoiOE + ') '   If @SamoBezExtBr = 'D'
  9495.       SET  @SSQL = @SSQL + ' AND A.BrojDok = ''''  '
  9496.     If @KFTipKup Is Null
  9497.         Begin
  9498.             If @TipKup Is Not Null
  9499.                 Set @SSQL = @SSQL + 'And K.TipKup=''' + @TipKup + ''' '
  9500.         End
  9501.     Else If @KFTipKup='D' And @TipKup Is Not Null
  9502.         Set @SSQL = @SSQL + 'And (K.TipKup<>''' + @TipKup + ''' Or K.TipKup Is Null) '
  9503.     If @KFPod1 Is Null
  9504.         Begin
  9505.             If @Pod1 Is Not Null
  9506.                 Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  9507.         End
  9508.     Else If @KFPod1='D' And @Pod1 Is Not Null
  9509.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Pod1 As Varchar(6)) + ' Or K.KDrugo1 Is Null) '
  9510.     If @KFPod2 Is Null
  9511.         Begin
  9512.             If @Pod2 Is Not Null
  9513.                 Set @SSQL = @SSQL + 'And K.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  9514.         End
  9515.     Else If @KFPod2='D' And @Pod2 Is Not Null
  9516.         Set @SSQL = @SSQL + 'And (K.KDrugo2<>' + Cast(@Pod2 As Varchar(6)) + ' Or K.KDrugo2 Is Null) '
  9517.     If @KFPod3 Is Null
  9518.         Begin
  9519.             If @Pod3 Is Not Null
  9520.                 Set @SSQL = @SSQL + 'And K.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  9521.         End
  9522.     Else If @KFPod3='D' And @Pod3 Is Not Null
  9523.         Set @SSQL = @SSQL + 'And (K.KDrugo3<>' + Cast(@Pod3 As Varchar(6)) + ' Or K.KDrugo3 Is Null) '
  9524.     If @KFPod4 Is Null
  9525.         Begin
  9526.             If @Pod4 Is Not Null
  9527.                 Set @SSQL = @SSQL + 'And K.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  9528.         End
  9529.     Else If @KFPod4='D' And @Pod4 Is Not Null
  9530.         Set @SSQL = @SSQL + 'And (K.KDrugo4<>' + Cast(@Pod4 As Varchar(6)) + ' Or K.KDrugo4 Is Null) '
  9531.     If @KFPod5 Is Null
  9532.         Begin
  9533.             If @Pod5 Is Not Null
  9534.                 Set @SSQL = @SSQL + 'And K.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  9535.         End
  9536.     Else If @KFPod5='D' And @Pod5 Is Not Null
  9537.         Set @SSQL = @SSQL + 'And (K.KDrugo5<>' + Cast(@Pod5 As Varchar(6)) + ' Or K.KDrugo5 Is Null) '
  9538.     If @Sifra_Tip IS NOT NULL
  9539.         SET @SSQL = @SSQL + ' AND K.Sifra_Tip = ' + Cast(@Sifra_Tip as varchar(6)) + ' '
  9540.     If @Sifra_Za Is NOT Null          
  9541.         SET @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za
  9542. --Set @SSQL=@SSQL + ' )'    
  9543. Create Table #SifriDok
  9544.     (Sifra_Dok Int)
  9545.     Set @SSQLSel = ' SELECT DISTINCT A.Sifra_Dok FROM AnFinDok A
  9546.      LEFT OUTER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  9547.      WHERE 1=1 '
  9548.  Insert Into #SifriDok Exec (@SSQLSel+@SSQL)
  9549.  Select @DaliDev = TD.Dev  FROM TipDok TD Where TD.Dev='D' and TD.Sifra_Dok In (Select Distinct Sifra_Dok From #SifriDok)
  9550.    SET @SSQLSel = 'SELECT A.*, K.ImeKup, K.SMesto, KL.ImeVal FROM AnFinDok A
  9551.       LEFT OUTER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  9552.       Left Outer Join KrsLista KL On KL.SImeVal = A.KojaVal
  9553.       WHERE 1=1 '
  9554.     If @NeVoKasStav IS NOT NULL
  9555.     Begin
  9556.         IF @NeVoKasStav='D'
  9557.         SET @SSQLsel = @SSQLsel + 'AND A.AnID NOT IN (SELECT AnID FROM KasStav Where AnID IS NOT NULL)'
  9558.         ELSE
  9559.         SET @SSQLsel = @SSQLsel + 'AND A.AnID IN (SELECT AnID FROM KasStav Where AnID IS NOT NULL)'
  9560.     End
  9561.    EXEC(@SSQLSel+@SSQL)
  9562.     RETURN @@ERROR
  9563.  
  9564.  
  9565.  
  9566.  
  9567.  
  9568.  
  9569.  
  9570. Go
  9571. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_findokplat]'))
  9572. drop procedure [dbo].[sp_anal_findokplat]
  9573.  
  9574. Go
  9575. CREATE    PROCEDURE sp_Anal_FinDokPlat
  9576.    @Sifra_OE Smallint,
  9577.    @Sifra_Dok varchar(200),
  9578.    @Datum_Dok_Od Smalldatetime,
  9579.    @Datum_Dok_Do Smalldatetime,
  9580.    @Sifra_Kup_Od Char(6),
  9581.    @Sifra_Kup_Do Char(6),
  9582.    @Ime_Kup_Od Varchar(25),
  9583.    @Ime_Kup_Do Varchar(25),
  9584.    @TipKup Varchar(200),
  9585.    @Pod1 Smallint,
  9586.    @Pod2 Smallint,
  9587.    @Pod3 Smallint,
  9588.    @Pod4 Smallint = Null,
  9589.    @Pod5 Smallint = Null,
  9590.    @Sifra_Tip Smallint = Null,
  9591.    @KFSifra_Kup Char(1),
  9592.    @KFTipKup Char(1),
  9593.    @KFPod1 Char(1),
  9594.    @KFPod2 Char(1),
  9595.    @KFPod3 Char(1),
  9596.    @KFPod4 Char(1) = Null,
  9597.    @KFPod5 Char(1) = Null,
  9598.    @Sifra_Nivo Char(100)= NULL,
  9599.    @Sifra_Pat    smallint = NULL,
  9600.    @Skala1    smallint = 3,
  9601.    @Skala2    smallint = 15,
  9602.    @Skala3    smallint = 35,
  9603.    @Skala4    smallint = 45,
  9604.    @Skala5    smallint = 60,
  9605.    @Skala6    smallint = 75,
  9606.    @KomercKako    char(1) = 'I',            -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  9607.    @Neto Decimal(18,4) OUTPUT,
  9608.    @DDV Decimal(18,4) OUTPUT,
  9609.    @DenoviNapl Decimal(8,2) OUTPUT,
  9610.    @DenoviFakt Decimal(8,2) OUTPUT,
  9611.    @Vk_Naplata Decimal(18,4) OUTPUT,
  9612.    @Vk_Fakt Decimal(18,4) OUTPUT
  9613. AS
  9614.    Declare @SSQL Varchar(2000)
  9615.     Declare @AnID Integer
  9616.     Declare @Datum_Upl Smalldatetime
  9617.     Declare @Pobaruva Decimal(18,4)
  9618.     Declare @AnID1 Integer
  9619.     Declare @AnID2 Integer
  9620.     Declare @Iznos Decimal(18,4)
  9621.     Declare @Datum_Fakt Smalldatetime
  9622.     Declare @RokDosp Smallint
  9623.     Declare @Dolzi Decimal(18,4)
  9624.     Declare @KasniDenovi Smallint
  9625.     Declare @KasniTez Decimal(18,4)
  9626.     Declare @DospTez Decimal(18,4)
  9627.     Declare @VkKasniTez Decimal(18,4)
  9628.     Declare @VkDospTez Decimal(18,4)
  9629.     Declare @FktZaUpl Decimal(18,4)
  9630.     Declare @Danok1 Decimal(18,4)
  9631.     Declare @Danok2 decimal(18,4)
  9632.     Declare @IznNezatv Decimal(18,4)
  9633.     Declare @Odnos Decimal(6,4)
  9634.     Set Nocount On
  9635.     Set @Vk_Naplata = 0.0
  9636.     Set @Vk_Fakt = 0.0
  9637.     Set @VkKasniTez = 0.0
  9638.     Set @VkDospTez = 0.0
  9639.     Set @FktZaUpl = 0.0
  9640.     Set @Neto = 0.0
  9641.     Set @DDV = 0.0
  9642.     CREATE      Table #Rezult
  9643.     (    Denovi Smallint,
  9644.         Naplata Decimal(18,4),
  9645.         Fakturirano Decimal(18,4)
  9646.      )
  9647.    SET @SSQL = 'SELECT AnID, Datum_Dok, Pobaruva FROM AnFinDok A
  9648.         Inner Join Komint KUP On A.Sifra_Kup=KUP.Sifra_KUP
  9649.         WHERE Pobaruva<>0 '
  9650. --        WHERE Sifra_Dok In (301, 306) And Pobaruva<>0 '
  9651.     If @Ime_Kup_Od Is Not Null
  9652.         Set @SSQL = @SSQL + 'And KUP.ImeKup>=''' + @Ime_Kup_Od + ''' '
  9653.     If @Ime_Kup_Do Is Not Null
  9654.         Set @SSQL = @SSQL + 'And KUP.ImeKup<=''' + @Ime_Kup_Do + ''' '
  9655.     If @KFSifra_Kup Is Null
  9656.         Begin
  9657.             If @Sifra_Kup_Od Is Not Null
  9658.                 SET @SSQL = @SSQL + 'And A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  9659.             If @Sifra_Kup_Do Is Not Null
  9660.                 SET @SSQL = @SSQL + 'And A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  9661.         End
  9662.     Else If @KFSifra_Kup='D' And @Sifra_Kup_Od Is Not Null
  9663.         Set @SSQL = @SSQL + 'And A.Sifra_Kup<>''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  9664.     If @KFTipKup Is Null
  9665.         Begin
  9666.             If @TipKup Is Not Null
  9667.                 Set @SSQL = @SSQL + 'And KUP.TipKup In (' + @TipKup + ') '
  9668.         End
  9669.     Else If @KFTipKup='D' And @TipKup Is Not Null
  9670.         Set @SSQL = @SSQL + 'And (Kup.TipKup NOT IN (' + @TipKup + ') Or Kup.TipKup Is Null) '
  9671.     If @KFPod1 Is Null
  9672.         Begin
  9673.             If @Pod1 Is Not Null
  9674.                 Set @SSQL = @SSQL + 'And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  9675.         End
  9676.     Else If @KFPod1='D' And @Pod1 Is Not Null
  9677.         Set @SSQL = @SSQL + 'And (KUP.KDrugo1<>' + Cast(@Pod1 As Varchar(6)) + ' Or KUP.KDrugo1 Is Null) '
  9678.     If @KFPod2 Is Null
  9679.         Begin
  9680.             If @Pod2 Is Not Null
  9681.                 Set @SSQL = @SSQL + 'And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  9682.         End
  9683.     Else If @KFPod2='D' And @Pod2 Is Not Null
  9684.         Set @SSQL = @SSQL + 'And (KUP.KDrugo2<>' + Cast(@Pod2 As Varchar(6)) + ' Or KUP.KDrugo2 Is Null) '
  9685.     If @KFPod3 Is Null
  9686.         Begin
  9687.             If @Pod3 Is Not Null
  9688.                 Set @SSQL = @SSQL + 'And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  9689.         End
  9690.     Else If @KFPod3='D' And @Pod3 Is Not Null
  9691.         Set @SSQL = @SSQL + 'And (KUP.KDrugo3<>' + Cast(@Pod3 As Varchar(6)) + ' Or KUP.KDrugo3 Is Null) '
  9692.     If @KFPod4 Is Null
  9693.         Begin
  9694.             If @Pod4 Is Not Null
  9695.                 Set @SSQL = @SSQL + 'And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  9696.         End
  9697.     Else If @KFPod4='D' And @Pod4 Is Not Null
  9698.         Set @SSQL = @SSQL + 'And (KUP.KDrugo4<>' + Cast(@Pod4 As Varchar(6)) + ' Or KUP.KDrugo4 Is Null) '
  9699.     If @KFPod5 Is Null
  9700.         Begin
  9701.             If @Pod5 Is Not Null
  9702.                 Set @SSQL = @SSQL + 'And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  9703.         End
  9704.     Else If @KFPod5='D' And @Pod5 Is Not Null
  9705.         Set @SSQL = @SSQL + 'And (KUP.KDrugo5<>' + Cast(@Pod5 As Varchar(6)) + ' Or KUP.KDrugo5 Is Null) '
  9706.     If @Sifra_Tip Is Not Null
  9707.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  9708.     If @Sifra_OE Is Not Null
  9709.         SET @SSQL = @SSQL +'AND A.Sifra_OE=' + CAst(@Sifra_OE As VArchar(6)) + ' '
  9710.     If @Sifra_Dok Is NOT Null 
  9711.               SET @SSQL = @SSQL + ' AND A.Sifra_Dok IN (' + Cast(@Sifra_Dok As Varchar(200)) + ') '
  9712.     If @Datum_Dok_Od Is NOT Null
  9713.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  9714.     If @Datum_Dok_Do Is NOT Null
  9715.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  9716.    If @KomercKako = 'I'
  9717.     If @Sifra_Pat IS NOT NULL
  9718.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  9719.    If @KomercKako = 'T'
  9720.     If @Sifra_Pat IS NOT NULL
  9721.         SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  9722. --    If @Sifra_Pat IS NOT NULL
  9723. --        SET @SSQL = @SSQL + ' AND A.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  9724.     Create Table #Uplati
  9725.     (    AnID Integer,
  9726.         Datum_Dok Smalldatetime,
  9727.         Pobaruva Decimal(18,4)
  9728.     )
  9729.     Insert #Uplati Exec(@SSQL)
  9730.     Declare Upl Cursor Fast_Forward For Select * From #Uplati
  9731.     Open Upl
  9732.     Fetch Next From Upl Into @AnID, @Datum_Upl, @Pobaruva
  9733.     While @@Fetch_Status = 0     Begin
  9734. --        print 'Uplata:' + Cast(@AnID As Char(10)) + ' ' + Cast(@Datum_Upl As Char(20)) + ' ' +
  9735. --                Cast(@Pobaruva As Char(20))
  9736. --        print '------------------------------------------------------------------'
  9737.         Set @Vk_Naplata = @Vk_Naplata + @Pobaruva
  9738.         Declare Fakt Cursor Fast_Forward For
  9739.             Select AZ.AnID1, AZ.AnID2, AZ.Iznos, A.Datum_Dok, A.Rok, A.Dolzi, A.Danok1, A.Danok2
  9740.             From AnZatv AZ
  9741.             Inner Join AnFinDok A On AZ.AnID1=A.AnID Or AZ.AnID2=A.AnID
  9742.             Where (AZ.AnID1=@AnID Or AZ.AnID2=@AnID) And A.Dolzi<>0 And AZ.Iznos<>0
  9743.         Open Fakt
  9744.         Set @KasniDenovi = 0
  9745.         Set @KasniTez = 0
  9746.         Set @DospTez = 0
  9747.         Set @FktZaUpl = 0.0
  9748.         Fetch Next From Fakt Into @AnID1, @AnID2, @Iznos, @Datum_Fakt, @RokDosp, @Dolzi, @Danok1, @Danok2
  9749.         While @@Fetch_Status = 0
  9750.         Begin
  9751. --            print 'Faktura:' + Cast(@AnID1 As Char(8)) + ' ' + Cast(@AnID2 As Char(8)) + ' ' +
  9752. --                    Cast(@Datum_Fakt As Char(20)) + ' ' + Cast(@RokDosp As Char(4)) + ' ' +
  9753. --                    Cast(@Iznos As Char(15))
  9754.             -- Go skalirame danokot proporcionalno na uplatata
  9755.             Set @Danok1 = @Danok1 * @Iznos / @Dolzi
  9756.             Set @Danok2 = @Danok2 * @Iznos / @Dolzi
  9757.             Set @Vk_Fakt = @Vk_Fakt + @Iznos
  9758.             Set @FktZaUpl = @FktZaUpl + @Iznos
  9759.             Set @Neto = @Neto + (@Iznos - @Danok1 - @Danok2)
  9760.             Set @DDV = @DDV + @Danok1 + @Danok2
  9761.             --Levo
  9762.             Set @KasniDenovi = DateDiff(Day, @Datum_Fakt, @Datum_Upl)
  9763.             If @KasniDenovi < 0
  9764.                 Set @KasniDenovi = 0
  9765.             Set @KasniTez = @KasniTez + (@KasniDenovi * @Iznos)
  9766.             Set @VkKasniTez = @VkKasniTez + (@KasniDenovi * @Iznos)
  9767.             --Desno
  9768.             Set @DospTez = @DospTez + (@RokDosp * @Iznos)
  9769.             Set @VkDospTez = @VkDospTez + (@RokDosp * @Iznos)
  9770.             Fetch Next From Fakt Into @AnID1, @AnID2, @Iznos, @Datum_Fakt, @RokDosp, @Dolzi, @Danok1, @Danok2
  9771.         End --While za vnatresen Cursor - Fakt
  9772.         Close Fakt
  9773.         Deallocate Fakt
  9774.         Set @KasniTez = @KasniTez / @Pobaruva
  9775.         Set @DospTez = @DospTez / @Pobaruva
  9776.         Insert #Rezult (Denovi, Naplata)
  9777.             Values (Round(@KasniTez, 0), @Pobaruva)
  9778.         Insert #Rezult (Denovi, Fakturirano)
  9779.             Values (Round(@DospTez, 0), @FktZaUpl)
  9780.         Fetch Next From Upl Into @AnID, @Datum_Upl, @Pobaruva
  9781.     End --While za nadvoresen Cursor - Upl
  9782.     Close Upl
  9783.     Deallocate Upl
  9784.     If @Vk_Naplata<>0
  9785.         Set @DenoviNapl = Round(@VkKasniTez/@Vk_Naplata, 2)
  9786.     Else
  9787.         Set @DenoviNapl = 0
  9788.     If @Vk_Fakt<>0
  9789.         Set @DenoviFakt = Round(@VkDospTez/@Vk_Fakt, 2)
  9790.     Else
  9791.         Set @DenoviFakt = 0
  9792.     --Da sa izednacat Naplata i Fakturirano
  9793.     Set @IznNezatv = @Vk_Naplata - @Vk_Fakt
  9794.     If @IznNezatv <> 0
  9795.         Begin
  9796.             Insert #Rezult (Denovi, Fakturirano)
  9797.                 Values (0, @IznNezatv)
  9798.             If @Neto <> 0
  9799.                 Set @Odnos = @DDV/@Neto
  9800.             Else
  9801.                 Set @Odnos = 0
  9802.             Set @Neto = @Neto + (1-@Odnos)*@IznNezatv
  9803.             Set @DDV = @DDV + @Odnos*@IznNezatv
  9804.             Set @Vk_Fakt = @Vk_Fakt + @IznNezatv
  9805.         End
  9806.     Update #Rezult
  9807.         Set Denovi = @Skala1 Where Denovi <= @Skala1
  9808.     Update #Rezult
  9809.         Set Denovi = @Skala2 Where Denovi > @Skala1 and Denovi <= @Skala2
  9810.     Update #Rezult
  9811.         Set Denovi = @Skala3 Where Denovi > @Skala2 and Denovi <= @Skala3
  9812.     Update #Rezult
  9813.         Set Denovi = @Skala4 Where Denovi > @Skala3 and Denovi <= @Skala4
  9814.     Update #Rezult
  9815.         Set Denovi = @Skala5 Where Denovi > @Skala4 and Denovi <= @Skala5
  9816.     Update #Rezult
  9817.         Set Denovi = @Skala6 Where Denovi > @Skala5 and Denovi <= @Skala6
  9818.     Update #Rezult
  9819.         Set Denovi = 999 Where Denovi > @Skala6
  9820.     Select Denovi,
  9821.         Sum(Naplata) Naplata,        
  9822.         Sum(Fakturirano) Fakturirano        
  9823.     From #Rezult
  9824.     Group By Denovi
  9825.     Order By Denovi
  9826.     RETURN @@ERROR
  9827.     Set Nocount Off
  9828.  
  9829.  
  9830.  
  9831.  
  9832. Go
  9833. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_finrazl]'))
  9834. drop procedure [dbo].[sp_anal_finrazl]
  9835.  
  9836. Go
  9837.  
  9838. CREATE  PROCEDURE sp_Anal_FinRazl
  9839.     @Sifra_Oe        Smallint = Null,
  9840.     @Datum_Dok_Od    SmallDateTime = Null,
  9841.     @Datum_Dok_Do    SmallDateTime = Null,
  9842.     @Broj_RazlFin_Od    Int = Null,
  9843.     @Broj_RazlFin_Do    Int = Null
  9844. AS
  9845.     DECLARE @SSQL  AS Varchar(2000)
  9846.     Set @SSQL = 'Select R.Sifra_OE, R.Broj_RazlFin,  R.Datum_Dok,
  9847.         Vlez = Sum(Case R.VlIzl
  9848.                 When ''V'' Then R.Iznos_Razl
  9849.                 When ''I'' Then 0
  9850.             End),
  9851.         Izlez = Sum(Case R.VlIzl
  9852.                 When ''V'' Then 0
  9853.                 When ''I'' Then R.Iznos_Razl
  9854.             End),
  9855.         R.Sifra_Nal, R.Broj_Nal
  9856.         From RazlFin R
  9857.         Where 1=1'
  9858.     IF @Sifra_Oe Is Not Null
  9859.         Set @SSQL = @SSQL + ' And R.Sifra_Oe= ''' + Cast(@Sifra_Oe as Varchar(6)) + ''' '
  9860.     IF @Datum_Dok_Od Is Not Null
  9861.         Set @SSQL = @SSQL + ' And R.Datum_Dok>= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  9862.     IF @Datum_Dok_Do Is Not Null
  9863.         Set @SSQL = @SSQL + ' And R.Datum_Dok<= ''' + Cast(@Datum_Dok_Do As Varchar(30)) + ''' '
  9864.     IF @Broj_RazlFin_Od Is Not Null
  9865.         Set @SSQL = @SSQL + ' And R.Broj_RazlFin >= ''' + Cast(@Broj_RazlFin_Od As Varchar(6)) + ''' '
  9866.     IF @Broj_RazlFin_Do Is Not Null
  9867.         Set @SSQL = @SSQL + ' And R.Broj_RazlFin <= ''' + Cast(@Broj_RazlFin_Do As Varchar(6)) + ''' '
  9868.     SET @SSQL = @SSQL + ' Group By R.Sifra_Oe, R.Broj_RazlFin, R.Datum_Dok, R.Sifra_Nal, R.Broj_Nal Order by R.Sifra_Oe, R.Datum_Dok ' 
  9869.     Exec(@SSQL)
  9870.  
  9871.  
  9872.  
  9873.  
  9874.  
  9875.  
  9876. Go
  9877. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_katspec]'))
  9878. drop procedure [dbo].[sp_anal_katspec]
  9879.  
  9880. Go
  9881.  
  9882. CREATE                 PROCEDURE [dbo].[sp_Anal_KatSpec]
  9883.     @Sifra_Nal     Smallint = Null,
  9884.     --@Sifra_Dok     Smallint = Null,
  9885.     @Sifra_OE     Smallint = Null,
  9886.     @KoiOE     Varchar(1000) = Null,
  9887.     @Sifra_Prim     Smallint = Null,
  9888.     @Broj_Nal_Od     Int = Null,
  9889.     @Broj_Nal_Do     Int = Null,
  9890.     @Broj_Dok_Od     Int = Null,
  9891.     @Broj_Dok_Do     Int = Null,
  9892.     @Datum_Dok_Od     Smalldatetime = Null,
  9893.     @Datum_Dok_Do     Smalldatetime = Null,
  9894.     @Datum_Nal_Od     Smalldatetime = Null,
  9895.     @Datum_Nal_Do     Smalldatetime = Null,
  9896.     @Sifra_Kup     Char(6) = Null,
  9897.     @Sifra_Za     Char(1) = '1',
  9898.     @VlIzl         Char(1) = Null,
  9899.     @Sifra_Art_Od     Varchar(20) = Null,
  9900.     @Sifra_Art_Do     Varchar(20) = Null,
  9901.     @Kto         char(6) = Null,
  9902.     @Sifra_Gr     char(3) = Null,
  9903.     @Sifra_Podg     char(6) = Null,
  9904.     @Lokacija     varchar(10) = Null,
  9905.     @MatUsl     char(1) = Null,
  9906.     @PecFisc     char(1) = 'N',
  9907.     @Sifra_Nivo     Char(2) = Null,
  9908.     @KFSifra_Nivo     Char(1) = Null,
  9909.     @KFSifra_Prim     Smallint = Null,
  9910.     @Sifra_Pat    smallint = Null,
  9911.     @Sifra_Mest    int = Null,
  9912.     @Uces_Od    decimal(6,2) = Null,
  9913.     @Uces_Do    decimal(6,2) = Null,
  9914.     @Sifra_Drg    smallint = Null,
  9915.     @Drugo1    smallint = Null,
  9916.     @Drugo2    smallint = Null,
  9917.     @Drugo3    smallint = Null,
  9918.     @Drugo4    smallint = Null,
  9919.     @Drugo5    smallint = Null,
  9920.     @Drugo6    smallint = Null,
  9921.     @Drugo7    smallint = Null,
  9922.     @NemaKomint    char(1) = Null,
  9923.     @NemaPatnik    char(1) = Null,
  9924.     @Sifra_Oper    varchar(20) = Null,
  9925.     @Sifra_Obj    smallint = Null,
  9926.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  9927.     @Koi_Gradovi    varchar(300) = Null,
  9928.     @Sifra_Prev    char(6) = Null,
  9929.     @Spremil    varchar(5) = Null,
  9930.     @SoUcesOsn    char(1) = 'N',
  9931.     @UcesOsnNad    decimal(6,2) = 0,
  9932.     @UcesOsnDo    decimal(6,2) = 0,
  9933.     @SoUcesKol    char(1) = 'N',
  9934.     @UcesKolNad    decimal(6,2) = 0,
  9935.     @UcesKolDo    decimal(6,2) = 0,
  9936.     @SoUcesDod    char(1) = 'N',
  9937.     @UcesDodNad    decimal(6,2) = 0,
  9938.     @UcesDodDo    decimal(6,2) = 0,
  9939.     @VkUcesNad    decimal(6,2) = 0,
  9940.     @Kto_Anal    char(10) = NULL,
  9941.     @KDrugo1        smallint = NULL, 
  9942.     @KDrugo2        smallint = NULL,
  9943.     @KDrugo3        smallint = NULL,
  9944.     @KDrugo4        smallint = NULL,
  9945.     @KDrugo5        smallint = NULL,
  9946.     @KDrugo6        smallint = NULL,
  9947.     @KDrugo7        smallint = NULL,
  9948.     @DogBr    varchar(10) = Null,
  9949.     @Sifra_Reg    smallint = Null,
  9950.     @TipDok    varchar(200) = Null,
  9951.     @Sifra_Div    smallint = Null,
  9952.     @ArtBezKatSpecPak     char(1) = 'N',
  9953.     @Grupiran    char(1)='N',
  9954.     @OrgEdEkolUvoz    varchar(500)=NULL
  9955. AS
  9956.     If @PoKojDatum = 'V'
  9957.             If @Datum_Dok_Do Is Not Null
  9958.     Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  9959.     Declare @SSQL Varchar(8000)
  9960.     IF @Grupiran='D'
  9961.         SET @SSQL = 'SELECT 0 Sifra_OE, 0 Sifra_Dok, 0 Broj_Dok, ''2011-01-01'' Datum_Dok, 0 DokID, 
  9962.         S.Sifra_Art, A.ImeArt, A.Edmera, A.ImaKomerc, A.ImaBroevi, A.SodrziEd, A.Tezina, A.BTezina, 
  9963.         KSP.Tezina PakTezina, KSP.Vid_Pakuv, KTM.Tip, KTM.Sifra_TipMat, SUM(S.Kolic) Kolic '
  9964.     ELSE
  9965.         SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,  S.DokID, 
  9966.         S.Sifra_Art, A.ImeArt, A.Edmera, A.ImaKomerc, A.ImaBroevi, A.SodrziEd, A.Tezina, A.BTezina, 
  9967.         KSP.Tezina PakTezina, KSP.Vid_Pakuv, KTM.Tip, KTM.Sifra_TipMat, S.Kolic '
  9968.     
  9969.     SET @SSQL = @SSQL + ' FROM DOKR D
  9970.         LEFT OUTER JOIN Stavr S ON D.DokrID=S.DokrID
  9971.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  9972.         LEFT OUTER JOIN Katart A ON S.Sifra_Art=A.Sifra_Art 
  9973.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  9974.         LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj '
  9975.     If @ArtBezKatSpecPak = 'D'
  9976.         Set @SSQL = @SSQL + ' left outer JOIN KatSpecPakuv KSP ON KSP.Sifra_Art=S.Sifra_Art
  9977.                           left outer JOIN KatSpecTipMat KTM ON KTM.Sifra_TipMat=KSP.Sifra_TipMat '
  9978.     else
  9979.         Set @SSQL = @SSQL + ' inner JOIN KatSpecPakuv KSP ON KSP.Sifra_Art=S.Sifra_Art
  9980.                            inner JOIN KatSpecTipMat KTM ON KTM.Sifra_TipMat=KSP.Sifra_TipMat '
  9981.  
  9982.     If @Sifra_Nal Is Null
  9983.         SET @SSQL = @SSQL + ' WHERE S.Kolic<>0  '  -- s.kolicf <> 0 dod 18.06.2010 za Prima
  9984.     Else
  9985.         SET @SSQL = @SSQL + ' WHERE S.Kolic<>0 And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  9986.     If @KFSifra_Nivo Is Null
  9987.         Begin
  9988.             If @Sifra_Nivo Is Not Null
  9989.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  9990.         End
  9991.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  9992.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  9993.     If @PecFisc = 'D'
  9994.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  9995.     If @MatUsl Is Not Null
  9996.         Set @SSQL = @SSQL + 'AND A.SMatUsl=''' + @MatUsl + ''' '        
  9997.        If @Sifra_Art_Od IS NOT NULL 
  9998.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  9999.        If @Sifra_Art_Do IS NOT NULL 
  10000.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  10001.     --If @Sifra_Dok Is NOT NULL
  10002.     --    SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  10003.        If @Sifra_OE Is NOT Null
  10004.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  10005.     If @KoiOE Is Not Null
  10006.         SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  10007.     If @KFSifra_Prim Is Null
  10008.         Begin
  10009.             If @Sifra_Prim Is Not Null
  10010.                 Set @SSQL = @SSQL + 'And D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  10011.         End
  10012.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  10013.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  10014.     If @Sifra_Pat IS NOT NULL
  10015.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  10016. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  10017.     If @NemaPatnik = 'D'
  10018.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  10019.     If @Broj_Nal_Od Is NOT Null
  10020.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  10021.        If @Broj_Nal_Do Is NOT Null
  10022.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  10023.     If @Broj_Dok_Od Is NOT Null
  10024.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  10025.        If @Broj_Dok_Do Is NOT Null
  10026.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  10027.     If @PoKojDatum = 'V'
  10028.           Begin
  10029.         If @Datum_Dok_Od Is NOT Null
  10030.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10031.         If @Datum_Dok_Do Is NOT Null
  10032.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10033.           End
  10034.     Else
  10035.           Begin
  10036.         If @Datum_Dok_Od Is NOT Null
  10037.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10038.            If @Datum_Dok_Do Is NOT Null
  10039.              SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10040.           End
  10041.     If @Datum_Nal_Od Is NOT Null
  10042.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  10043.        If @Datum_Nal_Do Is NOT Null
  10044.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  10045.     If @Sifra_Kup Is NOT Null
  10046.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  10047. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  10048.     If @NemaKomint = 'D'
  10049.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  10050.        If @Sifra_Obj Is NOT Null
  10051.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  10052.     If @Sifra_Za Is NOT Null
  10053.         SET @SSQL = @SSQL + 'AND D.Sifra_Za<>''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  10054.     If @VlIzl Is NOT Null
  10055.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  10056.        If @Kto IS NOT NULL
  10057.               Set @SSQL=@SSQL+'AND (A.Kto='''+@Kto+''') '
  10058.        If @Kto_Anal IS NOT NULL
  10059.               Set @SSQL=@SSQL+'AND (A.Kto_Anal='''+@Kto_Anal+''') '
  10060.        If @Sifra_Gr IS NOT NULL
  10061.               Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  10062.        If @Sifra_Podg IS NOT NULL
  10063.               Set @SSQL=@SSQL+'AND (A.Sifra_Podg='''+@Sifra_Podg+''') '
  10064.        If @Lokacija IS NOT NULL
  10065.               Set @SSQL=@SSQL+'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  10066.        If @Sifra_Mest Is NOT Null
  10067.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  10068.        If @Sifra_Drg Is NOT Null
  10069.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  10070.        If @Drugo1 Is NOT Null
  10071.               SET @SSQL = @SSQL + 'AND A.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  10072.        If @Drugo2 Is NOT Null
  10073.               SET @SSQL = @SSQL + 'AND A.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  10074.        If @Drugo3 Is NOT Null
  10075.               SET @SSQL = @SSQL + 'AND A.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  10076.        If @Drugo4 Is NOT Null
  10077.               SET @SSQL = @SSQL + 'AND A.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  10078.        If @Drugo5 Is NOT Null
  10079.               SET @SSQL = @SSQL + 'AND A.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  10080.        If @Drugo6 Is NOT Null
  10081.               SET @SSQL = @SSQL + 'AND A.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  10082.        If @Drugo7 Is NOT Null
  10083.               SET @SSQL = @SSQL + 'AND A.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  10084.        If @Sifra_Oper IS NOT NULL
  10085.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  10086.     If @Koi_Gradovi Is Not NULL    
  10087.         Begin
  10088.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  10089.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  10090.         End
  10091.     If @KDrugo1 Is NOT NULL
  10092.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  10093.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  10094.     If @KDrugo2 Is NOT NULL
  10095.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  10096.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  10097.     If @KDrugo3 Is NOT NULL
  10098.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  10099.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  10100.     If @KDrugo4 Is NOT NULL
  10101.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  10102.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  10103.     If @KDrugo5 Is NOT NULL
  10104.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  10105.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  10106.     If @KDrugo6 Is NOT NULL
  10107.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  10108.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  10109.     If @KDrugo7 Is NOT NULL
  10110.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  10111.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  10112.     If @Sifra_Reg Is NOT NULL
  10113.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  10114.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  10115.         If @Sifra_Div IS NOT NULL
  10116.         SET @SSQL = @SSQL + ' AND A.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  10117.        If @Sifra_Prev IS NOT NULL
  10118.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  10119.        If @Spremil IS NOT NULL
  10120.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  10121.     If @DogBr Is NOT Null
  10122.         SET @SSQL = @SSQL + 'AND D.DogBr=''' + @DogBr + ''' '
  10123.         If @TipDok IS NOT NULL
  10124.         Set @SSQL = @SSQL + ' And D.Sifra_Dok IN (' + @TipDok + ') ' 
  10125.     --------------------------------------------------------- dod 30.08.2006 --------------------------------------------------------------------------------------------------
  10126.     If @SoUcesOsn = 'D' 
  10127.         Set @SSQL = @SSQL + ' And ((S.UcesOsn > ' + Cast(@UcesOsnNad as varchar(10)) + ' And S.UcesOsn <= ' + Cast(@UcesOsnDo as varchar(10)) + ') '
  10128.     If @SoUcesKol = 'D' 
  10129.         If @SoUcesOsn <> 'D'  Or @SoUcesOsn Is Null
  10130.             Set @SSQL = @SSQL + ' And ((S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  10131.         Else
  10132.             Set @SSQL = @SSQL + ' Or (S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  10133.     If @SoUcesDod = 'D'  
  10134.         If (@SoUcesOsn <> 'D' Or @SoUcesOsn Is Null) And (@SoUcesKol <> 'D' Or @SoUcesKol Is Null)
  10135.             Set @SSQL = @SSQL + ' And ((S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  10136.         Else
  10137.             Set @SSQL = @SSQL + ' Or (S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  10138.     If @SoUcesOsn = 'D' Or @SoUcesKol = 'D' Or @SoUcesDod = 'D'
  10139.         Set @SSQL = @SSQL + ' ) '
  10140.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  10141.     If @VkUcesNad <> 0
  10142.     BEGIN
  10143.         IF @VkUcesNad = -1
  10144.           Set @SSQL = @SSQL + ' And S.DokCena = 0.0 '
  10145.         else
  10146.           Set @SSQL = @SSQL + ' And S.Uces >= ' + Cast(@VkUcesNad as varchar(10)) + ' '
  10147.     end
  10148.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  10149. IF @OrgEdEkolUvoz IS NULL
  10150.     Set @SSQL = @SSQL + ' And S.VlIzl=''I'' AND TD.Dev <> ''D'' '
  10151. ELSE
  10152.     Set @SSQL = @SSQL + ' And ((S.VlIzl=''I'' AND TD.Dev <> ''D'' AND S.Sifra_OE NOT IN ('+@OrgEdEkolUvoz+')) OR (S.Sifra_OE IN ('+@OrgEdEkolUvoz+') AND S.VlIzl=''V'' AND TD.Dev=''D'' )) '
  10153. IF @Grupiran='D'
  10154.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art, A.ImeArt, A.Edmera, A.ImaKomerc, A.ImaBroevi, A.SodrziEd, A.Tezina, A.BTezina, 
  10155.                       KSP.Tezina, KSP.Vid_Pakuv, KTM.Tip, KTM.Sifra_TipMat '
  10156.         Set @SSQL = @SSQL + ' ORDER BY D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok '
  10157. print @SSQL
  10158.    EXEC(@SSQL)
  10159.  
  10160.  
  10161.  
  10162.  
  10163.  
  10164.  
  10165.  
  10166.  
  10167.  
  10168.  
  10169.  
  10170.  
  10171.  
  10172.  
  10173.  
  10174.  
  10175.  
  10176. Go
  10177. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_katspec_zb]'))
  10178. drop procedure [dbo].[sp_anal_katspec_zb]
  10179.  
  10180. Go
  10181.  
  10182.  
  10183.  
  10184.  
  10185.  
  10186.  
  10187.  
  10188.  
  10189. CREATE            PROCEDURE sp_Anal_KatSpec_Zb
  10190.        @Sifra_Nal     Smallint = Null,
  10191.     --@Sifra_Dok     Smallint = Null,
  10192.     @Sifra_OE     Smallint = Null,
  10193.     @KoiOE     Varchar(1000) = Null,
  10194.     @Sifra_Prim     Smallint = Null,
  10195.     @Broj_Nal_Od     Int = Null,
  10196.        @Broj_Nal_Do     Int = Null,
  10197.     @Broj_Dok_Od     Int = Null,
  10198.        @Broj_Dok_Do     Int = Null,
  10199.        @Datum_Dok_Od     Smalldatetime = Null,
  10200.        @Datum_Dok_Do     Smalldatetime = Null,
  10201.     @Datum_Nal_Od     Smalldatetime = Null,
  10202.        @Datum_Nal_Do     Smalldatetime = Null,
  10203.     @Sifra_Kup     Char(6) = Null,
  10204.     @Sifra_Za     Char(1) = '1',
  10205.     @VlIzl         Char(1) = Null,
  10206.     @Sifra_Art_Od     Varchar(20) = Null,
  10207.     @Sifra_Art_Do     Varchar(20) = Null,
  10208.     @Kto         char(6) = Null,
  10209.     @Sifra_Gr     char(3) = Null,
  10210.     @Sifra_Podg     char(6) = Null,
  10211.     @Lokacija     varchar(10) = Null,
  10212.     @MatUsl     char(1) = Null,
  10213.     @PecFisc     char(1) = 'N',
  10214.     @Sifra_Nivo     Char(2) = Null,
  10215.     @KFSifra_Nivo     Char(1) = Null,
  10216.     @KFSifra_Prim     Smallint = Null,
  10217.     @Sifra_Pat    smallint = Null,
  10218.     @Sifra_Mest    int = Null,
  10219.     @Uces_Od    decimal(6,2) = Null,
  10220.     @Uces_Do    decimal(6,2) = Null,
  10221.     @Sifra_Drg    smallint = Null,
  10222.     @Drugo1    smallint = Null,
  10223.     @Drugo2    smallint = Null,
  10224.     @Drugo3    smallint = Null,
  10225.     @Drugo4    smallint = Null,
  10226.      @Drugo5    smallint = Null,
  10227.     @Drugo6    smallint = Null,
  10228.     @Drugo7    smallint = Null,
  10229.     @NemaKomint    char(1) = Null,
  10230.     @NemaPatnik    char(1) = Null,
  10231.     @Sifra_Oper    varchar(20) = Null,
  10232.     @Sifra_Obj    smallint = Null,
  10233.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  10234.     @Koi_Gradovi    varchar(300) = Null,
  10235.     @Sifra_Prev    char(6) = Null,
  10236.     @Spremil    varchar(5) = Null,
  10237.     @SoUcesOsn    char(1) = 'N',
  10238.     @UcesOsnNad    decimal(6,2) = 0,
  10239.     @UcesOsnDo    decimal(6,2) = 0,
  10240.     @SoUcesKol    char(1) = 'N',
  10241.     @UcesKolNad    decimal(6,2) = 0,
  10242.     @UcesKolDo    decimal(6,2) = 0,
  10243.     @SoUcesDod    char(1) = 'N',
  10244.     @UcesDodNad    decimal(6,2) = 0,
  10245.     @UcesDodDo    decimal(6,2) = 0,
  10246.     @VkUcesNad    decimal(6,2) = 0,
  10247.     @Kto_Anal    char(10) = NULL,
  10248.         @KDrugo1        smallint = NULL, 
  10249.     @KDrugo2        smallint = NULL,
  10250.     @KDrugo3        smallint = NULL,
  10251.     @KDrugo4        smallint = NULL,
  10252.     @KDrugo5        smallint = NULL,
  10253.     @KDrugo6        smallint = NULL,
  10254.     @KDrugo7        smallint = NULL,
  10255.     @DogBr    varchar(10) = Null,
  10256.     @Sifra_Reg    smallint = Null,
  10257.         @TipDok    varchar(200) = Null,
  10258.         @Sifra_Div    smallint = Null,
  10259.     @OrgEdEkolUvoz    varchar(500)=NULL
  10260. AS
  10261.     Set @UcesOsnNad    = @UcesOsnNad * 100
  10262.     Set @UcesOsnDo    = @UcesOsnDo * 100
  10263.     Set @UcesKolNad    = @UcesKolNad * 100
  10264.     Set @UcesKolDo    = @UcesKolDo * 100
  10265.     Set @UcesDodNad    = @UcesDodNad * 100
  10266.     Set @UcesDodDo    = @UcesDodDo * 100
  10267.     If @PoKojDatum = 'V'
  10268.             If @Datum_Dok_Do Is Not Null
  10269.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  10270.    Declare @SSQL Varchar(8000)
  10271.     SET @SSQL = 'SELECT D.Datum_Dok, S.Sifra_Art, S.Kolic, A.ImaKomerc, A.ImaBroevi, A.SodrziEd 
  10272.         FROM DOKR D
  10273.         LEFT OUTER JOIN Stavr S ON D.DokrID=S.DokrID
  10274.         LEFT OUTER JOIN Katart A ON S.Sifra_Art=A.Sifra_Art
  10275.         LEFT OUTER JOIN Podgrupi PG ON A.Sifra_Podg=PG.Sifra_Podg
  10276.         LEFT OUTER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr
  10277.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  10278.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  10279.                 LEFT OUTER JOIN KDrugo4 K4 ON K.KDrugo4=K4.Sifra_4K
  10280.                 LEFT OUTER JOIN KDrugo6 K6 ON K.KDrugo6=K6.Sifra_6K
  10281.         INNER JOIN Orged O ON S.Sifra_OE=O.Sifra_OE
  10282.         LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  10283.         LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE 
  10284.         LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj 
  10285.         LEFT OUTER JOIN Patnici Pat ON Pat.Sifra_Pat=D.Sifra_Pat '
  10286.     If @Sifra_Nal Is Null
  10287.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0  '  -- s.kolicf <> 0 dod 18.06.2010 za Prima
  10288.     Else
  10289.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0 And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  10290.     If @KFSifra_Nivo Is Null
  10291.         Begin
  10292.             If @Sifra_Nivo Is Not Null
  10293.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  10294.         End
  10295.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  10296.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  10297.     If @PecFisc = 'D'
  10298.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  10299.     If @MatUsl Is Not Null
  10300.         Set @SSQL = @SSQL + 'AND A.SMatUsl=''' + @MatUsl + ''' '        
  10301.        If @Sifra_Art_Od IS NOT NULL 
  10302.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  10303.        If @Sifra_Art_Do IS NOT NULL 
  10304.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  10305.     --If @Sifra_Dok Is NOT NULL
  10306.     --    SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  10307.        If @Sifra_OE Is NOT Null
  10308.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  10309.     If @KoiOE Is Not Null
  10310.         SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  10311.     If @KFSifra_Prim Is Null
  10312.         Begin
  10313.             If @Sifra_Prim Is Not Null
  10314.                 Set @SSQL = @SSQL + 'And D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  10315.         End
  10316.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  10317.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  10318.     If @Sifra_Pat IS NOT NULL
  10319.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  10320. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  10321.     If @NemaPatnik = 'D'
  10322.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  10323.     If @Broj_Nal_Od Is NOT Null
  10324.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  10325.        If @Broj_Nal_Do Is NOT Null
  10326.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  10327.     If @Broj_Dok_Od Is NOT Null
  10328.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  10329.        If @Broj_Dok_Do Is NOT Null
  10330.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  10331.     If @PoKojDatum = 'V'
  10332.           Begin
  10333.         If @Datum_Dok_Od Is NOT Null
  10334.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10335.         If @Datum_Dok_Do Is NOT Null
  10336.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10337.           End
  10338.     Else
  10339.           Begin
  10340.         If @Datum_Dok_Od Is NOT Null
  10341.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10342.            If @Datum_Dok_Do Is NOT Null
  10343.              SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10344.           End
  10345.     If @Datum_Nal_Od Is NOT Null
  10346.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  10347.        If @Datum_Nal_Do Is NOT Null
  10348.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  10349.     If @Sifra_Kup Is NOT Null
  10350.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  10351. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  10352.     If @NemaKomint = 'D'
  10353.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  10354.        If @Sifra_Obj Is NOT Null
  10355.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  10356.     If @Sifra_Za Is NOT Null
  10357.         SET @SSQL = @SSQL + 'AND D.Sifra_Za<>''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  10358.     If @VlIzl Is NOT Null
  10359.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  10360.        If @Kto IS NOT NULL
  10361.               Set @SSQL=@SSQL+'AND (A.Kto='''+@Kto+''') '
  10362.        If @Kto_Anal IS NOT NULL
  10363.               Set @SSQL=@SSQL+'AND (A.Kto_Anal='''+@Kto_Anal+''') '
  10364.        If @Sifra_Gr IS NOT NULL
  10365.               Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  10366.        If @Sifra_Podg IS NOT NULL
  10367.               Set @SSQL=@SSQL+'AND (A.Sifra_Podg='''+@Sifra_Podg+''') '
  10368.        If @Lokacija IS NOT NULL
  10369.               Set @SSQL=@SSQL+'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  10370.        If @Sifra_Mest Is NOT Null
  10371.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  10372.        If @Uces_Od Is NOT Null
  10373.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  10374.        If @Uces_Do Is NOT Null
  10375.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  10376.        If @Sifra_Drg Is NOT Null
  10377.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  10378.        If @Drugo1 Is NOT Null
  10379.               SET @SSQL = @SSQL + 'AND A.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  10380.        If @Drugo2 Is NOT Null
  10381.               SET @SSQL = @SSQL + 'AND A.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  10382.        If @Drugo3 Is NOT Null
  10383.               SET @SSQL = @SSQL + 'AND A.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  10384.        If @Drugo4 Is NOT Null
  10385.               SET @SSQL = @SSQL + 'AND A.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  10386.        If @Drugo5 Is NOT Null
  10387.               SET @SSQL = @SSQL + 'AND A.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  10388.        If @Drugo6 Is NOT Null
  10389.               SET @SSQL = @SSQL + 'AND A.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  10390.        If @Drugo7 Is NOT Null
  10391.               SET @SSQL = @SSQL + 'AND A.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  10392.        If @Sifra_Oper IS NOT NULL
  10393.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  10394.     If @Koi_Gradovi Is Not NULL    
  10395.         Begin
  10396.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  10397.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  10398.         End
  10399.     If @KDrugo1 Is NOT NULL
  10400.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  10401.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  10402.     If @KDrugo2 Is NOT NULL
  10403.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  10404.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  10405.     If @KDrugo3 Is NOT NULL
  10406.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  10407.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  10408.     If @KDrugo4 Is NOT NULL
  10409.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  10410.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  10411.     If @KDrugo5 Is NOT NULL
  10412.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  10413.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  10414.     If @KDrugo6 Is NOT NULL
  10415.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  10416.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  10417.     If @KDrugo7 Is NOT NULL
  10418.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  10419.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  10420.     If @Sifra_Reg Is NOT NULL
  10421.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  10422.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  10423.         If @Sifra_Div IS NOT NULL
  10424.         SET @SSQL = @SSQL + ' AND A.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  10425.        If @Sifra_Prev IS NOT NULL
  10426.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  10427.        If @Spremil IS NOT NULL
  10428.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  10429.     If @DogBr Is NOT Null
  10430.         SET @SSQL = @SSQL + 'AND D.DogBr=''' + @DogBr + ''' '
  10431.         If @TipDok IS NOT NULL
  10432.         Set @SSQL = @SSQL + ' And D.Sifra_Dok IN (' + @TipDok + ') ' 
  10433.     --------------------------------------------------------- dod 30.08.2006 --------------------------------------------------------------------------------------------------
  10434.     If @SoUcesOsn = 'D' 
  10435.         Set @SSQL = @SSQL + ' And ((S.UcesOsn > ' + Cast(@UcesOsnNad as varchar(10)) + ' And S.UcesOsn <= ' + Cast(@UcesOsnDo as varchar(10)) + ') '
  10436.     If @SoUcesKol = 'D' 
  10437.         If @SoUcesOsn <> 'D'  Or @SoUcesOsn Is Null
  10438.             Set @SSQL = @SSQL + ' And ((S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  10439.         Else
  10440.             Set @SSQL = @SSQL + ' Or (S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  10441.     If @SoUcesDod = 'D'  
  10442.         If (@SoUcesOsn <> 'D' Or @SoUcesOsn Is Null) And (@SoUcesKol <> 'D' Or @SoUcesKol Is Null)
  10443.             Set @SSQL = @SSQL + ' And ((S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  10444.         Else
  10445.             Set @SSQL = @SSQL + ' Or (S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  10446.     If @SoUcesOsn = 'D' Or @SoUcesKol = 'D' Or @SoUcesDod = 'D'
  10447.         Set @SSQL = @SSQL + ' ) '
  10448.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  10449.     If @VkUcesNad <> 0
  10450.     BEGIN
  10451.         IF @VkUcesNad = -1
  10452.           Set @SSQL = @SSQL + ' And S.DokCena = 0.0 '
  10453.         else
  10454.           Set @SSQL = @SSQL + ' And S.Uces >= ' + Cast(@VkUcesNad as varchar(10)) + ' '
  10455.     end
  10456.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  10457. IF @OrgEdEkolUvoz IS NULL
  10458.     Set @SSQL = @SSQL + ' And S.VlIzl=''I'' AND TD.Dev <> ''D'' '
  10459. ELSE
  10460.     Set @SSQL = @SSQL + ' And ((S.VlIzl=''I'' AND TD.Dev <> ''D'' AND S.Sifra_OE NOT IN ('+@OrgEdEkolUvoz+')) OR (S.Sifra_OE IN ('+@OrgEdEkolUvoz+') AND S.VlIzl=''V'' AND TD.Dev=''D'' )) '
  10461.          
  10462.         Create Table #Artikli
  10463.     (
  10464.         Datum_dok    smalldatetime,
  10465.         Sifra_Art    varchar(20),
  10466.                 Kolic       decimal(18,6),
  10467.         ImaKomerc    decimal(18,6),
  10468.                 ImaBroevi    decimal(18,6),
  10469.                 SodrziEd    decimal(18,6)
  10470.     )
  10471.         Insert Into #Artikli Exec(@SSQL)
  10472.  
  10473.  
  10474.        Create Table #ZbArt
  10475.     (
  10476.         --Datum_dok    smalldatetime,
  10477.         Godina          smallint,
  10478.                 Mesec           smallint,
  10479.                 Sifra_Art    varchar(20),
  10480.                 Kolic       decimal(18,6),
  10481.         ImaKomerc    decimal(18,6),
  10482.                 ImaBroevi    decimal(18,6),
  10483.                 SodrziEd    decimal(18,6)                                  
  10484.     )
  10485.         Insert Into #ZbArt
  10486.             Select DATEPART(yyyy, Datum_Dok), DATEPART(mm, Datum_Dok), Sifra_art, Sum(Kolic), max(ImaKomerc), max(ImaBroevi), max(SodrziEd) 
  10487.             From #Artikli
  10488.                         group by DATEPART(yyyy, Datum_Dok), DATEPART(mm, Datum_Dok), Sifra_Art 
  10489.        
  10490.         Create Table #Stavki
  10491.     (
  10492.         --Datum_dok    smalldatetime,
  10493.                 Godina          smallint,
  10494.                 Mesec           smallint,
  10495.         Sifra_Art    varchar(20),
  10496.                 Kolic       decimal(18,6),
  10497.         ImaKomerc    decimal(18,6),
  10498.                 ImaBroevi    decimal(18,6),
  10499.                 Tezina            decimal(18,6),   
  10500.                 Sifra_TipMat    smallint,
  10501.                 Tip             char(1),
  10502.                 Vid_Pakuv       char(1),
  10503.                 SodrziEd    decimal(18,6)
  10504.     )            
  10505.         Insert Into #Stavki
  10506.             Select Z.Godina, Z.Mesec, Z.Sifra_art, Z.Kolic, Z.ImaKomerc, Z.ImaBroevi,
  10507.                                  KSP.Tezina, KSP.Sifra_TipMat, KTM.Tip, KSP.Vid_Pakuv, Z.SodrziEd 
  10508.             From #ZbArt Z
  10509.                         inner JOIN KatSpecPakuv KSP ON KSP.Sifra_Art=Z.Sifra_Art
  10510.                         inner JOIN KatSpecTipMat KTM ON KTM.Sifra_TipMat=KSP.Sifra_TipMat 
  10511.  
  10512.          select * from #Stavki 
  10513.  
  10514. --print @SSQL
  10515.    --EXEC(@SSQL)
  10516.  
  10517.  
  10518.  
  10519.  
  10520.  
  10521.  
  10522.  
  10523.  
  10524.  
  10525.  
  10526. Go
  10527. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok]'))
  10528. drop procedure [dbo].[sp_anal_matdok]
  10529.  
  10530. Go
  10531.  
  10532. CREATE                           PROCEDURE sp_Anal_MatDok
  10533.     @Sifra_Nal Smallint,
  10534.     @Sifra_Dok Smallint,
  10535.     @Sifra_OE Smallint,
  10536.     @KoiOE Varchar(1000),
  10537.     @Sifra_Prim Smallint,
  10538.     @KoiOE_Prim char(6) = Null,
  10539.     @Broj_Nal_Od Int,
  10540.     @Broj_Nal_Do Int,
  10541.     @Broj_Dok_Od Int,
  10542.     @Broj_Dok_Do Int,
  10543.     @Datum_Dok_Od Smalldatetime,
  10544.     @Datum_Dok_Do Smalldatetime,
  10545.     @Datum_Nal_Od Smalldatetime,
  10546.     @Datum_Nal_Do Smalldatetime,
  10547.     @Sifra_Kup Char(6),
  10548.     @Sifra_Za Char(1),
  10549.     @VlIzl Char(1),
  10550.     @PecFisc char(1) = Null,
  10551.     @Sifra_Nivo Char(2) = Null,
  10552.     @KFSifra_Nivo Char(1) = Null,
  10553.     @KFSifra_Prim Char(1) = Null,
  10554.     @Sifra_Pat    smallint = Null,
  10555.     @Sifra_Mest    int = Null,
  10556.     @Uces_Od    decimal(6,2) = Null,
  10557.     @Uces_Do    decimal(6,2) = Null,
  10558.     @Sifra_Drg    smallint = Null,
  10559.     @Lokacija    varchar(10) = Null,
  10560.     @NemaKomint    char(1) = Null,
  10561.     @NemaPatnik    char(1) = Null,
  10562.     @Sifra_Oper    varchar(20) = Null,
  10563.     @Sifra_Obj    smallint = Null,
  10564.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  10565.     @Koi_Gradovi    varchar(300) = Null,
  10566.     @Kto        char(6) = Null,
  10567.     @BezOdbRabat    char(2) = 'NN',    -- DD - Bez odbien rabat so Danok    DN - Bez odbien rabat bez Danok
  10568.     @Sifra_Div    smallint = Null,
  10569.     @NemaDivizija    char(1) = Null,
  10570.     @PoGradovi    char(1) = 'N',
  10571.     @Sifra_Prev    char(6) = Null,
  10572.     @Spremil    varchar(5) = Null,
  10573.     @RezVoTabela    char(1) = 'N',
  10574.     @SoTezini    char(1) = 'N',
  10575.     @KDrugo1        smallint = NULL, 
  10576.     @KDrugo2        smallint = NULL,
  10577.     @KDrugo3        smallint = NULL,
  10578.     @KDrugo4        smallint = NULL,
  10579.     @KDrugo5        smallint = NULL,
  10580.     @KDrugo6        smallint = NULL,
  10581.     @KDrugo7        smallint = NULL,
  10582.     @DogBr    varchar(10) = Null,
  10583.     @Sifra_Reg    smallint = Null
  10584. AS
  10585.     
  10586.     
  10587.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  10588.             If @Datum_Dok_Do Is Not Null
  10589.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  10590.        Declare @SSQL Varchar(8000)
  10591.     If @RezVoTabela = 'D'
  10592.     Begin
  10593.         Set @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Nal, D.Broj_Nal, D.Datum_Dok, D.VlIzl, D.Toc200, D.MagVr, D.MagVrDan, D.Danok1, D.Danok2, D.Sifra_Prev, PR.ImePrev, 
  10594.                 FROM DOKR D
  10595.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  10596.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  10597.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  10598.                 LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  10599.                 LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE         
  10600.                 LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj 
  10601.                 left outer Join Prevoznik PR on D.Sifra_Prev=PR.Sifra_Prev'
  10602.     End
  10603.     Else
  10604.     Begin
  10605.         SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, D.Sifra_Obj, D.Datum_Dok,D.Rok, 
  10606.                     DateADD(day, D.Rok, D.Datum_Dok)DatumDosp, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  10607.                     D.Dat_Pec_Fisc, 
  10608.                     Round(Sum(S.Kolic*S.NabCena),4) NabVr, Round(Sum(S.Kolic*S.MagCena),4) MagVrednost, Round(sum(S.DokCena*S.Kolic),4) PoDokCena, TD.ImeDok,
  10609.                     K.ImeKup, K.SMesto,
  10610.                     O.ImeOrg As IORG, OP.ImeOrg As IORG_Prima, KO.ImeObj, 
  10611.                     Sum(S.Kolic*S.TrsCena) TrsVrednost, D.Plat_PerDan, D.Spremil, Count(S.DokID) BrStavki, D.Sifra_Prev, PR.ImePrev, '
  10612.         If @BezOdbRabat = 'DD'
  10613.             Set @SSQL = @SSQL + ' Sum(Case When S.VlIzl = ''I'' Then (S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''D'')) Else 0 End) VrednBezRabat, '
  10614.         Else If @BezOdbRabat = 'DN'
  10615.             Set @SSQL = @SSQL + ' Sum(Case When S.VlIzl = ''I'' Then (S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'')) Else 0 End) VrednBezRabat, '
  10616.         Else 
  10617.             Set @SSQL = @SSQL + ' Null as VrednBezRabat, '
  10618.         If @PoGradovi = 'D'
  10619.             Set @SSQL = @SSQL + ' (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, '
  10620.         Else
  10621.             Set @SSQL = @SSQL + ' Null as Sifra_Grad, Null as ImeGrad, '
  10622.         If @SoTezini = 'D'
  10623.             Set @SSQL = @SSQL + ' Sum(S.Kolic*A.Tezina/1000) Tezina '
  10624.         Else 
  10625.             Set @SSQL = @SSQL + ' Null as  Tezina '
  10626.         Set @SSQL = @SSQL + ' FROM DOKR D
  10627.                      Left Outer Join Stavr S On D.DokrID=S.DokrID    
  10628.                      INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  10629.                      LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  10630.                      INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  10631.                      LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  10632.                      LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE         
  10633.                      LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj 
  10634.                      left outer Join Prevoznik PR on D.Sifra_Prev=PR.Sifra_Prev '
  10635.         If @Sifra_Drg Is Not Null Or @Lokacija Is Not Null Or @SoTezini = 'D'
  10636.             Set @SSQL = @SSQL + ' Left Outer Join Katart A On A.Sifra_art=S.Sifra_art '
  10637.         If @PoGradovi = 'D'
  10638.             Set @SSQL = @SSQL + ' Left Outer Join Grad G On G.Sifra_Grad = (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End) '
  10639.     End
  10640.     If @Sifra_Nal Is Null
  10641.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  10642.     Else
  10643.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  10644.     If @KFSifra_Nivo Is Null
  10645.         Begin
  10646.             If @Sifra_Nivo Is Not Null
  10647.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  10648.         End
  10649.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  10650.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  10651.     If @PecFisc = 'D'
  10652.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  10653.     Else If @PecFisc = 'N'
  10654.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  10655.     If @Sifra_Dok Is NOT NULL
  10656.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  10657.        If @Sifra_OE Is NOT Null
  10658.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  10659.        If @KoiOE Is NOT Null
  10660.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  10661.     If @KFSifra_Prim Is Null
  10662.         Begin
  10663.             If @Sifra_Prim Is Not Null
  10664.                 SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  10665.         End
  10666.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  10667.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As Varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  10668.     If @KoiOE_Prim Is Not Null
  10669.         Set @SSQL = @SSQL + 'And D.Sifra_Prim In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE_Prim + ''') '
  10670.     If @Sifra_Pat IS NOT NULL
  10671.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  10672. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  10673.     If @NemaPatnik = 'D'
  10674.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) '
  10675.     If @Broj_Nal_Od Is NOT Null
  10676.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  10677.        If @Broj_Nal_Do Is NOT Null
  10678.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  10679.     If @Broj_Dok_Od Is NOT Null
  10680.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  10681.        If @Broj_Dok_Do Is NOT Null
  10682.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  10683.     If @PecFisc = 'D'
  10684.          Begin
  10685.         If @Datum_Dok_Od Is NOT Null
  10686.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10687.            If @Datum_Dok_Do Is NOT Null
  10688.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10689.          End
  10690.     Else
  10691.          Begin
  10692.         If @PoKojDatum = 'V'
  10693.               Begin
  10694.             If @Datum_Dok_Od Is NOT Null
  10695.                 SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10696.             If @Datum_Dok_Do Is NOT Null
  10697.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10698.               End
  10699.         Else
  10700.               Begin
  10701.             If @Datum_Dok_Od Is NOT Null
  10702.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10703.                If @Datum_Dok_Do Is NOT Null
  10704.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10705.               End
  10706.          End
  10707.     If @Datum_Nal_Od Is NOT Null
  10708.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  10709.        If @Datum_Nal_Do Is NOT Null
  10710.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  10711.     If @Sifra_Kup Is NOT Null
  10712.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  10713. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  10714.     If @NemaKomint = 'D'
  10715.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) ' 
  10716.     If @Sifra_Div IS NOT NULL
  10717.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  10718. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div
  10719.     If @NemaDivizija = 'D'
  10720.         SET @SSQL = @SSQL + 'AND D.Sifra_Div Is Null ' 
  10721.        If @Sifra_Obj Is NOT Null
  10722.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  10723.     If @Sifra_Za Is NOT Null
  10724.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  10725.     If @VlIzl Is NOT Null
  10726.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  10727.        If @Sifra_Mest Is NOT Null
  10728.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  10729.        If @Uces_Od Is NOT Null
  10730.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  10731.        If @Uces_Do Is NOT Null
  10732.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  10733.        If @Sifra_Drg Is NOT Null
  10734.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  10735.        If @Lokacija IS NOT NULL
  10736.               SET @SSQL=@SSQL+'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  10737.        If @Sifra_Oper IS NOT NULL
  10738.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  10739.        If @Kto IS NOT NULL
  10740.               SET @SSQL=@SSQL+'AND D.Kto=''' + @Kto + ''' '
  10741.        If @Sifra_Prev IS NOT NULL
  10742.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  10743.        If @Spremil IS NOT NULL
  10744.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  10745.     If @DogBr Is NOT Null
  10746.         SET @SSQL = @SSQL + ' AND D.DogBr=''' + @DogBr + ''' '
  10747.     If @Koi_Gradovi Is Not NULL    
  10748.         Begin
  10749.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  10750.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  10751.         End
  10752.     If @KDrugo1 Is NOT NULL
  10753.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  10754.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  10755.     If @KDrugo2 Is NOT NULL
  10756.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  10757.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  10758.     If @KDrugo3 Is NOT NULL
  10759.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  10760.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  10761.     If @KDrugo4 Is NOT NULL
  10762.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  10763.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  10764.     If @KDrugo5 Is NOT NULL
  10765.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  10766.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  10767.     If @KDrugo6 Is NOT NULL
  10768.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  10769.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  10770.     If @KDrugo7 Is NOT NULL
  10771.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  10772.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  10773.     If @Sifra_Reg Is NOT NULL
  10774.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  10775.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  10776.  
  10777.     If @RezVoTabela <> 'D' Or @RezVoTabela Is Null
  10778.     Begin
  10779.         Set @SSQL = @SSQL + 'Group By D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, D.Sifra_Obj, 
  10780.                     D.Datum_Dok, D.Rok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  10781.                     D.Dat_Pec_Fisc, TD.ImeDok, K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg, KO.ImeObj, D.Plat_PerDan, D.Spremil, D.Sifra_Prev, PR.ImePrev '
  10782.         If @PoGradovi = 'D'
  10783.             Set @SSQL = @SSQL + ', (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End), G.ImeGrad '
  10784.     End
  10785.     If @RezVoTabela = 'D'
  10786.     Begin
  10787.         Create Table ##AMD
  10788.         (
  10789.          Sifra_OE    smallint, 
  10790.          Sifra_Nal    smallint,
  10791.          Broj_Nal    int, 
  10792.          Datum_Dok    smalldatetime,
  10793.          VlIzl        char(1), 
  10794.          Toc200    decimal(18,6), 
  10795.          MagVr        decimal(18,6), 
  10796.          MagVrDan    decimal(18,6), 
  10797.          Danok1    decimal(18,6), 
  10798.          Danok2    decimal(18,6)
  10799.         ) 
  10800.         Insert Into ##AMD Exec(@SSQL)
  10801.     End
  10802.     Else
  10803. print @ssql
  10804.         EXEC(@SSQL)
  10805. Go
  10806. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_ambalaza]'))
  10807. drop procedure [dbo].[sp_anal_matdok_ambalaza]
  10808.  
  10809. Go
  10810. CREATE                      PROCEDURE sp_Anal_MatDok_Ambalaza
  10811.        @Sifra_Nal     Smallint = Null,
  10812.     @Sifra_Dok     Smallint = Null,
  10813.     @Sifra_OE     Smallint = Null,
  10814.     @KoiOE     Varchar(1000) = Null,
  10815.     @Sifra_Prim     Smallint = Null,
  10816.     @Broj_Nal_Od     Int = Null,
  10817.        @Broj_Nal_Do     Int = Null,
  10818.     @Broj_Dok_Od     Int = Null,
  10819.        @Broj_Dok_Do     Int = Null,
  10820.        @Datum_Dok_Od     Smalldatetime = Null,
  10821.        @Datum_Dok_Do     Smalldatetime = Null,
  10822.     @Datum_Nal_Od     Smalldatetime = Null,
  10823.        @Datum_Nal_Do     Smalldatetime = Null,
  10824.     @Sifra_Kup     Char(6) = Null,
  10825.     @Sifra_Za     Char(1) = Null,
  10826.     @VlIzl         Char(1) = Null,
  10827. --    @Sifra_Art_Od     Varchar(20) = Null,
  10828. --    @Sifra_Art_Do     Varchar(20) = Null,
  10829. --    @Kto         char(6) = Null,
  10830. --    @Sifra_Gr     char(3) = Null,
  10831. --    @Sifra_Podg     char(6) = Null,
  10832. --    @Lokacija     varchar(10) = Null,
  10833. --    @MatUsl     char(1) = Null,
  10834.     @PecFisc     char(1) = 'N',
  10835.     @Sifra_Nivo     Char(2) = Null,
  10836.     @KFSifra_Nivo     Char(1) = Null,
  10837.     @KFSifra_Prim     Smallint = Null,
  10838.     @Sifra_Pat    smallint = Null,
  10839.     @Sifra_Mest    int = Null,
  10840. --    @Uces_Od    decimal(6,2) = Null,
  10841. --    @Uces_Do    decimal(6,2) = Null,
  10842. --    @Sifra_Drg    smallint = Null,
  10843. --    @Drugo1    smallint = Null,
  10844. --    @Drugo2    smallint = Null,
  10845. --    @Drugo3    smallint = Null,
  10846. --    @Drugo4    smallint = Null,
  10847.  --    @Drugo5    smallint = Null,
  10848.     @NemaKomint    char(1) = Null,
  10849.     @NemaPatnik    char(1) = Null,
  10850.     @Sifra_Oper    varchar(20) = Null,
  10851.     @Sifra_Obj    smallint = Null,
  10852.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  10853.     @Koi_Gradovi    varchar(300) = Null,
  10854.     @Sifra_Prev    char(6) = Null,
  10855.     @Spremil    varchar(5) = Null,
  10856.     @Kto_Anal    char(10) = NULL,
  10857.     @KDrugo1        smallint = NULL, 
  10858.     @KDrugo2        smallint = NULL,
  10859.     @KDrugo3        smallint = NULL,
  10860.     @KDrugo4        smallint = NULL,
  10861.     @KDrugo5        smallint = NULL,
  10862.     @KDrugo6        smallint = NULL,
  10863.     @KDrugo7        smallint = NULL,
  10864.     @Povratna    char(1) = 'D',
  10865.     @DaliAmbOdDok    char(1) = 'D',
  10866.     @DogBr    varchar(10) = Null,
  10867.     @Sifra_Reg    smallint = Null
  10868.  
  10869. AS
  10870.  
  10871.     If @PoKojDatum = 'V'
  10872.             If @Datum_Dok_Do Is Not Null
  10873.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  10874.  
  10875.     Declare @SSQL Varchar(8000)
  10876.     Declare @SSQLUsl Varchar(8000)
  10877.  
  10878.     Set @SSQLUsl = ' '
  10879.     
  10880.     If @Sifra_Nal Is Not Null
  10881.         SET @SSQLUsl = @SSQLUsl + ' And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  10882.     If @KFSifra_Nivo Is Null
  10883.         Begin
  10884.             If @Sifra_Nivo Is Not Null
  10885.                 Set @SSQLUsl = @SSQLUsl + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  10886.         End
  10887.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  10888.         Set @SSQLUsl = @SSQLUsl + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  10889.     If @PecFisc = 'D'
  10890.         SET @SSQLUsl = @SSQLUsl + ' AND D.Pec_Fisc > 0 '
  10891. --    If @MatUsl Is Not Null
  10892. --        Set @SSQLUsl = @SSQLUsl + 'AND A.SMatUsl=''' + @MatUsl + ''' '        
  10893. --      If @Sifra_Art_Od IS NOT NULL 
  10894. --        Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  10895. --      If @Sifra_Art_Do IS NOT NULL 
  10896. --        Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  10897.     If @Sifra_Dok Is NOT NULL
  10898.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  10899.        If @Sifra_OE Is NOT Null
  10900.               SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  10901.     If @KoiOE Is Not Null
  10902.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  10903.     If @KFSifra_Prim Is Null
  10904.         Begin
  10905.             If @Sifra_Prim Is Not Null
  10906.                 Set @SSQLUsl = @SSQLUsl + 'And D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  10907.         End
  10908.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  10909.         Set @SSQLUsl = @SSQLUsl + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  10910.     If @Sifra_Pat IS NOT NULL
  10911.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  10912. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  10913.     If @NemaPatnik = 'D'
  10914.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  10915.     If @Broj_Nal_Od Is NOT Null
  10916.            SET @SSQLUsl = @SSQLUsl + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  10917.        If @Broj_Nal_Do Is NOT Null
  10918.          SET @SSQLUsl = @SSQLUsl + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  10919.     If @Broj_Dok_Od Is NOT Null
  10920.            SET @SSQLUsl = @SSQLUsl + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  10921.        If @Broj_Dok_Do Is NOT Null
  10922.          SET @SSQLUsl = @SSQLUsl + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  10923.     If @PoKojDatum = 'V'
  10924.           Begin
  10925.         If @Datum_Dok_Od Is NOT Null
  10926.             SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10927.         If @Datum_Dok_Do Is NOT Null
  10928.              SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10929.           End
  10930.     Else
  10931.           Begin
  10932.         If @Datum_Dok_Od Is NOT Null
  10933.             SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  10934.            If @Datum_Dok_Do Is NOT Null
  10935.              SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  10936.           End
  10937.     If @Datum_Nal_Od Is NOT Null
  10938.            SET @SSQLUsl = @SSQLUsl + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  10939.        If @Datum_Nal_Do Is NOT Null
  10940.          SET @SSQLUsl = @SSQLUsl + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  10941.     If @Sifra_Kup Is NOT Null
  10942.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  10943. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  10944.     If @NemaKomint = 'D'
  10945.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  10946.        If @Sifra_Obj Is NOT Null
  10947.               SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  10948.     If @Sifra_Za Is NOT Null
  10949.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  10950.     If @VlIzl Is NOT Null
  10951.         SET @SSQLUsl = @SSQLUsl + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  10952. --      If @Kto IS NOT NULL
  10953. --              Set @SSQLUsl = @SSQLUsl + 'AND (A.Kto='''+@Kto+''') '
  10954.        If @Kto_Anal IS NOT NULL
  10955.               Set @SSQLUsl = @SSQLUsl + 'AND (D.Kto_Anal='''+@Kto_Anal+''') '
  10956. --       If @Sifra_Gr IS NOT NULL
  10957. --              Set @SSQLUsl = @SSQLUsl + 'AND (P.Sifra_Gr='''+@Sifra_Gr+''') '
  10958. --       If @Sifra_Podg IS NOT NULL
  10959. --             Set @SSQLUsl = @SSQLUsl + 'AND (A.Sifra_Podg='''+@Sifra_Podg+''') '
  10960. --       If @Lokacija IS NOT NULL
  10961. --              Set @SSQLUsl = @SSQLUsl + 'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  10962.        If @Sifra_Mest Is NOT Null
  10963.               SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  10964. --       If @Uces_Od Is NOT Null
  10965.  --             SET @SSQLUsl = @SSQLUsl + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  10966.   --     If @Uces_Do Is NOT Null
  10967.    --           SET @SSQLUsl = @SSQLUsl + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  10968. --       If @Sifra_Drg Is NOT Null
  10969. --              SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  10970. --       If @Drugo1 Is NOT Null
  10971. --              SET @SSQLUsl = @SSQLUsl + 'AND A.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  10972. --      If @Drugo2 Is NOT Null
  10973. --              SET @SSQLUsl = @SSQLUsl + 'AND A.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  10974. --       If @Drugo3 Is NOT Null
  10975. --              SET @SSQLUsl = @SSQLUsl + 'AND A.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  10976. --       If @Drugo4 Is NOT Null
  10977. --              SET @SSQLUsl = @SSQLUsl + 'AND A.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  10978. --       If @Drugo5 Is NOT Null
  10979. --              SET @SSQLUsl = @SSQLUsl + 'AND A.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  10980.        If @Sifra_Oper IS NOT NULL
  10981.               SET @SSQLUsl = @SSQLUsl+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  10982.     If @Koi_Gradovi Is Not NULL    
  10983.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  10984.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  10985.     If @KDrugo1 Is NOT NULL
  10986.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  10987.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  10988.     If @KDrugo2 Is NOT NULL
  10989.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  10990.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  10991.     If @KDrugo3 Is NOT NULL
  10992.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  10993.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  10994.     If @KDrugo4 Is NOT NULL
  10995.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  10996.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  10997.     If @KDrugo5 Is NOT NULL
  10998.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  10999.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  11000.     If @KDrugo6 Is NOT NULL
  11001.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  11002.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  11003.     If @KDrugo7 Is NOT NULL
  11004.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  11005.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  11006.     If @Sifra_Reg Is NOT NULL
  11007.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  11008.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  11009.  
  11010.        If @Sifra_Prev IS NOT NULL
  11011.               SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  11012.        If @Spremil IS NOT NULL
  11013.               SET @SSQLUsl = @SSQLUsl + ' AND D.Spremil=''' + @Spremil + ''' '
  11014.     If @DogBr Is NOT Null
  11015.         SET @SSQLUsl = @SSQLUsl + ' AND D.DogBr=''' + @DogBr + ''' '
  11016.  
  11017.     ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  11018.  
  11019.     Create Table #Amb
  11020.     (
  11021.      Sifra_Amb    varchar(20),
  11022.      KolicAmb    decimal(18,6),
  11023.      Sifra_GAmb    varchar(20),
  11024.      KolicGamb    decimal(18,6),
  11025.      So_GAmb    char(1),
  11026.      KolicAmbDok    decimal(18,6),
  11027.      KolicGambDok    decimal(18,6)
  11028.     )
  11029.  
  11030.     Set @SSQL = ' Select S.Sifra_Amb, 
  11031.             Sum(S.Kolic) KolicAmb,
  11032.             A.Sifra_GAmb, 
  11033.             Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then S.Kolic Else (S.Kolic/A.VoGAmb) End) KolicGAmb,
  11034.              S.So_GAmb, 0, 0
  11035.     From StaAmbal S
  11036.     Inner Join Dokr D On D.DokrID=S.DokrID
  11037.     Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb
  11038.     Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb 
  11039.     LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  11040.     LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj 
  11041.     INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  11042.     LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  11043.     Where 1=1 '
  11044.     If @Povratna = 'D'
  11045.         Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  11046.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Amb, A.Sifra_GAmb, Sign(S.Kolic), S.So_GAmb '
  11047. print @SSQL
  11048.     Insert Into #Amb Exec (@SSQL)
  11049.     ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  11050.  
  11051.     If @DaliAmbOdDok = 'D'
  11052.     Begin
  11053.         Set @SSQL = ' Select Art.Sifra_Amb, 0, 
  11054.                 A.Sifra_GAmb, 0,
  11055.                  ''D'',
  11056.                 Sum(S.Kolic) KolicAmbDok, Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then S.Kolic Else (S.Kolic/A.VoGAmb) End) KolicGAmbDok
  11057.         From Stavr S
  11058.         Inner Join Dokr D On D.DokrID=S.DokrID
  11059.         Inner Join Katart Art On Art.Sifra_Art = S.Sifra_Art
  11060.         Inner Join KatAmb A On A.Sifra_Amb=Art.Sifra_Amb
  11061.         Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb 
  11062.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  11063.         LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj 
  11064.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  11065.         LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  11066.         Where 1=1 '
  11067.         If @Povratna = 'D'
  11068.             Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  11069.  
  11070.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By Art.Sifra_Amb, A.Sifra_GAmb, Sign(S.Kolic) '
  11071.         Insert Into #Amb Exec (@SSQL)
  11072. print @SSQL
  11073.     End
  11074.     ----------------------------------------------------------------------------------------------------------------------------
  11075.     Select T.Sifra_Amb, A.ImeAmb, Sum(T.KolicAmb) KolicAmb, G.ImeAmb ImeGAmb, T.Sifra_GAmb, Sum(T.KolicGamb) KolicGamb, T.So_GAmb, 
  11076.         Sum(T.KolicAmbDok) KolicAmbDok, Sum(T.KolicGambDok) KolicGambDok
  11077.     From #Amb T
  11078.     Inner Join KatAmb A On A.Sifra_Amb=T.Sifra_Amb
  11079.     Left Outer Join KatAmb G On G.Sifra_Amb=T.Sifra_GAmb 
  11080.     Group By T.Sifra_Amb, A.ImeAmb, G.ImeAmb, T.Sifra_GAmb, T.So_GAmb, Sign(T.KolicAmb), Sign(T.KolicAmbDok)
  11081.  
  11082. Go
  11083. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_art]'))
  11084. drop procedure [dbo].[sp_anal_matdok_art]
  11085.  
  11086. Go
  11087.  
  11088. CREATE                             PROCEDURE sp_Anal_MatDok_Art
  11089.        @Sifra_Nal     Smallint = Null,
  11090.     @Sifra_Dok     Smallint = Null,
  11091.     @Sifra_OE     Smallint = Null,
  11092.     @KoiOE     Varchar(1000) = Null,
  11093.     @Sifra_Prim     Smallint = Null,
  11094.     @Broj_Nal_Od     Int = Null,
  11095.        @Broj_Nal_Do     Int = Null,
  11096.     @Broj_Dok_Od     Int = Null,
  11097.        @Broj_Dok_Do     Int = Null,
  11098.        @Datum_Dok_Od     Smalldatetime = Null,
  11099.        @Datum_Dok_Do     Smalldatetime = Null,
  11100.     @Datum_Nal_Od     Smalldatetime = Null,
  11101.        @Datum_Nal_Do     Smalldatetime = Null,
  11102.     @Sifra_Kup     Char(6) = Null,
  11103.     @Sifra_Za     Char(1) = Null,
  11104.     @VlIzl         Char(1) = Null,
  11105.     @Sifra_Art_Od     Varchar(20) = Null,
  11106.     @Sifra_Art_Do     Varchar(20) = Null,
  11107.     @Kto         char(6) = Null,
  11108.     @Sifra_Gr     char(3) = Null,
  11109.     @Sifra_Podg     char(6) = Null,
  11110.     @Lokacija     varchar(10) = Null,
  11111.     @MatUsl     char(1) = Null,
  11112.     @PecFisc     char(1) = 'N',
  11113.     @Sifra_Nivo     Char(2) = Null,
  11114.     @KFSifra_Nivo     Char(1) = Null,
  11115.     @KFSifra_Prim     Smallint = Null,
  11116.     @Sifra_Pat    smallint = Null,
  11117.     @Sifra_Mest    int = Null,
  11118.     @Uces_Od    decimal(6,2) = Null,
  11119.     @Uces_Do    decimal(6,2) = Null,
  11120.     @Sifra_Drg    smallint = Null,
  11121.     @Drugo1    smallint = Null,
  11122.     @Drugo2    smallint = Null,
  11123.     @Drugo3    smallint = Null,
  11124.     @Drugo4    smallint = Null,
  11125.      @Drugo5    smallint = Null,
  11126.     @Drugo6    smallint = Null,
  11127.     @Drugo7    smallint = Null,
  11128.     @NemaKomint    char(1) = Null,
  11129.     @NemaPatnik    char(1) = Null,
  11130.     @Sifra_Oper    varchar(20) = Null,
  11131.     @Sifra_Obj    smallint = Null,
  11132.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  11133.     @Koi_Gradovi    varchar(300) = Null,
  11134.     @Sifra_Prev    char(6) = Null,
  11135.     @Spremil    varchar(5) = Null,
  11136.     @SoUcesOsn    char(1) = 'N',
  11137.     @UcesOsnNad    decimal(6,2) = 0,
  11138.     @UcesOsnDo    decimal(6,2) = 0,
  11139.     @SoUcesKol    char(1) = 'N',
  11140.     @UcesKolNad    decimal(6,2) = 0,
  11141.     @UcesKolDo    decimal(6,2) = 0,
  11142.     @SoUcesDod    char(1) = 'N',
  11143.     @UcesDodNad    decimal(6,2) = 0,
  11144.     @UcesDodDo    decimal(6,2) = 0,
  11145.     @VkUcesNad    decimal(6,2) = 0,
  11146.     @Kto_Anal    char(10) = NULL,
  11147.     @KDrugo1        smallint = NULL, 
  11148.     @KDrugo2        smallint = NULL,
  11149.     @KDrugo3        smallint = NULL,
  11150.     @KDrugo4        smallint = NULL,
  11151.     @KDrugo5        smallint = NULL,
  11152.     @KDrugo6        smallint = NULL,
  11153.     @KDrugo7        smallint = NULL,
  11154.     @DogBr            varchar(10) = Null,
  11155.     @Sifra_Reg        smallint = Null,
  11156.     @ispratnica     varchar(25) = Null
  11157.  
  11158. AS
  11159.     Set @UcesOsnNad    = @UcesOsnNad * 100
  11160.     Set @UcesOsnDo    = @UcesOsnDo * 100
  11161.     Set @UcesKolNad    = @UcesKolNad * 100
  11162.     Set @UcesKolDo    = @UcesKolDo * 100
  11163.     Set @UcesDodNad    = @UcesDodNad * 100
  11164.     Set @UcesDodDo    = @UcesDodDo * 100
  11165.     If @PoKojDatum = 'V'
  11166.             If @Datum_Dok_Do Is Not Null
  11167.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  11168.         Declare @SSQL Varchar(8000)
  11169.     SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.Kasa, 
  11170.             D.Datum_Dok, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj,
  11171.             S.Sifra_Art, A.ImeArt, A.Edmera, S.VlIzl, S.Kolic, Round(S.DokCena,4) DokCena, S.MagCena, S.Uces, S.DanDokCena, S.DanMagCena, S.POsn,
  11172.             D.Identif_Br, D.Ispratnica,  S.UcesOsn, S.UcesKol, (Case When S.UcesDod Is Null Then 0 Else S.UcesDod End) UcesDod,
  11173.             A.ImaKomerc, A.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, S.Alt_Kolic,
  11174.             D.Sifra_Pat, Pat.ImePat, S.NabCena, D.Toc200, A.Tezina, A.BTezina, A.PCena6, D.SerBr, A.CarBroj, C.Ime ImeCarBr,
  11175.                         A.Drugo2 Sifra_2, D2.Ime_2, A.SpeCena, A.Fakturna
  11176.         FROM DOKR D
  11177.         LEFT OUTER JOIN Stavr S ON D.DokrID=S.DokrID
  11178.         LEFT OUTER JOIN Katart A ON S.Sifra_Art=A.Sifra_Art
  11179.         LEFT OUTER JOIN Podgrupi PG ON A.Sifra_Podg=PG.Sifra_Podg
  11180.         LEFT OUTER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr
  11181.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  11182.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  11183.         INNER JOIN Orged O ON S.Sifra_OE=O.Sifra_OE
  11184.         LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  11185.         LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE 
  11186.         LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj 
  11187.         LEFT OUTER JOIN Patnici Pat ON Pat.Sifra_Pat=D.Sifra_Pat
  11188.                 LEFT OUTER JOIN CBroevi C ON C.CarBroj=A.CarBroj
  11189.                 LEFT OUTER JOIN Drugo2 D2 ON D2.Sifra_2=A.Drugo2 '
  11190.     If @Sifra_Nal Is Null
  11191.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0  '  -- s.kolicf <> 0 dod 18.06.2010 za Prima
  11192.     Else
  11193.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0 And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  11194.     If @KFSifra_Nivo Is Null
  11195.         Begin
  11196.             If @Sifra_Nivo Is Not Null
  11197.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  11198.         End
  11199.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  11200.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  11201.     If @PecFisc = 'D'
  11202.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  11203.     If @MatUsl Is Not Null
  11204.         Set @SSQL = @SSQL + 'AND A.SMatUsl=''' + @MatUsl + ''' '        
  11205.        If @Sifra_Art_Od IS NOT NULL 
  11206.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  11207.        If @Sifra_Art_Do IS NOT NULL 
  11208.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  11209.     If @Sifra_Dok Is NOT NULL
  11210.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  11211.        If @Sifra_OE Is NOT Null
  11212.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  11213.     If @KoiOE Is Not Null
  11214.         SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  11215.     If @KFSifra_Prim Is Null
  11216.         Begin
  11217.             If @Sifra_Prim Is Not Null
  11218.                 Set @SSQL = @SSQL + 'And D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  11219.         End
  11220.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  11221.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  11222.     If @Sifra_Pat IS NOT NULL
  11223.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  11224. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  11225.     If @NemaPatnik = 'D'
  11226.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  11227.     If @Broj_Nal_Od Is NOT Null
  11228.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  11229.        If @Broj_Nal_Do Is NOT Null
  11230.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  11231.     If @Broj_Dok_Od Is NOT Null
  11232.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  11233.        If @Broj_Dok_Do Is NOT Null
  11234.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  11235.     If @PoKojDatum = 'V'
  11236.           Begin
  11237.         If @Datum_Dok_Od Is NOT Null
  11238.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11239.         If @Datum_Dok_Do Is NOT Null
  11240.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11241.           End
  11242.     Else
  11243.           Begin
  11244.         If @Datum_Dok_Od Is NOT Null
  11245.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11246.            If @Datum_Dok_Do Is NOT Null
  11247.              SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11248.           End
  11249.     If @Datum_Nal_Od Is NOT Null
  11250.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  11251.        If @Datum_Nal_Do Is NOT Null
  11252.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  11253.     If @Sifra_Kup Is NOT Null
  11254.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  11255. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  11256.     If @NemaKomint = 'D'
  11257.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  11258.        If @Sifra_Obj Is NOT Null
  11259.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  11260.     If @Sifra_Za Is NOT Null
  11261.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  11262.     If @VlIzl Is NOT Null
  11263.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  11264.        If @Kto IS NOT NULL
  11265.               Set @SSQL=@SSQL+'AND (A.Kto='''+@Kto+''') '
  11266.        If @Kto_Anal IS NOT NULL
  11267.               Set @SSQL=@SSQL+'AND (A.Kto_Anal='''+@Kto_Anal+''') '
  11268.        If @Sifra_Gr IS NOT NULL
  11269.               Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  11270.        If @Sifra_Podg IS NOT NULL
  11271.               Set @SSQL=@SSQL+'AND (A.Sifra_Podg='''+@Sifra_Podg+''') '
  11272.        If @Lokacija IS NOT NULL
  11273.               Set @SSQL=@SSQL+'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  11274.        If @Sifra_Mest Is NOT Null
  11275.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  11276.        If @Uces_Od Is NOT Null
  11277.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  11278.        If @Uces_Do Is NOT Null
  11279.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  11280.        If @Sifra_Drg Is NOT Null
  11281.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  11282.        If @Drugo1 Is NOT Null
  11283.               SET @SSQL = @SSQL + 'AND A.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  11284.        If @Drugo2 Is NOT Null
  11285.               SET @SSQL = @SSQL + 'AND A.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  11286.        If @Drugo3 Is NOT Null
  11287.               SET @SSQL = @SSQL + 'AND A.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  11288.        If @Drugo4 Is NOT Null
  11289.               SET @SSQL = @SSQL + 'AND A.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  11290.        If @Drugo5 Is NOT Null
  11291.               SET @SSQL = @SSQL + 'AND A.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  11292.        If @Drugo6 Is NOT Null
  11293.               SET @SSQL = @SSQL + 'AND A.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  11294.        If @Drugo7 Is NOT Null
  11295.               SET @SSQL = @SSQL + 'AND A.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  11296.        If @Sifra_Oper IS NOT NULL
  11297.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  11298.     If @Koi_Gradovi Is Not NULL    
  11299.         Begin
  11300.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  11301.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  11302.         End
  11303.     If @KDrugo1 Is NOT NULL
  11304.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  11305.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  11306.     If @KDrugo2 Is NOT NULL
  11307.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  11308.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  11309.     If @KDrugo3 Is NOT NULL
  11310.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  11311.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  11312.     If @KDrugo4 Is NOT NULL
  11313.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  11314.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  11315.     If @KDrugo5 Is NOT NULL
  11316.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  11317.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  11318.     If @KDrugo6 Is NOT NULL
  11319.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  11320.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  11321.     If @KDrugo7 Is NOT NULL
  11322.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  11323.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  11324.     If @Sifra_Reg Is NOT NULL
  11325.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  11326.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  11327.  
  11328.  
  11329.        If @Sifra_Prev IS NOT NULL
  11330.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  11331.        If @Spremil IS NOT NULL
  11332.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  11333.     If @DogBr Is NOT Null
  11334.         SET @SSQL = @SSQL + 'AND D.DogBr=''' + @DogBr + ''' '
  11335.     If @Ispratnica IS NOT NULL
  11336.               SET @SSQL=@SSQL+'AND D.Ispratnica=''' + @Ispratnica + ''' '
  11337.     --------------------------------------------------------- dod 30.08.2006 --------------------------------------------------------------------------------------------------
  11338.     If @SoUcesOsn = 'D' 
  11339.         Set @SSQL = @SSQL + ' And ((S.UcesOsn > ' + Cast(@UcesOsnNad as varchar(10)) + ' And S.UcesOsn <= ' + Cast(@UcesOsnDo as varchar(10)) + ') '
  11340.     If @SoUcesKol = 'D' 
  11341.         If @SoUcesOsn <> 'D'  Or @SoUcesOsn Is Null
  11342.             Set @SSQL = @SSQL + ' And ((S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  11343.         Else
  11344.             Set @SSQL = @SSQL + ' Or (S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  11345.     If @SoUcesDod = 'D'  
  11346.         If (@SoUcesOsn <> 'D' Or @SoUcesOsn Is Null) And (@SoUcesKol <> 'D' Or @SoUcesKol Is Null)
  11347.             Set @SSQL = @SSQL + ' And ((S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  11348.         Else
  11349.             Set @SSQL = @SSQL + ' Or (S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  11350.     If @SoUcesOsn = 'D' Or @SoUcesKol = 'D' Or @SoUcesDod = 'D'
  11351.         Set @SSQL = @SSQL + ' ) '
  11352.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  11353.     If @VkUcesNad <> 0
  11354.     BEGIN
  11355.         IF @VkUcesNad = -1
  11356.           Set @SSQL = @SSQL + ' And S.DokCena = 0.0 '
  11357.         else
  11358.           Set @SSQL = @SSQL + ' And S.Uces >= ' + Cast(@VkUcesNad as varchar(10)) + ' '
  11359.     end
  11360.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  11361.     Set @SSQL = @SSQL    + 'ORDER BY D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok '
  11362. --print @SSQL
  11363.    EXEC(@SSQL)
  11364. Go
  11365. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_art_podgrupi]'))
  11366. drop procedure [dbo].[sp_anal_matdok_art_podgrupi]
  11367.  
  11368. Go
  11369.  
  11370. CREATE        PROCEDURE sp_Anal_MatDok_Art_Podgrupi
  11371.        @Sifra_Nal Smallint = Null,
  11372.     @Sifra_Dok Smallint = Null,
  11373.     @Sifra_OE Smallint = Null,
  11374.     @KoiOE Varchar(1000) = Null,
  11375.     @Sifra_Prim Smallint = Null,
  11376.     @Broj_Nal_Od Int = Null,
  11377.        @Broj_Nal_Do Int = Null,
  11378.     @Broj_Dok_Od Int = Null,
  11379.        @Broj_Dok_Do Int = Null,
  11380.        @Datum_Dok_Od Smalldatetime = Null,
  11381.        @Datum_Dok_Do Smalldatetime = Null,
  11382.     @Datum_Nal_Od Smalldatetime = Null,
  11383.        @Datum_Nal_Do Smalldatetime = Null,
  11384.     @Sifra_Kup Char(6) = Null,
  11385.     @Sifra_Za Char(1) = Null,
  11386.     @VlIzl Char(1) = Null,
  11387.        @Sifra_Art_Od Varchar(20) = Null,
  11388.        @Sifra_Art_Do Varchar(20) = Null,
  11389.        @Kto char(6) = Null,
  11390.        @Sifra_Gr char(3) = Null,
  11391.        @Sifra_Podg char(6) = Null,
  11392.        @Lokacija varchar(10) = Null,
  11393.     @MatUsl char(1) = Null,
  11394.     @PecFisc char(1) = Null,
  11395.     @Sifra_Nivo Char(2) = Null,
  11396.     @KFSifra_Nivo Char(1) = Null,
  11397.     @KFSifra_Prim Char(1) = Null,
  11398.     @Sifra_Pat    smallint = Null,
  11399.     @VratiCenaSoDanok char(1) = 'D',
  11400.     @Sifra_Mest    int = Null,
  11401.     @Drugo1    smallint = Null,
  11402.     @Drugo2    smallint = Null,
  11403.     @Drugo3    smallint = Null,
  11404.     @Drugo4    smallint = Null,
  11405.     @Drugo5    smallint = Null,
  11406.     @NemaKomint    char(1) = Null,
  11407.     @NemaPatnik    char(1) = Null,
  11408.     @Sifra_Oper    varchar(20) = Null,
  11409.     @Sifra_Obj    smallint = Null,
  11410.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  11411.     @Koi_Gradovi    varchar(300) = Null,
  11412.     @Sifra_Div    smallint = Null,
  11413.     @NemaDivizija    char(1) = Null,
  11414.     @Sifra_Prev    char(6) = Null,
  11415.     @Spremil    varchar(5) = Null,
  11416.     @SoTezini    char(1) = 'N',
  11417.     @Kto_Anal    char(10) = NULL,
  11418.     @KDrugo1        smallint = NULL, 
  11419.     @KDrugo2        smallint = NULL,
  11420.     @KDrugo3        smallint = NULL,
  11421.     @KDrugo4        smallint = NULL,
  11422.     @KDrugo5        smallint = NULL,
  11423.     @KDrugo6        smallint = NULL,
  11424.     @KDrugo7        smallint = NULL,
  11425.     @Sifra_Drg    smallint = Null,
  11426.     @DogBr    varchar(10) = Null,
  11427.     @Sifra_Reg    smallint = Null,
  11428.     @ispratnica     varchar(25) = Null
  11429. AS
  11430.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  11431.             If @Datum_Dok_Do Is Not Null
  11432.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  11433.     create table #Rez
  11434.     (
  11435.     Sifra_Podg    char(6),
  11436.     Ime_Podg    char(40),
  11437.     VlIzl        char(1),
  11438.     Vrednost    decimal(18,4) null,
  11439.     MagVr        decimal(18,4) null
  11440.     )
  11441.    Declare @SSQL Varchar(8000)
  11442.     SET @SSQL = 'SELECT  A.Sifra_Podg, PG.Ime_Podg, S.VlIzl,
  11443.            Round(SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''' + @VratiCenaSoDanok + '''  )), 4)  As Vrednost,
  11444.            Round(SUM(dbo.fn_VratiVredIzl(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0, ''' + @VratiCenaSoDanok + ''' )), 4) As MagVr, '
  11445.     If @SoTezini = 'D'
  11446.         Set @SSQL = @SSQL + ' Sum(S.Kolic*A.Tezina/1000) Tezina '
  11447.     Else 
  11448.         Set @SSQL = @SSQL + ' Null as  Tezina '
  11449.     Set @SSQL = @SSQL + ' FROM DOKR D
  11450.         LEFT OUTER JOIN Stavr S ON D.DokrID=S.DokrID
  11451.         LEFT OUTER JOIN Katart A ON S.Sifra_Art=A.Sifra_Art
  11452.         LEFT OUTER JOIN Podgrupi PG ON A.Sifra_Podg=PG.Sifra_Podg
  11453.         LEFT OUTER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr
  11454.         LEFT OUTER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  11455.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  11456.         INNER JOIN Orged O ON S.Sifra_OE=O.Sifra_OE
  11457.         LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  11458.         LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE 
  11459.         LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj '
  11460.     If @Sifra_Nal Is Null
  11461.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0  '  -- s.kolicf <> 0 dod 18.06.2010 za Prima
  11462.     Else
  11463.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0 And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  11464.     If @KFSifra_Nivo Is Null
  11465.         Begin
  11466.             If @Sifra_Nivo Is Not Null
  11467.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  11468.         End
  11469.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  11470.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  11471.     If @PecFisc = 'D'
  11472.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  11473.     Else If @PecFisc = 'N'
  11474.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  11475.     If @MatUsl Is Not Null
  11476.         Set @SSQL = @SSQL + 'AND A.SMatUsl=''' + @MatUsl + ''' '        
  11477.        If @Sifra_Art_Od IS NOT NULL 
  11478.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  11479.        If @Sifra_Art_Do IS NOT NULL 
  11480.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  11481.     If @Sifra_Dok Is NOT NULL
  11482.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  11483.        If @Sifra_OE Is NOT Null
  11484.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  11485.     If @KoiOE Is Not Null
  11486.         SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  11487.     If @KFSifra_Prim Is Null
  11488.         Begin
  11489.             If @Sifra_Prim Is Not Null
  11490.                 Set @SSQL = @SSQL + 'And D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  11491.         End
  11492.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  11493.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  11494.     If @Sifra_Pat IS NOT NULL
  11495.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  11496. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  11497.     If @NemaPatnik = 'D'
  11498.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  11499.     If @Broj_Nal_Od Is NOT Null
  11500.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  11501.        If @Broj_Nal_Do Is NOT Null
  11502.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  11503.     If @Broj_Dok_Od Is NOT Null
  11504.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  11505.       If @Broj_Dok_Do Is NOT Null
  11506.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  11507.     If @PecFisc = 'D'
  11508.          Begin
  11509.         If @Datum_Dok_Od Is NOT Null
  11510.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11511.            If @Datum_Dok_Do Is NOT Null
  11512.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11513.          End
  11514.     Else
  11515.          Begin
  11516.         If @PoKojDatum = 'V'
  11517.               Begin
  11518.             If @Datum_Dok_Od Is NOT Null                SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11519.             If @Datum_Dok_Do Is NOT Null
  11520.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11521.               End
  11522.         Else
  11523.               Begin
  11524.             If @Datum_Dok_Od Is NOT Null
  11525.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11526.                If @Datum_Dok_Do Is NOT Null
  11527.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11528.               End
  11529.          End
  11530.     If @Datum_Nal_Od Is NOT Null
  11531.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  11532.        If @Datum_Nal_Do Is NOT Null
  11533.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  11534.     If @Sifra_Kup Is NOT Null
  11535.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  11536. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  11537.     If @NemaKomint = 'D'
  11538.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  11539.     If @Sifra_Div IS NOT NULL
  11540.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  11541. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div
  11542.     If @NemaDivizija = 'D'
  11543.         SET @SSQL = @SSQL + 'AND D.Sifra_Div Is Null ' 
  11544.        If @Sifra_Obj Is NOT Null
  11545.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  11546.     If @Sifra_Za Is NOT Null
  11547.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  11548.     If @VlIzl Is NOT Null
  11549.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  11550.        If @Kto IS NOT NULL
  11551.               Set @SSQL=@SSQL+' AND (A.Kto='''+@Kto+''') '
  11552.        If @Kto_Anal IS NOT NULL
  11553.               Set @SSQL=@SSQL+'AND (A.Kto_Anal='''+@Kto_Anal+''') '
  11554.        If @Sifra_Gr IS NOT NULL
  11555.               Set @SSQL=@SSQL+' AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  11556.      If @Sifra_Podg IS NOT NULL
  11557.               Set @SSQL=@SSQL+' AND (A.Sifra_Podg='''+@Sifra_Podg+''') '
  11558.        If @Lokacija IS NOT NULL
  11559.               Set @SSQL=@SSQL+' AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  11560.     If @Sifra_Drg Is NOT Null
  11561.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  11562.        If @Sifra_Mest Is NOT Null
  11563.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  11564.        If @Drugo1 Is NOT Null
  11565.               SET @SSQL = @SSQL + 'AND A.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  11566.        If @Drugo2 Is NOT Null
  11567.               SET @SSQL = @SSQL + 'AND A.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  11568.        If @Drugo3 Is NOT Null
  11569.               SET @SSQL = @SSQL + 'AND A.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  11570.        If @Drugo4 Is NOT Null
  11571.               SET @SSQL = @SSQL + 'AND A.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  11572.        If @Drugo5 Is NOT Null
  11573.               SET @SSQL = @SSQL + 'AND A.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  11574.        If @Sifra_Oper IS NOT NULL
  11575.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  11576.     If @Koi_Gradovi Is Not NULL    
  11577.         Begin
  11578.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  11579.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  11580.         End
  11581.     If @KDrugo1 Is NOT NULL
  11582.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  11583.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  11584.     If @KDrugo2 Is NOT NULL
  11585.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  11586.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  11587.     If @KDrugo3 Is NOT NULL
  11588.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  11589.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  11590.     If @KDrugo4 Is NOT NULL
  11591.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  11592.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  11593.     If @KDrugo5 Is NOT NULL
  11594.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  11595.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  11596.     If @KDrugo6 Is NOT NULL
  11597.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  11598.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  11599.     If @KDrugo7 Is NOT NULL
  11600.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  11601.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  11602.     If @Sifra_Reg Is NOT NULL
  11603.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  11604.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  11605.  
  11606.        If @Sifra_Prev IS NOT NULL
  11607.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  11608.        If @Spremil IS NOT NULL
  11609.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  11610.     If @DogBr Is NOT Null
  11611.         SET @SSQL = @SSQL + 'AND D.DogBr=''' + @DogBr + ''' '
  11612.     If @Ispratnica IS NOT NULL
  11613.           SET @SSQL=@SSQL+'AND D.Ispratnica=''' + @Ispratnica + ''' ' 
  11614.     Set @SSQL = @SSQL + ' Group By A.Sifra_Podg, PG.Ime_Podg, S.VlIzl '
  11615.     Set @SSQL = @SSQL    + ' ORDER BY  A.Sifra_Podg '
  11616. Print @SSQL
  11617. EXEC(@SSQL)
  11618. --Insert Into #Rez   EXEC(@SSQL)
  11619. --Select * from #Rez
  11620.  
  11621.  
  11622. Go
  11623. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_list]'))
  11624. drop procedure [dbo].[sp_anal_matdok_list]
  11625.  
  11626. Go
  11627.  
  11628.  
  11629. CREATE            PROCEDURE sp_Anal_MatDok_List
  11630.     @Datum_Dok_Od Smalldatetime,
  11631.     @Datum_Dok_Do Smalldatetime,
  11632.     @VlIzl Char(1) = Null,
  11633.     @Sifra_OE Smallint,
  11634.     @Sifra_Dok Smallint = Null,    -- Veke ne se koristi
  11635.     @Sifra_Dok2 Smallint = Null,    -- veke ne se koristi
  11636.     @Sifra_Dok_List varchar (100),
  11637.     @Sifra_Nal Smallint = Null,
  11638.     @Sifra_Oper varchar(50) = Null,
  11639.     @Sifra_Kup    char(6) = Null,
  11640.     @Broj_Dok_Od Int = Null,
  11641.     @Broj_Dok_Do Int = Null,
  11642.     @Ispec    char(1) = Null,
  11643.         @OsvenStat char (1) = Null
  11644. AS
  11645.        Declare @SSQL Varchar(8000)
  11646.     SET @SSQL = 'SELECT D.Datum_Dok, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.VlIzl, D.Identif_br, D.Sifra_Kup, Kup.ImeKup, 
  11647.                 D.Toc200, D.MagVrDan, D.Datum_Vnes, D.Sifra_Oper, D.Sifra_Pat, cast(Kup.KDrugo1 as varchar(6)) as KDrugo1, 
  11648.                                 Kup.Smesto, Kup.Adresa, sum (s.kolic * kat.nabavna) as NabVredSoDDV,
  11649.                 sum(s.kolic * s.magcena) as Toc200Mag
  11650.             FROM DOKR D
  11651.             LEFT OUTER JOIN Komint Kup ON D.Sifra_Kup=Kup.Sifra_Kup
  11652.             inner join Stavr S on d.sifra_oe = s.sifra_oe and d.sifra_dok = s.sifra_dok and d.broj_dok = s.broj_dok
  11653.             inner join katart Kat on S.SifrA_Art = Kat.Sifra_Art
  11654.             WHERE 1=1 '
  11655.     If @Sifra_Nal Is Not Null
  11656.         SET @SSQL = @SSQL + ' AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  11657.     SET @SSQL = @SSQL + ' AND D.Sifra_Dok in (' + @Sifra_Dok_List + ') '
  11658.        If @Sifra_OE Is NOT Null
  11659.               SET @SSQL = @SSQL + ' AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  11660.     If @Datum_Dok_Od Is NOT Null
  11661.         SET @SSQL = @SSQL + ' AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11662.        If @Datum_Dok_Do Is NOT Null
  11663.         SET @SSQL = @SSQL + ' AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11664.     If @VlIzl Is NOT Null
  11665.         SET @SSQL = @SSQL + ' AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  11666.     If @Sifra_Oper Is NOT Null
  11667.         SET @SSQL = @SSQL + ' AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  11668.     If @Sifra_Kup Is NOT Null
  11669.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup=''' + @Sifra_Kup + ''' '
  11670.     If @Broj_Dok_Od Is NOT Null
  11671.            SET @SSQL = @SSQL + ' AND D.Broj_Dok>=' + Cast(@Broj_Dok_Od As Varchar(35)) + ' '
  11672.        If @Broj_Dok_Do Is NOT Null
  11673.          SET @SSQL = @SSQL + ' AND D.Broj_Dok<=' + Cast(@Broj_Dok_Do As Varchar(35)) + ' '
  11674.     If @OsvenStat Is NOT Null
  11675.         SET @SSQL = @SSQL + ' AND (D.Dokr_Stat is null or D.Dokr_Stat<>''' + @OsvenStat + ''' )'
  11676.        If @Ispec Is NOT Null
  11677.         begin
  11678.         if @Ispec = 'D'
  11679.              SET @SSQL = @SSQL + ' AND D.Pec_Dok is not null and D.Pec_Dok >= 1 '
  11680.         else if @Ispec = 'N'
  11681.              SET @SSQL = @SSQL + ' AND (D.Pec_Dok is null or D.Pec_Dok <= 0) '
  11682.     end
  11683.     SET @SSQL = @SSQL + ' Group By D.Datum_Dok, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.VlIzl, D.Identif_br, D.Sifra_Kup, Kup.ImeKup, 
  11684.                   D.Toc200, D.MagVrDan, D.Datum_Vnes, D.Sifra_Oper, D.Sifra_Pat, KDrugo1, 
  11685.                               Kup.Smesto, Kup.Adresa '
  11686.     SET @SSQL = @SSQL + ' Order By D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok '
  11687.     EXEC(@SSQL)
  11688.  
  11689.  
  11690.  
  11691.  
  11692.  
  11693.  
  11694. Go
  11695. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_orc]'))
  11696. drop procedure [dbo].[sp_anal_matdok_orc]
  11697.  
  11698. Go
  11699. CREATE    PROCEDURE sp_Anal_MatDok_ORC
  11700.    @Sifra_Nal Smallint,
  11701.     @Sifra_Dok Smallint,
  11702.     @Sifra_OE Smallint,
  11703.     @KoiOE Varchar(400),
  11704.     @Broj_Nal_Od Int,
  11705.    @Broj_Nal_Do Int,
  11706.     @Broj_Dok_Od Int,
  11707.    @Broj_Dok_Do Int,
  11708.    @Datum_Dok_Od Smalldatetime,
  11709.    @Datum_Dok_Do Smalldatetime,
  11710.     @Datum_Nal_Od Smalldatetime,
  11711.    @Datum_Nal_Do Smalldatetime,
  11712.     @Sifra_Kup Char(6)
  11713. AS
  11714.    Declare @SSQL Varchar(8000)
  11715.     SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, D.Datum_Dok, D.Uces, D.Marza, 
  11716.             D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.Toc200,
  11717.             TD.ImeDok, K.ImeKup, K.SMesto, O.ImeOrg As IORG, OP.ImeOrg As IORG_Prima,
  11718.             Sum(S.Kolic*S.NabCena) NabVr, Sum(S.Kolic * dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, 0)) ProdVrBezDDV
  11719.             FROM DOKR D
  11720.             Left Outer Join Stavr S On D.DokrID=S.DokrID And S.VlIzl=''I'' And (S.ImaDodatna Is Null Or S.ImaDodatna='''')
  11721.             INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  11722.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  11723.             INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  11724.             LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  11725.             LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '                        
  11726.     If @Sifra_Nal Is Null
  11727.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  11728.     Else
  11729.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  11730.     If @Sifra_Dok Is NOT NULL
  11731.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  11732.    If @Sifra_OE Is NOT Null
  11733.       SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  11734.    If @KoiOE Is NOT Null
  11735.       SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  11736.     If @Broj_Nal_Od Is NOT Null
  11737.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  11738.    If @Broj_Nal_Do Is NOT Null
  11739.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  11740.     If @Datum_Dok_Od Is NOT Null
  11741.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11742.    If @Datum_Dok_Do Is NOT Null
  11743.          SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11744.     If @Datum_Nal_Od Is NOT Null
  11745.        SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  11746.    If @Datum_Nal_Do Is NOT Null
  11747.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  11748.     If @Sifra_Kup Is NOT Null
  11749.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  11750.     Set @SSQL = @SSQL + 'Group By D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, D.Datum_Dok, D.Uces, D.Marza, 
  11751.                     D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.Toc200,
  11752.                     TD.ImeDok, K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg '
  11753. /*                D.DokrID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.VlIzl, 
  11754.                 D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Ispratnica, D.Opis, D.Sifra_Kup, D.Sifra_Obj, 
  11755.                 D.Datum_Dok, D.Datum_Vnes, D.Datum_Izm, D.Uces, D.Kasa, D.Rok, D.Sifra_Pat, D.Sifra_Oper, 
  11756.                 D.Sifra_OpIz, D.SerBr, D.Kto, D.Kurs, D.KojaVal, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, 
  11757.                 D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, D.DanMagCena, 
  11758.                 D.CenaIznos, D.ProcMarza, D.Kod_Danok, D.TekstPosle, D.VoRekap, D.VoGlk, D.VoAnal, D.Datum_Knz, 
  11759.                 D.VoTipNal_Glk, D.VoBrNal_Glk, D.Prenesen, D.Pec_Fisc, D.Pec_Dok, D.Sifra_Nivo, D.Blokiran, D.KojaSmetka,
  11760.                 D.KasaPoDDV, TD.ImeDok, K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg, D.Sifra_Nar, D.Sifra_OeNar,
  11761.                 D.Broj_Nar, D.Spremil, D.Usluzna, D.TekstPred, D.Sifra_Mest, D.Izrab_Nar, Dat_Pec_Fisc '
  11762. */
  11763.    EXEC(@SSQL)
  11764.  
  11765.  
  11766.  
  11767. Go
  11768. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_orc_poart]'))
  11769. drop procedure [dbo].[sp_anal_matdok_orc_poart]
  11770.  
  11771. Go
  11772. CREATE    PROCEDURE sp_Anal_MatDok_ORC_PoArt
  11773.    @Sifra_Nal Smallint,
  11774.     @Sifra_Dok Smallint,
  11775.     @Sifra_OE Smallint,
  11776.     @KoiOE Varchar(400),
  11777.     @Broj_Nal_Od Int,
  11778.    @Broj_Nal_Do Int,
  11779.     @Broj_Dok_Od Int,
  11780.    @Broj_Dok_Do Int,
  11781.    @Datum_Dok_Od Smalldatetime,
  11782.    @Datum_Dok_Do Smalldatetime,
  11783.     @Datum_Nal_Od Smalldatetime,
  11784.    @Datum_Nal_Do Smalldatetime,
  11785.     @Sifra_Kup Char(6)
  11786. AS
  11787.    Declare @SSQL Varchar(2000)
  11788.     create   Table #ORC
  11789.     (    Sifra_Art Varchar(20),
  11790.         Kolic Decimal(18,4),
  11791.         NabVrNet Decimal(18,4),
  11792.         ProdVrNet Decimal(18,4),
  11793.         ProdVrBrut Decimal(18,4),
  11794.         VredBezDan Decimal(18,6)
  11795.     )
  11796. /*    SET @SSQL = 'SELECT S.Sifra_Art,
  11797.             Sum(S.Kolic) Kolic,    
  11798.             Sum(S.Kolic*S.NabCena) NabVrNet,
  11799.             ProdVrNet = Case S.DanDokCena
  11800.             When ''D'' Then Sum(S.Kolic*S.DokCena/(1+S.POsn/100))
  11801.             When ''N'' Then Sum(S.Kolic*S.DokCena)
  11802.             End,
  11803.             ProdVrBrut = Case S.DanDokCena
  11804.             When ''D'' Then Sum(S.Kolic*S.DokCena)
  11805.             When ''N'' Then Sum(S.Kolic*S.DokCena*(1+S.POsn/100))
  11806.             End                            
  11807. */
  11808.     SET @SSQL = 'SELECT S.Sifra_Art,
  11809.             Sum(S.Kolic) Kolic,    
  11810.             Sum(S.Kolic*S.NabCena) NabVrNet,
  11811.             Sum(S.Kolic * dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) ProdVrNet,
  11812.             Sum(S.Kolic * dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) ProdVrBrut,
  11813.             Sum(S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'')) VredBezDan
  11814.             FROM Stavr S
  11815.             Inner Join Dokr D On S.DokrID=D.DokrID
  11816.             INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  11817.             LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal '
  11818.     Set @SSQL = @SSQL + 'Where S.VlIzl=''I'' And (S.ImaDodatna Is Null Or S.ImaDodatna='''') '
  11819.     If @Sifra_Nal Is Not Null
  11820.         SET @SSQL = @SSQL + 'And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  11821.     If @Sifra_Dok Is NOT NULL
  11822.         SET @SSQL = @SSQL + 'AND S.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  11823.    If @Sifra_OE Is NOT Null
  11824.       SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  11825.    If @KoiOE Is NOT Null
  11826.       SET @SSQL = @SSQL + 'AND S.Sifra_OE In (' + @KoiOE + ') '
  11827.     If @Broj_Nal_Od Is NOT Null
  11828.        SET @SSQL = @SSQL + 'AND S.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  11829.    If @Broj_Nal_Do Is NOT Null
  11830.          SET @SSQL = @SSQL + 'AND S.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  11831.     If @Datum_Dok_Od Is NOT Null
  11832.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11833.    If @Datum_Dok_Do Is NOT Null
  11834.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11835.     If @Datum_Nal_Od Is NOT Null
  11836.        SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  11837.    If @Datum_Nal_Do Is NOT Null
  11838.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  11839.     If @Sifra_Kup Is NOT Null
  11840.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  11841.     Set @SSQL = @SSQL + 'Group By S.Sifra_Art, S.DanDokCena '
  11842.     Insert #ORC EXEC(@SSQL)
  11843.     Select O.Sifra_Art,  K.ImeArt, K.EdMera, K.Sifra_Tar, T.ProcOsn,
  11844.         Round(Sum(O.Kolic), 4) Kolic,
  11845.         Round(Sum(O.NabVrNet), 4) NabVrNet,
  11846.         Round(Sum(O.ProdVrNet), 4) ProdVrNet,
  11847.         Round(Sum(O.ProdVrBrut), 4) ProdVrBrut,
  11848.         Round(Sum(O.VredBezDan), 4) VredBezDan
  11849.     From #ORC O
  11850.     Inner Join Katart K On O.Sifra_Art=K.Sifra_Art
  11851.     Inner Join Tarifi T On K.Sifra_Tar=T.Sifra_Tar
  11852.     Group By O.Sifra_Art,  K.ImeArt, K.EdMera, K.Sifra_Tar, T.ProcOsn
  11853.     Order By O.Sifra_Art
  11854.  
  11855.  
  11856.  
  11857. Go
  11858. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_podgrupi]'))
  11859. drop procedure [dbo].[sp_anal_matdok_podgrupi]
  11860.  
  11861. Go
  11862.  
  11863.  
  11864.  
  11865. CREATE      PROCEDURE sp_Anal_MatDok_Podgrupi
  11866.     @Sifra_Nal Smallint,
  11867.     @Sifra_Dok Smallint,
  11868.     @Sifra_OE Smallint,
  11869.     @KoiOE Varchar(1000),
  11870.     @Sifra_Prim Smallint,
  11871.     @Broj_Nal_Od Int,
  11872.      @Broj_Nal_Do Int,
  11873.     @Broj_Dok_Od Int,
  11874.     @Broj_Dok_Do Int,
  11875.     @Datum_Dok_Od Smalldatetime,
  11876.     @Datum_Dok_Do Smalldatetime,
  11877.     @Datum_Nal_Od Smalldatetime,
  11878.     @Datum_Nal_Do Smalldatetime,
  11879.     @Sifra_Kup Char(6),
  11880.     @Sifra_Za Char(1),
  11881.     @VlIzl Char(1),
  11882.     @PecFisc char(1) = Null,
  11883.     @Sifra_Nivo Char(2) = Null,
  11884.     @KFSifra_Nivo Char(1) = Null,
  11885.     @KFSifra_Prim Char(1) = Null,
  11886.     @Sifra_Pat    smallint = Null,
  11887.     @VratiCenaSoDanok char(1) = 'D',
  11888.     @Sifra_Mest    int = Null,
  11889.     @NemaKomint    char(1) = Null,
  11890.     @NemaPatnik    char(1) = Null,
  11891.     @Sifra_Oper     varchar(20) = Null,
  11892.     @Sifra_Obj    smallint = Null,
  11893.     @PoKojDatum    char(1) = 'D' ,   -- D - Datum_Dok,      V - Datum_Vnes
  11894.     @Koi_Gradovi    varchar(300) = Null,
  11895.     @Sifra_Div    smallint = Null,
  11896.     @NemaDivizija    char(1) = Null,
  11897.     @Sifra_Prev    char(6) = Null,
  11898.     @Spremil    varchar(5) = Null,
  11899.     @SoTezini    char(1) = 'N',
  11900.     @KDrugo1        smallint = NULL, 
  11901.     @KDrugo2        smallint = NULL,
  11902.     @KDrugo3        smallint = NULL,
  11903.     @KDrugo4        smallint = NULL,
  11904.     @KDrugo5        smallint = NULL,
  11905.     @KDrugo6        smallint = NULL,
  11906.     @KDrugo7        smallint = NULL,
  11907.     @DogBr    varchar(10) = Null,
  11908.     @Sifra_Reg    smallint = Null
  11909.  
  11910. AS
  11911.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  11912.             If @Datum_Dok_Do Is Not Null
  11913.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  11914. --                    Round(Sum(dbo.fn_vr_danok (S.Kolic, S.MagCena, S.DanMagCena, S.POsn)), 4) as SamoDanok, D.Danok1, D.Danok2,
  11915.        Declare @SSQL Varchar(8000)                            --[     dodadeno na 16.01.04 - Cena ???     ]
  11916.     SET @SSQL = 'SELECT  A.Sifra_Podg, PG.Ime_Podg, S.VlIzl,
  11917.              SUM(Round(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''' + @VratiCenaSoDanok + '''  ), 4)) As Vrednost,
  11918.              SUM(Round(dbo.fn_VratiVredIzl(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0, ''' + @VratiCenaSoDanok + ''' ), 4)) As MagVr, '
  11919.     If @SoTezini = 'D'
  11920.         Set @SSQL = @SSQL + ' Sum(S.Kolic*A.Tezina/1000) Tezina '
  11921.     Else 
  11922.         Set @SSQL = @SSQL + ' Null as  Tezina '
  11923.     Set @SSQL = @SSQL + ' FROM DOKR D
  11924.                     Left Outer Join Stavr S On D.DokrID=S.DokrID
  11925.                     Left Outer Join Katart A On A.Sifra_art = S.Sifra_art
  11926.                     Left Outer Join Podgrupi PG On PG.Sifra_Podg=A.Sifra_Podg
  11927.                     INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  11928.                     LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  11929.                     INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  11930.                     LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  11931.                     LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE 
  11932.                     LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj '                    
  11933.     If @Sifra_Nal Is Null
  11934.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  11935.     Else
  11936.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  11937.     If @KFSifra_Nivo Is Null
  11938.         Begin
  11939.             If @Sifra_Nivo Is Not Null
  11940.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  11941.         End
  11942.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  11943.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  11944.     If @PecFisc = 'D'
  11945.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  11946.     Else If @PecFisc = 'N'
  11947.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  11948.     If @Sifra_Dok Is NOT NULL
  11949.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  11950.        If @Sifra_OE Is NOT Null
  11951.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  11952.        If @KoiOE Is NOT Null
  11953.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  11954.     If @KFSifra_Prim Is Null
  11955.         Begin
  11956.             If @Sifra_Prim Is Not Null
  11957.                 SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  11958.         End
  11959.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  11960.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As Varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  11961.     If @Sifra_Pat IS NOT NULL
  11962.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  11963. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  11964.     If @NemaPatnik = 'D'
  11965.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  11966.     If @Broj_Nal_Od Is NOT Null
  11967.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  11968.        If @Broj_Nal_Do Is NOT Null
  11969.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  11970.     If @Broj_Dok_Od Is NOT Null
  11971.         SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  11972.        If @Broj_Dok_Do Is NOT Null
  11973.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  11974.     If @PecFisc = 'D'
  11975.          Begin
  11976.         If @Datum_Dok_Od Is NOT Null
  11977.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11978.            If @Datum_Dok_Do Is NOT Null
  11979.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11980.          End
  11981.     Else
  11982.          Begin
  11983.         If @PoKojDatum = 'V'
  11984.               Begin
  11985.             If @Datum_Dok_Od Is NOT Null                SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11986.             If @Datum_Dok_Do Is NOT Null
  11987.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11988.               End
  11989.         Else
  11990.               Begin
  11991.             If @Datum_Dok_Od Is NOT Null
  11992.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  11993.                If @Datum_Dok_Do Is NOT Null
  11994.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  11995.               End
  11996.          End
  11997. /*    If @PoKojDatum = 'V'
  11998.           Begin
  11999.         If @Datum_Dok_Od Is NOT Null
  12000.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12001.         If @Datum_Dok_Do Is NOT Null
  12002.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12003.           End
  12004.     Else
  12005.           Begin
  12006.         If @Datum_Dok_Od Is NOT Null
  12007.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12008.           If @Datum_Dok_Do Is NOT Null
  12009.              SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12010.           End
  12011. */
  12012.     If @Datum_Nal_Od Is NOT Null
  12013.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  12014.        If @Datum_Nal_Do Is NOT Null
  12015.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  12016.     If @Sifra_Kup Is NOT Null
  12017.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  12018. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  12019.     If @NemaKomint = 'D'
  12020.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  12021.     If @Sifra_Div IS NOT NULL
  12022.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  12023. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div
  12024.     If @NemaDivizija = 'D'
  12025.         SET @SSQL = @SSQL + 'AND D.Sifra_Div Is Null ' 
  12026.        If @Sifra_Obj Is NOT Null
  12027.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  12028.     If @Sifra_Za Is NOT Null
  12029.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  12030.     If @VlIzl Is NOT Null
  12031.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  12032.        If @Sifra_Mest Is NOT Null
  12033.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  12034.        If @Sifra_Oper IS NOT NULL
  12035.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  12036.     If @Koi_Gradovi Is Not NULL    
  12037.         Begin
  12038.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  12039.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  12040.         End
  12041.     If @KDrugo1 Is NOT NULL
  12042.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  12043.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  12044.     If @KDrugo2 Is NOT NULL
  12045.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  12046.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  12047.     If @KDrugo3 Is NOT NULL
  12048.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  12049.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  12050.     If @KDrugo4 Is NOT NULL
  12051.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  12052.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  12053.     If @KDrugo5 Is NOT NULL
  12054.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  12055.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  12056.     If @KDrugo6 Is NOT NULL
  12057.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  12058.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  12059.     If @KDrugo7 Is NOT NULL
  12060.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  12061.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  12062.     If @Sifra_Reg Is NOT NULL
  12063.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  12064.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  12065.  
  12066.        If @Sifra_Prev IS NOT NULL
  12067.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  12068.        If @Spremil IS NOT NULL
  12069.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  12070.     If @DogBr Is NOT Null
  12071.         SET @SSQL = @SSQL + ' AND D.DogBr=''' + @DogBr + ''' '
  12072.     Set @SSQL = @SSQL + 'Group By 
  12073.                 A.Sifra_Podg, PG.Ime_Podg, S.VlIzl
  12074.                 Order By A.Sifra_Podg  '
  12075. PRINT @SSQL
  12076.    EXEC(@SSQL)
  12077.  
  12078. Go
  12079. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_pokonta]'))
  12080. drop procedure [dbo].[sp_anal_matdok_pokonta]
  12081.  
  12082. Go
  12083.  
  12084.  
  12085.  
  12086. CREATE    PROCEDURE sp_Anal_MatDok_PoKonta
  12087.     @Sifra_Nal Smallint,
  12088.     @Sifra_Dok Smallint,
  12089.     @Sifra_OE Smallint,
  12090.     @KoiOE Varchar(1000),
  12091.     @Sifra_Prim Smallint,
  12092.     @KoiOe_Prim char(10) = Null,
  12093.     @Broj_Nal_Od Int,
  12094.     @Broj_Nal_Do Int,
  12095.     @Broj_Dok_Od Int,
  12096.     @Broj_Dok_Do Int,
  12097.     @Datum_Dok_Od Smalldatetime,
  12098.     @Datum_Dok_Do Smalldatetime,
  12099.     @Datum_Nal_Od Smalldatetime,
  12100.     @Datum_Nal_Do Smalldatetime,
  12101.     @Sifra_Kup    Char(6),
  12102.     @Sifra_Za    Char(1),
  12103.     @VlIzl        Char(1), 
  12104.     @PoTarifi    Char(1),
  12105.     @Sifra_Pat    smallint = Null,
  12106.     @Sifra_Obj    smallint = Null,
  12107.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  12108.     @Kto        char(6) = Null,
  12109.     @PoPOsn    char(1) = 'N',
  12110.     @Sifra_Div    smallint=NULL
  12111. AS
  12112.     If @PoKojDatum = 'V'
  12113.             If @Datum_Dok_Do Is Not Null
  12114.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  12115.     Declare @SSQL Varchar(4000)
  12116.     Declare @Uces As Decimal(6,2)
  12117.     Declare @POsnPren As Decimal(6,2)
  12118.     Declare @POsn As Decimal(6,2)
  12119.     Declare @PTar As Char(3)
  12120.     Declare @DanDokCena As Char(1)
  12121.     Declare @DanMagCena As Char(1)
  12122.     Declare @Kolic As Decimal(18,6)
  12123.     Declare @DokCena As Decimal(18,6)
  12124.     Declare @MagCena As Decimal(18,6)
  12125.     Declare @dFaktorDDV As Decimal(6,4)
  12126.     Declare @dFaktorNeto As Decimal(6,4)
  12127.     Declare @mFaktorDDV As Decimal(6,4)
  12128.     Declare @mFaktorNeto As Decimal(6,4)
  12129.     Declare @Danok1 As Decimal(18,6)
  12130.     Declare @Danok2 As Decimal(18,6)
  12131.     Declare @PDanok1 As Decimal(18,6)
  12132.     Declare @PDanok2 As Decimal(18,6)
  12133.     Declare @NabIznos As Decimal(18,6)
  12134.     Declare @MagIznos As Decimal(18,6)
  12135.     Declare @MagIznosDan As Decimal(18,6)
  12136.     Declare @Rabat As Decimal(18,6)
  12137.     Declare @Kasa As Decimal(6,2)
  12138.     Declare @Kto_Anal As Char(10)
  12139.     Declare @TrsCena as Decimal(18,6)
  12140.     Declare @Trosoci as Decimal(18,6)
  12141. -- Dodadeno na 01 Jul 2003
  12142.     Declare @NabCena As Decimal(18,6)
  12143.     Declare @NabVr As Decimal(18,6)
  12144.     create       Table #tStavr
  12145.     (     Uces Decimal(6,2),
  12146.         POsnPren Decimal(6,2),
  12147.         POsn Decimal(6,2),
  12148.         PTar Char(3),
  12149.         DanDokCena Char(1),
  12150.         DanMagCena Char(1),
  12151.         Kolic Decimal(18,6),
  12152.         DokCena Decimal(18,6),
  12153.         MagCena Decimal(18,6),
  12154.         NabCena Decimal(18,6),
  12155.         Kasa    Decimal(6,2),
  12156.         Kto_Anal char(10),
  12157.         TrsCena decimal(18,6)
  12158.     )
  12159.     Create Table #tPromKonta
  12160.     (     Kto_Anal Char(10),
  12161.         Danok1 Decimal(18,6),
  12162.         Danok2 Decimal(18,6),
  12163.         PDanok1 Decimal(18,6),
  12164.         PDanok2 Decimal(18,6),
  12165.         NabIznos Decimal(18,6),
  12166.         MagIznos Decimal(18,6),
  12167.         MagIznosDan Decimal(18,6),
  12168.         Rabat Decimal(18,6),
  12169.         NabVr Decimal(18,6),
  12170.         Trosoci    Decimal(18,6),
  12171.         Posn Decimal(9,3)
  12172.     )
  12173.     Set Nocount On
  12174.     SET @SSQL = 'Select S.Uces, S.POsnPren, S.POsn, S.PTar, S.DanDokCena, S.DanMagCena, S.Kolic, S.DokCena, S.MagCena, S.NabCena, D.Kasa, Kata.Kto_Anal, S.TrsCena
  12175.         From Stavr S
  12176.         Inner Join Dokr D On S.DokrID = D.DokrID
  12177.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  12178.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  12179.         Inner Join Katart Kata On S.Sifra_Art = KATA.Sifra_Art
  12180.         INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  12181.         LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  12182.         LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '
  12183.     If @Sifra_Nal Is Null
  12184.         SET @SSQL = @SSQL + 'WHERE 1=1 '
  12185.     Else
  12186.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  12187.     If @PoTarifi = 'D'
  12188.         SET @SSQL = @SSQL + ' AND ((TD.ProTar Like ''D_'' AND TD.Sifra_Za <> 3) OR (TD.Sifra_Za = 3 AND ((D.ImaDodatna = ''D'' AND (TD.ProTar Like ''D_'')) OR (D.ImaDodatna = ''P'' AND TD.ProTar Like ''_D''))))'
  12189.     If @Sifra_Dok Is NOT NULL
  12190.         SET @SSQL = @SSQL + 'AND S.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  12191.        If @Sifra_OE Is NOT Null
  12192.               SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  12193.        If @KoiOE Is NOT Null
  12194.               SET @SSQL = @SSQL + 'AND S.Sifra_OE In (' + @KoiOE + ') '
  12195.        If @Sifra_Prim Is NOT Null
  12196.               SET @SSQL = @SSQL + 'AND S.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  12197.     If @KoiOE_Prim Is Not Null
  12198.         SET @SSQL = @SSQL + 'And S.Sifra_Prim In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE_Prim + ''') '
  12199.     If @Broj_Nal_Od Is NOT Null
  12200.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  12201.        If @Broj_Nal_Do Is NOT Null
  12202.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  12203.     If @Broj_Dok_Od Is NOT Null
  12204.            SET @SSQL = @SSQL + 'AND S.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  12205.        If @Broj_Dok_Do Is NOT Null
  12206.          SET @SSQL = @SSQL + 'AND S.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  12207.     If @PoKojDatum = 'V'
  12208.           Begin
  12209.         If @Datum_Dok_Od Is NOT Null
  12210.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12211.         If @Datum_Dok_Do Is NOT Null
  12212.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12213.           End
  12214.     Else
  12215.           Begin
  12216.         If @Datum_Dok_Od Is NOT Null
  12217.             SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12218.            If @Datum_Dok_Do Is NOT Null
  12219.              SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12220.           End
  12221.     If @Datum_Nal_Od Is NOT Null
  12222.          SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  12223.        If @Datum_Nal_Do Is NOT Null
  12224.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  12225.     If @Sifra_Kup Is NOT Null
  12226.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  12227.        If @Sifra_Obj Is NOT Null
  12228.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  12229.     If @Sifra_Za Is NOT Null
  12230.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  12231.     If @VlIzl Is NOT Null
  12232.         SET @SSQL = @SSQL + 'AND S.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  12233.     If @Sifra_Pat IS NOT NULL
  12234.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  12235.        If @Kto IS NOT NULL
  12236.               SET @SSQL = @SSQL + ' AND D.Kto=''' + @Kto + ''' '
  12237.     IF @Sifra_Div IS NOT NULL
  12238.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  12239.     Insert #tStavr Exec(@SSQL)
  12240.     ------ AH - UH --- KURSOR ---- KOLKU LI E DOBRO VAKA ?  DK Sept 13, 2006
  12241.     ------ UH - AH --- STVARNO   GK 21.11.2007
  12242.     Declare tStavr Cursor Fast_Forward For Select * From #tStavr
  12243.     Open tStavr
  12244.     Fetch Next From tStavr Into @Uces, @POsnPren, @POsn, @PTar, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena, @NabCena, @Kasa, @Kto_Anal, @TrsCena
  12245.     While @@Fetch_Status=0
  12246.         Begin
  12247.             If @DanDokCena='D'
  12248.                 Begin
  12249.                     Set @dFaktorDDV = 1
  12250.                     Set @dFaktorNeto = 1 + @POsnPren/100
  12251.                 End
  12252.             Else
  12253.                 Begin
  12254.                     Set @dFaktorDDV = 1 + @POsnPren/100
  12255.                     Set @dFaktorNeto = 1 
  12256.                 End
  12257.             If @DanMagCena='D'
  12258.                 Begin
  12259.                     Set @mFaktorDDV = 1 
  12260.                     Set @mFaktorNeto = 1 + @POsn/100
  12261.                 End
  12262.             Else
  12263.                 Begin
  12264.                     Set @mFaktorDDV = 1 + @POsn/100
  12265.                     Set @mFaktorNeto = 1 
  12266.                 End
  12267.             If @POsn > 15
  12268.                 Begin
  12269.                     Set @Danok1  = @Kolic * @DokCena * (1 - @Uces/100) * (1 - @Kasa/100)/ @dFaktorNeto * @POsnPren/100
  12270.                     Set @PDanok1 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  12271.                     Set @Danok2 = 0
  12272.                     Set @PDanok2 = 0
  12273.                 End
  12274.             Else
  12275.                 Begin
  12276.                     Set @Danok1  = 0
  12277.                     Set @PDanok1 = 0
  12278.                     Set @Danok2 = @Kolic * @DokCena * (1 - @Uces/100) * (1 - @Kasa/100) / @dFaktorNeto * @POsnPren/100
  12279.                     Set @PDanok2 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  12280.                 End
  12281.             Set @NabIznos = @Kolic * @DokCena * @dFaktorDDV * (1 - @Uces/100) * (1 - @Kasa/100)
  12282.             Set @MagIznos = @Kolic * @MagCena / @mFaktorNeto
  12283.             Set @MagIznosDan = @Kolic * @MagCena * @mFaktorDDV
  12284.             Set @Rabat = (@Kolic*@DokCena)/@dFaktorNeto*(1-(1-@Uces/100) * (1-@kasa/100))
  12285.             Set @NabVr = @Kolic*@NabCena
  12286.             Set @Trosoci = @Kolic*@TrsCena
  12287.             Insert #tPromKonta(Kto_Anal, Danok1, Danok2, PDanok1, PDanok2, NabIznos, MagIznos, MagIznosDan, Rabat, NabVr, Trosoci, Posn)
  12288.                       Values (@Kto_Anal, @Danok1, @Danok2, @PDanok1, @PDanok2, @NabIznos, @MagIznos, @MagIznosDan, @Rabat, @NabVr, @Trosoci, @Posn)
  12289.             Fetch Next From tStavr Into @Uces, @POsnPren, @POsn, @PTar, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena, @NabCena, @Kasa, @Kto_Anal, @TrsCena
  12290.         End --While
  12291.     Close tStavr
  12292.     Deallocate tStavr
  12293. ----------------------------------------
  12294.     Set @SSQL = 'Select Kto_Anal, '
  12295.     If @PoPOsn = 'D'
  12296.         Set @SSQL = @SSQL + ' Posn, '
  12297.     Else 
  12298.         Set @SSQL = @SSQL + ' Null Posn, '
  12299.     Set @SSQL = @SSQL + ' Round(Sum(Danok1),4) Danok1, Round(Sum(Danok2),4) Danok2,
  12300.             Round(Sum(PDanok1),4) PDanok1 , Round(Sum(PDanok2),4) PDanok2, 
  12301.             Round(Sum(NabIZnos),4) NabIznos, Round(Sum(MagIznos),4) MagIznos,
  12302.             Round(Sum(MagIznosDan),4) MagIznosDan, Round(Sum(Rabat),4) Rabat,
  12303.             Round(Sum(NabVr),4) NabVr, Round(Sum(Trosoci),4) Trosoci
  12304.         From #tPromKonta 
  12305.         Group By Kto_Anal '
  12306.     If @PoPOsn = 'D'
  12307.         Set @SSQL = @SSQL + ', Posn '
  12308.     Set @SSQL = @SSQL + ' Order By Kto_Anal '
  12309.     Exec(@SSQL)
  12310.     Set Nocount Off
  12311.  
  12312.  
  12313.  
  12314.  
  12315.  
  12316.  
  12317. Go
  12318. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_postavki]'))
  12319. drop procedure [dbo].[sp_anal_matdok_postavki]
  12320.  
  12321. Go
  12322.  
  12323.  
  12324.  
  12325.  
  12326. CREATE                               PROCEDURE sp_Anal_MatDok_PoStavki
  12327.        @Sifra_Nal Smallint = Null,
  12328.     @Sifra_Dok Smallint = Null,
  12329.     @Sifra_OE Smallint = Null,
  12330.     @KoiOE Varchar(1000) = Null,
  12331.     @Sifra_Prim Smallint = Null,
  12332.     @KoiOe_Prim char(10) = Null,
  12333.     @Broj_Nal_Od Int = Null,
  12334.        @Broj_Nal_Do Int = Null,
  12335.     @Broj_Dok_Od Int = Null,
  12336.        @Broj_Dok_Do Int = Null,
  12337.        @Datum_Dok_Od Smalldatetime = Null,
  12338.        @Datum_Dok_Do Smalldatetime =  Null,
  12339.     @Datum_Nal_Od Smalldatetime = Null,
  12340.        @Datum_Nal_Do Smalldatetime = Null,
  12341.     @Sifra_Kup Char(6) = Null,
  12342.     @Sifra_Za Char(1) = Null,
  12343.     @VlIzl Char(1) = Null,
  12344.     @PecFisc char(1) = Null,
  12345.     @Sifra_Nivo Char(2) = Null,
  12346.     @KFSifra_Nivo Char(1) = Null,
  12347.     @KFSifra_Prim Char(1) = Null,
  12348.     @Sifra_Pat    smallint = Null,
  12349.     @Sifra_Mest    int = Null,
  12350.     @Uces_Od    decimal(6,2) = Null,
  12351.     @Uces_Do    decimal(6,2) = Null,
  12352.     @Sifra_Drg    smallint = Null,
  12353.     @Lokacija    varchar(10) = Null,
  12354.     @Drugo1    smallint = Null,
  12355.     @Drugo2    smallint = Null,
  12356.     @Drugo3    smallint = Null,
  12357.     @Drugo4    smallint = Null,
  12358.     @Drugo5    smallint = Null,
  12359.     @NemaKomint    char(1) = Null,
  12360.     @NemaPatnik    char(1) = Null,
  12361.     @Sifra_Oper    varchar(20) = Null,
  12362.     @Sifra_Obj    smallint = Null,
  12363.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  12364.     @Koi_Gradovi    varchar(300) = Null,
  12365.     @Kto        char(6) = Null,
  12366.     @BezOdbRabat    char(2) = 'NN',
  12367.     @Sifra_Div    smallint = Null,
  12368.     @NemaDivizija    char(1) = Null,
  12369.     @PoGradovi    char(1) = 'N',
  12370.     @Sifra_Prev    char(6) = Null,
  12371.     @Spremil    varchar(5) = Null,
  12372.     @SoTezini    char(1) = 'N',
  12373.     @KDrugo1        smallint = NULL, 
  12374.     @KDrugo2        smallint = NULL,
  12375.     @KDrugo3        smallint = NULL,
  12376.     @KDrugo4        smallint = NULL,
  12377.     @KDrugo5        smallint = NULL,
  12378.     @KDrugo6        smallint = NULL,
  12379.     @KDrugo7        smallint = NULL,
  12380.     @DogBr    varchar(10) = Null,
  12381.     @Sifra_Reg    smallint = Null
  12382. AS
  12383.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  12384.             If @Datum_Dok_Do Is Not Null
  12385.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  12386.    Declare @SSQL Varchar(8000)
  12387.     SET @SSQL = 'SELECT S.Broj_Dok, D.Broj_Nal,  S.Datum_Dok, O.ImeOrg as IORG, D.Identif_Br, TD.ImeDok, K.ImeKup,
  12388.             D.Rok, D.Kto, S.Sifra_Dok, D.Sifra_Kup, D.Sifra_Nal, S.Sifra_Oe, S.Sifra_Prim, S.VlIzl, D.Sifra_Za, 
  12389.             Round(Sum(S.Kolic*S.NabCena), 4) NabVr, Round(Sum(S.Kolic*S.MagCena), 4) MagVrednost,
  12390.             Round(Sum(Case When S.Posn > 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)
  12391.                 Else 0  End ), 4) Danok1, 
  12392.             Round(Sum(Case When S.Posn <= 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)
  12393.                 Else 0  End ), 4) Danok2, 
  12394.             Round(Sum(S.Kolic* dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''D'') ), 4) MagVrDan,
  12395.             Round(Sum(S.Kolic* dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''N'') ), 4) MagVr,
  12396.             Round (Sum(S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)), 2) Toc200,
  12397.             Round(Sum(Case When S.Posn > 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.MagCena, S.DanMagCena, S.Posn, 0, 0) * S.Posn / 100)
  12398.                 Else 0  End ),4) PDanok1, 
  12399.             Round(Sum(Case When S.Posn <= 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.MagCena, S.DanMagCena, S.Posn, 0, 0) * S.Posn / 100)
  12400.                 Else 0  End ), 4) PDanok2, 
  12401.             Round(Sum(S.Kolic* dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''N'') -
  12402.                    (S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) +
  12403.                    (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)), 4) as Marza,
  12404.             D.PTrosok, Round(sum(S.DokCena*S.Kolic), 4) PoDokCena, S.DanDokCena, D.Sifra_Obj, KO.ImeObj, D.Dat_Pec_Fisc, 
  12405.             Round(Sum(S.Kolic*S.TrsCena), 4) TrsVrednost, D.Plat_PerDan, '
  12406.     If @BezOdbRabat = 'DD'
  12407.         Set @SSQL = @SSQL + ' Sum(Case When S.VlIzl = ''I'' Then (S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''D'')) Else 0 End) VrednBezRabat, '
  12408.     Else If @BezOdbRabat = 'DN'
  12409.         Set @SSQL = @SSQL + ' Sum(Case When S.VlIzl = ''I'' Then (S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'')) Else 0 End) VrednBezRabat, '
  12410.     Else 
  12411.         Set @SSQL = @SSQL + ' Null as VrednBezRabat, '
  12412.     If @PoGradovi = 'D'
  12413.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, '
  12414.     Else
  12415.         Set @SSQL = @SSQL + ' Null as Sifra_Grad, Null as Ime_Grad, '
  12416.     If @SoTezini = 'D'
  12417.         Set @SSQL = @SSQL + ' Sum(S.Kolic*A.Tezina/1000) Tezina '
  12418.     Else 
  12419.         Set @SSQL = @SSQL + ' Null as  Tezina '
  12420.     Set @SSQL = @SSQL + ' FROM DOKR D
  12421.              Left Outer Join Stavr S On D.DokrID=S.DokrID
  12422.              INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  12423.              LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  12424.              INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  12425.              LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  12426.              LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE 
  12427.              LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj '
  12428.     If @Sifra_Drg Is Not Null Or @Lokacija Is Not Null Or @Drugo1 Is Not Null  Or @Drugo2 Is Not Null
  12429.          Or @Drugo3 Is Not Null Or @Drugo4 Is Not Null Or @Drugo5 Is Not Null Or @SoTezini = 'D'
  12430.         Set @SSQL = @SSQL + ' Left Outer Join Katart A On A.Sifra_art=S.Sifra_art '    
  12431.     If @PoGradovi = 'D'
  12432.         Set @SSQL = @SSQL + ' Left Outer Join Grad G On G.Sifra_Grad = (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End) '
  12433.     If @Sifra_Nal Is Null
  12434.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  12435.     Else
  12436.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  12437.     If @KFSifra_Nivo Is Null
  12438.         Begin
  12439.             If @Sifra_Nivo Is Not Null
  12440.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  12441.         End
  12442.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  12443.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  12444.     If @PecFisc = 'D'
  12445.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  12446.     Else If @PecFisc = 'N'
  12447.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  12448.     If @Sifra_Dok Is NOT NULL
  12449.         SET @SSQL = @SSQL + 'AND S.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  12450.        If @Sifra_OE Is NOT Null
  12451.               SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  12452.        If @KoiOE Is NOT Null
  12453.               SET @SSQL = @SSQL + 'AND S.Sifra_OE In (' + @KoiOE + ') '
  12454.     If @KFSifra_Prim Is Null
  12455.         Begin
  12456.             If @Sifra_Prim Is Not Null
  12457.                 SET @SSQL = @SSQL + 'AND S.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  12458.         End
  12459.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  12460.         Set @SSQL = @SSQL + 'And (S.Sifra_Prim<>' + Cast(@Sifra_Prim As Varchar(6)) + ' Or S.Sifra_Prim Is Null) '
  12461.     If @KoiOE_Prim Is Not Null
  12462.         Set @SSQL = @SSQL + 'And S.Sifra_Prim In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE_Prim + ''') '
  12463.     If @Sifra_Pat IS NOT NULL
  12464.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  12465. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  12466.     If @NemaPatnik = 'D'
  12467.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  12468.     If @Broj_Nal_Od Is NOT Null
  12469.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  12470.        If @Broj_Nal_Do Is NOT Null
  12471.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  12472.     If @Broj_Dok_Od Is NOT Null
  12473.            SET @SSQL = @SSQL + 'AND S.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  12474.        If @Broj_Dok_Do Is NOT Null
  12475.          SET @SSQL = @SSQL + 'AND S.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  12476.     If @PecFisc = 'D'
  12477.          Begin
  12478.         If @Datum_Dok_Od Is NOT Null
  12479.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12480.            If @Datum_Dok_Do Is NOT Null
  12481.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12482.          End
  12483.     Else
  12484.          Begin
  12485.         If @PoKojDatum = 'V'
  12486.            Begin
  12487.             If @Datum_Dok_Od Is NOT Null                SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12488.             If @Datum_Dok_Do Is NOT Null
  12489.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12490.               End
  12491.         Else
  12492.               Begin
  12493.             If @Datum_Dok_Od Is NOT Null
  12494.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12495.                If @Datum_Dok_Do Is NOT Null
  12496.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12497.               End
  12498.          End
  12499.     If @Datum_Nal_Od Is NOT Null
  12500.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  12501.        If @Datum_Nal_Do Is NOT Null
  12502.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  12503.     If @Sifra_Kup Is NOT Null
  12504.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  12505. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  12506.     If @NemaKomint = 'D'
  12507.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  12508.     If @Sifra_Div IS NOT NULL
  12509.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  12510. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div
  12511.     If @NemaDivizija = 'D'
  12512.         SET @SSQL = @SSQL + 'AND D.Sifra_Div Is Null ' 
  12513.        If @Sifra_Obj Is NOT Null
  12514.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  12515.     If @Sifra_Za Is NOT Null
  12516.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  12517.     If @VlIzl Is NOT Null
  12518.         SET @SSQL = @SSQL + 'AND S.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  12519.        If @Sifra_Mest Is NOT Null
  12520.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  12521.        If @Uces_Od Is NOT Null
  12522.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  12523.        If @Uces_Do Is NOT Null
  12524.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  12525.        If @Sifra_Drg Is NOT Null
  12526.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  12527.        If @Lokacija IS NOT NULL
  12528.               SET @SSQL=@SSQL+'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  12529.        If @Drugo1 Is NOT Null
  12530.               SET @SSQL = @SSQL + 'AND A.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  12531.        If @Drugo2 Is NOT Null
  12532.               SET @SSQL = @SSQL + 'AND A.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  12533.        If @Drugo3 Is NOT Null
  12534.               SET @SSQL = @SSQL + 'AND A.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  12535.        If @Drugo4 Is NOT Null
  12536.               SET @SSQL = @SSQL + 'AND A.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  12537.        If @Drugo5 Is NOT Null
  12538.               SET @SSQL = @SSQL + 'AND A.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  12539.        If @Sifra_Oper IS NOT NULL
  12540.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  12541.        If @Kto IS NOT NULL
  12542.               SET @SSQL=@SSQL+'AND D.Kto=''' + @Kto + ''' '
  12543.     If @Koi_Gradovi Is Not NULL    
  12544.         Begin
  12545.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  12546.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  12547.         End
  12548.     If @KDrugo1 Is NOT NULL
  12549.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  12550.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  12551.     If @KDrugo2 Is NOT NULL
  12552.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  12553.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  12554.     If @KDrugo3 Is NOT NULL
  12555.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  12556.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  12557.     If @KDrugo4 Is NOT NULL
  12558.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  12559.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  12560.     If @KDrugo5 Is NOT NULL
  12561.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  12562.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  12563.     If @KDrugo6 Is NOT NULL
  12564.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  12565.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  12566.     If @KDrugo7 Is NOT NULL
  12567.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  12568.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  12569.     If @Sifra_Reg Is NOT NULL
  12570.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  12571.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  12572.        If @Sifra_Prev IS NOT NULL
  12573.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  12574.        If @Spremil IS NOT NULL
  12575.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  12576.     If @DogBr Is NOT Null
  12577.         SET @SSQL = @SSQL + ' AND D.DogBr=''' + @DogBr + ''' '
  12578.     Set @SSQL = @SSQL + 'Group By S.Broj_Dok, D.Broj_Nal,  S.Datum_Dok, O.ImeOrg, D.Identif_Br, TD.ImeDok, K.ImeKup,
  12579.                 D.Rok, D.Kto, S.Sifra_Dok, D.Sifra_Kup, D.Sifra_Nal, S.Sifra_Oe, S.Sifra_Prim, S.VlIzl, D.Sifra_Za, D.PTrosok, 
  12580.                 S.DanDokCena, D.Sifra_Obj, KO.ImeObj, D.Dat_Pec_Fisc, D.Plat_PerDan '
  12581.     If @PoGradovi = 'D'
  12582.         Set @SSQL = @SSQL + ', (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End), G.ImeGrad '
  12583.  
  12584.     
  12585. print @SSQL
  12586.    EXEC(@SSQL)
  12587.  
  12588. Go
  12589. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_potarifi]'))
  12590. drop procedure [dbo].[sp_anal_matdok_potarifi]
  12591.  
  12592. Go
  12593.  
  12594.  
  12595.  
  12596. CREATE        PROCEDURE sp_Anal_MatDok_PoTarifi
  12597.     @Sifra_Nal Smallint,
  12598.     @Sifra_Dok Smallint,
  12599.     @Sifra_OE Smallint,
  12600.     @KoiOE Varchar(1000),
  12601.     @Sifra_Prim Smallint,
  12602.     @KoiOe_Prim char(10) = Null,
  12603.     @Broj_Nal_Od Int,
  12604.     @Broj_Nal_Do Int,
  12605.     @Broj_Dok_Od Int,
  12606.     @Broj_Dok_Do Int,
  12607.     @Datum_Dok_Od Smalldatetime,
  12608.     @Datum_Dok_Do Smalldatetime,
  12609.     @Datum_Nal_Od Smalldatetime,
  12610.     @Datum_Nal_Do Smalldatetime,
  12611.     @Sifra_Kup    Char(6),
  12612.     @Sifra_Za    Char(1),
  12613.     @VlIzl        Char(1), 
  12614.     @PoTarifi    Char(1),
  12615.     @Sifra_Pat    smallint = Null,
  12616.     @Sifra_Obj    smallint = Null,
  12617.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  12618.     @Kto        char(6) = Null,
  12619.     @KFSifra_Nal    char(1) = 'N',
  12620.     @PoOrged    char(1) = 'N',
  12621.     @Sifra_Div    smallint=NULL
  12622. AS
  12623.     Declare @SSQL Varchar(4000)
  12624.     If @PoKojDatum = 'V'
  12625.             If @Datum_Dok_Do Is Not Null
  12626.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  12627.     Set @SSQL= ' Select S.PTar, S.POsnPren, S.Posn, 
  12628.             Round(Sum(Case When S.Posn > 15 And S.DanDokCena = ''D'' Then S.Kolic * S.DokCena/(1+S.PosnPren/100) * (1-S.Uces/100) * (1-D.Kasa/100) * S.POsnPren/100  
  12629.                       When S.Posn > 15 And S.DanDokCena = ''N'' Then S.Kolic * S.DokCena * (1-S.Uces/100) * (1-D.Kasa/100) * S.POsnPren/100  Else 0 End), 4) Danok1,
  12630.             Round(Sum(Case When S.Posn <= 15 And S.DanDokCena = ''D'' Then S.Kolic * S.DokCena/(1+S.PosnPren/100) * (1-S.Uces/100) * (1-D.Kasa/100) * S.POsnPren/100  
  12631.                       When S.Posn <= 15 And S.DanDokCena = ''N'' Then S.Kolic * S.DokCena * (1-S.Uces/100) * (1-D.Kasa/100) * S.POsnPren/100  Else 0 End), 4) Danok2,
  12632.             Round(Sum(Case When S.Posn > 15 And S.DanMagCena = ''D'' Then S.Kolic * S.MagCena/(1+S.Posn/100) * S.POsn/100  
  12633.                       When S.Posn > 15 And S.DanMagCena = ''N'' Then S.Kolic * S.MagCena * S.POsn/100  Else 0 End), 4) PDanok1,
  12634.             Round(Sum(Case When S.Posn <= 15 And S.DanMagCena = ''D'' Then S.Kolic * S.MagCena/(1+S.Posn/100) * S.POsn/100  
  12635.                       When S.Posn <= 15 And S.DanMagCena = ''N'' Then S.Kolic * S.MagCena * S.POsn/100  Else 0 End), 4) PDanok2,
  12636.             Round(Sum(S.Kolic * (Case When S.DanDokCena = ''D'' Then S.DokCena Else S.DokCena * (1+S.POsnPren/100) End) * (1-S.Uces/100) * (1-D.Kasa/100)), 4) NabIznos,
  12637.             Round(Sum(S.Kolic * (Case When S.DanMagCena = ''D'' Then S.MagCena/(1+S.POsn/100) Else S.MagCena End)), 4) MagIznos,
  12638.             Round(Sum(S.Kolic * (Case When S.DanMagCena = ''D'' Then S.MagCena Else S.MagCena * (1+S.POsn/100) End)), 4) MagIznosDan,
  12639.             Round(Sum(S.Kolic * (Case When S.DanDokCena = ''D'' Then S.DokCena/(1+S.POsnPren/100) Else S.DokCena End) * (1-(1-S.Uces/100) * (1-D.Kasa/100))), 4) Rabat,
  12640.             Round(Sum(S.Kolic * S.NabCena), 4) NabVr,
  12641.             Round(Sum(S.Kolic * S.TrsCena), 4) Trosoci, '
  12642.     If @PoOrged = 'D'
  12643.         Set @SSQL = @SSQL + ' S.Sifra_Oe '
  12644.     Else 
  12645.         Set @SSQL = @SSQL + ' Null Sifra_Oe '
  12646.     Set @SSQL = @SSQL + ' From Stavr S
  12647.         Inner Join Dokr D On D.DokrID = S.DokrID
  12648.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  12649.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  12650.         INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  12651.         LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  12652.         LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE 
  12653.         Where 1=1 '
  12654. --    If @Sifra_Nal Is Null
  12655. --        SET @SSQL = @SSQL + 'WHERE 1=1 '
  12656. --    Else
  12657. --        SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  12658.       If @Sifra_Nal Is NOT Null
  12659.         If @KFSifra_Nal = 'D'
  12660.             Set @SSQL = @SSQL + ' AND D.Sifra_Nal <> ' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  12661.         Else
  12662.             Set @SSQL = @SSQL + ' AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  12663.     If @PoTarifi = 'D'
  12664.         SET @SSQL = @SSQL + ' AND ((TD.ProTar Like ''D_'' AND TD.Sifra_Za <> 3) OR (TD.Sifra_Za = 3 AND ((D.ImaDodatna = ''D'' AND (TD.ProTar Like ''D_'')) OR (D.ImaDodatna = ''P'' AND TD.ProTar Like ''_D''))))'
  12665.     If @Sifra_Dok Is NOT NULL
  12666.         SET @SSQL = @SSQL + 'AND S.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  12667.        If @Sifra_OE Is NOT Null
  12668.               SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '       If @KoiOE Is NOT Null
  12669.               SET @SSQL = @SSQL + 'AND S.Sifra_OE In (' + @KoiOE + ') '
  12670.        If @Sifra_Prim Is NOT Null
  12671.               SET @SSQL = @SSQL + 'AND S.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  12672.     If @KoiOE_Prim Is Not Null
  12673.         SET @SSQL = @SSQL + 'And S.Sifra_Prim In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE_Prim + ''') '
  12674.     If @Broj_Nal_Od Is NOT Null
  12675.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  12676.        If @Broj_Nal_Do Is NOT Null
  12677.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  12678.     If @Broj_Dok_Od Is NOT Null
  12679.            SET @SSQL = @SSQL + 'AND S.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  12680.        If @Broj_Dok_Do Is NOT Null
  12681.          SET @SSQL = @SSQL + 'AND S.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  12682.     If @PoKojDatum = 'V'
  12683.           Begin
  12684.         If @Datum_Dok_Od Is NOT Null
  12685.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12686.         If @Datum_Dok_Do Is NOT Null
  12687.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12688.           End
  12689.     Else
  12690.           Begin
  12691.         If @Datum_Dok_Od Is NOT Null
  12692.             SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12693.            If @Datum_Dok_Do Is NOT Null
  12694.              SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12695.           End
  12696.     If @Datum_Nal_Od Is NOT Null
  12697.          SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  12698.        If @Datum_Nal_Do Is NOT Null
  12699.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  12700.     If @Sifra_Kup Is NOT Null
  12701.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  12702.        If @Sifra_Obj Is NOT Null
  12703.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  12704.     If @Sifra_Za Is NOT Null
  12705.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  12706.     If @VlIzl Is NOT Null
  12707.         SET @SSQL = @SSQL + 'AND S.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  12708.     If @Sifra_Pat IS NOT NULL
  12709.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  12710.        If @Kto IS NOT NULL
  12711.               SET @SSQL = @SSQL + ' AND D.Kto=''' + @Kto + ''' '
  12712.     IF @Sifra_Div IS NOT NULL
  12713.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  12714.     Set @SSQL = @SSQL + ' Group By S.PTar, S.POsnPren, S.Posn '
  12715.     If @PoOrged = 'D'
  12716.         Set @SSQL = @SSQL + ', S.Sifra_Oe '
  12717.     Exec(@SSQL)
  12718.     Set Nocount Off
  12719.  
  12720.  
  12721.  
  12722.  
  12723.  
  12724.  
  12725. Go
  12726. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_potipdok]'))
  12727. drop procedure [dbo].[sp_anal_matdok_potipdok]
  12728.  
  12729. Go
  12730.  
  12731. CREATE PROCEDURE sp_Anal_MatDok_PoTipDok
  12732.     @KoiOE Varchar(1000) = Null,
  12733.        @Datum_Dok_Od Smalldatetime = Null,
  12734.        @Datum_Dok_Do Smalldatetime = Null,
  12735.     @Sifra_Art_Od Varchar(20) = Null,
  12736.     @Sifra_Art_Do Varchar(20) = Null,
  12737.     @TipDok    varchar(200) = Null,
  12738.     @ZbirnoPoDok char(1) = Null
  12739.  
  12740. AS
  12741.  
  12742.     Declare @SSQL Varchar(8000)
  12743.     
  12744.     if @ZbirnoPoDok = 'D'
  12745.         SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Identif_Br,
  12746.             D.Datum_Dok, D.Sifra_Kup, K.ImeKup, K.Adresa, K.Posta, K.SMesto, D.Sifra_Obj, KO.ImeObj, 
  12747.             D.VlIzl, 
  12748.             Round(Sum(S.Kolic*S.DokCena / (Case When S.DanDokCena=''D'' Then (1+S.Posn/100) Else 1 End)), 4) As Vr_Osnov,
  12749.             Round(Sum(S.Kolic*S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100) / (Case When S.DanDokCena=''D'' Then (1+S.Posn/100) Else 1 End)), 4) As Vr_SoRabat,
  12750.             Round(Sum(S.Kolic*S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100) * (Case When S.DanDokCena=''N'' Then (1+S.Posn/100) Else 1 End)), 4) As Vr_Krajna,
  12751.             Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, 
  12752.             Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV '
  12753.     else
  12754.         SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Identif_Br,
  12755.             D.Datum_Dok, D.Sifra_Kup, K.ImeKup, K.Adresa, K.Posta, K.SMesto, D.Sifra_Obj, KO.ImeObj, 
  12756.             S.Sifra_Art, A.ImeArt, A.Edmera, A.KolkuDrg, S.VlIzl, S.Kolic, S.DokCena, S.MagCena, S.Uces, S.DanDokCena, S.DanMagCena, S.POsn '
  12757.  
  12758.     set @SSQL = @SSQL + ' FROM DOKR D
  12759.         LEFT OUTER JOIN Stavr S ON D.DokrID=S.DokrID
  12760.         LEFT OUTER JOIN Katart A ON S.Sifra_Art=A.Sifra_Art
  12761.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  12762.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  12763.         LEFT OUTER JOIN Kobjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj
  12764.         INNER JOIN Orged O ON S.Sifra_OE=O.Sifra_OE
  12765.         Where 1=1 '
  12766.  
  12767.        If @Sifra_Art_Od IS NOT NULL 
  12768.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  12769.        If @Sifra_Art_Do IS NOT NULL 
  12770.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  12771.     If @TipDok Is NOT NULL
  12772.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok In (' + @TipDok  + ') '
  12773.     If @KoiOE Is Not Null
  12774.         SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  12775.     If @Datum_Dok_Od Is NOT Null
  12776.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12777.        If @Datum_Dok_Do Is NOT Null
  12778.         SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12779.  
  12780.     if @ZbirnoPoDok = 'D'
  12781.         SET @SSQL = @SSQL + ' group by D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Identif_Br,
  12782.             D.Datum_Dok, D.Sifra_Kup, K.ImeKup, K.Adresa, K.Posta, K.SMesto, D.Sifra_Obj, KO.ImeObj, 
  12783.             D.VlIzl '
  12784.  
  12785.     Set @SSQL = @SSQL    + 'ORDER BY D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok '
  12786.  
  12787.    EXEC(@SSQL)
  12788.  
  12789.  
  12790. Go
  12791. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_razliki]'))
  12792. drop procedure [dbo].[sp_anal_matdok_razliki]
  12793.  
  12794. Go
  12795.  
  12796. CREATE                            PROCEDURE sp_Anal_MatDok_Razliki
  12797.     @Sifra_OE         Smallint = Null,
  12798.     @KoiOE         Varchar(1000) = Null,
  12799.        @Datum_Dok_Od     Smalldatetime = Null,
  12800.        @Datum_Dok_Do     Smalldatetime =  Null,
  12801.     @PoKojDatum        char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  12802.     @SoDanok        char(1) = 'D'
  12803. AS
  12804.     If @PoKojDatum = 'V' 
  12805.             If @Datum_Dok_Do Is Not Null
  12806.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  12807.     Declare @SSQL Varchar(8000)
  12808.     SET @SSQL = 'SELECT R.Sifra_Oe, R.Sifra_Razl, Sum(R.Kolic) Kolic, Sum(R.Kolic*(dbo.fn_VratiCena(R.PocCena, R.Posn, R.DanPocCena,''' + @SoDanok + '''))) PocVred, 
  12809.                                     Sum(R.Kolic*(dbo.fn_VratiCena(R.KrCena, R.Posn, R.DanKrCena,''' + @SoDanok + '''))) KrVred
  12810.             FROM RazlCeni R 
  12811.             Inner Join Katart A On A.Sifra_Art=R.Sifra_Art 
  12812.             WHERE A.SMatUsl = ''M'' '
  12813.        If @Sifra_OE Is NOT Null
  12814.               SET @SSQL = @SSQL + 'AND R.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  12815.        If @KoiOE Is NOT Null
  12816.               SET @SSQL = @SSQL + 'AND R.Sifra_OE In (' + @KoiOE + ') '
  12817.     If @PoKojDatum = 'V'
  12818.     Begin
  12819.         If @Datum_Dok_Od Is NOT Null            SET @SSQL = @SSQL + 'AND R.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12820.         If @Datum_Dok_Do Is NOT Null
  12821.              SET @SSQL = @SSQL + 'AND R.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12822.     End
  12823.     Else
  12824.     Begin
  12825.         If @Datum_Dok_Od Is NOT Null
  12826.             SET @SSQL = @SSQL + 'AND R.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12827.            If @Datum_Dok_Do Is NOT Null
  12828.             SET @SSQL = @SSQL + 'AND R.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12829.     End
  12830.     Set @SSQL = @SSQL + 'Group By R.Sifra_Oe, R.Sifra_Razl '
  12831. print @SSQL
  12832.    EXEC(@SSQL)
  12833.  
  12834.  
  12835.  
  12836.  
  12837. Go
  12838. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_sovreme]'))
  12839. drop procedure [dbo].[sp_anal_matdok_sovreme]
  12840.  
  12841. Go
  12842.  
  12843. CREATE    PROCEDURE [dbo].[sp_Anal_MatDok_SoVreme]
  12844.     @Sifra_OE     Smallint=Null,    --
  12845.     @KoiOE     Varchar(1000)=Null,    --
  12846.     @Sifra_Nal     Smallint=Null,    --
  12847.     @Sifra_Dok     Smallint=Null,    --
  12848.     @Broj_Nal_Od     Int=Null,    --
  12849.     @Broj_Nal_Do     Int=Null,    --
  12850.     @Datum_Nal_Od  Smalldatetime=Null,    --
  12851.     @Datum_Nal_Do  Smalldatetime=Null,    --
  12852.     @Broj_Dok_Od     Int=Null,    --
  12853.     @Broj_Dok_Do     Int=Null,    --
  12854.     @Datum_Dok_Od Smalldatetime=Null,    --
  12855.     @Datum_Dok_Do Smalldatetime=Null,    --
  12856.     @Sifra_Kup     Char(6)=Null,    --
  12857.     @Sifra_Obj    smallint = Null,
  12858.     @Sifra_Mest    int = Null,
  12859.     @VlIzl         Char(1)=Null,    --
  12860.     @PecFisc     Char(1) = Null,  -- D - Ispecateni na fiskalen      
  12861.     @Sifra_Nivo     Char(2) = Null,
  12862.     @Sifra_Pat    smallint = Null,
  12863.     @Sifra_Oper    varchar(20) = Null,
  12864.     @PoKojDatum    char(1) = 'D'     -- D - Datum_Dok,      V - Datum_Vnes
  12865. AS
  12866.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  12867.             If @Datum_Dok_Do Is Not Null
  12868.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  12869.        Declare @SSQL Varchar(8000)
  12870.     SET @SSQL = 'SELECT D.DokrID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  12871.                 dbo.fn_VratiDatum(D.Datum_Vnes) Datum_Vnes, dbo.fn_VratiVreme(D.Datum_Vnes) Vreme_Vnes, 
  12872.                 D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, 
  12873.                 D.Sifra_Kup, K.ImeKup, K.Smesto, D.Sifra_Obj, KO.ImeObj, KO.Smesto as ObjSmesto,
  12874.                 D.Rok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  12875.                 TD.ImeDok, O.ImeOrg, D.Sifra_Oper, D.Sifra_OpIz, D.Datum_Izm , D.Datum_Vnes as Datum_Vnes_Cel,
  12876.                 TD.DaliFisc, D.Pec_Fisc, D.Dat_Pec_Fisc, D.Ispratnica, D.Oper_WMSPak
  12877.                 FROM DOKR D
  12878.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  12879.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  12880.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  12881.                 LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj '
  12882.     If @Datum_Nal_Od Is Not Null Or @Datum_Nal_Do Is Not Null
  12883.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal '
  12884.     Set @SSQL = @SSQL + ' WHERE 1=1 '
  12885.     If @Sifra_Nal Is Not Null
  12886.         SET @SSQL = @SSQL + 'And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  12887.     If @Sifra_Nivo Is Not Null
  12888.         Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  12889.     If @PecFisc = 'D'
  12890.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  12891.     Else If @PecFisc = 'N'
  12892.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  12893.     If @Sifra_Dok Is NOT NULL
  12894.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  12895.        If @Sifra_OE Is NOT Null
  12896.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  12897.        If @KoiOE Is NOT Null
  12898.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  12899.     If @Sifra_Pat IS NOT NULL
  12900.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  12901.     If @Broj_Nal_Od Is NOT Null
  12902.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  12903.        If @Broj_Nal_Do Is NOT Null
  12904.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  12905.     If @Broj_Dok_Od Is NOT Null
  12906.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  12907.        If @Broj_Dok_Do Is NOT Null
  12908.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  12909.     If @PecFisc = 'D'
  12910.          Begin
  12911.         If @Datum_Dok_Od Is NOT Null
  12912.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12913.            If @Datum_Dok_Do Is NOT Null
  12914.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12915.          End
  12916.     Else
  12917.          Begin
  12918.         If @PoKojDatum = 'V'
  12919.               Begin
  12920.             If @Datum_Dok_Od Is NOT Null                SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12921.             If @Datum_Dok_Do Is NOT Null
  12922.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12923.               End
  12924.         Else
  12925.               Begin
  12926.             If @Datum_Dok_Od Is NOT Null
  12927.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  12928.                If @Datum_Dok_Do Is NOT Null
  12929.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  12930.               End
  12931.          End
  12932.     If @Datum_Nal_Od Is NOT Null
  12933.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  12934.        If @Datum_Nal_Do Is NOT Null
  12935.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  12936.     If @Sifra_Kup Is NOT Null
  12937.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  12938.        If @Sifra_Obj Is NOT Null
  12939.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  12940.     If @VlIzl Is NOT Null
  12941.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  12942.        If @Sifra_Mest Is NOT Null
  12943.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  12944.        If @Sifra_Oper IS NOT NULL
  12945.               SET @SSQL = @SSQL + 'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  12946.     if @Sifra_dok is null
  12947.     begin
  12948.               SET @SSQL = @SSQL + 'AND (TD.Iskl_Norm is null or TD.Iskl_Norm <> ''D'') '
  12949.         --ne gi prikazzuvaj nekoi tipovi dok voopssto ako ne se bass tie pobarani
  12950.     end
  12951.    EXEC(@SSQL)
  12952.  
  12953.  
  12954.  
  12955.  
  12956.  
  12957.  
  12958.  
  12959.  
  12960.  
  12961. Go
  12962. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_sum]'))
  12963. drop procedure [dbo].[sp_anal_matdok_sum]
  12964.  
  12965. Go
  12966. CREATE   PROCEDURE sp_Anal_MatDok_Sum
  12967.    @Sifra_Nal Smallint,
  12968.     @Sifra_Dok Smallint,
  12969.     @Sifra_OE Smallint,
  12970.     @KoiOE Varchar(400),
  12971.     @Sifra_Prim Smallint,
  12972.     @Broj_Nal_Od Int,
  12973.    @Broj_Nal_Do Int,
  12974.     @Broj_Dok_Od Int,
  12975.    @Broj_Dok_Do Int,
  12976.    @Datum_Dok_Od Smalldatetime,
  12977.    @Datum_Dok_Do Smalldatetime,
  12978.     @Datum_Nal_Od Smalldatetime,
  12979.    @Datum_Nal_Do Smalldatetime,
  12980.     @Sifra_Kup Char(6),
  12981.     @Sifra_Za Char(1),
  12982.     @VlIzl Char(1),
  12983.     @PecFisc char(1) = 'N',
  12984.     @Sifra_Nivo Char(2) = Null,
  12985.     @KFSifra_Nivo Char(1) = Null,
  12986.     @SoDDV Char(1) = 'D'
  12987. AS
  12988.    Declare @SSQL Varchar(2000)
  12989.     SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg,
  12990.             Sum(Case D.VlIzl
  12991.             When ''V'' Then '
  12992.             If @SoDDV = 'D'
  12993.                 Set @SSQL = @SSQL + 'D.MagVrDan '
  12994.             Else
  12995.                 Set @SSQL = @SSQL + 'D.MagVr '
  12996.             Set @SSQL = @SSQL + 'Else 0
  12997.             End) Vr_Vlez, '
  12998.         Set @SSQL = @SSQL + 'Sum(Case D.VlIzl
  12999.                     When ''I'' Then '
  13000.             If @SoDDV = 'D'
  13001.                 Set @SSQL = @SSQL + 'D.Toc200 '
  13002.             Else
  13003.                 Set @SSQL = @SSQL + 'D.Toc200 - D.Danok1 - D.Danok2 '
  13004.             Set @SSQL = @SSQL + 'Else 0
  13005.                     End) Vr_Izlez '
  13006.             Set @SSQL = @SSQL + 'FROM DOKR D
  13007.                      INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  13008.                      LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  13009.                      INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  13010.                      LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  13011.                      LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '                        
  13012.     If @Sifra_Nal Is Null
  13013.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  13014.     Else
  13015.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  13016.     If @KFSifra_Nivo Is Null
  13017.         Begin
  13018.             If @Sifra_Nivo Is Not Null
  13019.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  13020.         End
  13021.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  13022.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  13023.     If @PecFisc = 'D'
  13024.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  13025.     If @Sifra_Dok Is NOT NULL
  13026.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  13027.    If @Sifra_OE Is NOT Null
  13028.       SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  13029.    If @KoiOE Is NOT Null
  13030.       SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  13031.    If @Sifra_Prim Is NOT Null
  13032.       SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  13033.     If @Broj_Nal_Od Is NOT Null
  13034.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  13035.    If @Broj_Nal_Do Is NOT Null
  13036.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  13037.     If @Broj_Dok_Od Is NOT Null
  13038.        SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  13039.    If @Broj_Dok_Do Is NOT Null
  13040.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  13041.     If @Datum_Dok_Od Is NOT Null
  13042.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13043.    If @Datum_Dok_Do Is NOT Null
  13044.          SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13045.     If @Datum_Nal_Od Is NOT Null
  13046.        SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  13047.    If @Datum_Nal_Do Is NOT Null
  13048.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  13049.     If @Sifra_Kup Is NOT Null
  13050.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  13051.     If @Sifra_Za Is NOT Null
  13052.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  13053.     If @VlIzl Is NOT Null
  13054.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  13055.     Set @SSQL = @SSQL + 'Group By D.Sifra_OE, O.ImeOrg Order By D.Sifra_OE '
  13056.    EXEC(@SSQL)
  13057.  
  13058.  
  13059.  
  13060. Go
  13061. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_sum_podatum_dok]'))
  13062. drop procedure [dbo].[sp_anal_matdok_sum_podatum_dok]
  13063.  
  13064. Go
  13065. CREATE    PROCEDURE sp_Anal_MatDok_Sum_PoDatum_Dok
  13066.    @Sifra_Nal Smallint,
  13067.     @Sifra_Dok Smallint,
  13068.     @Sifra_OE Smallint,
  13069.     @KoiOE Varchar(400),
  13070.     @Sifra_Prim Smallint,
  13071.     @Broj_Nal_Od Int,
  13072.    @Broj_Nal_Do Int,
  13073.     @Broj_Dok_Od Int,
  13074.    @Broj_Dok_Do Int,
  13075.    @Datum_Dok_Od Smalldatetime,
  13076.    @Datum_Dok_Do Smalldatetime,
  13077.     @Datum_Nal_Od Smalldatetime,
  13078.    @Datum_Nal_Do Smalldatetime,
  13079.     @Sifra_Kup Char(6),
  13080.     @Sifra_Za Char(1),
  13081.     @VlIzl Char(1),
  13082.     @PecFisc char(1) = 'N',
  13083.     @Sifra_Nivo Char(2) = Null,
  13084.     @KFSifra_Nivo Char(1) = Null,
  13085.     @SoDDV Char(1) = 'D'
  13086. AS
  13087.    Declare @SSQL Varchar(2000)
  13088.     SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Datum_Dok,
  13089.             Sum(Case D.VlIzl
  13090.             When ''V'' Then '
  13091.             If @SoDDV = 'D'
  13092.                 Set @SSQL = @SSQL + 'D.MagVrDan '
  13093.             Else
  13094.                 Set @SSQL = @SSQL + 'D.MagVr '
  13095.             Set @SSQL = @SSQL + 'Else 0
  13096.             End) Vr_Vlez, '
  13097.             Set @SSQL = @SSQL + 'Sum(Case D.VlIzl
  13098.                 When ''I'' Then '
  13099.             If @SoDDV = 'D'
  13100.                 Set @SSQL = @SSQL + 'D.Toc200 '
  13101.             Else
  13102.                 Set @SSQL = @SSQL + 'D.Toc200 - D.Danok1 - D.Danok2 '
  13103.             Set @SSQL = @SSQL + 'Else 0
  13104.                     End) Vr_Izlez '
  13105.             Set @SSQL = @SSQL + 'FROM DOKR D
  13106.                      INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  13107.                      LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  13108.                      INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  13109.                      LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  13110.                      LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '                        
  13111.     If @Sifra_Nal Is Null
  13112.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  13113.     Else
  13114.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  13115.     If @KFSifra_Nivo Is Null
  13116.         Begin
  13117.             If @Sifra_Nivo Is Not Null
  13118.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  13119.         End
  13120.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  13121.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  13122.     If @PecFisc = 'D'
  13123.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  13124.     If @Sifra_Dok Is NOT NULL
  13125.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  13126.    If @Sifra_OE Is NOT Null
  13127.       SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  13128.    If @KoiOE Is NOT Null
  13129.       SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  13130.    If @Sifra_Prim Is NOT Null
  13131.       SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  13132.     If @Broj_Nal_Od Is NOT Null
  13133.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  13134.    If @Broj_Nal_Do Is NOT Null
  13135.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  13136.     If @Broj_Dok_Od Is NOT Null
  13137.        SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  13138.    If @Broj_Dok_Do Is NOT Null
  13139.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  13140.     If @Datum_Dok_Od Is NOT Null
  13141.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13142.    If @Datum_Dok_Do Is NOT Null
  13143.          SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13144.     If @Datum_Nal_Od Is NOT Null
  13145.        SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  13146.    If @Datum_Nal_Do Is NOT Null
  13147.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  13148.     If @Sifra_Kup Is NOT Null
  13149.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  13150.     If @Sifra_Za Is NOT Null
  13151.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  13152.     If @VlIzl Is NOT Null
  13153.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  13154.     Set @SSQL = @SSQL + 'Group By D.Sifra_OE, O.ImeOrg, D.Datum_Dok Order By D.Sifra_OE, D.Datum_Dok '
  13155.    EXEC(@SSQL)
  13156.  
  13157.  
  13158.  
  13159. Go
  13160. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_sum_potipdok]'))
  13161. drop procedure [dbo].[sp_anal_matdok_sum_potipdok]
  13162.  
  13163. Go
  13164.  
  13165.  
  13166.  
  13167. CREATE        PROCEDURE sp_Anal_MatDok_Sum_PoTipDok
  13168.        @Sifra_Nal Smallint = Null,
  13169.     @Sifra_Dok Smallint = Null,
  13170.     @Sifra_OE Smallint = Null,
  13171.     @KoiOE Varchar(400) = Null,
  13172.     @Sifra_Prim Smallint = Null,
  13173.     @Broj_Nal_Od Int = Null,
  13174.        @Broj_Nal_Do Int = Null,
  13175.     @Broj_Dok_Od Int = Null,
  13176.        @Broj_Dok_Do Int = Null,
  13177.        @Datum_Dok_Od Smalldatetime = Null,
  13178.        @Datum_Dok_Do Smalldatetime = Null,
  13179.     @Datum_Nal_Od Smalldatetime = Null,
  13180.        @Datum_Nal_Do Smalldatetime = Null,
  13181.     @Sifra_Kup Char(6) = Null,
  13182.     @Sifra_Za Char(1) = Null,
  13183.     @VlIzl Char(1) = Null,
  13184.     @PecFisc char(1) = Null,
  13185.     @Sifra_Nivo Char(2) = Null,
  13186.     @KFSifra_Nivo Char(1) = Null,
  13187.     @SoDDV Char(1) = 'D',
  13188.     @KFSifra_Prim Char(1) = Null,
  13189.     @Sifra_Pat     smallint = Null,
  13190.     @Sifra_Mest    int = Null,
  13191.     @NemaKomint    char(1) = Null,
  13192.     @NemaPatnik    char(1) = Null,
  13193.     @Sifra_Oper    varchar(20) = Null,
  13194.     @Sifra_Obj    smallint = Null,
  13195.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  13196.     @Koi_Gradovi    varchar(300) = Null,
  13197.     @Sifra_Div    smallint = Null,
  13198.     @NemaDivizija    char(1) = Null,
  13199.     @Sifra_Prev    char(6) = Null,
  13200.     @Spremil    varchar(5) = Null,
  13201.     @SoTezini    char(1) = 'N',
  13202.     @KDrugo1        smallint = NULL, 
  13203.     @KDrugo2        smallint = NULL,
  13204.     @KDrugo3        smallint = NULL,
  13205.     @KDrugo4        smallint = NULL,
  13206.     @KDrugo5        smallint = NULL,
  13207.     @KDrugo6        smallint = NULL,
  13208.     @KDrugo7        smallint = NULL,
  13209.     @DogBr    varchar(10) = Null,
  13210.     @Sifra_Reg    smallint = Null
  13211. AS
  13212.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  13213.             If @Datum_Dok_Do Is Not Null
  13214.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  13215.        Declare @SSQL Varchar(4000)
  13216.     If @SoTezini = 'D'
  13217.     Begin
  13218.         SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Sifra_Prim, 
  13219.                 Sum(Case D.VlIzl When ''V'' Then (S.Kolic*A.Tezina/1000) Else 0 End) Vr_Vlez, 
  13220.                 Sum(Case D.VlIzl When ''I'' Then (S.Kolic*A.Tezina/1000) Else 0 End) Vr_Izlez 
  13221.                 FROM DOKR D
  13222.                 Left Outer Join Stavr S On S.DokrID=D.DokrID
  13223.                 Left Outer Join Katart A On A.Sifra_Art = S.Sifra_Art
  13224.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  13225.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  13226.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  13227.                 LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  13228.                 LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '    
  13229.     End
  13230.     Else
  13231.     Begin
  13232.         SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Sifra_Prim, 
  13233.                 Sum(Case D.VlIzl
  13234.                         When ''V'' Then '
  13235.                 If @SoDDV = 'D'
  13236.                     Set @SSQL = @SSQL + 'D.MagVrDan '
  13237.                 Else
  13238.                     Set @SSQL = @SSQL + 'D.MagVr '
  13239.                 Set @SSQL = @SSQL + 'Else 0
  13240.                         End) Vr_Vlez, '
  13241.             Set @SSQL = @SSQL + 'Sum(Case D.VlIzl
  13242.                         When ''I'' Then '
  13243.                 If @SoDDV = 'D'
  13244.                     Set @SSQL = @SSQL + 'D.Toc200 '
  13245.                 Else
  13246.                     Set @SSQL = @SSQL + 'D.Toc200 - D.Danok1 - D.Danok2 '
  13247.                 Set @SSQL = @SSQL + 'Else 0
  13248.                         End) Vr_Izlez '
  13249.                 Set @SSQL = @SSQL + 'FROM DOKR D
  13250.                          INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  13251.                          LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  13252.                          INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  13253.                          LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  13254.                          LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '    
  13255.     End
  13256.             
  13257.     If @Koi_Gradovi Is Not Null or @KDrugo1 is not null or @KDrugo2 is not null or @KDrugo3 is not null
  13258.     or @KDrugo4 is not null or @KDrugo5 is not null or @KDrugo6 is not null or @KDrugo7 is not null
  13259.  
  13260.         Set @SSQL = @SSQL + ' Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  13261.     If @Sifra_Nal Is Null
  13262.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  13263.     Else
  13264.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  13265.     If @KFSifra_Nivo Is Null
  13266.         Begin
  13267.             If @Sifra_Nivo Is Not Null
  13268.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  13269.         End
  13270.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  13271.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  13272.     If @PecFisc = 'D'
  13273.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  13274.     Else If @PecFisc = 'N'
  13275.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  13276.     If @Sifra_Dok Is NOT NULL
  13277.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  13278.        If @Sifra_OE Is NOT Null
  13279.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  13280.        If @KoiOE Is NOT Null
  13281.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  13282.     If @Sifra_Pat IS NOT NULL
  13283.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  13284. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  13285.     If @NemaPatnik = 'D'
  13286.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  13287.     If @KFSifra_Prim Is Null
  13288.         Begin
  13289.             If @Sifra_Prim Is Not Null
  13290.                 SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  13291.         End
  13292.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  13293.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As Varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  13294.     If @Broj_Nal_Od Is NOT Null
  13295.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  13296.        If @Broj_Nal_Do Is NOT Null
  13297.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  13298.     If @Broj_Dok_Od Is NOT Null
  13299.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  13300.        If @Broj_Dok_Do Is NOT Null
  13301.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  13302.     If @PecFisc = 'D'
  13303.          Begin
  13304.         If @Datum_Dok_Od Is NOT Null
  13305.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13306.            If @Datum_Dok_Do Is NOT Null
  13307.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13308.          End
  13309.     Else
  13310.          Begin
  13311.         If @PoKojDatum = 'V'
  13312.               Begin
  13313.             If @Datum_Dok_Od Is NOT Null                SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13314.             If @Datum_Dok_Do Is NOT Null
  13315.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13316.               End
  13317.         Else
  13318.               Begin
  13319.             If @Datum_Dok_Od Is NOT Null
  13320.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13321.                If @Datum_Dok_Do Is NOT Null
  13322.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13323.               End
  13324.          End
  13325.     If @Datum_Nal_Od Is NOT Null
  13326.        SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  13327.        If @Datum_Nal_Do Is NOT Null
  13328.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  13329.     If @Sifra_Kup Is NOT Null
  13330.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  13331. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  13332.     If @NemaKomint = 'D'
  13333.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  13334.     If @Sifra_Div IS NOT NULL
  13335.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  13336. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div
  13337.     If @NemaDivizija = 'D'
  13338.         SET @SSQL = @SSQL + 'AND D.Sifra_Div Is Null ' 
  13339.        If @Sifra_Obj Is NOT Null
  13340.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  13341.     If @Sifra_Za Is NOT Null
  13342.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  13343.     If @VlIzl Is NOT Null
  13344.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  13345.        If @Sifra_Mest Is NOT Null
  13346.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  13347.        If @Sifra_Oper IS NOT NULL
  13348.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  13349.     If @Koi_Gradovi Is Not NULL    
  13350.         Begin
  13351.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  13352.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  13353.         End
  13354.     If @KDrugo1 Is NOT NULL
  13355.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  13356.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  13357.     If @KDrugo2 Is NOT NULL
  13358.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  13359.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  13360.     If @KDrugo3 Is NOT NULL
  13361.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  13362.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  13363.     If @KDrugo4 Is NOT NULL
  13364.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  13365.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  13366.     If @KDrugo5 Is NOT NULL
  13367.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  13368.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  13369.     If @KDrugo6 Is NOT NULL
  13370.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  13371.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  13372.     If @KDrugo7 Is NOT NULL
  13373.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  13374.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  13375.     If @Sifra_Reg Is NOT NULL
  13376.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  13377.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  13378.        If @Sifra_Prev IS NOT NULL
  13379.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  13380.        If @Spremil IS NOT NULL
  13381.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  13382.     If @DogBr Is NOT Null
  13383.         SET @SSQL = @SSQL + ' AND D.DogBr=''' + @DogBr + ''' '
  13384.     Set @SSQL = @SSQL + 'Group By D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Sifra_Prim 
  13385.                 Order By D.Sifra_OE, D.Sifra_Dok, D.Sifra_Prim '
  13386. print @SSQL
  13387.    EXEC(@SSQL)
  13388.  
  13389. Go
  13390. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_sum_potipdok_datum_dok]'))
  13391. drop procedure [dbo].[sp_anal_matdok_sum_potipdok_datum_dok]
  13392.  
  13393. Go
  13394. CREATE   PROCEDURE sp_Anal_MatDok_Sum_PoTipDok_Datum_Dok
  13395.    @Sifra_Nal Smallint,
  13396.     @Sifra_Dok Smallint,
  13397.     @Sifra_OE Smallint,
  13398.     @KoiOE Varchar(400),
  13399.     @Sifra_Prim Smallint,
  13400.     @Broj_Nal_Od Int,
  13401.    @Broj_Nal_Do Int,
  13402.     @Broj_Dok_Od Int,
  13403.    @Broj_Dok_Do Int,
  13404.    @Datum_Dok_Od Smalldatetime,
  13405.    @Datum_Dok_Do Smalldatetime,
  13406.     @Datum_Nal_Od Smalldatetime,
  13407.    @Datum_Nal_Do Smalldatetime,
  13408.     @Sifra_Kup Char(6),
  13409.     @Sifra_Za Char(1),
  13410.     @VlIzl Char(1),
  13411.     @PecFisc char(1) = 'N',
  13412.     @Sifra_Nivo Char(2) = Null,
  13413.     @KFSifra_Nivo Char(1) = Null,
  13414.     @SoDDV Char(1) = 'D'
  13415. AS
  13416.    Declare @SSQL Varchar(2000)
  13417.     SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Datum_Dok, D.Sifra_Dok, TD.ImeDok,
  13418.             Sum(Case D.VlIzl
  13419.                     When ''V'' Then '
  13420.             If @SoDDV = 'D'
  13421.                 Set @SSQL = @SSQL + 'D.MagVrDan '
  13422.             Else
  13423.                 Set @SSQL = @SSQL + 'D.MagVr '
  13424.             Set @SSQL = @SSQL + 'Else 0
  13425.                     End) Vr_Vlez, '
  13426.         Set @SSQL = @SSQL + 'Sum(Case D.VlIzl
  13427.                     When ''I'' Then '
  13428.             If @SoDDV = 'D'
  13429.                 Set @SSQL = @SSQL + 'D.Toc200 '
  13430.             Else
  13431.                 Set @SSQL = @SSQL + 'D.Toc200 - D.Danok1 - D.Danok2 '
  13432.             Set @SSQL = @SSQL + 'Else 0
  13433.                     End) Vr_Izlez '
  13434.             Set @SSQL = @SSQL + 'FROM DOKR D
  13435.                      INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  13436.                      LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  13437.                      INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  13438.                      LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  13439.                      LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '                        
  13440.     If @Sifra_Nal Is Null
  13441.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  13442.     Else
  13443.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  13444.     If @KFSifra_Nivo Is Null
  13445.         Begin
  13446.             If @Sifra_Nivo Is Not Null
  13447.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  13448.         End
  13449.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  13450.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  13451.     If @PecFisc = 'D'
  13452.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  13453.     If @Sifra_Dok Is NOT NULL
  13454.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  13455.    If @Sifra_OE Is NOT Null
  13456.       SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  13457.    If @KoiOE Is NOT Null
  13458.       SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  13459.    If @Sifra_Prim Is NOT Null
  13460.       SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  13461.     If @Broj_Nal_Od Is NOT Null
  13462.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  13463.    If @Broj_Nal_Do Is NOT Null
  13464.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  13465.     If @Broj_Dok_Od Is NOT Null
  13466.        SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  13467.    If @Broj_Dok_Do Is NOT Null
  13468.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  13469.     If @Datum_Dok_Od Is NOT Null
  13470.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13471.    If @Datum_Dok_Do Is NOT Null
  13472.          SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13473.     If @Datum_Nal_Od Is NOT Null
  13474.        SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  13475.    If @Datum_Nal_Do Is NOT Null
  13476.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  13477.     If @Sifra_Kup Is NOT Null
  13478.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  13479.     If @Sifra_Za Is NOT Null
  13480.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  13481.     If @VlIzl Is NOT Null
  13482.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  13483.     Set @SSQL = @SSQL + 'Group By D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Datum_Dok Order By D.Sifra_OE, D.Sifra_Dok, D.Datum_Dok '
  13484.    EXEC(@SSQL)
  13485.  
  13486.  
  13487.  
  13488. Go
  13489. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_matdok_sum_potipdok_postavki]'))
  13490. drop procedure [dbo].[sp_anal_matdok_sum_potipdok_postavki]
  13491.  
  13492. Go
  13493.  
  13494.  
  13495. CREATE         PROCEDURE sp_Anal_MatDok_Sum_PoTipDok_PoStavki
  13496.        @Sifra_Nal Smallint = Null,
  13497.     @Sifra_Dok Smallint = Null,
  13498.     @Sifra_OE Smallint = Null,
  13499.     @KoiOE Varchar(400) = Null,
  13500.     @Sifra_Prim Smallint = Null,
  13501.     @Broj_Nal_Od Int = Null,
  13502.        @Broj_Nal_Do Int = Null,
  13503.     @Broj_Dok_Od Int = Null,
  13504.        @Broj_Dok_Do Int = Null,
  13505.        @Datum_Dok_Od Smalldatetime = Null,
  13506.        @Datum_Dok_Do Smalldatetime = Null,
  13507.     @Datum_Nal_Od Smalldatetime = Null,
  13508.        @Datum_Nal_Do Smalldatetime = Null,
  13509.     @Sifra_Kup Char(6) = Null,
  13510.     @Sifra_Za Char(1) = Null,
  13511.     @VlIzl Char(1) = Null,
  13512.     @PecFisc char(1) = Null,
  13513.     @Sifra_Nivo Char(2) = Null,
  13514.     @KFSifra_Nivo Char(1) = Null,
  13515.     @SoDDV Char(1) = 'D',
  13516.     @KFSifra_Prim Char(1) = Null,
  13517.     @Sifra_Pat     smallint = Null,
  13518.     @Sifra_Mest    int = Null,
  13519.     @NemaKomint    char(1) = Null,
  13520.     @NemaPatnik    char(1) = Null,
  13521.     @Sifra_Oper    varchar(20) = Null,
  13522.     @Sifra_Obj    smallint = Null,
  13523.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  13524.     @Koi_Gradovi    varchar(300) = Null,
  13525.     @Sifra_Div    smallint = Null,
  13526.     @NemaDivizija    char(1) = Null,
  13527.     @Sifra_Prev    char(6) = Null,
  13528.     @Spremil    varchar(5) = Null,
  13529.     @SoTezini    char(1) = Null,
  13530.     @KDrugo1        smallint = NULL, 
  13531.     @KDrugo2        smallint = NULL,
  13532.     @KDrugo3        smallint = NULL,
  13533.     @KDrugo4        smallint = NULL,
  13534.     @KDrugo5        smallint = NULL,
  13535.     @KDrugo6        smallint = NULL,
  13536.     @KDrugo7        smallint = NULL,
  13537.     @DogBr    varchar(10) = Null,
  13538.     @Sifra_Reg    smallint = Null
  13539. AS
  13540.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  13541.             If @Datum_Dok_Do Is Not Null
  13542.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  13543.        Declare @SSQL Varchar(4000)
  13544.     SET @SSQL = 'SELECT S.Sifra_OE, O.ImeOrg, S.Sifra_Dok, TD.ImeDok, S.Sifra_Prim, '
  13545.     If @SoTezini = 'D'
  13546.         Set @SSQL = @SSQL + ' Sum(Case D.VlIzl When ''V'' Then (S.Kolic*A.Tezina/1000) Else 0 End) Vr_Vlez, 
  13547.                     Sum(Case D.VlIzl When ''I'' Then (S.Kolic*A.Tezina/1000) Else 0 End) Vr_Izlez '
  13548.     Else
  13549.     Begin
  13550.         Set @SSQL = @SSQL + ' Sum(Case S.VlIzl
  13551.                         When ''V'' Then '
  13552.             If @SoDDV = 'D'
  13553.                 Set @SSQL = @SSQL + 'Round ((S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)), 2)  '
  13554.             Else
  13555.                 Set @SSQL = @SSQL + 'Round (((S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa))-
  13556.                             (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)), 2) '
  13557.             Set @SSQL = @SSQL + 'Else 0
  13558.                     End) Vr_Vlez, '
  13559.         Set @SSQL = @SSQL + 'Sum(Case S.VlIzl
  13560.                     When ''I'' Then '
  13561.             If @SoDDV = 'D'
  13562.                 Set @SSQL = @SSQL + 'Round ((S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)), 2)  '
  13563.             Else
  13564.                 Set @SSQL = @SSQL + 'Round (((S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa))-
  13565.                             (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)), 2) '
  13566.             Set @SSQL = @SSQL + 'Else 0
  13567.                     End) Vr_Izlez '
  13568.     End
  13569.             Set @SSQL = @SSQL + 'FROM Stavr S
  13570.                      INNER JOIN DOKR  D ON D.DokrId=S.DokrId
  13571.                       INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  13572.                      LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  13573.                      INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  13574.                      LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  13575.                      LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE '                        
  13576.     If @SoTezini = 'D'
  13577.         Set @SSQL = @SSQL + ' Inner Join Katart A ON A.Sifra_Art=S.Sifra_Art '                        
  13578.     If @Koi_Gradovi Is Not Null or @KDrugo1 is not null or @KDrugo2 is not null or @KDrugo3 is not null
  13579.     or @KDrugo4 is not null or @KDrugo5 is not null or @KDrugo6 is not null or @KDrugo7 is not null
  13580.            Set @SSQL = @SSQL + 'Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  13581.     
  13582.     If @Sifra_Nal Is Null
  13583.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  13584.     Else
  13585.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  13586.     If @KFSifra_Nivo Is Null
  13587.         Begin
  13588.             If @Sifra_Nivo Is Not Null
  13589.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  13590.         End
  13591.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  13592.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  13593.     If @PecFisc = 'D'
  13594.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  13595.     Else If @PecFisc = 'N'
  13596.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  13597.     If @Sifra_Dok Is NOT NULL
  13598.         SET @SSQL = @SSQL + 'AND S.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  13599.        If @Sifra_OE Is NOT Null
  13600.               SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  13601.        If @KoiOE Is NOT Null
  13602.               SET @SSQL = @SSQL + 'AND S.Sifra_OE In (' + @KoiOE + ') '
  13603.     If @Sifra_Pat IS NOT NULL
  13604.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  13605. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  13606.     If @NemaPatnik = 'D'
  13607.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  13608.     If @KFSifra_Prim Is Null
  13609.         Begin
  13610.             If @Sifra_Prim Is Not Null
  13611.                 SET @SSQL = @SSQL + 'AND S.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  13612.         End
  13613.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  13614.         Set @SSQL = @SSQL + 'And (S.Sifra_Prim<>' + Cast(@Sifra_Prim As Varchar(6)) + ' Or S.Sifra_Prim Is Null) '
  13615.     If @Broj_Nal_Od Is NOT Null
  13616.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  13617.        If @Broj_Nal_Do Is NOT Null
  13618.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  13619.     If @Broj_Dok_Od Is NOT Null
  13620.            SET @SSQL = @SSQL + 'AND S.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  13621.        If @Broj_Dok_Do Is NOT Null
  13622.          SET @SSQL = @SSQL + 'AND S.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  13623.     If @PecFisc = 'D'
  13624.          Begin
  13625.         If @Datum_Dok_Od Is NOT Null
  13626.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13627.            If @Datum_Dok_Do Is NOT Null
  13628.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13629.          End
  13630.     Else
  13631.          Begin
  13632.         If @PoKojDatum = 'V'
  13633.               Begin
  13634.             If @Datum_Dok_Od Is NOT Null
  13635.                 SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13636.             If @Datum_Dok_Do Is NOT Null
  13637.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13638.               End
  13639.         Else
  13640.               Begin
  13641.             If @Datum_Dok_Od Is NOT Null
  13642.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13643.                If @Datum_Dok_Do Is NOT Null
  13644.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13645.               End
  13646.          End
  13647.     If @Datum_Nal_Od Is NOT Null
  13648.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  13649.        If @Datum_Nal_Do Is NOT Null
  13650.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  13651.     If @Sifra_Kup Is NOT Null
  13652.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  13653. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  13654.     If @NemaKomint = 'D'
  13655.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  13656.     If @Sifra_Div IS NOT NULL
  13657.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  13658. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div 
  13659.     If @NemaDivizija = 'D'
  13660.         SET @SSQL = @SSQL + 'AND D.Sifra_Div Is Null ' 
  13661.        If @Sifra_Obj Is NOT Null
  13662.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  13663.     If @Sifra_Za Is NOT Null
  13664.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  13665.     If @VlIzl Is NOT Null
  13666.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  13667.        If @Sifra_Mest Is NOT Null
  13668.         SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  13669.        If @Sifra_Oper IS NOT NULL
  13670.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  13671.     If @Koi_Gradovi Is Not NULL    
  13672.         Begin
  13673.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  13674.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  13675.         End
  13676.     If @KDrugo1 Is NOT NULL
  13677.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  13678.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  13679.     If @KDrugo2 Is NOT NULL
  13680.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  13681.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  13682.     If @KDrugo3 Is NOT NULL
  13683.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  13684.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  13685.     If @KDrugo4 Is NOT NULL
  13686.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  13687.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  13688.     If @KDrugo5 Is NOT NULL
  13689.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  13690.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  13691.     If @KDrugo6 Is NOT NULL
  13692.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  13693.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  13694.     If @KDrugo7 Is NOT NULL
  13695.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  13696.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  13697.     If @Sifra_Reg Is NOT NULL
  13698.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  13699.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  13700.        If @Sifra_Prev IS NOT NULL
  13701.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  13702.        If @Spremil IS NOT NULL
  13703.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  13704.     If @DogBr Is NOT Null
  13705.         SET @SSQL = @SSQL + ' AND D.DogBr=''' + @DogBr + ''' '
  13706.     Set @SSQL = @SSQL + 'Group By S.Sifra_OE, O.ImeOrg, S.Sifra_Dok, TD.ImeDok, S.Sifra_Prim Order By S.Sifra_OE, S.Sifra_Dok, S.Sifra_Prim '
  13707. print @ssql
  13708.    EXEC(@SSQL)
  13709.  
  13710. Go
  13711. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_prodrazl]'))
  13712. drop procedure [dbo].[sp_anal_prodrazl]
  13713.  
  13714. Go
  13715. CREATE PROCEDURE sp_Anal_ProdRazl
  13716.     @Sifra_Oe        Smallint = Null,
  13717.     @Datum_Dok_Od    SmallDateTime = Null,
  13718.     @Datum_Dok_Do    SmallDateTime = Null,
  13719.     @Broj_RazlProd_Od    Int = Null,
  13720.     @Broj_RazlProd_Do    Int = Null
  13721. AS
  13722.     DECLARE @SSQL  AS Varchar(2000)
  13723.     Set @SSQL = 'Select R.Sifra_OE, R.Broj_RazlProd,  R.Datum_Dok,
  13724.         Vlez = Sum(Case R.VlIzl
  13725.                 When ''V'' Then R.Iznos_Razl
  13726.                 When ''I'' Then 0
  13727.             End),
  13728.         Izlez = Sum(Case R.VlIzl
  13729.                 When ''V'' Then 0
  13730.                 When ''I'' Then R.Iznos_Razl
  13731.             End),
  13732.         R.Sifra_Nal, R.Broj_Nal
  13733.         From RazlProd R
  13734.         Where 1=1'
  13735.     IF @Sifra_Oe Is Not Null
  13736.         Set @SSQL = @SSQL + ' And R.Sifra_Oe= ''' + Cast(@Sifra_Oe as Varchar(6)) + ''' '
  13737.     IF @Datum_Dok_Od Is Not Null
  13738.         Set @SSQL = @SSQL + ' And R.Datum_Dok>= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13739.     IF @Datum_Dok_Do Is Not Null
  13740.         Set @SSQL = @SSQL + ' And R.Datum_Dok<= ''' + Cast(@Datum_Dok_Do As Varchar(30)) + ''' '
  13741.     IF @Broj_RazlProd_Od Is Not Null
  13742.         Set @SSQL = @SSQL + ' And R.Broj_RazlProd >= ''' + Cast(@Broj_RazlProd_Od As Varchar(6)) + ''' '
  13743.     IF @Broj_RazlProd_Do Is Not Null
  13744.         Set @SSQL = @SSQL + ' And R.Broj_RazlProd <= ''' + Cast(@Broj_RazlProd_Do As Varchar(6)) + ''' '
  13745.     SET @SSQL = @SSQL + ' Group By R.Sifra_Oe, R.Broj_RazlProd, R.Datum_Dok, R.Sifra_Nal, R.Broj_Nal ' 
  13746.     Exec(@SSQL)
  13747.  
  13748.  
  13749.  
  13750.  
  13751. Go
  13752. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_promet_art]'))
  13753. drop procedure [dbo].[sp_anal_promet_art]
  13754.  
  13755. Go
  13756.  
  13757.  
  13758. CREATE    PROCEDURE sp_Anal_Promet_Art
  13759.        @Sifra_Nal     Smallint = Null,
  13760.     @Sifra_Dok     Smallint = Null,
  13761.     @Sifra_OE     Smallint = Null,
  13762.     @KoiOE     Varchar(1000) = Null,
  13763.     @Sifra_Prim     Smallint = Null,
  13764.     @Broj_Nal_Od     Int = Null,
  13765.        @Broj_Nal_Do     Int = Null,
  13766.     @Broj_Dok_Od     Int = Null,
  13767.        @Broj_Dok_Do     Int = Null,
  13768.        @Datum_Dok_Od     Smalldatetime = Null,
  13769.        @Datum_Dok_Do     Smalldatetime = Null,
  13770.     @Datum_Nal_Od     Smalldatetime = Null,
  13771.        @Datum_Nal_Do     Smalldatetime = Null,
  13772.     @Sifra_Kup     Char(6) = Null,
  13773.     @Sifra_Za     Char(1) = Null,
  13774.     @VlIzl         Char(1) = Null,
  13775.     @Sifra_Art_Od     Varchar(20) = Null,
  13776.     @Sifra_Art_Do     Varchar(20) = Null,
  13777.     @Kto         char(6) = Null,
  13778.     @Sifra_Gr     char(3) = Null,
  13779.     @Sifra_Podg     char(6) = Null,
  13780.     @Lokacija     varchar(10) = Null,
  13781.     @MatUsl     char(1) = Null,
  13782.     @PecFisc     char(1) = 'N',
  13783.     @Sifra_Nivo     Char(2) = Null,
  13784.     @KFSifra_Nivo     Char(1) = Null,
  13785.     @KFSifra_Prim     Smallint = Null,
  13786.     @Sifra_Pat    smallint = Null,
  13787.     @Sifra_Mest    int = Null,
  13788.     @Uces_Od    decimal(6,2) = Null,
  13789.     @Uces_Do    decimal(6,2) = Null,
  13790.     @Sifra_Drg    smallint = Null,
  13791.     @Drugo1    smallint = Null,
  13792.     @Drugo2    smallint = Null,
  13793.     @Drugo3    smallint = Null,
  13794.     @Drugo4    smallint = Null,
  13795.      @Drugo5    smallint = Null,
  13796.     @Drugo6    smallint = Null,
  13797.     @Drugo7    smallint = Null,
  13798.     @NemaKomint    char(1) = Null,
  13799.     @NemaPatnik    char(1) = Null,
  13800.     @Sifra_Oper    varchar(20) = Null,
  13801.     @Sifra_Obj    smallint = Null,
  13802.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  13803.     @Koi_Gradovi    varchar(300) = Null,
  13804.     @Sifra_Prev    char(6) = Null,
  13805.     @Spremil    varchar(5) = Null,
  13806.     @SoUcesOsn    char(1) = 'N',
  13807.     @UcesOsnNad    decimal(6,2) = 0,
  13808.     @UcesOsnDo    decimal(6,2) = 0,
  13809.     @SoUcesKol    char(1) = 'N',
  13810.     @UcesKolNad    decimal(6,2) = 0,
  13811.     @UcesKolDo    decimal(6,2) = 0,
  13812.     @SoUcesDod    char(1) = 'N',
  13813.     @UcesDodNad    decimal(6,2) = 0,
  13814.     @UcesDodDo    decimal(6,2) = 0,
  13815.     @VkUcesNad    decimal(6,2) = 0,
  13816.     @Kto_Anal    char(10) = NULL,
  13817.         @KDrugo1        smallint = NULL, 
  13818.     @KDrugo2        smallint = NULL,
  13819.     @KDrugo3        smallint = NULL,
  13820.     @KDrugo4        smallint = NULL,
  13821.     @KDrugo5        smallint = NULL,
  13822.     @KDrugo6        smallint = NULL,
  13823.     @KDrugo7        smallint = NULL,
  13824.     @DogBr    varchar(10) = Null,
  13825.     @Sifra_Reg    smallint = Null
  13826.  
  13827. AS
  13828.     Set @UcesOsnNad    = @UcesOsnNad * 100
  13829.     Set @UcesOsnDo    = @UcesOsnDo * 100
  13830.     Set @UcesKolNad    = @UcesKolNad * 100
  13831.     Set @UcesKolDo    = @UcesKolDo * 100
  13832.     Set @UcesDodNad    = @UcesDodNad * 100
  13833.     Set @UcesDodDo    = @UcesDodDo * 100
  13834.     If @PoKojDatum = 'V'
  13835.             If @Datum_Dok_Do Is Not Null
  13836.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  13837.    Declare @SSQL Varchar(8000)
  13838.     SET @SSQL = 'SELECT D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.Kasa, 
  13839.             D.Datum_Dok, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj,
  13840.             S.Sifra_Art, A.ImeArt, A.Edmera, S.VlIzl, S.Kolic, S.DokCena, S.MagCena, S.Uces, S.DanDokCena, S.DanMagCena, S.POsn,
  13841.             D.Identif_Br, D.Ispratnica,  S.UcesOsn, S.UcesKol, (Case When S.UcesDod Is Null Then 0 Else S.UcesDod End) UcesDod,
  13842.             A.ImaKomerc, A.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, S.Alt_Kolic,
  13843.             D.Sifra_Pat, Pat.ImePat, S.NabCena, D.Toc200, A.Tezina, A.BTezina, A.PCena6,
  13844.                         K.KDrugo4, K.KDrugo6, K4.Ime_4K, K6.Ime_6K
  13845.         FROM DOKR D
  13846.         LEFT OUTER JOIN Stavr S ON D.DokrID=S.DokrID
  13847.         LEFT OUTER JOIN Katart A ON S.Sifra_Art=A.Sifra_Art
  13848.         LEFT OUTER JOIN Podgrupi PG ON A.Sifra_Podg=PG.Sifra_Podg
  13849.         LEFT OUTER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr
  13850.         INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  13851.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  13852.                 LEFT OUTER JOIN KDrugo4 K4 ON K.KDrugo4=K4.Sifra_4K
  13853.                 LEFT OUTER JOIN KDrugo6 K6 ON K.KDrugo6=K6.Sifra_6K
  13854.         INNER JOIN Orged O ON S.Sifra_OE=O.Sifra_OE
  13855.         LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  13856.         LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE 
  13857.         LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj 
  13858.         LEFT OUTER JOIN Patnici Pat ON Pat.Sifra_Pat=D.Sifra_Pat '
  13859.     If @Sifra_Nal Is Null
  13860.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0  '  -- s.kolicf <> 0 dod 18.06.2010 za Prima
  13861.     Else
  13862.         SET @SSQL = @SSQL + 'WHERE S.Kolic<>0 And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  13863.     If @KFSifra_Nivo Is Null
  13864.         Begin
  13865.             If @Sifra_Nivo Is Not Null
  13866.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  13867.         End
  13868.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  13869.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  13870.     If @PecFisc = 'D'
  13871.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  13872.     If @MatUsl Is Not Null
  13873.         Set @SSQL = @SSQL + 'AND A.SMatUsl=''' + @MatUsl + ''' '        
  13874.        If @Sifra_Art_Od IS NOT NULL 
  13875.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  13876.        If @Sifra_Art_Do IS NOT NULL 
  13877.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  13878.     If @Sifra_Dok Is NOT NULL
  13879.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  13880.        If @Sifra_OE Is NOT Null
  13881.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  13882.     If @KoiOE Is Not Null
  13883.         SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  13884.     If @KFSifra_Prim Is Null
  13885.         Begin
  13886.             If @Sifra_Prim Is Not Null
  13887.                 Set @SSQL = @SSQL + 'And D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  13888.         End
  13889.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  13890.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  13891.     If @Sifra_Pat IS NOT NULL
  13892.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  13893. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  13894.     If @NemaPatnik = 'D'
  13895.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) ' 
  13896.     If @Broj_Nal_Od Is NOT Null
  13897.        SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  13898.        If @Broj_Nal_Do Is NOT Null
  13899.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  13900.     If @Broj_Dok_Od Is NOT Null
  13901.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  13902.        If @Broj_Dok_Do Is NOT Null
  13903.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  13904.     If @PoKojDatum = 'V'
  13905.           Begin
  13906.         If @Datum_Dok_Od Is NOT Null
  13907.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13908.         If @Datum_Dok_Do Is NOT Null
  13909.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13910.           End
  13911.     Else
  13912.           Begin
  13913.         If @Datum_Dok_Od Is NOT Null
  13914.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  13915.            If @Datum_Dok_Do Is NOT Null
  13916.              SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  13917.           End
  13918.     If @Datum_Nal_Od Is NOT Null
  13919.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  13920.        If @Datum_Nal_Do Is NOT Null
  13921.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  13922.     If @Sifra_Kup Is NOT Null
  13923.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  13924. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  13925.     If @NemaKomint = 'D'
  13926.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) '  
  13927.        If @Sifra_Obj Is NOT Null
  13928.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  13929.     If @Sifra_Za Is NOT Null
  13930.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  13931.     If @VlIzl Is NOT Null
  13932.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  13933.        If @Kto IS NOT NULL
  13934.               Set @SSQL=@SSQL+'AND (A.Kto='''+@Kto+''') '
  13935.        If @Kto_Anal IS NOT NULL
  13936.               Set @SSQL=@SSQL+'AND (A.Kto_Anal='''+@Kto_Anal+''') '
  13937.        If @Sifra_Gr IS NOT NULL
  13938.               Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  13939.        If @Sifra_Podg IS NOT NULL
  13940.               Set @SSQL=@SSQL+'AND (A.Sifra_Podg='''+@Sifra_Podg+''') '
  13941.        If @Lokacija IS NOT NULL
  13942.               Set @SSQL=@SSQL+'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  13943.        If @Sifra_Mest Is NOT Null
  13944.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  13945.        If @Uces_Od Is NOT Null
  13946.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  13947.        If @Uces_Do Is NOT Null
  13948.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  13949.        If @Sifra_Drg Is NOT Null
  13950.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  13951.        If @Drugo1 Is NOT Null
  13952.               SET @SSQL = @SSQL + 'AND A.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  13953.        If @Drugo2 Is NOT Null
  13954.               SET @SSQL = @SSQL + 'AND A.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  13955.        If @Drugo3 Is NOT Null
  13956.               SET @SSQL = @SSQL + 'AND A.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  13957.        If @Drugo4 Is NOT Null
  13958.               SET @SSQL = @SSQL + 'AND A.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  13959.        If @Drugo5 Is NOT Null
  13960.               SET @SSQL = @SSQL + 'AND A.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  13961.        If @Drugo6 Is NOT Null
  13962.               SET @SSQL = @SSQL + 'AND A.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  13963.        If @Drugo7 Is NOT Null
  13964.               SET @SSQL = @SSQL + 'AND A.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  13965.        If @Sifra_Oper IS NOT NULL
  13966.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  13967.     If @Koi_Gradovi Is Not NULL    
  13968.         Begin
  13969.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  13970.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  13971.         End
  13972.     If @KDrugo1 Is NOT NULL
  13973.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')
  13974.               Or (KO.KDrugo1 Is Null And K.KDrugo1 = ' + Cast(@KDrugo1 As Varchar(6)) + ')) '
  13975.     If @KDrugo2 Is NOT NULL
  13976.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')
  13977.               Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@KDrugo2 As Varchar(6)) + ')) '
  13978.     If @KDrugo3 Is NOT NULL
  13979.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')
  13980.               Or (KO.KDrugo3 Is Null And K.KDrugo3 = ' + Cast(@KDrugo3 As Varchar(6)) + ')) '
  13981.     If @KDrugo4 Is NOT NULL
  13982.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 As Varchar(6)) + ')
  13983.               Or (KO.KDrugo4 Is Null And K.KDrugo1 = ' + Cast(@KDrugo4 As Varchar(6)) + ')) '
  13984.     If @KDrugo5 Is NOT NULL
  13985.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')
  13986.               Or (KO.KDrugo5 Is Null And K.KDrugo5 = ' + Cast(@KDrugo5 As Varchar(6)) + ')) '
  13987.     If @KDrugo6 Is NOT NULL
  13988.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')
  13989.               Or (KO.KDrugo6 Is Null And K.KDrugo6 = ' + Cast(@KDrugo6 As Varchar(6)) + ')) '
  13990.     If @KDrugo7 Is NOT NULL
  13991.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')
  13992.               Or (KO.KDrugo7 Is Null And K.KDrugo7 = ' + Cast(@KDrugo7 As Varchar(6)) + ')) '
  13993.     If @Sifra_Reg Is NOT NULL
  13994.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  13995.               Or (KO.Sifra_Reg Is Null And K.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  13996.  
  13997.  
  13998.        If @Sifra_Prev IS NOT NULL
  13999.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  14000.        If @Spremil IS NOT NULL
  14001.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  14002.     If @DogBr Is NOT Null
  14003.         SET @SSQL = @SSQL + 'AND D.DogBr=''' + @DogBr + ''' '
  14004.     --------------------------------------------------------- dod 30.08.2006 --------------------------------------------------------------------------------------------------
  14005.     If @SoUcesOsn = 'D' 
  14006.         Set @SSQL = @SSQL + ' And ((S.UcesOsn > ' + Cast(@UcesOsnNad as varchar(10)) + ' And S.UcesOsn <= ' + Cast(@UcesOsnDo as varchar(10)) + ') '
  14007.     If @SoUcesKol = 'D' 
  14008.         If @SoUcesOsn <> 'D'  Or @SoUcesOsn Is Null
  14009.             Set @SSQL = @SSQL + ' And ((S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  14010.         Else
  14011.             Set @SSQL = @SSQL + ' Or (S.UcesKol > ' + Cast(@UcesKolNad as varchar(10)) + ' And S.UcesKol <= ' + Cast(@UcesKolDo as varchar(10)) + ') '
  14012.     If @SoUcesDod = 'D'  
  14013.         If (@SoUcesOsn <> 'D' Or @SoUcesOsn Is Null) And (@SoUcesKol <> 'D' Or @SoUcesKol Is Null)
  14014.             Set @SSQL = @SSQL + ' And ((S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  14015.         Else
  14016.             Set @SSQL = @SSQL + ' Or (S.UcesDod > ' + Cast(@UcesDodNad as varchar(10)) + ' And S.UcesDod <= ' + Cast(@UcesDodDo as varchar(10)) + ') '
  14017.     If @SoUcesOsn = 'D' Or @SoUcesKol = 'D' Or @SoUcesDod = 'D'
  14018.         Set @SSQL = @SSQL + ' ) '
  14019.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  14020.     If @VkUcesNad <> 0
  14021.     BEGIN
  14022.         IF @VkUcesNad = -1
  14023.           Set @SSQL = @SSQL + ' And S.DokCena = 0.0 '
  14024.         else
  14025.           Set @SSQL = @SSQL + ' And S.Uces >= ' + Cast(@VkUcesNad as varchar(10)) + ' '
  14026.     end
  14027.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  14028.     Set @SSQL = @SSQL    + 'ORDER BY D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok '
  14029. --print @SSQL
  14030.    EXEC(@SSQL)
  14031.  
  14032.  
  14033.  
  14034. Go
  14035. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_rabnal]'))
  14036. drop procedure [dbo].[sp_anal_rabnal]
  14037.  
  14038. Go
  14039.  
  14040.  
  14041.  
  14042. CREATE     PROCEDURE sp_Anal_RabNal
  14043.     @Sifra_OERab    smallint = Null,
  14044.     @Datum_Od    smalldatetime = Null,
  14045.     @Datum_Do    smalldatetime = Null,
  14046.     @BrojRabNOd    int = Null,
  14047.     @BrojRabNDo    Int = Null,
  14048.     @Sifra_kupOd    char(6) = Null,
  14049.     @Sifra_kupDo    char(6) = Null,
  14050.     @KoiRN    char(1) = 'S',        -- O - Otvoreni,        Z - Zatvoreni          S - Site
  14051.     @Standardni    char(1) = Null,    -- D - Standardni,    N - Razlozuvanje    S - Site
  14052.     @Datum_Vnes_Od    smalldatetime = Null,
  14053.     @Datum_Vnes_Do    smalldatetime = Null,
  14054.     @Stat_RabNal        varchar(30) = Null,
  14055.     @Sifra_Rab        smallint = Null,
  14056.         @Broj_Proekt int = null    
  14057.  
  14058.  AS
  14059.  
  14060.     --Select RN.* from RabNal RN
  14061.     DECLARE @SSQL Varchar(4000)
  14062.     SET @SSQL= 'SELECT RN.RabNalID, RN.Sifra_OERab, RN.Broj_RabN, RN.Alt_BrojRN, RN.Opis, RN.Datum_Otv, RN.Datum_Zatv, RN.Dogovor, RN.Sifra_Kup, RN.Datum_Dog, 
  14063.             RN.Datum_Rok, RN.Zabel, RN.Sifra_OEPrim, S.Sifra_Art, S.Kolic, S.Cena, K.ImeArt, RN.Dat_Ocek_Zatv, RN.Sema_Fix, RN.Sema_Surov_Gotov,
  14064.             RN.Datum_Vnes, RN.Stat_RabNal, S.KontrSer, K.EdMera, Kom.ImeKup, S.SRNId
  14065.             FROM RabNal RN
  14066.             Left Outer Join StaRabNal S On S.RabNalID=RN.RabNalID 
  14067.             Left Outer Join Katart K On K.Sifra_Art = S.Sifra_Art
  14068.             Left Outer Join Komint Kom On RN.Sifra_Kup = Kom.Sifra_Kup
  14069.             WHERE 1=1 '
  14070.     If @Sifra_OERab is Not Null
  14071.         SET @SSQL = @SSQL + 'And RN.Sifra_OERab =' + cast(@Sifra_OERab as varchar(6)) +' '
  14072.     If @Datum_Od Is Not Null
  14073.         SET @SSQL = @SSQL + 'And RN.Datum_Otv >=''' + cast(@Datum_Od as varchar(35)) + ''' ' 
  14074.     If @Datum_Do Is Not Null
  14075.         SET @SSQL = @SSQL + 'And RN.Datum_Otv <=''' + cast(@Datum_Do as varchar(35)) + ''' '
  14076.     If @BrojRabNOd Is Not Null
  14077.         SET @SSQL = @SSQL + 'And RN.Broj_RabN >= ' + cast(@BrojRabNOd as varchar(6)) +  ' ' 
  14078.     If @BrojRabNDo Is Not Null
  14079.         SET @SSQL = @SSQL + 'And RN.Broj_RabN <= ' + cast(@BrojRabNDo as varchar(6)) +  ' ' 
  14080.     If @Sifra_kupOd Is Not Null
  14081.         SET @SSQL = @SSQL + 'And RN.Sifra_kup >= ' + @Sifra_kupOd + ' '
  14082.      If @Sifra_kupDo Is Not Null
  14083.         SET @SSQL = @SSQL + 'And RN.Sifra_kup <= ' + @Sifra_kupDo + ' '    
  14084.     If @Datum_Vnes_Od Is Not Null
  14085.         SET @SSQL = @SSQL + 'And RN.Datum_Vnes >''' + cast(@Datum_Vnes_Od as varchar(35)) + ''' ' 
  14086.     If @Datum_Vnes_Do Is Not Null
  14087.         SET @SSQL = @SSQL + 'And RN.Datum_Vnes <=''' + cast(@Datum_Vnes_Do + 1 as varchar(35)) + ''' '
  14088.     If @Stat_RabNal Is Not Null
  14089.         SET @SSQL = @SSQL + 'And RN.Stat_RabNal In (' + @Stat_RabNal + ') '
  14090.     If @Sifra_Rab is Not Null
  14091.         SET @SSQL = @SSQL + 'And RN.Sifra_Rab =' + cast(@Sifra_Rab as varchar(6)) +' '
  14092.     If @KoiRN = 'Z'
  14093.         SET @SSQL = @SSQL + 'And RN.Datum_Zatv Is Not Null '
  14094.     Else If @KoiRN = 'O'
  14095.         SET @SSQL = @SSQL + 'And RN.Datum_Zatv Is Null '
  14096.     If @Standardni = 'D'
  14097.         SET @SSQL = @SSQL + 'And (RN.Pomosen <> ''D'' Or RN.Pomosen is Null) '
  14098.     Else If @Standardni = 'N'
  14099.         SET @SSQL = @SSQL + 'And RN.Pomosen = ''D'' '
  14100.         If @Broj_Proekt Is Not Null
  14101.         SET @SSQL = @SSQL + 'And RN.Broj_Proekt = ' + cast(@Broj_Proekt as varchar(9)) +  ' ' 
  14102.     
  14103.     Exec (@SSQL)
  14104.  
  14105.     RETURN @@ERROR
  14106.  
  14107.  
  14108.  
  14109.  
  14110.  
  14111.  
  14112. Go
  14113. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_anal_wms_dok]'))
  14114. drop procedure [dbo].[sp_anal_wms_dok]
  14115.  
  14116. Go
  14117.  
  14118.  
  14119.  
  14120.  
  14121. CREATE           PROCEDURE sp_Anal_WMS_Dok
  14122.     @Sifra_Oe        smallint= Null,
  14123.     @KoiOe                varchar(6)= Null,
  14124.     @Datum_Od        smalldatetime= Null,
  14125.     @Datum_Do        smalldatetime= Null,
  14126.     @Sifra_Art_Od        varchar(20)= Null,
  14127.         @Sifra_Art_Do        varchar(20)= Null,
  14128.     @LotBroj        varchar(50)= Null,
  14129.     @Lokacija        varchar(10) = Null,
  14130.     @Sifra_KatStatus    smallint = Null,
  14131.     @RokRed_Od        varchar(6) = Null,
  14132.     @RokRed_Do        varchar(6) = Null,
  14133.     @Sifra_Kup        varchar(6) = Null,
  14134.         @Sifra_Oe_WHM        smallint,
  14135.         @Sifra_Oper    varchar(20) = Null,
  14136.         @TipDok    varchar(200) = Null
  14137. AS
  14138.     --Set @PrethVlez=0
  14139.     --Set @PrethIzlez=0
  14140.     Declare @SSQL as varchar(8000)
  14141.     --If @Datum_Od Is Not Null
  14142.     --Begin
  14143.     --    Create Table #Tab
  14144.     --    (
  14145.     --        Vlez        decimal(18,6),
  14146.     --        Izlez        decimal(18,6)
  14147.     --    )
  14148.     --    Set @SSQL = ' Select Sum(Case When M.VlIzl = ''V'' Then M.Kolic Else 0 End) Vlez,
  14149.     --            Sum(Case When M.VlIzl = ''I'' Then M.Kolic Else 0 End) Izlez
  14150.     --            From MagStavr M
  14151.     --            Inner Join Dokr D On D.DokrID=M.DokrID
  14152.     --            Where D.Datum_Dok < ''' + Cast(@Datum_Od as varchar(30)) + ''' 
  14153.     --            And M.Sifra_Art = ''' + @Sifra_Art + ''' '
  14154.     --    If @Sifra_Oe Is Not Null
  14155.     --        Set @SSQL = @SSQL + ' And M.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  14156.     --If @KoiOE Is Not Null
  14157.         --    Set @SSQL = @SSQL + ' And M.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  14158.         --If @LotBroj Is Not Null
  14159.         --    Set @SSQL = @SSQL + ' And M.LotBr = ''' + @LotBroj + ''' '
  14160.         --If @Lokacija Is Not Null
  14161.         --    Set @SSQL = @SSQL + ' And M.Lokacija = ''' + @Lokacija + ''' '
  14162.         --If @Sifra_KatStatus Is Not Null
  14163.         --    Set @SSQL = @SSQL + ' And M.Sifra_KatStatus = ' + Cast(@Sifra_KatStatus as varchar(6)) + ' '
  14164.         --If @RokRed_Od Is Not Null
  14165.         --    Set @SSQL = @SSQL + ' And M.RokRed >= ''' + @RokRed_Od + ''' '
  14166.         --If @RokRed_Do Is Not Null
  14167.         --    Set @SSQL = @SSQL + ' And M.RokRed <= ''' + @RokRed_Do + ''' '
  14168.         --If @Sifra_Kup Is Not Null
  14169.         --    Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  14170.         --Insert Into #Tab Exec(@SSQL)
  14171.         --Select @PrethVlez=Vlez, @PrethIzlez=Izlez 
  14172.         --From #Tab
  14173.     --End
  14174.     Set @SSQL = ' Select M.Sifra_Oe, O.ImeOrg, M.Sifra_Art, A.ImeArt, M.SpecOzn, A.EdMera, M.VlIzl, M.Kolic, 
  14175.             D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  14176.             M.Lokacija, M.LotBr, M.RokRed, M.Sifra_KatStatus, KS.ImeKatStatus, M.Sifra_KatPak, KP.ImeKatPak,
  14177.             RN.Sifra_OeRab, RN.Broj_RabN, D.Sifra_Oper, M.Datum_Vnes, (M.Kolic*A.BTezina/1000) BTezina, M.Rbr, M.Sifra_Oe_WHM            
  14178.         From MagStavr M
  14179.         Inner Join Dokr D On D.DokrID=M.DokrID
  14180.         inner join Katart A ON A.Sifra_Art = M.Sifra_Art
  14181.         Left Outer Join DokRabNal DRN On DRN.DokrID=D.DokrID
  14182.         Left Outer Join RabNal RN On RN.RabNalID=DRN.RabNalID
  14183.         Inner Join Orged O On O.Sifra_Oe = M.Sifra_Oe 
  14184.         Left Outer Join Komint K On K.Sifra_kup = D.Sifra_Kup
  14185.         Left Outer Join KObjekti KO On KO.Sifra_kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  14186.         Left Outer Join KatStatus KS On KS.Sifra_KatStatus=M.Sifra_KatStatus
  14187.         Left Outer Join TipKatPakuv KP On KP.Sifra_KatPak=M.Sifra_KatPak
  14188.         Where 1=1 '
  14189.         If @Sifra_Oe_WHM Is Not Null
  14190.         Set @SSQL = @SSQL + ' And M.Sifra_Oe_WHM = ' + cast(@Sifra_Oe_WHM as varchar(6)) + ' '
  14191.     If @Sifra_Art_Od IS NOT NULL 
  14192.         Set @SSQL = @SSQL + 'AND M.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  14193.        If @Sifra_Art_Do IS NOT NULL 
  14194.         Set @SSQL = @SSQL + 'AND M.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  14195.         If @Sifra_Oe Is Not Null
  14196.         Set @SSQL = @SSQL + ' And M.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  14197.     If @KoiOE Is Not Null
  14198.         Set @SSQL = @SSQL + ' And M.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  14199.     If @Datum_Od Is Not Null
  14200.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  14201.     If @Datum_Do Is Not Null
  14202.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  14203.     If @LotBroj Is Not Null
  14204.         Set @SSQL = @SSQL + ' And M.LotBr = ''' + @LotBroj + ''' '
  14205.     If @Lokacija Is Not Null
  14206.         Set @SSQL = @SSQL + ' And M.Lokacija = ''' + @Lokacija + ''' '
  14207.     If @Sifra_KatStatus Is Not Null
  14208.         Set @SSQL = @SSQL + ' And M.Sifra_KatStatus = ' + Cast(@Sifra_KatStatus as varchar(6)) + ' '
  14209.     If @RokRed_Od Is Not Null
  14210.         Set @SSQL = @SSQL + ' And M.RokRed >= ''' + @RokRed_Od + ''' '
  14211.     If @RokRed_Do Is Not Null
  14212.         Set @SSQL = @SSQL + ' And M.RokRed <= ''' + @RokRed_Do + ''' '
  14213.     If @Sifra_Kup Is Not Null
  14214.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  14215.     If @Sifra_Oper IS NOT NULL
  14216.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  14217.         If @TipDok IS NOT NULL
  14218.         Set @SSQL = @SSQL + ' And D.Sifra_Dok IN (' + @TipDok + ') '
  14219.         Set @SSQL = @SSQL + ' Order By D.Datum_Dok,M.Sifra_Oe '
  14220.     Exec (@SSQL)
  14221.  
  14222.  
  14223.  
  14224.  
  14225.  
  14226. Go
  14227. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analdokvozila]'))
  14228. drop procedure [dbo].[sp_analdokvozila]
  14229.  
  14230. Go
  14231.  
  14232. CREATE    PROCEDURE [dbo].[sp_AnalDokVozila]
  14233.     @Sifra_OE     Smallint = Null,    
  14234.     @KoiOE         Varchar(2000) = Null,    
  14235.     @Sifra_Nal     Smallint=Null,    
  14236.     @Sifra_Dok_List varchar(200) = Null,
  14237.     @Broj_Nal_Od     Int=Null,    --
  14238.     @Broj_Nal_Do     Int=Null,    --
  14239.     @Datum_Nal_Od  Smalldatetime=Null,    --
  14240.     @Datum_Nal_Do  Smalldatetime=Null,    --
  14241.     @Broj_Dok_Od     Int=Null,    --
  14242.     @Broj_Dok_Do     Int=Null,    --
  14243.     @Datum_Dok_Od Smalldatetime=Null,    --
  14244.     @Datum_Dok_Do Smalldatetime=Null,    --
  14245.     @Sifra_Kup     Char(6)=Null,    --
  14246.     @Sifra_Obj    smallint = Null,
  14247.     @Sifra_Mest    int = Null,
  14248.  
  14249.     @Sifra_Art    varchar(20) = Null,
  14250.     @KontrSer    varchaR(30) = Null,
  14251.     @KontrSerExt    varchaR(30) = Null,
  14252.     @AltKontrSer    varchaR(30) = Null,
  14253.  
  14254.     -- Po dogovor, narednive 5 polinja se po default sekogass 'N'
  14255.     @SiteVlIzlDali    Char(1) = 'N',
  14256.     @VlezDali    Char(1) = 'N',
  14257.     @IzlezDali    Char(1) = 'N',
  14258.     @VlezPrenDali    Char(1) = 'N',
  14259.     @IzlezPrenDali    Char(1) = 'N',
  14260.  
  14261.     @Sifra_Nivo     Char(2) = Null,
  14262.     @Sifra_Pat    smallint = Null,
  14263.     @Sifra_Oper    varchar(20) = Null,
  14264.     @PoKojDatum    char(1) = 'D'     -- D - Datum_Dok,      V - Datum_Vnes
  14265.  
  14266. AS
  14267.  
  14268.     If @PoKojDatum = 'V' 
  14269.             If @Datum_Dok_Do Is Not Null
  14270.             Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  14271.  
  14272.        Declare @SSQL Varchar(8000)
  14273.     SET @SSQL = 'SELECT D.DokrID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  14274.                 dbo.fn_VratiDatum(D.Datum_Vnes) Datum_Vnes, dbo.fn_VratiVreme(D.Datum_Vnes) Vreme_Vnes, 
  14275.                 D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, 
  14276.                 D.Sifra_Kup, K.ImeKup, K.Smesto, D.Sifra_Obj, KO.ImeObj, KO.Smesto as ObjSmesto,
  14277.                 D.Rok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  14278.                 TD.ImeDok, O.ImeOrg, D.Sifra_Oper, D.Sifra_OpIz, D.Datum_Izm , D.Datum_Vnes as Datum_Vnes_Cel,
  14279.                 TD.DaliFisc, D.Pec_Fisc, D.Dat_Pec_Fisc,
  14280.                 MS.SpecOzn SerBr, KS.KontrSerExt, KS.AltKontrSer, KS.GOdProiz, KS.Opis, KS.Sifra_3, D3.Ime_3, D2.Sifra_2, D2.Ime_2,
  14281.                 MS.Sifra_Art, Art.ImeArt, D.Sifra_Kor, Kor.ImeKor, TD.Plus_Minus, KS.PotvrdaBr, KS.GarancBr
  14282.                 FROM DOKR D
  14283.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  14284.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  14285.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  14286.                 LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj 
  14287.                 LEFT OUTER JOIN KartKor Kor on Kor.Sifra_oe = 1 and Kor.Sifra_Kor = D.SifrA_Kor
  14288.                 inner Join MagStavr MS on MS.DokrId = D.DokrId
  14289.                 inner join Katart Art on Art.Sifra_Art = MS.Sifra_Art
  14290.                 left outer Join KatSerKlas KS  on MS.Sifra_Art = KS.SifrA_Art and MS.SpecOzn = KS.KontrSer 
  14291.                 left outer join Drugo3 D3 on D3.SifrA_3 = KS.Sifra_3
  14292.                 left outer join Drugo2 D2 on D2.Sifra_2 = Art.Drugo2 '
  14293.     If @Datum_Nal_Od Is Not Null Or @Datum_Nal_Do Is Not Null
  14294.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal '
  14295.     Set @SSQL = @SSQL + ' WHERE 1 = 1 '
  14296.  
  14297.     If @Sifra_Nal Is Not Null
  14298.         SET @SSQL = @SSQL + 'And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  14299.     If @Sifra_Nivo Is Not Null
  14300.         Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  14301.  
  14302.     If @Sifra_Dok_List Is NOT NULL
  14303.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok in (' + @Sifra_Dok_List + ') '
  14304.  
  14305.        If @Sifra_OE Is NOT Null
  14306.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  14307.        If @KoiOE Is NOT Null
  14308.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  14309.  
  14310.     If @Sifra_Pat IS NOT NULL
  14311.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  14312.     If @Broj_Nal_Od Is NOT Null
  14313.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  14314.        If @Broj_Nal_Do Is NOT Null
  14315.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  14316.     If @Broj_Dok_Od Is NOT Null
  14317.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  14318.        If @Broj_Dok_Do Is NOT Null
  14319.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  14320.  
  14321.     if @Sifra_Art is not null
  14322.         SET @SSQL = @SSQL + ' And MS.Sifra_Art = ''' + @Sifra_Art + ''' '
  14323.     if @KontrSer is not null
  14324.         SET @SSQL = @SSQL + ' And MS.SpecOzn = ''' + @KontrSer + ''' '
  14325.     if @KontrSerExt is not null
  14326.         SET @SSQL = @SSQL + ' And KS.KontrSerExt = ''' + @KontrSerExt + ''' '
  14327.     if @AltKontrSer is not null
  14328.         SET @SSQL = @SSQL + ' And KS.AltKontrSer = ''' + @AltKontrSer + ''' '
  14329.  
  14330.     If @PoKojDatum = 'V'
  14331.            Begin
  14332.             If @Datum_Dok_Od Is NOT Null
  14333.                 SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  14334.             If @Datum_Dok_Do Is NOT Null
  14335.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  14336.           End
  14337.     Else
  14338.         Begin
  14339.             If @Datum_Dok_Od Is NOT Null
  14340.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  14341.                If @Datum_Dok_Do Is NOT Null
  14342.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  14343.           End
  14344.  
  14345.     If @Datum_Nal_Od Is NOT Null
  14346.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  14347.        If @Datum_Nal_Do Is NOT Null
  14348.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  14349.     If @Sifra_Kup Is NOT Null
  14350.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  14351.        If @Sifra_Obj Is NOT Null
  14352.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  14353.  
  14354.        If @Sifra_Mest Is NOT Null
  14355.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  14356.        If @Sifra_Oper IS NOT NULL
  14357.               SET @SSQL = @SSQL + 'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  14358.  
  14359.     If @SiteVlIzlDali = 'N'
  14360.     begin
  14361.         Declare @VlIzlSpec as varchaR(200)
  14362.         set @VlIzlSpec = ' and (0 = 1 '
  14363.         if @VlezDali = 'D'
  14364.             SET @VlIzlSpec = @VlIzlSpec + ' or TD.Sifra_Za = ''2'' '
  14365.         if @IzlezDali = 'D'
  14366.             SET @VlIzlSpec = @VlIzlSpec + ' or TD.Sifra_Za = ''1'' '
  14367.         if @VlezPrenDali = 'D'
  14368.             SET @VlIzlSpec = @VlIzlSpec + ' or (TD.Sifra_Za = ''4'' and D.ImaDodatna = ''P'') '
  14369.         if @IzlezPrenDali = 'D'
  14370.             SET @VlIzlSpec = @VlIzlSpec + ' or (TD.Sifra_Za = ''4'' and D.ImaDodatna = ''D'') '
  14371.         SET @VlIzlSpec = @VlIzlSpec + ')'
  14372.     
  14373.         set @SSQL = @SSQL + @VlIzlSpec
  14374.     end
  14375.  
  14376.  
  14377. --print @SSQL
  14378.  
  14379.  
  14380.    EXEC(@SSQL)
  14381.  
  14382.  
  14383.  
  14384.  
  14385.  
  14386.  
  14387.  
  14388.  
  14389.  
  14390.  
  14391.  
  14392.  
  14393.  
  14394.  
  14395.  
  14396.  
  14397.  
  14398. Go
  14399. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analitika_kamlisti]'))
  14400. drop procedure [dbo].[sp_analitika_kamlisti]
  14401.  
  14402. Go
  14403. CREATE PROCEDURE sp_Analitika_KamListi
  14404.     @Sifra_Kup        char(6),
  14405.     @Datum_Kli_Od        smalldatetime,
  14406.     @Datum_Kli_Do        smalldatetime,
  14407.     @Broj_Od        int,
  14408.     @Broj_Do        int
  14409. AS
  14410.     Declare @SSQL as varchar(8000)
  14411.     Set @SSQL = ' Select KL.Broj, KL.Sifra_Kup, Kup.ImeKup, KL.Opis, KL.Datum_Kli, KL.Datum_Vnes, KL.Oper_Vnes, KL.Datum_Izm, KL.Oper_Izm,
  14412.                 Count(KS.KlisID) BrFri, Sum(KS.Iznos) IznosFri
  14413.             From KlistaD KL
  14414.             Left Outer Join Klista KS On KS.Broj=KL.Broj
  14415.             Left Outer Join Komint Kup On Kup.Sifra_Kup=KL.Sifra_Kup
  14416.             Where 1=1 '
  14417.     If @Sifra_Kup Is Not Null
  14418.         Set @SSQL = @SSQL + ' And KL.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  14419.     If @Datum_Kli_Od Is Not Null
  14420.         Set @SSQL = @SSQL + ' And KL.Datum_Kli >= ''' + Cast(@Datum_Kli_Od as varchar(30)) + ''' '
  14421.     If @Datum_Kli_Do Is Not Null
  14422.         Set @SSQL = @SSQL + ' And KL.Datum_Kli <= ''' + Cast(@Datum_Kli_Do as varchar(30)) + ''' '
  14423.     If @Broj_Od Is Not Null
  14424.         Set @SSQL = @SSQL + ' And KL.Broj >= ''' + Cast(@Broj_Od as varchar(6)) + ''' '
  14425.     If @Broj_Do Is Not Null
  14426.         Set @SSQL = @SSQL + ' And KL.Broj <= ''' + Cast(@Broj_Do as varchar(6)) + ''' '
  14427.     Set @SSQL = @SSQL + ' Group By KL.Broj, KL.Sifra_Kup, Kup.ImeKup, KL.Opis, KL.Datum_Kli, KL.Datum_Vnes, KL.Oper_Vnes, KL.Datum_Izm, KL.Oper_Izm '
  14428.     Exec(@SSQL)
  14429.  
  14430.  
  14431.  
  14432. Go
  14433. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analitika_planceni]'))
  14434. drop procedure [dbo].[sp_analitika_planceni]
  14435.  
  14436. Go
  14437. CREATE  PROCEDURE sp_Analitika_PlanCeni
  14438.     @Sifra_OE    smallint,
  14439.     @Koi_Oe    char(6) = Null,
  14440.     @Datum    smalldatetime,
  14441.     @Sifra_Art_Od    varchar(20) = Null,
  14442.     @Sifra_Art_Do    varchar(20) = Null,
  14443.     @Podred    char(1) = 'D',    -- Po Datum na vazenje,     B - Po Broj na Artikli vo cenovnikot
  14444.     @IzmNaDatum    char(1)= Null    -- Ceni izmeneti samo na toj datum
  14445. AS
  14446.     Declare @SSQL as varchar(8000)
  14447.     If @Sifra_Oe Is Not Null And @Koi_Oe Is Null
  14448.     Begin
  14449.         SELECT @Koi_Oe = G.Sif_GrOrg FROM GrOrg G Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @Sifra_OE WHERE G.ZaedPlanCeni='D'
  14450.         If @Koi_Oe Is Null
  14451.             Set @Koi_Oe = ' '
  14452.     End
  14453.     Set @SSQL = ' Select Vazi_Od Dat_Cenovnik, Count(Distinct Sifra_Art) BrArtikli
  14454.             From CeniPlanski 
  14455.             Where 1=1 ' 
  14456.     If @Koi_Oe Is Not Null 
  14457.         Set @SSQL = @SSQL + ' And Sif_GrOrg = ''' + @Koi_Oe + ''' '
  14458.     If @Datum Is Not Null 
  14459.     Begin
  14460.         If @IzmNaDatum = 'D' 
  14461.             Set @SSQL = @SSQL + ' And Vazi_Od = ''' + Cast(@Datum as varchar(30)) + ''' '
  14462.         Else
  14463.             Set @SSQL = @SSQL + ' And Vazi_Od <= ''' + Cast(@Datum as varchar(30)) + ''' '
  14464.     End
  14465.     If @Sifra_Art_Od Is Not Null
  14466.         Set @SSQL = @SSQL + ' And Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  14467.     If @Sifra_Art_Do Is Not Null
  14468.         Set @SSQL = @SSQL + ' And Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  14469.     Set @SSQL = @SSQL + ' Group By Vazi_Od '
  14470.     If @Podred = 'D'
  14471.         Set @SSQL = @SSQL + ' Order By Vazi_Od '
  14472.     Else If @Podred = 'B'
  14473.         Set @SSQL = @SSQL + ' Order By Count(Distinct Sifra_Art) Desc '
  14474.     Exec(@SSQL)
  14475.  
  14476.  
  14477.  
  14478. Go
  14479. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analitika_rasporedispor]'))
  14480. drop procedure [dbo].[sp_analitika_rasporedispor]
  14481.  
  14482. Go
  14483. CREATE PROCEDURE sp_Analitika_RasporedIspor
  14484.     @Datum_Raspor_Od    smalldatetime,
  14485.     @Datum_Raspor_Do    smalldatetime
  14486. AS
  14487.     Declare @SSQL as varchar(8000)
  14488.     Set @SSQL = ' Select R.Sifra_Oe, R.Sifra_Nar, N.ImeNar,R.Broj_Raspored, R.Datum_Raspor, R.Broj_Nar, 
  14489.             R.Proknizen, R.Broj_Nar_Lista, R.Tip_Raspored, R.ZaKadeRaspored
  14490.         From RasporedIspor R
  14491.         Inner Join TipNarac N On N.Sifra_Nar=R.Sifra_Nar
  14492.         Where 1=1 '
  14493.     If @Datum_Raspor_Od Is Not Null
  14494.         Set @SSQL = @SSQL + ' And R.Datum_Raspor >= ''' + Cast(@Datum_Raspor_Od as varchar(30)) + ''' '
  14495.     If @Datum_Raspor_Do Is Not Null
  14496.         Set @SSQL = @SSQL + ' And R.Datum_Raspor <= ''' + Cast(@Datum_Raspor_Do as varchar(30)) + ''' '
  14497.     Exec(@SSQL)
  14498.  
  14499.  
  14500.  
  14501. Go
  14502. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analiza_abc]'))
  14503. drop procedure [dbo].[sp_analiza_abc]
  14504.  
  14505. Go
  14506.  
  14507.  
  14508.  
  14509.  
  14510.  
  14511.  
  14512. CREATE             PROCEDURE sp_Analiza_ABC
  14513.     @Datum_Od     Smalldatetime,
  14514.     @Datum_Do     Smalldatetime,
  14515.     @Sifra_OE     varchar(600) = NULL,
  14516.     @KF_OE        char(1)  = 'N',
  14517.     @Sifra_Podg   varchar(1000) = NULL,
  14518.     @KF_Podg      char(1) = 'N',
  14519.     @Sifra_Gr     varchar(200) = NULL,
  14520.     @KF_Gr        char(1) = 'N',
  14521.     @Kto          varchar(200) = NULL,
  14522.     @KF_Kto       char(1) = 'N',
  14523.     @Sifra_Brand  varchar(200) = NULL,
  14524.     @KF_Brand     char(1) = 'N',
  14525.     @Lokacija     varchar(10) = NULL,
  14526.     @KF_Lokacija  char(1) = 'N',
  14527.     @SoDanok      Char(1) = 'D',
  14528.     @NegZalihaKako0  char(1) = 'D',
  14529.     @TekZaliha    char(1) = 'D',
  14530.     @IskluciKup   varchar(200) = '660660, 660663, 021000',        --ova ne se koristi
  14531.     @TipDokProd   varchar(200) = '100,101,60',
  14532.     @Kolku        int = NULL,
  14533.     @So_NulaProd    char(1)='D',
  14534.     @BazaPreth    varchar(20) = Null,
  14535.     @DobavOd    char(1) = 'K'
  14536.  
  14537. AS
  14538.     CREATE TABLE #TmpArt
  14539.     (
  14540.         Sifra_Art varchar(20), 
  14541.         ImeArt varchar(40)
  14542.     )    
  14543.     CREATE NONCLUSTERED INDEX IX_TmpArt ON #TmpArt
  14544.         (Sifra_Art) ON [PRIMARY]
  14545.  
  14546.     Create Table #TmpZal
  14547.     (    
  14548.         Sifra_Art  Varchar(20), 
  14549.         Kolicina   Decimal(18,6),
  14550.         Vrednost Decimal(18, 6)    
  14551.     )
  14552.     CREATE NONCLUSTERED INDEX IX_TmpZal ON #TmpZal
  14553.         (Sifra_Art) ON [PRIMARY]
  14554.  
  14555.     Declare @SSQL Varchar(8000)
  14556.     Declare @SSQLUsl Varchar(2000) 
  14557.     Declare @SOE Varchar(2000) 
  14558.     Declare @SOsn Varchar(2000) 
  14559.     SET @SSQLUsl = ''
  14560.     SET @SOE = ''
  14561.     SET @SOsn = ''
  14562.  
  14563.     If @Sifra_OE Is Not NULL    
  14564.        Begin
  14565.         If @KF_OE = 'N'
  14566.              Set @SOE = @SOE + 'AND S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  14567.         Else
  14568.                Set @SOE = @SOE + 'AND S.Sifra_OE  NOT IN (' + @Sifra_OE  + ') '
  14569.         End
  14570.     If @Sifra_Podg Is Not NULL
  14571.         Begin
  14572.         If @KF_Podg = 'N'
  14573.                 Set @SOsn = @SOsn + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  14574.         Else
  14575.             Set @SOsn = @SOsn + 'And K.Sifra_Podg NOT IN (' + @Sifra_Podg  + ') '
  14576.         End
  14577.     If @Sifra_Gr Is Not NULL
  14578.         Begin
  14579.         If @KF_Gr = 'N'
  14580.                 Set @SOsn = @SOsn + 'And P.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  14581.         Else
  14582.             Set @SOsn = @SOsn + 'And P.Sifra_Gr NOT IN (' + @Sifra_Gr  + ') '
  14583.         End
  14584.     If @Sifra_Brand Is Not NULL
  14585.         Begin
  14586.         If @KF_Brand = 'N'
  14587.                 Set @SOsn = @SOsn + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  14588.         Else
  14589.             Set @SOsn = @SOsn + 'And K.Sifra_Drg NOT IN (' + @Sifra_Brand  + ') '
  14590.         End
  14591.     If @Lokacija Is Not NULL
  14592.     Begin
  14593.         If @KF_Lokacija  = 'N'
  14594.             Set @SOsn = @SOsn + 'And K.Lokacija = ''' + @Lokacija + ''' '
  14595.         Else
  14596.             Set @SOsn = @SOsn + 'And K.Lokacija <> ''' + @Lokacija + ''' '
  14597.     End
  14598.     If @Kto Is Not NULL
  14599.     Begin
  14600.         If @DobavOd = 'K'
  14601.         Begin
  14602.             If @KF_Kto = 'N'
  14603.                     Set @SOsn = @SOsn + 'And K.Kto IN (' + @Kto  + ') '
  14604.             Else
  14605.                 Set @SOsn = @SOsn + 'And K.Kto NOT IN (' + @Kto  + ') '
  14606.         End                
  14607.         Else
  14608.         Begin
  14609.             If @KF_Kto = 'N'
  14610.                     Set @SOsn = @SOsn + 'And S.Dobav IN (' + @Kto  + ') '
  14611.             Else
  14612.                 Set @SOsn = @SOsn + 'And S.Dobav NOT IN (' + @Kto  + ') '
  14613.         End
  14614.     End
  14615.  
  14616.     If @DobavOd = 'K'
  14617.         SET @SSQL = 'SELECT K.Sifra_Art, K.ImeArt 
  14618.                 FROM KatArt K '
  14619.     Else
  14620.         SET @SSQL = 'SELECT Distinct S.Sifra_Art, K.ImeArt 
  14621.                 FROM Stavr S 
  14622.                 Inner Join KatArt K On K.Sifra_Art = S.Sifra_Art '
  14623.     IF @Sifra_Gr is Not NULL
  14624.         SET @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.SifRa_Podg '
  14625.     SET @SSQL = @SSQL + ' WHERE 1=1 ' + @SOsn
  14626.  
  14627.     If @DobavOd <> 'K' Or @DobavOd Is Null
  14628.     Begin
  14629.         Set @SSQL = @SSQL + @SOE
  14630.         If @TipDokProd is NOT null
  14631.             Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  14632.         If @Datum_Od Is Not NULL
  14633.             Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  14634.         If @Datum_Do Is Not NULL
  14635.             Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  14636.     End
  14637.  
  14638.     INSERT INTO #TmpArt EXEC (@SSQL)
  14639.  
  14640. /*
  14641.     If @DobavOd <> 'K' Or @DobavOd Is Null
  14642.     Begin
  14643.         SET @SSQL = 'SELECT K.Sifra_Art, K.ImeArt 
  14644.                 FROM KatArt K '
  14645.         IF @Sifra_Gr is Not NULL
  14646.             SET @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.SifRa_Podg '
  14647.         SET @SSQL = @SSQL + ' WHERE 1=1 ' + @SOsn + ' And K.Sifra_Art Not In (Select Sifra_Art From #TmpArt) '
  14648.  
  14649.         INSERT INTO #TmpArt EXEC (@SSQL)
  14650.     End
  14651. */    
  14652. print @SSQL
  14653.  
  14654.     SET @SSQLUsl = @SOE + @SOsn
  14655.  
  14656.     If @TekZaliha = 'D'
  14657.     Begin
  14658.         Set @SSQL = 'INSERT INTO #TmpZal 
  14659.                 SELECT S.Sifra_Art, SUM(S.Vlez - S.Izlez) as Kolicina, 
  14660.                 SUM((S.Vlez - S.Izlez) * dbo.fn_VratiCena(S.Cena, S.Posn, S.DanCena, '''+ @SoDanok+''')) As Vrednost
  14661.                 FROM Soart S  
  14662.                 Inner Join #TmpArt K On S.Sifra_Art=K.Sifra_Art 
  14663.                 WHERE 1=1 '+@SOE+ ' GROUP BY S.Sifra_Art '
  14664.         EXEC (@SSQL)
  14665.         End
  14666.     Else
  14667.         Begin
  14668.         SET @SSQL = ' SELECT S.Sifra_OE, S.Sifra_Art, 
  14669.             SUM(CASE WHEN S.VlIzl = ''V'' THEN S.Kolic ELSE 0 END) Vlez, 
  14670.             SUM(CASE WHEN S.VlIzl = ''I'' THEN S.Kolic ELSE 0 END) Izlez
  14671.             FROM #TmpArt K 
  14672.             Inner Join Stavr  S On S.Sifra_Art=K.Sifra_Art 
  14673.             WHERE  S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '+ @SOE + ' GROUP BY S.Sifra_OE, S.Sifra_Art '
  14674.  
  14675.         CREATE TABLE #PrometArt
  14676.         ( 
  14677.             Sifra_OE  smallint, 
  14678.             Sifra_Art  Varchar(20),
  14679.             Vlez Decimal (18,4),
  14680.             Izlez Decimal (18,4), 
  14681.             Cena Decimal(18,4)
  14682.         )
  14683.         INSERT INTO #PrometArt (Sifra_OE, Sifra_Art, Vlez, Izlez) EXEC(@SSQL)
  14684.         -- Sega za cenata da vidime
  14685.         UPDATE #PrometArt SET Cena = dbo.fn_CenaDatum (#PrometArt.Sifra_OE,#PrometArt.Sifra_Art,@Datum_Do,@SoDanok)
  14686.  
  14687.         INSERT INTO #TmpZal  SELECT Sifra_Art, SUM(Vlez - Izlez) as Kolicina, SUM((Vlez - Izlez) * Cena) As Vrednost
  14688.         FROM #PrometArt GROUP BY Sifra_Art
  14689.        End        
  14690.     If @NegZalihaKako0 = 'D'
  14691.         UPDATE #TmpZal SET Kolicina = 0, Vrednost = 0 WHERE Kolicina < 0
  14692.  
  14693.     ---Sega prodazba
  14694.     Set @SSQLUsl = ' '
  14695.  
  14696.     CREATE TABLE #TmpProd
  14697.     (
  14698.         Sifra_Art    varchar(20),
  14699.         Kolicina        decimal(18,6),
  14700.         Vr_Krajna    decimal(18,6)
  14701.     )
  14702.     CREATE NONCLUSTERED INDEX IX_TmpProd ON #TmpProd
  14703.         (Sifra_Art) ON [PRIMARY]
  14704.  
  14705.     SET @SSQL = 'SELECT S.Sifra_Art, Sum(S.Kolic) As Kolicina, '
  14706.     If @SoDanok = 'D'
  14707.         Set @SSQL = @SSQL + ' Sum(Case 
  14708.                     When S.DanDokCena=''N'' Then 
  14709.                       (S.Kolic * S.DokCena * (1+S.Posn/100)*(1-S.Uces/100)*(1-D.Kasa/100))
  14710.                     Else
  14711.                       (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  14712.                     End) As Vr_Krajna '
  14713.     Else   -- If @SoDanok = 'N'
  14714.         Set @SSQL = @SSQL + ' Sum(Case 
  14715.                     When S.DanDokCena=''N'' Then 
  14716.                       (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  14717.                     Else
  14718.                       (S.Kolic * S.DokCena / (1+S.Posn/100) * (1-S.Uces/100)*(1-D.Kasa/100))
  14719.                     End) As Vr_Krajna '
  14720.     -- Sum(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa, ''' + @SoDanok+''')) As Vr_Krajna
  14721.     Set @SSQL = @SSQL + ' From Stavr S 
  14722.         Inner Join #TmpArt K On S.Sifra_Art=K.Sifra_Art 
  14723.         Inner Join Dokr D On S.DokrID = D.DokrID 
  14724.         Where S.VlIzl = ''I'' And (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''') '+@SOE
  14725.     If @TipDokProd is NOT null
  14726.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  14727.     If @Datum_Od Is Not NULL
  14728.         Set @SSQLUsl = @SSQLUsl + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  14729.     If @Datum_Do Is Not NULL
  14730.         Set @SSQLUsl = @SSQLUsl + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  14731.     If @Kto Is Not NULL And (@DobavOd <> 'K' Or @DobavOd Is Null)
  14732.         Begin
  14733.         If @KF_Kto = 'N'
  14734.                 Set @SSQLUsl = @SSQLUsl + 'And S.Dobav IN (' + @Kto  + ') '
  14735.         Else
  14736.             Set @SSQLUsl = @SSQLUsl + 'And S.Dobav NOT IN (' + @Kto  + ') '
  14737.         End
  14738.     Set @SSQLUsl = @SSQLUsl +  'Group By S.Sifra_Art'
  14739. print @SSQL+@SSQLUsl
  14740.     INSERT #TmpProd EXEC(@SSQL+@SSQLUsl)
  14741.  
  14742.     --------------------------------------------------------------------------- So Paralelna (Prethodna) baza ----------------------------------------------------------------------------------------------
  14743.     If @BazaPreth Is Not Null
  14744.     Begin
  14745.         If @SoDanok = 'D'
  14746.             Set @SSQL = @SSQL + ' Sum(Case 
  14747.                         When S.DanDokCena=''N'' Then 
  14748.                           (S.Kolic * S.DokCena * (1+S.Posn/100)*(1-S.Uces/100)*(1-D.Kasa/100))
  14749.                         Else
  14750.                           (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  14751.                         End) As Vr_Krajna '
  14752.         Else   -- If @SoDanok = 'N'
  14753.             Set @SSQL = @SSQL + ' Sum(Case 
  14754.                         When S.DanDokCena=''N'' Then 
  14755.                           (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  14756.                         Else
  14757.                           (S.Kolic * S.DokCena / (1+S.Posn/100) * (1-S.Uces/100)*(1-D.Kasa/100))
  14758.                         End) As Vr_Krajna '
  14759.         --Sum(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa, ''' + @SoDanok+''')) As Vr_Krajna
  14760.         Set @SSQL = @SSQL + ' From ' + @BazaPreth + '..Stavr S 
  14761.             Inner Join #TmpArt K On S.Sifra_Art=K.Sifra_Art 
  14762.             Inner Join  ' + @BazaPreth + '..Dokr D On S.DokrID = D.DokrID 
  14763.             Where S.VlIzl = ''I'' And (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''') '+@SOE
  14764.         INSERT #TmpProd EXEC(@SSQL+@SSQLUsl)
  14765.  
  14766.         CREATE TABLE #TmpProdBaza2
  14767.         (    Sifra_Art    varchar(20),
  14768.             Kolicina        decimal(18,6),
  14769.             Vr_Krajna    decimal(18,6)
  14770.         )
  14771.         CREATE NONCLUSTERED INDEX IX_TmpProdB2 ON #TmpProdBaza2
  14772.             (Sifra_Art) ON [PRIMARY]
  14773.     
  14774.         Insert Into #TmpProdBaza2 
  14775.         Select Sifra_Art, Sum(Kolicina), Sum(Vr_Krajna) 
  14776.         From #TmpProd 
  14777.         Group By Sifra_Art 
  14778.  
  14779.         Set @SSQL = 'Select '
  14780.         If @Kolku Is Not NULL
  14781.             Set @SSQL = @SSQL + 'TOP ' + Cast(@Kolku as varchar(6)) + ' '    --K.Iskluci <> ''D'' And 
  14782.         Set @SSQL = @SSQL + 'A.Sifra_Art, A.ImeArt, SA.Kolicina As Zaliha, SA.Vrednost  As Vr_Zaliha, 
  14783.                     P.Vr_Krajna, P.Kolicina
  14784.                     From #TmpArt A
  14785.                     Left Outer Join #TmpProdBaza2 P On A.Sifra_Art=P.Sifra_Art 
  14786.                     Left Outer Join #TmpZal SA On A.Sifra_Art=SA.Sifra_Art 
  14787.                     WHERE 1=1 AND (SA.Kolicina<>0 OR P.Kolicina<>0)'
  14788.         IF @So_NulaProd <> 'D'
  14789.             Set @SSQL = @SSQL + ' AND P.Kolicina <>0 '
  14790.         Set @SSQL = @SSQL + ' Order By P.Vr_Krajna DESC'
  14791.         Exec(@SSQL)
  14792.     End
  14793.     ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  14794.     Else   -- Ako nemame vtora baza
  14795.     Begin 
  14796.         -- Rezultati
  14797.         Set @SSQL = 'Select '
  14798.         If @Kolku Is Not NULL
  14799.             Set @SSQL = @SSQL + 'TOP ' + Cast(@Kolku as varchar(6)) + ' '    --K.Iskluci <> ''D'' And 
  14800.         Set @SSQL = @SSQL + 'A.Sifra_Art, A.ImeArt, SA.Kolicina As Zaliha, SA.Vrednost  As Vr_Zaliha, 
  14801.                     P.Vr_Krajna, P.Kolicina 
  14802.                     From #TmpArt A
  14803.                     Left Outer Join #TmpProd P On A.Sifra_Art=P.Sifra_Art 
  14804.                     Left Outer Join #TmpZal SA On A.Sifra_Art=SA.Sifra_Art 
  14805.                     WHERE 1=1 AND (SA.Kolicina<>0 OR P.Kolicina<>0)'
  14806.         IF @So_NulaProd <> 'D'
  14807.             Set @SSQL = @SSQL + ' AND P.Kolicina <>0 '
  14808.         Set @SSQL = @SSQL +  ' Order By P.Vr_Krajna DESC'    
  14809.  
  14810.         Exec(@SSQL)
  14811.     End
  14812.  
  14813.  
  14814.  
  14815. Go
  14816. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analiza_abc_komint_oe]'))
  14817. drop procedure [dbo].[sp_analiza_abc_komint_oe]
  14818.  
  14819. Go
  14820.  
  14821. CREATE          PROCEDURE sp_Analiza_ABC_Komint_Oe
  14822.     @Datum_Od     Smalldatetime,
  14823.     @Datum_Do     Smalldatetime,
  14824.     @Sifra_OE     varchar(300) = NULL,
  14825.     @KF_OE        char(1)  = 'N',
  14826.     @Sifra_Podg   varchar(200) = NULL,
  14827.     @KF_Podg      char(1) = 'N',
  14828.     @Sifra_Gr     varchar(200) = NULL,
  14829.     @KF_Gr        char(1) = 'N',
  14830.     @Kto          varchar(200) = NULL,
  14831.     @KF_Kto       char(1) = 'N',
  14832.     @Sifra_Brand  varchar(200) = NULL,
  14833.     @KF_Brand     char(1) = 'N',
  14834.     @Lokacija     varchar(10) = NULL,
  14835.     @KF_Lokacija  char(1) = 'N',
  14836.     @SoDanok      Char(1) = 'D',
  14837.     @NegZalihaKako0  char(1) = 'D',  -- Ne se koristi (treba da se napravi prvo zalihata po artikli za da moze da se koristi; momentalno zalihata ja zema vrednosno po OE ili po Komint)
  14838.     @TekZaliha    char(1) = 'D',
  14839.     @IskluciKup   varchar(200) = '660660, 660663, 021000',        --ova ne se koristi
  14840.     @TipDokProd   varchar(200) = '100,101,60',
  14841.     @Kolku        int = NULL,
  14842.     @So_NulaProd    char(1)='D',
  14843.     @BazaPreth    varchar(20) = Null,
  14844.     @PrikaziSto    char(1) = 'D'    -- D - Kto (Dobavuvac)    O - Org.Ed (Market)
  14845. AS
  14846.     Declare @RazlDen as smallint
  14847.     If @Datum_Od Is Not Null And @Datum_Do Is Not Null
  14848.         Set @RazlDen = datediff(Day, @Datum_Od, @Datum_Do)
  14849.     Else 
  14850.         Set @RazlDen = 1
  14851.     Create Table #Rez
  14852.     (
  14853.      Sifra             Varchar(20), 
  14854.      VredZal          Decimal(18, 6),
  14855.      VredProd       Decimal(18, 6)    
  14856.     )
  14857.     CREATE NONCLUSTERED INDEX IX_TmpRez ON #Rez
  14858.         (Sifra) ON [PRIMARY]
  14859.     Declare @SSQL Varchar(8000)
  14860.     Declare @SSQLUsl Varchar(2000) 
  14861.     Declare @SOE Varchar(2000) 
  14862.     Declare @SOsn Varchar(2000) 
  14863.     Declare @SKto Varchar(2000) 
  14864.     SET @SSQLUsl = ''
  14865.     SET @SOE = ''
  14866.     SET @SOsn = ''
  14867.     SET @SKto = ''
  14868.     If @Sifra_OE Is Not NULL    
  14869.         Begin
  14870.         If @KF_OE = 'N'
  14871.              Set @SOE = @SOE + 'AND S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  14872.         Else
  14873.                Set @SOE = @SOE + 'AND S.Sifra_OE  NOT IN (' + @Sifra_OE  + ') '
  14874.         End
  14875.     If @Sifra_Podg Is Not NULL
  14876.         Begin
  14877.         If @KF_Podg = 'N'
  14878.                 Set @SOsn = @SOsn + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  14879.         Else
  14880.             Set @SOsn = @SOsn + 'And K.Sifra_Podg NOT IN (' + @Sifra_Podg  + ') '
  14881.         End
  14882.     If @Sifra_Gr Is Not NULL
  14883.         Begin
  14884.         If @KF_Gr = 'N'
  14885.                 Set @SOsn = @SOsn + 'And P.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  14886.         Else
  14887.             Set @SOsn = @SOsn + 'And P.Sifra_Gr NOT IN (' + @Sifra_Gr  + ') '
  14888.         End
  14889.     If @Sifra_Brand Is Not NULL
  14890.         Begin
  14891.         If @KF_Brand = 'N'
  14892.                 Set @SOsn = @SOsn + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  14893.         Else
  14894.             Set @SOsn = @SOsn + 'And K.Sifra_Drg NOT IN (' + @Sifra_Brand  + ') '
  14895.         End
  14896.     If @Lokacija Is Not NULL
  14897.     Begin
  14898.         If @KF_Lokacija  = 'N'
  14899.             Set @SOsn = @SOsn + 'And K.Lokacija = ''' + @Lokacija + ''' '
  14900.         Else
  14901.             Set @SOsn = @SOsn + 'And K.Lokacija <> ''' + @Lokacija + ''' '
  14902.     End
  14903.     If @Kto Is Not NULL        
  14904.         Begin
  14905.         If @KF_Kto = 'N'
  14906.                 Set @SKto = @SKto + 'And K.Kto IN (' + @Kto  + ') '
  14907.         Else
  14908.             Set @SKto = @SKto + 'And K.Kto NOT IN (' + @Kto  + ') '
  14909.         End                
  14910. --    SET @SSQL = 'SELECT K.Sifra_Art, K.ImeArt FROM KatArt K '
  14911. --    IF @Sifra_Gr is Not NULL
  14912. --        SET @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.SifRa_Podg '
  14913. --    SET @SSQL = @SSQL + ' WHERE 1=1 ' + @SOsn
  14914. --    INSERT INTO #TmpArt EXEC (@SSQL)
  14915.     SET @SSQLUsl = @SOE + @SOsn + @SKto
  14916.     If @TekZaliha = 'D'
  14917.        Begin
  14918.         If @PrikaziSto = 'K'
  14919.             Set @SSQL = ' SELECT K.Kto, '
  14920.         Else
  14921.             Set @SSQL = ' SELECT S.Sifra_Oe, '
  14922.         If @SoDanok = 'D'
  14923.             Set @SSQL = @SSQL + ' SUM((S.Vlez - S.Izlez) * (Case When S.DanCena = ''N'' Then S.Cena*(1+S.POsn/100) Else S.Cena End)) VrednostZal, '
  14924.         Else -- If @SoDanok = 'N'
  14925.             Set @SSQL = @SSQL + ' SUM((S.Vlez - S.Izlez) * (Case When S.DanCena = ''D'' Then S.Cena/(1+S.POsn/100) Else S.Cena End)) VrednostZal, '
  14926.         Set @SSQL = @SSQL + ' 0 as VredProd
  14927.                       FROM Soart S  
  14928.                       Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  14929.                       Inner Join Podgrupi P ON P.Sifra_Podg = K.Sifra_Podg
  14930.                       WHERE 1=1 ' 
  14931.         Set @SSQL = @SSQL + @SSQLUsl
  14932.         If @PrikaziSto = 'K'
  14933.             Set @SSQL = @SSQL + ' GROUP BY K.Kto '
  14934.         Else
  14935.             Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Oe '
  14936.         Insert Into #Rez EXEC (@SSQL)
  14937.         End
  14938.     Else
  14939.         Begin
  14940.         SET @SSQL = ' SELECT S.Sifra_OE, S.Sifra_Art, 
  14941.                 SUM(CASE WHEN S.VlIzl = ''V'' THEN S.Kolic ELSE 0 END) Vlez, 
  14942.                 SUM(CASE WHEN S.VlIzl = ''I'' THEN S.Kolic ELSE 0 END) Izlez
  14943.                 FROM Stavr  S 
  14944.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  14945.                 Inner Join Podgrupi P ON P.Sifra_Podg = K.Sifra_Podg
  14946.                 WHERE  S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '+ @SSQLUsl +
  14947.                 ' GROUP BY S.Sifra_OE, S.Sifra_Art '
  14948.         CREATE TABLE #PrometArt
  14949.         ( 
  14950.           Sifra_OE  smallint, 
  14951.           Sifra_Art  Varchar(20),
  14952.           Vlez Decimal (18,4),
  14953.           Izlez Decimal (18,4), 
  14954.           Cena Decimal(18,4)
  14955.         )
  14956.         INSERT INTO #PrometArt (Sifra_OE, Sifra_Art, Vlez, Izlez) EXEC(@SSQL)
  14957.         -- Sega za cenata da vidime
  14958.         UPDATE #PrometArt SET Cena = dbo.fn_CenaDatum (#PrometArt.Sifra_OE,#PrometArt.Sifra_Art,@Datum_Do,@SoDanok)
  14959.         If @PrikaziSto = 'K'
  14960.             INSERT INTO #Rez  
  14961.             SELECT K.Kto, SUM((P.Vlez - P.Izlez) * P.Cena) As VrednostZal, 0 as VredProd
  14962.             FROM #PrometArt P
  14963.             Inner Join Katart K On K.Sifra_Art = P.Sifra_Art 
  14964.             GROUP BY K.Kto
  14965.         Else
  14966.             INSERT INTO #Rez  
  14967.             SELECT P.Sifra_Oe, SUM((P.Vlez - P.Izlez) * P.Cena) As VrednostZal, 0 as VredProd
  14968.             FROM #PrometArt P
  14969.             GROUP BY P.Sifra_Oe
  14970.        End    --    If @NegZalihaKako0 = 'D'
  14971. --        UPDATE #Rez SET VredZal = 0 WHERE VredZal < 0
  14972.     -------------- Sega prodazba -----------------
  14973.     Set @SSQLUsl = ' '
  14974.     If @PrikaziSto = 'K'
  14975.         Set @SSQL = ' SELECT S.Dobav, 0 as VredZal, '
  14976.     Else
  14977.         Set @SSQL = ' SELECT S.Sifra_Oe, 0 as VredZal, '
  14978.     If @SoDanok = 'D'
  14979.         Set @SSQL = @SSQL + ' Sum(Case 
  14980.                     When S.DanDokCena=''N'' Then 
  14981.                       (S.Kolic * S.DokCena * (1+S.Posn/100)*(1-S.Uces/100)*(1-D.Kasa/100))
  14982.                     Else
  14983.                       (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  14984.                     End) As Vr_Krajna '
  14985.     Else   -- If @SoDanok = 'N'
  14986.         Set @SSQL = @SSQL + ' Sum(Case 
  14987.                     When S.DanDokCena=''N'' Then 
  14988.                       (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  14989.                     Else
  14990.                       (S.Kolic * S.DokCena / (1+S.Posn/100) * (1-S.Uces/100)*(1-D.Kasa/100))
  14991.                     End) As Vr_Krajna '
  14992.     Set @SSQL = @SSQL + ' From Stavr S 
  14993.         Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  14994.         Inner Join Podgrupi P ON P.Sifra_Podg = K.Sifra_Podg
  14995.         Inner Join Dokr D On S.DokrID = D.DokrID 
  14996.         Where S.VlIzl = ''I'' And (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''') '
  14997.     If @TipDokProd is NOT null
  14998.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  14999.     If @Datum_Od Is Not NULL
  15000.         Set @SSQLUsl = @SSQLUsl + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  15001.     If @Datum_Do Is Not NULL
  15002.         Set @SSQLUsl = @SSQLUsl + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  15003.     If @Kto Is Not NULL
  15004.         Begin
  15005.         If @KF_Kto = 'N'
  15006.                 Set @SKto = @SKto + 'And S.Dobav IN (' + @Kto  + ') '
  15007.         Else
  15008.             Set @SKto = @SKto + 'And S.Dobav NOT IN (' + @Kto  + ') '
  15009.         End
  15010.     Set @SSQL = @SSQL + @SSQLUsl + @SOE + @SOsn + @SKto
  15011.     If @PrikaziSto = 'K'
  15012.         Set @SSQL = @SSQL +  'Group By S.Dobav '
  15013.     Else
  15014.         Set @SSQL = @SSQL +  'Group By S.Sifra_Oe '
  15015.     Print @SSQL
  15016.     INSERT #Rez EXEC(@SSQL)
  15017. /*    --------------------------------------------------------------------------- So Paralelna (Prethodna) baza ----------------------------------------------------------------------------------------------
  15018.     If @BazaPreth Is Not Null
  15019.     Begin
  15020.         If @SoDanok = 'D'
  15021.             Set @SSQL = @SSQL + ' Sum(Case 
  15022.                         When S.DanDokCena=''N'' Then 
  15023.                           (S.Kolic * S.DokCena * (1+S.Posn/100)*(1-S.Uces/100)*(1-D.Kasa/100))
  15024.                         Else
  15025.                           (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  15026.                         End) As Vr_Krajna '
  15027.         Else   -- If @SoDanok = 'N'
  15028.             Set @SSQL = @SSQL + ' Sum(Case 
  15029.                         When S.DanDokCena=''N'' Then 
  15030.                           (S.Kolic * S.DokCena * (1-S.Uces/100)*(1-D.Kasa/100))
  15031.                         Else
  15032.                           (S.Kolic * S.DokCena / (1+S.Posn/100) * (1-S.Uces/100)*(1-D.Kasa/100))
  15033.                         End) As Vr_Krajna '
  15034.         --Sum(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa, ''' + @SoDanok+''')) As Vr_Krajna
  15035.         Set @SSQL = @SSQL + ' From ' + @BazaPreth + '..Stavr S 
  15036.             Inner Join #TmpArt K On S.Sifra_Art=K.Sifra_Art 
  15037.             Inner Join  ' + @BazaPreth + '..Dokr D On S.DokrID = D.DokrID 
  15038.             Where S.VlIzl = ''I'' And (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''') '+@SOE
  15039.         INSERT #TmpProd EXEC(@SSQL+@SSQLUsl)
  15040.         CREATE TABLE #TmpProdBaza2
  15041.         (    Sifra_Art    varchar(20),
  15042.             Kolicina        decimal(18,6),
  15043.             Vr_Krajna    decimal(18,6))
  15044.         CREATE NONCLUSTERED INDEX IX_TmpProdB2 ON #TmpProdBaza2
  15045.             (Sifra_Art) ON [PRIMARY]
  15046.         Insert Into #TmpProdBaza2 
  15047.         Select Sifra_Art, Sum(Kolicina), Sum(Vr_Krajna) 
  15048.         From #TmpProd 
  15049.         Group By Sifra_Art 
  15050.         Set @SSQL = 'Select '
  15051.         If @Kolku Is Not NULL
  15052.             Set @SSQL = @SSQL + 'TOP ' + Cast(@Kolku as varchar(6)) + ' '    --K.Iskluci <> ''D'' And 
  15053.         Set @SSQL = @SSQL + 'A.Sifra_Art, A.ImeArt, SA.Kolicina As Zaliha, SA.Vrednost  As Vr_Zaliha, 
  15054.                     P.Vr_Krajna, P.Kolicina
  15055.                     From #TmpArt A
  15056.                     Left Outer Join #TmpProdBaza2 P On A.Sifra_Art=P.Sifra_Art 
  15057.                     Left Outer Join #TmpZal SA On A.Sifra_Art=SA.Sifra_Art 
  15058.                     WHERE 1=1 AND (SA.Kolicina<>0 OR P.Kolicina<>0)'
  15059.         IF @So_NulaProd <> 'D'
  15060.             Set @SSQL = @SSQL + ' AND P.Kolicina <>0 '
  15061.         Set @SSQL = @SSQL + ' Order By P.Vr_Krajna DESC'
  15062.         Exec(@SSQL)
  15063.     End
  15064.     ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  15065.     Else   -- Ako nemame vtora baza
  15066. */
  15067. --    Begin 
  15068.         -- Rezultati
  15069.     Create Table #PomRez
  15070.     (
  15071.      Sifra             Varchar(20), 
  15072.      VredZal          Decimal(18, 6),
  15073.      VredProd       Decimal(18, 6)    
  15074.     )
  15075.     Insert Into #PomRez
  15076.     Select Sifra, Sum(VredZal), Sum(VredProd) From #Rez Group By Sifra
  15077.     If @PrikaziSto = 'K'
  15078.         Set @SSQL = ' Select R.Sifra, Kup.ImeKup as Ime, Kup.Rok_Dobav, Sum(R.VredZal) VredZal, 
  15079.                     Sum(R.VredProd) VredProd, Round(Sum(Case When R.VredProd <> 0 Then R.VredZal / R.VredProd * ' + Cast(@RazlDen as varchar(5)) + ' Else 0 End), 4) KumulDenovi
  15080.                 From #PomRez R 
  15081.                 Inner Join Komint Kup On Kup.Sifra_Kup = R.Sifra 
  15082.                 Group By R.Sifra, Kup.ImeKup, Kup.Rok_Dobav '
  15083.     Else
  15084.         Set @SSQL = ' Select R.Sifra, O.ImeOrg as Ime, Null as Rok_Dobav, 
  15085.                     Sum(R.VredZal) VredZal, Round(Sum(Case When R.VredProd <> 0 Then R.VredZal / R.VredProd * ' + Cast(@RazlDen as varchar(5)) + ' Else 0 End), 4) KumulDenovi
  15086.                 From #PomRez R 
  15087.                 Inner Join Orged O On O.Sifra_Oe = R.Sifra 
  15088.                 Group By R.Sifra, O.ImeOrg '
  15089.     IF @So_NulaProd <> 'D'
  15090.         Set @SSQL = @SSQL + ' HAVING Sum(R.VredProd) <>0 '
  15091.     Set @SSQL = @SSQL +  ' Order By R.Sifra '    
  15092. print @SSQL
  15093.     Exec(@SSQL)
  15094. --    End
  15095.  
  15096.  
  15097.  
  15098.  
  15099. Go
  15100. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analiza_toplista]'))
  15101. drop procedure [dbo].[sp_analiza_toplista]
  15102.  
  15103. Go
  15104.  
  15105. CREATE              PROCEDURE sp_Analiza_TopLista
  15106.     @Sifra_OE Smallint, 
  15107.     @KoiOE Varchar(300),
  15108.     @Pod1 Smallint,
  15109.     @Pod2 Smallint,
  15110.     @Pod3 Smallint = Null,
  15111.     @Pod4 Smallint = Null,
  15112.     @Pod5 Smallint = Null,
  15113.     @Sifra_Tip Smallint = Null,
  15114.     @Datum_Od Smalldatetime,
  15115.     @Datum_Do Smalldatetime,
  15116.     @Sifra_Art_Od Varchar(20),
  15117.     @Sifra_Art_Do Varchar(20),
  15118.     @Sifra_Kup_Od Char(6),
  15119.     @Sifra_Kup_Do Char(6),
  15120.     @Podred Char(1),
  15121.     @Kolku Int,
  15122.     @Kto Char(6),
  15123.     @Sifra_Gr Char(3),
  15124.     @Sifra_Podg Char(6),
  15125.     @Lokacija Varchar(10),
  15126.     @TipKup Char(11),
  15127.     @Komint_KObj Char(1),
  15128.     @Sifra_Brand Smallint,
  15129.     @Sifra_Zbiren Smallint,
  15130.     @Koi_Gradovi Varchar(200),
  15131.     @Koi_Regioni Varchar(200) = Null,
  15132.     @Sifra_Mest Int = Null,
  15133.     @PoProdMesta char(1)='N',
  15134.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  15135.     @Drugo1    smallint = Null,
  15136.     @Drugo2    smallint = Null,
  15137.     @Drugo3    smallint = Null,
  15138.     @Drugo4    smallint = Null,
  15139.     @Drugo5    smallint = Null    
  15140. AS
  15141.     If @PoKojDatum = 'V'
  15142.             If @Datum_Do Is Not Null
  15143.         Set @Datum_Do = @Datum_Do + 1
  15144.     Declare @SSQL Varchar(8000)
  15145.     If @Kolku Is Not NULL
  15146.         Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(6)) + ' '
  15147.     Else
  15148.         Set @SSQL = 'Select '
  15149.     Set @SSQL =    @SSQL + 'S.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, 
  15150.             K.Alt_Sifra, K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina,
  15151.             Round(Sum(S.Kolic), 4) As Kolicina,
  15152.             Count(S.DokID) As Izlezi,
  15153.             Round(Sum(dbo.fn_vr_osnov(S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  15154.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  15155.             Round(Sum(dbo.fn_vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, 
  15156.             Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  15157.     If @PoProdMesta = 'D'
  15158.         Set @SSQL=@SSQL + ' Count(Distinct D.Sifra_Mest) As Komintenti, '
  15159.     Else 
  15160.     Begin
  15161.         If @Komint_KObj = 'K'
  15162.             Set @SSQL =    @SSQL + 'Count(Distinct D.Sifra_Kup) As Komintenti, '
  15163.         Else If @Komint_KObj = 'O'
  15164.             Set @SSQL =    @SSQL + 'Count(Distinct D.Sifra_Obj) As Komintenti, '
  15165.     End
  15166.     Set @SSQL = @SSQL + ' Min(D.Datum_Dok) As DatPrvaProd, '
  15167.     Set @SSQL = @SSQL + ' Max(D.Datum_Dok) As DatPoslProd '
  15168.     Set @SSQL = @SSQL + 'From Stavr S
  15169.                 Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  15170.                 Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 '
  15171.     If @Sifra_Zbiren Is Not Null
  15172.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  15173.     If @Sifra_Gr Is Not Null
  15174.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  15175.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  15176.         Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  15177.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  15178.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  15179.     If @PoProdMesta = 'D'
  15180.         Set @SSQL = @SSQL + ' Inner Join ProdMest PM ON D.Sifra_Mest=PM.Sifra_Mest '
  15181.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  15182.     If @Sifra_Brand Is Not NULL And @Sifra_Zbiren Is Null
  15183.         Set @SSQL = @SSQL + ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  15184.     Else
  15185.         If @Sifra_Brand Is NUll And @Sifra_Zbiren Is Not Null
  15186.             Set @SSQL = @SSQL + ' And B.Sifra_Drg1=''' + Cast(@Sifra_Zbiren As Varchar(5)) + ''' '
  15187.     If @TipKup Is Not NULL
  15188.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  15189.     If @Sifra_Kup_Od Is Not NULL
  15190.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  15191.     If @Sifra_Kup_Do Is Not NULL
  15192.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  15193.     If @Lokacija Is Not NULL
  15194.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  15195.     If @Kto Is Not NULL
  15196.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  15197.     If @Sifra_Podg Is Not NULL
  15198.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  15199.     If @Sifra_Gr Is Not NULL
  15200.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  15201.     If @PoKojDatum = 'V'
  15202.           Begin
  15203.         If @Datum_Od Is Not NULL
  15204.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  15205.         If @Datum_Do Is Not NULL
  15206.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  15207.           End
  15208.     Else 
  15209.           Begin
  15210.         If @Datum_Od Is Not NULL
  15211.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  15212.         If @Datum_Do Is Not NULL
  15213.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  15214.            End
  15215.     If @Pod1 Is Not NULL
  15216.            Begin
  15217.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  15218.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  15219.            End
  15220.     If @Pod2 Is Not NULL
  15221.            Begin
  15222.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  15223.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  15224.            End
  15225.     If @Pod3 Is Not NULL
  15226.            Begin
  15227.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  15228.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  15229.            End
  15230.     If @Pod4 Is Not NULL
  15231.            Begin
  15232.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  15233.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  15234.            End
  15235.     If @Pod5 Is Not NULL
  15236.            Begin
  15237.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  15238.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  15239.            End
  15240. --    If @Pod5 Is Not NULL
  15241. --        Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  15242.     If @Sifra_Tip Is Not Null
  15243.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  15244.     If @Sifra_Art_Od Is Not NULL
  15245.         Set @SSQL = @SSQL + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  15246.     If @Sifra_Art_Do Is Not NULL
  15247.         Set @SSQL = @SSQL + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  15248.     If @Sifra_OE Is Not NULL    
  15249.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  15250.     If @KoiOE Is Not NULL
  15251.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  15252.     If @Koi_Gradovi Is Not NULL    
  15253.         Begin
  15254.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  15255.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  15256.         End
  15257.     If @Koi_Regioni Is Not NULL    
  15258.         Begin
  15259.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  15260.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  15261.         End
  15262.     If @Sifra_Mest Is Not NULL    
  15263.         Set @SSQL  = @SSQL + ' And D.Sifra_Mest=' + Cast(@Sifra_Mest As Varchar(6)) + ' '
  15264.     If @Drugo1 Is Not NULL
  15265.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  15266.     If @Drugo2 Is Not NULL
  15267.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  15268.     If @Drugo3 Is Not NULL
  15269.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  15270.     If @Drugo4 Is Not NULL
  15271.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  15272.     If @Drugo5 Is Not NULL
  15273.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  15274.     Set @SSQL = @SSQL + 'Group By S.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, K.Alt_Sifra, K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina '
  15275.     If @Podred = 'S'
  15276.         Set @SSQL = @SSQL + 'Order By S.Sifra_Art '
  15277.     Else If @Podred = 'A'
  15278.         Set @SSQL = @SSQL + 'Order By K.ImeArt ' 
  15279.     Else If @Podred = '1'
  15280.         Set @SSQL = @SSQL + 'Order By Izlezi Desc ' 
  15281.     Else If @Podred = '2'
  15282.         Set @SSQL = @SSQL + 'Order By Kolicina Desc ' 
  15283.     Else If @Podred = '3'
  15284.         Set @SSQL = @SSQL + 'Order By Vr_Krajna Desc '
  15285. Print @SSQL
  15286.     Exec(@SSQL)
  15287.  
  15288.  
  15289.  
  15290.  
  15291. Go
  15292. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analizananaracki]'))
  15293. drop procedure [dbo].[sp_analizananaracki]
  15294.  
  15295. Go
  15296. CREATE         PROCEDURE sp_AnalizaNaNaracki
  15297.     @Sifra_OE_Prod Smallint = Null,
  15298.     @KoiOE_Prod char(10) = Null,
  15299.     @Sifra_OE_Zal Smallint = Null,
  15300.     @KoiOE_Zal char(10) = Null,
  15301.     @Sifra_OE_Nar Smallint = Null,
  15302.     @Kto Char(6) = Null,
  15303.     @Datum_Od Smalldatetime = Null,
  15304.     @Datum_Do Smalldatetime = Null,
  15305.     @Podred Char(1) = Null,
  15306.     @Sifra_Gr Char(3) = Null,
  15307.     @PocnuvaSo Char(1)=Null,
  15308.     @Sifra_Podg Char(6) = Null,
  15309.     @Sifra_Dok_Priem smallint= Null,
  15310.     @Sifra_Nar smallint = Null,
  15311.     @Sifra_Art_Od Varchar(20) = Null,
  15312.     @Sifra_Art_Do Varchar(20) = Null
  15313. AS
  15314.     Declare @SSQL Varchar(8000)
  15315.     Declare @SSQLUsl Varchar(8000)
  15316.     Declare @SSQLDat Varchar(8000)
  15317.     Declare @SSQLGroup Varchar(8000)
  15318.     Declare @SSQLOe Varchar(8000)
  15319.     Set @SSQLUsl = ' '
  15320.     Set @SSQLDat = ' '
  15321.     Set @SSQLGroup = ' '
  15322.     Set @SSQLOe = ' '
  15323.     CREATE TABLE #Narac
  15324.     (
  15325.         Sifra_Art     Varchar(20),
  15326.         Zaliha        decimal(18,6),
  15327.         Prodazba    decimal(18,6),
  15328.         KolPoslPriem    decimal(18,6),
  15329.         DatPoslPriem    smalldatetime,
  15330.         KolPoslNar    decimal(18,6),
  15331.         DatposlNar    smalldatetime,
  15332.         NarId        int,
  15333.         Realiziran    char(1)
  15334.     )
  15335. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  15336. ---- Gi vmetnuvame site sifri na artikli koi go zadovoluvaat uslovot za da ne se ispusti nekoja zaliha ili prodazba
  15337.     Set @SSQL = ' Select Katart.Sifra_Art, 0, 0, 0, Null, 0, Null, Null , Null
  15338.             From Katart '
  15339.     If @Sifra_Gr Is Not Null
  15340.         Set @SSQL = @SSQL + 'Inner Join Podgrupi On Katart.Sifra_Podg=Podgrupi.Sifra_Podg '
  15341.     Set @SSQL=@SSQL + ' Where 1=1 '
  15342. ----------------------------------------------------------------  U  S  L  O  V -----------------------------------------------------------------------
  15343.     If @Sifra_Art_Od Is Not Null
  15344.         Set @SSQLUsl = @SSQLUsl + 'And Katart.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  15345.     If @Sifra_Art_Do Is Not Null
  15346.         Set @SSQLUsl = @SSQLUsl + 'And Katart.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  15347.     If @Sifra_Podg Is Not Null
  15348.         If @PocnuvaSo = 'D'
  15349.             Set @SSQL = @SSQL + 'And Katart.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  15350.         Else 
  15351.             Set @SSQL = @SSQL + 'And Katart.Sifra_Podg=''' + @Sifra_Podg + ''' '
  15352.     If @Sifra_Gr Is Not Null
  15353.         Set @SSQLUsl = @SSQLUsl + 'And Podgrupi.Sifra_Gr=''' + @Sifra_Gr + ''' '
  15354.     If @Kto Is Not NULL
  15355.         Set @SSQLUsl = @SSQLUsl + ' And Katart.Kto=' + @Kto + ' '
  15356. ------------------------------------------------------------------------------------------------------------------------------------------------------------
  15357. Print @SSQL+@SSQLUsl
  15358.     Insert Into #Narac Exec(@SSQL+@SSQLUsl)
  15359. ---------------------------------------------------------------- Z A L I H A ------------------------------------------------------------------------
  15360. -- Sega ke ja presmetame Zalihata
  15361.     Set @SSQL = 'Update #Narac Set Zaliha = (Select Sum(Soart.Vlez-Soart.Izlez)
  15362.         From Soart
  15363.         Inner Join KatArt ON Soart.Sifra_Art=Katart.Sifra_Art '
  15364.     If @Sifra_Gr Is Not Null
  15365.         Set @SSQL = @SSQL + 'Inner Join Podgrupi On Katart.Sifra_Podg=Podgrupi.Sifra_Podg '
  15366.     Set @SSQL = @SSQL + 'Where #Narac.Sifra_Art = Soart.Sifra_Art and Katart.Iskluci <> ''D'' '
  15367. -----------------------------------------------
  15368.     If @Sifra_OE_Zal Is Not NULL
  15369.              Set @SSQLOe  = @SSQLOe + ' And Soart.Sifra_OE=' + Cast(@Sifra_OE_Zal As Varchar(5)) + ' '
  15370.     If @KoiOE_Zal Is Not NULL
  15371.              Set @SSQLOe  = @SSQLOe + ' And Soart.Sifra_OE IN (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOE_Zal + ''') '
  15372. ------------------------------------------------------------------ G R O U P ---------------------------------------------------------------------------
  15373.     Set @SSQLGroup = @SSQLGroup + 'Group By Soart.Sifra_Art) '
  15374. Print @SSQL+@SSQLUsl+@SSQLOe+@SSQLGroup
  15375.     Insert Into #Narac Exec(@SSQL+@SSQLUsl+@SSQLOe+@SSQLGroup)
  15376. ---------------------------------------------------------------- P R O D A Z B A ----------------------------------------------------------------
  15377. --- Sega ja presmetuvame prodazbata
  15378.     Set @SSQLOe=' '
  15379.     Set @SSQLGroup=' '
  15380.     Set @SSQL = 'Update #Narac Set #Narac.Prodazba= (Select Round(Sum(Stavr.Kolic), 4) 
  15381.         From Stavr
  15382.         Inner Join KatArt ON Stavr.Sifra_Art=Katart.Sifra_Art
  15383.         Inner Join Dokr ON Stavr.DokrID=Dokr.DokrID And (Dokr.Sifra_Za = ''1'') '
  15384.     If @Sifra_Gr Is Not Null
  15385.         Set @SSQL = @SSQL + 'Inner Join Podgrupi On Katart.Sifra_Podg=Podgrupi.Sifra_Podg '
  15386.     Set @SSQL = @SSQL + 'Where #Narac.Sifra_Art = Stavr.Sifra_Art and Katart.Iskluci <> ''D'' '
  15387.     If @Datum_Od Is Not NULL
  15388.         Set @SSQLDat = @SSQLDat + ' And Stavr.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  15389.     If @Datum_Do Is Not NULL
  15390.         Set @SSQLDat = @SSQLDat + ' And Stavr.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  15391.     If @Sifra_OE_Prod Is Not NULL
  15392.              Set @SSQLOe  = @SSQLOe + ' And Stavr.Sifra_OE=' + Cast(@Sifra_OE_Prod As Varchar(5)) + ' '
  15393.     If @KoiOE_Prod Is Not NULL
  15394.              Set @SSQLOe  = @SSQLOe + ' And Stavr.Sifra_OE IN (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOE_Prod + ''') '
  15395.     Set @SSQLGroup = @SSQLGroup + 'Group By Stavr.Sifra_Art) '
  15396. print @SSQL+@SSQLUsl+@SSQLOe+@SSQLDat+@SSQLGroup
  15397.     Insert #Narac Exec(@SSQL+@SSQLUsl+@SSQLOe+@SSQLDat+@SSQLGroup)
  15398. ------------------------------------------------ P O S L E D N A   N A B A V K A  --------------------------------------------------------------------
  15399. -- Da ja najdime Kolicinata na poslednata nabavka
  15400. -------------------------------------------------------------------------------
  15401.     Set @SSQLGroup = ' '
  15402.     Set @SSQL = 'Update #Narac  Set KolPoslPriem = ( '
  15403.     Set @SSQL = @SSQL + 'Select Top 1 Kolic From Stavr
  15404.                 Inner Join Katart On Katart.Sifra_Art = Stavr.Sifra_Art '
  15405.     If @Sifra_Gr Is Not Null
  15406.         Set @SSQL = @SSQL + 'Inner Join Podgrupi On Katart.Sifra_Podg=Podgrupi.Sifra_Podg '
  15407.     Set @SSQL = @SSQL + ' Where Stavr.Sifra_Art=#NArac.Sifra_Art  And Stavr.ImaDodatna Is Null
  15408.                 And Stavr.VlIzl=''V''  And Stavr.Sifra_Dok<>990  And Stavr.Kolic > 0 '     
  15409.     If @Datum_Do Is Not Null
  15410.         Set @SSQL = @SSQL + 'And Stavr.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  15411.     If @Sifra_Dok_Priem Is Not Null
  15412.         Set @SSQL = @SSQL + 'And Stavr.Sifra_Dok = ''' + Cast(@Sifra_Dok_Priem As Varchar(10)) + ''' '
  15413.     Set @SSQLGroup = @SSQLGroup + 'Order By Stavr.Datum_Dok Desc, Stavr.DokID Desc) '
  15414.     Exec(@SSQL+@SSQLUsl+@SSQLOe+@SSQLGroup)
  15415.     Set @SSQLGroup = ' '
  15416.     Set @SSQL = 'Update #Narac  Set DatPoslPriem = ( '
  15417.     Set @SSQL = @SSQL + 'Select Top 1 Datum_Dok From Stavr
  15418.                 Inner Join Katart On Katart.Sifra_Art = Stavr.Sifra_Art '
  15419.     If @Sifra_Gr Is Not Null
  15420.         Set @SSQL = @SSQL + 'Inner Join Podgrupi On Katart.Sifra_Podg=Podgrupi.Sifra_Podg '
  15421.     Set @SSQL = @SSQL + ' Where Stavr.Sifra_Art=#NArac.Sifra_Art  And Stavr.ImaDodatna Is Null
  15422.                 And Stavr.VlIzl=''V''  And Stavr.Sifra_Dok<>990  And Stavr.Kolic > 0 '     
  15423.     If @Datum_Do Is Not Null
  15424.         Set @SSQL = @SSQL + 'And Stavr.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  15425.     If @Sifra_Dok_Priem Is Not Null
  15426.         Set @SSQL = @SSQL + 'And Stavr.Sifra_Dok = ''' + Cast(@Sifra_Dok_Priem As Varchar(10)) + ''' '
  15427.     Set @SSQLGroup = @SSQLGroup + 'Order By Stavr.Datum_Dok Desc, Stavr.DokID Desc) '
  15428. Print @SSQL+@SSQLUsl+@SSQLOe+@SSQLGroup
  15429.     Exec(@SSQL+@SSQLUsl+@SSQLOe+@SSQLGroup)
  15430. ------------------------------------------------ P O S L E D N A   N A R A C K A  --------------------------------------------------------------------
  15431. -- Da ja najdime Kolicinata na poslednata naracka
  15432. -------------------------------------------------------------------------------
  15433.     Set @SSQLGroup = ' '
  15434.     Set @SSQLOe=' '
  15435.     Set @SSQL = 'Update #Narac  Set KolPoslNar = ( '
  15436.     Set @SSQL = @SSQL + 'Select Top 1 Kolic From StaNarac
  15437.                 Inner Join Naracki On Naracki.NarId=StaNarac.NarId
  15438.                 Inner Join Katart On Katart.Sifra_Art = StaNarac.Sifra_Art '
  15439.     If @Sifra_Gr Is Not Null
  15440.         Set @SSQL = @SSQL + 'Inner Join Podgrupi On Katart.Sifra_Podg=Podgrupi.Sifra_Podg '
  15441.     Set @SSQL=@SSQL + ' Where StaNarac.Sifra_Art=#Narac.Sifra_Art '     
  15442.     If @Datum_Do Is Not Null
  15443.         Set @SSQL = @SSQL + 'And Naracki.Datum_Nar <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  15444.     If @Sifra_Nar Is Not Null
  15445.         Set @SSQL = @SSQL + 'And Naracki.Sifra_Nar = ''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  15446.     If @Sifra_OE_Nar Is Not NULL
  15447.              Set @SSQL  = @SSQL + ' And Naracki.Sifra_OE=' + Cast(@Sifra_OE_Nar As Varchar(5)) + ' '
  15448.     Set @SSQLGroup = @SSQLGroup + 'Order By Naracki.Datum_Nar Desc, Naracki.NarID Desc) '
  15449. Print @SSQL+@SSQLUsl+@SSQLGroup
  15450.     Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  15451.     Set @SSQLGroup = ' '
  15452.     Set @SSQL = 'Update #Narac  Set NarId = ( '
  15453.     Set @SSQL = @SSQL + 'Select Top 1 Naracki.NarId From Naracki
  15454.                 Inner Join StaNarac On Naracki.NarId=StaNarac.NarId
  15455.                 Inner Join Katart On Katart.Sifra_Art = StaNarac.Sifra_Art '
  15456.     If @Sifra_Gr Is Not Null
  15457.         Set @SSQL = @SSQL + 'Inner Join Podgrupi On Katart.Sifra_Podg=Podgrupi.Sifra_Podg '
  15458.     Set @SSQL = @SSQL + ' Where StaNarac.Sifra_Art=#Narac.Sifra_Art '     
  15459.     If @Datum_Do Is Not Null
  15460.         Set @SSQL = @SSQL + 'And Naracki.Datum_Nar <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  15461.     If @Sifra_Nar Is Not Null
  15462.         Set @SSQL = @SSQL + 'And Naracki.Sifra_Nar = ''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  15463.     If @Sifra_OE_Nar Is Not NULL
  15464.              Set @SSQL  = @SSQL + ' And Naracki.Sifra_OE=' + Cast(@Sifra_OE_Nar As Varchar(5)) + ' '
  15465.     Set @SSQLGroup = @SSQLGroup + 'Order By Naracki.Datum_Nar Desc, Naracki.NarID Desc) '
  15466. Print @SSQL+@SSQLUsl+@SSQLGroup
  15467.     Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  15468.     Update #Narac 
  15469.     Set #Narac.DatPoslNar=Naracki.Datum_Nar, #Narac.Realiziran=Naracki.Stat_Nar
  15470.     From Naracki 
  15471.     Where Naracki.NarId=#Narac.NarId
  15472. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  15473.     Set @SSQL = ' Select N.Sifra_Art, K.ImeArt, N.Zaliha, N.Prodazba, N.KolPoslPriem, N.DatPoslPriem, N.KolPoslNar, N.DatposlNar, N.Realiziran, 
  15474.             K.EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina, K.Volumen
  15475.         From #Narac N
  15476.         Inner Join Katart K On K.Sifra_Art = N.Sifra_Art '
  15477.     If @Podred = 'S'
  15478.         Set @SSQL = @SSQL + ' Order By N.Sifra_Art '
  15479.     If @Podred = 'A'
  15480.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  15481.     Exec(@SSQL)
  15482. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  15483.  
  15484.  
  15485.  
  15486. Go
  15487. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analizanaprodazba]'))
  15488. drop procedure [dbo].[sp_analizanaprodazba]
  15489.  
  15490. Go
  15491. CREATE        PROCEDURE sp_AnalizaNaProdazba
  15492.     @KoiOE     varchar(300) = Null,
  15493.     @Datum_Od     smalldatetime = Null,
  15494.     @Datum_Do     smalldatetime = Null,
  15495.     @Sifra_Art_Od     varchar(20)= Null,
  15496.     @Sifra_Art_Do     varchar(20) = Null,
  15497.     @Podred     char(1) = 'S',
  15498.     @Kto         char(6) = Null,
  15499.     @Sifra_Gr     char(3) = Null,
  15500.     @Sifra_Podg     char(6) = Null,
  15501.     @TipDokProd    varchar(300) = Null,
  15502.     @DenoviIspor     smallint = 7,
  15503.     @Plan        decimal(18,6) = Null,
  15504.     @BrojNaDenovi    smallint = Null,
  15505.     @KojIzv    char(1) = 'P'    -- P - Planing based on sales        R - Reversibility ratio based on the sales
  15506.                     --      Mora     @DenoviIspor            Mora  @BrojNaDenovi
  15507.                     --                   @Plan
  15508. AS
  15509.     Declare @SSQL Varchar(8000)
  15510.     Declare @SSQLUsl Varchar(8000)
  15511.     Declare @SSQLUslArt Varchar(8000)
  15512.     Set @SSQLUsl = ' '
  15513.     Set @SSQLUslArt = ' '
  15514.     Create Table #Rez
  15515.     (
  15516.      Sifra_Art        varchar(20),
  15517.      Kolic            decimal(18,6),
  15518.      Nabavna        decimal(18,6),
  15519.      KojaVal        char(3),
  15520.      ProsCena        decimal(18,6),
  15521.      Vrednost        decimal(18,6),
  15522.      ProcOdVkProd        decimal(18,6),
  15523.       PlanH            decimal(18,6),
  15524.      DogCena        decimal(18,6),
  15525.      VredPlan        decimal(18,6),
  15526.      ZalihaTekovna        decimal(18,6),
  15527.      OcekuvProdazba    decimal(18,6),
  15528.      VredZaliha        decimal(18,6),
  15529.      Odnos_Ratio        decimal(18,6)
  15530.     )
  15531.     ---------------------------------------------------------------------------- U S L O V --------------------------------------------------------------------------------------------
  15532.     If @Datum_Od Is Not NULL
  15533.         Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  15534.     If @Datum_Do Is Not NULL
  15535.         Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  15536.     If @TipDokProd IS NOT NULL
  15537.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  15538.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  15539.     --------------------------------------------------------- U S L O V    P O    A R T I L K I ----------------------------------------------------------------------------
  15540.     If @Sifra_Art_Od Is Not Null
  15541.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  15542.     If @Sifra_Art_Do Is Not Null
  15543.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  15544.     If @Sifra_Podg Is Not Null
  15545.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Podg = ' + @Sifra_Podg + ' '
  15546.     If @Sifra_Gr Is Not Null
  15547.         Set @SSQLUslArt = @SSQLUslArt + 'And PG.Sifra_Gr = ' + @Sifra_Gr + ' '
  15548.     If @Kto Is Not NULL
  15549.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Kto=' + @Kto + ' '
  15550.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------
  15551.     Set @SSQL = 'Select S.Sifra_Art, Sum(S.Kolic), K.Nabavna, '
  15552.     If @KojIzv = 'R'
  15553.         Set @SSQL = @SSQL + ' D.KojaVal, '
  15554.     Else 
  15555.         Set @SSQL = @SSQL + ' Null KojaVal, '
  15556.     Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Krajna, 
  15557.             K.DogCena             From Stavr S
  15558.             Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  15559.             Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 '
  15560.     If @KoiOE Is Not NULL
  15561.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  15562.     If @Sifra_Gr Is Not Null
  15563.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  15564.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  15565.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslArt + ' Group By S.Sifra_Art, K.DogCena, K.Nabavna '
  15566.     If @KojIzv = 'R'
  15567.         Set @SSQL = @SSQL + ', D.KojaVal '
  15568.     print @SSQL
  15569.     Insert #Rez(Sifra_Art, Kolic, Nabavna, KojaVal, Vrednost, DogCena) Exec(@SSQL)
  15570.     ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  15571.     --------------------------------------------------------------------- Z A L I H A  ----------------------------------------------------------------------
  15572.     Set @SSQL = 'Update #Rez
  15573.             Set ZalihaTekovna = (Select Sum(Vlez)-Sum(Izlez) From Soart Where 1=1 '
  15574.     If @KoiOE Is Not Null 
  15575.         Set @SSQL = @SSQL + ' And Sifra_OE In (' + @KoiOE + ') '
  15576.     Set @SSQL = @SSQL + ' And #Rez.Sifra_Art=Soart.Sifra_Art) '
  15577.     Exec(@SSQL)
  15578.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------
  15579.     Declare @VkProd decimal(18,6)
  15580.     Set @VkProd = (Select Sum(Vrednost) From #Rez)
  15581.     Update #Rez Set ProsCena = (Case When Kolic <> 0 Then Vrednost/Kolic Else 0 End), 
  15582.             ProcOdVkProd = (Case When @VkProd <> 0 Then Vrednost * 100 / @VkProd Else 0 End)
  15583.     If @KojIzv = 'R'
  15584.     Begin
  15585.         Update #Rez Set VredZaliha = ZalihaTekovna * DogCena
  15586.         Update #Rez Set Odnos_Ratio = (Case When Kolic <> 0 Then ((VredZaliha/Kolic) * (DateDiff(Day, @Datum_Od, @Datum_Do)+1) / @BrojNaDenovi) Else Null End)
  15587.     End
  15588.     Else
  15589.     Begin
  15590.         Update #Rez Set PlanH = (Case When DogCena <> 0 Then (ProcOdVkProd * @Plan) / (DogCena * 100) Else 0 End)
  15591.         Update #Rez Set VredPlan = PlanH * DogCena
  15592.         Update #rez Set OcekuvProdazba = Kolic * @DenoviIspor / DateDiff(Day, @Datum_Od, @Datum_Do) + 1
  15593.     End
  15594.     Select R.Sifra_Art, K.ImeArt, R.Kolic, K.EdMera, R.ProsCena, R.Vrednost, R.ProcOdVkProd, R.PlanH, R.DogCena, 
  15595.         R.Nabavna, KL.ImeVal, R.VredPlan, R.ZalihaTekovna, 0 as ZalihaNaPat, R.ZalihaTekovna as VkupnaZal, R.OcekuvProdazba,
  15596.         (Case When R.PlanH-(ZalihaTekovna-OcekuvProdazba) > 0 Then R.PlanH - (Case When (ZalihaTekovna-OcekuvProdazba) > 0 Then (ZalihaTekovna-OcekuvProdazba) Else 0 End) Else 0 End) Nedostasuva,
  15597.         (Case When R.PlanH-(ZalihaTekovna-OcekuvProdazba) <= 0 Then R.PlanH - (Case When (ZalihaTekovna-OcekuvProdazba) > 0 Then (ZalihaTekovna-OcekuvProdazba) Else 0 End) Else 0 End) Vissok,
  15598.         R.VredZaliha, R.Odnos_Ratio
  15599.     From #Rez R
  15600.     Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  15601.     Left Outer Join KrsLista KL On KL.SImeVal=R.KojaVal
  15602.  
  15603.  
  15604.  
  15605. Go
  15606. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analkart]'))
  15607. drop procedure [dbo].[sp_analkart]
  15608.  
  15609. Go
  15610.  
  15611. CREATE        PROCEDURE sp_AnalKart
  15612.     @Kto_Anal Char(10) = NULL,
  15613.     @Datum_Nal_Od Smalldatetime,
  15614.     @Datum_Nal_Do Smalldatetime,
  15615.     @Datum_Dok_Od Smalldatetime,
  15616.     @Datum_Dok_Do Smalldatetime,
  15617.     @Sifra_OE smallint = NULL,
  15618.     @Kto_Sint  char(3) = NULL,
  15619.     @Tek_Godina int = NULL,      --YEAR(GETDATE())
  15620.     @Sifra_Nal smallint = NULL,
  15621.     @KojaVal char(3) = Null,
  15622.     @Sifra_Div smallint = Null,
  15623.     @KoiOe varchar(6) = Null
  15624. AS
  15625.     Declare @SSQL Varchar(3000)
  15626.     Declare @God    smallint
  15627.     Set @SSQL = ''
  15628.     If @Datum_Nal_Od Is Not Null
  15629.         Set @God = YEAR(@Datum_Nal_Od)
  15630.     ELSE
  15631.         Set @God = @Tek_Godina
  15632.     If Not (@Datum_Nal_Od Is Null AND @Datum_Dok_Od Is Null)
  15633.         Begin
  15634.             Set @SSQL = @SSQL + 'Select NULL AS kto_Anal, Null As Datum_Nal, Null As Sifra_Nal, Null As Broj_Nal, Null As Datum_Dok,
  15635.                         ''Prethoden Promet'' As Opis, G.KojaVal, V.ImeVal, G.Opis2,
  15636.                         Sum(G.Dolzi) As Preth_Dolzi,
  15637.                         Sum(G.Pobaruva) As Preth_Pobaruva,
  15638.                         Sum(G.Dev_Dolzi) as Preth_Dev_Dolzi,
  15639.                         Sum(G.Dev_Pobaruva) as Preth_Dev_Pobaruva,
  15640.                         0 As Tek_Dolzi,
  15641.                         0 As Tek_Pobaruva,
  15642.                         0 As Tek_Dev_Dolzi,
  15643.                         0 As Tek_Dev_Pobar,
  15644.                         G.Sifra_Oe,
  15645.                         O.ImeOrg
  15646.             From GStav G 
  15647.             LEFT OUTER JOIN KrsLista V ON G.KojaVal=V.SImeVal 
  15648.             LEFT OUTER JOIN Orged O On O.Sifra_Oe=G.Sifra_Oe
  15649.             Where '
  15650.             If @Kto_Sint Is Null
  15651.                 Set @SSQL = @SSQL + 'G.Kto_Anal=''' + @Kto_Anal + ''' '
  15652.             Else
  15653.                 Set @SSQL = @SSQL + 'SUBSTRING(G.Kto_Anal, 1, 3)=''' + @Kto_Sint + ''' '
  15654.             If @Sifra_OE Is Not Null
  15655.                 Set @SSQL = @SSQL + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  15656.             If @KoiOE Is Not Null
  15657.                 Set @SSQL = @SSQL + ' And G.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  15658.             If @Sifra_Nal Is Not Null
  15659.                 Set @SSQL = @SSQL + ' And G.Sifra_Nal = ' + Cast(@Sifra_Nal AS varchar(6)) + ' '
  15660.             If @Datum_Nal_Od Is Not Null
  15661.                 Set @SSQL = @SSQL + ' AND G.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(30)) +
  15662.                 ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  15663.             If @Datum_Dok_Od Is Not Null
  15664.                 Set @SSQL = @SSQL + 'And G.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(30)) + 
  15665.                 ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  15666.             If @KojaVal Is Not Null
  15667.                 Set @SSQL = @SSQL + ' And G.KojaVal =''' + @KojaVal + ''' '
  15668.             If @Sifra_Div Is Not Null
  15669.                 Set @SSQL = @SSQL + ' And G.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  15670.             SET @SSQL = @SSQL + ' GROUP BY G.KojaVal, V.ImeVal, G.Opis2, G.Sifra_Oe, O.ImeOrg '
  15671.             Set @SSQL = @SSQL + 'Union ALL '
  15672.         End
  15673.     Set @SSQL = @SSQL + 'Select G.Kto_Anal, G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Datum_Dok, G.Opis, G.KojaVal, V.ImeVal, G.Opis2,
  15674.             0 As Preth_Dolzi,
  15675.             0 As Preth_Pobaruva,
  15676.             0 As Preth_Dev_Dolzi,
  15677.             0 As Preth_Dev_Pobaruva,
  15678.             G.Dolzi As Tek_Dolzi,
  15679.             G.Pobaruva As Tek_Pobaruva,
  15680.             G.Dev_Dolzi As Tek_Dev_Dolzi,
  15681.             G.Dev_Pobaruva As Tek_Dev_Pobar,
  15682.             G.Sifra_Oe,
  15683.             O.ImeOrg
  15684.         From GStav G 
  15685.         LEFT OUTER JOIN KrsLista V ON G.KojaVal = V.SimeVal 
  15686.         LEFT OUTER JOIN Orged O On O.Sifra_Oe=G.Sifra_Oe
  15687.         Where '
  15688.     If @Kto_Sint Is Null
  15689.         Set @SSQL = @SSQL + 'G.Kto_Anal=''' + @Kto_Anal + ''' '
  15690.     Else
  15691.         Set @SSQL = @SSQL + 'SUBSTRING(G.Kto_Anal, 1, 3)=''' + @Kto_Sint + ''' '
  15692.     If @Datum_Dok_Od Is Not Null
  15693.         Set @SSQL = @SSQL + 'And G.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(30)) + ''' '
  15694.     If @Datum_Dok_Do Is Not Null
  15695.         Set @SSQL = @SSQL + 'And G.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(30)) + ''' '
  15696.     If @Datum_Nal_Od Is Not Null
  15697.         Set @SSQL = @SSQL + 'And G.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(30)) + ''' '
  15698.     If @Datum_Nal_Do Is Not Null
  15699.         Set @SSQL = @SSQL + 'And G.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(30)) + ''' '
  15700.     If @Sifra_OE Is Not Null
  15701.         Set @SSQL = @SSQL + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  15702.     If @KoiOE Is Not Null
  15703.         Set @SSQL = @SSQL + ' And G.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  15704.     If @Sifra_Nal Is Not Null
  15705.         Set @SSQL = @SSQL + ' And G.Sifra_Nal = ' + Cast(@Sifra_Nal AS varchar(6)) + ' '
  15706.     If @KojaVal Is Not Null
  15707.         Set @SSQL = @SSQL + ' And G.KojaVal =''' + @KojaVal + ''' '
  15708.     If @Sifra_Div Is Not Null
  15709.         Set @SSQL = @SSQL + ' And G.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  15710.     --Set @SSQL = @SSQL + 'Order By G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Sifra_Oe '
  15711. --print(@ssql)
  15712.     Exec(@SSQL)
  15713.  
  15714.  
  15715.  
  15716.  
  15717. Go
  15718. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analkart_divizii]'))
  15719. drop procedure [dbo].[sp_analkart_divizii]
  15720.  
  15721. Go
  15722.  
  15723.  
  15724.  
  15725.  
  15726.  
  15727. CREATE            PROCEDURE sp_AnalKart_Divizii
  15728.     @Kto_Anal Char(10) = NULL,
  15729.     @Datum_Nal_Od Smalldatetime,
  15730.     @Datum_Nal_Do Smalldatetime,
  15731.     @Datum_Dok_Od Smalldatetime,
  15732.     @Datum_Dok_Do Smalldatetime,
  15733.     @Sifra_OE smallint = NULL,
  15734.     @Kto_Sint  char(3) = NULL,
  15735.     @Tek_Godina int = NULL,      --YEAR(GETDATE())
  15736.     @Sifra_Nal smallint = NULL,
  15737.     @KojaVal char(3) = Null,
  15738.     @Sifra_Div smallint = Null,
  15739.     @KoiOe varchar(6) = Null,
  15740.         @Sifra_TrosM    varchar(500) = Null,
  15741.         @Sifra_TrosV    varchar(500) = Null,
  15742.         @Sifra_4Tros    varchar(500) = Null 
  15743. AS
  15744.     Declare @SSQL Varchar(8000)
  15745.     Declare @God    smallint
  15746.     Set @SSQL = ''
  15747.     If @Datum_Nal_Od Is Not Null
  15748.         Set @God = YEAR(@Datum_Nal_Od)
  15749.     ELSE
  15750.         Set @God = @Tek_Godina
  15751.     If Not (@Datum_Nal_Od Is Null AND @Datum_Dok_Od Is Null)
  15752.         Begin
  15753.             Set @SSQL = @SSQL + 'Select GD.Sifra_Div, NULL AS kto_Anal, Null As Datum_Nal, Null As Sifra_Nal, Null As Broj_Nal, Null As Datum_Dok,
  15754.                         ''Prethoden Promet'' As Opis, G.KojaVal, V.ImeVal, G.Opis2,
  15755.                         Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) As Preth_Dolzi, 
  15756.                         Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else 0 End) as Preth_Pobaruva,
  15757.                         Sum(Case When G.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / G.Kurs Else 0 End) as Preth_Dev_Dolzi,
  15758.                         Sum(Case When G.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / G.Kurs Else 0 End) as Preth_Dev_Pobaruva,
  15759.                         0 As Tek_Dolzi,
  15760.                         0 As Tek_Pobaruva,
  15761.                         0 As Tek_Dev_Dolzi,
  15762.                         0 As Tek_Dev_Pobar,
  15763.                         G.Sifra_Oe,
  15764.                         O.ImeOrg, Div.ImeDiv, GD.Sifra_TrosM, TM.ImeTrosM, GD.Sifra_TrosV, TV.ImeTrosV, GD.Sifra_4Tros, T4.Ime4Tros
  15765.             From GStav G 
  15766.             INNER JOIN GstAnDiv GD On GD.GstID=G.GstID
  15767.             LEFT OUTER JOIN KrsLista V ON G.KojaVal=V.SImeVal 
  15768.             LEFT OUTER JOIN Orged O On O.Sifra_Oe=G.Sifra_Oe
  15769.             LEFT OUTER JOIN Divizii Div On Div.Sifra_Div=GD.Sifra_Div
  15770.             LEFT OUTER Join TrosokMesto TM ON GD.Sifra_TrosM=TM.Sifra_TrosM
  15771.             LEFT OUTER Join TrosokVid TV ON GD.Sifra_TrosV=TV.Sifra_TrosV
  15772.             LEFT OUTER Join Trosok4Tip T4 ON GD.Sifra_4Tros=T4.Sifra_4Tros 
  15773.             Where '
  15774.             If @Kto_Sint Is Null
  15775.                 Set @SSQL = @SSQL + 'G.Kto_Anal=''' + @Kto_Anal + ''' '
  15776.             Else
  15777.                 Set @SSQL = @SSQL + 'SUBSTRING(G.Kto_Anal, 1, 3)=''' + @Kto_Sint + ''' '
  15778.             If @Sifra_OE Is Not Null
  15779.                 Set @SSQL = @SSQL + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  15780.             If @KoiOE Is Not Null
  15781.                 Set @SSQL = @SSQL + ' And G.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  15782.             If @Sifra_Nal Is Not Null
  15783.                 Set @SSQL = @SSQL + ' And G.Sifra_Nal = ' + Cast(@Sifra_Nal AS varchar(6)) + ' '
  15784.             If @Datum_Nal_Od Is Not Null
  15785.                 Set @SSQL = @SSQL + ' AND G.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(30)) +
  15786.                 ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  15787.             If @Datum_Dok_Od Is Not Null
  15788.                 Set @SSQL = @SSQL + 'And G.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(30)) + 
  15789.                 ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  15790.             If @KojaVal Is Not Null
  15791.                 Set @SSQL = @SSQL + ' And G.KojaVal =''' + @KojaVal + ''' '
  15792.             If @Sifra_Div Is Not Null
  15793.                 Set @SSQL = @SSQL + ' And GD.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  15794.             If @Sifra_TrosM Is Not Null
  15795.                 Set @SSQL = @SSQL + ' And GD.Sifra_TrosM In (' + @Sifra_TrosM + ') ' 
  15796.                          If @Sifra_TrosV Is Not Null
  15797.                 Set @SSQL = @SSQL + ' And GD.Sifra_TrosV In (' + @Sifra_TrosV + ') ' 
  15798.                      If @Sifra_4Tros Is Not Null
  15799.                 Set @SSQL = @SSQL + ' And GD.Sifra_4Tros In (' + @Sifra_4Tros + ') ' 
  15800.             SET @SSQL = @SSQL + ' GROUP BY GD.Sifra_Div, G.KojaVal, V.ImeVal, G.Opis2, G.Sifra_Oe, O.ImeOrg, Div.ImeDiv, GD.Sifra_TrosM, TM.ImeTrosM, GD.Sifra_TrosV, TV.ImeTrosV, GD.Sifra_4Tros, T4.Ime4Tros '
  15801.             Set @SSQL = @SSQL + 'Union ALL '
  15802.         End
  15803.     Set @SSQL = @SSQL + 'Select GD.Sifra_Div, G.Kto_Anal, G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Datum_Dok, 
  15804.             (Case When A.AnID Is Not Null Then A.BrojDok Else G.Opis End) Opis, G.KojaVal, V.ImeVal, 
  15805.             (Case When A.AnID Is Null Then G.Opis2 End) Opis2,
  15806.             0 As Preth_Dolzi,
  15807.             0 As Preth_Pobaruva,
  15808.             0 As Preth_Dev_Dolzi,
  15809.             0 As Preth_Dev_Pobaruva,
  15810.             (Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) As Tek_Dolzi, 
  15811.             (Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else 0 End) as Tek_Pobaruva,
  15812.             (Case When A.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / A.Kurs Else 0 End) as Tek_Dev_Dolzi,
  15813.             (Case When A.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / A.Kurs Else 0 End) as Tek_Dev_Pobar,
  15814.             G.Sifra_Oe,
  15815.             O.ImeOrg, Div.ImeDiv, GD.Sifra_TrosM, TM.ImeTrosM, GD.Sifra_TrosV, TV.ImeTrosV, GD.Sifra_4Tros, T4.Ime4Tros
  15816.         From GStav G 
  15817.         INNER JOIN GstAnDiv GD On GD.GstID=G.GstID
  15818.         LEFT OUTER JOIN AnFinDok A On A.AnID=GD.AnID
  15819.         LEFT OUTER JOIN KrsLista V ON G.KojaVal = V.SimeVal 
  15820.         LEFT OUTER JOIN Orged O On O.Sifra_Oe=G.Sifra_Oe
  15821.         LEFT OUTER JOIN Divizii Div On Div.Sifra_Div=GD.Sifra_Div
  15822.         LEFT OUTER join TrosokMesto TM ON GD.Sifra_TrosM=TM.Sifra_TrosM
  15823.         LEFT OUTER join TrosokVid TV ON GD.Sifra_TrosV=TV.Sifra_TrosV
  15824.         LEFT OUTER join Trosok4Tip T4 ON GD.Sifra_4Tros=T4.Sifra_4Tros     
  15825.         Where '
  15826.     If @Kto_Sint Is Null
  15827.         Set @SSQL = @SSQL + 'G.Kto_Anal=''' + @Kto_Anal + ''' '
  15828.     Else
  15829.         Set @SSQL = @SSQL + 'SUBSTRING(G.Kto_Anal, 1, 3)=''' + @Kto_Sint + ''' '
  15830.     If @Datum_Dok_Od Is Not Null
  15831.         Set @SSQL = @SSQL + 'And G.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(30)) + ''' '
  15832.     If @Datum_Dok_Do Is Not Null
  15833.         Set @SSQL = @SSQL + 'And G.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(30)) + ''' '
  15834.     If @Datum_Nal_Od Is Not Null
  15835.         Set @SSQL = @SSQL + 'And G.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(30)) + ''' '
  15836.     If @Datum_Nal_Do Is Not Null
  15837.         Set @SSQL = @SSQL + 'And G.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(30)) + ''' '
  15838.     If @Sifra_OE Is Not Null
  15839.         Set @SSQL = @SSQL + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  15840.     If @KoiOE Is Not Null
  15841.         Set @SSQL = @SSQL + ' And G.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  15842.     If @Sifra_Nal Is Not Null
  15843.         Set @SSQL = @SSQL + ' And G.Sifra_Nal = ' + Cast(@Sifra_Nal AS varchar(6)) + ' '
  15844.     If @KojaVal Is Not Null
  15845.         Set @SSQL = @SSQL + ' And G.KojaVal =''' + @KojaVal + ''' '
  15846.     If @Sifra_Div Is Not Null
  15847.         Set @SSQL = @SSQL + ' And GD.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  15848.     If @Sifra_TrosM Is Not Null
  15849.         Set @SSQL = @SSQL + ' And GD.Sifra_TrosM In (' + @Sifra_TrosM + ') ' 
  15850.     If @Sifra_TrosV Is Not Null
  15851.         Set @SSQL = @SSQL + ' And GD.Sifra_TrosV In (' + @Sifra_TrosV + ') ' 
  15852.              If @Sifra_4Tros Is Not Null
  15853.         Set @SSQL = @SSQL + ' And GD.Sifra_4Tros In (' + @Sifra_4Tros + ') ' 
  15854.     Set @SSQL = @SSQL + 'Order By GD.Sifra_Div, G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Sifra_Oe '
  15855. print(@ssql)
  15856.     Exec(@SSQL)
  15857.  
  15858. Go
  15859. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analkart_povekebazi]'))
  15860. drop procedure [dbo].[sp_analkart_povekebazi]
  15861.  
  15862. Go
  15863. CREATE       PROCEDURE sp_AnalKart_PovekeBazi
  15864.     @Kto_Anal Char(10) = NULL,
  15865.     @Datum_Nal_Od Smalldatetime,
  15866.     @Datum_Nal_Do Smalldatetime,
  15867.     @Datum_Dok_Od Smalldatetime,
  15868.     @Datum_Dok_Do Smalldatetime,
  15869.     @Sifra_OE smallint = NULL,
  15870.     @Kto_Sint  char(3) = NULL,
  15871.     @Tek_Godina int = NULL,      --YEAR(GETDATE())
  15872.     @Sifra_Nal smallint = NULL,
  15873.     @KojaVal char(3) = Null,
  15874.     @Sifra_Div smallint = Null,
  15875.     @KoiOe varchar(6) = Null,
  15876.     @ParalenliBazi     varchar(200) = Null
  15877. AS
  15878.     Declare @SSQL Varchar(3000)
  15879.     Declare @God    smallint
  15880.     Set @SSQL = ''
  15881.     Declare @SSQLUsl Varchar(8000)
  15882.     Set @SSQLUsl = ' '
  15883.     Create Table #Bazi
  15884.     (
  15885.      ImeBaza    varchar(50)
  15886.     )
  15887.     Insert Into #Bazi Select db_Name()
  15888.     If @ParalenliBazi Is Not Null
  15889.     Begin
  15890.         Declare @Poz_Delim Smallint
  15891.         Declare @Poz_Start Smallint
  15892.         Declare @BazaIme varchar(50)
  15893.         If @ParalenliBazi Is Null 
  15894.             Set @ParalenliBazi = ''
  15895.         Set @Poz_Start = 0
  15896.         While 1=1
  15897.         Begin
  15898.             Set @Poz_Delim = Charindex(',', @ParalenliBazi, @Poz_Start)
  15899.             If @Poz_Delim = 0
  15900.                 Break
  15901.             Set @BazaIme = SubString(@ParalenliBazi, @Poz_Start, @Poz_Delim-@Poz_Start)
  15902.             Set @Poz_Start = @Poz_Delim + 1
  15903.             Insert Into #Bazi Select @BazaIme
  15904.         End
  15905.     End
  15906.     Create Table #AnalKart
  15907.     (
  15908.      Kto_Anal    varchar(20), 
  15909.      Datum_Nal    smalldatetime, 
  15910.      Sifra_Nal    smallint, 
  15911.      Broj_Nal    int, 
  15912.      Datum_Dok    smalldatetime, 
  15913.      Opis        varchar(50), 
  15914.      KojaVal        varchar(3), 
  15915.      Opis2        varchar(50),        
  15916.      Preth_Dolzi    decimal(18,6),
  15917.      Preth_Pobaruva     decimal(18,6),
  15918.      Preth_Dev_Dolzi    decimal(18,6),
  15919.      Preth_Dev_Pobaruva    decimal(18,6),
  15920.      Tek_Dolzi         decimal(18,6),
  15921.      Tek_Pobaruva        decimal(18,6),
  15922.      Tek_Dev_Dolzi     decimal(18,6),
  15923.      Tek_Dev_Pobar    decimal(18,6),
  15924.      Sifra_Oe    smallint
  15925.     )
  15926.     If @Datum_Nal_Od Is Not Null
  15927.         Set @God = YEAR(@Datum_Nal_Od)
  15928.     ELSE
  15929.         Set @God = @Tek_Godina
  15930.     -------------------------------------------------------------------- U S L O V ----------------------------------------------------------------------
  15931.     If @Kto_Sint Is Null
  15932.         Set @SSQLUsl = @SSQLUsl + ' And G.Kto_Anal=''' + @Kto_Anal + ''' '
  15933.     Else
  15934.         Set @SSQLUsl = @SSQLUsl + ' And SUBSTRING(G.Kto_Anal, 1, 3)=''' + @Kto_Sint + ''' '
  15935.     If @Sifra_OE Is Not Null
  15936.         Set @SSQLUsl = @SSQLUsl + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  15937.     If @KoiOE Is Not Null
  15938.         Set @SSQLUsl = @SSQLUsl + ' And G.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  15939.     If @Sifra_Nal Is Not Null
  15940.         Set @SSQLUsl = @SSQLUsl + ' And G.Sifra_Nal = ' + Cast(@Sifra_Nal AS varchar(6)) + ' '
  15941.     If @KojaVal Is Not Null
  15942.         Set @SSQLUsl = @SSQLUsl + ' And G.KojaVal =''' + @KojaVal + ''' '
  15943.     If @Sifra_Div Is Not Null
  15944.         Set @SSQLUsl = @SSQLUsl + ' And G.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  15945.     --------------------------------------------------------------------------------------------------------------------------------------------------------------
  15946.     Create Table #Preth
  15947.     (
  15948.      Opis        varchar(50), 
  15949.      KojaVal        varchar(3), 
  15950.      Preth_Dolzi    decimal(18,6),
  15951.      Preth_Pobaruva     decimal(18,6),
  15952.      Preth_Dev_Dolzi    decimal(18,6),
  15953.      Preth_Dev_Pobaruva    decimal(18,6),
  15954.      Sifra_Oe    smallint
  15955.     )
  15956.     Declare @ImeBaza as varchar(50)
  15957.     Declare Bazi Cursor 
  15958.     Fast_Forward For Select ImeBaza From #Bazi
  15959.     Open Bazi
  15960.     Fetch Next From Bazi Into @ImeBaza
  15961.     While @@Fetch_Status = 0
  15962.     Begin
  15963.         --Pocetna Sostojba
  15964.         If Not (@Datum_Nal_Od Is Null AND @Datum_Dok_Od Is Null)
  15965.         Begin
  15966.             Set @SSQL = ' Select ''Prethoden Promet'' As Opis, G.KojaVal, 
  15967.                         Sum(G.Dolzi) As Preth_Dolzi,
  15968.                         Sum(G.Pobaruva) As Preth_Pobaruva,
  15969.                         Sum(G.Dev_Dolzi) as Preth_Dev_Dolzi,
  15970.                         Sum(G.Dev_Pobaruva) as Preth_Dev_Pobaruva,
  15971.                         G.Sifra_Oe
  15972.             From ' + @ImeBaza + '..GStav G 
  15973.             Where 1=1 '
  15974.             SET @SSQL = @SSQL + @SSQLUsl
  15975.             If @Datum_Nal_Od Is Not Null
  15976.                 Set @SSQL = @SSQL + ' AND G.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(30)) +
  15977.                 ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  15978.             If @Datum_Dok_Od Is Not Null
  15979.                 Set @SSQL = @SSQL + 'And G.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(30)) + 
  15980.                 ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  15981.             SET @SSQL = @SSQL + ' GROUP BY G.KojaVal, G.Sifra_Oe '
  15982.             Insert Into #Preth Exec(@SSQL)
  15983.         End
  15984.         -- Tekoven promet
  15985.         Set @SSQL = 'Select G.Kto_Anal, G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Datum_Dok, G.Opis, G.KojaVal, G.Opis2,
  15986.             0 As Preth_Dolzi,
  15987.             0 As Preth_Pobaruva,
  15988.             0 As Preth_Dev_Dolzi,
  15989.             0 As Preth_Dev_Pobaruva,
  15990.             G.Dolzi As Tek_Dolzi,
  15991.             G.Pobaruva As Tek_Pobaruva,
  15992.             G.Dev_Dolzi As Tek_Dev_Dolzi,
  15993.             G.Dev_Pobaruva As Tek_Dev_Pobar,
  15994.             G.Sifra_Oe
  15995.             From ' + @ImeBaza + '..GStav G 
  15996.             Where 1=1'
  15997.         Set @SSQL = @SSQL + @SSQLUsl 
  15998.         If @Datum_Dok_Od Is Not Null
  15999.             Set @SSQL = @SSQL + 'And G.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(30)) + ''' '
  16000.         If @Datum_Dok_Do Is Not Null
  16001.             Set @SSQL = @SSQL + 'And G.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(30)) + ''' '
  16002.         If @Datum_Nal_Od Is Not Null
  16003.             Set @SSQL = @SSQL + 'And G.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(30)) + ''' '
  16004.         If @Datum_Nal_Do Is Not Null
  16005.             Set @SSQL = @SSQL + 'And G.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(30)) + ''' '
  16006.         Set @SSQL = @SSQL + 'Order By G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Sifra_Oe '
  16007.         Insert Into #AnalKart Exec(@SSQL)
  16008.         Fetch Next From Bazi Into @ImeBaza
  16009.     End
  16010.     Close Bazi
  16011.     Deallocate Bazi
  16012.     Insert Into #AnalKart 
  16013.     Select Null Kto_Anal, Null Datum_Nal, Null Sifra_Nal, Null Broj_Nal, Null Datum_Dok, 
  16014.         Opis, KojaVal, Null Opis2, Sum(Preth_Dolzi), Sum(Preth_Pobaruva), Sum(Preth_Dev_Dolzi), Sum(Preth_Dev_Pobaruva), 
  16015.         0 Tek_Dolzi, 0 Tek_Pobaruva, 0 Tek_Dev_Dolzi, 0 Tek_Dev_Pobar, Sifra_Oe
  16016.     From #Preth
  16017.     Group By Opis, KojaVal, Sifra_Oe
  16018.     Select G.Kto_Anal, G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Datum_Dok, G.Opis, G.KojaVal, V.ImeVal, G.Opis2,
  16019.         G.Preth_Dolzi, G.Preth_Pobaruva, G.Preth_Dev_Dolzi, G.Preth_Dev_Pobaruva,
  16020.         G.Tek_Dolzi, G.Tek_Pobaruva, G.Tek_Dev_Dolzi, G.Tek_Dev_Pobar,
  16021.         G.Sifra_Oe, O.ImeOrg
  16022.     From #AnalKart G 
  16023.     LEFT OUTER JOIN KrsLista V ON G.KojaVal = V.SimeVal 
  16024.     LEFT OUTER JOIN Orged O On O.Sifra_Oe=G.Sifra_Oe
  16025.     Order By G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Sifra_Oe
  16026.  
  16027.  
  16028.  
  16029. Go
  16030. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analkart_vidtrosok]'))
  16031. drop procedure [dbo].[sp_analkart_vidtrosok]
  16032.  
  16033. Go
  16034.  
  16035. CREATE            PROCEDURE sp_AnalKart_VidTrosok
  16036.     @Sifra_Div         smallint = Null,
  16037.     @Kto_Anal_Od         Char(10) = Null,
  16038.     @Kto_Anal_Do         Char(10) = Null,
  16039.     @Datum_Nal_Od     Smalldatetime,
  16040.     @Datum_Nal_Do     Smalldatetime,
  16041.     @Datum_Dok_Od     Smalldatetime,
  16042.     @Datum_Dok_Do     Smalldatetime,
  16043.     @Sifra_OE         smallint = Null,
  16044.     @KoiOe         varchar(6) = Null,
  16045.     @Kto_Sint          char(3) = Null,
  16046.     @Tek_Godina         int = Null,      --YEAR(GETDATE())
  16047.     @Sifra_Nal         smallint = Null,
  16048.     @KojaVal         char(3) = Null
  16049. AS
  16050.     Declare @SSQL Varchar(8000)
  16051.     Declare @God    smallint
  16052.     Set @SSQL = ''
  16053.     If @Datum_Nal_Od Is Not Null
  16054.         Set @God = YEAR(@Datum_Nal_Od)
  16055.     ELSE
  16056.         Set @God = @Tek_Godina
  16057.  
  16058.     If Not (@Datum_Nal_Od Is Null AND @Datum_Dok_Od Is Null)
  16059.         Begin
  16060.             Set @SSQL = @SSQL + 'Select GD.Sifra_Div, Div.ImeDiv, Null AS Kto_Anal, Null ImeAnal, Null As Datum_Nal, Null As Sifra_Nal, Null As Broj_Nal, Null As Datum_Dok,
  16061.                         ''Prethoden Promet'' As Opis, G.KojaVal, V.ImeVal, Null Opis2,
  16062.                         Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) As Preth_Dolzi, 
  16063.                         Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else 0 End) as Preth_Pobaruva,
  16064.                         Sum(Case When G.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / G.Kurs Else 0 End) as Preth_Dev_Dolzi,
  16065.                         Sum(Case When G.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / G.Kurs Else 0 End) as Preth_Dev_Pobaruva,
  16066.                         0 As Tek_Dolzi,
  16067.                         0 As Tek_Pobaruva,
  16068.                         0 As Tek_Dev_Dolzi,
  16069.                         0 As Tek_Dev_Pobar,
  16070.                         G.Sifra_Oe, O.ImeOrg
  16071.             From GStav G 
  16072.             INNER JOIN GstAnDiv GD On GD.GstID=G.GstID
  16073.             LEFT OUTER JOIN KrsLista V ON G.KojaVal=V.SImeVal 
  16074.             LEFT OUTER JOIN Orged O On O.Sifra_Oe=G.Sifra_Oe
  16075.             LEFT OUTER JOIN Divizii Div On Div.Sifra_Div=GD.Sifra_Div
  16076.             Where 1=1 '
  16077.             If @Kto_Sint Is Not Null
  16078.                 Set @SSQL = @SSQL + ' And Substring(G.Kto_Anal, 1, 3)=''' + @Kto_Sint + ''' '
  16079.             If @Kto_Anal_Od Is Not Null
  16080.                 Set @SSQL = @SSQL + ' And G.Kto_Anal>=''' + @Kto_Anal_Od + ''' '
  16081.             If @Kto_Anal_Do Is Not Null
  16082.                 Set @SSQL = @SSQL + ' And G.Kto_Anal<=''' + @Kto_Anal_Do + ''' '
  16083.             If @Sifra_OE Is Not Null
  16084.                 Set @SSQL = @SSQL + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  16085.             If @KoiOE Is Not Null
  16086.                 Set @SSQL = @SSQL + ' And G.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  16087.             If @Sifra_Nal Is Not Null
  16088.                 Set @SSQL = @SSQL + ' And G.Sifra_Nal = ' + Cast(@Sifra_Nal AS varchar(6)) + ' '
  16089.             If @Datum_Nal_Od Is Not Null
  16090.                 Set @SSQL = @SSQL + ' AND G.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(30)) + ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  16091.             If @Datum_Dok_Od Is Not Null
  16092.                 Set @SSQL = @SSQL + 'And G.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(30)) + ''' AND YEAR(G.Datum_Nal)=' + Cast(@God as char(4))  + ' '
  16093.             If @KojaVal Is Not Null
  16094.                 Set @SSQL = @SSQL + ' And G.KojaVal =''' + @KojaVal + ''' '
  16095.             If @Sifra_Div Is Not Null
  16096.                 Set @SSQL = @SSQL + ' And GD.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  16097.             SET @SSQL = @SSQL + ' GROUP BY GD.Sifra_Div, Div.ImeDiv, G.KojaVal, V.ImeVal, G.Sifra_Oe, O.ImeOrg '
  16098.             Set @SSQL = @SSQL + 'Union ALL '
  16099.         End
  16100.     Set @SSQL = @SSQL + 'Select GD.Sifra_Div, Div.ImeDiv, G.Kto_Anal, KA.ImeAnal, G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Datum_Dok, 
  16101.             (Case When A.AnID Is Not Null Then A.BrojDok Else G.Opis End) Opis, G.KojaVal, V.ImeVal, 
  16102.             (Case When A.AnID Is Null Then G.Opis2 End) Opis2,
  16103.             0 As Preth_Dolzi,
  16104.             0 As Preth_Pobaruva,
  16105.             0 As Preth_Dev_Dolzi,
  16106.             0 As Preth_Dev_Pobaruva,
  16107.             (Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) As Tek_Dolzi, 
  16108.             (Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else 0 End) as Tek_Pobaruva,
  16109.             (Case When A.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / A.Kurs Else 0 End) as Tek_Dev_Dolzi,
  16110.             (Case When A.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / A.Kurs Else 0 End) as Tek_Dev_Pobar,
  16111.             G.Sifra_Oe, O.ImeOrg
  16112.         From GStav G 
  16113.         INNER JOIN GstAnDiv GD On GD.GstID=G.GstID
  16114.         LEFT OUTER JOIN AnFinDok A On A.AnID=GD.AnID
  16115.         LEFT OUTER JOIN KrsLista V ON G.KojaVal = V.SimeVal 
  16116.         LEFT OUTER JOIN Orged O On O.Sifra_Oe=G.Sifra_Oe
  16117.         LEFT OUTER JOIN Divizii Div On Div.Sifra_Div=GD.Sifra_Div
  16118.         LEFT OUTER JOIN Anal KA On KA.Kto_Anal=G.Kto_Anal
  16119.         Where 1 = 1 '
  16120.     If @Kto_Sint Is Not Null
  16121.         Set @SSQL = @SSQL + ' And Substring(G.Kto_Anal, 1, 3)=''' + @Kto_Sint + ''' '
  16122.     If @Kto_Anal_Od Is Not Null
  16123.         Set @SSQL = @SSQL + ' And G.Kto_Anal>=''' + @Kto_Anal_Od + ''' '
  16124.     If @Kto_Anal_Do Is Not Null
  16125.         Set @SSQL = @SSQL + ' And G.Kto_Anal<=''' + @Kto_Anal_Do + ''' '
  16126.     If @Datum_Dok_Od Is Not Null
  16127.         Set @SSQL = @SSQL + 'And G.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(30)) + ''' '
  16128.     If @Datum_Dok_Do Is Not Null
  16129.         Set @SSQL = @SSQL + 'And G.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(30)) + ''' '
  16130.     If @Datum_Nal_Od Is Not Null
  16131.         Set @SSQL = @SSQL + 'And G.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(30)) + ''' '
  16132.     If @Datum_Nal_Do Is Not Null
  16133.         Set @SSQL = @SSQL + 'And G.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(30)) + ''' '
  16134.     If @Sifra_OE Is Not Null
  16135.         Set @SSQL = @SSQL + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  16136.     If @KoiOE Is Not Null
  16137.         Set @SSQL = @SSQL + ' And G.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  16138.     If @Sifra_Nal Is Not Null
  16139.         Set @SSQL = @SSQL + ' And G.Sifra_Nal = ' + Cast(@Sifra_Nal AS varchar(6)) + ' '
  16140.     If @KojaVal Is Not Null
  16141.         Set @SSQL = @SSQL + ' And G.KojaVal =''' + @KojaVal + ''' '
  16142.     If @Sifra_Div Is Not Null
  16143.         Set @SSQL = @SSQL + ' And GD.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  16144.     Set @SSQL = @SSQL + ' Order By GD.Sifra_Div, G.Datum_Nal, G.Sifra_Nal, G.Broj_Nal, G.Sifra_Oe '
  16145. print(@ssql)
  16146.     Exec(@SSQL)
  16147. Go
  16148. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analkasovidok]'))
  16149. drop procedure [dbo].[sp_analkasovidok]
  16150.  
  16151. Go
  16152.  
  16153.  
  16154.  
  16155.  
  16156.  
  16157. CREATE        PROCEDURE sp_AnalKasoviDok
  16158.     @DatumNalOd        smalldatetime=Null,
  16159.     @DatumNalDo        smalldatetime=Null,
  16160.     @Sifra_Nal        smallint=Null,
  16161.     @Broj_NalOd        int=Null,
  16162.     @Broj_NalDo        int=Null,
  16163.     @Kto_Anal        char(10)=Null,
  16164.     @Sifra_KupOd        char(6)=Null,
  16165.     @Sifra_KupDo        char(6)=Null,
  16166.     @KasaGrupa        varchar(10),
  16167.     @Group        char(1) = 'N',
  16168.     @Podred        char(1) = 'D',
  16169.     @Sifra_Oe        smallint = Null,
  16170.     @Datum_DokOd    smalldatetime=Null,
  16171.     @Datum_DokDo    smalldatetime=Null,
  16172.     @Preth_Sost         decimal(18,6) OUTPUT
  16173.  AS
  16174.     Create Table #Table1
  16175.     ( Broj_Dok    int,
  16176.       Dod_Datum    smalldatetime,
  16177.       Kto_Anal    char(10),
  16178.       Dolzi        decimal(18,4),
  16179.       Pobaruva    decimal(18,4),
  16180.       Lice        char(30),
  16181.       Opis        char(30),
  16182.       Opis2        char(30),
  16183.       Sifra_Kup    char(6),
  16184.       ImeKup    char(40),
  16185.       KasaGrupa    char(10),
  16186.       Datum_Nal    smalldatetime,
  16187.       Sifra_Nal    int,
  16188.       Broj_Nal    int,
  16189.       Sifra_Oe    smallint,
  16190.       Sifra_Nac smallint,
  16191.       ImeNac    varchar(30),
  16192.           Kto_Osnovica    char(10)
  16193.     )
  16194.     DECLARE @SSQL Varchar(2000)
  16195. --ZA POC.SOST
  16196.     CREATE TABLE #PocSost
  16197. (    Iznos    decimal(18,6)
  16198. )
  16199.     SET @SSQL = 'Select sum(K.Dolzi - K.Pobaruva) as Iznos
  16200.             From KasStav K
  16201.             Inner Join Nalozi KD On K.Sifra_Nal = KD.Sifra_Nal And K.Broj_Nal=KD.Broj_Nal    
  16202.             left outer Join Komint KUP On K.Sifra_Kup=KUP.Sifra_Kup 
  16203.             Where 1=1 '
  16204.     If @DatumNalOd Is Not Null
  16205.         SET @SSQL = @SSQL + ' And KD.Datum_Nal <''' + cast(@DatumNalOd as varchar(30)) +''' '
  16206.     If @Datum_DokOd Is Not Null
  16207.         SET @SSQL = @SSQL + ' And K.Dod_Datum <''' + cast(@Datum_DokOd as varchar(30)) +''' '
  16208.     If @Sifra_Nal Is Not Null
  16209.         SET @SSQL = @SSQL + ' And K.Sifra_Nal =''' + cast(@Sifra_Nal as varchar(10)) + ''' ' 
  16210.     If @Broj_NalDo Is Not Null
  16211.         SET @SSQL = @SSQL + ' And K.Broj_Nal <''' + cast(@Broj_NalOd as varchar(10)) + ''' ' 
  16212.     If @Kto_Anal Is Not Null
  16213.         SET @SSQL = @SSQL + ' And K.Kto_Anal =' + @Kto_Anal + ' '
  16214.      If @Sifra_KupOd Is Not Null
  16215.         SET @SSQL = @SSQL + ' And K.Sifra_Kup >=' + @Sifra_KupOd + ' '
  16216.      If @Sifra_KupDo Is Not Null
  16217.         SET @SSQL = @SSQL + ' And K.Sifra_Kup <=' + @Sifra_KupDo + ' '
  16218.      If @KasaGrupa Is Not Null
  16219.         SET @SSQL = @SSQL + ' And K.KasaGrupa =''' + @KasaGrupa + ''' '
  16220.     If @Sifra_Oe Is Not Null
  16221.         SET @SSQL = @SSQL + ' And K.Sifra_Oe =''' + cast(@Sifra_Oe as varchar(10)) + ''' ' 
  16222.     INSERT INTO #PocSost EXEC (@SSQL)
  16223.     SELECT @Preth_Sost= Iznos FROM #PocSost
  16224. --KRAJ ZA POC.SOST
  16225.     SET @SSQL = 'Select K.Broj_dok, K.Dod_Datum, K.Kto_Anal, K.Dolzi, K.Pobaruva, K.Lice, K.Opis, K.Opis2, K.Sifra_Kup, KUP.ImeKup, K.KasaGrupa,
  16226.             KD.Datum_Nal, K.Sifra_Nal, K.Broj_Nal, K.Sifra_Oe, K.Sifra_Nac, N.ImeNac, K.Kto_Osnovica
  16227.             From KasStav K
  16228.             Inner Join Nalozi KD On K.Sifra_Nal = KD.Sifra_Nal And K.Broj_Nal=KD.Broj_Nal    
  16229.             left outer Join Komint KUP On K.Sifra_Kup=KUP.Sifra_Kup 
  16230.             LEFT OUTER JOIN NacPlak N ON K.Sifra_Nac=N.Sifra_Nac
  16231.             Where 1=1 '
  16232.     If @DatumNalOd Is Not Null
  16233.         SET @SSQL = @SSQL + ' And KD.Datum_Nal >=''' + cast(@DatumNalOd as varchar(30)) +''' '
  16234.     If @DatumNalDo Is Not Null
  16235.         SET @SSQL = @SSQL + ' And KD.Datum_Nal <=''' + cast(@DatumNalDo as varchar(30)) +''' '
  16236.     If @Datum_DokOd Is Not Null
  16237.         SET @SSQL = @SSQL + ' And K.Dod_Datum >=''' + cast(@Datum_DokOd as varchar(30)) +''' '
  16238.     If @Datum_DokDo Is Not Null
  16239.         SET @SSQL = @SSQL + ' And K.Dod_Datum <=''' + cast(@Datum_DokDo as varchar(30)) +''' '
  16240.     If @Sifra_Nal Is Not Null
  16241.         SET @SSQL = @SSQL + ' And K.Sifra_Nal =''' + cast(@Sifra_Nal as varchar(10)) + ''' ' 
  16242.     If @Broj_NalOd Is Not Null
  16243.         SET @SSQL = @SSQL + ' And K.Broj_Nal >=''' + cast(@Broj_NalOd as varchar(10)) + ''' ' 
  16244.     If @Broj_NalDo Is Not Null
  16245.         SET @SSQL = @SSQL + ' And K.Broj_Nal <=''' + cast(@Broj_NalDo as varchar(10)) + ''' ' 
  16246.     If @Kto_Anal Is Not Null
  16247.         SET @SSQL = @SSQL + ' And K.Kto_Anal =' + @Kto_Anal + ' '
  16248.      If @Sifra_KupOd Is Not Null
  16249.         SET @SSQL = @SSQL + ' And K.Sifra_Kup >=' + @Sifra_KupOd + ' '
  16250.      If @Sifra_KupDo Is Not Null
  16251.         SET @SSQL = @SSQL + ' And K.Sifra_Kup <=' + @Sifra_KupDo + ' '
  16252.      If @KasaGrupa Is Not Null
  16253.         SET @SSQL = @SSQL + ' And K.KasaGrupa =''' + @KasaGrupa + ''' '
  16254.     If @Sifra_Oe Is Not Null
  16255.         SET @SSQL = @SSQL + ' And K.Sifra_Oe =''' + cast(@Sifra_Oe as varchar(10)) + ''' ' 
  16256. INSERT INTO #Table1 EXEC(@SSQL)
  16257.     If @Group = 'D'
  16258.         Begin
  16259.         Create Table #TableG
  16260.         ( Broj_Dok    int,
  16261.           Dod_Datum    smalldatetime,
  16262.           Kto_Anal    char(10),
  16263.           Dolzi        decimal(18,4),
  16264.           Pobaruva    decimal(18,4),
  16265.           Lice        char(30),
  16266.           Opis        char(30),
  16267.           Opis2        char(30),           Sifra_Kup    char(6),
  16268.           ImeKup    char(40),
  16269.           KasaGrupa    char(10),
  16270.           Datum_Nal    smalldatetime,
  16271.           Sifra_Nal    int,
  16272.           Broj_Nal    int,
  16273.           Sifra_Oe    smallint,
  16274.           Sifra_Nac smallint,
  16275.           ImeNac    varchar(30),
  16276.                   Kto_Osnovica    char(10)
  16277.         )
  16278.         If @Podred = 'D'
  16279.             SET @SSQL='Select 0 Broj_dok, Null Dod_Datum, NULL Kto_Anal, sum(Dolzi) Dolzi, sum(Pobaruva) Pobaruva, 
  16280.                            '' '' Lice, '' '' Opis,'' '' Opis2, '' '' Sifra_Kup,  '' '' ImeKup, '' '' KasaGrupa, 
  16281.                             Datum_Nal, 0 as Sifra_Nal, 0 as Broj_Nal, 0 as Sifra_Oe, 0 as Sifra_Nac, '''' as ImeNac, NULL Kto_Osnovica
  16282.                 From #Table1 
  16283.                 Group By Datum_Nal '
  16284.         Else If @Podred = 'A'
  16285.             SET @SSQL='Select 0 Broj_dok, Null Dod_Datum, Kto_Anal, sum(Dolzi) Dolzi, sum(Pobaruva) Pobaruva, 
  16286.                            '' '' Lice, '' '' Opis,'' '' Opis2, '' '' Sifra_Kup, '' '' ImeKup, '' '' KasaGrupa, 
  16287.                             NULL Datum_Nal, 0 as Sifra_Nal, 0 as Broj_Nal, 0 as Sifra_Oe, 0 as Sifra_Nac, '''' as ImeNac, NULL Kto_Osnovica
  16288.                 From #Table1 
  16289.                 Group By Kto_Anal '
  16290.         Else If @Podred = 'K'
  16291.             SET @SSQL='Select 0 Broj_dok, Null Dod_Datum, NULL Kto_Anal, sum(Dolzi) Dolzi, sum(Pobaruva) Pobaruva, 
  16292.                            '' '' Lice, '' '' Opis, '' '' Opis2, '' '' Sifra_Kup,  ImeKup, '' '' KasaGrupa, 
  16293.                         null Datum_Nal, 0 as Sifra_Nal, 0 as Broj_Nal, 0 as Sifra_Oe, 0 as Sifra_Nac, '''' as ImeNac, NULL Kto_Osnovica
  16294.                 From #Table1 
  16295.                 Group By ImeKup '
  16296.         Else If @Podred = 'G'
  16297.             SET @SSQL='Select 0 Broj_dok, Null Dod_Datum, NULL Kto_Anal, sum(Dolzi) Dolzi, sum(Pobaruva) Pobaruva, 
  16298.                            '' '' Lice, '' '' Opis,'' '' Opis2, '' '' Sifra_Kup, '' '' ImeKup, KasaGrupa, 
  16299.                             null Datum_Nal, 0 as Sifra_Nal, 0 as Broj_Nal, 0 as Sifra_Oe, 0 as Sifra_Nac, '''' as ImeNac, NULL Kto_Osnovica
  16300.                 From #Table1
  16301.                 Group By KasaGrupa '
  16302.         INSERT INTO #TableG EXEC(@SSQL)
  16303.         SET @SSQL='Select * From #TableG K'
  16304.         End
  16305.     Else If @Group = 'N'
  16306.         Begin
  16307.         SET @SSQL='Select * From #Table1 K'
  16308.         End
  16309.     If @Podred = 'D'
  16310.         Begin
  16311.         If @Group = 'D'
  16312.             Set @SSQL = @SSQL+ ' Order By K.Datum_Nal ' 
  16313.         Else 
  16314.             Set @SSQL = @SSQL+ ' Order By K.Dod_Datum ' 
  16315.         End
  16316.     Else If @Podred = 'A'
  16317.         Begin
  16318.             Set @SSQL = @SSQL+ ' Order By K.Kto_Anal ' 
  16319.         End
  16320.     Else If @Podred = 'K'
  16321.         Begin
  16322.             Set @SSQL = @SSQL+ ' Order By K.Imekup ' 
  16323.         End
  16324.     Else If @Podred = 'G'
  16325.         Begin
  16326.             Set @SSQL = @SSQL+ ' Order By K.KasaGrupa ' 
  16327.         End
  16328.     Else If @Podred = Null
  16329.         Begin
  16330.             Set @SSQL = @SSQL 
  16331.         End
  16332. EXEC(@SSQL)
  16333.  
  16334.  
  16335.  
  16336.  
  16337.  
  16338. Go
  16339. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analkompenz]'))
  16340. drop procedure [dbo].[sp_analkompenz]
  16341.  
  16342. Go
  16343.  
  16344. CREATE   PROCEDURE sp_AnalKompenz
  16345.     @Broj_Od Int = Null,
  16346.     @Broj_Do Int = Null,
  16347.     @Datum_Od Smalldatetime = Null,
  16348.     @Datum_Do Smalldatetime = Null,
  16349.     @Sifra_Kup Varchar(10) = Null,
  16350.     @PrikPatnik char(1) = 'N'
  16351. AS
  16352.     Declare @SSQL Varchar(2000)
  16353.     Set @SSQL = 'Select K.Broj_Komp, K.Datum_Komp, K.Opis,
  16354.         K.Sifra_Kup, Kup.ImeKup, Kup.SMesto, Kup.Telefon,
  16355.         Sum(KS.Dolzi) Dolzi, Sum(KS.Pobaruva) Pobaruva, '
  16356.     If @PrikPatnik = 'D'
  16357.         Set @SSQL = @SSQL + ' (Case When A.Sifra_Pat Is Null Then '''' Else A.Sifra_Pat End) Sifra_Pat '
  16358.     Else 
  16359.         Set @SSQL = @SSQL + ' Null Sifra_Pat '
  16360.     Set @SSQL = @SSQL + 'From Kompenz K
  16361.         Inner Join Komint Kup On K.Sifra_Kup=Kup.Sifra_Kup
  16362.         Inner Join KompStav KS On K.Broj_Komp=KS.Broj_Komp '
  16363.     If @PrikPatnik = 'D'
  16364.         Set @SSQL = @SSQL + 'Left Outer Join AnFinDok A On A.Sifra_Oe=KS.Sifra_Oe And A.Sifra_Dok=KS.Sifra_Dok And A.Broj_Dok=KS.Broj_Dok '
  16365.     Set @SSQL = @SSQL + ' Where 1=1 '
  16366.     If @Broj_Od Is Not Null
  16367.         Set @SSQL = @SSQL + 'And K.Broj_Komp>=' + Cast(@Broj_Od As Varchar(10)) + ' '
  16368.     If @Broj_Do Is Not Null
  16369.         Set @SSQL = @SSQL + 'And K.Broj_Komp<=' + Cast(@Broj_Do As Varchar(10)) + ' '
  16370.     If @Datum_Od Is Not Null
  16371.         Set @SSQL = @SSQL + 'And K.Datum_Komp>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  16372.     If @Datum_Do Is Not Null
  16373.         Set @SSQL = @SSQL + 'And K.Datum_Komp<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  16374.     If @Sifra_Kup Is Not Null
  16375.         Set @SSQL = @SSQL + 'And K.Sifra_Kup=''' + @Sifra_Kup + ''' '
  16376.     Set @SSQL = @SSQL + 'Group By K.Broj_Komp, K.Datum_Komp, K.Opis,
  16377.         K.Sifra_Kup, Kup.ImeKup, Kup.SMesto, Kup.Telefon '
  16378.     If @PrikPatnik = 'D'
  16379.         Set @SSQL = @SSQL + ', A.Sifra_Pat '
  16380.     Set @SSQL = @SSQL + 'Order By K.Datum_Komp, K.Broj_Komp '
  16381.     Exec(@SSQL)
  16382.  
  16383.  
  16384. Go
  16385. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analkto_od_do]'))
  16386. drop procedure [dbo].[sp_analkto_od_do]
  16387.  
  16388. Go
  16389. CREATE  PROCEDURE sp_AnalKto_Od_Do
  16390.     @Sifra_OE Smallint = Null,
  16391.     @Kto_Od Varchar(10),
  16392.     @Kto_Do Varchar(10)
  16393. AS
  16394.     Declare @SSQL As Varchar(1250)
  16395.     Set @SSQL = 'Select Distinct GS.Kto_Anal, A.ImeAnal From GStav GS
  16396.     Inner Join Anal A On GS.Kto_Anal=A.Kto_Anal
  16397.     Where GS.Kto_Anal>=''' + @Kto_Od + ''' And GS.Kto_Anal<=''' + @Kto_Do + ''' '
  16398.     If @Sifra_OE Is Not Null
  16399.         Set @SSQL = @SSQL + 'And GS.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  16400.     Set @SSQL = @SSQL + 'Order By GS.Kto_Anal '
  16401.     Exec(@SSQL)
  16402.  
  16403.  
  16404.  
  16405. Go
  16406. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analpopis_inventar]'))
  16407. drop procedure [dbo].[sp_analpopis_inventar]
  16408.  
  16409. Go
  16410. CREATE PROCEDURE sp_AnalPopis_Inventar
  16411.     @Sifra_Oe    smallint = Null,
  16412.     @Datum_Od    smalldatetime = Null,
  16413.     @Datum_Do    smalldatetime = Null,
  16414.     @BrojInvP_Od    int = Null,
  16415.     @BrojInvP_Do    int = Null
  16416.  AS
  16417.     Declare @SSQL as varchar(4000)
  16418.     Set @SSQL = ' Select Distinct P.Sifra_Oe, O.ImeOrg, P.Datum_InvP, P.BrojInvP
  16419.             From InvPopis P
  16420.             Inner Join Orged O On O.Sifra_Oe=P.Sifra_Oe
  16421.             Where 1=1 '
  16422.     If @Sifra_Oe Is Not Null
  16423.         Set @SSQL = @SSQL + ' And P.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(10)) + ''' '
  16424.     If @Datum_Od Is Not Null
  16425.         Set @SSQL = @SSQL + ' And P.Datum_InvP >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  16426.     If @Datum_Do Is Not Null
  16427.         Set @SSQL = @SSQL + ' And P.Datum_InvP <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  16428.     If @BrojInvP_Od Is Not Null
  16429.         Set @SSQL = @SSQL + ' And P.BrojInvP >= ''' + cast(@BrojInvP_Od as varchar(10)) + ''' '
  16430.     If @BrojInvP_Do Is Not Null
  16431.         Set @SSQL = @SSQL + ' And P.BrojInvP <= ''' + cast(@BrojInvP_Do as varchar(10)) + ''' '
  16432.     Exec(@SSQL)
  16433.  
  16434.  
  16435.  
  16436. Go
  16437. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analprodmest]'))
  16438. drop procedure [dbo].[sp_analprodmest]
  16439.  
  16440. Go
  16441.  
  16442.  
  16443.  
  16444. CREATE     PROCEDURE sp_AnalProdMest
  16445.     @Sifra_Mest    int = Null,
  16446.     @Sifra_Kup    char(6) = Null,
  16447.     @Sifra_Obj    smallint = Null,
  16448.     @Datum_Od    smalldatetime = Null,
  16449.     @Datum_Do    smalldatetime = Null,
  16450.     @VlIzlPros    varchar(200) = '''V'', ''I'', ''D'', ''S'', ''K''' ,
  16451.     @KajNas    Char(1) = 'N',
  16452.     @Sifra_Ser    Char(6) = Null,
  16453.     @Sif_TipProdM smallint = Null,
  16454.         @Sifra_Pat     smallint= null  
  16455. AS
  16456.     Declare @SSQL as Varchar(4000)
  16457.     Set @SSQL = ' Select S.Sifra_Mest, S.Sifra_Kup, Kup.ImeKup, S.Sifra_Obj, KO.ImeObj, S.Opis, S.VlIzlPros, S.Iznos, S.Datum_Dok, S.Sifra_ser, K.ImeKup ImeSer, S.Identif_Br, S.Broj_Dok
  16458.             From StaProdMest S
  16459.             Left Outer Join Komint KUP On KUP.Sifra_Kup = S.Sifra_Kup
  16460.             Left Outer Join Komint K On K.Sifra_Kup = S.Sifra_Ser
  16461.             Left Outer Join KObjekti KO On KO.Sifra_Kup = S.Sifra_Kup and KO.Sifra_Obj = S.Sifra_Obj
  16462.             Left Outer Join ProdMest PR on PR.Sifra_Mest = S.Sifra_Mest 
  16463.             Where 1=1 '
  16464.     If @Sifra_Mest Is Not Null
  16465.         Set @SSQL = @SSQL + ' And S.Sifra_Mest = ' + cast(@Sifra_Mest as Varchar(6)) + ' '
  16466.     If @KajNas ='D'
  16467.         Set @SSQL = @SSQL + ' And S.Sifra_Kup Is Null and S.Sifra_Obj Is Null ' 
  16468.     Else
  16469.     Begin
  16470.         If @Sifra_Kup Is Not Null
  16471.             Set @SSQL = @SSQL + ' And S.Sifra_Kup = ' + @Sifra_Kup + ' '
  16472.         If @Sifra_Obj Is Not Null
  16473.             Set @SSQL = @SSQL + ' And S.Sifra_Obj = ' + cast(@Sifra_Obj as Varchar(6)) + ' '
  16474.     End
  16475.     If @Datum_Od Is Not Null
  16476.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  16477.     If @Datum_Do Is Not Null
  16478.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  16479.     If @VlIzlPros Is Not Null
  16480.         Set @SSQL = @SSQL + ' And S.VlIzlPros In ( ' + @VlIzlPros + ') '
  16481.        If @Sifra_Ser Is NOT Null
  16482.               SET @SSQL = @SSQL + 'AND S.Sifra_Ser=''' + @Sifra_Ser + ''' '
  16483.     If @Sif_TipProdM Is Not Null
  16484.             Set @SSQL = @SSQL + ' And PR.Sif_TipProdM = ' + cast(@Sif_TipProdM as Varchar(6)) + ' '
  16485.         If @Sifra_Pat Is Not Null
  16486.             Set @SSQL = @SSQL + ' And PR.Sifra_Pat = ' + cast(@Sifra_Pat as Varchar(6)) + ' '
  16487.     Set @SSQL = @SSQL + ' Order By S.Datum_Dok, S.Broj_Dok '
  16488.     Print @SSQL
  16489.     Exec(@SSQL)
  16490.  
  16491.  
  16492.  
  16493.  
  16494.  
  16495.  
  16496.  
  16497. Go
  16498. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analpromeni_osnsred]'))
  16499. drop procedure [dbo].[sp_analpromeni_osnsred]
  16500.  
  16501. Go
  16502.  
  16503.  
  16504.  
  16505. CREATE        PROCEDURE [dbo].[sp_AnalPromeni_OsnSred]
  16506.     @Delov_God    smallint = Null,
  16507.     @Datum_Od    smalldatetime=Null,
  16508.     @Datum_Do    smalldatetime=Null,
  16509.     @Inv_BrojOd    char(10) = Null,
  16510.     @Inv_BrojDo    char(10) = Null,
  16511.     @Sifra_Lok    char(3) = Null,
  16512.     @Sifra_MikLok    char(10) = Null,
  16513.     @Sifra_MakLok    char(10) = Null,
  16514.     @Sifra_Amor    char(3) = Null,
  16515.     @Podred    char(1) = 'S',
  16516.     @Tip_StaOsn    char(1) = Null,    -- P - Priem, D - Dogradba, Z - Promena na lokacija, -- T,Q - Otpis
  16517.                     -- ? - Prenos, I,Y - Inicijalen Vlez,R-Rashod,F-Prodazba,M-Miruvanje, A-aktiviranje po miruvanje,O-delumen otpis
  16518.     @OS_SI    char(1) = 'O'    -- O - Osnovni Sredstva,     S - Siten Inventar
  16519. AS
  16520.     Declare @SSQL as varchar(8000)
  16521.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, D.Sifra_Nal, D.Broj_Nal, 
  16522.                 S.Inv_Broj, O.Ime, S.Datum_Dok StavDatum_Dok, S.Tip_StaOsn,     S.VlIzl, 
  16523.                 O.Sifra_MikLok, MikL.Ime_MikLok,  MikL.Sifra_MakLok, MakL.Ime_MakLok,O.RedTrans, '
  16524.  
  16525.     IF @Tip_StaOsn IN ('P', 'I', 'Y')
  16526.         Set @SSQL = @SSQL + ' S.Osn_Amor, S.Otpis_Pret, '
  16527.     ELSE
  16528.         Set @SSQL = @SSQL + ' P.Osn_Amor, P.Otpis_Pret, '
  16529.  
  16530.     Set @SSQL = @SSQL + 'S.Sifra_MikLok_Od, MikL1.Ime_MikLok Ime_MikLokOd,
  16531.                 MikL1.Sifra_MakLok as Sifra_MakLokOd, MakL1.Ime_MakLok Ime_MakLokOd,
  16532.                 S.Orig_Nab_Vr,     O.Valuta, S.Orig_Nab_Vr_Val, S.Delov_God, O.Sifra_Rab, R.ImeRab, 
  16533.                 S.Sifra_RabOd, R1.ImeRab ImeRabOd, O.Kto_Anal, MakL.Sifra_Lok, 
  16534.                 O.Sifra_Amor, AG.Ime As ImeAmor, AG.Stapka As StapkaAmor,
  16535.                 Kup.ImeKup
  16536.             From DokOsnSred D 
  16537.             Inner Join StavOsnSred S On S.DokOID=D.DokOID
  16538.             Inner Join OsnSred O On O.Inv_Broj=S.Inv_Broj
  16539.             Left Outer Join MikroLok MikL On MikL.Sifra_MikLok = O.Sifra_MikLok
  16540.             Left Outer Join MikroLok MikL1 On MikL1.Sifra_MikLok = S.Sifra_MikLok_Od
  16541.             Left Outer Join MakroLok MakL On MakL.Sifra_MakLok = MikL.Sifra_MakLok
  16542.             Left Outer Join MakroLok MakL1 On MakL1.Sifra_MakLok = MikL1.Sifra_MakLok
  16543.             Left Outer Join Rabotnik R On R.Sifra_Rab=O.Sifra_Rab
  16544.             Left Outer Join Rabotnik R1 On R1.Sifra_Rab=S.Sifra_RabOd
  16545.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  16546.             Left Outer Join AmorGrp AG On AG.Sifra_Amor=O.Sifra_Amor
  16547.             LEFT OUTER JOIN PocSostOsn P ON S.Inv_Broj=P.Inv_Broj AND P.Godina=S.Delov_God
  16548.             Where 1=1 ' --AND P.Godina='+Cast(@Delov_God as char(4))+ ' '    --P.Godina= bese trgnato do 07.05.11, ne znam zosto, pa se dupliraa stavki
  16549.     If @Tip_StaOsn Is Not Null
  16550.         Set @SSQL = @SSQL + ' And S.Tip_StaOsn = ''' + @Tip_StaOsn + ''' ' 
  16551.     If @Sifra_Amor Is Not Null
  16552.         Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  16553.     If @Sifra_MikLok Is Not Null
  16554.         Set @SSQL = @SSQL + ' And O.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  16555.     If @Sifra_MakLok Is Not Null
  16556.         Set @SSQL = @SSQL + ' And MikL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  16557.     If @Sifra_Lok Is Not Null
  16558.         Set @SSQL = @SSQL + ' And MakL.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  16559.     If @Inv_BrojOd Is Not Null
  16560.         Set @SSQL = @SSQL + ' And S.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  16561.     If @Inv_BrojDo Is Not Null
  16562.         Set @SSQL = @SSQL + ' And S.Inv_Broj <= ''' + @Inv_BrojDo + ''' '
  16563.     --If @Delov_God Is Not Null
  16564.     --    Set @SSQL = @SSQL + ' And S.Delov_God = ''' + Cast(@Delov_God as varchar(6)) + ''' '
  16565.     If @Datum_Od Is Not Null
  16566.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  16567.     If @Datum_Do Is Not Null
  16568.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  16569.     If @OS_SI = 'O'
  16570.         Set @SSQL = @SSQL + ' And O.Tip = ''OS'' '
  16571.     Else If @OS_SI = 'S'
  16572.         Set @SSQL = @SSQL + ' And O.Tip = ''SI'' '
  16573.     If @Podred = 'S'    
  16574.         Set @SSQL = @SSQL + ' Order By S.Inv_Broj '
  16575.     Else If @Podred = 'A'    
  16576.         Set @SSQL = @SSQL + ' Order By O.Ime '
  16577. print @ssql
  16578.  
  16579. Exec(@SSQL)
  16580.  
  16581.  
  16582.  
  16583.  
  16584.  
  16585.  
  16586.  
  16587.  
  16588.  
  16589.  
  16590.  
  16591. Go
  16592. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analstaambal]'))
  16593. drop procedure [dbo].[sp_analstaambal]
  16594.  
  16595. Go
  16596. CREATE PROCEDURE sp_AnalStaAmbal
  16597.     @Sifra_Oe    smallint,
  16598.     @Sifra_Dok    smallint,
  16599.     @Sifra_Kup    char(6),
  16600.     @Datum_Od    smalldatetime,
  16601.     @Datum_Do    smalldatetime,
  16602.     @Sifra_Amb    char(6),
  16603.     @Sifra_GAmb    char(6),
  16604.     @Povratna    char(1) = 'D',
  16605.     @KupDob    char(1) = 'K'
  16606.  AS
  16607.     Declare @SSQL as varchar(8000)
  16608.     Set @SSQL = ' Select S.DokrId, D.Sifra_Oe, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup,  Kup.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  16609.             S.Sifra_Amb, A.ImeAmb, A.Sifra_GAmb, G.ImeAmb ImeGAmb, S.Kolic, D.VlIzl, O.ImeOrg, A.SodrziArt, 
  16610.             (Case When (A.VoGamb Is Null Or A.VoGAmb=0) Then 1 Else A.VoGamb End) VoGAmb
  16611.             From Dokr D
  16612.             Inner Join StaAmbal S On S.DokrID=D.DokrID
  16613.             Left Outer Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb
  16614.             Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb
  16615.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  16616.             Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  16617.             Left Outer Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  16618.             Left Outer Join Orged O On O.Sifra_Oe=D.Sifra_Oe
  16619.             Where 1=1 '
  16620.     If @KupDob = 'K'
  16621.         Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' '
  16622.     Else If @KupDob = 'D'
  16623.         Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' '
  16624.     If @Povratna = 'D'
  16625.         Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  16626.     If @Sifra_Oe Is Not Null
  16627.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  16628.     If @Sifra_Dok Is Not Null
  16629.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + cast(@Sifra_Dok as varchar(10)) + ' '
  16630.     If @Sifra_Kup Is Not Null
  16631.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  16632.     If @Datum_Od Is Not Null
  16633.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  16634.     If @Datum_Do Is Not Null
  16635.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  16636.     If @Sifra_Amb Is Not Null
  16637.         Set @SSQL = @SSQL + ' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  16638.     If @Sifra_GAmb Is Not Null
  16639.         Set @SSQL = @SSQL + ' And A.Sifra_GAmb = ''' + @Sifra_GAmb + ''' '
  16640.     Exec(@SSQL)
  16641.  
  16642.  
  16643.  
  16644. Go
  16645. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_analzakompez]'))
  16646. drop procedure [dbo].[sp_analzakompez]
  16647.  
  16648. Go
  16649.  
  16650. CREATE    PROCEDURE sp_AnalZaKompez
  16651.     @Sifra_Nivo        Char(2) = Null,
  16652.     @Datum_DoKup     Smalldatetime = null, 
  16653.     @Datum_DoDob    Smalldatetime = null,
  16654.     @Sifra_Kup_Od     Char(6)= null,
  16655.     @Sifra_Kup_Do     Char(6) = null,
  16656.     @Sifra_OE        Smallint = Null,
  16657.     @Koi_Gradovi        Varchar(200) = Null,
  16658.     @Koi_Regioni        Varchar(200) = Null,
  16659.        @KoiKtaKup         Varchar(200) = Null,
  16660.     @KoiKtaDob        Varchar(200) = Null,
  16661.     @Dat_Dok_Kup_Od    Smalldatetime = Null,
  16662.     @Dat_Dok_Kup_Do    Smalldatetime = Null
  16663. AS
  16664.     Set Nocount On
  16665.     Declare @SSQL Varchar(8000)
  16666.     Declare @SSQLUsl Varchar(8000) 
  16667.     Set @SSQL = ' '
  16668.     Set @SSQLUsl = ' '
  16669.     If @Sifra_Nivo Is Not Null
  16670.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  16671.     If @Sifra_Kup_Od Is Not Null
  16672.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_Kup>=''' + @Sifra_Kup_Od + ''' '
  16673.     If @Sifra_Kup_Do Is Not Null
  16674.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_Kup<=''' + @Sifra_Kup_Do + ''' '
  16675.     If @Sifra_OE Is Not Null
  16676.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  16677.     If @Koi_Gradovi Is Not NULL    
  16678.             Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Grad In (' + @Koi_Gradovi + ') '     
  16679.     If @Koi_Regioni Is Not NULL    
  16680.             Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Reg In (' + @Koi_Regioni + ') '
  16681.  
  16682.     create Table #FinKup
  16683. (    Sifra_Kup    char(6),
  16684.     Saldo_Kup    decimal(18,6)
  16685. )
  16686.     CREATE         Table #FinKupDosp
  16687. (    Sifra_Kup    char(6),
  16688.     Saldo_DospKup    decimal(18,6)
  16689. )
  16690.     CREATE TABLE #FinDob
  16691. (    Sifra_Kup    char(6),
  16692.     Saldo_Dob    decimal(18,6)
  16693. )
  16694.     Set @SSQL = 'Select  A.Sifra_Kup, Sum(A.Dolzi - A.Pobaruva)
  16695.     From AnFinDok A
  16696.     Inner Join Komint KUP On A.Sifra_Kup=KUP.Sifra_Kup
  16697.     Where A.Sifra_Za=1 '
  16698.     If @Datum_DoKup IS NOT NULL
  16699.         SET @SSQL = @SSQL + ' And A.Datum_Dok<= ''' + Cast(@Datum_DoKup As Varchar(35)) + ''' '
  16700.     If @KoiKtaKup Is Not Null
  16701.         Set @SSQL =@SSQL + ' And A.Kto In (' + @KoiKtaKup + ') '
  16702.     SET @SSQL = @SSQL + @SSQLUSL + ' GROUP BY A.Sifra_Kup HAVING Sum(A.Dolzi - A.Plateno_Dolzi - (A.Pobaruva - A.Plateno_Pobar)) > 0'
  16703.     INSERT INTO #FinKup (Sifra_Kup, Saldo_Kup) EXEC(@SSQL) 
  16704.     Set @SSQL = 'Select  A.Sifra_Kup, Sum(A.Dolzi - A.Plateno_Dolzi - (A.Pobaruva - A.Plateno_Pobar))
  16705.     From AnFinDok A
  16706.     Inner Join Komint KUP On A.Sifra_Kup=KUP.Sifra_Kup
  16707.     Where A.Sifra_Za=1 And (A.Dolzi <> A.Plateno_Dolzi OR A.Pobaruva <> A.Plateno_Pobar) '
  16708.     If @Datum_DoKup IS NOT NULL
  16709.         SET @SSQL = @SSQL + ' And DateAdd(Day, Rok, Datum_Dok)<= ''' + Cast(@Datum_DoKup As Varchar(35)) + ''' '
  16710.     If @Dat_Dok_Kup_Od IS NOT NULL
  16711.         SET @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + Cast(@Dat_Dok_Kup_Od As Varchar(35)) + ''' '
  16712.     If @Dat_Dok_Kup_Do IS NOT NULL
  16713.         SET @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + Cast(@Dat_Dok_Kup_Do As Varchar(35)) + ''' '
  16714.     If @KoiKtaKup Is Not Null
  16715.         Set @SSQL =@SSQL + ' And A.Kto In (' + @KoiKtaKup + ') '
  16716.     SET @SSQL = @SSQL + @SSQLUSL + ' GROUP BY A.Sifra_Kup HAVING Sum(A.Dolzi - A.Plateno_Dolzi - (A.Pobaruva - A.Plateno_Pobar)) > 0'
  16717.  
  16718.     INSERT INTO #FinKupDosp (Sifra_Kup, Saldo_DospKup) EXEC(@SSQL) 
  16719.  
  16720.     Set @SSQL = 'Select  A.Sifra_Kup,  Sum(A.Pobaruva - A.Dolzi)
  16721.     From AnFinDok A
  16722.     Inner Join #FinKup K ON A.Sifra_Kup = K.Sifra_Kup
  16723.     Inner Join Komint KUP On A.Sifra_Kup=KUP.Sifra_Kup
  16724.     Where A.Sifra_Za=2 '
  16725.     If @Datum_DoDob IS NOT NULL
  16726.         SET @SSQL = @SSQL + ' And A.Datum_Dok<= ''' + Cast(@Datum_DoDob As Varchar(35)) + ''' '
  16727.     If @KoiKtaDob Is Not Null
  16728.         Set @SSQL =@SSQL + ' And A.Kto In (' + @KoiKtaDob + ') '
  16729.     SET @SSQL = @SSQL + @SSQLUSL + ' GROUP BY A.Sifra_Kup '
  16730.     INSERT INTO #FinDob (Sifra_Kup, Saldo_Dob) EXEC(@SSQL) 
  16731.  
  16732.     SELECT K.*, case when KD.Saldo_DospKup is null then 0 else KD.Saldo_DospKup end Saldo_DospKup,
  16733.             case when D.Saldo_Dob is null then 0 else D.Saldo_Dob end Saldo_Dob,
  16734.                     KUP.ImeKup, KUP.Sifra_Grad, G.ImeGrad, Kup.Sifra_Reg, R.ImeRegion
  16735.     FROM #FinKup K
  16736.     LEFT OUTER JOIN #FinKupDosp KD ON K.Sifra_Kup = KD.Sifra_Kup
  16737.     LEFT OUTER JOIN #FinDob D ON K.Sifra_Kup = D.Sifra_Kup
  16738.     INNER JOIN Komint KUP ON K.Sifra_Kup = KUP.Sifra_Kup
  16739.     LEFT OUTER JOIN Grad G ON KUP.Sifra_Grad = G.Sifra_Grad
  16740.     LEFT OUTER JOIN GRegion R ON KUP.Sifra_Reg = R.Sifra_Reg
  16741.  
  16742.  
  16743.  
  16744.  
  16745.  
  16746. Go
  16747. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_art_grupaorgcen_beznorm]'))
  16748. drop procedure [dbo].[sp_art_grupaorgcen_beznorm]
  16749.  
  16750. Go
  16751. CREATE PROCEDURE sp_Art_GrupaOrgCen_BezNorm
  16752.     @Gr_Org    Char(6)
  16753. AS
  16754.     Create Table #Art
  16755.     (
  16756.      Sif_GrOrg    varchar(6),
  16757. --     Sifra_Oe    smallint,
  16758.      Sifra_Art    varchar(20),
  16759.      GSostav    char(1),
  16760.      Sostav        char(1)
  16761.     )
  16762.     Insert Into #Art Select  Sif_GrOrg, Sifra_Art, Null, Null From CenGrOrg Where Sif_GrOrg=@Gr_Org
  16763.     Update #Art Set GSostav = 'D'
  16764.     Where Sifra_Art In (Select Sifra_Art From GSostav Where Sif_GrOrg=@Gr_Org)
  16765.     Update #Art Set Sostav = 'D'
  16766.     Where Sifra_Art In (Select Sifra_Art From Sostav)
  16767.     Update #Art Set GSostav = 'N'
  16768.     Where GSostav Is Null
  16769.     Update #Art Set Sostav = 'N'
  16770.     Where Sostav Is Null
  16771.  
  16772.     Select A.Sif_GrOrg, A.Sifra_Art, A.GSostav, A.Sostav, K.ImeArt, K.EdMera, Null as Caena 
  16773.     From #Art A
  16774.     Inner Join Katart K On K.Sifra_Art = A.Sifra_Art
  16775.  
  16776.     
  16777. /*
  16778.     Select C.Sif_GrOrg, C.Sifra_Art, K.ImeArt, K.EdMera, C.Cena
  16779.     From CenGrOrg C
  16780.     Inner Join Katart K On K.Sifra_Art=C.Sifra_Art
  16781.     Where Sif_GrOrg=@Gr_Org 
  16782.     And C.Sifra_Art Not In (Select Sifra_Art From GSostav Where Sif_GrOrg=@Gr_Org)
  16783. */
  16784.  
  16785.  
  16786. Go
  16787. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_art_toplista]'))
  16788. drop procedure [dbo].[sp_art_toplista]
  16789.  
  16790. Go
  16791.  
  16792.  
  16793.  
  16794.  
  16795.  
  16796.  
  16797.  
  16798.  
  16799.  
  16800. CREATE    PROCEDURE [dbo].[sp_Art_TopLista]
  16801.     @Sifra_OE Smallint = 1,
  16802.     @KoiOE Varchar(700) = Null,
  16803.     @Pod1 Smallint = Null,
  16804.     @Pod2 Smallint = Null,
  16805.     @Pod3 Smallint = Null,
  16806.     @Pod4 Smallint = Null,
  16807.     @Pod5 Smallint = Null,
  16808.     @Pod6 Smallint = Null,
  16809.     @Pod7 Smallint = Null,
  16810.     @KFPod1 char(1) = Null,
  16811.     @KFPod2 char(1) = Null,
  16812.     @KFPod3 char(1) = Null,
  16813.     @KFPod4 char(1) = Null,
  16814.     @KFPod5 char(1) = Null,
  16815.     @KFPod6 char(1) = Null,
  16816.     @KFPod7 char(1) = Null,
  16817.     @Sifra_Tip Smallint = Null,
  16818.     @Datum_Od Smalldatetime = Null,
  16819.     @Datum_Do Smalldatetime = Null,
  16820.     @Sifra_Art_Od Varchar(20)= Null,
  16821.     @Sifra_Art_Do Varchar(20) = Null,
  16822.     @Sifra_Kup_Od Char(6) = Null,
  16823.     @Sifra_Kup_Do Char(6) = Null,
  16824.     @Podred Char(1) = 3,
  16825.     @Kolku Int = Null,
  16826.     @Kto Char(6) = Null,
  16827.     @Sifra_Gr VarChar(300) = Null,
  16828.     @Sifra_Podg VarChar(300) = Null,
  16829.     @Lokacija Varchar(10) = Null,
  16830.     @TipKup Varchar(200) = Null,
  16831.     @Komint_KObj Char(1) = 'K',
  16832.     @Sifra_Brand Smallint = Null,
  16833.     @Sifra_ZBrand Smallint = Null,
  16834.     @RazbijSostav Char(1) = 'D',
  16835.     @ZalihaOdOE Varchar(700) = Null,
  16836.     @Koi_Gradovi Varchar(200) = Null,
  16837.     @SoPodgrupi    char(1) = 'N',
  16838.     @Sifra_Pat    varchar(300) = Null,
  16839.     @Sifra_Obj    smallint  = Null,
  16840.     @TipDokProd    varchar(200) = Null,
  16841.     @Koi_Regioni    varchar(200) = Null,
  16842.     @Sifra_Mest Int = Null,
  16843.     @PoProdMesta char(1)='N',
  16844.     @SoPod1    char(1) = 'N',    
  16845.     @SoPod2    char(1) = 'N',    
  16846.     @SoPod3    char(1) = 'N',    
  16847.     @SoPod4    char(1) = 'N',    
  16848.     @SoPod5    char(1) = 'N',    
  16849.     @SoBrand    char(1) = 'N',
  16850.     @KomercKako    char(1) = 'I',                 -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  16851.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  16852.     @KolkuMesta    smallint = 6,        -- Se Odnesuva na podgrupite    2, 3, 4, 5, 6
  16853.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  16854.     @Drugo1    smallint = Null,
  16855.     @Drugo2    smallint = Null,
  16856.     @Drugo3    smallint = Null,
  16857.     @Drugo4    smallint = Null,
  16858.     @Drugo5    smallint = Null,
  16859.     @Drugo6    smallint = Null,
  16860.     @Drugo7    smallint = Null,
  16861.     @Posrednik    char(6) = Null,
  16862.     @Asortiman    char(1) = 'N',        -- D - da gi prikaze i onie artikli za koi nema prodazba vo periodot
  16863.                         -- Z - da gi prikaze i onie artikli za koi nema prodazba vo periodot, a gi ima na zaliha 
  16864.     @DaliNabavna    char(1) = 'N',        -- za MakInvest posledna nabavna od katart; cena od soart od orged 001
  16865.     @Sifra_Nivo    char(2) = Null,
  16866.     @KojaCena    char(1) = Null,
  16867.     @Sifra_Tabela     varchar(20) = null,    -- Dali da gi vratam definiranite Grupi na Artikli i rednite broevi za podreduvanje na izvestajot (za specijalni izvestai)
  16868.     @ImeArtDel    varchar(20) = Null,
  16869.     @DajNabavki    char(1) = 'N',        -- D - Da,  N - Ne (Dali da gi prikazze nabavenite kolicini po artikal)
  16870.     @DevCena    char(1) = 'N',        -- Prikazi vrednost po devizna cena D - so danok,  B - bez Danok  N - ne 
  16871.     @PrethBazaOd    char(1) = 'N',        -- K - Konfig (poleto PrethBaza)     ?T? - Nekoja tabela (Fir Paral ili Nekoja Nova za vo idnina)
  16872.     @ParalenliBazi     varchar(200) = Null,
  16873.     @Sifra_Div    smallint = Null,
  16874.     @GrKup     varchar(500) = Null,
  16875.     @GrArt        varchar(500) = Null
  16876. AS
  16877.     If @PoKojDatum = 'V'
  16878.             If @Datum_Do Is Not Null
  16879.         Set @Datum_Do = @Datum_Do + 1
  16880.     Declare @RazlDat As Int
  16881.     If @Datum_Od Is Not Null And @Datum_Do Is Not Null
  16882.         Set @RazlDat = Datediff(day, @Datum_Od, @Datum_Do) + 1
  16883.     Else
  16884.         Set @RazlDat = 0
  16885.     Declare @SSQL Varchar(8000)
  16886.     Declare @SSQLFrom Varchar(8000)
  16887.     Declare @SSQLUsl Varchar(8000)
  16888.     Declare @SSQLUslArt Varchar(8000)
  16889.     Set @SSQLUsl = ' '
  16890.     Set @SSQLUslArt = ' '
  16891.     Set @SSQLFrom = ' '
  16892.  
  16893.     If @GrKup Is Not Null
  16894.     Begin
  16895.     Create    Table #KupObj
  16896.         (
  16897.             Sifra_Kup    char(6),
  16898.             Sifra_Obj    smallint
  16899.         )
  16900.         CREATE   Table #KupObj1
  16901.         (
  16902.             Sifra_Kup    char(6),
  16903.             Sifra_Obj    smallint
  16904.         )
  16905.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  16906.         Exec(@SSQL)
  16907.  
  16908.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  16909.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  16910.                 From SGrKupObj GK 
  16911.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  16912.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  16913.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  16914.         Exec(@SSQL)
  16915.  
  16916.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  16917.         Exec(@SSQL)
  16918.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  16919.     End
  16920.  
  16921.     If @GrArt Is Not Null
  16922.     Begin
  16923.         Create Table #GrArt
  16924.         (
  16925.             Sifra_Art    varchar(20)
  16926.         )
  16927.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  16928.  
  16929.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  16930.         Exec(@SSQL)
  16931.     End
  16932.  
  16933.     ---------------------------------------------------------------------------- U S L O V --------------------------------------------------------------------------------------------
  16934.     If @Koi_Gradovi Is Not NULL    
  16935.         Begin
  16936.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  16937.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  16938.         End
  16939.     If @Koi_Regioni Is Not NULL    
  16940.         Begin
  16941.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  16942.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  16943.         End
  16944.     If @TipKup Is Not NULL    
  16945.         Begin
  16946.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + ')) 
  16947.             OR ( KO.TipKup Is Null and KUP.TipKup In ( ' + @TipKup + '))) '     
  16948.         End
  16949.     If @Sifra_Nivo Is Not NULL
  16950.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  16951.     If @KojaCena Is Not NULL
  16952.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  16953.     If @Sifra_Kup_Od Is Not NULL
  16954.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  16955.     If @Sifra_Kup_Do Is Not NULL
  16956.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  16957.        If @KomercKako = 'I'
  16958.         If @Sifra_Pat IS NOT NULL
  16959.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  16960.        If @KomercKako = 'T'
  16961.         If @Sifra_Pat IS NOT NULL
  16962.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  16963.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  16964.     If @Sifra_Obj IS NOT NULL
  16965.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  16966.     If @Pod1 Is Not NULL
  16967.         If @KFPod1 = 'D'
  16968.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  16969.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  16970.         Else
  16971.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  16972.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  16973.     If @Pod2 Is Not NULL
  16974.         If @KFPod2 = 'D'
  16975.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  16976.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  16977.         Else
  16978.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  16979.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  16980.     If @Pod3 Is Not NULL
  16981.         If @KFPod3 = 'D'
  16982.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  16983.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  16984.         Else
  16985.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  16986.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  16987.     If @Pod4 Is Not NULL
  16988.         If @KFPod4 = 'D'
  16989.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  16990.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  16991.         Else
  16992.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  16993.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  16994.     If @Pod5 Is Not NULL
  16995.         If @KFPod5 = 'D'
  16996.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  16997.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  16998.         Else
  16999.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  17000.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  17001.     If @Pod6 Is Not NULL
  17002.         If @KFPod6 = 'D'
  17003.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  17004.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  17005.         Else
  17006.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  17007.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  17008.     If @Pod7 Is Not NULL
  17009.         If @KFPod7 = 'D'
  17010.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  17011.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  17012.         Else
  17013.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  17014.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  17015.     If @Sifra_Tip Is Not Null
  17016.         SET @SSQLUsl = @SSQLUsl +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  17017.     If @PoKojDatum = 'V'
  17018.           Begin
  17019.         If @Datum_Od Is Not NULL
  17020.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  17021.         If @Datum_Do Is Not NULL
  17022.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  17023.           End
  17024.     Else 
  17025.           Begin
  17026.         If @Datum_Od Is Not NULL
  17027.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  17028.         If @Datum_Do Is Not NULL
  17029.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  17030.            End
  17031.     If @TipDokProd IS NOT NULL
  17032.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  17033.     If @Sifra_Mest Is Not NULL
  17034.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Mest =''' + Cast(@Sifra_Mest As Varchar(6)) + ''' '
  17035.     If @Posrednik Is Not NULL
  17036.         Set @SSQLUsl = @SSQLUsl + ' And PM.Posrednik=' + Cast(@Posrednik As Varchar(6)) + ' '
  17037.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  17038.     --------------------------------------------------------- U S L O V    P O    A R T I L K I ----------------------------------------------------------------------------
  17039.     If @Sifra_Art_Od Is Not Null
  17040.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  17041.     If @Sifra_Art_Do Is Not Null
  17042.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  17043.     If @Sifra_Brand Is Not Null
  17044.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  17045.     If @Sifra_ZBrand Is Not Null
  17046.         Set @SSQLUslArt = @SSQLUslArt + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  17047.     If @Sifra_Podg Is Not Null
  17048.         If @PocnuvaSo = 'D'
  17049.             Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  17050.         Else 
  17051.             Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Podg In (' + @Sifra_Podg + ') '
  17052.     If @Sifra_Gr Is Not Null
  17053.         Set @SSQLUslArt = @SSQLUslArt + 'And PG.Sifra_Gr In (' + @Sifra_Gr + ') '
  17054.     If @Lokacija Is Not NULL
  17055.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Lokacija=''' + @Lokacija + ''' '
  17056.     If @Kto Is Not NULL
  17057.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Kto=' + @Kto + ' '
  17058.     If @Drugo1 Is Not NULL
  17059.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  17060.     If @Drugo2 Is Not NULL
  17061.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  17062.     If @Drugo3 Is Not NULL
  17063.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  17064.     If @Drugo4 Is Not NULL
  17065.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  17066.     If @Drugo5 Is Not NULL
  17067.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  17068.     If @Drugo6 Is Not NULL
  17069.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  17070.     If @Drugo7 Is Not NULL
  17071.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  17072.     If @Sifra_Div Is Not NULL
  17073.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  17074.     ---If @GrKup Is Not NULL
  17075.         ---Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  17076.        If @ImeArtDel IS NOT NULL 
  17077.         If IsNumeric(@ImeArtDel)=1
  17078.             Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  17079.         Else
  17080.             Set @SSQLUslArt = @SSQLUslArt + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  17081.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------
  17082.     create                            Table #tSostav
  17083.     (    Sifra_Art     Varchar(20),
  17084.         Sifra_Sur    Varchar(20),
  17085.         Ima_Kolic     Decimal(18,6),
  17086.         Cena         Decimal(18,6),
  17087.         VkCena     Decimal(18,6)
  17088.     )
  17089.     Create NonClustered Index IX_Art On #tSostav (Sifra_Art)
  17090.  
  17091.     create TABLE #TopLista
  17092.     (
  17093.         Sifra_Art     Varchar(20) NULL ,
  17094.         Kolicina     decimal(18, 4) NULL ,
  17095.         UL         decimal(18, 4) NULL ,
  17096.         Izlezi         int NULL ,
  17097.         Vr_Osnov     decimal(18, 4) NULL ,
  17098.         Vr_SoRabat     decimal(18, 4) NULL ,
  17099.         Vr_Krajna     decimal(18, 4) NULL ,
  17100.         Vr_NPS     decimal(18, 4) NULL ,
  17101.         Vr_Rabat    decimal(18,4) NULL,
  17102.         Vr_kasa        decimal(18,4) NULL,
  17103.         Vr_NabBezDDV    decimal(18,4) NULL,
  17104.         Vr_NabSoDDV    decimal(18,4) NULL,
  17105.         Vr_Devizna    decimal(18,4) NULL,
  17106.         Komintenti    int NULL ,
  17107.         Zaliha         decimal(18, 4) NULL,
  17108.         Sifra_Podg    Char(6) NULL
  17109.     )
  17110.     If @RazbijSostav = 'D'
  17111.         Begin
  17112.             Set @SSQL = 'Insert #tSostav
  17113.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  17114.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  17115.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  17116.             Exec(@SSQL)
  17117.         End
  17118.     Set @SSQL = 'Insert #tSostav
  17119.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  17120.         From Katart K '
  17121.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  17122.     If @RazbijSostav = 'D'
  17123.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  17124.     Exec(@SSQL)
  17125.     --select * from #tsostav order by sifra_art
  17126.     -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  17127.     -----------------------------------------------------------------------------------------------
  17128.     ------------------------------------------------------------------ T O P    L I S T A ------------------------------------------------------------------------------------
  17129.     -------- Select Query --------
  17130.     Set @SSQL = 'Select TS.Sifra_Sur As Sifra_Art, 
  17131.             Round(Sum(S.Kolic*TS.Ima_Kolic), 4) As Kolicina,
  17132.             Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) As UL,
  17133.             Count(TS.Sifra_Art) As Izlezi,
  17134.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) As Vr_Osnov,
  17135.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_SoRabat,
  17136.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Krajna,            
  17137.             Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS, 
  17138.             Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces)), 4) As Vr_Rabat,
  17139.             Round(Sum(dbo.fn_VratiKasaBezDDV(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Kasa, 
  17140.             Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV, '
  17141.     If @DevCena In  ('D', 'B')
  17142.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + (Case When @DevCena = 'B' Then 'N' Else 'D' End) + ''') / D.Kurs), 4) Vr_Devizna, ' 
  17143.     Else
  17144.         Set @SSQL = @SSQL + ' Null as Vr_Devizna, '
  17145.     If @PoProdMesta = 'D'
  17146.         Set @SSQL=@SSQL + 'Count (Distinct(Case Substring(Cast(S.Sifra_Dok As Varchar(6)),1,2) When ''70'' Then 0 Else D.Sifra_Mest End)) As Komintenti, '
  17147.     Else
  17148.     Begin
  17149.         If @Komint_KObj = 'K'
  17150.             Set @SSQL =    @SSQL + 'Count (Distinct(Case Substring(Cast(S.Sifra_Dok As Varchar(6)),1,2) When ''70'' Then 0 Else D.Sifra_Kup End)) As Komintenti, '
  17151.         Else If @Komint_KObj = 'O'
  17152.             Set @SSQL =    @SSQL + 'Count (Distinct(Case Substring(Cast(S.Sifra_Dok As Varchar(6)),1,2) When ''70'' Then 0 
  17153.                         Else (Case When D.Sifra_Obj Is Null Then D.Sifra_Kup else (D.Sifra_kup+cast(D.Sifra_Obj as varchar(6))) end) End)) As Komintenti, '
  17154.     End
  17155.     Set @SSQL = @SSQL + 'Null As Zaliha, '
  17156.     If @KolkuMesta Is Not Null
  17157.         Set @SSQL = @SSQL + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') as Sifra_Podg '
  17158.     Else 
  17159.         Set @SSQL = @SSQL + ' K.Sifra_Podg '
  17160.     ------------------------------------------------ F R O M ------------------------------------------------
  17161.     Set @SSQLFrom = ' From #tSostav TS
  17162.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  17163.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  17164.         Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 '
  17165.     If @Sifra_OE Is Not NULL
  17166.              Set @SSQLFrom  = @SSQLFrom + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  17167.     If @KoiOE Is Not NULL
  17168.              Set @SSQLFrom  = @SSQLFrom + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  17169.     If @Sifra_Gr Is Not Null
  17170.         Set @SSQLFrom = @SSQLFrom + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  17171.     If @Sifra_ZBrand Is Not Null
  17172.         Set @SSQLFrom = @SSQLFrom + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  17173.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  17174.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null) Or (@Sifra_Pat Is Not Null)
  17175.         Or (@Sifra_Nivo Is Not Null) Or (@KojaCena Is Not Null) OR @Pod6 IS NOT NULL  OR @Pod7 IS NOT NULL 
  17176.         Set @SSQLFrom = @SSQLFrom + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  17177.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  17178.     If @PoProdMesta = 'D' or @Posrednik is not null
  17179.         Set @SSQLFrom = @SSQLFrom + ' Inner Join ProdMest PM ON D.Sifra_Mest=PM.Sifra_Mest '   --D.Sifra_kup=PM.Sifra_kup and D.Sifra_obj=PM.Sifra_obj and
  17180.     If @GrKup Is Not Null
  17181.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  17182.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  17183.     If @GrArt Is Not Null
  17184.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  17185.     Set @SSQLFrom = @SSQLFrom + 'Where K.Iskluci <> ''D'' '
  17186.     --Set @SSQL = @SSQL + 'Group By TS.Sifra_Sur, K.Sifra_Podg '
  17187.     --print (@SSQL + @SSQLUsl + @SSQLUslArt + 'Group By TS.Sifra_Sur, K.Sifra_Podg ')
  17188.     Insert #TopLista Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLUslArt + 'Group By TS.Sifra_Sur, K.Sifra_Podg ')
  17189.     --print @SSQL + @SSQLFrom + @SSQLUsl + @SSQLUslArt + 'Group By TS.Sifra_Sur, K.Sifra_Podg '
  17190.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------c---------------------------------------
  17191.     ----------------------------------------------- P R E T H O D N I   B A Z I ----------------------------------------------------------
  17192.     If @PrethBazaOd = 'K' Or @ParalenliBazi Is Not Null
  17193.     Begin
  17194.         Declare @ImeBaza as varchar(30)
  17195.         Create Table #Bazi
  17196.         (
  17197.             ImeBaza    varchar(30)
  17198.         )
  17199.         If @PrethBazaOd = 'K'        
  17200.         Begin 
  17201.             Set @SSQLFrom = ' Insert Into #Bazi Select PrethBaza From Konfig '
  17202.             Exec (@SSQLFrom)
  17203.         End
  17204.  
  17205.         If @ParalenliBazi Is Not Null
  17206.         Begin
  17207.             Declare @Poz_Delim Smallint
  17208.             Declare @Poz_Start Smallint
  17209.             Declare @BazaIme varchar(50)
  17210.             If @ParalenliBazi Is Null 
  17211.                 Set @ParalenliBazi = ''
  17212.             Set @Poz_Start = 0
  17213.             While 1=1
  17214.             Begin
  17215.                 Set @Poz_Delim = Charindex(',', @ParalenliBazi, @Poz_Start)
  17216.                 If @Poz_Delim = 0
  17217.                     Break
  17218.                 Set @BazaIme = SubString(@ParalenliBazi, @Poz_Start, @Poz_Delim-@Poz_Start)
  17219.                 Set @Poz_Start = @Poz_Delim + 1
  17220.                 Insert Into #Bazi Select @BazaIme
  17221.             End
  17222.         End
  17223.  
  17224.         If Exists (Select ImeBaza From #Bazi)
  17225.         Begin
  17226.             Declare CursorBazi Cursor Fast_Forward For Select ImeBaza From #Bazi
  17227.             Open CursorBazi
  17228.             Fetch Next From CursorBazi Into @ImeBaza
  17229.             While @@Fetch_Status = 0
  17230.             Begin
  17231.                 Set @SSQLFrom = ' From #tSostav TS
  17232.                     Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  17233.                     Inner Join ' + @ImeBaza + '..Stavr S On TS.Sifra_Art=S.Sifra_Art
  17234.                     Inner Join ' + @ImeBaza + '..Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 '
  17235.                 If @Sifra_OE Is Not NULL
  17236.                          Set @SSQLFrom  = @SSQLFrom + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  17237.                 If @KoiOE Is Not NULL
  17238.                          Set @SSQLFrom  = @SSQLFrom + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  17239.                 If @Sifra_Gr Is Not Null
  17240.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  17241.                 If @Sifra_ZBrand Is Not Null
  17242.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  17243.                 If @GrKup Is Not Null
  17244.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  17245.                                     And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  17246.                 If @GrArt Is Not Null
  17247.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  17248.                 If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  17249.                     Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null) Or (@Sifra_Pat Is Not Null)
  17250.                     Or (@Sifra_Nivo Is Not Null) Or (@KojaCena Is Not Null)
  17251.                 Set @SSQLFrom = @SSQLFrom + ' Inner Join ' + @ImeBaza + '..Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  17252.                                  Left Outer Join ' + @ImeBaza + '..KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  17253.                 If @PoProdMesta = 'D' or @Posrednik is not null
  17254.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join ' + @ImeBaza + '..ProdMest PM ON D.Sifra_Mest=PM.Sifra_Mest '   --D.Sifra_kup=PM.Sifra_kup and D.Sifra_obj=PM.Sifra_obj and
  17255.                 Set @SSQLFrom = @SSQLFrom + ' Where K.Iskluci <> ''D'' '
  17256.                 Insert Into #TopLista Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLUslArt + 'Group By TS.Sifra_Sur, K.Sifra_Podg ')
  17257.                 Fetch Next From CursorBazi Into @ImeBaza
  17258.             End
  17259.             Close CursorBazi
  17260.             Deallocate CursorBazi
  17261.         End
  17262.         CREATE TABLE #TopLista1
  17263.         (
  17264.             Sifra_Art     Varchar(20) NULL ,
  17265.             Kolicina     decimal(18, 4) NULL ,
  17266.             UL         decimal(18, 4) NULL ,
  17267.             Izlezi         int NULL ,
  17268.             Vr_Osnov     decimal(18, 4) NULL ,
  17269.             Vr_SoRabat     decimal(18, 4) NULL ,
  17270.             Vr_Krajna     decimal(18, 4) NULL ,
  17271.             Vr_NPS     decimal(18, 4) NULL ,
  17272.             Vr_Rabat    decimal(18,4) NULL,
  17273.             Vr_kasa        decimal(18,4) NULL,
  17274.             Vr_NabBezDDV    decimal(18,4) NULL,
  17275.             Vr_NabSoDDV    decimal(18,4) NULL,
  17276.             Vr_Devizna    decimal(18,4) NULL,
  17277.             Komintenti    int NULL ,
  17278.             Zaliha         decimal(18, 4) NULL,
  17279.             Sifra_Podg    Char(6) NULL
  17280.         )
  17281.         Insert Into #TopLista1
  17282.         Select Sifra_Art, Sum(Kolicina), Sum(UL), Sum(Izlezi), Sum(Vr_Osnov), Sum(Vr_SoRabat), Sum(Vr_Krajna), Sum(Vr_NPS), 
  17283.             Sum(Vr_Rabat), Sum(Vr_kasa), Sum(Vr_NabBezDDV), Sum(Vr_NabSoDDV), Sum(Vr_Devizna), Sum(Komintenti), Sum(Zaliha), Sifra_Podg
  17284.         From #TopLista
  17285.         Group By Sifra_Art, Sifra_Podg
  17286.         Delete From #TopLista
  17287.         Insert Into #TopLista Select * From #TopLista1
  17288.     End
  17289.     ---------------------------------------------------------- A S O R T I M A N ---------------------------------------------------------------------
  17290.     If @Asortiman In ('D', 'Z')
  17291.     Begin     
  17292.         Set @SSQL = ' Select K.Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, K.Sifra_Podg 
  17293.                 From Katart K '
  17294.         If @Asortiman ='Z'
  17295.         Begin
  17296.             Set @SSQL = @SSQL + ' Inner Join Soart S On S.Sifra_Art=K.Sifra_Art '
  17297.             If @Sifra_OE Is Not NULL
  17298.                      Set @SSQL = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  17299.             If @KoiOE Is Not NULL
  17300.                      Set @SSQL = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  17301.         End
  17302.         If @Sifra_Gr Is Not Null
  17303.             Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  17304.         If @Sifra_ZBrand Is Not Null
  17305.             Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  17306.         Set @SSQL = @SSQL + ' Where K.Sifra_Art Not In (Select Distinct Sifra_Art from #TopLista) 
  17307.                     And K.Iskluci <> ''D'' '
  17308.  
  17309.         Set @SSQL = @SSQL + @SSQLUslArt
  17310.  
  17311.         If @Asortiman ='Z'
  17312.             Set @SSQL = @SSQL + ' Group By K.Sifra_Art, K.Sifra_Podg
  17313.                           Having Sum(S.Vlez-S.Izlez) <> 0 '
  17314.         Insert Into #TopLista Exec(@SSQL)
  17315. print @SSQL
  17316.     End
  17317.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------
  17318.     --------------------------------------------------------------------- Z A L I H A  ----------------------------------------------------------------------
  17319.     Set @SSQL = 'Update #TopLista
  17320.             Set Zaliha = (Select Sum(Vlez)-Sum(Izlez) From Soart Where 1=1 '
  17321.     If @ZalihaOdOE Is Not Null 
  17322.         Set @SSQL = @SSQL + ' And Sifra_OE In (' + @ZalihaOdOE + ') '
  17323.     Set @SSQL = @SSQL + ' And #TopLIsta.Sifra_Art=Soart.Sifra_Art) '
  17324.     Exec(@SSQL)
  17325.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------
  17326.     ----------------------------------------------- P R E S M E T A J    N A B A V K I ---------------------------------------------------------
  17327.     If @DajNabavki = 'D'
  17328.     Begin
  17329.         Alter Table #TopLista Add KolicNabavka decimal(18,4) Null
  17330.         Create Table #Nabavki
  17331.         (
  17332.          Sifra_Art    varchar(20),
  17333.          KolicNab    decimal(18,6)
  17334.         )
  17335.         Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic) 
  17336.                 From Dokr D
  17337.                 Inner Join Stavr S On S.DokrID=D.DokrID
  17338.                 Where D.VlIzl=''V'' And S.Sifra_Art In (Select Sifra_Art From #TopLista) '
  17339.         If @Sifra_OE Is Not NULL
  17340.                  Set @SSQL = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  17341.         If @KoiOE Is Not NULL
  17342.                  Set @SSQL = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  17343.         If @PoKojDatum = 'V'
  17344.         Begin
  17345.             If @Datum_Od Is Not NULL
  17346.                 Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  17347.             If @Datum_Do Is Not NULL
  17348.                 Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  17349.         End
  17350.         Else 
  17351.         Begin
  17352.             If @Datum_Od Is Not NULL
  17353.                 Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  17354.             If @Datum_Do Is Not NULL
  17355.                 Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  17356.         End
  17357.         Set @SSQL = @SSQL + ' Group By S.Sifra_Art '
  17358.         Insert Into #Nabavki Exec(@SSQL)
  17359.         Update #TopLista 
  17360.         Set #TopLista.KolicNabavka=#Nabavki.KolicNab 
  17361.         From #Nabavki
  17362.         Where #Nabavki.Sifra_Art=#TopLista.Sifra_Art
  17363.     End
  17364.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------
  17365.     ------------------------------------------------------------ R E Z U L T A T ------------------------------------------------------------------------
  17366.     Set @SSQL = 'Select'
  17367.     IF @Kolku IS NOT NULL    
  17368.         Set @SSQL = @SSQL + ' TOP ' + Cast(@Kolku as varchar(15))
  17369.     Set @SSQL = @SSQL +  ' T.Sifra_Art, K.ImeArt, K.ImeArt2, K.EdMera, K.Alt_Sifra,
  17370.             K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina,
  17371.             T.Kolicina, T.UL, T.Izlezi, T.Vr_Osnov, T.Vr_SoRabat, T.Vr_Krajna,
  17372.             T.Vr_NPS, T.Vr_Rabat, T.Vr_Kasa, T.Vr_NabBezDDV, T.Vr_NabSoDDV, T.Vr_Devizna, T.Komintenti, T.Zaliha, K.Sifra_Tar, 
  17373.             T.Kolicina * K.Tezina/1000 Neto_Tezina, Round(T.Kolicina * K.Volumen / 1000, 4) Volumen, K.Kto, DOB.ImeKup, K.ImaPaleta,
  17374.             K.BTezina, T.Kolicina * K.BTezina/1000 Bruto_Tezina'          
  17375.     If @DajNabavki = 'D'
  17376.         Set @SSQL = @SSQL + ', T.KolicNabavka '
  17377.     Else
  17378.         Set @SSQL = @SSQL + ', Null KolicNabavka '
  17379.     IF @SoPodgrupi = 'D'
  17380.               SET @SSQL = @SSQL + ' ,T.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr '
  17381.     ELSE
  17382.         Set @SSQL = @SSQL + ', K.Sifra_Podg, '' '' as Ime_Podg, '' '' as Sifra_Gr, '' '' as Ime_Gr '
  17383.     IF @SoPod1 = 'D'
  17384.         Set @SSQL = @SSQL + ', K.Drugo1, D1.Ime_1'
  17385.     ELSE
  17386.         Set @SSQL = @SSQL + ', K.Drugo1, '' '' as Ime_1'
  17387.     IF @SoPod2 = 'D'
  17388.         Set @SSQL = @SSQL + ', K.Drugo2, D2.Ime_2'
  17389.     ELSE
  17390.         Set @SSQL = @SSQL + ', K.Drugo2, '' '' as Ime_2'
  17391.     IF @SoPod3 = 'D'
  17392.         Set @SSQL = @SSQL + ', K.Drugo3, D3.Ime_3'
  17393.     ELSE
  17394.         Set @SSQL = @SSQL + ', K.Drugo3, '' '' as Ime_3'
  17395.     IF @SoPod4 = 'D'
  17396.         Set @SSQL = @SSQL + ', K.Drugo4, D4.Ime_4'
  17397.     ELSE
  17398.         Set @SSQL = @SSQL + ', K.Drugo4, '' '' as Ime_4'
  17399.     IF @SoPod5 = 'D'
  17400.         Set @SSQL = @SSQL + ', K.Drugo5, D5.Ime_5'
  17401.     ELSE
  17402.         Set @SSQL = @SSQL + ', K.Drugo5, '' '' as Ime_5'
  17403.     IF @SoBrand = 'D'
  17404.         Set @SSQL = @SSQL + ', K.Sifra_Drg, B.Ime'
  17405.     ELSE
  17406.         Set @SSQL = @SSQL + ', K.Sifra_Drg, '' '' as Ime'
  17407.     If @DaliNabavna = 'D'
  17408.         Set @SSQL = @SSQL + ', SO.DokCena*(1-SO.Uces/100) Nabavna, SO.Cena '        --bese do 26.09.07 K.Nabavna, SO.Cena
  17409.     Else 
  17410.         Set @SSQL = @SSQL + ', Null as Nabavna, Null as Cena '
  17411.     If @Sifra_Tabela Is Not Null
  17412.         Set @SSQL = @SSQL + ', KIA.Grupa, KIA.RbrVoGr '
  17413.     Else
  17414.         Set @SSQL = @SSQL + ', Null as Grupa, Null as RbrVoGr '
  17415.     Set @SSQL = @SSQL + ', K.Nom, ' + Cast(@RazlDat As varchar(10)) + ' as RazlDat, K.GotCena  , K.DogCena
  17416.         From #TopLista T
  17417.         Inner Join Katart K On T.Sifra_Art=K.Sifra_Art '
  17418.     IF @SoPodgrupi = 'D'
  17419.         Set @SSQL = @SSQL + 'Left Outer Join Podgrupi PG ON T.Sifra_Podg = PG.Sifra_Podg
  17420.                      Left Outer Join Grupi G ON G.Sifra_Gr = PG.Sifra_Gr '
  17421.     IF @SoPod1 = 'D'
  17422.         Set @SSQL = @SSQL + 'Left Outer Join Drugo1 D1 ON K.Drugo1 = D1.Sifra_1 '
  17423.     IF @SoPod2 = 'D'
  17424.         Set @SSQL = @SSQL + 'Left Outer Join Drugo2 D2 ON K.Drugo2 = D2.Sifra_2 '
  17425.     IF @SoPod3 = 'D'
  17426.         Set @SSQL = @SSQL + 'Left Outer Join Drugo3 D3 ON K.Drugo3 = D3.Sifra_3 '
  17427.     IF @SoPod4 = 'D'
  17428.         Set @SSQL = @SSQL + 'Left Outer Join Drugo4 D4 ON K.Drugo4 = D4.Sifra_4 '
  17429.     IF @SoPod5 = 'D'
  17430.         Set @SSQL = @SSQL + 'Left Outer Join Drugo5 D5 ON K.Drugo5 = D5.Sifra_5 '
  17431.     If @SoBrand = 'D'
  17432.         Set @SSQL = @SSQL + 'Left Outer Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  17433.         Set @SSQL = @SSQL + 'Left Outer Join Komint DOB On K.Kto=DOB.Sifra_Kup '
  17434.     If @DaliNabavna = 'D'
  17435.     Begin
  17436.         Declare @Sif_Oe smallint
  17437.         Declare @SSQLGrOrg varchar(1000)
  17438.         If @Sifra_Oe Is Not Null And @KoiOe Is Null
  17439.             Set @SSQL = @SSQL + 'Left Outer Join Soart SO On SO.Sifra_Art=K.Sifra_Art And SO.Sifra_Oe= ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  17440.         Else If @Sifra_Oe Is Null And @KoiOe Is Not Null
  17441.         Begin
  17442.             Create Table #OE
  17443.             (
  17444.              Sifra_Oe    smallint
  17445.             )
  17446.             Set @SSQLGrOrg = ' Select Top 1 Sifra_Oe From Orged Where Sifra_Oe In ( ' + @KoiOe + ') Order By Sifra_Oe'
  17447.             Insert Into #OE Exec(@SSQLGrOrg)
  17448.             Set @Sif_Oe = (Select Sifra_Oe From #OE)
  17449.             If @Sif_Oe Is Null
  17450.                 Set @Sif_Oe = (Select Top 1 Sifra_Oe From Orged Order By Sifra_Oe)
  17451.             Set @SSQL = @SSQL + 'Left Outer Join Soart SO On SO.Sifra_Art=K.Sifra_Art And SO.Sifra_Oe= ' + Cast(@Sif_Oe as varchar(6)) + ' '
  17452.         End
  17453.         Else --If @Sifra_Oe Is Null And @KoiOe Is Not Null
  17454.         Begin
  17455.             Set @Sif_Oe = (Select Top 1 Sifra_Oe From Orged Order By Sifra_Oe)
  17456.             Set @SSQL = @SSQL + 'Left Outer Join Soart SO On SO.Sifra_Art=K.Sifra_Art And SO.Sifra_Oe= ' + Cast(@Sif_Oe as varchar(6)) + ' '
  17457.         End
  17458.     End
  17459.     If @Sifra_Tabela Is Not Null
  17460.         Set @SSQL = @SSQL + 'Inner Join KonfIzvArt KIA On KIA.Sifra_Art = K.Sifra_Art And KIA.Sifra_Tabela = ' + @Sifra_Tabela + ' '
  17461.     If @Podred = 'S'
  17462.         Set @SSQL = @SSQL + 'Order By T.Sifra_Art '
  17463.     Else If @Podred = 'A'
  17464.         Set @SSQL = @SSQL + 'Order By K.ImeArt '
  17465.     Else If @Podred = 'B'
  17466.         Set @SSQL = @SSQL + 'Order By K.Sifra_Drg '
  17467.     Else If @Podred = '1'
  17468.         Set @SSQL = @SSQL + 'Order By Izlezi DESC'
  17469.     Else If @Podred = '2'
  17470.         Set @SSQL = @SSQL + 'Order By Kolicina DESC'
  17471.     Else If @Podred = '3'
  17472.         Set @SSQL = @SSQL + 'Order By Vr_Krajna DESC'
  17473.     Else If @Podred = '4'
  17474.         Set @SSQL = @SSQL + 'Order By Vr_NPS DESC'
  17475.     Else If @Podred = '5'
  17476.         Set @SSQL = @SSQL + 'Order By Vr_Krajna DESC, Zaliha Desc'
  17477.         Else If @Podred = 'N'
  17478.         Set @SSQL = @SSQL + 'Order By Neto_Tezina DESC'
  17479. --    Print (@SSQL)
  17480.     Exec (@SSQL)
  17481.  
  17482.  
  17483. Go
  17484. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_art_toplista_nabavki]'))
  17485. drop procedure [dbo].[sp_art_toplista_nabavki]
  17486.  
  17487. Go
  17488.  
  17489.  
  17490. CREATE    PROCEDURE sp_Art_TopLista_Nabavki
  17491.     @Sifra_OE Smallint = 1,
  17492.     @KoiOE Varchar(300) = Null,
  17493.     @Pod1 Smallint = Null,
  17494.     @Pod2 Smallint = Null,
  17495.     @Pod3 Smallint = Null,
  17496.     @Pod4 Smallint = Null,
  17497.     @Pod5 Smallint = Null,
  17498.     @Pod6 Smallint = Null,
  17499.     @Pod7 Smallint = Null,
  17500.     @KFPod1 char(1) = Null,
  17501.     @KFPod2 char(1) = Null,
  17502.     @KFPod3 char(1) = Null,
  17503.     @KFPod4 char(1) = Null,
  17504.     @KFPod5 char(1) = Null,
  17505.     @KFPod6 char(1) = Null,
  17506.     @KFPod7 char(1) = Null,
  17507.     @Sifra_Tip Smallint = Null,
  17508.     @Datum_Od Smalldatetime = Null,
  17509.     @Datum_Do Smalldatetime = Null,
  17510.     @Sifra_Art_Od Varchar(20)= Null,
  17511.     @Sifra_Art_Do Varchar(20) = Null,
  17512.     @Sifra_Kup_Od Char(6) = Null,
  17513.     @Sifra_Kup_Do Char(6) = Null,
  17514.     @Podred Char(1) = 3,
  17515.     @Kolku Int = Null,
  17516.     @Kto Char(6) = Null,
  17517.     @Sifra_Gr Char(3) = Null,
  17518.     @Sifra_Podg Char(6) = Null,
  17519.     @Lokacija Varchar(10) = Null,
  17520.     @TipKup Varchar(200) = Null,
  17521.     @Komint_KObj Char(1) = 'K',
  17522.     @Sifra_Brand Smallint = Null,
  17523.     @Sifra_ZBrand Smallint = Null,
  17524.     @RazbijSostav Char(1) = 'D',
  17525.     @ZalihaOdOE Varchar(300) = Null,
  17526.     @SoPodgrupi char(1) = 'N',
  17527.     @Sifra_Pat    varchar(300) = Null,
  17528.     @Sifra_Obj    smallint  = Null,
  17529.     @TipDokNab    varchar(200) = NULL,
  17530.     @Koi_Gradovi    varchar(200) = NULL,
  17531.     @Koi_Regioni    varchar(200) = NULL,
  17532.     @Sifra_Mest Int = Null,
  17533.     @PoProdMesta char(1)='N',
  17534.     @KomercKako    char(1) = 'I',             -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  17535.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  17536.     @Drugo1    smallint = Null,
  17537.     @Drugo2    smallint = Null,
  17538.     @Drugo3    smallint = Null,
  17539.     @Drugo4    smallint = Null,
  17540.     @Drugo5    smallint = Null,
  17541.     @Drugo6    smallint = Null,
  17542.     @Drugo7    smallint = Null,
  17543.     @SoBrand    char(1) = Null,
  17544.     @Sifra_Nivo    char(2) = Null,
  17545.     @KojaCena    char(1) = Null,
  17546.     @SoPod4    char(1) = Null,
  17547.     @ImeArtDel    varchar(20) = Null,
  17548.     @Sifra_Div    smallint = Null,
  17549.     @GrKup varchar(500)= null,
  17550.     @GrArt varchar(500)= null
  17551. AS
  17552.     If @PoKojDatum = 'V'
  17553.            If @Datum_Do Is Not Null
  17554.         Set @Datum_Do = @Datum_Do + 1
  17555.     Declare @SSQL Varchar(8000)
  17556.     create            Table #tSostav
  17557.     (    Sifra_Art Varchar(20),
  17558.         Sifra_Sur Varchar(20),
  17559.         Ima_Kolic Decimal(18,6),
  17560.         Cena Decimal(18,6),
  17561.         VkCena Decimal(18,6)
  17562.     )
  17563.     CREATE TABLE #TopLista
  17564.     (    [Sifra_Art] Varchar(20) NULL ,
  17565.         [Kolicina] [decimal](18, 4) NULL ,
  17566.         [UL] [decimal](18, 4) NULL ,
  17567.         [Izlezi] [int] NULL ,
  17568.         [DVr_Osnov] [decimal](18, 4) NULL ,
  17569.         [DVr_SoRabat] [decimal](18, 4) NULL ,
  17570.         [DVr_Krajna] [decimal](18, 4) NULL ,
  17571.         [MVr_Osnov] [decimal](18, 4) NULL ,
  17572.         [MVr_SoRabat] [decimal](18, 4) NULL ,
  17573.         [MVr_Krajna] [decimal](18, 4) NULL ,
  17574.         [Vr_NPS] [decimal](18, 4) NULL ,
  17575.         Vr_NabBezDDV    decimal(18,4) NULL,
  17576.         Vr_NabSoDDV    decimal(18,4) NULL,
  17577.         [Komintenti] [int] NULL ,
  17578.         [Zaliha] [decimal](18, 4) NULL ,
  17579.         [TekNabC] [decimal](18, 4) NULL ,
  17580.         [MinNabC] [decimal](18, 4) NULL ,
  17581.         [MaxNabC] [decimal](18, 4) NULL 
  17582.     )
  17583.     If @RazbijSostav = 'D'
  17584.         Begin
  17585.             Set @SSQL = 'Insert #tSostav
  17586.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  17587.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  17588.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  17589.             Exec(@SSQL)
  17590.         End
  17591.     Set @SSQL = 'Insert #tSostav
  17592.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  17593.         From Katart K '
  17594.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  17595.     If @RazbijSostav = 'D'
  17596.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  17597.     Exec(@SSQL)
  17598. -- select * from #tsostav
  17599. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  17600. --------------------------------------------------------------
  17601.     Set @SSQL = 'Select TS.Sifra_Sur Sifra_Art,
  17602.             Round(Sum(S.Kolic*TS.Ima_Kolic), 4) As Kolicina,
  17603.             Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) As UL,
  17604.             Count(TS.Sifra_Art) As Izlezi,
  17605.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as DVr_Osnov, 
  17606.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_SoRabat,
  17607.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_Krajna,
  17608.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn)), 4) as MVr_Osnov, 
  17609.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0, 0)), 4) as MVr_SoRabat,
  17610.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0, 0)), 4) as MVr_Krajna,            Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS, 
  17611.             Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV, '
  17612.     If @PoProdMesta = 'D'
  17613.         Set @SSQL = @SSQL + 'Count (Distinct(D.Sifra_Mest)) As Komintenti, '
  17614.     Else
  17615.     Begin
  17616.         If @Komint_KObj = 'K'
  17617.             Set @SSQL =    @SSQL + 'Count (Distinct(D.Sifra_Kup)) As Komintenti, '
  17618.         Else If @Komint_KObj = 'O'
  17619.             Set @SSQL =    @SSQL + 'Count (Distinct(D.Sifra_Obj)) As Komintenti, '
  17620.     End
  17621.     Set @SSQL = @SSQL + 'Null As Zaliha,
  17622.             K.Nabavna TekNabC,
  17623.             Min(S.NabCena*(1+S.POsn/100)) As MinNabC,
  17624.             Max(S.NabCena*(1+S.POsn/100)) As MaxNabC '
  17625.     Set @SSQL = @SSQL + 'From #tSostav TS
  17626.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  17627.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  17628.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=2 '
  17629.     If @Sifra_Gr Is Not Null
  17630.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  17631.     If @Sifra_OE Is Not NULL
  17632.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  17633.     If @KoiOE Is Not NULL              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  17634.     If @Sifra_ZBrand Is Not Null
  17635.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  17636.     If @Sifra_Gr Is Not Null
  17637.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  17638.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  17639.         Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@Sifra_Nivo Is Not Null) Or (@KojaCena Is Not Null)
  17640.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  17641.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  17642.     If @PoProdMesta = 'D'
  17643.         Set @SSQL = @SSQL + ' Inner Join ProdMest PM ON D.Sifra_Mest=PM.Sifra_Mest '
  17644.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  17645.     If @Sifra_Art_Od Is Not Null
  17646.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  17647.     If @Sifra_Art_Do Is Not Null
  17648.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  17649.     If @Sifra_Brand Is Not Null
  17650.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  17651.     If @Sifra_ZBrand Is Not Null
  17652.         Set @SSQL = @SSQL + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  17653.     If @Sifra_Podg Is Not Null
  17654.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  17655.     If @Sifra_Gr Is Not Null
  17656.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  17657.     If @Pod1 Is Not NULL
  17658.         If @KFPod1 = 'D'
  17659.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  17660.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  17661.         Else
  17662.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  17663.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  17664.     If @Pod2 Is Not NULL
  17665.         If @KFPod2 = 'D'
  17666.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  17667.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  17668.         Else
  17669.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  17670.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  17671.     If @Pod3 Is Not NULL
  17672.         If @KFPod3 = 'D'
  17673.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  17674.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  17675.         Else
  17676.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  17677.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  17678.     If @Pod4 Is Not NULL
  17679.         If @KFPod4 = 'D'
  17680.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  17681.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  17682.         Else
  17683.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  17684.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  17685.     If @Pod5 Is Not NULL
  17686.         If @KFPod5 = 'D'
  17687.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  17688.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  17689.         Else
  17690.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  17691.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  17692.     If @Pod6 Is Not NULL
  17693.         If @KFPod6 = 'D'
  17694.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  17695.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  17696.         Else
  17697.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  17698.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  17699.     If @Pod7 Is Not NULL
  17700.         If @KFPod7 = 'D'
  17701.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  17702.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  17703.         Else
  17704.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  17705.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  17706. /*------------------------------------------------------- dodadeno 16.07.2004  filterot da gleda prvo od kobjekti ----------------------------------------------------------------------
  17707.     If @Pod1 Is Not NULL
  17708.            Begin
  17709.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  17710.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  17711.            End
  17712.     If @Pod2 Is Not NULL
  17713.            Begin
  17714.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  17715.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  17716.            End
  17717.     If @Pod3 Is Not NULL
  17718.            Begin
  17719.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  17720.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  17721.            End
  17722.     If @Pod4 Is Not NULL
  17723.            Begin
  17724.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  17725.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  17726.            End
  17727.     If @Pod5 Is Not NULL
  17728.            Begin
  17729.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  17730.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  17731.            End
  17732. */
  17733.     If @Sifra_Tip Is Not Null
  17734.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  17735.     If @Sifra_Nivo Is Not NULL
  17736.         Set @SSQL = @SSQL + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  17737.     If @KojaCena Is Not NULL
  17738.         Set @SSQL = @SSQL + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  17739.     If @Lokacija Is Not NULL
  17740.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  17741.     If @Kto Is Not NULL
  17742.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  17743.     If @PoKojDatum = 'V'
  17744.           Begin
  17745.         If @Datum_Od Is Not NULL
  17746.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  17747.         If @Datum_Do Is Not NULL
  17748.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  17749.           End
  17750.     Else 
  17751.           Begin
  17752.         If @Datum_Od Is Not NULL
  17753.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  17754.         If @Datum_Do Is Not NULL
  17755.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  17756.            End
  17757.     If @Sifra_Kup_Od Is Not NULL
  17758.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  17759.     If @Sifra_Kup_Do Is Not NULL
  17760.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  17761.     If @GrKup Is Not Null
  17762.         Set @SSQL = @SSQL + ' And D.Sifra_Kup In (Select Distinct Sifra_Kup From SGrKup Where Sif_GrKup In ( ' + @GrKup + ' )) '
  17763.        If @KomercKako = 'I'
  17764.         If @Sifra_Pat IS NOT NULL
  17765.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  17766.        If @KomercKako = 'T'
  17767.         If @Sifra_Pat IS NOT NULL
  17768.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  17769.                         OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  17770.     If @Sifra_Obj IS NOT NULL
  17771.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  17772.     If @Sifra_Mest IS NOT NULL
  17773.         SET @SSQL = @SSQL + ' AND D.Sifra_Mest = ' + Cast(@Sifra_Mest as varchar(6)) + ' '
  17774.     If @TipKup Is Not NULL    
  17775.         Begin
  17776.             Set @SSQL = @SSQL + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + ')) 
  17777.             OR ( KO.TipKup Is Null and KUP.TipKup In ( ' + @TipKup + '))) '     
  17778.         End
  17779.     If @TipDokNab IS NOT NULL
  17780.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokNab + ') '
  17781.     If @Koi_Gradovi Is Not NULL    
  17782.         Begin
  17783.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  17784.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  17785.         End
  17786.     If @Koi_Regioni Is Not NULL    
  17787.         Begin
  17788.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  17789.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  17790.         End
  17791.     If @Drugo1 Is Not NULL
  17792.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  17793.     If @Drugo2 Is Not NULL
  17794.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  17795.     If @Drugo3 Is Not NULL
  17796.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  17797.     If @Drugo4 Is Not NULL
  17798.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  17799.     If @Drugo5 Is Not NULL
  17800.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  17801.     If @Drugo6 Is Not NULL
  17802.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  17803.     If @Drugo7 Is Not NULL
  17804.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  17805.     If @Sifra_Div Is Not NULL
  17806.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  17807.        If @ImeArtDel IS NOT NULL 
  17808.         If IsNumeric(@ImeArtDel)=1
  17809.             Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  17810.         Else
  17811.             Set @SSQL = @SSQL + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  17812.     Set @SSQL = @SSQL + 'Group By TS.Sifra_Sur, K.Nabavna '
  17813.     Insert #TopLista Exec(@SSQL)
  17814.     If @ZalihaOdOE Is Not Null
  17815.         Begin
  17816.             Set @SSQL = 'Update #TopLista
  17817.                 Set Zaliha = (Select Sum(Vlez)-Sum(Izlez) From Soart
  17818.                     Where Sifra_OE In (' + @ZalihaOdOE + ')
  17819.                     And #TopLIsta.Sifra_Art=Soart.Sifra_Art) '
  17820.             Exec(@SSQL)
  17821.         End
  17822.  
  17823.     Set @SSQL = 'Select'
  17824.     IF @Kolku IS NOT NULL    
  17825.         Set @SSQL = @SSQL + ' TOP ' + Cast(@Kolku as varchar(15))
  17826.     Set @SSQL = @SSQL +  ' T.Sifra_Art, K.ImeArt, K.ImeArt2, K.EdMera, K.Alt_Sifra,
  17827.             K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina, 
  17828.             T.Kolicina, T.UL, T.Izlezi,
  17829.             T.DVr_Osnov, T.DVr_SoRabat, T.DVr_Krajna,
  17830.             T.MVr_Osnov, T.MVr_SoRabat, T.MVr_Krajna,
  17831.             T.Vr_NPS, T.Vr_NabSoDDV, T.Vr_NabBezDDV, 
  17832.             T.Komintenti, T.Zaliha, T.TekNabC, T.MinNabC, T.MaxNabC, K.Kto, KO.ImeKup, Tar.ProcOsn,
  17833.             Round(T.Kolicina * K.Volumen / 1000, 4) Volumen '
  17834.     IF @SoPodgrupi = 'D'
  17835.         Set @SSQL = @SSQL + ', K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr '
  17836.     ELSE
  17837.         Set @SSQL = @SSQL + ', K.Sifra_Podg, '' '' as Ime_Podg, '' '' as Sifra_Gr, '' '' as Ime_Gr '
  17838.     If @SoBrand = 'D'
  17839.         Set @SSQL = @SSQL + ', K.Sifra_Drg, B.Ime as ImeBrand '
  17840.     Else 
  17841.         Set @SSQL = @SSQL + ', K.Sifra_Drg, Null as ImeBrand '
  17842.     If @SoPod4 = 'D'
  17843.         Set @SSQL = @SSQL + ', K.Drugo4, D4.Ime_4 as ImeDrugo4 '
  17844.     Else 
  17845.         Set @SSQL = @SSQL + ', K.Drugo4, Null as ImeDrugo4 '
  17846.  
  17847.     if @SIfra_Oe is not null
  17848.         set @SSQL = @SSQL + ', Soa.Cena SoaCena '
  17849.  
  17850.     Set @SSQL = @SSQL + ' From #TopLista T
  17851.         Inner Join Katart K On T.Sifra_Art=K.Sifra_Art     
  17852.         left outer join Tarifi Tar on K.Sifra_Tar = Tar.Sifra_Tar
  17853.         Left Outer Join Komint KO On K.Kto = KO.Sifra_kup '
  17854.     if @SIfra_Oe is not null
  17855.         set @SSQL = @SSQL + ' Left Outer join Soart Soa 
  17856.                     on Soa.Sifra_oe = ' + cast (@SifrA_oe as varchaR(5)) + '
  17857.                          and Soa.SifrA_ARt = T.SIfra_Art '
  17858.     IF @SoPodgrupi = 'D'
  17859.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg
  17860.                      Inner Join Grupi G ON G.Sifra_Gr = PG.Sifra_Gr '
  17861.     If @SoBrand = 'D'
  17862.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg = K.Sifra_Drg '
  17863.     If @SoPod4 = 'D'
  17864.         Set @SSQL = @SSQL + ' Left Outer Join Drugo4 D4 On D4.Sifra_4 = K.Drugo4 '
  17865.     If @Podred = 'S'
  17866.         Set @SSQL = @SSQL + 'Order By T.Sifra_Art '
  17867.     Else If @Podred = 'A'
  17868.         Set @SSQL = @SSQL + 'Order By K.ImeArt '
  17869.     Else If @Podred = 'B'
  17870.         Set @SSQL = @SSQL + 'Order By K.Sifra_Drg '
  17871.     Else If @Podred = '1'
  17872.         Set @SSQL = @SSQL + 'Order By Izlezi DESC'
  17873.     Else If @Podred = '2'
  17874.         Set @SSQL = @SSQL + 'Order By Kolicina DESC'
  17875.     Else If @Podred = '3'
  17876.         Set @SSQL = @SSQL + 'Order By MVr_Krajna DESC, DVr_Krajna DESC'
  17877.     Else If @Podred = '4'
  17878.         Set @SSQL = @SSQL + 'Order By Vr_NPS DESC'
  17879.     Exec(@SSQL)
  17880. Go
  17881. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_art_toplista_nabavki_soprod]'))
  17882. drop procedure [dbo].[sp_art_toplista_nabavki_soprod]
  17883.  
  17884. Go
  17885.  
  17886.  
  17887.  
  17888.  
  17889. CREATE    PROCEDURE sp_Art_TopLista_Nabavki_SoProd
  17890.     @Sifra_OE Smallint = 1,
  17891.     @KoiOE Varchar(300) = Null,
  17892.     @Pod1 Smallint = Null,
  17893.     @Pod2 Smallint = Null,
  17894.     @Pod3 Smallint = Null,
  17895.     @Pod4 Smallint = Null,
  17896.     @Pod5 Smallint = Null,
  17897.     @Pod6 Smallint = Null,
  17898.     @Pod7 Smallint = Null,
  17899.     @KFPod1 char(1) = Null,
  17900.     @KFPod2 char(1) = Null,
  17901.     @KFPod3 char(1) = Null,
  17902.     @KFPod4 char(1) = Null,
  17903.     @KFPod5 char(1) = Null,
  17904.     @KFPod6 char(1) = Null,
  17905.     @KFPod7 char(1) = Null,
  17906.     @Sifra_Tip Smallint = Null,
  17907.     @Datum_Od Smalldatetime = Null,
  17908.     @Datum_Do Smalldatetime = Null,
  17909.     @Sifra_Art_Od Varchar(20)= Null,
  17910.     @Sifra_Art_Do Varchar(20) = Null,
  17911.     @Sifra_Kup_Od Char(6) = Null,
  17912.     @Sifra_Kup_Do Char(6) = Null,
  17913.     @Podred Char(1) = 3,
  17914.     @Kolku Int = Null,
  17915.     @Kto Char(6) = Null,
  17916.     @Sifra_Gr Char(3) = Null,
  17917.     @Sifra_Podg Char(6) = Null,
  17918.     @Lokacija Varchar(10) = Null,
  17919.     @TipKup Varchar(200) = Null,
  17920.     @Komint_KObj Char(1) = 'K',
  17921.     @Sifra_Brand Smallint = Null,
  17922.     @Sifra_ZBrand Smallint = Null,
  17923.     @RazbijSostav Char(1) = 'D',
  17924.     @ZalihaOdOE Varchar(300) = '1,2,3',
  17925.     @SoPodgrupi char(1) = 'N',
  17926.     @Sifra_Pat    varchar(300) = Null,
  17927.     @Sifra_obj    smallint = Null,
  17928.     @TipDokNab    varchar(200) = Null,
  17929.     @TipDokProd    varchar(200) = Null,
  17930.     @Koi_Gradovi    varchar(200) = Null,
  17931.     @Koi_Regioni    varchar(200) = Null,
  17932.     @Sifra_Mest Int = Null,
  17933.     @PoProdMesta char(1)='N',
  17934.     @KomercKako    char(1) = 'I',             -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  17935.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  17936.     @Drugo1    smallint = Null,
  17937.     @Drugo2    smallint = Null,
  17938.     @Drugo3    smallint = Null,
  17939.     @Drugo4    smallint = Null,
  17940.     @Drugo5    smallint = Null,
  17941.     @Drugo6    smallint = Null,
  17942.     @Drugo7    smallint = Null,
  17943.     @SoBrand    char(1) = Null,
  17944.     @Sifra_Nivo    char(2) = Null,
  17945.     @KojaCena    char(1) = Null,
  17946.     @SoPod4    char(1) = Null,
  17947.     @ImeArtDel    varchar(20) = Null,
  17948.     @Sifra_Div    smallint = Null,
  17949.         @GrKup     varchar(500) = Null,
  17950.     @GrArt        varchar(500) = Null
  17951.  
  17952. AS
  17953.     If @PoKojDatum = 'V'
  17954.             If @Datum_Do Is Not Null
  17955.         Set @Datum_Do = @Datum_Do + 1
  17956.     Declare @SSQL Varchar(8000)
  17957.     CREATE           Table #tSostav
  17958.     (    Sifra_Art Varchar(20),
  17959.         Sifra_Sur Varchar(20),
  17960.         Ima_Kolic Decimal(18,6),
  17961.         Cena Decimal(18,6),
  17962.         VkCena Decimal(18,6)
  17963.     )
  17964.     CREATE TABLE #TopLista
  17965.     (    [Sifra_Art] Varchar(20) NULL ,
  17966.         [Kolicina] [decimal](18, 4) NULL ,
  17967.         [UL] [decimal](18, 4) NULL ,
  17968.         [Izlezi] [int] NULL ,
  17969.         [DVr_Osnov] [decimal](18, 4) NULL ,
  17970.         [DVr_SoRabat] [decimal](18, 4) NULL ,
  17971.         [DVr_Krajna] [decimal](18, 4) NULL ,
  17972.         [MVr_Osnov] [decimal](18, 4) NULL ,
  17973.         [MVr_SoRabat] [decimal](18, 4) NULL ,
  17974.         [MVr_Krajna] [decimal](18, 4) NULL ,
  17975.         [Vr_NPS] [decimal](18, 4) NULL ,
  17976.         [Komintenti] [int] NULL ,
  17977.         [Zaliha] [decimal](18, 4) NULL ,
  17978.         [PoslednaNabavka] [decimal](18, 4) NULL ,
  17979.         [TekNabC] [decimal](18, 4) NULL ,
  17980.         [MinNabC] [decimal](18, 4) NULL ,
  17981.         [MaxNabC] [decimal](18, 4) NULL ,
  17982.         [Prodazba_Za1] [decimal](18, 4) NULL ,
  17983.         [VrProd_Za1] [decimal](18, 4) NULL ,
  17984.          [Prodazba_Za3] [decimal](18, 4) NULL ,
  17985.         [VrProd_Za3] [decimal](18, 4) NULL
  17986.     )
  17987.     If @RazbijSostav = 'D'
  17988.         Begin
  17989.             Set @SSQL = 'Insert #tSostav
  17990.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  17991.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  17992.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  17993.             Exec(@SSQL)
  17994.         End
  17995.     Set @SSQL = 'Insert #tSostav
  17996.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  17997.         From Katart K '
  17998.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  17999.     If @RazbijSostav = 'D'
  18000.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  18001.     Exec(@SSQL)
  18002. -- select * from #tsostav
  18003. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  18004. -- Prvo: Gi presmetuvam nabavkite, nabavnite ceni i zalihata
  18005. --------------------------------------------------------------
  18006.     Set @SSQL = 'Select TS.Sifra_Sur Sifra_Art,
  18007.             Round(Sum(S.Kolic*TS.Ima_Kolic), 4) As Kolicina,
  18008.             Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) As UL,
  18009.             Count(TS.Sifra_Art) As Izlezi,
  18010.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as DVr_Osnov, 
  18011.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_SoRabat,
  18012.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_Krajna,
  18013.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn)), 4) as MVr_Osnov, 
  18014.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0, 0)), 4) as MVr_SoRabat,
  18015.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0, 0)), 4) as MVr_Krajna,
  18016.             Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS, '
  18017.     If @PoProdMesta = 'D'
  18018.         Set @SSQL = @SSQL + 'Count (Distinct(D.Sifra_Mest)) As Komintenti, '
  18019.     Else
  18020.     Begin
  18021.         If @Komint_KObj = 'K'
  18022.             Set @SSQL =    @SSQL + 'Count (Distinct(D.Sifra_Kup)) As Komintenti, '
  18023.         Else If @Komint_KObj = 'O'
  18024.             Set @SSQL =    @SSQL + 'Count (Distinct(D.Sifra_Obj)) As Komintenti, '
  18025.     End
  18026.     Set @SSQL = @SSQL + '0 As Zaliha,
  18027.             0 As Poslednanabavka,
  18028.             K.Nabavna As TekNabC,
  18029.             Min(S.NabCena*(1+S.POsn/100)) As MinNabC,
  18030.             Max(S.NabCena*(1+S.POsn/100)) As MaxNabC, 
  18031.             0 As Prodazba_Za1, 0 As VrProd_Za1,
  18032.             0 As Prodazba_Za3, 0 As VrProd_Za3 '
  18033.     Set @SSQL = @SSQL + 'From #tSostav TS
  18034.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  18035.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  18036.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=2 '
  18037.     If @Sifra_Gr Is Not Null
  18038.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  18039.     If @Sifra_ZBrand Is Not Null
  18040.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  18041.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  18042.          Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null) Or (@Sifra_Nivo Is Not Null) Or (@KojaCena Is Not Null)
  18043.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  18044.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  18045.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  18046.     If @Sifra_OE Is Not NULL
  18047.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  18048.     If @KoiOE Is Not NULL
  18049.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  18050.     If @Sifra_Art_Od Is Not Null
  18051.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  18052.     If @Sifra_Art_Do Is Not Null
  18053.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  18054.     If @Sifra_Brand Is Not Null
  18055.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  18056.     If @Sifra_ZBrand Is Not Null
  18057.         Set @SSQL = @SSQL + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  18058.     If @Sifra_Podg Is Not Null
  18059.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  18060.     If @Sifra_Gr Is Not Null
  18061.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  18062.     If @Pod1 Is Not NULL
  18063.         If @KFPod1 = 'D'
  18064.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  18065.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  18066.         Else
  18067.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  18068.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  18069.     If @Pod2 Is Not NULL
  18070.         If @KFPod2 = 'D'
  18071.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  18072.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  18073.         Else
  18074.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  18075.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  18076.     If @Pod3 Is Not NULL
  18077.         If @KFPod3 = 'D'
  18078.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  18079.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  18080.         Else
  18081.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  18082.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  18083.     If @Pod4 Is Not NULL
  18084.         If @KFPod4 = 'D'
  18085.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  18086.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  18087.         Else
  18088.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  18089.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  18090.     If @Pod5 Is Not NULL
  18091.         If @KFPod5 = 'D'
  18092.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  18093.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  18094.         Else
  18095.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  18096.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  18097.     If @Pod6 Is Not NULL
  18098.         If @KFPod6 = 'D'
  18099.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  18100.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  18101.         Else
  18102.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  18103.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  18104.     If @Pod7 Is Not NULL
  18105.         If @KFPod7 = 'D'
  18106.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  18107.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  18108.         Else
  18109.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  18110.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  18111. /*
  18112. ------------------------------------------------------- dodadeno 16.07.2004  filterot da gleda prvo od kobjekti ----------------------------------------------------------------------
  18113.     If @Pod1 Is Not NULL
  18114.            Begin
  18115.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  18116.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  18117.            End
  18118.     If @Pod2 Is Not NULL
  18119.            Begin
  18120.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  18121.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  18122.            End
  18123.     If @Pod3 Is Not NULL
  18124.            Begin
  18125.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  18126.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  18127.            End
  18128.     If @Pod4 Is Not NULL
  18129.            Begin
  18130.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  18131.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  18132.            End
  18133.     If @Pod5 Is Not NULL
  18134.            Begin
  18135.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  18136.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5= ' + Cast(@Pod5 As Varchar(6)) + ')) '
  18137.            End
  18138. */
  18139.     If @Sifra_Tip Is Not Null
  18140.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  18141.     If @Sifra_Nivo Is Not NULL
  18142.         Set @SSQL = @SSQL + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  18143.     If @KojaCena Is Not NULL
  18144.         Set @SSQL = @SSQL + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  18145.     If @Lokacija Is Not NULL
  18146.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  18147.     If @Kto Is Not NULL
  18148.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  18149.     If @PoKojDatum = 'V'
  18150.           Begin
  18151.         If @Datum_Od Is Not NULL
  18152.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  18153.         If @Datum_Do Is Not NULL
  18154.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  18155.           End
  18156.     Else 
  18157.           Begin
  18158.         If @Datum_Od Is Not NULL
  18159.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  18160.         If @Datum_Do Is Not NULL
  18161.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  18162.            End
  18163.     If @Sifra_Kup_Od Is Not NULL
  18164.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  18165.     If @Sifra_Kup_Do Is Not NULL
  18166.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  18167.     If @GrKup Is Not Null
  18168.         Set @SSQL = @SSQL + ' And D.Sifra_Kup In (Select Distinct Sifra_Kup From SGrKup Where Sif_GrKup In ( ' + @GrKup + ' )) '
  18169.     If @Sifra_Obj IS NOT NULL
  18170.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  18171.       If @KomercKako = 'I'
  18172.         If @Sifra_Pat IS NOT NULL
  18173.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat In (' + @Sifra_Pat  + ') '
  18174.        If @KomercKako = 'T'
  18175.         If @Sifra_Pat IS NOT NULL
  18176.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  18177.                         OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  18178.     If @Sifra_Obj IS NOT NULL
  18179.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  18180.     If @Sifra_Mest IS NOT NULL
  18181.         SET @SSQL = @SSQL + ' AND D.Sifra_Mest = ' + Cast(@Sifra_Mest as varchar(6)) + ' '
  18182.     If @TipKup Is Not NULL    
  18183.         Begin
  18184.             Set @SSQL = @SSQL + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + ')) 
  18185.             OR ( KO.TipKup Is Null and KUP.TipKup In ( ' + @TipKup + '))) '     
  18186.         End
  18187.     If @TipDokNab IS NOT NULL
  18188.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokNab + ') '
  18189.     If @Koi_Gradovi Is Not NULL    
  18190.         Begin
  18191.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  18192.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  18193.         End
  18194.     If @Koi_Regioni Is Not NULL    
  18195.         Begin
  18196.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  18197.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  18198.         End
  18199.     If @Drugo1 Is Not NULL
  18200.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  18201.     If @Drugo2 Is Not NULL
  18202.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  18203.     If @Drugo3 Is Not NULL
  18204.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  18205.     If @Drugo4 Is Not NULL
  18206.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  18207.     If @Drugo5 Is Not NULL
  18208.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  18209.     If @Drugo6 Is Not NULL
  18210.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  18211.     If @Drugo7 Is Not NULL
  18212.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  18213.     If @Sifra_Div Is Not NULL
  18214.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  18215.        If @ImeArtDel IS NOT NULL 
  18216.         If IsNumeric(@ImeArtDel)=1
  18217.             Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  18218.         Else
  18219.             Set @SSQL = @SSQL + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  18220.     Set @SSQL = @SSQL + 'Group By TS.Sifra_Sur, K.Nabavna '
  18221.     Insert #TopLista Exec(@SSQL)
  18222.     If @ZalihaOdOE Is Not Null
  18223.         Begin
  18224.             Set @SSQL = 'Update #TopLista
  18225.                 Set Zaliha = (Select Sum(Vlez)-Sum(Izlez) From Soart
  18226.                 Where Sifra_OE In (' + @ZalihaOdOE + ')
  18227.                 And #TopLIsta.Sifra_Art=Soart.Sifra_Art) '
  18228.             Exec(@SSQL)
  18229.         End
  18230. -- Da ja najdime Kolicinata na poslednata nabavka
  18231. -- Artikl po Artikl
  18232. --------------------------------------------------------------------------
  18233.     Set @SSQL = 'Update #TopLista
  18234.         Set PoslednaNabavka = '
  18235.     Set @SSQL = @SSQL + '( '
  18236.     Set @SSQL = @SSQL + 'Select Top 1 Kolic From Stavr
  18237.             Where Stavr.Sifra_Art=#TopLista.Sifra_Art
  18238.                 And Stavr.ImaDodatna Is Null
  18239.                 And Stavr.VlIzl=''V'' 
  18240.                 And Stavr.Sifra_Dok<>990
  18241.                 And Stavr.Kolic > 0 '
  18242.     If @Datum_Do Is Not Null
  18243.         Set @SSQL = @SSQL + 'And Stavr.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  18244.     If @Sifra_OE Is Not NULL
  18245.              Set @SSQL  = @SSQL + ' And Stavr.Sifra_OE = ' + Cast(@Sifra_OE As varchar(10)) + ' '
  18246.     If @KoiOE Is Not NULL
  18247.              Set @SSQL  = @SSQL + ' And Stavr.Sifra_OE IN (' + @KoiOE + ') '
  18248.     Set @SSQL = @SSQL + 'Order By Stavr.Datum_Dok Desc, Stavr.DokID Desc) '
  18249.     Exec(@SSQL)
  18250. -- Vtoro: Gi presmetuvam prodazbite so identicni filtri kako pri nabavkite
  18251. --------------------------------------------------------------------------
  18252.     Set @SSQL = 'Select TS.Sifra_Sur Sifra_Art,
  18253.                 0 As Kolicina,
  18254.                 0 As UL,
  18255.                 0 As Izlezi,
  18256.                 0 as DVr_Osnov, 
  18257.                 0 as DVr_SoRabat,
  18258.                 0 as DVr_Krajna,
  18259.                 0 as MVr_Osnov, 
  18260.                 0 as MVr_SoRabat,
  18261.                 0 as MVr_Krajna,
  18262.                 0 As Vr_NPS, '
  18263.     Set @SSQL =    @SSQL + '0 As Komintenti, '
  18264.     Set @SSQL = @SSQL + '0 As Zaliha,
  18265.             0 As PoslednaNabaka,
  18266.             0 As TekNabC,
  18267.             0 As MinNabC,
  18268.             0 As MaxNabC,
  18269.             Prodazba_Za1 = Sum(Case D.Sifra_Za
  18270.                 When ''1'' Then S.Kolic
  18271.                 Else 0
  18272.                 End),
  18273.             VrProd_Za1 = Sum(Case D.Sifra_Za
  18274.                 When ''1'' Then dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)
  18275.                 Else 0
  18276.                 End),
  18277.             Prodazba_Za3 = Sum(Case D.Sifra_Za
  18278.                 When ''3'' Then S.Kolic
  18279.                 Else 0
  18280.                 End),
  18281.             VrProd_Za3 = Sum(Case D.Sifra_Za
  18282.                 When ''3'' Then dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)
  18283.                 Else 0
  18284.                 End) '
  18285.     Set @SSQL = @SSQL + 'From #tSostav TS
  18286.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  18287.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  18288.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.VlIzl=''I'' '      --And D.Sifra_Za In (''1'', ''3'') '    trganato 28.11.03 -->dodadeno podolu
  18289.     If @Sifra_Gr Is Not Null
  18290.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  18291.     If @Sifra_ZBrand Is Not Null
  18292.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  18293.     If @Sifra_Gr Is Not Null
  18294.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  18295.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  18296.         Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@Sifra_Nivo Is Not Null) Or (@KojaCena Is Not Null)
  18297.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup '
  18298.     Set @SSQL = @SSQL + 'Where K.Sifra_Art In (Select Distinct Sifra_Art From #TopLista) '
  18299.     If @Sifra_OE Is Not NULL
  18300.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  18301.     If @KoiOE Is Not NULL
  18302.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  18303.     If @Sifra_Art_Od Is Not Null
  18304.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=' + @Sifra_Art_Od + ' '
  18305.     If @Sifra_Art_Do Is Not Null
  18306.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=' + @Sifra_Art_Do + ' '
  18307.     If @Sifra_Brand Is Not Null
  18308.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  18309.     If @Sifra_ZBrand Is Not Null
  18310.         Set @SSQL = @SSQL + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  18311.     If @Sifra_Podg Is Not Null
  18312.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  18313.     If @Sifra_Gr Is Not Null
  18314.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  18315.     If @Pod1 Is Not NULL
  18316.         If @KFPod1 = 'D'
  18317.             Set @SSQL = @SSQL + ' And (KUP.KDrugo1<>' + Cast(@Pod1 As Varchar(6)) + ' Or KUP.KDrugo1 Is Null) '
  18318.         Else
  18319.             Set @SSQL = @SSQL + ' And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  18320.     If @Pod2 Is Not NULL
  18321.         If @KFPod2 = 'D'
  18322.             Set @SSQL = @SSQL + ' And (KUP.KDrugo2<>' + Cast(@Pod2 As Varchar(6)) + ' Or KUP.KDrugo2 Is Null) '
  18323.         Else
  18324.             Set @SSQL = @SSQL + ' And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  18325.     If @Pod3 Is Not NULL
  18326.         If @KFPod3 = 'D'
  18327.             Set @SSQL = @SSQL + ' And (KUP.KDrugo3<>' + Cast(@Pod3 As Varchar(6)) + ' Or KUP.KDrugo3 Is Null) '
  18328.         Else
  18329.             Set @SSQL = @SSQL + ' And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  18330.     If @Pod4 Is Not NULL
  18331.         If @KFPod4 = 'D'
  18332.             Set @SSQL = @SSQL + ' And (KUP.KDrugo4<>' + Cast(@Pod4 As Varchar(6)) + ' Or KUP.KDrugo4 Is Null) '
  18333.         Else
  18334.             Set @SSQL = @SSQL + ' And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  18335.     If @Pod5 Is Not NULL
  18336.         If @KFPod5 = 'D'
  18337.             Set @SSQL = @SSQL + ' And (KUP.KDrugo5<>' + Cast(@Pod5 As Varchar(6)) + ' Or KUP.KDrugo5 Is Null) '
  18338.         Else
  18339.             Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  18340.     If @Pod6 Is Not NULL
  18341.         If @KFPod6 = 'D'
  18342.             Set @SSQL = @SSQL + ' And (KUP.KDrugo6<>' + Cast(@Pod6 As Varchar(6)) + ' Or KUP.KDrugo6 Is Null) '
  18343.         Else
  18344.             Set @SSQL = @SSQL + ' And KUP.KDrugo6=' + Cast(@Pod6 As Varchar(6)) + ' '
  18345.     If @Pod7 Is Not NULL
  18346.         If @KFPod7 = 'D'
  18347.             Set @SSQL = @SSQL + ' And (KUP.KDrugo7<>' + Cast(@Pod7 As Varchar(6)) + ' Or KUP.KDrugo7 Is Null) '
  18348.         Else
  18349.             Set @SSQL = @SSQL + ' And KUP.KDrugo7=' + Cast(@Pod7 As Varchar(6)) + ' '
  18350. /*
  18351.     If @Pod1 Is Not NULL
  18352.         Set @SSQL = @SSQL + ' And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  18353.     If @Pod2 Is Not NULL
  18354.         Set @SSQL = @SSQL + ' And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  18355.     If @Pod3 Is Not NULL        Set @SSQL = @SSQL + ' And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  18356.     If @Pod4 Is Not NULL
  18357.         Set @SSQL = @SSQL + ' And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  18358.     If @Pod5 Is Not NULL
  18359.         Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  18360.     If @Pod6 Is Not NULL
  18361.         Set @SSQL = @SSQL + ' And KUP.KDrugo6=' + Cast(@Pod6 As Varchar(6)) + ' '
  18362.     If @Pod7 Is Not NULL
  18363.         Set @SSQL = @SSQL + ' And KUP.KDrugo7=' + Cast(@Pod7 As Varchar(6)) + ' '
  18364. */
  18365.     If @Sifra_Tip Is Not Null
  18366.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  18367.     If @Sifra_Nivo Is Not NULL
  18368.         Set @SSQL = @SSQL + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  18369.     If @KojaCena Is Not NULL
  18370.         Set @SSQL = @SSQL + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  18371.     If @Lokacija Is Not NULL
  18372.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  18373.     If @Kto Is Not NULL
  18374.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  18375.     If @PoKojDatum = 'V'
  18376.           Begin
  18377.         If @Datum_Od Is Not NULL
  18378.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  18379.         If @Datum_Do Is Not NULL
  18380.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  18381.          End
  18382.     Else 
  18383.           Begin
  18384.         If @Datum_Od Is Not NULL
  18385.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  18386.         If @Datum_Do Is Not NULL
  18387.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  18388.           End
  18389.       If @KomercKako = 'I'
  18390.         If @Sifra_Pat IS NOT NULL
  18391.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  18392.        If @KomercKako = 'T'
  18393.         If @Sifra_Pat IS NOT NULL
  18394.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat In (' + @Sifra_Pat + ') '
  18395.     If @Sifra_Obj IS NOT NULL
  18396.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  18397.     If @Sifra_Mest IS NOT NULL
  18398.         SET @SSQL = @SSQL + ' AND D.Sifra_Mest = ' + Cast(@Sifra_Mest as varchar(6)) + ' '
  18399.     If @TipDokProd IS NOT NULL
  18400.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  18401. /*
  18402.     If @Sifra_Kup_Od Is Not NULL
  18403.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  18404.     If @Sifra_Kup_Do Is Not NULL
  18405.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  18406. */
  18407.     If @TipKup Is Not NULL
  18408.         Set @SSQL = @SSQL + ' And KUP.TipKup In (' + @TipKup + ') '
  18409.     If @Drugo1 Is Not NULL
  18410.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  18411.     If @Drugo2 Is Not NULL
  18412.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  18413.     If @Drugo3 Is Not NULL
  18414.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  18415.     If @Drugo4 Is Not NULL
  18416.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  18417.     If @Drugo5 Is Not NULL
  18418.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  18419.     If @Drugo6 Is Not NULL
  18420.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  18421.     If @Drugo7 Is Not NULL
  18422.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  18423.     If @Sifra_Div Is Not NULL
  18424.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  18425.        If @ImeArtDel IS NOT NULL 
  18426.         If IsNumeric(@ImeArtDel)=1
  18427.             Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  18428.         Else
  18429.             Set @SSQL = @SSQL + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  18430.     Set @SSQL = @SSQL + 'Group By TS.Sifra_Sur '
  18431.     Insert #TopLista Exec(@SSQL)
  18432.     Set @SSQL = 'Select'    IF @Kolku IS NOT NULL    
  18433.         Set @SSQL = @SSQL + ' TOP ' + Cast(@Kolku as varchar(15))
  18434.     Set @SSQL = @SSQL +  ' T.Sifra_Art, K.ImeArt, K.ImeArt2, K.EdMera, K.Alt_Sifra,
  18435.             K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina,
  18436.             K.Kto, KO.ImeKup, 
  18437.             Sum(T.Kolicina) Kolicina,
  18438.             Sum(T.UL) UL,
  18439.             Sum(T.Izlezi) Izlezi,
  18440.             Sum(T.DVr_Osnov) DVr_Osnov,
  18441.             Sum(T.DVr_SoRabat) DVr_SoRabat,
  18442.             Sum(T.DVr_Krajna) DVr_Krajna,
  18443.             Sum(T.MVr_Osnov) MVr_Osnov,
  18444.             Sum(T.MVr_SoRabat) MVr_SoRabat,
  18445.             Sum(T.MVr_Krajna) MVr_Krajna,
  18446.             Sum(T.Vr_NPS) Vr_NPS,
  18447.             Sum(T.Komintenti) Komintenti,
  18448.             Sum(T.Zaliha) Zaliha,
  18449.             Sum(T.PoslednaNabavka) PoslednaNabavka,
  18450.             Sum(T.TekNabC) TekNabC,
  18451.             Sum(T.MinNabC) MinNabC,
  18452.             Sum(T.MaxNabC) MaxNabC,
  18453.             Sum(T.Prodazba_Za1) Prodazba_Za1,
  18454.             Sum(T.VrProd_Za1) VrProd_Za1,
  18455.             Sum(T.Prodazba_Za3) Prodazba_Za3,
  18456.             Sum(T.VrProd_Za3) VrProd_Za3, 
  18457.             0 as VlezOdPren,
  18458.             K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, '
  18459.     If @SoBrand = 'D' 
  18460.         Set @SSQL = @SSQL + ' K.Sifra_Drg, B.Ime as ImeBrand, '
  18461.     Else     
  18462.         Set @SSQL = @SSQL + ' Null as Sifra_Drg, Null as ImeBrand, '
  18463.     If @SoPod4 = 'D'
  18464.         Set @SSQL = @SSQL + ' K.Drugo4, D4.Ime_4 as ImeDrugo4 '
  18465.     Else 
  18466.         Set @SSQL = @SSQL + ' Null as Drugo4, Null as ImeDrugo4 '
  18467.     Set @SSQL = @SSQL + ' From #TopLista T
  18468.             Inner Join Katart K On T.Sifra_Art=K.Sifra_Art
  18469.             Left OUTER Join Komint KO ON K.Kto=KO.Sifra_Kup 
  18470.             Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg
  18471.             Inner Join Grupi G ON G.Sifra_Gr = PG.Sifra_Gr '
  18472.     If @SoBrand = 'D'
  18473.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg = K.Sifra_Drg '
  18474.     If @SoPod4 = 'D'
  18475.         Set @SSQL = @SSQL + ' Left Outer Join Drugo4 D4 On D4.Sifra_4 = K.Drugo4 '
  18476.     Set @SSQL = @SSQL + 'Group By T.Sifra_Art, K.ImeArt, K.ImeArt2, K.EdMera, K.Alt_Sifra,
  18477.             K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina, K.Kto, KO.ImeKup, 
  18478.             K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr '
  18479.     If @SoBrand = 'D' 
  18480.         Set @SSQL = @SSQL + ', K.Sifra_Drg, B.Ime '
  18481.     If @SoPod4 = 'D'
  18482.         Set @SSQL = @SSQL + ', K.Drugo4, D4.Ime_4 '
  18483.     If @Podred = 'S'
  18484.         Set @SSQL = @SSQL + 'Order By T.Sifra_Art '
  18485.     Else If @Podred = 'A'
  18486.         Set @SSQL = @SSQL + 'Order By K.ImeArt '
  18487.     Else If @Podred = 'B'
  18488.         Set @SSQL = @SSQL + 'Order By K.Sifra_Drg '
  18489.     Else If @Podred = '1'
  18490.         Set @SSQL = @SSQL + 'Order By Izlezi DESC'
  18491.     Else If @Podred = '2'
  18492.         Set @SSQL = @SSQL + 'Order By Kolicina DESC'
  18493.     Else If @Podred = '3'
  18494.         Set @SSQL = @SSQL + 'Order By MVr_Krajna DESC, DVr_Krajna DESC'
  18495.     Else If @Podred = '4'
  18496.         Set @SSQL = @SSQL + 'Order By Vr_NPS DESC'
  18497.     Exec(@SSQL)
  18498.  
  18499.  
  18500.  
  18501.  
  18502. Go
  18503. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_art_toplista_popresmetka]'))
  18504. drop procedure [dbo].[sp_art_toplista_popresmetka]
  18505.  
  18506. Go
  18507.  
  18508.  
  18509.  
  18510.  
  18511. CREATE        PROCEDURE sp_Art_TopLista_PoPresmetka
  18512.     @Sifra_OE     Smallint = Null,
  18513.     @KoiOE     Varchar(300) = Null,
  18514.     @Datum_Od     Smalldatetime = Null,
  18515.     @Datum_Do     Smalldatetime = Null,
  18516.     @Sifra_Art_Od     Varchar(20)= Null,
  18517.     @Sifra_Art_Do     Varchar(20) = Null,
  18518.     @Podred     Char(1) = 3,
  18519.     @Sifra_Gr     Char(3) = Null,
  18520.     @Sifra_Podg     Char(6) = Null,
  18521.     @ZalihaOdOE     Varchar(300) = Null,
  18522.     @Drugo1    smallint = Null,
  18523.     @Drugo2    smallint = Null,
  18524.     @Drugo3    smallint = Null,
  18525.     @Drugo4    smallint = Null,
  18526.     @Drugo5    smallint = Null,
  18527.     @Asortiman    char(1) = 'N',        -- D - da gi prikaze i onie artikli za koi nema prodazba vo periodot
  18528.                         -- Z - da gi prikaze i onie artikli za koi nema prodazba vo periodot, a gi ima na zaliha 
  18529.     @Sifra_Tabela     varchar(20) = null,    -- Dali da gi vratam definiranite Grupi na Artikli i rednite broevi za podreduvanje na izvestajot (za specijalni izvestai)
  18530.     @GotovinaPoPresm char(1) = 'N',
  18531.         @GrKup     varchar(500) = Null,
  18532.     @GrArt        varchar(500) = Null
  18533.  
  18534. AS
  18535.     Declare @SSQL Varchar(8000)
  18536.     Declare @SSQLUsl Varchar(8000)
  18537.     Set @SSQLUsl = ' '
  18538.     CREATE     Table #Rez
  18539.     (
  18540.      Sifra_Art     varchar(20),
  18541.      Vlez        decimal(18,6),
  18542.      Izlez        decimal(18,6),
  18543.      IzlezGot    decimal(18,6),
  18544.      VratIspr        decimal(18,6),
  18545.      VratNeIspr    decimal(18,6),
  18546.      Zaliha        decimal(18,6),
  18547.      IzlezMag    decimal(18,6)
  18548.     )
  18549. ------------------------------------------------------------------ U S L O V -------------------------------------------------------------------------------------
  18550.     If @Sifra_OE Is Not NULL
  18551.              Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  18552.     If @KoiOE Is Not NULL
  18553.              Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  18554.     If @Sifra_Art_Od Is Not Null
  18555.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  18556.     If @Sifra_Art_Do Is Not Null
  18557.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  18558.     If @Sifra_Podg Is Not Null
  18559.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  18560.     If @Sifra_Gr Is Not Null
  18561.         Set @SSQLUsl = @SSQLUsl + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  18562.     If @Datum_Od Is Not NULL
  18563.         Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  18564.     If @Datum_Do Is Not NULL
  18565.         Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  18566.     If @Drugo1 Is Not NULL
  18567.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  18568.     If @Drugo2 Is Not NULL
  18569.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  18570.     If @Drugo3 Is Not NULL
  18571.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  18572.     If @Drugo4 Is Not NULL
  18573.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  18574.     If @Drugo5 Is Not NULL
  18575.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  18576.     Set @SSQLUsl = @SSQLUsl + ' Group By S.Sifra_Art '
  18577. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  18578.     -- I (prvo) - da gi najdeme site vlezovi
  18579.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  18580.             From Dokr D
  18581.             Inner Join Stavr S On S.DokrID=D.DokrID'
  18582.     If @Sifra_Gr Is Not Null Or @Sifra_Podg Is Not Null
  18583.         Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  18584.                       Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg '
  18585.     Set @SSQL = @SSQL + ' Where D.ImaDodatna = ''P'' 
  18586.             and D.Sifra_Prim = 1
  18587.             and D.VlIzl = ''V''
  18588.             and S.Kolic > 0 
  18589.             and S.Sifra_Oe <> 1 '
  18590.     Insert Into #Rez(Sifra_Art, Vlez) Exec(@SSQL+@SSQLUsl)
  18591.     -- II - da gi najdeme izlezite - faktura
  18592.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic) 
  18593.             From Dokr D
  18594.             Inner Join Stavr S On S.DokrID=D.DokrID '
  18595.     If @Sifra_Gr Is Not Null Or @Sifra_Podg Is Not Null
  18596.         Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  18597.                       Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg '
  18598.     Set @SSQL = @SSQL + ' Where D.VlIzl=''I'' and D.Sifra_Dok NOT IN (82,84,6,106)
  18599.                 and S.Sifra_Oe <> 1 '
  18600.     Insert Into #Rez(Sifra_Art, Izlez) Exec(@SSQL+@SSQLUsl)
  18601.     -- II - da gi najdeme site ostanati izlezi (gotovinski)   , Sum(S.Kolic*dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa))
  18602.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  18603.             From Dokr D
  18604.             Inner Join Stavr S On S.DokrID=D.DokrID '
  18605.     If @Sifra_Gr Is Not Null Or @Sifra_Podg Is Not Null
  18606.         Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  18607.                       Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg '
  18608.     Set @SSQL = @SSQL + ' Where D.VlIzl=''I'' and D.Sifra_Dok IN (82,84,6,106)
  18609.                     and S.Sifra_Oe <> 1 '
  18610.     Insert Into #Rez(Sifra_Art, IzlezGot) Exec(@SSQL+@SSQLUsl)
  18611.     -- III - da gi najdeme vratenite artikli koi se ispravni
  18612.     Set @SSQL = ' Select S.Sifra_Art, Sum(Abs(S.Kolic)) 
  18613.             From Dokr D
  18614.             Inner Join Stavr S On S.DokrID=D.DokrID '
  18615.     If @Sifra_Gr Is Not Null Or @Sifra_Podg Is Not Null
  18616.         Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  18617.                       Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg '
  18618.     Set @SSQL = @SSQL + ' Where D.ImaDodatna = ''P'' 
  18619.                 and D.Sifra_Prim = 1
  18620.                 and S.Kolic < 0 
  18621.                 and S.Sifra_Oe <> 1 '
  18622.     Insert Into #Rez(Sifra_Art, VratIspr) Exec(@SSQL+@SSQLUsl)
  18623.     -- IV - da gi najdeme vratenite artikli koi se ne ispravni
  18624.     Set @SSQL = ' Select S.Sifra_Art, Sum(Abs(S.Kolic)) 
  18625.             From Dokr D
  18626.             Inner Join Stavr S On S.DokrID=D.DokrID '
  18627.     If @Sifra_Gr Is Not Null Or @Sifra_Podg Is Not Null
  18628.         Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  18629.                       Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg '
  18630.     Set @SSQL = @SSQL + ' Where D.ImaDodatna = ''P'' 
  18631.                 and D.Sifra_Prim <> 1
  18632.                 and S.Kolic < 0 
  18633.                 and S.Sifra_Oe <> 1 '
  18634.     Insert Into #Rez(Sifra_Art, VratNeIspr) Exec(@SSQL+@SSQLUsl)
  18635.     -- V Izlez od magacin
  18636.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic) 
  18637.             From Dokr D
  18638.             Inner Join Stavr S On S.DokrID=D.DokrID '
  18639.     If @Sifra_Gr Is Not Null Or @Sifra_Podg Is Not Null
  18640.         Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  18641.                       Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg '
  18642.     Set @SSQL = @SSQL + ' Where D.VlIzl=''I'' 
  18643.                 and S.Sifra_Oe = 1 '
  18644.     Insert Into #Rez(Sifra_Art, IzlezMag) Exec(@SSQL+@SSQLUsl)
  18645. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  18646.     If @Asortiman In ('D', 'Z') 
  18647.     Begin
  18648.         Set @SSQL = ' Select K.Sifra_Art, 0, 0, 0, 0, 0, 0, 0 From Katart K '
  18649.         IF @Sifra_Gr Is Not Null
  18650.             Set @SSQL = @SSQL + 'Left Outer Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg '
  18651.         If @Sifra_Tabela Is Not Null
  18652.             Set @SSQL = @SSQL + 'Inner Join KonfIzvArt KIA On KIA.Sifra_Art = K.Sifra_Art And KIA.Sifra_Tabela = ' + @Sifra_Tabela + ' '
  18653.         Set @SSQL = @SSQL + ' Where K.Sifra_Art Not In (Select Distinct Sifra_Art from #Rez) 
  18654.                     And K.Iskluci <> ''D'' '
  18655.         If @Sifra_Art_Od Is Not Null
  18656.             Set @SSQL = @SSQL + 'And K.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  18657.         If @Sifra_Art_Do Is Not Null
  18658.             Set @SSQL = @SSQL + 'And K.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  18659.         If @Sifra_Podg Is Not Null
  18660.             Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  18661.         If @Sifra_Gr Is Not Null
  18662.             Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  18663.         If @Drugo1 Is Not NULL
  18664.             Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  18665.         If @Drugo2 Is Not NULL
  18666.             Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  18667.         If @Drugo3 Is Not NULL
  18668.             Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  18669.         If @Drugo4 Is Not NULL
  18670.             Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  18671.         If @Drugo5 Is Not NULL
  18672.             Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  18673.         Insert Into #Rez Exec(@SSQL)
  18674.     End
  18675.     ---------------------------------------------------- Z A L I H A ----------------------------------------------------------
  18676.     Create Table #Zaliha
  18677.     (
  18678.      Sifra_Art    varchar(20),
  18679.      Zaliha        decimal(18,6)
  18680.     )
  18681.     Set @SSQL = ' Select S.Sifra_Art, Sum(Case S.VlIzl When ''V'' Then S.Kolic When ''I'' Then (-1*S.Kolic) End)
  18682.             From Stavr S
  18683.             Where S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' 
  18684.             And S.Sifra_Art In (Select Distinct Sifra_Art From #Rez) '
  18685.     If @ZalihaOdOE Is Not Null 
  18686.         Set @SSQL = @SSQL + ' And S.Sifra_OE In (' + @ZalihaOdOE + ') '
  18687.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art '
  18688.     Insert Into #Zaliha Exec(@SSQL)
  18689. /*
  18690.     Set @SSQL = 'Update #Zaliha
  18691.             Set Zaliha = (Select Sum(Case S.VlIzl When ''V'' Then S.Kolic When ''I'' Then (-1*S.Kolic) End)
  18692.             From Stavr 
  18693.             Inner Join #Zaliha On #Zaliha.Sifra_Art = Stavr.Sifra_Art
  18694.             Where Datum_Dok < ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  18695.     If @ZalihaOdOE Is Not Null 
  18696.         Set @SSQL = @SSQL + ' And Sifra_OE In (' + @ZalihaOdOE + ') '
  18697.     Set @SSQL = @SSQL + ' And #Zaliha.Sifra_Art=Stavr.Sifra_Art) '
  18698.     Exec(@SSQL)
  18699. */    -----------------------------------------------------------------------------------------------------------------------------------
  18700.     If @GotovinaPoPresm = 'D'
  18701.     Begin
  18702.         Update #Rez Set Vlez=0 Where Vlez Is Null
  18703.         Update #Rez Set Izlez=0 Where Izlez Is Null
  18704.         Update #Rez Set VratIspr=0 Where VratIspr Is Null
  18705.         Update #Rez Set VratNeIspr=0 Where VratNeIspr Is Null
  18706.     End
  18707.     Set @SSQL = ' Select R.Sifra_Art, K.ImeArt, Sum(R.Vlez) Vlez, Sum(R.Izlez) Izlez, Sum(IzlezMag) IzlezMag, K.ImaKomerc,'
  18708.     If @GotovinaPoPresm = 'D'
  18709.         Set @SSQL = @SSQL + ' Sum(R.Vlez-R.Izlez-R.VratIspr-R.VratNeIspr) as IzlezGot, '
  18710.     Else 
  18711.         Set @SSQL = @SSQL + ' Sum(R.IzlezGot) IzlezGot,  '
  18712.     Set @SSQL = @SSQL + ' Sum(R.VratIspr) VratIspr, Sum(R.VratNeIspr) VratNeIspr, Z.Zaliha, '
  18713.     If @Sifra_Tabela Is Not Null
  18714.         Set @SSQL = @SSQL + ' KIA.Grupa, KIA.RbrVoGr '
  18715.     Else
  18716.         Set @SSQL = @SSQL + ' Null as Grupa, Null as RbrVoGr '
  18717.     Set @SSQL = @SSQL + ' From #Rez R
  18718.                   Inner Join Katart K On K.Sifra_Art = R.Sifra_Art 
  18719.                   Left Outer Join #Zaliha Z On Z.Sifra_Art = R.Sifra_Art '
  18720.     If @Sifra_Tabela Is Not Null
  18721.         Set @SSQL = @SSQL + 'Inner Join KonfIzvArt KIA On KIA.Sifra_Art = K.Sifra_Art And KIA.Sifra_Tabela = ' + @Sifra_Tabela + ' '
  18722.     Set @SSQL = @SSQL + ' Group By R.Sifra_Art, K.ImeArt, K.ImaKomerc, Z.Zaliha '
  18723.     If @Sifra_Tabela Is Not Null
  18724.         Set @SSQL = @SSQL + ', KIA.Grupa, KIA.RbrVoGr '
  18725.     If @Podred = 'S'
  18726.         Set @SSQL = @SSQL + ' Order By R.Sifra_Art '
  18727.     Else If @Podred = 'A'
  18728.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  18729. print @SSQL
  18730.     Exec (@SSQL)
  18731.  
  18732.  
  18733.  
  18734.  
  18735.  
  18736. Go
  18737. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_art_toplista_so_zaliha]'))
  18738. drop procedure [dbo].[sp_art_toplista_so_zaliha]
  18739.  
  18740. Go
  18741.  
  18742.  
  18743.  
  18744.  
  18745. CREATE    PROCEDURE sp_Art_TopLista_So_Zaliha
  18746.     @Sifra_OE     Smallint = Null,
  18747.     @KoiOE     Varchar(300) = Null,
  18748.     @Datum_Od     Smalldatetime = Null,
  18749.     @Datum_Do     Smalldatetime = Null,
  18750.  
  18751.     @Sifra_Art_Od     Varchar(20)= Null,
  18752.     @Sifra_Art_Do    Varchar(20) = Null,
  18753.     @ImeArtDel    varchar(20) = Null,
  18754.     @Sifra_Kup_Od Char(6) = Null,
  18755.     @Sifra_Kup_Do Char(6) = Null,
  18756.     @Podred     Char(1) = 3,
  18757.     @Kto         Char(6) = Null,
  18758.     @Sifra_Gr     VarChar(300) = Null,
  18759.     @Sifra_Podg     VarChar(300) = Null,
  18760.     @Lokacija     Varchar(10) = Null,
  18761.     @Sifra_Brand     Smallint = Null,
  18762.     @Sifra_ZBrand     Smallint = Null,
  18763.     @Pod1         Smallint = Null,
  18764.     @Pod2         Smallint = Null,
  18765.     @Pod3         Smallint = Null,
  18766.     @Pod4         Smallint = Null,
  18767.     @Pod5         Smallint = Null,
  18768.     @Pod6         Smallint = Null,
  18769.     @Pod7         Smallint = Null,
  18770.     @KFPod1     char(1) = Null,
  18771.     @KFPod2     char(1) = Null,
  18772.     @KFPod3     char(1) = Null,
  18773.     @KFPod4     char(1) = Null,
  18774.     @KFPod5     char(1) = Null,
  18775.     @KFPod6     char(1) = Null,
  18776.     @KFPod7     char(1) = Null,
  18777.  
  18778.     @TipKup     Varchar(200) = Null,
  18779.     @Koi_Gradovi     Varchar(200) = Null,
  18780.     @Koi_Regioni    varchar(200) = Null,
  18781.     @Sifra_Pat    varchar(300) = Null,
  18782.     @Sifra_Obj    smallint  = Null,
  18783.     @KomercKako    char(1) = 'I',                 -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  18784.     @Sifra_Mest     Int = Null,
  18785.     @Drugo1    smallint = Null,
  18786.     @Drugo2    smallint = Null,
  18787.     @Drugo3    smallint = Null,
  18788.     @Drugo4    smallint = Null,
  18789.     @Drugo5    smallint = Null,
  18790.     @Drugo6    smallint = Null,
  18791.     @Drugo7    smallint = Null,
  18792.     @Sifra_Nivo    char(2) = Null,
  18793.     @Sifra_Tip     Smallint = Null,
  18794.  
  18795.     @TipDokProd    varchar(200) = Null,
  18796. --    @Asortiman    char(1) = 'N',        -- D - da gi prikaze i onie artikli za koi nema prodazba vo periodot
  18797. --                        -- Z - da gi prikaze i onie artikli za koi nema prodazba vo periodot, a gi ima na zaliha 
  18798.     @ZalihaOdOE     Varchar(300) = Null,
  18799.  
  18800.     @Sifra_OeDok    smallint = Null,        -- da gi dade samo artiklite od nekoj dokument (oe-dok/broj)
  18801.     @Sifra_DokDok    smallint = Null,
  18802.     @Broj_DokDok    int = Null,
  18803.  
  18804.     @Sifra_OeNar    smallint = Null,        -- da gi dade samo artiklite od nekoa naracka (oe-dok/broj)
  18805.     @Sifra_NarNar    smallint = Null,
  18806.     @Broj_NarNar    int = Null,
  18807.  
  18808.     @PoOrgEd    char(1) = 'N',
  18809.     @Sifra_Div    smallint = Null,
  18810.     @GrKup     varchar(500) = Null,
  18811.     @GrArt        varchar(500) = Null
  18812.  
  18813.  
  18814. AS
  18815.     Declare @SSQL Varchar(8000)
  18816.     Declare @SSQLDok Varchar(8000)
  18817.     Declare @SSQLUsl Varchar(8000)
  18818.     Declare @SSQLUslArt Varchar(8000)
  18819.  
  18820.     Set @SSQLUsl = ' '
  18821.     Set @SSQLUslArt = ' '
  18822.     Set @SSQLDok = ' '
  18823.     ---------------------------------------------------------------------------- U S L O V --------------------------------------------------------------------------------------------
  18824.     If @Koi_Gradovi Is Not NULL    
  18825.         Begin
  18826.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  18827.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  18828.         End
  18829.     If @Koi_Regioni Is Not NULL    
  18830.         Begin
  18831.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  18832.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  18833.         End
  18834.     If @TipKup Is Not NULL    
  18835.         Begin
  18836.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + ')) 
  18837.             OR ( KO.TipKup Is Null and KUP.TipKup In ( ' + @TipKup + '))) '     
  18838.         End
  18839.     If @Sifra_Nivo Is Not NULL
  18840.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  18841.     If @Sifra_Kup_Od Is Not NULL
  18842.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  18843.     If @Sifra_Kup_Do Is Not NULL
  18844.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  18845.        If @KomercKako = 'I'
  18846.         If @Sifra_Pat IS NOT NULL
  18847.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  18848.        If @KomercKako = 'T'
  18849.         If @Sifra_Pat IS NOT NULL
  18850.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  18851.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  18852.     If @Sifra_Obj IS NOT NULL
  18853.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  18854.     If @Pod1 Is Not NULL
  18855.         If @KFPod1 = 'D'
  18856.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  18857.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  18858.         Else
  18859.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  18860.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  18861.     If @Pod2 Is Not NULL
  18862.         If @KFPod2 = 'D'
  18863.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  18864.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  18865.         Else
  18866.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  18867.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  18868.     If @Pod3 Is Not NULL
  18869.         If @KFPod3 = 'D'
  18870.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  18871.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  18872.         Else
  18873.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  18874.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  18875.     If @Pod4 Is Not NULL
  18876.         If @KFPod4 = 'D'
  18877.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  18878.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  18879.         Else
  18880.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  18881.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  18882.     If @Pod5 Is Not NULL
  18883.         If @KFPod5 = 'D'
  18884.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  18885.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  18886.         Else
  18887.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  18888.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  18889.     If @Pod6 Is Not NULL
  18890.         If @KFPod6 = 'D'
  18891.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  18892.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  18893.         Else
  18894.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  18895.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  18896.     If @Pod7 Is Not NULL
  18897.         If @KFPod7 = 'D'
  18898.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  18899.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  18900.         Else
  18901.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  18902.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  18903.     If @Sifra_Tip Is Not Null
  18904.         SET @SSQLUsl = @SSQLUsl +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  18905.     If @Datum_Od Is Not NULL
  18906.         Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  18907.     If @Datum_Do Is Not NULL
  18908.         Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  18909.     If @TipDokProd IS NOT NULL
  18910.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  18911.     If @Sifra_Mest Is Not NULL
  18912.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Mest =''' + Cast(@Sifra_Mest As Varchar(6)) + ''' '
  18913.  
  18914.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  18915.     --------------------------------------------------------- U S L O V    P O    A R T I L K I ----------------------------------------------------------------------------
  18916.     If @Sifra_Art_Od Is Not Null
  18917.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  18918.     If @Sifra_Art_Do Is Not Null
  18919.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  18920.     If @Sifra_Brand Is Not Null
  18921.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  18922.     If @Sifra_ZBrand Is Not Null
  18923.         Set @SSQLUslArt = @SSQLUslArt + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  18924.     If @Sifra_Podg Is Not Null
  18925.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Podg In (' + @Sifra_Podg + ') '
  18926.     If @Sifra_Gr Is Not Null
  18927.         Set @SSQLUslArt = @SSQLUslArt + 'And PG.Sifra_Gr In (' + @Sifra_Gr + ') '
  18928.     If @Lokacija Is Not NULL
  18929.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Lokacija=''' + @Lokacija + ''' '
  18930.     If @Kto Is Not NULL
  18931.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Kto=' + @Kto + ' '
  18932.     If @Drugo1 Is Not NULL
  18933.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  18934.     If @Drugo2 Is Not NULL
  18935.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  18936.     If @Drugo3 Is Not NULL
  18937.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  18938.     If @Drugo4 Is Not NULL
  18939.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  18940.     If @Drugo5 Is Not NULL
  18941.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  18942.     If @Drugo6 Is Not NULL
  18943.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  18944.     If @Drugo7 Is Not NULL
  18945.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  18946.     If @Sifra_Div Is Not NULL
  18947.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  18948.        If @ImeArtDel IS NOT NULL 
  18949.         If IsNumeric(@ImeArtDel)=1
  18950.             Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  18951.         Else
  18952.             Set @SSQLUslArt = @SSQLUslArt + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  18953.  
  18954.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------
  18955.     CREATE  TABLE #TopLista
  18956.     (
  18957.         Sifra_Oe    smallint,
  18958.         Sifra_Art     varchar(20),
  18959.         Kolicina     decimal(18, 4),
  18960.         Vr_Krajna     decimal(18, 4),
  18961.         Zaliha         decimal(18, 4),
  18962.         KolicNab    decimal(18,6),
  18963.         KolicNabVk    decimal(18,6)
  18964.     )
  18965.     ------------------------------------------------------------------ T O P    L I S T A ------------------------------------------------------------------------------------
  18966.     Set @SSQL = 'Select S.Sifra_Oe, S.Sifra_Art, 
  18967.             Round(Sum(S.Kolic), 4) As Kolicina,
  18968.             Round(Sum(S.Kolic*S.DokCena*(1-S.Uces/100)*(1-D.Kasa/100) * (Case When S.DanDokCena=''N'' Then (1+S.Posn/100) Else 1 End)), 4) As Vr_Krajna,
  18969.             0 as Zaliha, 0 as KolicNab, 0 as KolicNabVk
  18970.         From Stavr S 
  18971.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  18972.         Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 '
  18973.     If @Sifra_OE Is Not NULL
  18974.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  18975.     If @KoiOE Is Not NULL
  18976.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  18977.     If @Sifra_Gr Is Not Null
  18978.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  18979.     If @Sifra_ZBrand Is Not Null
  18980.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  18981.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  18982.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null) Or (@Sifra_Pat Is Not Null)
  18983.         Or (@Sifra_Nivo Is Not Null) Or @Pod6 IS NOT NULL  OR @Pod7 IS NOT NULL 
  18984.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  18985.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  18986.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  18987.  
  18988.     If @Sifra_OeDok Is Not Null Or @Sifra_DokDok Is Not Null Or @Broj_DokDok Is Not Null
  18989.     Begin
  18990.         Set @SSQLDok = @SSQLDok + ' And K.Sifra_Art In (Select Sifra_Art From Stavr Where 1=1 '
  18991.             If @Sifra_OeDok Is Not Null 
  18992.                 Set @SSQLDok = @SSQLDok + ' And Sifra_Oe = ' + Cast(@Sifra_OeDok as varchar(6)) + ' '
  18993.             If @Sifra_DokDok Is Not Null 
  18994.                 Set @SSQLDok = @SSQLDok + ' And Sifra_Dok = ' + Cast(@Sifra_DokDok as varchar(6)) + ' '
  18995.             If @Broj_DokDok Is Not Null 
  18996.                 Set @SSQLDok = @SSQLDok + ' And Broj_Dok = ' + Cast(@Broj_DokDok as varchar(6)) + ' '
  18997.             Set @SSQLDok = @SSQLDok + ' )'
  18998.     End
  18999.     If @Sifra_OeNar Is Not Null Or @Sifra_NarNar Is Not Null Or @Broj_NarNAr Is Not Null
  19000.     Begin
  19001.         Set @SSQLDok = @SSQLDok + ' And K.Sifra_Art In (Select Sifra_Art From StaNarac Where 1=1 '
  19002.             If @Sifra_OeNar Is Not Null 
  19003.                 Set @SSQLDok = @SSQLDok + ' And Sifra_Oe = ' + Cast(@Sifra_OeNar as varchar(6)) + ' '
  19004.             If @Sifra_NarNar Is Not Null 
  19005.                 Set @SSQLDok = @SSQLDok + ' And Sifra_Nar = ' + Cast(@Sifra_NarNar as varchar(6)) + ' '
  19006.             If @Broj_NarNar Is Not Null 
  19007.                 Set @SSQLDok = @SSQLDok + ' And Broj_Nar = ' + Cast(@Broj_NarNar as varchar(6)) + ' '
  19008.             Set @SSQLDok = @SSQLDok + ' )'
  19009.     End
  19010.  
  19011.     Insert #TopLista Exec(@SSQL + @SSQLDok + @SSQLUsl + @SSQLUslArt + 'Group By S.Sifra_Oe, S.Sifra_Art ')
  19012.  
  19013. /*    ---------------------------------------------------------- A S O R T I M A N ---------------------------------------------------------------------
  19014.     If @Asortiman In ('D', 'Z')
  19015.     Begin     
  19016.         Set @SSQL = ' Select K.Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, K.Sifra_Podg 
  19017.                 From Katart K '
  19018.         If @Asortiman ='Z'
  19019.         Begin
  19020.             Set @SSQL = @SSQL + ' Inner Join Soart S On S.Sifra_Art=K.Sifra_Art '
  19021.             If @Sifra_OE Is Not NULL
  19022.                      Set @SSQL = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  19023.             If @KoiOE Is Not NULL
  19024.                      Set @SSQL = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  19025.         End
  19026.         If @Sifra_Gr Is Not Null
  19027.             Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  19028.         If @Sifra_ZBrand Is Not Null
  19029.             Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  19030.         Set @SSQL = @SSQL + ' Where K.Sifra_Art Not In (Select Distinct Sifra_Art from #TopLista) 
  19031.                     And K.Iskluci <> ''D'' '
  19032.         If @Asortiman ='Z'
  19033.             Set @SSQL = @SSQL + ' Group By K.Sifra_Art, K.Sifra_Podg
  19034.                           Having Sum(S.Vlez-S.Izlez) <> 0 '
  19035.         Insert Into #TopLista Exec(@SSQL + @SSQLUslArt)
  19036.     End
  19037. */
  19038.     ---------------------------------------------------------------------------- Z A L I H A  --------------------------------------------------------------------------------
  19039.     Set @SSQL = 'Select S.Sifra_Oe, S.Sifra_Art, 0 as Kolicina, 0 as Vr_Krajna, 
  19040.             Sum(Case S.VlIzl When ''V'' Then S.Kolic When ''I'' Then -S.Kolic End) Zaliha, 0 as KolicNab, 0 as KolicNabVk
  19041.             From Stavr S
  19042.             Inner Join Katart K On S.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' '
  19043.     If @Sifra_Gr Is Not Null
  19044.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  19045.     If @Sifra_ZBrand Is Not Null
  19046.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  19047.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  19048.     If @Datum_Do Is Not Null
  19049.         Set @SSQL = @SSQL + ' And Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  19050.     If @Sifra_OE Is Not NULL
  19051.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  19052.     If @KoiOE Is Not NULL
  19053.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  19054.     
  19055.     Insert #TopLista Exec(@SSQL + @SSQLDok + @SSQLUslArt + 'Group By S.Sifra_Oe, S.Sifra_Art ')
  19056.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  19057.  
  19058.     -------------------------------------------------------------------- ZALIHA  OD  DRUGA  OE -----------------------------------------------------------------
  19059.     Create Table #ZalihaMag
  19060.     (
  19061.         Sifra_Art    varchar(20),
  19062.         ZalihaMag    decimal(18,6)
  19063.     )
  19064.  
  19065.     If @ZalihaOdOE Is Not Null
  19066.     Begin
  19067.         Set @SSQL = 'Select S.Sifra_Art, Sum(Case S.VlIzl When ''V'' Then S.Kolic When ''I'' Then -S.Kolic End) as ZalihaMag
  19068.                 From Stavr S
  19069.                 Inner Join Katart K On S.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' '
  19070.         If @Sifra_Gr Is Not Null
  19071.             Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  19072.         If @Sifra_ZBrand Is Not Null
  19073.             Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  19074.         Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' And S.Sifra_OE IN (' + @ZalihaOdOE + ') '
  19075.         If @Datum_Do Is Not Null
  19076.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  19077.     
  19078.         Insert #ZalihaMag Exec(@SSQL + @SSQLDok + @SSQLUslArt + 'Group By S.Sifra_Art ')
  19079.     End
  19080.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  19081.  
  19082.     ----------------------------------------------- P R E S M E T A J    N A B A V K I    V O    P  E R I O D ------------------------------------------------
  19083.     Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Art, 0 as Kolicina, 0 as Vr_Krajna, 0 as  Zaliha, Sum(S.Kolic) KolicNab, 0 as KolicNabVk
  19084.             From Dokr D
  19085.             Inner Join Stavr S On S.DokrID=D.DokrID
  19086.             Where D.VlIzl=''V'' And S.Sifra_Art In (Select Sifra_Art From #TopLista) '
  19087.     If @Sifra_OE Is Not NULL
  19088.              Set @SSQL = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  19089.     If @KoiOE Is Not NULL
  19090.              Set @SSQL = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  19091.     If @Datum_Od Is Not NULL
  19092.         Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  19093.     If @Datum_Do Is Not NULL
  19094.         Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  19095.  
  19096.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Art '
  19097.  
  19098.     Insert Into #TopLista Exec(@SSQL)
  19099.  
  19100.     ----------------------------------------------- P R E S M E T A J    N A B A V K I    V K U P N O ------------------------------------------------
  19101.     If @Datum_Od Is Not Null
  19102.     Begin
  19103.         Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Art, 0 as Kolicina, 0 as Vr_Krajna, 0 as  Zaliha, 0 as KolicNab, Sum(S.Kolic) KolicNab
  19104.                 From Dokr D
  19105.                 Inner Join Stavr S On S.DokrID=D.DokrID
  19106.                 Where D.VlIzl=''V'' And S.Sifra_Art In (Select Sifra_Art From #TopLista) '
  19107.         If @Sifra_OE Is Not NULL
  19108.                  Set @SSQL = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  19109.         If @KoiOE Is Not NULL
  19110.                  Set @SSQL = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  19111.         If @Datum_Do Is Not NULL
  19112.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  19113.  
  19114.         Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Art '
  19115.  
  19116.         Insert Into #TopLista Exec(@SSQL)
  19117.     End
  19118.     Else
  19119.     Begin
  19120.         Insert Into #TopLista 
  19121.         Select Sifra_Oe, Sifra_Art, 0 as Kolicina, 0 as Vr_Krajna, 0 as Zaliha, 0 as KolicNab, KolicNab as KolivNabVk
  19122.         From #TopLista
  19123.         Where KolicNab <> 0
  19124.     End
  19125.  
  19126.     ------------------------------------------------------------ R E Z U L T A T ------------------------------------------------------------------------
  19127.     If @PoOrgEd = 'D'
  19128.         Set @SSQL = ' Select T.Sifra_Oe, '
  19129.     Else 
  19130.         Set @SSQL = ' Select Null as Sifra_Oe, '
  19131.     Set @SSQL = @SSQL + ' T.Sifra_Art, K.ImeArt, K.EdMera, K.ImaKomerc, K.Tezina, Sum(T.Kolicina) Kolic, Sum(T.Vr_Krajna) Vr_Krajna,
  19132.                 Sum(T.Zaliha) Zaliha, Sum(KolicNab) KolicNab, Sum(KolicNabVk) KolicNabVk, (Case When ZM.ZalihaMag <> 0 Then ZM.ZalihaMag Else 0 End) ZalihaMag
  19133.             From #TopLista T
  19134.             Inner Join Katart K On T.Sifra_Art=K.Sifra_Art 
  19135.             Left Outer Join #ZalihaMag ZM On ZM.Sifra_Art = T.Sifra_Art '
  19136.     Set @SSQL = @SSQL +' Group By T.Sifra_Art, K.ImeArt, K.EdMera, K.ImaKomerc, K.Tezina, ZM.ZalihaMag '
  19137.     If @PoOrgEd = 'D'
  19138.         Set @SSQL = @SSQL +', T.Sifra_Oe '
  19139.     If @Podred = 'S'
  19140.         Set @SSQL = @SSQL + 'Order By T.Sifra_Art '
  19141.     Else If @Podred = 'A'
  19142.         Set @SSQL = @SSQL + 'Order By K.ImeArt '
  19143.     Else If @Podred = '2'
  19144.         Set @SSQL = @SSQL + 'Order By Kolicina DESC'
  19145.     Else If @Podred = '3'
  19146.         Set @SSQL = @SSQL + 'Order By Vr_Krajna DESC'
  19147.  
  19148.     Exec (@SSQL)
  19149.  
  19150.  
  19151. Go
  19152. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_art_vopopis]'))
  19153. drop procedure [dbo].[sp_art_vopopis]
  19154.  
  19155. Go
  19156.  
  19157.  
  19158. CREATE    PROCEDURE sp_Art_VoPopis
  19159.     @Sifra_OE smallint,
  19160.     @Datum smalldatetime,
  19161.     @Sifra_Art Varchar(20)
  19162. AS
  19163. IF @Sifra_OE IS NOT NULL
  19164.     SELECT L.*, A.ImeArt, A.EdMera, @Sifra_OE AS Sifra_OE
  19165.     FROM LPopis L 
  19166.     INNER JOIN KatArt A ON L.Sifra_Art = A.Sifra_Art
  19167.     WHERE L.IDPopis IN (SELECT IDPopis FROM Popis 
  19168.     WHERE Sifra_OE = @Sifra_OE AND Datum = @Datum) 
  19169.     AND L.Sifra_Art = @Sifra_Art
  19170. ELSE
  19171.     SELECT L.*, A.ImeArt, A.EdMera, P.Sifra_OE 
  19172.     FROM LPopis L 
  19173.     INNER JOIN KatArt A ON L.Sifra_Art = A.Sifra_Art
  19174.     INNER JOIN Popis P ON L.IDPopis=P.IDPopis 
  19175.     WHERE P.Datum = @Datum AND L.Sifra_Art = @Sifra_Art
  19176.  
  19177.  
  19178.  
  19179.  
  19180. Go
  19181. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_artevopercenovnik]'))
  19182. drop procedure [dbo].[sp_artevopercenovnik]
  19183.  
  19184. Go
  19185. CREATE PROCEDURE sp_ArtEVoPerCenovnik
  19186.     @Sifra_Art    varchar(20),
  19187.     @GoIma        char(1)='' OUTPUT
  19188. AS
  19189. Declare @ii smallint
  19190.  
  19191. SELECT @ii=count(*) FROM PerCenCeni P 
  19192. INNER JOIN TipPerCenovnik T ON T.Sifra_TipC = P.Sifra_TipC
  19193. INNER JOIN TipPerCenVaziZa V ON V.Sifra_TipC = T.Sifra_TipC
  19194. WHERE (T.TipCen IS NULL OR T.TipCen=1) AND P.Datum_Od <= GetDate() AND P.Datum_Do >= GetDate() AND P.Sifra_Art=@Sifra_Art
  19195. IF @ii>0 
  19196. Begin
  19197.     SET @GoIma='D'
  19198.     RETURN 
  19199. End 
  19200.  
  19201. SELECT @ii=count(*) FROM PerCenCeniRedov P 
  19202. INNER JOIN TipPerCenovnik T ON T.Sifra_TipC = P.Sifra_TipC
  19203. INNER JOIN TipPerCenVaziZa V ON V.Sifra_TipC = T.Sifra_TipC
  19204. WHERE T.TipCen=2  AND P.Datum_Od >= dateadd(day,-1,GetDate()) AND P.Sifra_Art=@Sifra_Art AND (P.Resen IS NULL OR P.Resen<>'D')
  19205. IF @ii>0 
  19206.     SET @GoIma='D'
  19207.  
  19208.  
  19209. Go
  19210. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_artgotovvkporabnal]'))
  19211. drop procedure [dbo].[sp_artgotovvkporabnal]
  19212.  
  19213. Go
  19214. CREATE PROCEDURE sp_ArtGotovVkPoRabNal
  19215.     @Sifra_OERab    smallint,
  19216.     @Broj_RabN        int
  19217. AS
  19218. SELECT S.Sifra_Art, A.ImeArt, A.EdMera, A.Sifra_Tar, T.ProcOsn, SUM(S.Kolic) Kolic, AVG(dbo.fn_VratiCena(S.MagCena, S.POsn, S.DanMagCena, 'N')) MagCena
  19219. FROM Stavr S INNER JOIN DokRabNal DRN ON S.DokrID=DRN.DokrID AND DRN.Tip_RabStav='P'
  19220. INNER JOIN RabNal RN ON DRN.RabNalID = RN.RabNalID
  19221. INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  19222. INNER JOIN Tarifi T ON T.Sifra_Tar=A.Sifra_Tar
  19223. WHERE RN.Sifra_OERab = @Sifra_OERab AND Broj_RabN=@Broj_RabN
  19224. GROUP BY S.Sifra_Art, A.ImeArt, A.EdMera, A.Sifra_Tar, T.ProcOsn
  19225.  
  19226.  
  19227.  
  19228.  
  19229. Go
  19230. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_artiklizaplu]'))
  19231. drop procedure [dbo].[sp_artiklizaplu]
  19232.  
  19233. Go
  19234. CREATE PROCEDURE sp_ArtikliZaPLU
  19235.     @Sifra_OE    smallint
  19236. AS
  19237. SELECT A.Lokacija, A.Sifra_Art, A.ImeArt, S.Cena FROM KatArt A INNER JOIN Soart S ON A.Sifra_Art=S.Sifra_Art AND S.Sifra_OE=@Sifra_OE
  19238. WHERE A.Lokacija IS NOT NULL AND A.Lokacija<>' '
  19239.  
  19240.  
  19241. Go
  19242. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_artkod]'))
  19243. drop procedure [dbo].[sp_artkod]
  19244.  
  19245. Go
  19246.  
  19247. CREATE  PROCEDURE sp_ArtKod
  19248.     @Nom As Varchar(50)
  19249. As
  19250.     Select K.Sifra_Art, K.ImeArt, K.Cena, K.Sostojba, K.ImaKomerc From Katart K
  19251.     Where K.Nom=@Nom
  19252.     Union
  19253.     Select B.Sifra_Art, K.ImeArt, K.Cena, K.Sostojba, K.ImaKomerc From ABarKod B
  19254.     Inner Join Katart K On B.Sifra_Art=K.Sifra_Art
  19255.     Where B.Nom=@Nom
  19256. Return @@Error
  19257.  
  19258.  
  19259.  
  19260.  
  19261. Go
  19262. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_artkod_detali]'))
  19263. drop procedure [dbo].[sp_artkod_detali]
  19264.  
  19265. Go
  19266.  
  19267.  
  19268.  
  19269.  
  19270.  
  19271.  
  19272.  
  19273. CREATE         PROCEDURE sp_ArtKod_Detali
  19274.     @Sifra_Oe    smallint,
  19275.     @Nom         varchar(50) = NULL,            --ili nom ili sifra_art treba da se prati
  19276.     @Sifra_Art    varchar(20) = NULL,
  19277.     @Sifra_Dob    char(6) = NULL,                --Sifra na dobavuvac ako ima
  19278.     @DanCenaKatDob    char(1) = 'N',            --default kakva e cenata vo KatArtDob
  19279.     @DanCenaNabCKatArt char(1) = 'D',        --Default kakva e nabcena vo KatArt
  19280.     @VratiDokCena    char(1) = 'N',            --Vrati DokCena SoDanok(D)/BezDanok (N)
  19281.     @VratiMagCena    char(1) = 'D',            --Vrati MagCena SoDanok(D)/BezDanok (N)
  19282.     @ProvDozvArt    CHAR(1) = 'N',
  19283.     @ProvOptZal    CHAR(1) = 'N',
  19284.     @ZalOdDrugaOE     smallint=null
  19285. As
  19286. /*    Select K.Sifra_Art, K.ImeArt, K.Cena, K.Sostojba, K.Uces, K.Nabavna, S.Cena as DokCena, K.ImaKomerc, T.ProcOsn, K.Sifra_Tar, K.EdMera
  19287.     From Katart K
  19288.     inner join Tarifi T on K.Sifra_Tar = T.Sifra_Tar
  19289.     left outer join SoArt S on K.Sifra_Art = S.Sifra_art and S.Sifra_Oe = @Sifra_Oe
  19290.     Where K.Nom=@Nom
  19291.     Union
  19292.     Select B.Sifra_Art, K.ImeArt, K.Cena, K.Sostojba, K.Uces, K.Nabavna, S.Cena as DokCena, K.ImaKomerc, T.ProcOsn, K.Sifra_Tar, K.EdMera
  19293.     From ABarKod B
  19294.     Inner Join Katart K On B.Sifra_Art=K.Sifra_Art
  19295.     inner join Tarifi T on K.Sifra_Tar = T.Sifra_Tar
  19296.     left outer join SoArt S on K.Sifra_Art = S.Sifra_art and S.Sifra_Oe = @Sifra_Oe
  19297.     Where B.Nom=@Nom
  19298. */
  19299. CREATE TABLE #TmpArt
  19300. (Sifra_Art    varchar(20))
  19301. IF @Sifra_Art IS NOT NULL
  19302.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Sifra_Art=@Sifra_Art  --za da vidime dali go ima
  19303. ELSE
  19304.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Nom=@Nom UNION SELECT Sifra_Art FROM ABarKod WHERE Nom=@Nom
  19305. DECLARE @NajdenaSifArt varchar(20)
  19306. DECLARE @ZalihaOdOe as Decimal(18,4)
  19307. SELECT TOP 1 @NajdenaSifArt=Sifra_Art FROM #TmpArt --ORDER BY ??? da stavime ??
  19308. IF @NajdenaSifArt IS NULL    RETURN
  19309. Declare @DokCena decimal(18,6), @MagCena decimal(18,6), @Rabat decimal(6,2), @ProcOsn decimal(6,2)
  19310. Declare @DanMagCena char(1), @DanDokCena char(1), @NajdeDokCena char(1), @DozvArt char(1), @OptZal Decimal(18,9)
  19311. SET @NajdeDokCena='N'
  19312. SET @DozvArt = ''
  19313. SELECT @ProcOsn = T.ProcOsn FROM KatArt A INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar WHERE A.Sifra_Art=@NajdenaSifArt
  19314.  
  19315. Declare @NabCenaOdSoart char(1)
  19316. SELECT @NabCenaOdSoart = NabCenaOdSoart FROM OrgEd WHERE Sifra_OE=@Sifra_OE
  19317.  
  19318. IF @NabCenaOdSoart IS NULL SET @NabCenaOdSoart=''        --23.07.10
  19319. IF @NabCenaOdSoart in ('D','F')
  19320. Begin
  19321.     IF @NabCenaOdSoart='D'
  19322.         SELECT @DanMagCena = DanCena, @MagCena = Cena, @DanDokCena='N', @DokCena=NabCena, @Rabat=0  FROM Soart WHERE Sifra_Art=@NajdenaSifArt AND Sifra_OE=@Sifra_OE
  19323.     ELSE
  19324.         SELECT @DanMagCena = DanCena, @MagCena = Cena, @DanDokCena='D', @DokCena=DokCena, @Rabat=Uces  FROM Soart WHERE Sifra_Art=@NajdenaSifArt AND Sifra_OE=@Sifra_OE
  19325.     IF @DokCena>0 SET @NajdeDokCena='D'
  19326. End
  19327. ELSE
  19328.     SELECT @DanMagCena = DanCena, @MagCena = Cena  FROM Soart WHERE Sifra_Art=@NajdenaSifArt AND Sifra_OE=@Sifra_OE
  19329.  
  19330. IF @ZalOdDrugaOe IS NOT Null or @ZalOdDrugaOe<>0
  19331. SELECT @ZalihaOdOe=vlez-izlez FROM Soart WHERE Sifra_Art=@NajdenaSifArt AND Sifra_OE=@ZalOdDrugaOE
  19332.  
  19333. IF @DanMagCena='D' AND @VratiMagCena='N'
  19334.     SET @MagCena = Round(@MagCena /(1+@ProcOsn/100),3)
  19335. ELSE IF @DanMagCena='N' AND @VratiMagCena='D'
  19336.     SET @MagCena = Round(@MagCena *(1+@ProcOsn/100),3)
  19337. IF @Sifra_Dob IS NOT NULL
  19338. BEGIN
  19339.     SELECT TOP 1 @DokCena=CenaFakt, @Rabat=RabatFakt, @DanDokCena=@DanCenaKatDob FROM KatArtDob 
  19340.     WHERE Sifra_Art=@NajdenaSifArt AND Sifra_Kup=@Sifra_Dob AND CenaFakt>0 ORDER BY Redosled
  19341.     IF @@RowCount = 1 SET @NajdeDokCena='D'
  19342. END
  19343. IF @NajdeDokCena='N'
  19344. Begin
  19345.     SELECT TOP 1 @DokCena=CenaFakt, @Rabat=RabatFakt, @DanDokCena=@DanCenaKatDob FROM KatArtDob 
  19346.     WHERE Sifra_Art=@NajdenaSifArt AND CenaFakt>0 ORDER BY Redosled
  19347.     IF @@RowCount = 1 SET @NajdeDokCena='D'
  19348. End
  19349. IF @NajdeDokCena='N'
  19350. Begin
  19351.     SELECT @DokCena=Nabavna, @Rabat=Uces, @DanDokCena=@DanCenaNabCKatArt FROM KatArt WHERE Sifra_Art=@NajdenaSifArt 
  19352.     IF @@RowCount = 1 SET @NajdeDokCena='D'
  19353. End
  19354. IF @DanDokCena='D' AND @VratiDokCena='N'
  19355.     SET @DokCena = Round(@DokCena /(1+@ProcOsn/100),3)
  19356. ELSE IF @DanDokCena='N' AND @VratiDokCena='D'
  19357.     SET @DokCena = Round(@DokCena *(1+@ProcOsn/100),3)
  19358. IF @ProvDozvArt='D'
  19359. Begin
  19360.     SELECT @DozvArt=Dozvoleno FROM OptZalPoOE WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@NajdenaSifArt
  19361. End
  19362. IF @ProvOptZal='D'
  19363. Begin
  19364.     SELECT @OptZal=OptZal FROM OptZalPoOE WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@NajdenaSifArt
  19365. End
  19366.  
  19367. SELECT @NajdenaSifArt Sifra_Art, ImeArt, @MagCena DokCena, Sostojba, @Rabat Uces, @DokCena Nabavna,  
  19368. ImaKomerc, @ProcOsn ProcOsn, Sifra_Tar, EdMera, @DozvArt DozvArt, Kto Sifra_Dob,
  19369. Nom BarKodOdBaza,@ZalihaOdOe ZalihaOdOe, @OptZal OptZal
  19370. FROM KatArt 
  19371. WHERE Sifra_Art=@NajdenaSifArt
  19372.  
  19373. Return @@Error
  19374.  
  19375.  
  19376.  
  19377.  
  19378.  
  19379.  
  19380.  
  19381.  
  19382.  
  19383. Go
  19384. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_artkod_detali_posif]'))
  19385. drop procedure [dbo].[sp_artkod_detali_posif]
  19386.  
  19387. Go
  19388.  
  19389.  
  19390.  
  19391. CREATE   PROCEDURE sp_ArtKod_Detali_PoSif
  19392.     @SifrA_Oe as smallint,
  19393.     @Sifra_Art As Varchar(20)
  19394.  
  19395. As
  19396.  
  19397.     Select K.Sifra_Art, K.ImeArt, K.Cena, K.Sostojba, K.Uces, K.Nabavna, S.Cena as DokCena, K.ImaKomerc, T.ProcOsn, K.Sifra_Tar, K.EdMera
  19398.     From Katart K
  19399.     inner join Tarifi T on K.Sifra_Tar = T.Sifra_Tar
  19400.     left outer join SoArt S on K.Sifra_Art = S.Sifra_art and S.Sifra_Oe = @Sifra_Oe
  19401.     Where K.Sifra_Art = @Sifra_Art
  19402.  
  19403.     Return @@Error
  19404.  
  19405.  
  19406.  
  19407.  
  19408.  
  19409. Go
  19410. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_artodnepratenidok]'))
  19411. drop procedure [dbo].[sp_artodnepratenidok]
  19412.  
  19413. Go
  19414.  
  19415. CREATE     PROCEDURE  sp_ArtOdNePrateniDok
  19416.     @Sifra_OE smallint,
  19417.     @Datum     smalldatetime
  19418.  AS
  19419.     CREATE TABLE #TmpArt
  19420.     (Sifra_Art  Varchar(20)
  19421.     )
  19422.     INSERT INTO #TmpArt
  19423.     SELECT DISTINCT S.Sifra_Art
  19424.     FROM Stavr S
  19425.     Inner Join Dokr D On S.DokrID=D.DokrID
  19426.     Where (D.Prenesen IS NULL OR D.Prenesen <> 'D')
  19427.         And(D.Sifra_OE=@Sifra_OE OR D.Sifra_Prim = @Sifra_OE)
  19428.         And (D.ImaDodatna IS NULL OR D.ImaDodatna <> 'P')
  19429.     INSERT INTO #TmpArt    
  19430.     SELECT Sifra_Art  FROM KatArt 
  19431.     WHERE DodadenNa >= @Datum  or IzmenetNa >= @Datum    
  19432.     SELECT DISTINCT Sifra_Art  FROM  #TmpArt
  19433.  
  19434.  
  19435.  
  19436.  
  19437. Go
  19438. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_asortprod]'))
  19439. drop procedure [dbo].[sp_asortprod]
  19440.  
  19441. Go
  19442.  
  19443.  
  19444.  
  19445.  
  19446. CREATE      PROCEDURE sp_AsortProd
  19447.     @Sifra_OE    Smallint,
  19448.     @KolkuDena    smallint = 21
  19449. AS
  19450. IF @Sifra_OE IS NOT NULL
  19451.     SELECT D.Sifra_Kup, (Case WHEN D.Sifra_Obj = 0 Then NULL Else D.Sifra_Obj End) as Sifra_Obj, S.Sifra_Art, SUM(S.Kolic) Kolic
  19452.     FROM Stavr S INNER JOIN Dokr D ON S.DokrId = D.DokrID
  19453.     WHERE S.Sifra_OE = @Sifra_OE AND S.Datum_Dok >= DateAdd (day, @KolkuDena * -1, GetDate()) AND S.VlIzl = 'I' AND D.Sifra_Za=1
  19454.     GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art ORDER BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  19455. ELSE
  19456.     SELECT D.Sifra_Kup, (Case WHEN D.Sifra_Obj = 0 Then NULL Else D.Sifra_Obj End) as Sifra_Obj, S.Sifra_Art, SUM(S.Kolic) Kolic
  19457.     FROM Stavr S INNER JOIN Dokr D ON S.DokrId = D.DokrID
  19458.     INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  19459.     WHERE S.Datum_Dok >= DateAdd (day, @KolkuDena * -1, GetDate()) AND S.VlIzl = 'I' AND D.Sifra_Za=1 AND TD.AnalKupDob='D'
  19460.     GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art ORDER BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  19461.  
  19462.  
  19463.  
  19464.  
  19465. Go
  19466. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_asortprod5]'))
  19467. drop procedure [dbo].[sp_asortprod5]
  19468.  
  19469. Go
  19470.  
  19471.  
  19472.  
  19473.  
  19474.  
  19475. CREATE      PROCEDURE sp_AsortProd5
  19476.     @Sifra_OE smallint,
  19477.     @KolkuDena smallint=90
  19478. AS 
  19479. /*    Select D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, ROUND(Sum(S.Kolic)/Count(S.DokID),2) AS Kolic
  19480.     From Dokr D
  19481.     Inner Join Stavr S On S.DokrID = D.DokrID
  19482.     Where S.Sifra_OE = @Sifra_OE AND S.Datum_Dok >= DateAdd (day, @KolkuDena * -1, GetDate()) 
  19483.     AND S.VlIzl = 'I' AND D.Sifra_Za=1 AND S.Kolic>0
  19484.     GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art 
  19485.     ORDER BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art */  --do 16.05.11 vaka bese, posle pobaraa izmena: od posl.prodazba
  19486.  
  19487. CREATE TABLE #TmpProd
  19488. (Sifra_Kup    char(6),
  19489. Sifra_Obj    smallint,
  19490. DokrID        int)
  19491.  
  19492. INSERT INTO #TmpProd SELECT D.Sifra_Kup, D.Sifra_Obj, MAX(D.DokrID) FROM Dokr D INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok 
  19493. WHERE D.Sifra_Oe=@Sifra_OE AND D.VlIzl='I' AND D.Sifra_Za=1 AND TD.Plus_Minus='+' AND D.Toc200>0 GROUP BY D.Sifra_Kup, D.Sifra_Obj
  19494.  
  19495. Select D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, S.Kolic FROM #TmpProd D INNER JOIN Stavr S ON D.DokrID=S.DokrID
  19496. WHERE S.Kolic<>0 ORDER BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  19497.  
  19498.  
  19499.  
  19500.  
  19501.  
  19502.  
  19503. Go
  19504. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_asortprodtekmes]'))
  19505. drop procedure [dbo].[sp_asortprodtekmes]
  19506.  
  19507. Go
  19508.  
  19509.  
  19510.  
  19511.  
  19512.  
  19513.  
  19514. CREATE    PROCEDURE sp_AsortProdTekMes
  19515.     @Sifra_OE    Smallint,
  19516.     @Mesec smallint,
  19517.     @Godina smallint
  19518. AS
  19519. IF @Sifra_OE IS NOT NULL
  19520.     SELECT D.Sifra_Kup, (Case WHEN D.Sifra_Obj = 0 Then NULL Else D.Sifra_Obj End) as Sifra_Obj, S.Sifra_Art, SUM(S.Kolic) Kolic
  19521.     FROM Stavr S INNER JOIN Dokr D ON S.DokrId = D.DokrID
  19522.     INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  19523.     WHERE D.Sifra_Pat = @Sifra_OE AND Month(S.Datum_Dok) = @Mesec AND Year(S.Datum_Dok) = @Godina AND S.VlIzl = 'I' AND D.Sifra_Za=1 AND TD.AnalKupDob='D'
  19524.     GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art ORDER BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  19525. ELSE
  19526.     SELECT D.Sifra_Kup, (Case WHEN D.Sifra_Obj = 0 Then NULL Else D.Sifra_Obj End) as Sifra_Obj, S.Sifra_Art, SUM(S.Kolic) Kolic
  19527.     FROM Stavr S INNER JOIN Dokr D ON S.DokrId = D.DokrID
  19528.     INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  19529.     WHERE Month(S.Datum_Dok) = @Mesec AND Year(S.Datum_Dok) = @Godina AND S.VlIzl = 'I' AND D.Sifra_Za=1 AND TD.AnalKupDob='D'
  19530.     GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art ORDER BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  19531.  
  19532.  
  19533.  
  19534.  
  19535.  
  19536.  
  19537.  
  19538.  
  19539.  
  19540. Go
  19541. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_avtkontprimzagrdok]'))
  19542. drop procedure [dbo].[sp_avtkontprimzagrdok]
  19543.  
  19544. Go
  19545.  
  19546. CREATE  PROCEDURE sp_AvtKontPrimZaGrDok
  19547.     @Sif_GrDok    char(3)
  19548. AS
  19549.     SELECT DISTINCT Sif_GrOrg_Prima FROM AvtKont WHERE Sif_GrDok = @Sif_GrDok
  19550.  
  19551.  
  19552.  
  19553.  
  19554. Go
  19555. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_avtkontzagrdok]'))
  19556. drop procedure [dbo].[sp_avtkontzagrdok]
  19557.  
  19558. Go
  19559. CREATE  PROCEDURE sp_AvtKontZaGrDok
  19560.     @Sif_GrDok    char(3),
  19561.     @Sifra_OE    smallint = null,
  19562.     @Sif_GrOrg    char(6) = null
  19563. AS
  19564. Declare @SSQL varchar(2000)
  19565. SET @SSQL = 'SELECT DISTINCT Sif_GrOrg FROM AvtKont WHERE Sif_GrDok = ''' + @Sif_GrDok + ''' '
  19566. IF @Sifra_OE IS NOT NULL
  19567.     SET @SSQL = @SSQL + ' AND Sif_GrOrg IN (SELECT DISTINCT Sif_GrOrg FROM SGrOrg WHERE Sifra_OE=' + cast(@Sifra_OE as varchar(6)) + ') '
  19568. IF @Sif_GrOrg IS NOT NULL
  19569.     SET @SSQL = @SSQL + ' AND Sif_GrOrg =''' + @Sif_GrOrg + ''' '
  19570. EXEC (@SSQL)
  19571.  
  19572.  
  19573.  
  19574. Go
  19575. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_avtokatartpregled]'))
  19576. drop procedure [dbo].[sp_avtokatartpregled]
  19577.  
  19578. Go
  19579.  
  19580.  
  19581. CREATE   PROCEDURE sp_AvtoKatartPregled 
  19582.     @Sif_Art_Od    Varchar(40)=NULL,
  19583.     @Sif_Art_Do    Varchar(40)=NULL,
  19584.     @Podred    Varchar(10),
  19585.     @Sifra_Podg    Varchar(12)=NULL,
  19586.     @Sifra_Gr    Varchar(6)=NULL,
  19587.     @Sifra_Tar    Char(3)=NULL,
  19588.     @Kto        Varchar(6)=NULL,
  19589.     @Sifra_Drg    Smallint = NULL,
  19590.     @Lokacija    varchar(10) = NULL,
  19591.     @Sifra_ZBrand    smallint  = NULL,
  19592.     @Sifra_KHier    varchar(20) = Null,
  19593.         @VoPDA          char(1) = null 
  19594. AS
  19595.  
  19596.     Declare @SSQL VARCHAR(4000)
  19597.     Set @Podred = Upper(@Podred)
  19598.     If @Podred Is Null
  19599.         Set @Podred = 'SIFRA'
  19600.  
  19601.     SET @SSQL =  'Select K.Sifra_Art, K.Imeart, K.Edmera, K.ImeArt2, K.Sifra_Podg, 
  19602.             P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr, K.Sifra_Drg, B.Ime,
  19603.             K.Kto, KUP.ImeKup, 
  19604.             case when K.Nom is null or K.Nom = '''' then TA.Nom else K.Nom end Nom,
  19605.              K.DogCena
  19606.         From Katart K 
  19607.         Inner Join Podgrupi P On K.Sifra_Podg=P.Sifra_Podg 
  19608.         Inner Join Grupi G On P.Sifra_Gr=G.Sifra_Gr
  19609.         Left Outer Join Komint KUP On K.Kto=KUP.Sifra_Kup    
  19610.         Left Outer Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  19611.         Left Outer Join #TempABar TA
  19612.             on K.Sifra_Art = TA.Sifra_Art '
  19613.  
  19614. --    If @Sifra_ZBrand Is Not Null
  19615. --        Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  19616.  
  19617.     Declare @SSQLUsl varchar(2000)
  19618.  
  19619.     Set @SSQLUsl =  ' Where 1=1 '
  19620.  
  19621.     If @Podred = 'SIFRA' Or @Podred = 'GRUPA' Or @Podred = 'PODGRUPA' Or @Podred = 'BRAND'
  19622.         Begin
  19623.             If @Sif_Art_Od Is Not Null
  19624.                 Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Art>=''' + Cast(@Sif_Art_Od As Varchar(20)) + ''' '
  19625.             If @Sif_Art_Do Is Not Null
  19626.                 Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Art<=''' + Cast(@Sif_Art_Do As Varchar(20)) + ''' '
  19627.         End
  19628.     Else If @Podred = 'IME'
  19629.         Begin
  19630.             If @Sif_Art_Od Is Not Null
  19631.                 Set @SSQLUsl = @SSQLUsl + 'And K.ImeArt>=''' + Cast(@Sif_Art_Od As Varchar(40)) + ''' '
  19632.             If @Sif_Art_Do Is Not Null
  19633.                 Set @SSQLUsl = @SSQLUsl + 'And K.ImeArt<=''' + Cast(@Sif_Art_Do As Varchar(40)) + ''' '
  19634.         End
  19635.     If @Sifra_Podg Is Not Null
  19636.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Podg=''' + Cast(@Sifra_Podg As Varchar(12)) + ''' '
  19637.     If @Sifra_Gr Is Not Null
  19638.         Set @SSQLUsl = @SSQLUsl + 'And P.Sifra_Gr=''' + Cast(@Sifra_Gr As Varchar(6)) + ''' '
  19639.     If @Sifra_Tar Is Not Null
  19640.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Tar=''' + Cast(@Sifra_Tar As Varchar(6)) + ''' '
  19641.     If @Kto Is Not Null
  19642.         Set @SSQLUsl = @SSQLUsl + 'And K.Kto=''' + Cast(@Kto As Varchar(6)) + ''' '
  19643.     If @Lokacija Is Not Null
  19644.         Set @SSQLUsl = @SSQLUsl + 'And K.Lokacija = ''' + @Lokacija + ''' '
  19645.     If @Sifra_Drg Is Not Null
  19646.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=''' + Cast(@Sifra_Drg As Varchar(6)) + ''' '
  19647.     If @Sifra_ZBrand Is Not Null
  19648.         Set @SSQLUsl = @SSQLUsl + 'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  19649.     If @VoPDA Is Not Null and @VoPDA <> ''
  19650.         Set @SSQLUsl = @SSQLUsl + ' And K.VoPDA = ''' + @VoPDA + ''' '
  19651.         Declare @SSQLPodr varchar(100)
  19652.     set @SSQLPodr = ' '
  19653.  
  19654.     If @Podred = 'SIFRA'
  19655.         Set @SSQLPodr = @SSQLPodr + 'Order By K.Sifra_Art '
  19656.     Else If @Podred = 'IME'
  19657.         Set @SSQLPodr = @SSQLPodr + 'Order By K.ImeArt, K.Sifra_Art'
  19658.     Else If @Podred = 'PODGRUPA'
  19659.         Set @SSQLPodr = @SSQLPodr + 'Order By K.Sifra_Podg'
  19660.     Else If @Podred = 'GRUPA'
  19661.         Set @SSQLPodr = @SSQLPodr + 'Order By P.Sifra_Gr, K.Sifra_Art'
  19662.     Else If @Podred = 'BRAND'
  19663.         Set @SSQLPodr = @SSQLPodr + 'Order By K.Sifra_Drg, K.Sifra_Art'
  19664.  
  19665.  
  19666.     CREATE TABLE #TempABar
  19667.     (    Sifra_Art varchaR(20) Null ,
  19668.         Nom varchar(50) NuLL ,
  19669.         ABarBroj int NUll
  19670.     )
  19671.  
  19672.     insert into #TempABar
  19673.         ( Sifra_Art, ABarBroj )
  19674.         select Sifra_Art, min(ABarBroj)
  19675.         from ABarKod
  19676.         where Nom is not null and Nom <> '' and len(Nom) >= 8 and len(Nom) <= 14
  19677.         Group By Sifra_Art
  19678.  
  19679.     update #TempABar
  19680.     set Nom = A.Nom
  19681.     from ABarKod A
  19682.     where #TempABar.ABarBroj = A.ABarBroj
  19683.  
  19684.     EXEC (@SSQL + @SSQLUsl + @SSQLPodr)
  19685.  
  19686.     RETURN @@ERROR
  19687.  
  19688.  
  19689.  
  19690. Go
  19691. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_azurpecfiscdokr]'))
  19692. drop procedure [dbo].[sp_azurpecfiscdokr]
  19693.  
  19694. Go
  19695.  
  19696. create     PROCEDURE sp_AzurPecFiscDokr
  19697.     @Sifra_OE    smallint,    
  19698.     @Sifra_Dok    smallint,    
  19699.     @Broj_Dok    smallint
  19700. AS
  19701. UPDATE Dokr SET Pec_Fisc=(case When Pec_Fisc Is Not Null Then Pec_Fisc+1 Else 1 End) 
  19702. WHERE Sifra_OE=@Sifra_OE AND Sifra_dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  19703.  
  19704.  
  19705.  
  19706. Go
  19707. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_azurpecfiscdokr_ks]'))
  19708. drop procedure [dbo].[sp_azurpecfiscdokr_ks]
  19709.  
  19710. Go
  19711.  
  19712.  
  19713.  
  19714. create     PROCEDURE sp_AzurPecFiscDokr_KS
  19715.     @Sifra_OE    smallint,    
  19716.     @Sifra_Dok    smallint,    
  19717.     @Broj_Dok    int
  19718. AS
  19719.  
  19720.     UPDATE Dokr 
  19721.     SET Pec_Fisc = case When Pec_Fisc Is Not Null Then Pec_Fisc+1 Else 1 End,
  19722.         DaT_Pec_Fisc = GetDate ()
  19723.     WHERE Sifra_OE=@Sifra_OE AND Sifra_dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  19724.  
  19725.  
  19726.  
  19727.  
  19728.  
  19729.  
  19730. Go
  19731. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_barajdok]'))
  19732. drop procedure [dbo].[sp_barajdok]
  19733.  
  19734. Go
  19735.  
  19736. CREATE    PROCEDURE sp_BarajDok
  19737.     @Mat_Fin    Char(1) = 'F',
  19738.     @ExtBr        Varchar(25) = NULL,
  19739.     @DelExtBr    varchar(25) = NULL, 
  19740.     @Broj_Dok    int = NULL,
  19741.     @Iznos_Od    Decimal(18,6) = NULL,
  19742.     @Iznos_Do    Decimal(18,6) = NULL,
  19743.     @Ispratnica    varchar(25) = NULL
  19744. AS
  19745.     Declare @SSQL Varchar(4000)
  19746.     Set @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, 
  19747.         K.ImeKup, D.Kto, Cast(D.Sifra_Nal as varchar(4)) '
  19748.     If @Mat_Fin = 'M'
  19749.         Set @SSQL = @SSQL + 'as Nalog, D.Identif_Br as ExtBrDok, Case WHEN D.Sifra_Za = ''1'' Then D.Toc200 ELSE 0 END as Dolzi,
  19750.         Case WHEN D.Sifra_Za = ''2'' then D.Toc200 ELSE 0 END as Pobaruva,  0 as Plateno FROM Dokr D '
  19751.     Else    
  19752.         Set @SSQL = @SSQL + '+''/''+Cast(broj_Nal as varchar(8)) as Nalog, D.BrojDok as ExtBrDok, D.Dolzi Dolzi, D.Pobaruva as Pobaruva,
  19753.         D.Plateno_Dolzi + D.Plateno_Pobar Plateno FROM AnFinDok D '
  19754.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Komint K ON D.Sifra_Kup = K.Sifra_Kup WHERE 1=1 '
  19755.     If @Mat_Fin = 'M'
  19756.         BEGIN
  19757.         If @Iznos_Od IS NOT NULL
  19758.               Set @SSQL = @SSQL + ' AND D.Toc200 >= ' + Cast(@Iznos_Od as varchar(30)) 
  19759.         If @Iznos_Do IS NOT NULL
  19760.               Set @SSQL = @SSQL + ' AND D.Toc200 <= ' + Cast(@Iznos_Do as varchar(30)) 
  19761.         If @ExtBr IS NOT NULL
  19762.             Set @SSQL = @SSQL + ' AND D.Identif_Br = ''' + @ExtBr + ''' '
  19763.         If @DelExtBr IS NOT NULL
  19764.             Set @SSQL = @SSQL + ' AND D.Identif_Br like ''%' + @DelExtBr + '%'' '
  19765.         If @Broj_Dok IS NOT NULL  AND @Broj_Dok > 0
  19766.             Set @SSQL = @SSQL + ' AND D.Broj_Dok = ''' + cast(@Broj_Dok as varchar(10)) + ''' '
  19767.         IF @Ispratnica IS NOT NULL
  19768.             Set @SSQL = @SSQL + ' AND D.Ispratnica = ''' + @Ispratnica + ''' '
  19769.         END
  19770.     Else    
  19771.         BEGIN
  19772.         If @Iznos_Od IS NOT NULL
  19773.               Set @SSQL = @SSQL + 'AND D.Dolzi+D.Pobaruva >= ' + Cast(@Iznos_Od as varchar(30)) 
  19774.         If @Iznos_Do IS NOT NULL
  19775.               Set @SSQL = @SSQL + 'AND D.Dolzi+D.Pobaruva <= ' + Cast(@Iznos_Do as varchar(30)) 
  19776.         If @ExtBr IS NOT NULL
  19777.             Set @SSQL = @SSQL + ' AND D.BrojDok = ''' + @ExtBr + ''' '
  19778.         If @DelExtBr IS NOT NULL
  19779.             Set @SSQL = @SSQL + ' AND D.BrojDok like ''%' + @DelExtBr + '%'' '
  19780.         If @Broj_Dok IS NOT NULL  AND @Broj_Dok > 0
  19781.             Set @SSQL = @SSQL + ' AND D.Broj_Dok = ''' + cast(@Broj_Dok as varchar(10)) + ''' '
  19782.         END
  19783. EXEC (@SSQL)
  19784.  
  19785.  
  19786.  
  19787.  
  19788.  
  19789. Go
  19790. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_barajdok_glk]'))
  19791. drop procedure [dbo].[sp_barajdok_glk]
  19792.  
  19793. Go
  19794. CREATE    PROCEDURE sp_BarajDok_Glk
  19795.     @Opis        Varchar(25) = NULL,
  19796.     @DelOpis    varchar(25) = NULL, 
  19797.     @Opis2        Varchar(25) = NULL,
  19798.     @DelOpis2    varchar(25) = NULL, 
  19799.     @Broj_Nal    int = NULL,
  19800.     @Iznos_Od    Decimal(18,6) = NULL,
  19801.     @Iznos_Do    Decimal(18,6) = NULL
  19802. AS
  19803.     Declare @SSQL Varchar(4000)
  19804.     Set @SSQL = 'SELECT G.Sifra_OE, G.Sifra_Nal, G.Broj_Nal, G.Datum_Nal, G.Opis, G.Opis2, 
  19805.                 G.Kto_Anal, G.Dolzi, G.Pobaruva, G.Dev_Dolzi, G.Dev_Pobaruva
  19806.                 From GStav G
  19807.                 Where 1=1 '
  19808.     If @Iznos_Od IS NOT NULL
  19809.          Set @SSQL = @SSQL + ' AND (G.Dolzi >= ' + Cast(@Iznos_Od as varchar(30)) + ' Or G.Pobaruva >= ' + Cast(@Iznos_Od as varchar(30)) + ') '
  19810.     If @Iznos_Do IS NOT NULL
  19811.          Set @SSQL = @SSQL + ' AND (G.Dolzi <= ' + Cast(@Iznos_Do as varchar(30)) + ' Or G.Pobaruva <= ' + Cast(@Iznos_Do as varchar(30)) + ') '
  19812.     If @Opis IS NOT NULL
  19813.         Set @SSQL = @SSQL + ' AND G.Opis = ''' + @Opis + ''' '
  19814.     If @DelOpis IS NOT NULL
  19815.         Set @SSQL = @SSQL + ' AND G.Opis like ''%' + @DelOpis + '%'' '
  19816.     If @Opis2 IS NOT NULL
  19817.         Set @SSQL = @SSQL + ' AND G.Opis2 = ''' + @Opis2 + ''' '
  19818.     If @DelOpis2 IS NOT NULL
  19819.         Set @SSQL = @SSQL + ' AND G.Opis2 like ''%' + @DelOpis2 + '%'' '
  19820.     If @Broj_Nal IS NOT NULL  AND @Broj_Nal > 0
  19821.         Set @SSQL = @SSQL + ' AND G.Broj_Nal = ''' + cast(@Broj_Nal as varchar(10)) + ''' '
  19822.     EXEC (@SSQL)
  19823.  
  19824.  
  19825.  
  19826. Go
  19827. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_bilansuspeh]'))
  19828. drop procedure [dbo].[sp_bilansuspeh]
  19829.  
  19830. Go
  19831.  
  19832.  
  19833.  
  19834.  
  19835.  
  19836.  
  19837.  
  19838.  
  19839.  
  19840.  
  19841. CREATE         PROCEDURE sp_BilansUspeh
  19842.     @Datum_Od    smalldatetime,
  19843.     @Datum_Do    smalldatetime,
  19844.     @Kto_Penz    char(10)
  19845. AS
  19846. create table #BilansUspeh
  19847. (
  19848. ID [int]IDENTITY (1, 1) NOT NULL,
  19849. rbr varchar(5),
  19850. Pozicija varchar(200),
  19851. OznakaNaAOP char(3),
  19852. SmetkiVoAOP varchar(100),
  19853. IznosPrethGod decimal(18,2),
  19854. IznosTekGodina decimal(18,2)
  19855. )
  19856. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '1.', 'Prihodi od proda`ba', '201', '750, 751, 752, 753, 758, 759'
  19857. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '2.','Promena na vrednosta na zalihite na gotovite proizvodi i nedovr{enoto proizvodstvo', 'hhh'
  19858. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.a','Zalihi na gotovite proizvodi i nedovr{enoto proizvodstvo na po~etokot na godinata', '202', '60, 63'
  19859. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.b','Zalihi na gotovite proizvodi i nedovr{enoto proizvodstvo na krajot na godinata', '203', '60, 63 bez smetkite 607 i 838 i bez iznosite kni`eni na kusoci i vi{oci'
  19860. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '3.','Prihodi po osnov na upotreba na sopstveni proizvodi, stoki i uslugi', '204', '755'
  19861. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '4.','Ostanati delovni prihodi', '205', '770, 771, 772, 773, 774, 775, 776, 777, 778, 779'
  19862. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '5.','Materijalni tro{oci (207 + 208)', '206', ''
  19863. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '5.a','Tro{oci za surovini i drugi materijali', '207', '400, 401, 404, 405'
  19864. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '5.b','Nabavna vrednost na prodadeni stoki i uslugi', '208', '410, 411, 412, 413, 414, 419, 701, 702'
  19865. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '6.','Tro{oci za vraboteni (210 + 211)', '209', ''
  19866. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '6.a','Neto plati i nadomesti ', '210', ''
  19867. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '6.b','Tro{oci za danoci, socijalno i penzisko osiguruvawe i sli~no (212 + 213)', '211', ''
  19868. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select ' ','1. Pridones za penzisko osigiruvawe', '212', '470d. 471d.'
  19869. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select ' ','2. Danoci i pridonesi za socijalno osiguruvawe', '213', '470d. 471d.'
  19870. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '7.','Amortizacija i vrednosno usoglasuvawe(215 + 216)', '214', ''
  19871. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '7.a','Amortizacija i vrednosno usoglasuvawe na osnova~ki izdotoci, materijalnite sredstva i nematerijalnite sredstva (dolgoro~ni sredstva', '215', '430, 431, 432, 433, 434 del, 451 del'
  19872. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '7.b','Vrednosno usoglasuvawe na tekovni sredstva (kratkoro~ni sredstva)', '216', '430, 431, 432, 433, 434 del, 451 del'
  19873. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '8','Ostanati tro{oci od rabotewe', '217', '440, 441, 442, 443, 444, 447, 449, 450, 451 del, 452, 453, 454, 459 '
  19874. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '9.','Prihodi od u~estva na vlo`uvawa (219 + 220)', '218', ''
  19875. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '9.a','Prihodi od u`estva na vlo`uvawa vo povrzani subjekti', '219', '760'
  19876. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '9.b','Prihodi od u~estva na vlo`uvawa vo nepovrzani subjekti', '220', '761'
  19877. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '10','Prihodi od ostanati vlo`uvawa i zaemi (222 + 223)', '221', ''
  19878. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '10.a','Prihodi od ostanati vlo`uvawa i zaemi vo ramkite na postojanite sredstva so povrzani subjekti', '222', '762'
  19879. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '10.b','Prihodi od ostanati vlo`uvawa i zaemi vo ramkite na postojanite sredstva so nepovrzani subjekti', '223', '763'
  19880. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '11','Prihodi po osnov na kamati, kursni razliki i sli~ni prihodi (225 + 226)', '224', ''
  19881. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '11.a','Prihodi po osnov na kamati, kursni razliki i sli~ni prihodi od rabotewe so povrzani subjekti', '225', '764'
  19882. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '11.b','Prihodi po osnov na kamati, kursni razliki isli~ni prihodi od rabotewe so nepovrzani subjekti', '226', '765'
  19883. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '12','Vrednosno usoglasuvawe na finansiskite sredstva i vlo`uvawa', '227', '434 del'
  19884. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '13','Rashodi po osnov na kamati, kursni razliki i sli~ni prihodi (229 + 230)', '228', '60, 63'
  19885. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '13.a','Rashodi po osnov na kamati, kursni razliki i sli~ni rashodi od rabotewe so povrzani subjekti', '229', '480, 481, 482, 484'
  19886. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '13.b','Rashodi po osnov na kamati, kursni razliki i sli~ni rashodi od rabotewe so nepovrzani subjekti', '230', '483, 484 d. 485, 489'
  19887. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '14.','Dobivka od redovnoto rabotewe pred odano~uvawe (201 + 204 + 205 + 218 + 221 + 224)-(202 - 203 + 206 + 209 + 214 + 217 + 227 + 228)', '231', '800'
  19888. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '15.','Zaguba od redovnoto rabotewe pred odano~uvawe (202 - 203 + 206 + 209 + 214 + 217 + 227 + 228) - (201 + 204 + 205 + 218 + 221 + 224)', '232', '890'
  19889. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '16.','Danok i pridonesi od dobivkata od redovnoto rabotewe (Del od Dano~niot bilans)', '233', '810, 811'
  19890. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '17.','Dobivka od redovnoto rabotewe po odano~uvawe (231 - 233)', '234', '820'
  19891. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '18.','Zaguba od redovnoto rabotewe po odano~uvawe (233 - 231) ili (232 + 233)', '235', '891'
  19892. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '19.','Vonredni prihodi', '236', '780, 781, 782, 789'
  19893. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '20.','Vonredni rashodi', '237', '720, 721, 722'
  19894. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '21.','Dobivka od vonrednite aktivnosti pred odano~uvawe (236 - 237)', '238', '830'
  19895. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '22.','Zaguba od vonrednite aktivnosti pred odano~uvawe (237 - 236)', '239', '892'
  19896. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '23.','Danok i pridonesi od dobivkata od vonrednite aktivnosti (Del od dano~niot bilans)', '240', '840, 841'
  19897. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '24.','Dobivka od vonrednite aktivnosti po odano~uvaweto (238 - 240)', '241', '850'
  19898. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '25.','Zaguba od vonrednite aktivnosti po odano~uvaweto (240 - 238) ili (239 + 240)', '242', '893'
  19899. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '26.','Ostanati danoci i pridonesi koi ne se iska`ani vo prethodnite pozicii', '243', '860'
  19900. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '27.','Dobivka za finansiskata godina (234 + 241 - 243) ili (233 - 242 - 243) ili (239 + 240)', '244', '951'
  19901. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '28.','Zaguba za finansiskata godina (235 - 241 +243) ili (242 - 234 +243)', '245', '961'
  19902. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '','Uslugi (246 < ili = 208)', '246', ''
  19903. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '','Prose~en broj na vraboteni vrz osnova na ~asovi na rabota vo presmetkovniot period (vo apsoluten iznos)', '247', ''
  19904. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '','Broj na meseci na raboteweto', '248', ''
  19905. Declare @IznosTekGod as decimal(18,2)
  19906. Declare @Iznos as decimal(18,2)
  19907. --prihodi od prodazzba
  19908. Set @IznosTekGod = 0
  19909. set @Iznos = 0
  19910. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '750%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19911. IF @Iznos is not null 
  19912.     set @IznosTekGod = @Iznos
  19913. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '751%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  19914. if @Iznos is not null 
  19915.     set @IznosTekGod = @IznosTekGod+@Iznos
  19916. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '752%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  19917. if @Iznos is not null 
  19918.     set @IznosTekGod = @IznosTekGod+@Iznos
  19919. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '753%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  19920. if @Iznos is not null 
  19921.     set @IznosTekGod = @IznosTekGod+@Iznos
  19922. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '756%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  19923. if @Iznos is not null 
  19924.     set @IznosTekGod = @IznosTekGod+@Iznos
  19925. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '758%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  19926. if @Iznos is not null 
  19927.     set @IznosTekGod = @IznosTekGod+@Iznos
  19928. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '759%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  19929. if @Iznos is not null 
  19930.     set @IznosTekGod = @IznosTekGod+@Iznos
  19931. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 1
  19932. --kraj prihodi od prodazzba
  19933. --zalihi na gotoviteproizvodi i nedovrshenoto proizvodstvo na pochetokot na godinata
  19934. Set @IznosTekGod = 0
  19935. set @Iznos = 0
  19936. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '60%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19937. IF @Iznos is not null 
  19938.     set @IznosTekGod = @Iznos
  19939. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '63%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19940. IF @Iznos is not null 
  19941.     set @IznosTekGod = @IznosTekGod+@Iznos
  19942. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 3
  19943. --kraj
  19944. --zalihi na gotoviteproizvodi i nedovrshenoto proizvodstvo na krajot na godinata
  19945. Set @IznosTekGod = 0
  19946. set @Iznos = 0
  19947. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '60%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19948. IF @Iznos is not null 
  19949.     set @IznosTekGod = @Iznos
  19950. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '63%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19951. IF @Iznos is not null 
  19952.      set @IznosTekGod = @IznosTekGod+@Iznos
  19953. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 4
  19954. --kraj
  19955. --prihodi po osnov na upotreba na sopstveni proizvodii, stoki i usugi
  19956. Set @IznosTekGod = 0
  19957. set @Iznos = 0
  19958. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '755%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19959. IF @Iznos is not null 
  19960.     set @IznosTekGod = @Iznos
  19961. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 5
  19962. --kraj
  19963. --ostanati delovni prihodi
  19964. Set @IznosTekGod = 0
  19965. set @Iznos = 0
  19966. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '770%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19967. IF @Iznos is not null 
  19968.     set @IznosTekGod = @Iznos
  19969. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '771%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19970. IF @Iznos is not null 
  19971.     set @IznosTekGod = @IznosTekGod+@Iznos
  19972. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '772%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19973. IF @Iznos is not null 
  19974.     set @IznosTekGod = @IznosTekGod+@Iznos
  19975. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '773%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19976. IF @Iznos is not null 
  19977.     set @IznosTekGod = @IznosTekGod+@Iznos
  19978. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '774%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19979. IF @Iznos is not null 
  19980.     set @IznosTekGod = @IznosTekGod+@Iznos
  19981. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '775%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19982. IF @Iznos is not null 
  19983.     set @IznosTekGod = @IznosTekGod+@Iznos
  19984. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '776%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19985. IF @Iznos is not null 
  19986.     set @IznosTekGod = @IznosTekGod+@Iznos
  19987. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '777%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19988. IF @Iznos is not null 
  19989.     set @IznosTekGod = @IznosTekGod+@Iznos
  19990. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '778%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19991. IF @Iznos is not null 
  19992.     set @IznosTekGod = @IznosTekGod+@Iznos
  19993. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '779%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  19994. IF @Iznos is not null 
  19995.     set @IznosTekGod = @IznosTekGod+@Iznos
  19996. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 6
  19997. --kraj
  19998. --troshoci za surovini i drugi materijali
  19999. Set @IznosTekGod = 0
  20000. set @Iznos = 0
  20001. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '400%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20002. IF @Iznos is not null 
  20003.     set @IznosTekGod = @Iznos
  20004. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '401%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20005. IF @Iznos is not null 
  20006.      set @IznosTekGod = @IznosTekGod+@Iznos
  20007. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '404%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20008. IF @Iznos is not null 
  20009.      set @IznosTekGod = @IznosTekGod+@Iznos
  20010. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '405%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20011. IF @Iznos is not null 
  20012.      set @IznosTekGod = @IznosTekGod+@Iznos
  20013. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 8
  20014. --kraj
  20015. --nabavna vrednost na prodadeni stoki i uslugi
  20016. Set @IznosTekGod = 0
  20017. set @Iznos = 0
  20018. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '410%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20019. IF @Iznos is not null 
  20020.     set @IznosTekGod = @Iznos
  20021. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '411%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20022. IF @Iznos is not null 
  20023.      set @IznosTekGod = @IznosTekGod+@Iznos
  20024. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '412%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20025. IF @Iznos is not null 
  20026.      set @IznosTekGod = @IznosTekGod+@Iznos
  20027. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '413%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20028. IF @Iznos is not null 
  20029.      set @IznosTekGod = @IznosTekGod+@Iznos
  20030. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '414%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20031. IF @Iznos is not null 
  20032.      set @IznosTekGod = @IznosTekGod+@Iznos
  20033. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '419%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20034. IF @Iznos is not null 
  20035.      set @IznosTekGod = @IznosTekGod+@Iznos
  20036. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '701%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20037. IF @Iznos is not null 
  20038.      set @IznosTekGod = @IznosTekGod+@Iznos
  20039. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '702%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20040. IF @Iznos is not null 
  20041.      set @IznosTekGod = @IznosTekGod+@Iznos
  20042. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 9
  20043. --kraj
  20044. --neto plati i nadomesti
  20045. Set @IznosTekGod = 0
  20046. set @Iznos = 0
  20047. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '271%' AND G.Datum_Nal > = @Datum_Od AND G.Datum_Nal < = @Datum_Do AND G.Sifra_Nal <> 999
  20048. IF @Iznos is not null 
  20049.     set @IznosTekGod = @Iznos
  20050. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 11
  20051. --kraj
  20052. --pridones za penzisko osiguruvanje
  20053. Set @IznosTekGod = 0
  20054. set @Iznos = 0
  20055. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal = @Kto_Penz AND G.Datum_Nal >= @Datum_Od AND G.Datum_Nal <= @Datum_Do and G.Sifra_Nal <> 999
  20056. IF @Iznos is not null 
  20057.     set @IznosTekGod = @Iznos
  20058. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 13
  20059. --kraj
  20060. --danoci i pridonesi za zdravstveno osiguravanje
  20061. Set @IznosTekGod = 0
  20062. set @Iznos = 0
  20063. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '274%' AND G.Kto_Anal<>@Kto_Penz AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do and G.Sifra_Nal <> 999
  20064. IF @Iznos is not null 
  20065.     set @IznosTekGod = @Iznos
  20066. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '273%'  AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do and G.Sifra_Nal <> 999
  20067. IF @Iznos is not null 
  20068.     set @IznosTekGod = @IznosTekGod + @Iznos
  20069. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0)  where #BilansUspeh.id = 14
  20070. --kraj
  20071. --amortizacija i vrednosno osiguruvawe ne osnovachki izdatoci..
  20072. Set @IznosTekGod = 0
  20073. set @Iznos = 0
  20074. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '430%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20075. IF @Iznos is not null 
  20076.     set @IznosTekGod = @Iznos
  20077. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '431%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20078. IF @Iznos is not null 
  20079.      set @IznosTekGod = @IznosTekGod+@Iznos
  20080. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '432%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20081. IF @Iznos is not null 
  20082.      set @IznosTekGod = @IznosTekGod+@Iznos
  20083. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '433%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20084. IF @Iznos is not null 
  20085.      set @IznosTekGod = @IznosTekGod+@Iznos
  20086. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '434%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20087. IF @Iznos is not null 
  20088.      set @IznosTekGod = @IznosTekGod+@Iznos
  20089. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '451%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20090. IF @Iznos is not null 
  20091.      set @IznosTekGod = @IznosTekGod+@Iznos
  20092. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 16
  20093. --kraj
  20094. --tekovni sredstva kratkorochni
  20095. Set @IznosTekGod = 0
  20096. set @Iznos = 0
  20097. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '435%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20098. IF @Iznos is not null 
  20099.     set @IznosTekGod = @Iznos
  20100. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '436%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20101. IF @Iznos is not null 
  20102.      set @IznosTekGod = @IznosTekGod+@Iznos
  20103. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '437%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20104. IF @Iznos is not null 
  20105.      set @IznosTekGod = @IznosTekGod+@Iznos
  20106. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '438%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20107. IF @Iznos is not null 
  20108.      set @IznosTekGod = @IznosTekGod+@Iznos
  20109. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '439%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20110. IF @Iznos is not null 
  20111.      set @IznosTekGod = @IznosTekGod+@Iznos
  20112. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '420%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20113. IF @Iznos is not null 
  20114.      set @IznosTekGod = @IznosTekGod+@Iznos
  20115. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '422%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20116. IF @Iznos is not null 
  20117.      set @IznosTekGod = @IznosTekGod+@Iznos
  20118. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '423%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20119. IF @Iznos is not null 
  20120.      set @IznosTekGod = @IznosTekGod+@Iznos
  20121. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '429%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20122. IF @Iznos is not null 
  20123.      set @IznosTekGod = @IznosTekGod+@Iznos
  20124. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 17
  20125. --ostanati trosoci
  20126. Set @IznosTekGod = 0
  20127. set @Iznos = 0
  20128. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '440%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20129. IF @Iznos is not null 
  20130.     set @IznosTekGod = @Iznos
  20131. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '441%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20132. IF @Iznos is not null 
  20133.      set @IznosTekGod = @IznosTekGod+@Iznos
  20134. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '442%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20135. IF @Iznos is not null 
  20136.      set @IznosTekGod = @IznosTekGod+@Iznos
  20137. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '443%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20138. IF @Iznos is not null 
  20139.      set @IznosTekGod = @IznosTekGod+@Iznos
  20140. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '444%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20141. IF @Iznos is not null 
  20142.      set @IznosTekGod = @IznosTekGod+@Iznos
  20143. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '447%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20144. IF @Iznos is not null 
  20145.      set @IznosTekGod = @IznosTekGod+@Iznos
  20146. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '449%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20147. IF @Iznos is not null 
  20148.      set @IznosTekGod = @IznosTekGod+@Iznos
  20149. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '450%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20150. IF @Iznos is not null 
  20151.      set @IznosTekGod = @IznosTekGod+@Iznos
  20152. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '451%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20153. IF @Iznos is not null 
  20154.      set @IznosTekGod = @IznosTekGod+@Iznos
  20155. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '452%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20156. IF @Iznos is not null 
  20157.      set @IznosTekGod = @IznosTekGod+@Iznos
  20158. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '453%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20159. IF @Iznos is not null 
  20160.      set @IznosTekGod = @IznosTekGod+@Iznos
  20161. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '454%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20162. IF @Iznos is not null 
  20163.      set @IznosTekGod = @IznosTekGod+@Iznos
  20164. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '459%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20165. IF @Iznos is not null 
  20166.      set @IznosTekGod = @IznosTekGod+@Iznos
  20167. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 18
  20168. --kraj
  20169. --prihodi od uchestva na vlozuvanja vo povrzani subjekti
  20170. Set @IznosTekGod = 0
  20171. set @Iznos = 0
  20172. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '760%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20173. IF @Iznos is not null 
  20174.     set @IznosTekGod = @Iznos
  20175. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 20
  20176. --kraj
  20177. --prihodi od uchestva na vlozuvanja vo nepovrzani subjekti
  20178. Set @IznosTekGod = 0
  20179. set @Iznos = 0
  20180. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '761%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20181. IF @Iznos is not null 
  20182.     set @IznosTekGod = @Iznos
  20183. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 21
  20184. --kraj
  20185. --prihodi od ostanati vlozuvanja i zaemi vo ramkite na postojani sredstva so povrzani subjekti
  20186. Set @IznosTekGod = 0
  20187. set @Iznos = 0
  20188. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '762%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20189. IF @Iznos is not null 
  20190.     set @IznosTekGod = @Iznos
  20191. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 23
  20192. --kraj
  20193. --prihodi od ostanati vlozuvanja i zaemi vo ramkite na postojani sredstva so nepovrzani subjekti
  20194. Set @IznosTekGod = 0
  20195. set @Iznos = 0
  20196. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '763%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20197. IF @Iznos is not null 
  20198.     set @IznosTekGod = @Iznos
  20199. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 24
  20200. --kraj
  20201. --prihodi po osnov na kamati, kursni razliki, i slicni prihodi od rabotenje so povrzani subjekti
  20202. Set @IznosTekGod = 0
  20203. set @Iznos = 0
  20204. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '764%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20205. IF @Iznos is not null 
  20206.     set @IznosTekGod = @Iznos
  20207. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 26
  20208. --kraj
  20209. --prihodi po osnov na kamati, kursni razliki, i slicni prihodi od rabotenje so nepovrzani subjekti
  20210. Set @IznosTekGod = 0
  20211. set @Iznos = 0
  20212. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '765%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20213. IF @Iznos is not null 
  20214.     set @IznosTekGod = @Iznos
  20215. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 27
  20216. --kraj
  20217. --prihodi po osnov na kamati, kursni razliki, i slicni prihodi od rabotenje so nepovrzani subjekti
  20218. Set @IznosTekGod = 0
  20219. set @Iznos = 0
  20220. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '434%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20221. IF @Iznos is not null 
  20222.     set @IznosTekGod = @Iznos
  20223. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 28
  20224. --kraj
  20225. --rashodi po osnov na kamati, kursni razliki, i slicni prihodi od rabotenje so povrzani subjekti
  20226. Set @IznosTekGod = 0
  20227. set @Iznos = 0
  20228. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '480%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20229. IF @Iznos is not null 
  20230.     set @IznosTekGod = @Iznos
  20231. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '481%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20232. IF @Iznos is not null 
  20233.     set @IznosTekGod = @IznosTekGod + @Iznos
  20234. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '482%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20235. IF @Iznos is not null 
  20236.     set @IznosTekGod = @IznosTekGod + @Iznos
  20237. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '484%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20238. IF @Iznos is not null 
  20239.     set @IznosTekGod = @IznosTekGod + @Iznos
  20240. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 30
  20241. --kraj
  20242. --rashodi po osnov na kamati, kursni razliki, i slicni prihodi od rabotenje so nepovrzani subjekti
  20243. Set @IznosTekGod = 0
  20244. set @Iznos = 0
  20245. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '483%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20246. IF @Iznos is not null 
  20247.     set @IznosTekGod = @Iznos
  20248. --select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '484%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20249. --IF @Iznos is not null 
  20250. --    set @IznosTekGod = @IznosTekGod + @Iznos
  20251. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '485%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20252. IF @Iznos is not null 
  20253.     set @IznosTekGod = @IznosTekGod + @Iznos
  20254. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '489%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20255. IF @Iznos is not null 
  20256.     set @IznosTekGod = @IznosTekGod + @Iznos
  20257. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 31
  20258. --kraj
  20259. --dobivka od redovno rabotenje
  20260. Set @IznosTekGod = 0
  20261. set @Iznos = 0
  20262. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '800%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20263. IF @Iznos is not null 
  20264.     set @IznosTekGod = @Iznos
  20265. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 32
  20266. --kraj
  20267. --zaguba od redovno rabotenje
  20268. Set @IznosTekGod = 0
  20269. set @Iznos = 0
  20270. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '890%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20271. IF @Iznos is not null 
  20272.     set @IznosTekGod = @Iznos
  20273. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 33
  20274. --kraj
  20275. --danok i pridonesi od dobivkata od redovnoto rabotenje
  20276. Set @IznosTekGod = 0
  20277. set @Iznos = 0
  20278. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '810%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20279. IF @Iznos is not null 
  20280.     set @IznosTekGod = @Iznos
  20281. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '811%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20282. IF @Iznos is not null 
  20283.     set @IznosTekGod =@IznosTekGod + @Iznos
  20284. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 34
  20285. --kraj
  20286. --dobivka od redovnoto rabotenje po odanochuvanje
  20287. Set @IznosTekGod = 0
  20288. set @Iznos = 0
  20289. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '820%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20290. IF @Iznos is not null 
  20291.     set @IznosTekGod = @Iznos
  20292. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 35
  20293. --kraj
  20294. --zaguba od redovnoto rabotenje po odanochuvanje
  20295. Set @IznosTekGod = 0
  20296. set @Iznos = 0
  20297. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '891%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20298. IF @Iznos is not null 
  20299.     set @IznosTekGod = @Iznos
  20300. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 36
  20301. --kraj
  20302. --vonredni prihodi
  20303. Set @IznosTekGod = 0
  20304. set @Iznos = 0
  20305. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '780%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20306. IF @Iznos is not null 
  20307.     set @IznosTekGod = @Iznos
  20308. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '781%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20309. IF @Iznos is not null 
  20310.     set @IznosTekGod = @IznosTekGod + @Iznos
  20311. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '782%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20312. IF @Iznos is not null 
  20313.     set @IznosTekGod =@IznosTekGod + @Iznos
  20314. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '789%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20315. IF @Iznos is not null 
  20316.     set @IznosTekGod = @IznosTekGod + @Iznos
  20317. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 37
  20318. --kraj
  20319. --vonredni rashodi
  20320. Set @IznosTekGod = 0
  20321. set @Iznos = 0
  20322. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '720%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20323. IF @Iznos is not null 
  20324.     set @IznosTekGod = @Iznos
  20325. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '721%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20326. IF @Iznos is not null 
  20327.     set @IznosTekGod = @IznosTekGod + @Iznos
  20328. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '722%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20329. IF @Iznos is not null 
  20330.     set @IznosTekGod = @IznosTekGod + @Iznos
  20331. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 38
  20332. --kraj
  20333. --Dobivka od vonrednite aktivnosti pred odanochuvanje
  20334. Set @IznosTekGod = 0
  20335. set @Iznos = 0
  20336. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '830%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20337. IF @Iznos is not null 
  20338.     set @IznosTekGod = @Iznos
  20339. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 39
  20340. --kraj
  20341. --Zaguba od vonrednite aktivnosti pred odanochuvanje
  20342. Set @IznosTekGod = 0
  20343. set @Iznos = 0
  20344. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '892%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20345. IF @Iznos is not null 
  20346.     set @IznosTekGod = @Iznos
  20347. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 40
  20348. --kraj
  20349. --Danok i pridonesi od dobivkata od vonrednite aktivnosti pred odanochuvanje
  20350. Set @IznosTekGod = 0
  20351. set @Iznos = 0
  20352. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '840%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20353. IF @Iznos is not null 
  20354.     set @IznosTekGod = @Iznos
  20355. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '841%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20356. IF @Iznos is not null 
  20357.     set @IznosTekGod = @IznosTekGod + @Iznos
  20358. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 41
  20359. --kraj
  20360. --Dobivka od vonrednite aktivnosti po odanochuvanje
  20361. Set @IznosTekGod = 0
  20362. set @Iznos = 0
  20363. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '850%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20364. IF @Iznos is not null 
  20365.     set @IznosTekGod = @Iznos
  20366. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 42
  20367. --kraj
  20368. --Zaguba od vonrednite aktivnosti po odanochuvanje
  20369. Set @IznosTekGod = 0
  20370. set @Iznos = 0
  20371. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '893%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20372. IF @Iznos is not null 
  20373.     set @IznosTekGod = @Iznos
  20374. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 43
  20375. --kraj
  20376. --Ostanati danoci i pridonesi koi ne se iskazzani vo prethodnite pozicii
  20377. Set @IznosTekGod = 0
  20378. set @Iznos = 0
  20379. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '860%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20380. IF @Iznos is not null 
  20381.     set @IznosTekGod = @Iznos
  20382. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 44
  20383. --kraj
  20384. --Dobivka za finansiskata godina
  20385. Set @IznosTekGod = 0
  20386. set @Iznos = 0
  20387. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '871%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20388. IF @Iznos is not null 
  20389.     set @IznosTekGod = @Iznos
  20390. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 45
  20391. --kraj
  20392. --Zaguba za finansiskata godina
  20393. Set @IznosTekGod = 0
  20394. set @Iznos = 0
  20395. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '895%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20396. IF @Iznos is not null 
  20397.     set @IznosTekGod = @Iznos
  20398. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 46
  20399. --kraj
  20400. --zbir polinja
  20401. --Materijalni trosoci
  20402. Set @IznosTekGod = 0
  20403. set @Iznos = 0
  20404. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 8
  20405. IF @Iznos is not null 
  20406.     set @IznosTekGod = @Iznos
  20407. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 9
  20408. IF @Iznos is not null 
  20409.     set @IznosTekGod =@IznostekGod + @Iznos
  20410. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 7
  20411. --kraj
  20412. --Trosoci za danoci, socijalno i penzisko osiguruvanje
  20413. Set @IznosTekGod = 0
  20414. set @Iznos = 0
  20415. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 13
  20416. IF @Iznos is not null 
  20417.     set @IznosTekGod = @Iznos
  20418. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 14
  20419. IF @Iznos is not null 
  20420.     set @IznosTekGod =@IznostekGod + @Iznos
  20421. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 12
  20422. --kraj
  20423. --Trosoci za vraboteni
  20424. Set @IznosTekGod = 0
  20425. set @Iznos = 0
  20426. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 11
  20427. IF @Iznos is not null 
  20428.     set @IznosTekGod = @Iznos
  20429. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 12
  20430. IF @Iznos is not null 
  20431.     set @IznosTekGod =@IznostekGod + @Iznos
  20432. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 10
  20433. --kraj
  20434. --Amortizacija i vrednosno usoglasuvanje
  20435. Set @IznosTekGod = 0
  20436. set @Iznos = 0
  20437. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 16
  20438. IF @Iznos is not null 
  20439.     set @IznosTekGod = @Iznos
  20440. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 17
  20441. IF @Iznos is not null 
  20442.     set @IznosTekGod =@IznostekGod + @Iznos
  20443. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 15
  20444. --kraj
  20445. --prihodi od ucestva na vlozzuvanja
  20446. Set @IznosTekGod = 0
  20447. set @Iznos = 0
  20448. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 20
  20449. IF @Iznos is not null 
  20450.     set @IznosTekGod = @Iznos
  20451. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 21
  20452. IF @Iznos is not null 
  20453.     set @IznosTekGod =@IznostekGod + @Iznos
  20454. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 19
  20455. --kraj
  20456. --prihodi od ostanati vlozzuvanja i zaemi
  20457. Set @IznosTekGod = 0
  20458. set @Iznos = 0
  20459. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 23
  20460. IF @Iznos is not null 
  20461.     set @IznosTekGod = @Iznos
  20462. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 24
  20463. IF @Iznos is not null 
  20464.     set @IznosTekGod =@IznostekGod + @Iznos
  20465. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 22
  20466. --kraj
  20467. --prihodi po osnov na kamati, kursni razliki i slichni prihodi
  20468. Set @IznosTekGod = 0
  20469. set @Iznos = 0
  20470. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 26
  20471. IF @Iznos is not null 
  20472.     set @IznosTekGod = @Iznos
  20473. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 27
  20474. IF @Iznos is not null 
  20475.     set @IznosTekGod =@IznostekGod + @Iznos
  20476. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 25
  20477. --kraj
  20478. --rashodi po osnov na kamati, kursni razliki i slichni prihodi
  20479. Set @IznosTekGod = 0
  20480. set @Iznos = 0
  20481. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 30
  20482. IF @Iznos is not null 
  20483.     set @IznosTekGod = @Iznos
  20484. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 31
  20485. IF @Iznos is not null 
  20486.     set @IznosTekGod =@IznostekGod + @Iznos
  20487. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 29
  20488. --kraj
  20489. update #BilansUspeh set IznosTekGodina = 0 where IznosTekGodina is null
  20490. select * from #Bilansuspeh
  20491.  
  20492.  
  20493.  
  20494.  
  20495.  
  20496.  
  20497. Go
  20498. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_bilansuspeh_mal]'))
  20499. drop procedure [dbo].[sp_bilansuspeh_mal]
  20500.  
  20501. Go
  20502.  
  20503. CREATE PROCEDURE sp_BilansUspeh_mal
  20504.     @Datum_Od    smalldatetime,
  20505.     @Datum_Do    smalldatetime,
  20506.     @Kto_Penz    char(10)
  20507. AS
  20508. create table #BilansUspeh
  20509. (
  20510. ID [int]IDENTITY (1, 1) NOT NULL,
  20511. rbr varchar(5),
  20512. Pozicija varchar(200),
  20513. OznakaNaAOP char(3),
  20514. IznosPrethGod decimal(18,2),
  20515. IznosTekGodina decimal(18,2)
  20516. )
  20517. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '1.', 'Prihodi od osnovnata dejnost', '260'
  20518. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '2.','Rashodi od osnovnata dejnost', '261'
  20519. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '2.a','Materijalni Tro{oci (263 + 264 + 265)', '262'
  20520. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Tro{oci za surovini i drugi materijali', '263'
  20521. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Nabavna vrednost na prodadeni stoki', '264'
  20522. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Uslugi', '265'
  20523. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '2.b','Tro{oci za vraboteni', '266'
  20524. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Neto plati nadomestoci', '267'
  20525. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Tro{oci za danoci, socijalno i penzisko osiguruvawe na dolgoro~nite sredstva', '268'
  20526. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '2.v','Amortizacija i vrednosno usoglasuvawe na osnova~ki izdatoci, materijalni sredstva i na nematerijalni sredstva (dolgoro~ni sr.)', '269'
  20527. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '3.','Prihodi od drugi aktivnosti', '270'
  20528. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '4.','Rashodi od drugi aktivnosti', '271'
  20529. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '5.','Vonredni prihodi', '272'
  20530. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '6.','Vonredni rashodi', '273'
  20531. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '7.','Dobivka pred odano~uvaweto (260+270+272) - (261+271+273)', '274'
  20532. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '8.','Zaguba pred odano~uvaweto (261 + 271 + 273) - (260 + 270 + 272)', '275'
  20533. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '9.','Danok i pridonesi od dobivkata ', '276'
  20534. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '10.','Dobivka za finansiskata godina (274 - 276)', '277'
  20535. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select '11.','Zaguba za finansiskata godina (276 - 274) ili (275 + 276)', '278'
  20536. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Pridones za penzisko osiguruvawe', '279'
  20537. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Prose~en broj na vraboteni vrz osnova na ~asovi na rabota vo presmetkovniot period (vo apsoluten iznos)', '280'
  20538. insert into #BilansUspeh(rbr, Pozicija, OznakaNaAOP) select ' ','Broj na meseci na rabotewe', '281'
  20539. Declare @IznosTekGod as decimal(18,2)
  20540. Declare @Iznos as decimal(18,2)
  20541. --260 prihodi od prodazzba
  20542. Set @IznosTekGod = 0
  20543. set @Iznos = 0
  20544. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '75%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20545. IF @Iznos is not null 
  20546.     set @IznosTekGod = @Iznos
  20547. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '77%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  20548. if @Iznos is not null 
  20549.     set @IznosTekGod = @IznosTekGod+@Iznos
  20550.  
  20551. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 1
  20552. --kraj
  20553.  
  20554. --263 Trosoci za surovini i drugi materijali
  20555. Set @IznosTekGod = 0
  20556. set @Iznos = 0
  20557. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '40%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20558. IF @Iznos is not null 
  20559.     set @IznosTekGod = @Iznos
  20560. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '42%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20561. IF @Iznos is not null 
  20562.     set @IznosTekGod = @IznosTekGod+@Iznos
  20563. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '44%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20564. IF @Iznos is not null 
  20565.     set @IznosTekGod = @IznosTekGod+@Iznos
  20566. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '45%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20567. IF @Iznos is not null 
  20568.     set @IznosTekGod = @IznosTekGod+@Iznos
  20569. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '60%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20570. IF @Iznos is not null 
  20571.     set @IznosTekGod = @IznosTekGod+@Iznos
  20572. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '63%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20573. IF @Iznos is not null 
  20574.     set @IznosTekGod = @IznosTekGod+@Iznos
  20575. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 4
  20576. --kraj
  20577. --264 Nabavna vrednost na prodadeni stoki
  20578. Set @IznosTekGod = 0
  20579. set @Iznos = 0
  20580. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '701%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20581. IF @Iznos is not null 
  20582.     set @IznosTekGod = @Iznos
  20583. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '702%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20584. IF @Iznos is not null 
  20585.      set @IznosTekGod = @IznosTekGod+@Iznos
  20586. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 5
  20587. --kraj
  20588. --265 Uslugi
  20589. Set @IznosTekGod = 0
  20590. set @Iznos = 0
  20591. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '41%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20592. IF @Iznos is not null 
  20593.     set @IznosTekGod = @Iznos
  20594. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 6
  20595. --kraj
  20596. --267 Neto plati nadomestoci
  20597. Set @IznosTekGod = 0
  20598. set @Iznos = 0
  20599. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '271%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20600. IF @Iznos is not null 
  20601.     set @IznosTekGod = @Iznos
  20602. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 8
  20603. --kraj
  20604. --268 troshoci za danoci, socijalno i penzisko osiguruvawe
  20605. Set @IznosTekGod = 0
  20606. set @Iznos = 0
  20607. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '273%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20608. IF @Iznos is not null 
  20609.     set @IznosTekGod = @Iznos
  20610. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '274%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20611. IF @Iznos is not null 
  20612.      set @IznosTekGod = @IznosTekGod+@Iznos
  20613. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 9
  20614. --kraj
  20615.  
  20616. --269 amortizacija i vrednosno usoglasuvawe na osnovachki izdatoci
  20617. Set @IznosTekGod = 0
  20618. set @Iznos = 0
  20619. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '43%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20620. IF @Iznos is not null 
  20621.     set @IznosTekGod = @Iznos
  20622. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 10
  20623. --kraj
  20624. --270 Prihodi od drugi aktivnosti
  20625. Set @IznosTekGod = 0
  20626. set @Iznos = 0
  20627. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '76%' AND G.Datum_Nal > = @Datum_Od AND G.Datum_Nal < = @Datum_Do
  20628. IF @Iznos is not null 
  20629.     set @IznosTekGod = @Iznos
  20630. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 11
  20631. --kraj
  20632. --271 Rashodi od drugi aktivnosti
  20633. Set @IznosTekGod = 0
  20634. set @Iznos = 0
  20635. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '48%' AND G.Datum_Nal >= @Datum_Od AND G.Datum_Nal <= @Datum_Do 
  20636. IF @Iznos is not null 
  20637.     set @IznosTekGod = @Iznos
  20638. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 12
  20639. --kraj
  20640.  
  20641. --272 Vonredni prihodi
  20642. Set @IznosTekGod = 0
  20643. set @Iznos = 0
  20644. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '78%' AND G.Kto_Anal<>@Kto_Penz AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do and G.Sifra_Nal <> 999
  20645. IF @Iznos is not null 
  20646.     set @IznosTekGod = @Iznos
  20647. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0)  where #BilansUspeh.id = 13
  20648. --kraj
  20649. --273 Vonredni rashodi 
  20650. Set @IznosTekGod = 0
  20651. set @Iznos = 0
  20652. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '72%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20653. IF @Iznos is not null 
  20654.     set @IznosTekGod = @Iznos
  20655. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 14
  20656. --kraj
  20657. --274 Dobivka pred odano~uvawe
  20658. Set @IznosTekGod = 0
  20659. set @Iznos = 0
  20660. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '800%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20661. IF @Iznos is not null 
  20662.     set @IznosTekGod = @Iznos
  20663. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 15
  20664. --275 Zaguba pred odano~uvawe
  20665. Set @IznosTekGod = 0
  20666. set @Iznos = 0
  20667. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '890%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20668. IF @Iznos is not null 
  20669.     set @IznosTekGod = @Iznos
  20670. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 16
  20671. --kraj
  20672. --276 Danok i pridonesi od dobivkata
  20673. Set @IznosTekGod = 0
  20674. set @Iznos = 0
  20675. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '276%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20676. IF @Iznos is not null 
  20677.     set @IznosTekGod = @Iznos
  20678. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '810%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20679. IF @Iznos is not null 
  20680.     set @IznosTekGod = @IznosTekGod+@Iznos
  20681. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '811%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20682. IF @Iznos is not null 
  20683.     set @IznosTekGod = @IznosTekGod+@Iznos
  20684. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 17
  20685. --kraj
  20686. --277 Dobivka za finansiskata godina
  20687. Set @IznosTekGod = 0
  20688. set @Iznos = 0
  20689. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '820%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20690. IF @Iznos is not null 
  20691.     set @IznosTekGod = @Iznos
  20692. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 18
  20693. --kraj
  20694. --278 Zaguba za finansiskata godina
  20695. Set @IznosTekGod = 0
  20696. set @Iznos = 0
  20697. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '895%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20698. IF @Iznos is not null 
  20699.     set @IznosTekGod = @Iznos
  20700. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 19
  20701. --kraj
  20702. --279 Pridones za penzisko osiguruvawe
  20703. Set @IznosTekGod = 0
  20704. set @Iznos = 0
  20705. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '274%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20706. IF @Iznos is not null 
  20707.     set @IznosTekGod = @Iznos
  20708. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 20
  20709. --kraj
  20710. select rbr,Pozicija,OznakaNaAOP,IznosPrethGod,IznosTekGodina from #Bilansuspeh
  20711.  
  20712.  
  20713.  
  20714.  
  20715. Go
  20716. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_bilansuspehsr]'))
  20717. drop procedure [dbo].[sp_bilansuspehsr]
  20718.  
  20719. Go
  20720.  
  20721.  
  20722.  
  20723.  
  20724. CREATE           PROCEDURE sp_BilansUspehSR
  20725.     @Datum_Od    smalldatetime,
  20726.     @Datum_Do    smalldatetime
  20727. AS
  20728. create table #BilansUspeh
  20729. (
  20730. ID [int]IDENTITY (1, 1) NOT NULL,
  20731. rbr varchar(5),
  20732. Pozicija nvarchar(200),
  20733. OznakaNaAOP char(3),
  20734. GrupaSmetki nvarchar(100),
  20735. IznosPrethGod decimal(18,2),
  20736. IznosTekGodina decimal(18,2)
  20737. )
  20738. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'A.╨ƒ╨á╨ÿ╨Ñ╨₧╨ö╨ÿ ╨ÿ ╨á╨É╨í╨Ñ╨₧╨ö╨ÿ ╨ÿ╨ù ╨á╨ò╨ö╨₧╨Æ╨¥╨₧╨ô ╨ƒ╨₧╨í╨¢╨₧╨Æ╨É╨è╨É  I. ╨ƒ╨₧╨í╨¢╨₧╨Æ╨¥╨ÿ ╨ƒ╨á╨ÿ╨Ñ╨₧╨ö╨ÿ (202+203+204-205+206)', '201', ''
  20739. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'1.╨ƒ╤Ç╨╕╤à╨╛╨┤╨╕ ╨╛╨┤ ╨┐╤Ç╨╛╨┤╨░╤ÿ╨╡', '202', N'60 ╨╕ 61'
  20740. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'2.╨ƒ╤Ç╨╕╤à╨╛╨┤╨╕ ╨╛╨┤ ╨░╨║╤é╨╕╨▓╨╕╤Ç╨░╤Ü╨░ ╤â~╨╕╨╜╨░╨║╨░ ╨╕ ╤Ç╨╛╨▒╨╡', '203','62'
  20741. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'3.╨ƒ╨╛╨▓╨╡╤¢╨░╤Ü╨╡ ╨▓╤Ç╨╡╨┤╨╜╨╛╤ü╤é╨╕ ╤ò╨░╨╗╨╕╤à╨░ ╤â╤ç╨╕╨╜╨░╨║╨░', '204', '630'
  20742. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'4.╨í╨╝╨░╨╜╨╡╤Ü╨╡ ╨▓╤Ç╨╡╨┤╨╜╨╛╤ü╤é╨╕ ╤ò╨░╨╗╨╕╤à╨░ ╤â╤ç╨╕╨╜╨░╨║╨░', '205', '631'
  20743. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'5.╨₧╤ü╤é╨░╨╗╨╕ ╨┐╨╛╤ü╨╗╨╛╨▓╨╜╨╕ ╨┐╤Ç╨╕╤à╨╛╨┤╨╕', '206', N'64 ╨╕ 65'
  20744. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'II. ╨ƒ╨₧╨í╨¢╨₧╨Æ╨¥╨ÿ ╨ƒ╨á╨ÿ╨Ñ╨₧╨ö╨ÿ (208 ╨┤╨╛ 212)', '207', ' '
  20745. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'1.╨¥╨░╨▒╨░╨▓╨╜╨░ ╨▓╤Ç╨╡╨┤╨╜╨╛╤ü╤é ╨┐╤Ç╨╛╨┤╨░╤é╨╡ ╤Ç╨╛╨▒╨╡', '208', '50'
  20746. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'2.╨ó╤Ç╨╛╤ê╨║╨╛╨▓╨╕ ╨╝╨░╤é╨╡╤Ç╨╕╤ÿ╨░╨╗╨░', '209', '51'
  20747. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'3.╨ó╤Ç╨╛╤ê╨║╨╛╨▓╨╕ ╨╖╨░╤Ç╨░╨┤╨░, ╨╜╨░╨║╨╜╨░╨┤╨░ ╨╖╨░╤Ç╨░╨┤╨░ ╨╕ ╨╛╤ü╤é╨░╨╗╨╕ ╨╗╨╕╤ç╨╜╨╕ ╤Ç╨░╤ü╤à╨╛╨┤╨╕', '210', '52'
  20748. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'4.╨ó╤Ç╨╛╤ê╨║╨╛╨▓╨╕ ╨░╨╝╨╛╤Ç╤é╨╕╨╖╨░╤å╨╕╤ÿ╨╡ ╨╕ ╤Ç╨╡╨╖╨╡╤Ç╨▓╨╕╤ü╨░╤Ü╨░', '211', '54'
  20749. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'5.╨₧╤ü╤é╨░╨╗╨╕ ╨┐╨╛╤ü╨╗╨╛╨▓╨╜╨╕ ╤Ç╨░╤ü╤à╨╛╨┤╨╕', '212', N'53 ╨╕ 55'
  20750. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'III. ╨ƒ╨₧╨í╨¢╨₧╨Æ╨¥╨ÿ ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü (201-207)', '213', ''
  20751. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'IV.  ╨ƒ╨₧╨í╨¢╨₧╨Æ╨¥╨ÿ ╨ô╨ú╨æ╨ÿ╨ó╨É╨Ü (207-201)', '214', ''
  20752. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'V.╨ñ╨ÿ╨¥╨É╨¥╨í╨ÿ╨ê╨í╨Ü╨ÿ ╨ƒ╨á╨ÿ╨Ñ╨₧╨ö╨ÿ', '215', '66'
  20753. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'VI.╨ñ╨ÿ╨¥╨É╨¥╨í╨ÿ╨ê╨í╨Ü╨ÿ ╨á╨É╨í╨Ñ╨₧╨ö╨ÿ', '216', '56'
  20754. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'VII.╨₧╨í╨ó╨É╨¢╨ÿ ╨ƒ╨á╨ÿ╨Ñ╨₧╨ö╨ÿ', '217', '67,68'
  20755. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'VIII.╨₧╨í╨ó╨É╨¢╨ÿ ╨á╨É╨í╨Ñ╨₧╨ö╨ÿ', '218', '57,58'
  20756. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'IX.╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü ╨ÿ╨ù ╨á╨ò╨ö╨₧╨Æ╨¥╨₧╨ô ╨ƒ╨₧╨í╨¢╨₧╨Æ╨É╨è╨É ╨ƒ╨á╨ò ╨₧╨ƒ╨₧╨á╨ò╨à╨ÿ╨Æ╨É╨è╨É(213-214+215-216+217-218)', '219', ''
  20757. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'X.╨ô╨ú╨æ╨ÿ╨ó╨É╨Ü ╨ÿ╨ù ╨á╨ò╨ö╨₧╨Æ╨¥╨₧╨ô ╨ƒ╨₧╨í╨¢╨₧╨Æ╨É╨è╨É ╨ƒ╨á╨ò ╨₧╨ƒ╨₧╨á╨ò╨à╨ÿ╨Æ╨É╨è╨É', '220', ''
  20758. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'XI.╨¥╨ò╨ó╨₧ ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü ╨ƒ╨₧╨í╨¢╨₧╨Æ╨É╨è╨É ╨Ü╨₧╨ê╨ò ╨í╨ò ╨₧╨æ╨ú╨í╨ó╨É╨Æ╨ë╨É', '221', '69-59'
  20759. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'XII.╨¥╨ò╨ó╨₧ ╨ô╨ú╨æ╨ÿ╨ó╨É╨Ü ╨ƒ╨₧╨í╨¢╨₧╨Æ╨É╨è╨É ╨Ü╨₧╨ê╨É ╨í╨ò ╨₧╨æ╨ú╨í╨ó╨É╨Æ╨ë╨É', '222', '59-69'
  20760. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨æ. ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü ╨ƒ╨á╨ò ╨₧╨ƒ╨₧╨á╨ò╨ù╨ÿ╨Æ╨É╨è╨É (219-220+221-222)', '223', ''
  20761. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨Æ. ╨ô╨ú╨æ╨ÿ╨ó╨É╨Ü ╨ƒ╨á╨ò ╨₧╨ƒ╨₧╨á╨ò╨ù╨ÿ╨Æ╨É╨è╨É (220-219+222-221)', '224', ''
  20762. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ô. ╨ƒ╨₧╨á╨ò╨ù ╨¥╨É ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü', '', ''
  20763. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'         1.╨ƒ╨╛╤Ç╨╡╤ü╨║╨╕ ╤Ç╨░╤ü╤à╨╛╨┤ ╨┐╨╡╤Ç╨╕╨╛╨┤╨░', '225', '721'
  20764. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'         2.╨₧╨┤╨╗╨╛╨╢╨╡╨╜╨╕ ╨┐╨╛╤Ç╨╡╤ü╨║╨╕ ╤Ç╨░╤ü╤à╨╛╨┤╨╕ ╨┐╨╡╤Ç╨╕╨╛╨┤╨░', '226', '722'
  20765. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'         3.╨₧╨┤╨╗╨╛╨╢╨╡╨╜╨╕ ╨┐╨╛╤Ç╨╡╤ü╨║╨╕ ╨┐╤Ç╨╕╤à╨╛╨┤╨╕ ╨┐╨╡╤Ç╨╕╨╛╨┤╨░', '227', '722'
  20766. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ö. ╨ÿ╨í╨ƒ╨¢╨É╨é╨ò╨¥╨É ╨¢╨ÿ╨º╨¥╨É ╨ƒ╨á╨ÿ╨£╨É╨è╨É ╨ƒ╨₧╨í╨¢╨₧╨ö╨É╨Æ╨ª╨ú ', '228', '723'
  20767. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨é. ╨¥╨ò╨ó╨₧ ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü (223 - 224 - 225 - 226 + 227 - 228)', '229', ''
  20768. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ò. ╨¥╨ò╨ó╨₧ ╨ô╨ú╨æ╨ÿ╨ó╨É╨Ü (224 - 223 + 255 + 226 + 227 + 228)', '230', ''
  20769. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨û. ╨¥╨ò╨ó╨₧ ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü ╨Ü╨₧╨ê╨ÿ ╨ƒ╨á╨ÿ╨ƒ╨É╨ö╨É ╨£╨É╨è╨ÿ╨¥╨í╨Ü╨ÿ╨£ ╨ú╨¢╨É╨ô╨É╨º╨ÿ╨£╨É', '231', ''
  20770. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ù. ╨¥╨ò╨ó╨₧ ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü ╨Ü╨₧╨ê╨ÿ ╨ƒ╨á╨ÿ╨ƒ╨É╨ö╨É ╨Æ╨¢╨É╨í╨¥╨ÿ╨ª╨ÿ╨£╨É ╨£╨É╨ó╨ÿ╨º╨¥╨₧╨ô ╨ƒ╨á╨É╨Æ╨¥╨₧╨ô ╨¢╨ÿ╨ª╨É', '232', ''
  20771. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ÿ. ╨ù╨É╨á╨É╨ö╨É ╨ƒ╨₧ ╨É╨Ü╨ª╨ÿ╨ê╨ÿ', '232', ''
  20772. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'         1.╨₧╤ü╨╜╨╛╨▓╨╜╨░ ╨╖╨░╤Ç╨░╨┤╨░ ╨┐╨╛ ╨░╨║╤å╨╕╤ÿ╨╕', '233', ''
  20773. insert into #BilansUspeh(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'         2.╨ú╨╝╨░╤Ü╨╡╨╜╨░ (╤Ç╨░╨╖╨▓╨╛╨┤╤Ü╨╡╨╜╨░) ╨╖╨░╤Ç╨░╨┤╨░ ╨┐╨╛ ╨░╨║╤å╨╕╤ÿ╨░', '234', ''
  20774.  
  20775. Declare @IznosTekGod as decimal(18,2)
  20776. Declare @Iznos as decimal(18,2)
  20777.  
  20778. --prihodi od prodazzba
  20779. Set @IznosTekGod = 0
  20780. set @Iznos = 0
  20781. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '60%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20782. IF @Iznos is not null 
  20783.     set @IznosTekGod = @Iznos
  20784. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '61%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  20785. if @Iznos is not null 
  20786.     set @IznosTekGod = @IznosTekGod+@Iznos
  20787.  
  20788. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 2
  20789. --kraj prihodi od prodazzba
  20790.  
  20791. --prihodi od aktiviranja ucinaka i robe
  20792. Set @IznosTekGod = 0
  20793. set @Iznos = 0
  20794. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '62%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20795. IF @Iznos is not null 
  20796.     set @IznosTekGod = @Iznos
  20797. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 3
  20798. --kraj
  20799. --povechanje vrednossti zaliha ucinaka
  20800. Set @IznosTekGod = 0
  20801. set @Iznos = 0
  20802. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '630%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20803. IF @Iznos is not null 
  20804.     set @IznosTekGod = @Iznos
  20805. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 4
  20806. --kraj
  20807. --Smanenje vrednosti zaliha ucinaka
  20808. Set @IznosTekGod = 0
  20809. set @Iznos = 0
  20810. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '631%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20811. IF @Iznos is not null 
  20812.     set @IznosTekGod = @Iznos
  20813. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 5
  20814. --kraj
  20815. --ostali poslovni prihodi
  20816. Set @IznosTekGod = 0
  20817. set @Iznos = 0
  20818. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '64%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20819. IF @Iznos is not null 
  20820.     set @IznosTekGod = @Iznos
  20821. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '65%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20822. IF @Iznos is not null 
  20823.     set @IznosTekGod = @IznosTekGod+@Iznos
  20824. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 6
  20825. --kraj
  20826. --nabavna vrednost prodate robe
  20827. Set @IznosTekGod = 0
  20828. set @Iznos = 0
  20829. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '50%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20830. IF @Iznos is not null 
  20831.     set @IznosTekGod = @Iznos
  20832. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 8
  20833. --kraj
  20834. --troshkovi materijala
  20835. Set @IznosTekGod = 0
  20836. set @Iznos = 0
  20837. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '51%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20838. IF @Iznos is not null 
  20839.     set @IznosTekGod = @Iznos
  20840. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 9
  20841. --kraj
  20842. --troskovi zarada, naknada zarada i ostali lichni rashodi
  20843. Set @IznosTekGod = 0
  20844. set @Iznos = 0
  20845. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '52%' AND G.Datum_Nal > = @Datum_Od AND G.Datum_Nal < = @Datum_Do AND G.Sifra_Nal <> 999
  20846. IF @Iznos is not null 
  20847.     set @IznosTekGod = @Iznos
  20848. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 10
  20849. --kraj
  20850. --troskovi, amortizacija i rezervisanja
  20851. Set @IznosTekGod = 0
  20852. set @Iznos = 0
  20853. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '54%'  AND G.Datum_Nal >= @Datum_Od AND G.Datum_Nal <= @Datum_Do and G.Sifra_Nal <> 999
  20854. IF @Iznos is not null 
  20855.     set @IznosTekGod = @Iznos
  20856. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 11
  20857. --kraj
  20858.  
  20859. --Ostali poslovni rashodi
  20860. Set @IznosTekGod = 0
  20861. set @Iznos = 0
  20862. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '53%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do and G.Sifra_Nal <> 999
  20863. IF @Iznos is not null 
  20864.     set @IznosTekGod = @Iznos
  20865. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '55%'  AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do and G.Sifra_Nal <> 999
  20866. IF @Iznos is not null 
  20867.     set @IznosTekGod = @IznosTekGod + @Iznos
  20868. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0)  where #BilansUspeh.id = 12
  20869. --kraj
  20870.  
  20871. --FINANSIJSKI PRIHODI
  20872. Set @IznosTekGod = 0
  20873. set @Iznos = 0
  20874. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '66%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20875. IF @Iznos is not null 
  20876.     set @IznosTekGod = @Iznos
  20877. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 15
  20878. --kraj
  20879. --FINANSIJSKI RASHODI
  20880. Set @IznosTekGod = 0
  20881. set @Iznos = 0
  20882. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '56%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20883. IF @Iznos is not null 
  20884.     set @IznosTekGod = @Iznos
  20885. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 16
  20886.  
  20887. --OSTALI PRIHODI
  20888. Set @IznosTekGod = 0
  20889. set @Iznos = 0
  20890. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '67%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20891. IF @Iznos is not null 
  20892.     set @IznosTekGod = @Iznos
  20893. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '68%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20894.     IF @Iznos is not null 
  20895.     set @IznosTekGod = @IznosTekGod + @Iznos
  20896. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 17
  20897. --kraj
  20898.  
  20899. --OSTALI RASHODI
  20900. Set @IznosTekGod = 0
  20901. set @Iznos = 0
  20902. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '57%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20903.     IF @Iznos is not null 
  20904.     set @IznosTekGod = @Iznos
  20905. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '58%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20906.     IF @Iznos is not null 
  20907.     set @IznosTekGod = @IznosTekGod + @Iznos
  20908. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 18
  20909. --kraj
  20910. --NETO DOBITAK POSLOVANJA KOJE SE OBUSTAVLJA
  20911. Set @IznosTekGod = 0
  20912. set @Iznos = 0
  20913. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '59%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20914. IF @Iznos is not null 
  20915.     set @IznosTekGod =  @Iznos
  20916. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '60%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20917.     IF @Iznos is not null 
  20918.     set @IznosTekGod = @IznosTekGod + @Iznos
  20919. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '61%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20920.     IF @Iznos is not null 
  20921.     set @IznosTekGod = @IznosTekGod + @Iznos
  20922. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '62%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20923.     IF @Iznos is not null 
  20924.     set @IznosTekGod = @IznosTekGod + @Iznos
  20925. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '63%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20926.     IF @Iznos is not null 
  20927.     set @IznosTekGod = @IznosTekGod + @Iznos
  20928. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '64%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20929.     IF @Iznos is not null 
  20930.     set @IznosTekGod = @IznosTekGod + @Iznos
  20931. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '65%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20932.     IF @Iznos is not null 
  20933.     set @IznosTekGod = @IznosTekGod + @Iznos
  20934. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '66%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20935.     IF @Iznos is not null 
  20936.     set @IznosTekGod = @IznosTekGod + @Iznos
  20937. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '67%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20938.     IF @Iznos is not null 
  20939.     set @IznosTekGod = @IznosTekGod + @Iznos
  20940. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '68%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20941.     IF @Iznos is not null 
  20942.     set @IznosTekGod = @IznosTekGod + @Iznos
  20943. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '69%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20944.     IF @Iznos is not null 
  20945.     set @IznosTekGod = @IznosTekGod + @Iznos
  20946. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 21
  20947. --kraj
  20948. --NETO GUBITAK POSLOVANJA KOJE SE OBUSTAVLJA
  20949. Set @IznosTekGod = 0
  20950. set @Iznos = 0
  20951. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '69%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20952. IF @Iznos is not null 
  20953.     set @IznosTekGod =  @Iznos
  20954. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '68%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20955.     IF @Iznos is not null 
  20956.     set @IznosTekGod = @IznosTekGod + @Iznos
  20957. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '67%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20958.     IF @Iznos is not null 
  20959.     set @IznosTekGod = @IznosTekGod + @Iznos
  20960. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '66%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20961.     IF @Iznos is not null 
  20962.     set @IznosTekGod = @IznosTekGod + @Iznos
  20963. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '65%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20964.     IF @Iznos is not null 
  20965.     set @IznosTekGod = @IznosTekGod + @Iznos
  20966. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '64%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20967.     IF @Iznos is not null 
  20968.     set @IznosTekGod = @IznosTekGod + @Iznos
  20969. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '63%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20970.     IF @Iznos is not null 
  20971.     set @IznosTekGod = @IznosTekGod + @Iznos
  20972. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '62%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20973.     IF @Iznos is not null 
  20974.     set @IznosTekGod = @IznosTekGod + @Iznos
  20975. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '61%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20976.     IF @Iznos is not null 
  20977.     set @IznosTekGod = @IznosTekGod + @Iznos
  20978. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '60%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20979.     IF @Iznos is not null 
  20980.     set @IznosTekGod = @IznosTekGod + @Iznos
  20981. select @Iznos = sum (G.Dolzi) from Gstav G where G.Kto_Anal like '59%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20982.     IF @Iznos is not null 
  20983.     set @IznosTekGod = @IznosTekGod + @Iznos
  20984. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 22
  20985. --kraj
  20986.  
  20987. --PORESKI RASHOD PERIODA
  20988. Set @IznosTekGod = 0
  20989. set @Iznos = 0
  20990. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '721%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  20991. IF @Iznos is not null 
  20992.     set @IznosTekGod = @Iznos
  20993. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 26
  20994. --kraj
  20995.  
  20996. --ODLOZZENI PORESKI RASHODI PERIODA
  20997. Set @IznosTekGod = 0
  20998. set @Iznos = 0
  20999. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '722%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21000. IF @Iznos is not null 
  21001.     set @IznosTekGod = @Iznos
  21002. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 27
  21003. --kraj
  21004.  
  21005. --ODLOZZENI PORESKI PRIHODI PERIODA
  21006. Set @IznosTekGod = 0
  21007. set @Iznos = 0
  21008. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '722%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21009. IF @Iznos is not null 
  21010.     set @IznosTekGod = @Iznos
  21011. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 28
  21012. --kraj
  21013.  
  21014. --ISPLACHENA LICHNA PRIMANJA POSLODAVCU
  21015. Set @IznosTekGod = 0
  21016. set @Iznos = 0
  21017. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '723%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21018. IF @Iznos is not null 
  21019.     set @IznosTekGod = @Iznos
  21020. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 29
  21021. --kraj
  21022.  
  21023.  
  21024. --zbir polinja
  21025. --Poslovni Prihodi      202 + 203 + 204 - 205 + 206
  21026. Set @IznosTekGod = 0
  21027. set @Iznos = 0
  21028. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 2          --202
  21029. IF @Iznos is not null 
  21030.     set @IznosTekGod = @Iznos
  21031. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 3            --203        
  21032. IF @Iznos is not null 
  21033.     set @IznosTekGod =@IznostekGod + @Iznos
  21034. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 4            --204
  21035. IF @Iznos is not null 
  21036.     set @IznosTekGod =@IznostekGod + @Iznos
  21037. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 5            --205
  21038. IF @Iznos is not null 
  21039.     set @IznosTekGod =@IznostekGod - @Iznos
  21040. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 6            --206
  21041. IF @Iznos is not null 
  21042.     set @IznosTekGod =@IznostekGod + @Iznos
  21043. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 1
  21044. --kraj
  21045.  
  21046. --Poslovni Rashodi      208 + 209 + 210 + 211 + 212
  21047. Set @IznosTekGod = 0
  21048. set @Iznos = 0
  21049. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 8          --208
  21050. IF @Iznos is not null 
  21051.     set @IznosTekGod = @Iznos
  21052. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 9            --209
  21053. IF @Iznos is not null 
  21054.     set @IznosTekGod =@IznostekGod + @Iznos
  21055. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 10            --210
  21056. IF @Iznos is not null 
  21057.     set @IznosTekGod =@IznostekGod + @Iznos
  21058. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 11            --211
  21059. IF @Iznos is not null 
  21060.     set @IznosTekGod =@IznostekGod + @Iznos
  21061. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 12            --212
  21062. IF @Iznos is not null 
  21063.     set @IznosTekGod =@IznostekGod + @Iznos
  21064. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 7
  21065. --kraj
  21066.  
  21067. --13 Poslovni dobitak 201 - 207
  21068. Set @IznosTekGod = 0
  21069. set @Iznos = 0
  21070. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 1          --201
  21071. IF @Iznos is not null 
  21072.     set @IznosTekGod = @Iznos
  21073. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 7          --207
  21074. IF @Iznos is not null 
  21075.     set @IznosTekGod =@IznostekGod - @Iznos
  21076. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 13
  21077. --kraj
  21078.  
  21079. --14 Poslovni gubitak 207 - 201
  21080. Set @IznosTekGod = 0
  21081. set @Iznos = 0
  21082. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 7        --207
  21083. IF @Iznos is not null 
  21084.     set @IznosTekGod = @Iznos
  21085. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 1          --201     
  21086. IF @Iznos is not null 
  21087.     set @IznosTekGod =@IznostekGod - @Iznos
  21088. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 14
  21089. --kraj
  21090.  
  21091. --19 Dobitak iz redovnog poslovanja pre oporezivanja (213 - 214 + 215 - 216 + 217 - 218)
  21092. Set @IznosTekGod = 0
  21093. set @Iznos = 0
  21094. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 13       --213
  21095. IF @Iznos is not null 
  21096.     set @IznosTekGod = @Iznos
  21097. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 14          --214    
  21098. IF @Iznos is not null 
  21099.     set @IznosTekGod =@IznostekGod - @Iznos
  21100. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 15          --215    
  21101. IF @Iznos is not null 
  21102.     set @IznosTekGod =@IznostekGod + @Iznos
  21103. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 16          --216
  21104. IF @Iznos is not null 
  21105.     set @IznosTekGod =@IznostekGod - @Iznos
  21106. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 17          --217
  21107. IF @Iznos is not null 
  21108.     set @IznosTekGod =@IznostekGod + @Iznos
  21109. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 18          --218
  21110. IF @Iznos is not null 
  21111.     set @IznosTekGod =@IznostekGod - @Iznos
  21112. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 19
  21113. --kraj
  21114.  
  21115. --20 Gubitak iz redovnog poslovanja pre oporezivanja (214 - 213 - 215 + 216 - 217 + 218)
  21116. Set @IznosTekGod = 0
  21117. set @Iznos = 0
  21118. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 14       --214
  21119. IF @Iznos is not null 
  21120.     set @IznosTekGod = @Iznos
  21121. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 13          --213    
  21122. IF @Iznos is not null 
  21123.     set @IznosTekGod =@IznostekGod - @Iznos
  21124. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 15          --215    
  21125. IF @Iznos is not null 
  21126.     set @IznosTekGod =@IznostekGod - @Iznos
  21127. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 16          --216
  21128. IF @Iznos is not null 
  21129.     set @IznosTekGod =@IznostekGod + @Iznos
  21130. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 17          --217
  21131. IF @Iznos is not null 
  21132.     set @IznosTekGod =@IznostekGod - @Iznos
  21133. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 18          --218
  21134. IF @Iznos is not null 
  21135.     set @IznosTekGod =@IznostekGod + @Iznos
  21136. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 20
  21137. --kraj
  21138.  
  21139. --23 Dobitak pre oporezivanja (219 - 220 + 221 - 222)
  21140. Set @IznosTekGod = 0
  21141. set @Iznos = 0
  21142. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 19       --219
  21143. IF @Iznos is not null 
  21144.     set @IznosTekGod = @Iznos
  21145. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 20          --220
  21146. IF @Iznos is not null 
  21147.     set @IznosTekGod =@IznostekGod - @Iznos
  21148. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 21          --221
  21149. IF @Iznos is not null 
  21150.     set @IznosTekGod =@IznostekGod + @Iznos
  21151. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 22          --222
  21152. IF @Iznos is not null 
  21153.     set @IznosTekGod =@IznostekGod - @Iznos
  21154. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 23
  21155. --kraj
  21156.  
  21157. --24 Gubitak pre oporezivanja (220 - 219 + 222 - 221)
  21158. Set @IznosTekGod = 0
  21159. set @Iznos = 0
  21160. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 20       --220
  21161. IF @Iznos is not null 
  21162.     set @IznosTekGod = @Iznos
  21163. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 19          --219
  21164. IF @Iznos is not null 
  21165.     set @IznosTekGod =@IznostekGod - @Iznos
  21166. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 22          --222
  21167. IF @Iznos is not null 
  21168.     set @IznosTekGod =@IznostekGod + @Iznos
  21169. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 21          --221
  21170. IF @Iznos is not null 
  21171.     set @IznosTekGod =@IznostekGod - @Iznos
  21172. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 24
  21173. --kraj
  21174.  
  21175. --30 Neto Dobitak (223 - 224 - 225 - 226 + 227 - 228)
  21176. Set @IznosTekGod = 0
  21177. set @Iznos = 0
  21178. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 23       --223
  21179. IF @Iznos is not null 
  21180.     set @IznosTekGod = @Iznos
  21181. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 24          --224
  21182. IF @Iznos is not null 
  21183.     set @IznosTekGod =@IznostekGod - @Iznos
  21184. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 26          --225
  21185. IF @Iznos is not null 
  21186.     set @IznosTekGod =@IznostekGod - @Iznos
  21187. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 27          --226
  21188. IF @Iznos is not null 
  21189.     set @IznosTekGod =@IznostekGod - @Iznos
  21190. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 28          --227
  21191. IF @Iznos is not null 
  21192.     set @IznosTekGod =@IznostekGod + @Iznos
  21193. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 29          --228
  21194. IF @Iznos is not null 
  21195.     set @IznosTekGod =@IznostekGod - @Iznos
  21196. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 30
  21197. --kraj
  21198.  
  21199. --31 Neto Gubitak (224 - 223 + 225 + 226 - 227 + 228)
  21200. Set @IznosTekGod = 0
  21201. set @Iznos = 0
  21202. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 24       --224
  21203. IF @Iznos is not null 
  21204.     set @IznosTekGod = @Iznos
  21205. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 23          --223
  21206. IF @Iznos is not null 
  21207.     set @IznosTekGod =@IznostekGod - @Iznos
  21208. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 26          --225
  21209. IF @Iznos is not null 
  21210.     set @IznosTekGod =@IznostekGod + @Iznos
  21211. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 27          --226
  21212. IF @Iznos is not null 
  21213.     set @IznosTekGod =@IznostekGod + @Iznos
  21214. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 28          --227
  21215. IF @Iznos is not null 
  21216.     set @IznosTekGod =@IznostekGod - @Iznos
  21217. select @Iznos = IznosTekGodina from #BilansUspeh where #BilansUspeh.id = 29          --228
  21218. IF @Iznos is not null 
  21219.     set @IznosTekGod =@IznostekGod + @Iznos
  21220. update #BilansUspeh set IznosTekGodina = round(@IznosTekGod, 0) where #BilansUspeh.id = 31
  21221. --kraj
  21222. update #BilansUspeh set IznosTekGodina = 0 where IznosTekGodina is null
  21223. select * from #Bilansuspeh
  21224.  
  21225.  
  21226.  
  21227.  
  21228.  
  21229.  
  21230.  
  21231.  
  21232.  
  21233.  
  21234.  
  21235. Go
  21236. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_bilsost]'))
  21237. drop procedure [dbo].[sp_bilsost]
  21238.  
  21239. Go
  21240. CREATE               PROCEDURE sp_BilSost
  21241.     @Datum_Od    smalldatetime,
  21242.     @Datum_Do    smalldatetime
  21243. AS
  21244.  
  21245. create table #BilSost
  21246. (
  21247. ID [int]IDENTITY (1, 1) NOT NULL,
  21248. rbr varchar(5),
  21249. Pozicija varchar(200),
  21250. OznakaNaAOP char(3),
  21251. SmetkiVoAOP varchar(100),
  21252. IznosPrehGodina decimal(18,2),
  21253. IznosTekGodBruto decimal(18,2), 
  21254. IznosTekGodNeto decimal(18,2)
  21255. )
  21256.  
  21257. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'A.', 'POBARUVAWA ZA ZAPI[AN A NEUPLATEN KAPITAL', '001'
  21258. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'B.','POSTOJANI SREDSTVA', '002'
  21259. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'I','NEMATERIJALNI SREDSTVA','003'
  21260. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'I.1','Osnova~ki izdatoci', '004', '011, 018d, 019d'
  21261. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'I.2','Izdatoci za istra`uvawe i razvoj', '005', '010, 018d, 019d'
  21262. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'I.3','Koncesii, patenti, licenci, za{titni znaci i sli~ni prava', '006', '013, 014, 018d, 019d'
  21263. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'I.4','Gudvil', '007', '012, 018d, 019d'
  21264. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'I.5','Avansi za nematerijalni sredstva', '008', '015, 016, 017'
  21265. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'II','MATERIJALNI SREDSTVA', '009'
  21266. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'II.1','Zemji{te i zgradi', '010', '020, 021, 024, 028d, 029d'
  21267. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'II.2','Postrojki i oprema', '011', '022, 028d, 029d'
  21268. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'II.3','Alat, pogonski i kancelariski inventar, mebel i transportni sredstva', '012', '023, 028d, 029d'
  21269. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'II.4','Avansi za materijalni sredstva i materijalni sredstva vo podgotovka', '013', '025, 026, 028d'
  21270. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'III','FINANSISKI SREDSTVA DOLGORO^NI', '014'
  21271. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.1','Vlo`uvawa (vo akcii i udeli) vo povrzani subjekti', '015', '040, 049d'
  21272. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.2','Zaemi na povrzani subjekti', '016', '041, 049d'
  21273. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.3','U~estvo vo vlo`uvawa(participacija)', '017', '043, 049d'
  21274. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.4','Zaemi so koi subjektot e povrzan vrz osnova na u~estvo vo vlo`uvaweto', '018', '042, 049d'
  21275. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.5','Vlo`uvawa vo dolgoro~ni hartii od vrednost', '019', '044, 049d'
  21276. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.6','Ostanati vlo`uvawa (dadeni krediti, depoziti, zadol`itelni dolgoro~ni vlo`uvawa)', '020', '045, 046, 048, 049d'
  21277. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.7','Otkupeni sopstveni akcii', '021', '047, 049d'
  21278. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'V','TEKOVNI SREDSTVA','022'
  21279. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'I.','ZALIHI', '023'
  21280. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '1.','Surovini i drugi materijali', '024', '31, 32, 35'
  21281. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.','Proizvodstvo vo tek (nedovr{eno proizvodstvo i poluproizvodi)', '025', '60'
  21282. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '3.','Trgovski stoki i gotovi proizvodi', '026', '63, 66'
  21283. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '4.','Avansi, depoziti i kaucii', '027', '37, 67'
  21284. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'II.','POBARUVAWA', '028'
  21285. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '1.','Pobaruvawa od kupuva~ite', '029', '120, 121, 129d'
  21286. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.','Pobaruvawa od povrzani subjekti', '030', '140, 142, 143, 144, 147, 149'
  21287. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '3.','Pobaruvawa od subjekti vrz osnova na u~estvo vo vlo`uvaweto', '031', '147d'
  21288. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '4.','Ostanati pobaruvawa', '032', '160, 161, 162, 163, 164, 167, 169d, 170, 171, 172, 173, 174, 177, 179d' 
  21289. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '5.','Plateni tro{oci za idnite periodi i nedostasana naplata na prihodi (AVR)', '033', '19'
  21290. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'III.','FINANSISKI VLO@UVAWA (KRATKORO^NI)', '034'
  21291. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '1.','Vlo`uvawa vo akcii i udeli vo povrzani subjekti', '035', '150, 159d'
  21292. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.','Otkupeni sopstveni akcii', '036', '154, 159d'
  21293. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '3.','Ostanati vlo`uvawa', '037', '151, 152, 153, 157, 159d'
  21294. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'IV.','PARI^NI SREDSTVA I HARTII OD VREDNOST', '038', '10, 11'
  21295. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'G.','VKUPNA AKTIVA (001+002+022)', '039'
  21296. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'D.','VONBILANSNA EVIDENCIJA AKTIVA', '040', '990 - 994'
  21297. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'A.','KAPITAL I REZERVI (042+043+044+045+050-051+052-053)','041'
  21298. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'I.','ZAPI[AN KAPITAL', '042', '90, 91'
  21299. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'II.','PREMII NA EMITIRANI AKCI', '043', '920'
  21300. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'III.','REVALORIZACIONA REZERVA', '044', '930'
  21301. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'IV.','REZERVI (od 046 do 049)', '045'
  21302. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '1.','Zakonski rezervi', '046', '940'
  21303. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.','Rezervi za sopstveni akcii', '047', '941'
  21304. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '3.','Statutarni rezervi', '048', '942'
  21305. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '4.','Ostanati rezervi', '049', '949'
  21306. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'V.','AKUMULIRANA DOBIVKA', '050', '950'
  21307. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'VI.','PRENESENA ZAGUBA', '051', '960'
  21308. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'VII.','DOBIVKA ZA FINANSISKATA GODINA', '052' , '951'
  21309. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'VIII.','ZAGUBA ZA FINANSISKATA GODINA', '053', '961'
  21310. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'B.','REZERVIRAWA ZA OBVRSKI I TRO[OCI (od 055 do 057)', '054'
  21311. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '1.','Rezervirawa za penzii i sli~ni obvrski', '055', '287'
  21312. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.','Rezervirawa za danoci', '056', '288'
  21313. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '3.','Ostanati rezervirawa', '057', '289'
  21314. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'V.','OBVRSKI SPREMA DOVERITELI(059++(od 064 do 071) ili 058 = (075+076))', '058'
  21315. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '1.','Obvrski po osnov na obvrznici', '', ''
  21316. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'a.','Obvrski po osnov na obi~ni obvrznici (061 + 062)', '060'
  21317. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'a.1','Dolgoro~ni obvrski po osnov na obi~ni obvrznici', '061', '285d'
  21318. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'a.2','Kratkoro~ni obvrski po osnov na obi~ni obvrznici', '062', '212'
  21319. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'b.','Obvrski po osnov na konvertibilni obvrznici', '063', '213, 285d'
  21320. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '2.','Obvrski po zaemi i krediti', '064', '281, 250, 251, 257'
  21321. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '3.','Obvrski za avansi, depoziti i kaucii', '065', '283, 223, 224'
  21322. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '4.','Obvrski sprema dobavuva~i (doveriteli po osnov na rabotewe)', '066', '284, 220, 221, 222'
  21323. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '5.','Obvrski za menici i ~ekovi', '067', '210, 211, 217'
  21324. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '6.','Obvrski sprema povrzani subjekti', '068', '280, 240, 242, 243, 244, 245'
  21325. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '7.','Obvrski sprema subjekti so koi subjektot e povrzan po osnov na u~estvo vo vlo`uvawata', '069', '282, 246, 249d'
  21326. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '8.','Ostanati obvrski vklu~uvaj}i go danokot i socijalnoto osiguruvawe', '070', '276, 270, 271, 272, 273, 274, 279d, 260, 261, 262, 263, 264, 265, 269, 285'
  21327. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '9','Obvrski po osnov na u~estvo vo rezultatot', '071', '247, 249d'
  21328. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select 'G.','ODLO@ENO PLA]AWE NA TRO[OCI I PRIHODI VO IDNITE PERIODI (PVR)', '072', '29'
  21329. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'D.','VKUPNA PASIVA (VKUPEN KAPITAL I OBVRSKI) (041+054+058+072)', '073'
  21330. insert into #BilSost(rbr, Pozicija, OznakaNaAOP, SmetkiVoAOP) select '\.','VONBILANSNA EVIDENCIJA - PASIVA', '074', '995-999'
  21331. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'I.','OBVRSKI SPREMA DOVERITELI (DOLGORO^NI)', '075'
  21332. insert into #BilSost(rbr, Pozicija, OznakaNaAOP) select 'II.','OBVRSKI SPREMA DOVERITELI (KRATKORO^NI)', '076'
  21333.  
  21334. Declare @IznosTekGod as decimal(18,2)
  21335. Declare @IznosPrehGod as decimal(18,2)
  21336. Declare @Iznos as decimal(18,2)
  21337. Declare @IznosP as decimal(18,2)
  21338. --001 pobaruvanja za zapishan a neuplatan kapital
  21339. Set @IznosTekGod = 0
  21340. set @IznosPrehGod = 0
  21341. set @Iznos = 0
  21342.  
  21343. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '000%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21344. IF @Iznos is not null 
  21345.     set @IznosTekGod = @Iznos
  21346. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '001%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21347. if @Iznos is not null 
  21348.     set @IznosTekGod = @IznosTekGod+@Iznos
  21349. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '002%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21350. if @Iznos is not null 
  21351.     set @IznosTekGod = @IznosTekGod+@Iznos
  21352. select @Iznos = sum (G.Pobaruva) from Gstav G where G.Kto_Anal like '003%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21353. if @Iznos is not null 
  21354.     set @IznosTekGod = @IznosTekGod+@Iznos
  21355. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 1
  21356. --kraj prihodi od prodazzba
  21357.  
  21358. --004 Oznovacki izdatoci
  21359. Set @IznosTekGod = 0
  21360. set @Iznos = 0
  21361.  
  21362. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '011%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21363. IF @Iznos is not null 
  21364.     set @IznosTekGod = @Iznos
  21365. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '018%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21366. --if @Iznos is not null 
  21367. --    set @IznosTekGod = @IznosTekGod+@Iznos
  21368. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '019%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21369. --if @Iznos is not null 
  21370. --    set @IznosTekGod = @IznosTekGod+@Iznos
  21371. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 4
  21372.  
  21373.  
  21374. --005 Izdatoci za istrazzuvanje i razvoj
  21375. Set @IznosTekGod = 0
  21376. set @Iznos = 0
  21377.  
  21378. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '010%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21379. IF @Iznos is not null 
  21380.     set @IznosTekGod = @Iznos
  21381. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '018%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21382. if @Iznos is not null 
  21383.     set @IznosTekGod = @IznosTekGod+@Iznos
  21384. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '019%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21385. if @Iznos is not null 
  21386.     set @IznosTekGod = @IznosTekGod+@Iznos
  21387. --update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 5
  21388.  
  21389. --006 Koncesii, patenti, licensi, zashtitni znaci i slichni prava
  21390. Set @IznosTekGod = 0
  21391. set @Iznos = 0
  21392.  
  21393. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '013%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21394. IF @Iznos is not null 
  21395.     set @IznosTekGod = @Iznos
  21396. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '014%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21397. if @Iznos is not null 
  21398.     set @IznosTekGod = @IznosTekGod+@Iznos
  21399. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '018%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21400. --if @Iznos is not null 
  21401. --    set @IznosTekGod = @IznosTekGod+@Iznos
  21402. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '019%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21403. --if @Iznos is not null 
  21404. --    set @IznosTekGod = @IznosTekGod+@Iznos
  21405. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 6
  21406.  
  21407. Set @IznosTekGod = 0
  21408. set @Iznos = 0
  21409. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '019%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21410. if @Iznos is not null 
  21411. set @IznosTekGod = @Iznos
  21412. update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 6
  21413.  
  21414. --007 Gudvil
  21415. Set @IznosTekGod = 0
  21416. set @Iznos = 0
  21417. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '012%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21418. IF @Iznos is not null 
  21419.     set @IznosTekGod = @Iznos
  21420. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '018%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21421. if @Iznos is not null 
  21422.     set @IznosTekGod = @IznosTekGod+@Iznos
  21423. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '019%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21424. if @Iznos is not null 
  21425.     set @IznosTekGod = @IznosTekGod+@Iznos
  21426. --update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 7
  21427.  
  21428. --008 Avansi za nematerijalni sredstva
  21429. Set @IznosTekGod = 0
  21430. set @Iznos = 0
  21431. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '015%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21432. IF @Iznos is not null 
  21433.     set @IznosTekGod = @Iznos
  21434. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '016%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21435. if @Iznos is not null 
  21436.     set @IznosTekGod = @IznosTekGod+@Iznos
  21437. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '017%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21438. if @Iznos is not null 
  21439.     set @IznosTekGod = @IznosTekGod+@Iznos
  21440. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 8
  21441.  
  21442. --010 Zemjiste i zgradi
  21443. Set @IznosTekGod = 0
  21444. set @Iznos = 0
  21445.  
  21446. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '020%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21447. IF @Iznos is not null 
  21448.     set @IznosTekGod = @Iznos
  21449. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '021%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21450. if @Iznos is not null 
  21451.     set @IznosTekGod = @IznosTekGod+@Iznos
  21452. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '024%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21453. if @Iznos is not null 
  21454.     set @IznosTekGod = @IznosTekGod+@Iznos
  21455. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '028%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21456. if @Iznos is not null 
  21457.     set @IznosTekGod = @IznosTekGod+@Iznos
  21458. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21459. --if @Iznos is not null 
  21460.     --set @IznosTekGod = @IznosTekGod+@Iznos
  21461. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 10
  21462.  
  21463. Set @IznosTekGod = 0
  21464. set @Iznos = 0
  21465. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029500' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21466. if @Iznos is not null 
  21467.     set @IznosTekGod = @Iznos
  21468. update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 10
  21469.  
  21470. --011 Postrojki i Oprema
  21471. Set @IznosTekGod = 0
  21472. set @Iznos = 0
  21473. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '022%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21474. IF @Iznos is not null 
  21475.     set @IznosTekGod = @Iznos
  21476. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '028%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21477. if @Iznos is not null 
  21478.     set @IznosTekGod = @IznosTekGod+@Iznos
  21479. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21480. --if @Iznos is not null 
  21481. --    set @IznosTekGod = @IznosTekGod+@Iznos
  21482. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 11
  21483.  
  21484. Set @IznosTekGod = 0
  21485. set @Iznos = 0
  21486. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029100' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21487.     if @Iznos is not null 
  21488.         set @IznosTekGod = @Iznos
  21489. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029110' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21490.     if @Iznos is not null 
  21491.         set @IznosTekGod = @IznosTekGod + @Iznos
  21492. update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 11
  21493.  
  21494. --012 Alat, pogonski i kancelariski invertar, mebel transportni sredstva
  21495. Set @IznosTekGod = 0
  21496. set @Iznos = 0
  21497. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '023%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21498. IF @Iznos is not null 
  21499.     set @IznosTekGod = @Iznos
  21500. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '028%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21501. if @Iznos is not null 
  21502.     set @IznosTekGod = @IznosTekGod+@Iznos
  21503. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21504. --if @Iznos is not null 
  21505.     --set @IznosTekGod = @IznosTekGod+@Iznos
  21506. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 12
  21507. Set @IznosTekGod = 0
  21508. set @Iznos = 0
  21509. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029200%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21510. if @Iznos is not null 
  21511.     set @IznosTekGod = @Iznos
  21512. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029210%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21513. if @Iznos is not null 
  21514.     set @IznosTekGod = @IznosTekGod+@Iznos
  21515. update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 12
  21516.  
  21517. --013 Alat, pogonski i kancelariski invertar, mebel transportni sredstva
  21518. Set @IznosTekGod = 0
  21519. set @Iznos = 0
  21520.  
  21521. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '025%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21522. IF @Iznos is not null 
  21523.     set @IznosTekGod = @Iznos
  21524. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '026%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21525. if @Iznos is not null 
  21526.     set @IznosTekGod = @IznosTekGod+@Iznos
  21527. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '028%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21528. if @Iznos is not null 
  21529.     set @IznosTekGod = @IznosTekGod+@Iznos
  21530. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21531. --if @Iznos is not null 
  21532.     --set @IznosTekGod = @IznosTekGod+@Iznos
  21533. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 13
  21534.  
  21535.  
  21536. --015 Vlozzuvanja (vo akcii i udeli) vo povrzani subjekti
  21537. Set @IznosTekGod = 0
  21538. set @Iznos = 0
  21539.  
  21540. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '040%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21541. IF @Iznos is not null 
  21542.     set @IznosTekGod = @Iznos
  21543. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '049%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21544. if @Iznos is not null 
  21545.     set @IznosTekGod = @IznosTekGod+@Iznos
  21546. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 15
  21547.  
  21548. --016 Zaemi na povrzani subjekti
  21549. Set @IznosTekGod = 0
  21550. set @Iznos = 0
  21551. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '041%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21552. IF @Iznos is not null 
  21553.     set @IznosTekGod = @Iznos
  21554. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '049%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21555. if @Iznos is not null 
  21556.     set @IznosTekGod = @IznosTekGod+@Iznos
  21557. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 16
  21558.  
  21559.  
  21560. --017 Ucestvo vo vlozzuvanja (participacija)
  21561. Set @IznosTekGod = 0
  21562. set @Iznos = 0
  21563.  
  21564. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '043%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21565. IF @Iznos is not null 
  21566.     set @IznosTekGod = @Iznos
  21567. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '049%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21568. if @Iznos is not null 
  21569.     set @IznosTekGod = @IznosTekGod+@Iznos
  21570. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 17
  21571.  
  21572.  
  21573. --018 Zaemi so koi subjektot e povrzan vrz osnova na ucestvo vo vlozzuvanjeto
  21574. Set @IznosTekGod = 0
  21575. set @Iznos = 0
  21576.  
  21577. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '042%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21578. IF @Iznos is not null 
  21579.     set @IznosTekGod = @Iznos
  21580. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '049%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21581. if @Iznos is not null 
  21582.     set @IznosTekGod = @IznosTekGod+@Iznos
  21583. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 18
  21584.  
  21585. --019 Vlozzuvanja vo dolgorocni hartii od vrednost
  21586. Set @IznosTekGod = 0
  21587. set @Iznos = 0
  21588.  
  21589. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '044%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21590. IF @Iznos is not null 
  21591.     set @IznosTekGod = @Iznos
  21592. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '049%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21593. if @Iznos is not null 
  21594.     set @IznosTekGod = @IznosTekGod+@Iznos
  21595. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 19
  21596.  
  21597. --020 Ostanati vlozuvanja (dadeni krediti, depoziti, zadolzzitelni dolgorocni vlozzuvanja)
  21598. Set @IznosTekGod = 0
  21599. set @Iznos = 0
  21600.  
  21601. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '045%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21602. IF @Iznos is not null 
  21603.     set @IznosTekGod = @Iznos
  21604. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '046%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21605. if @Iznos is not null 
  21606.     set @IznosTekGod = @IznosTekGod+@Iznos
  21607. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '048%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21608. if @Iznos is not null 
  21609.     set @IznosTekGod = @IznosTekGod+@Iznos
  21610. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '049%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21611. if @Iznos is not null 
  21612.     set @IznosTekGod = @IznosTekGod+@Iznos
  21613. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 20
  21614.  
  21615. --021 Otkupeni sopsveni akcii
  21616. Set @IznosTekGod = 0
  21617. set @Iznos = 0
  21618. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '047%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21619. IF @Iznos is not null 
  21620.     set @IznosTekGod = @Iznos
  21621. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '049%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21622. if @Iznos is not null 
  21623.     set @IznosTekGod = @IznosTekGod+@Iznos
  21624. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 21
  21625.  
  21626. --024 Surovini i drugi materijali
  21627. Set @IznosTekGod = 0
  21628. set @Iznos = 0
  21629.  
  21630. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '310%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21631. IF @Iznos is not null 
  21632.     set @IznosTekGod = @Iznos
  21633. --select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '319%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21634. --if @Iznos is not null 
  21635.     --set @IznosTekGod = @IznosTekGod+@Iznos
  21636. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '320%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21637. if @Iznos is not null 
  21638.     set @IznosTekGod = @IznosTekGod+@Iznos
  21639. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '350%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21640. if @Iznos is not null 
  21641.     set @IznosTekGod = @IznosTekGod+@Iznos
  21642. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '351%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21643. if @Iznos is not null 
  21644.     set @IznosTekGod = @IznosTekGod+@Iznos
  21645. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '352%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21646. if @Iznos is not null 
  21647.     set @IznosTekGod = @IznosTekGod+@Iznos
  21648. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '353%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21649. if @Iznos is not null 
  21650.     set @IznosTekGod = @IznosTekGod+@Iznos
  21651. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 24
  21652.  
  21653. Set @IznosTekGod = 0
  21654. set @Iznos = 0
  21655. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '319%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21656. IF @Iznos is not null 
  21657.     set @IznosTekGod = @Iznos
  21658. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '357%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do 
  21659. if @Iznos is not null 
  21660.     set @IznosTekGod = @IznosTekGod+@Iznos
  21661. update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 24
  21662.  
  21663. --025 Proizvodstvo vo tek (nedovrseno proizvodstvo i poluproizvodi)
  21664. Set @IznosTekGod = 0
  21665. set @Iznos = 0
  21666. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '060%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21667. IF @Iznos is not null 
  21668.     set @IznosTekGod = @Iznos
  21669. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 25
  21670.  
  21671. --026 trgovski stoki i gotovi proizvdi
  21672. Set @IznosTekGod = 0
  21673. set @Iznos = 0
  21674.  
  21675. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '660%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21676. IF @Iznos is not null 
  21677.     set @IznosTekGod = @Iznos
  21678. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '663%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21679. IF @Iznos is not null 
  21680.     set @IznosTekGod = @IznosTekGod + @Iznos
  21681. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '630%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21682. IF @Iznos is not null 
  21683.     set @IznosTekGod = @IznosTekGod + @Iznos
  21684. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 26
  21685.  
  21686. Set @IznosTekGod = 0
  21687. set @Iznos = 0
  21688. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '664%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21689. IF @Iznos is not null 
  21690.     set @IznosTekGod = @Iznos
  21691. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '669%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21692. IF @Iznos is not null 
  21693.     set @IznosTekGod = @IznosTekGod + @Iznos
  21694. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '639%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21695. IF @Iznos is not null 
  21696.     set @IznosTekGod = @IznosTekGod + @Iznos
  21697. update #BilSost set IznosPrehGodina = round(@IznosTekGod, 0) where #BilSost.id = 26
  21698.  
  21699. --027 Avansi i, depoziti i kaucii
  21700. Set @IznosTekGod = 0
  21701. set @Iznos = 0
  21702. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '037%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21703. IF @Iznos is not null 
  21704.     set @IznosTekGod = @Iznos
  21705. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '67%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21706. IF @Iznos is not null 
  21707.     set @IznosTekGod = @IznosTekGod + @Iznos
  21708. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 27
  21709.  
  21710. --029 Pobaruvawa od kupuvacite
  21711. Set @IznosTekGod = 0
  21712. set @Iznos = 0
  21713.  
  21714. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '120%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21715. IF @Iznos is not null 
  21716.     set @IznosTekGod = @Iznos
  21717. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '121%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21718. IF @Iznos is not null 
  21719.     set @IznosTekGod = @IznosTekGod + @Iznos
  21720. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '129%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21721. IF @Iznos is not null 
  21722.     set @IznosTekGod = @IznosTekGod + @Iznos
  21723. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 29
  21724.  
  21725. --030 Pobaruvawa od kupuvacite
  21726. Set @IznosTekGod = 0
  21727. set @Iznos = 0
  21728. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '140%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21729. IF @Iznos is not null 
  21730.     set @IznosTekGod = @Iznos
  21731. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '142%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21732. IF @Iznos is not null 
  21733.     set @IznosTekGod = @IznosTekGod + @Iznos
  21734. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '143%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21735. IF @Iznos is not null 
  21736.     set @IznosTekGod = @IznosTekGod + @Iznos
  21737. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '144%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21738. IF @Iznos is not null 
  21739.     set @IznosTekGod = @IznosTekGod + @Iznos
  21740. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '147%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21741. IF @Iznos is not null 
  21742.     set @IznosTekGod = @IznosTekGod + @Iznos
  21743. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '149%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21744. IF @Iznos is not null 
  21745.     set @IznosTekGod = @IznosTekGod + @Iznos
  21746. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 30
  21747.  
  21748. --031 Pobaruvanja od subjekti brz osnova na ucestvo vo vlozzuvanjeto
  21749. Set @IznosTekGod = 0
  21750. set @Iznos = 0
  21751. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '147%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21752. IF @Iznos is not null 
  21753.     set @IznosTekGod = @Iznos
  21754. --update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 31
  21755.  
  21756.  
  21757. --032 Ostanati pobaruvanja
  21758. Set @IznosTekGod = 0
  21759. set @Iznos = 0
  21760.  
  21761. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '160%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21762. IF @Iznos is not null 
  21763.     set @IznosTekGod = @Iznos
  21764. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '161%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21765. IF @Iznos is not null 
  21766.     set @IznosTekGod = @IznosTekGod + @Iznos
  21767. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '162%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21768. IF @Iznos is not null 
  21769.     set @IznosTekGod = @IznosTekGod + @Iznos
  21770. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '163%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21771. IF @Iznos is not null 
  21772.     set @IznosTekGod = @IznosTekGod + @Iznos
  21773. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '164%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21774. IF @Iznos is not null 
  21775.     set @IznosTekGod = @IznosTekGod + @Iznos
  21776. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '167%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21777. IF @Iznos is not null 
  21778.     set @IznosTekGod = @IznosTekGod + @Iznos
  21779. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '169%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21780. IF @Iznos is not null 
  21781.     set @IznosTekGod = @IznosTekGod + @Iznos
  21782. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '170%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21783. IF @Iznos is not null 
  21784.     set @IznosTekGod = @IznosTekGod + @Iznos
  21785. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '171%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21786. IF @Iznos is not null 
  21787.     set @IznosTekGod = @IznosTekGod + @Iznos
  21788. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '172%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21789. IF @Iznos is not null 
  21790.     set @IznosTekGod = @IznosTekGod + @Iznos
  21791. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '173%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21792. IF @Iznos is not null 
  21793.     set @IznosTekGod = @IznosTekGod + @Iznos
  21794. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '174%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21795. IF @Iznos is not null 
  21796.     set @IznosTekGod = @IznosTekGod + @Iznos
  21797. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '177%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21798. IF @Iznos is not null 
  21799.     set @IznosTekGod = @IznosTekGod + @Iznos
  21800. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '179%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21801. IF @Iznos is not null 
  21802.     set @IznosTekGod = @IznosTekGod + @Iznos
  21803. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 32
  21804.  
  21805.  
  21806. --033 Plateni trosoci za idnite periodi i nedostasana naplata na prihodi (AVR)
  21807. Set @IznosTekGod = 0
  21808. set @Iznos = 0
  21809. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '190%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21810. IF @Iznos is not null 
  21811.     set @IznosTekGod = @Iznos
  21812. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '191%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21813. IF @Iznos is not null 
  21814.     set @IznosTekGod = @IznosTekGod + @Iznos
  21815. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '192%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21816. IF @Iznos is not null 
  21817.     set @IznosTekGod = @IznosTekGod + @Iznos
  21818. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '194%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21819. IF @Iznos is not null 
  21820.     set @IznosTekGod = @IznosTekGod + @Iznos
  21821. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '197%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21822. IF @Iznos is not null 
  21823.     set @IznosTekGod = @IznosTekGod + @Iznos
  21824. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 33
  21825.  
  21826. --035 Vlozzuvanja (vo akcii i udeli) vo povrzani subjekti
  21827. Set @IznosTekGod = 0
  21828. set @Iznos = 0
  21829. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '150%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21830. IF @Iznos is not null 
  21831.     set @IznosTekGod = @Iznos
  21832. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '159%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21833. IF @Iznos is not null 
  21834.     set @IznosTekGod =@IznosTekGod + @Iznos
  21835. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 35
  21836.  
  21837. --036 Otkupeni sopstveni akcii
  21838. Set @IznosTekGod = 0
  21839. set @Iznos = 0
  21840.  
  21841. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '154%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21842. IF @Iznos is not null 
  21843.     set @IznosTekGod = @Iznos
  21844. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '159%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21845. IF @Iznos is not null 
  21846.     set @IznosTekGod =@IznosTekGod + @Iznos
  21847. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 36
  21848.  
  21849. --037 Ostanati vlozzuvanja
  21850. Set @IznosTekGod = 0
  21851. set @Iznos = 0
  21852.  
  21853. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '151%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21854. IF @Iznos is not null 
  21855.     set @IznosTekGod = @Iznos
  21856.  
  21857. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '152%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21858. IF @Iznos is not null 
  21859.     set @IznosTekGod =@IznosTekGod + @Iznos
  21860. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '153%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21861. IF @Iznos is not null 
  21862.     set @IznosTekGod =@IznosTekGod + @Iznos
  21863. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '157%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21864. IF @Iznos is not null 
  21865.     set @IznosTekGod =@IznosTekGod + @Iznos
  21866. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '159%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21867. IF @Iznos is not null 
  21868.     set @IznosTekGod =@IznosTekGod + @Iznos
  21869.  
  21870. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 37
  21871.  
  21872. --038 Paricni sredstva i hartii od vrednost
  21873. Set @IznosTekGod = 0
  21874. set @Iznos = 0
  21875.  
  21876. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '100%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21877. IF @Iznos is not null 
  21878.     set @IznosTekGod = @Iznos
  21879. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '102%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21880. IF @Iznos is not null 
  21881.     set @IznosTekGod =@IznosTekGod + @Iznos
  21882. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '103%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21883. IF @Iznos is not null 
  21884.     set @IznosTekGod =@IznosTekGod + @Iznos
  21885. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '104%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21886. IF @Iznos is not null 
  21887.     set @IznosTekGod =@IznosTekGod + @Iznos
  21888. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '107%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21889. IF @Iznos is not null 
  21890.     set @IznosTekGod =@IznosTekGod + @Iznos
  21891. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '110%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21892. IF @Iznos is not null 
  21893.     set @IznosTekGod =@IznosTekGod + @Iznos
  21894. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 38
  21895.  
  21896.  
  21897. --040 Vonbilansna evidencija - aktiva
  21898. Set @IznosTekGod = 0
  21899. set @Iznos = 0
  21900.  
  21901. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '990%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21902. IF @Iznos is not null 
  21903.     set @IznosTekGod = @Iznos
  21904. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '991%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21905. IF @Iznos is not null 
  21906.     set @IznosTekGod =@IznosTekGod + @Iznos
  21907. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '992%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21908. IF @Iznos is not null 
  21909.     set @IznosTekGod =@IznosTekGod + @Iznos
  21910. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '993%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21911. IF @Iznos is not null 
  21912.     set @IznosTekGod =@IznosTekGod + @Iznos
  21913. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '994%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21914. IF @Iznos is not null 
  21915.     set @IznosTekGod =@IznosTekGod + @Iznos
  21916.  
  21917. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 40
  21918.  
  21919. --042 Zapisan Kapital
  21920. Set @IznosTekGod = 0
  21921. set @Iznos = 0
  21922.  
  21923. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '912%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21924. IF @Iznos is not null 
  21925.     set @IznosTekGod = @Iznos
  21926. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '919%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21927. IF @Iznos is not null 
  21928.     set @IznosTekGod =@IznosTekGod + @Iznos
  21929.  
  21930. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 42
  21931.  
  21932. --043 Premii na emitirani akcii
  21933. Set @IznosTekGod = 0
  21934. set @Iznos = 0
  21935.  
  21936. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '920%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21937. IF @Iznos is not null 
  21938.     set @IznosTekGod = @Iznos
  21939. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 43
  21940.  
  21941. --044 Revaloriziciona rezerva
  21942. Set @IznosTekGod = 0
  21943. set @Iznos = 0
  21944.  
  21945. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '930%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21946. IF @Iznos is not null 
  21947.     set @IznosTekGod = @Iznos
  21948. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 44
  21949.  
  21950. --046 Zakonski Rezervi
  21951. Set @IznosTekGod = 0
  21952. set @Iznos = 0
  21953.  
  21954. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '940%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21955. IF @Iznos is not null 
  21956.     set @IznosTekGod = @Iznos
  21957. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 46
  21958.  
  21959. --047 Rezervi za sopstveni akcii
  21960. Set @IznosTekGod = 0
  21961. set @Iznos = 0
  21962.  
  21963. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '941%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21964. IF @Iznos is not null 
  21965.     set @IznosTekGod = @Iznos
  21966. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 47
  21967.  
  21968. --048 Statutarni rezervi
  21969. Set @IznosTekGod = 0
  21970. set @Iznos = 0
  21971.  
  21972. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '942%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21973. IF @Iznos is not null 
  21974.     set @IznosTekGod = @Iznos
  21975. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 48
  21976.  
  21977. --049 Ostanati rezervi
  21978. Set @IznosTekGod = 0
  21979. set @Iznos = 0
  21980.  
  21981. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '949%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21982. IF @Iznos is not null 
  21983.     set @IznosTekGod = @Iznos
  21984. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 49
  21985.  
  21986.  
  21987. --050 Akumulirana dobivka
  21988. Set @IznosTekGod = 0
  21989. set @Iznos = 0
  21990.  
  21991. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '950%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  21992. IF @Iznos is not null 
  21993.     set @IznosTekGod = @Iznos
  21994. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 50
  21995.  
  21996. --051 Prenesena zaguba
  21997. Set @IznosTekGod = 0
  21998. set @Iznos = 0
  21999.  
  22000. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '960%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22001. IF @Iznos is not null 
  22002.     set @IznosTekGod = @Iznos
  22003. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 51
  22004.  
  22005. --052 Dobivka za finansiskata godina
  22006. Set @IznosTekGod = 0
  22007. set @Iznos = 0
  22008.  
  22009. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '951%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22010. IF @Iznos is not null 
  22011.     set @IznosTekGod = @Iznos
  22012. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 52
  22013.  
  22014. --053 Zaguba za finansiskata godina
  22015. Set @IznosTekGod = 0
  22016. set @Iznos = 0
  22017.  
  22018. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '961%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22019. IF @Iznos is not null 
  22020.     set @IznosTekGod = @Iznos
  22021. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 53
  22022. --select * from #BilSost
  22023.  
  22024. --055 Rezervirawa za penzii slicni obvrski
  22025. Set @IznosTekGod = 0
  22026. set @Iznos = 0
  22027.  
  22028. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '287%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22029. IF @Iznos is not null 
  22030.     set @IznosTekGod = @Iznos
  22031. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 55
  22032.  
  22033. --056 Rezervirawa za danoci
  22034. Set @IznosTekGod = 0
  22035. set @Iznos = 0
  22036.  
  22037. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '288%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22038. IF @Iznos is not null 
  22039.     set @IznosTekGod = @Iznos
  22040. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 56
  22041.  
  22042.  
  22043. --057 Ostanati rezerviranja
  22044. Set @IznosTekGod = 0
  22045. set @Iznos = 0
  22046.  
  22047. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '289%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22048. IF @Iznos is not null 
  22049.     set @IznosTekGod = @Iznos
  22050. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 57
  22051.  
  22052. --061 Dolgorocni obvrski po osnov na obicni obvrznici
  22053. Set @IznosTekGod = 0
  22054. set @Iznos = 0
  22055.  
  22056. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '285%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22057. IF @Iznos is not null 
  22058.     set @IznosTekGod = @Iznos
  22059. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 61
  22060.  
  22061.  
  22062. --062 Kratkorocni obvrski po osnov na obicni obvrznici
  22063. Set @IznosTekGod = 0
  22064. set @Iznos = 0
  22065.  
  22066. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '212%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22067. IF @Iznos is not null 
  22068.     set @IznosTekGod = @Iznos
  22069. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 62
  22070.  
  22071. --063 Obvrski po osnov na konvertibilni obvrznici
  22072. Set @IznosTekGod = 0
  22073. set @Iznos = 0
  22074.  
  22075. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '213%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22076. IF @Iznos is not null 
  22077.     set @IznosTekGod = @Iznos
  22078. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '285%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22079. IF @Iznos is not null 
  22080.     set @IznosTekGod = @IznosTekGod + @Iznos
  22081.  
  22082. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 63
  22083.  
  22084. --064 Obvrski po  zaemi i krediti
  22085. Set @IznosTekGod = 0
  22086. set @Iznos = 0
  22087.  
  22088. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '281%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22089. IF @Iznos is not null 
  22090.     set @IznosTekGod = @Iznos
  22091. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '250%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22092. IF @Iznos is not null 
  22093.     set @IznosTekGod = @IznosTekGod + @Iznos
  22094. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '251%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22095. IF @Iznos is not null 
  22096.     set @IznosTekGod = @IznosTekGod + @Iznos
  22097. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '257%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22098. IF @Iznos is not null 
  22099.     set @IznosTekGod = @IznosTekGod + @Iznos
  22100.  
  22101. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 64
  22102.  
  22103. --065 Obvrski za avansi, depoziti i kaucii
  22104. Set @IznosTekGod = 0
  22105. set @Iznos = 0
  22106.  
  22107. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '283%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22108. IF @Iznos is not null 
  22109.     set @IznosTekGod = @Iznos
  22110. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '223%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22111. IF @Iznos is not null 
  22112.     set @IznosTekGod = @IznosTekGod + @Iznos
  22113. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '224%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22114. IF @Iznos is not null 
  22115.     set @IznosTekGod = @IznosTekGod + @Iznos
  22116.  
  22117. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 65
  22118.  
  22119. --066 Obvrski sprema dobavuvaci (doveriteli po osnoav na dobavuvaci)
  22120. Set @IznosTekGod = 0
  22121. set @Iznos = 0
  22122.  
  22123. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '284%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22124. IF @Iznos is not null 
  22125.     set @IznosTekGod = @Iznos
  22126. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '220%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22127. IF @Iznos is not null 
  22128.     set @IznosTekGod = @IznosTekGod + @Iznos
  22129. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '221%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22130. IF @Iznos is not null 
  22131.     set @IznosTekGod = @IznosTekGod + @Iznos
  22132. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '222%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22133. IF @Iznos is not null 
  22134.     set @IznosTekGod = @IznosTekGod + @Iznos
  22135.  
  22136. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 66
  22137.  
  22138.  
  22139. --067 Obvrski za menici i cekovi
  22140. Set @IznosTekGod = 0
  22141. set @Iznos = 0
  22142.  
  22143. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '210%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22144. IF @Iznos is not null 
  22145.     set @IznosTekGod = @Iznos
  22146. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '211%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22147. IF @Iznos is not null 
  22148.     set @IznosTekGod = @IznosTekGod + @Iznos
  22149. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '217%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22150. IF @Iznos is not null 
  22151.     set @IznosTekGod = @IznosTekGod + @Iznos
  22152.  
  22153. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 67
  22154.  
  22155. --068 Obvrski sprema povrzani subjekti
  22156. Set @IznosTekGod = 0
  22157. set @Iznos = 0
  22158.  
  22159. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '280%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22160. IF @Iznos is not null 
  22161.     set @IznosTekGod = @Iznos
  22162. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '240%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22163. IF @Iznos is not null 
  22164.     set @IznosTekGod = @IznosTekGod + @Iznos
  22165. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '242%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22166. IF @Iznos is not null 
  22167.     set @IznosTekGod = @IznosTekGod + @Iznos
  22168. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '243%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22169. IF @Iznos is not null 
  22170.     set @IznosTekGod = @IznosTekGod + @Iznos
  22171. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '244%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22172. IF @Iznos is not null 
  22173.     set @IznosTekGod = @IznosTekGod + @Iznos
  22174. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '245%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22175. IF @Iznos is not null 
  22176.     set @IznosTekGod = @IznosTekGod + @Iznos
  22177. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 68
  22178.  
  22179. --069 Obvrski sprema subjekti so koi subjektot e povrzan po osnov na ucestvo vo vlozzuvanjata
  22180. Set @IznosTekGod = 0
  22181. set @Iznos = 0
  22182.  
  22183. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '282%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22184. IF @Iznos is not null 
  22185.     set @IznosTekGod = @Iznos
  22186. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '246%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22187. IF @Iznos is not null 
  22188.     set @IznosTekGod = @IznosTekGod + @Iznos
  22189. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '249%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22190. IF @Iznos is not null 
  22191.     set @IznosTekGod = @IznosTekGod + @Iznos
  22192. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 69
  22193.  
  22194. --070 Ostanati obvrski vklucivajki go danokot i socijalnoto osiguruvanje
  22195. Set @IznosTekGod = 0
  22196. set @Iznos = 0
  22197.  
  22198. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '276%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22199. IF @Iznos is not null 
  22200.     set @IznosTekGod = @Iznos
  22201. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '270%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22202. IF @Iznos is not null 
  22203.     set @IznosTekGod = @IznosTekGod + @Iznos
  22204. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '271%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22205. IF @Iznos is not null 
  22206.     set @IznosTekGod = @IznosTekGod + @Iznos
  22207. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '272%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22208. IF @Iznos is not null 
  22209.     set @IznosTekGod = @IznosTekGod + @Iznos
  22210. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '273%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22211. IF @Iznos is not null 
  22212.     set @IznosTekGod = @IznosTekGod + @Iznos
  22213. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '274%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22214. IF @Iznos is not null 
  22215.     set @IznosTekGod = @IznosTekGod + @Iznos
  22216. --select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '279%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22217. --IF @Iznos is not null 
  22218.     --set @IznosTekGod = @IznosTekGod + @Iznos
  22219. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '260%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22220. IF @Iznos is not null 
  22221.     set @IznosTekGod = @IznosTekGod + @Iznos
  22222. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '261%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22223. IF @Iznos is not null 
  22224.     set @IznosTekGod = @IznosTekGod + @Iznos
  22225. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '262%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22226. IF @Iznos is not null 
  22227.     set @IznosTekGod = @IznosTekGod + @Iznos
  22228. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '263%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22229. IF @Iznos is not null 
  22230.     set @IznosTekGod = @IznosTekGod + @Iznos
  22231. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '264%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22232. IF @Iznos is not null 
  22233.     set @IznosTekGod = @IznosTekGod + @Iznos
  22234. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '265%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22235. IF @Iznos is not null 
  22236.     set @IznosTekGod = @IznosTekGod + @Iznos
  22237. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '269%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22238. IF @Iznos is not null 
  22239.     set @IznosTekGod = @IznosTekGod + @Iznos
  22240. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '285%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22241. IF @Iznos is not null 
  22242.     set @IznosTekGod = @IznosTekGod + @Iznos
  22243. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 70
  22244.  
  22245. --071 obvrski po osnov na ucestvo vo rezultatot
  22246. Set @IznosTekGod = 0
  22247. set @Iznos = 0
  22248.  
  22249. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '247%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22250. IF @Iznos is not null 
  22251.     set @IznosTekGod = @Iznos
  22252. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '249%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22253. IF @Iznos is not null 
  22254.     set @IznosTekGod = @IznosTekGod + @Iznos
  22255.  
  22256.  
  22257. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 71
  22258.  
  22259. --072 odlozzeno plakjane na trosoci i prihodi vo idnite periodi
  22260. Set @IznosTekGod = 0
  22261. set @Iznos = 0
  22262. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '29%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22263. IF @Iznos is not null 
  22264.     set @IznosTekGod = @Iznos
  22265.  
  22266. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 72
  22267.  
  22268. --074 Vonbilansna evidencija - pasiva
  22269. Set @IznosTekGod = 0
  22270. set @Iznos = 0
  22271.  
  22272. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '995%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22273. IF @Iznos is not null 
  22274.     set @IznosTekGod = @Iznos
  22275. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '996%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22276. IF @Iznos is not null 
  22277.     set @IznosTekGod =@IznosTekGod + @Iznos
  22278. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '997%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22279. IF @Iznos is not null 
  22280.     set @IznosTekGod =@IznosTekGod + @Iznos
  22281. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '998%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22282. IF @Iznos is not null 
  22283.     set @IznosTekGod =@IznosTekGod + @Iznos
  22284. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '999%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22285. IF @Iznos is not null 
  22286.     set @IznosTekGod =@IznosTekGod + @Iznos
  22287. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 74
  22288.  
  22289. --075 Obvrski sprema doveriteli (dolgorocni)
  22290. Set @IznosTekGod = 0
  22291. set @Iznos = 0
  22292.  
  22293. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '287%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22294. IF @Iznos is not null 
  22295.     set @IznosTekGod = @Iznos
  22296. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '288%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22297. IF @Iznos is not null 
  22298.     set @IznosTekGod =@IznosTekGod + @Iznos
  22299. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '289%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22300. IF @Iznos is not null 
  22301.     set @IznosTekGod =@IznosTekGod + @Iznos
  22302. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '285%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22303. IF @Iznos is not null 
  22304.     set @IznosTekGod =@IznosTekGod + @Iznos
  22305. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '281%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22306. IF @Iznos is not null 
  22307.     set @IznosTekGod =@IznosTekGod + @Iznos
  22308. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0) where #BilSost.id = 75
  22309.  
  22310.  
  22311.  
  22312.  
  22313. --nematerijalni sredstva
  22314. Set @IznosTekGod = 0
  22315. Set @IznosPrehGod = 0
  22316. set @Iznos = 0
  22317. set @IznosP = 0
  22318. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 4
  22319.      IF @Iznos is not null 
  22320.         set @IznosTekGod = @Iznos
  22321.     IF @IznosP is not null 
  22322.         set @IznosPrehGod = @IznosP
  22323. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 5
  22324.      IF @Iznos is not null 
  22325.         set @IznosTekGod =@IznostekGod + @Iznos
  22326.     IF @IznosP is not null 
  22327.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22328. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 6
  22329.      IF @Iznos is not null 
  22330.         set @IznosTekGod =@IznostekGod + @Iznos
  22331.     IF @IznosP is not null 
  22332.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22333. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 7
  22334.      IF @Iznos is not null 
  22335.         set @IznosTekGod =@IznostekGod + @Iznos
  22336.     IF @IznosP is not null 
  22337.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22338. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 8
  22339.      IF @Iznos is not null 
  22340.         set @IznosTekGod =@IznostekGod + @Iznos
  22341.     IF @IznosP is not null 
  22342.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22343. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 3
  22344. --print @IznosTekGod
  22345. --materijalni sredstva
  22346. Set @IznosTekGod = 0
  22347. Set @IznosPrehGod = 0
  22348. set @Iznos = 0
  22349. set @IznosP = 0
  22350. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 10
  22351.     IF @Iznos is not null 
  22352.         set @IznosTekGod = @Iznos
  22353.     IF @IznosP is not null 
  22354.         set @IznosPrehGod = @IznosP
  22355. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 11
  22356.     IF @Iznos is not null 
  22357.         set @IznosTekGod =@IznostekGod + @Iznos
  22358.     IF @IznosP is not null 
  22359.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22360. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 12
  22361.     IF @Iznos is not null 
  22362.         set @IznosTekGod =@IznostekGod + @Iznos
  22363.     IF @IznosP is not null 
  22364.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22365. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 13
  22366.     IF @Iznos is not null 
  22367.         set @IznosTekGod =@IznostekGod + @Iznos
  22368.     IF @IznosP is not null 
  22369.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22370. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 9
  22371.  
  22372. --finansiski sredstva dolgorocni
  22373. Set @IznosTekGod = 0
  22374. Set @IznosPrehGod = 0
  22375. set @Iznos = 0
  22376. set @IznosP = 0
  22377. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 15
  22378.     IF @Iznos is not null 
  22379.         set @IznosTekGod = @Iznos
  22380.     IF @IznosP is not null 
  22381.         set @IznosPrehGod = @IznosP
  22382. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 16
  22383.     IF @Iznos is not null 
  22384.         set @IznosTekGod =@IznostekGod + @Iznos
  22385.     IF @IznosP is not null 
  22386.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22387. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 17
  22388.     IF @Iznos is not null 
  22389.         set @IznosTekGod =@IznostekGod + @Iznos
  22390.     IF @IznosP is not null 
  22391.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22392. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 18
  22393.     IF @Iznos is not null 
  22394.         set @IznosTekGod =@IznostekGod + @Iznos
  22395.     IF @IznosP is not null 
  22396.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22397. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 19
  22398.     IF @Iznos is not null 
  22399.         set @IznosTekGod =@IznostekGod + @Iznos
  22400.     IF @IznosP is not null 
  22401.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22402. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 20
  22403.     IF @Iznos is not null 
  22404.         set @IznosTekGod =@IznostekGod + @Iznos
  22405.     IF @IznosP is not null 
  22406.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22407. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 21
  22408.     IF @Iznos is not null 
  22409.         set @IznosTekGod =@IznostekGod + @Iznos
  22410.     IF @IznosP is not null 
  22411.         set @IznosPrehGod = @IznosPrehGod + @IznosP
  22412. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 14
  22413.  
  22414. --zbir polinja
  22415. --postojani sredstva
  22416. Set @IznosTekGod = 0
  22417. Set @IznosPrehGod = 0
  22418. set @Iznos = 0
  22419. set @IznosP = 0
  22420. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 3
  22421.     IF @Iznos is not null 
  22422.         set @IznosTekGod = @Iznos
  22423.     IF @IznosP is not null 
  22424.         set @IznosPrehGod = @IznosP
  22425. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 9
  22426.     IF @Iznos is not null 
  22427.         set @IznosTekGod =@IznostekGod + @Iznos
  22428.     IF @IznosP is not null 
  22429.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22430. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 14
  22431.     IF @Iznos is not null 
  22432.         set @IznosTekGod =@IznostekGod + @Iznos
  22433.     IF @IznosP is not null 
  22434.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22435. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 2
  22436.  
  22437. --Zalihi
  22438. Set @IznosTekGod = 0
  22439. Set @IznosPrehGod = 0
  22440. set @Iznos = 0
  22441. set @IznosP = 0
  22442. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 24
  22443.     IF @Iznos is not null 
  22444.         set @IznosTekGod = @Iznos
  22445.     IF @IznosP is not null 
  22446.         set @IznosPrehGod =@IznosP
  22447. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 25
  22448.     IF @Iznos is not null 
  22449.         set @IznosTekGod =@IznostekGod + @Iznos
  22450.     IF @IznosP is not null 
  22451.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22452. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 26
  22453.     IF @Iznos is not null 
  22454.         set @IznosTekGod =@IznostekGod + @Iznos
  22455.     IF @IznosP is not null 
  22456.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22457. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 27
  22458.     IF @Iznos is not null 
  22459.         set @IznosTekGod =@IznostekGod + @Iznos
  22460.     IF @IznosP is not null 
  22461.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22462. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 23
  22463.  
  22464. --Pobaruvanja
  22465. Set @IznosTekGod = 0
  22466. Set @IznosPrehGod = 0
  22467. set @Iznos = 0
  22468. set @IznosP = 0
  22469. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 29
  22470.     IF @Iznos is not null 
  22471.         set @IznosTekGod = @Iznos
  22472.     IF @IznosP is not null 
  22473.         set @IznosPrehGod = @IznosP
  22474. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 30
  22475.     IF @Iznos is not null 
  22476.         set @IznosTekGod =@IznostekGod + @Iznos
  22477.     IF @IznosP is not null 
  22478.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22479. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 31
  22480.     IF @Iznos is not null 
  22481.         set @IznosTekGod =@IznostekGod + @Iznos
  22482.     IF @IznosP is not null 
  22483.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22484. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 32
  22485.    IF @Iznos is not null 
  22486.         set @IznosTekGod =@IznostekGod + @Iznos
  22487.     IF @IznosP is not null 
  22488.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22489. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 33
  22490.    IF @Iznos is not null 
  22491.         set @IznosTekGod =@IznostekGod + @Iznos
  22492.     IF @IznosP is not null 
  22493.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22494. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 28
  22495. --Finansiski vlozzuvanja kratkorocni
  22496. Set @IznosTekGod = 0
  22497. Set @IznosPrehGod = 0
  22498. set @Iznos = 0
  22499. set @IznosP = 0
  22500. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 35
  22501.      IF @Iznos is not null 
  22502.         set @IznosTekGod = @Iznos
  22503.     IF @IznosP is not null 
  22504.         set @IznosPrehGod =  @IznosP
  22505. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 36
  22506.      IF @Iznos is not null 
  22507.         set @IznosTekGod =@IznostekGod + @Iznos
  22508.     IF @IznosP is not null 
  22509.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22510. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 37
  22511.     IF @Iznos is not null 
  22512.         set @IznosTekGod =@IznostekGod + @Iznos
  22513.     IF @IznosP is not null 
  22514.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22515. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 34
  22516.  
  22517. --Tekovni sredstva
  22518. Set @IznosTekGod = 0
  22519. Set @IznosPrehGod = 0
  22520. set @Iznos = 0
  22521. set @IznosP = 0
  22522. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 23
  22523.     IF @Iznos is not null 
  22524.         set @IznosTekGod = @Iznos
  22525.     IF @IznosP is not null 
  22526.         set @IznosPrehGod = @IznosP
  22527. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 28
  22528.      IF @Iznos is not null 
  22529.         set @IznosTekGod =@IznostekGod + @Iznos
  22530.     IF @IznosP is not null 
  22531.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22532. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 34
  22533.      IF @Iznos is not null 
  22534.         set @IznosTekGod =@IznostekGod + @Iznos
  22535.     IF @IznosP is not null 
  22536.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22537. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 38
  22538.     IF @Iznos is not null 
  22539.         set @IznosTekGod =@IznostekGod + @Iznos
  22540.     IF @IznosP is not null 
  22541.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22542. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 22
  22543.  
  22544. --Vkupna aktiva
  22545. Set @IznosTekGod = 0
  22546. Set @IznosPrehGod = 0
  22547. set @Iznos = 0
  22548. set @IznosP = 0
  22549. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 1
  22550.     IF @Iznos is not null 
  22551.         set @IznosTekGod =@Iznos
  22552.     IF @IznosP is not null 
  22553.         set @IznosPrehGod = @IznosP
  22554. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 2
  22555.     IF @Iznos is not null 
  22556.         set @IznosTekGod =@IznostekGod + @Iznos
  22557.     IF @IznosP is not null 
  22558.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22559. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 22
  22560.     IF @Iznos is not null 
  22561.         set @IznosTekGod =@IznostekGod + @Iznos
  22562.     IF @IznosP is not null 
  22563.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22564. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 39
  22565.  
  22566. --Rezervi
  22567. Set @IznosTekGod = 0
  22568. Set @IznosPrehGod = 0
  22569. set @Iznos = 0
  22570. set @IznosP = 0
  22571. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 46
  22572.     IF @Iznos is not null 
  22573.         set @IznosTekGod = @Iznos
  22574.     IF @IznosP is not null 
  22575.         set @IznosPrehGod = @IznosP
  22576. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 47
  22577.     IF @Iznos is not null 
  22578.         set @IznosTekGod =@IznostekGod + @Iznos
  22579.     IF @IznosP is not null 
  22580.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22581. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 48
  22582.     IF @Iznos is not null 
  22583.         set @IznosTekGod =@IznostekGod + @Iznos
  22584.     IF @IznosP is not null 
  22585.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22586. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 49
  22587.     IF @Iznos is not null 
  22588.         set @IznosTekGod =@IznostekGod + @Iznos
  22589.     IF @IznosP is not null 
  22590.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22591. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 45
  22592.  
  22593. --Kapital i rezervi
  22594. Set @IznosTekGod = 0
  22595. Set @IznosPrehGod = 0
  22596. set @Iznos = 0
  22597. set @IznosP = 0
  22598. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 42
  22599.     IF @Iznos is not null 
  22600.         set @IznosTekGod = @Iznos
  22601.     IF @IznosP is not null 
  22602.         set @IznosPrehGod = @IznosP
  22603. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 43
  22604.     IF @Iznos is not null 
  22605.         set @IznosTekGod =@IznostekGod + @Iznos
  22606.     IF @IznosP is not null 
  22607.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22608. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 44
  22609.     IF @Iznos is not null 
  22610.         set @IznosTekGod =@IznostekGod + @Iznos
  22611.     IF @IznosP is not null 
  22612.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22613. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 45
  22614.     IF @Iznos is not null 
  22615.         set @IznosTekGod =@IznostekGod + @Iznos
  22616.     IF @IznosP is not null 
  22617.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22618. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 50
  22619.     IF @Iznos is not null 
  22620.         set @IznosTekGod =@IznostekGod + @Iznos
  22621.     IF @IznosP is not null 
  22622.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22623. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 51
  22624.     IF @Iznos is not null 
  22625.         set @IznosTekGod =@IznostekGod + @Iznos
  22626.     IF @IznosP is not null 
  22627.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22628. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 52
  22629.     IF @Iznos is not null 
  22630.         set @IznosTekGod =@IznostekGod + @Iznos
  22631.     IF @IznosP is not null 
  22632.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22633. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 53
  22634.     IF @Iznos is not null 
  22635.         set @IznosTekGod =@IznostekGod + @Iznos
  22636.     IF @IznosP is not null 
  22637.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22638. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0)where #BilSost.id = 41
  22639.  
  22640. --Rezerviranja za obvrski i trosoci
  22641. Set @IznosTekGod = 0
  22642. Set @IznosPrehGod = 0
  22643. set @Iznos = 0
  22644. set @IznosP = 0
  22645. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 55
  22646.     IF @Iznos is not null 
  22647.         set @IznosTekGod = @Iznos
  22648.     IF @IznosP is not null 
  22649.         set @IznosPrehGod = @IznosP
  22650. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 56
  22651.     IF @Iznos is not null 
  22652.         set @IznosTekGod =@IznostekGod + @Iznos
  22653.     IF @IznosP is not null 
  22654.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22655. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 57
  22656.     IF @Iznos is not null 
  22657.         set @IznosTekGod =@IznostekGod + @Iznos
  22658.     IF @IznosP is not null 
  22659.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22660. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 54
  22661.  
  22662. --obvrski sprema doveriteli
  22663. Set @IznosTekGod = 0
  22664. Set @IznosPrehGod = 0
  22665. set @Iznos = 0
  22666. set @IznosP = 0
  22667. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 59
  22668.     IF @Iznos is not null 
  22669.         set @IznosTekGod = @Iznos
  22670.     IF @IznosP is not null 
  22671.         set @IznosPrehGod = @IznosP
  22672. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 64
  22673.     IF @Iznos is not null 
  22674.         set @IznosTekGod =@IznostekGod + @Iznos
  22675.     IF @IznosP is not null 
  22676.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22677. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 65
  22678.     IF @Iznos is not null 
  22679.         set @IznosTekGod =@IznostekGod + @Iznos
  22680.     IF @IznosP is not null 
  22681.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22682. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 66
  22683.     IF @Iznos is not null 
  22684.         set @IznosTekGod =@IznostekGod + @Iznos
  22685.     IF @IznosP is not null 
  22686.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22687. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 67
  22688.     IF @Iznos is not null 
  22689.         set @IznosTekGod =@IznostekGod + @Iznos
  22690.     IF @IznosP is not null 
  22691.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22692. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 68
  22693.     IF @Iznos is not null 
  22694.         set @IznosTekGod =@IznostekGod + @Iznos
  22695.     IF @IznosP is not null 
  22696.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22697. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 69
  22698.     IF @Iznos is not null 
  22699.         set @IznosTekGod =@IznostekGod + @Iznos
  22700.     IF @IznosP is not null 
  22701.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22702. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 70
  22703.     IF @Iznos is not null 
  22704.         set @IznosTekGod =@IznostekGod + @Iznos
  22705.     IF @IznosP is not null 
  22706.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22707. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 71
  22708.     IF @Iznos is not null 
  22709.         set @IznosTekGod =@IznostekGod + @Iznos
  22710.     IF @IznosP is not null 
  22711.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22712. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 58
  22713.  
  22714.  
  22715. --obvrski po osnov na obicni obvrznici
  22716. Set @IznosTekGod = 0
  22717. Set @IznosPrehGod = 0
  22718. set @Iznos = 0
  22719. set @IznosP = 0
  22720. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 61
  22721.     IF @Iznos is not null 
  22722.         set @IznosTekGod =@IznostekGod + @Iznos
  22723.     IF @IznosP is not null 
  22724.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22725. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 62
  22726.     IF @Iznos is not null 
  22727.         set @IznosTekGod =@IznostekGod + @Iznos
  22728.     IF @IznosP is not null 
  22729.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22730. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 60
  22731.  
  22732. --obvrski po osnov na obvrznici
  22733. Set @IznosTekGod = 0
  22734. Set @IznosPrehGod = 0
  22735. set @Iznos = 0
  22736. set @IznosP = 0
  22737. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 60
  22738.     IF @Iznos is not null 
  22739.         set @IznosTekGod = @Iznos
  22740.     IF @IznosP is not null 
  22741.         set @IznosPrehGod = @IznosP
  22742. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 63
  22743.     IF @Iznos is not null 
  22744.         set @IznosTekGod =@IznostekGod + @Iznos
  22745.     IF @IznosP is not null 
  22746.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22747. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 59
  22748.  
  22749. --vkupna pasiva
  22750. Set @IznosTekGod = 0
  22751. Set @IznosPrehGod = 0
  22752. set @Iznos = 0
  22753. set @IznosP = 0
  22754. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 41
  22755.     IF @Iznos is not null 
  22756.         set @IznosTekGod =@IznostekGod + @Iznos
  22757.     IF @IznosP is not null 
  22758.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22759. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 54
  22760.     IF @Iznos is not null 
  22761.         set @IznosTekGod =@IznostekGod + @Iznos
  22762.     IF @IznosP is not null 
  22763.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22764. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 58
  22765.     IF @Iznos is not null 
  22766.         set @IznosTekGod =@IznostekGod + @Iznos
  22767.     IF @IznosP is not null 
  22768.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22769. select @Iznos = IznosTekGodBruto, @IznosP = IznosPrehGodina from #BilSost where #BilSost.id = 72
  22770.     IF @Iznos is not null 
  22771.         set @IznosTekGod =@IznostekGod + @Iznos
  22772.     IF @IznosP is not null 
  22773.         set @IznosPrehGod =@IznosPrehGod + @IznosP
  22774. update #BilSost set IznosTekGodBruto = round(@IznosTekGod, 0), IznosPrehGodina = round(@IznosPrehGod, 0) where #BilSost.id = 73
  22775.  
  22776. update #bilSost set IznosPrehGodina = 0 where IznosPrehGodina is null
  22777. update #BilSost set IznosTekGodNeto = IznosTekGodBruto + IznosPrehGodina 
  22778.  
  22779. select * from #BilSost
  22780.  
  22781.  
  22782.  
  22783.  
  22784.  
  22785.  
  22786.  
  22787.  
  22788.  
  22789.  
  22790.  
  22791.  
  22792.  
  22793.  
  22794.  
  22795.  
  22796.  
  22797.  
  22798.  
  22799.  
  22800. Go
  22801. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_bilsostsr]'))
  22802. drop procedure [dbo].[sp_bilsostsr]
  22803.  
  22804. Go
  22805.  
  22806.  
  22807.  
  22808.  
  22809. CREATE        PROCEDURE sp_BilSostSR
  22810.     @Datum_Od    smalldatetime,
  22811.     @Datum_Do    smalldatetime
  22812. AS
  22813. create table #BilansSost
  22814. (
  22815. ID [int]IDENTITY (1, 1) NOT NULL,
  22816. Pozicija nvarchar(200),
  22817. OznakaNaAOP char(3),
  22818. GrupaSmetki nvarchar(100),
  22819. IznosPrethGod decimal(18,2),
  22820. IznosTekGodina decimal(18,2)
  22821. )
  22822. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'A. ╨í╨ó╨É╨¢╨¥╨É ╨ÿ╨£╨₧╨Æ╨ÿ╨¥╨É (002+003+004+005+009)', '001', N'╨É╨Ü╨ó╨ÿ╨Æ╨É'
  22823. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'I.   ╨¥╨ò╨ú╨ƒ╨¢╨É╨ï╨ò╨¥╨ÿ ╨ú╨ƒ╨ÿ╨í╨É╨¥╨ÿ ╨Ü╨É╨ƒ╨ÿ╨ó╨É╨¢', '002', N'00'
  22824. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'II.  GOODWILL', '003','012'
  22825. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'III. ╨¥╨ò╨£╨É╨ó╨ò╨á╨ÿ╨ê╨É╨¢╨¥╨É ╨ú╨¢╨É╨ô╨É╨è╨É', '004', N'01 ╨▒╨╡╨╖ 012'
  22826. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'IV.  ╨¥╨ò╨Ü╨á╨ò╨ó╨¥╨ÿ╨¥╨ò, ╨ƒ╨₧╨í╨ó╨á╨₧╨ê╨ò╨è╨É, ╨₧╨ƒ╨á╨ò╨£╨É ╨ÿ ╨æ╨ÿ╨₧╨¢╨₧╨¿╨Ü╨É ╨í╨á╨ò╨ö╨í╨ó╨Æ╨É(006+007+008)', '005', ''
  22827. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'        1.╨¥╨╡╨║╤Ç╨╡╤é╨╜╨╕╨╜╨╡, ╨┐╨╛╤ü╤é╤Ç╨╛╤ÿ╨╡╤Ü╨░ ╨╕ ╨╛╨┐╤Ç╨╡╨╝╨░', '006', N'020,022,023,026,027(╨┤╨╡╨╛),028(╨┤╨╡╨╛),029'
  22828. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     2.╨ÿ╨╜╨▓╨╡╤ü╤é╨╕╤å╨╕╨╛╨╜╨╡ ╨╜╨╡╨║╤Ç╨╡╤é╨╜╨╕╨╜╨╡', '007', N'024,027(╨┤╨╡╨╛)╨╕ 028(╨┤╨╡╨╛)'
  22829. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'        3.╨æ╨╕╨╛╨╗╨╛╤ê╨║╨░ ╤ü╤Ç╨╡╨┤╤ü╤é╨▓╨░', '008', N'021,025,027(╨┤╨╡╨╛)╨╕ 028(╨┤╨╡╨╛)'
  22830. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'V.   ╨ö╨ú╨ô╨₧╨á╨₧╨º╨¥╨ÿ ╨ñ╨ÿ╨¥╨É╨¥╨í╨ÿ╨ê╨í╨Ü╨ÿ ╨ƒ╨¢╨É╨í╨£╨É╨¥╨ÿ(010+011)', '009', ''
  22831. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     1.╨ú╤ç╨╡╤ê╤Æ╨░ ╤â ╨║╨░╨┐╨╕╤é╨░╨╗╤â', '010', N'030 ╨┤╨╛ 032,039(╨┤╨╡╨╛)'
  22832. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     2.╨₧╤ü╤é╨░╨╗╨╕ ╨┤╤â╨│╨╛╤Ç╨╛╤ç╨╜╨╕ ╤ä╨╕╨╜╨░╨╜╤ü╨╕╤ÿ╤ü╨║╨╕ ╨┐╨╗╨░╤ü╨╝╨░╨╜╨╕', '011', N'033 ╨┤╨╛ 038,039(╨┤╨╡╨╛)╨╝╨╕╨╜╤â╤ü 037'
  22833. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨æ.   ╨₧╨æ╨á╨ó╨¥╨É ╨ÿ╨£╨₧╨Æ╨ÿ╨¥╨É(013 + 014+ 015)', '012', N''
  22834. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'I.   ╨ù╨É╨¢╨ÿ╨Ñ╨ò', '013', N'10 ╨┤╨╛ 13, 15'
  22835. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'II.  ╨í╨ó╨É╨¢╨¥╨É ╨í╨á╨ò╨ö╨í╨ó╨Æ╨É ╨¥╨É╨£╨ò╨è╨ò╨¥╨É ╨ƒ╨á╨₧╨ö╨É╨ê╨ÿ ╨ÿ ╨í╨á╨ò╨ö╨í╨ó╨Æ╨É ╨ƒ╨₧╨í╨¢╨₧╨Æ╨É╨è╨É ╨Ü╨₧╨ê╨ò ╨í╨ò ╨₧╨æ╨ú╨í╨ó╨É╨Æ╨ë╨É', '014', '14'
  22836. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'III. ╨Ü╨á╨É╨ó╨Ü╨₧╨á╨₧╨º╨¥╨É ╨ƒ╨₧╨ó╨á╨É╨û╨ÿ╨Æ╨É╨è╨É, ╨ƒ╨¢╨É╨í╨£╨É╨¥╨ÿ ╨ÿ ╨ô╨₧╨ó╨₧╨Æ╨ÿ╨¥╨É(016+017+018+019+020)', '015', ''
  22837. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     1.╨ƒ╨╛╤é╤Ç╨░╨╢╨╕╨▓╨░╤Ü╨░', '016', N'20,21╨╕22,╨╛╤ü╨╕╨╝ 223'
  22838. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     2.╨ƒ╨╛╤é╤Ç╨░╨╢╨╕╨▓╨░╤Ü╨░ ╤ò╨░ ╨▓╨╕╤ê╨╡ ╨┐╨╗╨░╤¢╨╡╨╜ ╨┐╨╛╤Ç╨╡╤ò ╨╜╨░ ╨┤╨╛╨▒╨╕╤é╨░╨║', '017', '223'
  22839. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     3.╨Ü╤Ç╨░╤é╨║╨╛╤Ç╨╛╤ç╨╜╨╕ ╤ä╨╕╨╜╨░╨╜╤ü╨╕╤ÿ╤ü╨║╨╕ ╨┐╨╗╨░╤ü╨╝╨░╨╜╨╕', '018', N'23 ╨╝╨╕╨╜╤â╤ü 237'
  22840. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     4.╨ô╨╛╤é╨╛╨▓╨╕╨╜╤ü╨║╨╕ ╨╡╨║╨▓╨╕╨▓╨░╨╗╨╡╨╜╤é╨╕ ╨╕ ╨│╨╛╤é╨╛╨▓╨╕╨╜╨░    ', '019', '24'
  22841. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'     5.╨ƒ╨╛╤Ç╨╡╨╖ ╨╜╨░ ╨┤╨╛╨┤╨░╤é╤â ╨▓╤Ç╨╡╨┤╨╜╨╛╤ü╤é ╨╕ ╨░╨║╤é╨╕╨▓╨╜╨░ ╨▓╤Ç╨╡╨╝╨╡╨╜╤ü╨║╨░ ╤Ç╨░╨╖╨│╤Ç╨░╨╜╨╕╤ç╨╡╤Ü╨░', '020', N'27 ╨╕ 28 ╨╛╤ü╨╕╨╝ 288'
  22842. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨Æ. ╨₧╨ö╨¢╨₧╨û╨ò╨¥╨É ╨ƒ╨₧╨á╨ò╨í╨Ü╨É ╨í╨á╨ò╨ö╨í╨ó╨Æ╨É', '021', '288'
  22843. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ô. ╨ƒ╨₧╨í╨¢╨₧╨Æ╨¥╨É ╨ÿ╨£╨₧╨Æ╨ÿ╨¥╨É(001+012+021)', '022', ''
  22844. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ö. ╨ô╨ú╨æ╨ÿ╨ó╨É╨Ü ╨ÿ╨ù╨¥╨É╨ö ╨Æ╨ÿ╨í╨ÿ╨¥╨ò ╨Ü╨É╨ƒ╨ÿ╨ó╨É╨¢╨É', '023', '29'
  22845. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨é. ╨ú╨Ü╨ú╨ƒ╨¥╨É ╨É╨Ü╨ó╨ÿ╨Æ╨É(022+023)', '024', ''
  22846. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ò. ╨Æ╨É╨¥╨æ╨ÿ╨¢╨É╨¥╨í╨¥╨É ╨É╨Ü╨ó╨ÿ╨Æ╨É', '025', '88'
  22847. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨É.╨Ü╨É╨ƒ╨ÿ╨ó╨É╨¢ (102+103+104+105+106+107+108-109-110)', '101', N'╨ƒ╨É╨í╨ÿ╨Æ╨É'
  22848. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' I.   ╨₧╨í╨¥╨₧╨Æ╨¥╨ÿ ╨Ü╨É╨ƒ╨ÿ╨ó╨É╨¢', '102', '30'
  22849. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' II.  ╨¥╨ò╨ú╨ƒ╨¢╨É╨é╨ò╨¥╨ÿ ╨ú╨ƒ╨ÿ╨í╨É╨¥╨ÿ ╨Ü╨É╨ƒ╨ÿ╨ó╨É╨¢', '103', '31'
  22850. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' III. ╨á╨ò╨ù╨ò╨á╨Æ╨ò', '104', '32'
  22851. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' IV.  ╨á╨ò╨Æ╨É╨¢╨₧╨á╨ÿ╨ù╨É╨ª╨ÿ╨₧╨¥╨ò ╨á╨ò╨ù╨ò╨á╨Æ╨ò', '105', N'330 ╨╕ 331'
  22852. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' V.   ╨¥╨ò╨á╨ò╨É╨¢╨ÿ╨ù╨₧╨Æ╨É╨¥╨ÿ ╨ö╨₧╨æ╨ÿ╨ª╨ÿ ╨ƒ╨₧ ╨₧╨í╨¥╨₧╨Æ╨ú ╨Ñ╨É╨á╨ó╨ÿ╨ê╨É ╨₧╨ö ╨Æ╨á╨ò╨ö╨¥╨₧╨í╨ó╨ÿ', '106', '332'
  22853. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' VI.  ╨¥╨ò╨á╨ò╨É╨¢╨ÿ╨ù╨₧╨Æ╨É╨¥╨ÿ ╨ô╨ú╨æ╨ÿ╨ª╨ÿ ╨ƒ╨₧ ╨₧╨í╨¥╨₧╨Æ╨ú ╨Ñ╨É╨á╨ó╨ÿ╨ê╨É ╨₧╨ö ╨Æ╨á╨ò╨ö╨¥╨₧╨í╨ó╨ÿ', '107', '333'
  22854. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' VII. ╨¥╨ò╨á╨É╨í╨ƒ╨₧╨á╨ò╨é╨ò╨¥╨ÿ ╨ö╨₧╨æ╨ÿ╨ó╨É╨Ü', '108', '34'
  22855. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' VIII.╨ô╨ú╨æ╨ÿ╨ó╨É╨Ü', '109', '35'
  22856. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' IX.╨₧╨ó╨Ü╨ú╨ƒ╨ë╨ò╨è╨ò ╨í╨₧╨ƒ╨í╨ó╨Æ╨ò╨¥╨ò ╨É╨Ü╨ª╨ÿ╨ê╨ò', '110', N'037 ╨╕ 237'
  22857. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨æ.╨ö╨ú╨ô╨₧╨á╨₧╨º╨¥╨É ╨á╨ò╨ù╨ò╨á╨Æ╨ÿ╨í╨É╨è╨É ╨ÿ ╨₧╨æ╨É╨Æ╨ò╨ù╨ò(112 + 113 +116)', '111', ''
  22858. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' I.   ╨ö╨ú╨ô╨₧╨á╨₧╨º╨¥╨É ╨á╨ò╨ù╨ò╨á╨Æ╨ÿ╨í╨É╨è╨É', '112', '40'
  22859. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' II.  ╨ö╨ú╨ô╨₧╨á╨₧╨º╨¥╨É ╨₧╨æ╨É╨Æ╨ò╨ù╨ò(114 + 115)', '113', '41'
  22860. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      1.╨ö╤â╨│╨╛╤Ç╨╛╤ç╨╜╨╕ ╨║╤Ç╨╡╨┤╨╕╤é╨╕', '114', '414, 415'
  22861. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      2.╨₧╤ü╤é╨░╨╗╨╡ ╨┤╤â╨│╨╛╤Ç╨╛╤ç╨╜╨╡ ╨╛╨▒╨░╨▓╨╡╨╖╨╡', '115', N'41 ╨▒╨╡╨╖ 414 ╨╕ 415'
  22862. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N' III.╨Ü╨á╨É╨ó╨Ü╨₧╨á╨₧╨º╨¥╨ò ╨₧╨æ╨É╨Æ╨ò╨ù╨ò(117+118+119+120+121+122)', '116', ''
  22863. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      1.╨Ü╤Ç╨░╤é╨║╨╛╤Ç╨╛╤ç╨╜╨╡ ╤ä╨╕╨╜╨░╨╜╤ü╨╕╤ÿ╤ü╨║╨╡ ╨╛╨▒╨░╨▓╨╡╨╖╨╡', '117', N'42,╨╛╤ü╨╕╨╝ 427'
  22864. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      2.╨₧╨▒╨░╨▓╨╡╨╖╨╡ ╨┐╨╛ ╨╛╤ü╨╜╨╛╨▓╤â ╤ü╤Ç╨╡╨┤╤ü╤é╨░╨▓╨░ ╨╜╨░╨╝╨╡╤Ü╨╡╨╜╨╕╤à ╨┐╤Ç╨╛╨┤╨░╤ÿ╨╕ ╨╕ ╤ü╤Ç╨╡╨┤╤ü╤é╨░╨▓╨░ ╨┐╨╛╤ü╨╗╨╛╨▓╨░╤Ü╨░ ╨║╨╛╤ÿ╨╡ ╤ü╨╡ ╨╛╨▒╤â╤ü╤é╨░╨▓╤Ö╨░', '118', '427'
  22865. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      3.╨₧╨▒╨░╨▓╨╡╨╖╨╡ ╨╕╨╖ ╨┐╨╛╤ü╨╗╨╛╨▓╨░╤Ü╨░', '119', N'43 ╨╕ 44'
  22866. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      4.╨₧╤ü╤é╨░╨╗╨╡ ╨║╤Ç╨░╤é╨║╨╛╤Ç╨╛╤ç╨╜╨╡ ╨╛╨▒╨░╨▓╨╡╨╖╨╡', '120', N'45 ╨╕ 46'
  22867. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      5.╨₧╨▒╨░╨▓╨╡╨╖╨╡ ╨┐╨╛ ╨╛╤ü╨╜╨╛╨▓╤â ╨┐╨╛╤Ç╨╡╨╖╨░ ╨╜╨░ ╨┤╨╛╨┤╨░╤é╤â ╨▓╤Ç╨╡╨┤╨╜╨╛╤ü╤é ╨╕ ╨╛╤ü╤é╨░╨╗╨╕╤à ╤ÿ╨░╨▓╨╜╨╕╤à ╨┐╤Ç╨╕╤à╨╛╨┤╨░ ╨╕ ╨┐╨░╤ü╨╕╨▓╨╜╨░ ╨▓╤Ç╨╡╨╝╨╡╨╜╤ü╨║╨░ ╤Ç╨░╨╖╨│╤Ç╨░╨╜╨╕╤ç╨╡╤Ü╨░', '121', N'47,48 ╨╛╤ü╨╕╨╝ 481 ╨╕ 49 ╨╛╤ü╨╕╨╝ 498'
  22868. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'      6.╨₧╨▒╨░╨▓╨╡╨╖╨╡ ╨┐╨╛ ╨╛╤ü╨╜╨╛╨▓╤â ╨┐╨╛╤Ç╨╡╨╖╨░ ╨╜╨░ ╨┤╨╛╨▒╨╕╤é╨░╨║', '122', N'481'
  22869. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨Æ.╨₧╨ö╨¢╨₧╨û╨ò╨¥╨ò ╨ƒ╨₧╨á╨ò╨í╨Ü╨ò ╨₧╨æ╨É╨Æ╨ò╨ù╨ò', '123', N'498'
  22870. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ô.╨ú╨Ü╨ú╨ƒ╨¥╨É ╨ƒ╨É╨í╨ÿ╨Æ╨É(101 + 111 + 123)', '124', ''
  22871. insert into #BilansSost(Pozicija, OznakaNaAOP, GrupaSmetki) select  N'╨ö.╨Æ╨É╨¥╨æ╨ÿ╨¢╨É╨¥╨í╨¥╨É ╨ƒ╨É╨í╨ÿ╨Æ╨É', '125', '89'
  22872.  
  22873.  
  22874.  
  22875.  
  22876. Declare @IznosTekGod as decimal(18,2)
  22877. Declare @Iznos as decimal(18,2)
  22878.  
  22879. --╨¥╨ò╨ú╨ƒ╨¢╨É╨ï╨ò╨¥╨ÿ ╨ú╨ƒ╨ÿ╨í╨É╨¥╨ÿ ╨Ü╨É╨ƒ╨ÿ╨ó╨É╨¢ 
  22880. Set @IznosTekGod = 0
  22881. set @Iznos = 0
  22882. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '00%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22883. IF @Iznos is not null 
  22884.     set @IznosTekGod = @Iznos
  22885. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 2
  22886.  
  22887. --Goodwill
  22888. Set @IznosTekGod = 0
  22889. set @Iznos = 0
  22890. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '012%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22891. IF @Iznos is not null 
  22892.     set @IznosTekGod = @Iznos
  22893. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 3
  22894. --kraj
  22895.  
  22896. --nematerijalna ulaganja
  22897. Set @IznosTekGod = 0
  22898. set @Iznos = 0
  22899. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '01%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22900. IF @Iznos is not null 
  22901.     set @IznosTekGod = @Iznos
  22902. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '012%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22903. IF @Iznos is not null 
  22904.     set @IznosTekGod =@IznosTekGod - @Iznos
  22905. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 4
  22906. --kraj
  22907.  
  22908. --Nekretnine, postrojenja i oprema
  22909. Set @IznosTekGod = 0
  22910. set @Iznos = 0
  22911. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '020%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22912. IF @Iznos is not null 
  22913.     set @IznosTekGod = @Iznos
  22914. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '022%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22915. IF @Iznos is not null 
  22916.     set @IznosTekGod = @IznosTekGod + @Iznos
  22917. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '023%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22918. IF @Iznos is not null 
  22919.     set @IznosTekGod = @IznosTekGod + @Iznos
  22920. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '026%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22921. IF @Iznos is not null 
  22922.     set @IznosTekGod = @IznosTekGod + @Iznos
  22923. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '027%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22924. IF @Iznos is not null 
  22925.     set @IznosTekGod = @IznosTekGod + @Iznos
  22926. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '028%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22927. IF @Iznos is not null 
  22928.     set @IznosTekGod = @IznosTekGod + @Iznos
  22929. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '029%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22930. IF @Iznos is not null 
  22931.     set @IznosTekGod = @IznosTekGod + @Iznos
  22932. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 6
  22933. --kraj
  22934.  
  22935.  
  22936. --Investicione nekretnine
  22937. Set @IznosTekGod = 0
  22938. set @Iznos = 0
  22939. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '024%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22940. IF @Iznos is not null 
  22941.     set @IznosTekGod = @Iznos
  22942. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '027%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22943. IF @Iznos is not null 
  22944.     set @IznosTekGod = @IznosTekGod+@Iznos
  22945. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '028%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22946. IF @Iznos is not null 
  22947.     set @IznosTekGod = @IznosTekGod+@Iznos
  22948. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 7
  22949. --kraj
  22950.  
  22951. --Bioloshka sredstsva
  22952. Set @IznosTekGod = 0
  22953. set @Iznos = 0
  22954. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '021%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22955. IF @Iznos is not null 
  22956.     set @IznosTekGod = @Iznos
  22957. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '025%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22958. IF @Iznos is not null 
  22959.     set @IznosTekGod =@IznosTekGod + @Iznos
  22960. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '027%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22961. IF @Iznos is not null 
  22962.     set @IznosTekGod =@IznosTekGod + @Iznos
  22963. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '028%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22964. IF @Iznos is not null 
  22965.     set @IznosTekGod =@IznosTekGod + @Iznos
  22966. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 8
  22967. --kraj
  22968.  
  22969. --Uceshca u kapitalu
  22970. Set @IznosTekGod = 0
  22971. set @Iznos = 0
  22972. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '030%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22973. IF @Iznos is not null 
  22974.     set @IznosTekGod = @Iznos
  22975. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '031%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22976. IF @Iznos is not null 
  22977.     set @IznosTekGod =@IznosTekGod + @Iznos
  22978. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '032%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22979. IF @Iznos is not null 
  22980.     set @IznosTekGod =@IznosTekGod + @Iznos
  22981. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '039%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22982. IF @Iznos is not null 
  22983.     set @IznosTekGod =@IznosTekGod + @Iznos
  22984. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 10
  22985. --kraj
  22986.  
  22987. --Ostali dugorocni finansisjski plasmani
  22988. Set @IznosTekGod = 0
  22989. set @Iznos = 0
  22990. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '033%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22991. IF @Iznos is not null 
  22992.     set @IznosTekGod = @Iznos
  22993. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '034%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22994. IF @Iznos is not null 
  22995.     set @IznosTekGod =@IznosTekGod + @Iznos
  22996. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '035%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  22997. IF @Iznos is not null 
  22998.     set @IznosTekGod =@IznosTekGod + @Iznos
  22999. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '036%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23000. IF @Iznos is not null 
  23001.     set @IznosTekGod =@IznosTekGod + @Iznos
  23002. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '037%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23003. IF @Iznos is not null 
  23004.     set @IznosTekGod =@IznosTekGod - @Iznos
  23005. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '038%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23006. IF @Iznos is not null 
  23007.     set @IznosTekGod =@IznosTekGod + @Iznos
  23008. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '039%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23009. IF @Iznos is not null 
  23010.     set @IznosTekGod =@IznosTekGod + @Iznos
  23011. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 11
  23012. --kraj
  23013.  
  23014. --Zalihe
  23015. Set @IznosTekGod = 0
  23016. set @Iznos = 0
  23017. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '10%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23018. IF @Iznos is not null 
  23019.     set @IznosTekGod = @Iznos
  23020. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '11%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23021. IF @Iznos is not null 
  23022.     set @IznosTekGod =@IznosTekGod + @Iznos
  23023. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '12%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23024. IF @Iznos is not null 
  23025.     set @IznosTekGod =@IznosTekGod + @Iznos
  23026. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '13%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23027. IF @Iznos is not null 
  23028.     set @IznosTekGod =@IznosTekGod + @Iznos
  23029. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '15%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23030. IF @Iznos is not null 
  23031.     set @IznosTekGod =@IznosTekGod + @Iznos
  23032. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 13
  23033. --kraj
  23034.  
  23035. --Stalna sredstva namenjena prodaji i sredstva poslovanja koje se obustavlja
  23036. Set @IznosTekGod = 0
  23037. set @Iznos = 0
  23038. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '14%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23039. IF @Iznos is not null 
  23040.     set @IznosTekGod = @Iznos
  23041. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 14
  23042. --kraj
  23043.  
  23044. --Potrazzivanja
  23045. Set @IznosTekGod = 0
  23046. set @Iznos = 0
  23047. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '20%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23048. IF @Iznos is not null 
  23049.     set @IznosTekGod = @Iznos
  23050. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '21%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23051. IF @Iznos is not null 
  23052.     set @IznosTekGod = @IznosTekGod + @Iznos
  23053. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '22%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23054. IF @Iznos is not null 
  23055.     set @IznosTekGod = @IznosTekGod + @Iznos
  23056. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '223%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23057. IF @Iznos is not null 
  23058.     set @IznosTekGod = @IznosTekGod - @Iznos
  23059. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 16
  23060. --kraj
  23061.  
  23062. --Potrazzivanja za vishe plachen porez na dobitak
  23063. Set @IznosTekGod = 0
  23064. set @Iznos = 0
  23065. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '223%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23066. IF @Iznos is not null 
  23067.     set @IznosTekGod = @Iznos
  23068. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 17
  23069.  
  23070. --Kratkorocni finansijski plasmani
  23071. Set @IznosTekGod = 0
  23072. set @Iznos = 0
  23073. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '23%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23074. IF @Iznos is not null 
  23075.     set @IznosTekGod = @Iznos
  23076. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '237%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23077.     IF @Iznos is not null 
  23078.     set @IznosTekGod = @IznosTekGod - @Iznos
  23079. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 18
  23080. --kraj
  23081.  
  23082. --Gotovinski ekvivalenti i gotovina
  23083. Set @IznosTekGod = 0
  23084. set @Iznos = 0
  23085. select @Iznos = sum (G.Dolzi - G.Pobaruva) from Gstav G where G.Kto_Anal like '24%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23086.     IF @Iznos is not null 
  23087.     set @IznosTekGod = @Iznos
  23088. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 19
  23089. --kraj
  23090. --Porez na dodatu vrednosti i aktivna vremenska razgranichenja
  23091. Set @IznosTekGod = 0
  23092. set @Iznos = 0
  23093. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '27%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23094. IF @Iznos is not null 
  23095.     set @IznosTekGod = @Iznos
  23096. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '28%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23097.     IF @Iznos is not null 
  23098.     set @IznosTekGod = @IznosTekGod + @Iznos
  23099. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '288%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23100.     IF @Iznos is not null 
  23101.     set @IznosTekGod = @IznosTekGod - @Iznos
  23102. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 20
  23103. --kraj
  23104. --Odlozzena poreska sredstva
  23105. Set @IznosTekGod = 0
  23106. set @Iznos = 0
  23107. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '288%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23108. IF @Iznos is not null 
  23109.     set @IznosTekGod = @Iznos
  23110. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 21
  23111. --kraj
  23112.  
  23113. --Gubitak iznad visine kapitala
  23114. Set @IznosTekGod = 0
  23115. set @Iznos = 0
  23116. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '29%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23117. IF @Iznos is not null 
  23118.     set @IznosTekGod = @Iznos
  23119. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 23
  23120. --kraj
  23121.  
  23122. --Vanbilansna aktiva
  23123. Set @IznosTekGod = 0
  23124. set @Iznos = 0
  23125. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '88%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23126. IF @Iznos is not null 
  23127.     set @IznosTekGod = @Iznos
  23128. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 25
  23129. --kraj
  23130.  
  23131. --Osnovni kapital
  23132. Set @IznosTekGod = 0
  23133. set @Iznos = 0
  23134. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '30%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23135. IF @Iznos is not null 
  23136.     set @IznosTekGod = @Iznos
  23137. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 27
  23138. --kraj
  23139.  
  23140. --Neuplacheni upisani kapital
  23141. Set @IznosTekGod = 0
  23142. set @Iznos = 0
  23143. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '31%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23144. IF @Iznos is not null 
  23145.     set @IznosTekGod = @Iznos
  23146. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 28
  23147. --kraj
  23148.  
  23149. --REZERVE
  23150. Set @IznosTekGod = 0
  23151. set @Iznos = 0
  23152. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '32%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23153. IF @Iznos is not null 
  23154.     set @IznosTekGod = @Iznos
  23155. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 29
  23156. --kraj
  23157.  
  23158. --REVALORIZACIONE REZERVE
  23159. Set @IznosTekGod = 0
  23160. set @Iznos = 0
  23161. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '330%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23162. IF @Iznos is not null 
  23163.     set @IznosTekGod = @Iznos
  23164. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '331%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23165. IF @Iznos is not null 
  23166.     set @IznosTekGod = @IznosTekGod + @Iznos
  23167. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 30
  23168. --kraj
  23169.  
  23170. --NEREALIZOVANI DOBICI PO OSNOVU HARTIJA OD VREDNOSTI
  23171. Set @IznosTekGod = 0
  23172. set @Iznos = 0
  23173. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '332%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23174. IF @Iznos is not null 
  23175.     set @IznosTekGod = @Iznos
  23176.  update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 31
  23177. --kraj
  23178.  
  23179. --NEREALIZOVANI GUBICI PO OSNOVU HARTIJA OD VREDNOSTI
  23180. Set @IznosTekGod = 0
  23181. set @Iznos = 0
  23182. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '333%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23183. IF @Iznos is not null 
  23184.     set @IznosTekGod = @Iznos
  23185.  update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 32
  23186. --kraj
  23187.  
  23188. --NERASPORECENI DOBITAK
  23189. Set @IznosTekGod = 0
  23190. set @Iznos = 0
  23191. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '34%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23192. IF @Iznos is not null 
  23193.     set @IznosTekGod = @Iznos
  23194.  update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 33
  23195. --kraj
  23196.  
  23197. --GUBITAK
  23198. Set @IznosTekGod = 0
  23199. set @Iznos = 0
  23200. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '33%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23201. IF @Iznos is not null 
  23202.     set @IznosTekGod = @Iznos
  23203.  update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 34
  23204. --kraj
  23205.  
  23206. --OTKUPLJENE SOPSTVENE AKCIJE
  23207. Set @IznosTekGod = 0
  23208. set @Iznos = 0
  23209. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '037%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23210. IF @Iznos is not null 
  23211.     set @IznosTekGod = @Iznos
  23212. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '237%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23213. IF @Iznos is not null 
  23214.     set @IznosTekGod =@IznosTekGod + @Iznos
  23215.  update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 35
  23216. --kraj
  23217.  
  23218. --DUGOROCHNA REZERVISANJA
  23219. Set @IznosTekGod = 0
  23220. set @Iznos = 0
  23221. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '40%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23222. IF @Iznos is not null 
  23223.     set @IznosTekGod = @Iznos
  23224. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 37
  23225. --kraj
  23226.  
  23227. --DUGOROCHNE OBAVEZE
  23228. Set @IznosTekGod = 0
  23229. set @Iznos = 0
  23230. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '41%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23231. IF @Iznos is not null 
  23232.     set @IznosTekGod = @Iznos
  23233. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 38
  23234. --kraj
  23235.  
  23236. --DUGOROCHNE KREDITI
  23237. Set @IznosTekGod = 0
  23238. set @Iznos = 0
  23239. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '414%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23240. IF @Iznos is not null 
  23241.     set @IznosTekGod = @Iznos
  23242. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '415%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23243. IF @Iznos is not null 
  23244.     set @IznosTekGod =@IznosTekGod + @Iznos
  23245. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 39
  23246. --kraj
  23247.  
  23248. --OSTALE DUGOROCHNE obaveze
  23249. Set @IznosTekGod = 0
  23250. set @Iznos = 0
  23251. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '41%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23252. IF @Iznos is not null 
  23253.     set @IznosTekGod = @Iznos
  23254. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '414%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23255. IF @Iznos is not null 
  23256.     set @IznosTekGod = @IznosTekGod - @Iznos
  23257. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '415%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23258. IF @Iznos is not null 
  23259.     set @IznosTekGod =@IznosTekGod + @Iznos
  23260. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 40
  23261. --kraj
  23262.  
  23263. --Kratkorocne finansijske obaveze
  23264. Set @IznosTekGod = 0
  23265. set @Iznos = 0
  23266. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '42%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23267. IF @Iznos is not null 
  23268.     set @IznosTekGod = @Iznos
  23269. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '427%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23270. IF @Iznos is not null 
  23271.     set @IznosTekGod = @IznosTekGod - @Iznos
  23272. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 42
  23273. --kraj
  23274.  
  23275. --Obaveze po osnovu sredstava namenenih prodaji i sredstava poslovanja koje se obustavlja
  23276. Set @IznosTekGod = 0
  23277. set @Iznos = 0
  23278. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '427%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23279. IF @Iznos is not null 
  23280.     set @IznosTekGod = @Iznos
  23281. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 43
  23282. --kraj
  23283.  
  23284. --Obaveze iz poslovanja
  23285. Set @IznosTekGod = 0
  23286. set @Iznos = 0
  23287. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '43%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23288. IF @Iznos is not null 
  23289.     set @IznosTekGod = @Iznos
  23290. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '44%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23291. IF @Iznos is not null 
  23292.     set @IznosTekGod = @IznosTekGod + @Iznos
  23293. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 44
  23294. --kraj
  23295.  
  23296. --Ostale kratkorochne obaveze 
  23297. Set @IznosTekGod = 0
  23298. set @Iznos = 0
  23299. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '45%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23300. IF @Iznos is not null 
  23301.     set @IznosTekGod = @Iznos
  23302. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '46%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23303. IF @Iznos is not null 
  23304.     set @IznosTekGod = @IznosTekGod + @Iznos
  23305. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 45
  23306. --kraj
  23307.  
  23308. --Obaveze po osnovu poreza na dodadtu vrednost i ostalih javnih prihoda i pasivna vremenska razgranichenja 
  23309. Set @IznosTekGod = 0
  23310. set @Iznos = 0
  23311. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '47%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23312. IF @Iznos is not null 
  23313.     set @IznosTekGod = @Iznos
  23314. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '48%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23315. IF @Iznos is not null 
  23316.     set @IznosTekGod = @IznosTekGod + @Iznos
  23317. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '481%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23318. IF @Iznos is not null 
  23319.     set @IznosTekGod = @IznosTekGod - @Iznos
  23320. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '49%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23321. IF @Iznos is not null 
  23322.     set @IznosTekGod = @IznosTekGod + @Iznos
  23323. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '498%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23324. IF @Iznos is not null 
  23325.     set @IznosTekGod = @IznosTekGod - @Iznos
  23326. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 46
  23327. --kraj
  23328. --Obaveze po osnovu poreza na dobitak 
  23329. Set @IznosTekGod = 0
  23330. set @Iznos = 0
  23331. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '481%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23332. IF @Iznos is not null 
  23333.     set @IznosTekGod = @Iznos
  23334. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 47
  23335. --kraj
  23336. --Odlozzene poreske obaveze 
  23337. Set @IznosTekGod = 0
  23338. set @Iznos = 0
  23339. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '498%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23340. IF @Iznos is not null 
  23341.     set @IznosTekGod = @Iznos
  23342. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 48
  23343. --kraj
  23344. --Vanbilansna pasiva 
  23345. Set @IznosTekGod = 0
  23346. set @Iznos = 0
  23347. select @Iznos = sum (G.Pobaruva - G.Dolzi) from Gstav G where G.Kto_Anal like '89%' AND G.Datum_Nal >=@Datum_Od AND G.Datum_Nal <= @Datum_Do
  23348. IF @Iznos is not null 
  23349.     set @IznosTekGod = @Iznos
  23350. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 50
  23351. --kraj
  23352.  
  23353. --zbir polinja
  23354. --Dugorochni finansijski plasmani      010 + 011
  23355. Set @IznosTekGod = 0
  23356. set @Iznos = 0
  23357. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 10          --010
  23358. IF @Iznos is not null 
  23359.     set @IznosTekGod = @Iznos
  23360. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 11            --011        
  23361. IF @Iznos is not null 
  23362.     set @IznosTekGod =@IznostekGod + @Iznos
  23363. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 9
  23364. --kraj
  23365.  
  23366. --Nekretnine, postrojena, oprema i bioloshka sredstva 006+007+008
  23367. Set @IznosTekGod = 0
  23368. set @Iznos = 0
  23369. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 6        --006
  23370. IF @Iznos is not null 
  23371.     set @IznosTekGod = @Iznos
  23372. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 7        --007    
  23373. IF @Iznos is not null 
  23374.     set @IznosTekGod =@IznostekGod + @Iznos
  23375. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 8        --008    
  23376. IF @Iznos is not null 
  23377.     set @IznosTekGod =@IznostekGod + @Iznos
  23378.  
  23379. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 5
  23380. --kraj
  23381.  
  23382. --Stalna Imovina      002+003+004+005+009
  23383. Set @IznosTekGod = 0
  23384. set @Iznos = 0
  23385. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 2          --002
  23386. IF @Iznos is not null 
  23387.     set @IznosTekGod = @Iznos
  23388. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 3            --003
  23389. IF @Iznos is not null 
  23390.     set @IznosTekGod =@IznostekGod + @Iznos
  23391. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 4            --004
  23392. IF @Iznos is not null 
  23393.     set @IznosTekGod =@IznostekGod + @Iznos
  23394. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 5            --005
  23395. IF @Iznos is not null 
  23396.     set @IznosTekGod =@IznostekGod - @Iznos
  23397. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 9            --009
  23398. IF @Iznos is not null 
  23399.     set @IznosTekGod =@IznostekGod + @Iznos
  23400. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 1
  23401. --kraj
  23402.  
  23403. --15 Kratkorochna potrazzivanja, plasmani i gotovina (016+017+018+019+020)
  23404. Set @IznosTekGod = 0
  23405. set @Iznos = 0
  23406. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 16          --016
  23407. IF @Iznos is not null 
  23408.     set @IznosTekGod = @Iznos
  23409. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 17          --017
  23410. IF @Iznos is not null 
  23411.     set @IznosTekGod =@IznostekGod + @Iznos
  23412. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 18          --018
  23413. IF @Iznos is not null 
  23414.     set @IznosTekGod =@IznostekGod + @Iznos
  23415. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 19          --019
  23416. IF @Iznos is not null 
  23417.     set @IznosTekGod =@IznostekGod + @Iznos
  23418. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 20          --020
  23419. IF @Iznos is not null 
  23420.     set @IznosTekGod =@IznostekGod + @Iznos
  23421. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 15
  23422. --kraj
  23423. --15 Obrtna imovina (013+014+015)
  23424. Set @IznosTekGod = 0
  23425. set @Iznos = 0
  23426. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 13          --013
  23427. IF @Iznos is not null 
  23428.     set @IznosTekGod = @Iznos
  23429. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 14          --014
  23430. IF @Iznos is not null 
  23431.     set @IznosTekGod =@IznostekGod + @Iznos
  23432. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 15          --015
  23433. IF @Iznos is not null 
  23434.     set @IznosTekGod =@IznostekGod + @Iznos
  23435. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 12
  23436. --kraj
  23437.  
  23438. --22 Poslovna imovina (001+012+021)
  23439. Set @IznosTekGod = 0
  23440. set @Iznos = 0
  23441. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 1         --001
  23442. IF @Iznos is not null 
  23443.     set @IznosTekGod = @Iznos
  23444. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 12         --012     
  23445. IF @Iznos is not null 
  23446.     set @IznosTekGod =@IznostekGod + @Iznos
  23447. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 21         --021     
  23448. IF @Iznos is not null 
  23449.     set @IznosTekGod =@IznostekGod + @Iznos
  23450. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 22
  23451. --kraj
  23452.  
  23453. --24 Ukupna aktiva (022+023)
  23454. Set @IznosTekGod = 0
  23455. set @Iznos = 0
  23456. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 22       --022
  23457. IF @Iznos is not null 
  23458.     set @IznosTekGod = @Iznos
  23459. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 23         --023    
  23460. IF @Iznos is not null 
  23461.     set @IznosTekGod =@IznostekGod - @Iznos
  23462. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 24
  23463. --kraj
  23464.  
  23465. --26 Kapital (102 + 103 + 104 + 105 + 106 + 107 + 108 - 109 -110)
  23466. Set @IznosTekGod = 0
  23467. set @Iznos = 0
  23468. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 27        --102
  23469. IF @Iznos is not null 
  23470.     set @IznosTekGod = @Iznos
  23471. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 28         --103    
  23472. IF @Iznos is not null 
  23473.     set @IznosTekGod =@IznostekGod + @Iznos
  23474. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 29         --104    
  23475. IF @Iznos is not null 
  23476.     set @IznosTekGod =@IznostekGod + @Iznos
  23477. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 30         --105
  23478. IF @Iznos is not null 
  23479.     set @IznosTekGod =@IznostekGod + @Iznos
  23480. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 31         --106
  23481. IF @Iznos is not null 
  23482.     set @IznosTekGod =@IznostekGod + @Iznos
  23483. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 32         --107
  23484. IF @Iznos is not null 
  23485.     set @IznosTekGod =@IznostekGod + @Iznos
  23486. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 33         --108
  23487. IF @Iznos is not null 
  23488.     set @IznosTekGod =@IznostekGod + @Iznos
  23489. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 34         --109
  23490. IF @Iznos is not null 
  23491.     set @IznosTekGod =@IznostekGod - @Iznos
  23492. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 35         --110
  23493. IF @Iznos is not null 
  23494.     set @IznosTekGod =@IznostekGod - @Iznos
  23495. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 26
  23496. --kraj
  23497.  
  23498. --41 Kratkorocne obaveze (117 + 118 + 119 + 120 + 121 +122)
  23499. Set @IznosTekGod = 0
  23500. set @Iznos = 0
  23501. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 42       --117
  23502. IF @Iznos is not null 
  23503.     set @IznosTekGod = @Iznos
  23504. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 43        --118
  23505. IF @Iznos is not null 
  23506.     set @IznosTekGod =@IznostekGod + @Iznos
  23507. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 44        --119
  23508. IF @Iznos is not null 
  23509.     set @IznosTekGod =@IznostekGod + @Iznos
  23510. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 45        --120
  23511. IF @Iznos is not null 
  23512.     set @IznosTekGod =@IznostekGod + @Iznos
  23513. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 45        --121
  23514. IF @Iznos is not null 
  23515.     set @IznosTekGod =@IznostekGod + @Iznos
  23516. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 45        --122
  23517. IF @Iznos is not null 
  23518.     set @IznosTekGod =@IznostekGod + @Iznos
  23519. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 41
  23520. --kraj
  23521.  
  23522. --41 Dugorochne obaveze (114 + 115)
  23523. Set @IznosTekGod = 0
  23524. set @Iznos = 0
  23525. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 39       --114
  23526. IF @Iznos is not null 
  23527.     set @IznosTekGod = @Iznos
  23528. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 40        --115
  23529. IF @Iznos is not null 
  23530.     set @IznosTekGod =@IznostekGod + @Iznos
  23531. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 38
  23532. --kraj
  23533.  
  23534. --36 Dugorochna rezervisanja i obaveze (114 + 115)
  23535. Set @IznosTekGod = 0
  23536. set @Iznos = 0
  23537. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 37       --112
  23538. IF @Iznos is not null 
  23539.     set @IznosTekGod = @Iznos
  23540. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 38        --113
  23541. IF @Iznos is not null 
  23542.     set @IznosTekGod =@IznostekGod + @Iznos
  23543. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 41    --116
  23544. IF @Iznos is not null 
  23545.     set @IznosTekGod =@IznostekGod + @Iznos
  23546. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 36
  23547. --kraj
  23548.  
  23549.  
  23550. --49 Ukupna pasiva (101 + 111 + 123)
  23551. Set @IznosTekGod = 0
  23552. set @Iznos = 0
  23553. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 26       --101
  23554. IF @Iznos is not null 
  23555.     set @IznosTekGod = @Iznos
  23556. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 36        --111
  23557. IF @Iznos is not null 
  23558.     set @IznosTekGod =@IznostekGod + @Iznos
  23559. select @Iznos = IznosTekGodina from #BilansSost where #BilansSost.id = 48        --123
  23560. IF @Iznos is not null 
  23561.     set @IznosTekGod =@IznostekGod + @Iznos
  23562. update #BilansSost set IznosTekGodina = round(@IznosTekGod, 0) where #BilansSost.id = 49
  23563. --kraj
  23564.  
  23565. update #BilansSost set IznosTekGodina = 0 where IznosTekGodina is null
  23566. select * from #BilansSost
  23567.  
  23568.  
  23569.  
  23570.  
  23571.  
  23572.  
  23573.  
  23574.  
  23575.  
  23576.  
  23577.  
  23578. Go
  23579. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_blagajnicki_izv]'))
  23580. drop procedure [dbo].[sp_blagajnicki_izv]
  23581.  
  23582. Go
  23583.  
  23584.  
  23585.  
  23586. CREATE         PROCEDURE sp_Blagajnicki_Izv
  23587.     @Sifra_Nal    smallint,
  23588.     @Datum_Nal    smalldatetime,
  23589.     @Br_Nal_Prik    int = NULL,
  23590.     @Sifra_Oe    smallint = NULL,
  23591.     @Kto_Anal    char(10) = NULL,
  23592.     @Preth_Sost    decimal(18,6) Output,
  23593.     @Broj_Nalog     int Output,
  23594.     @DaliDev    char(1) Output,
  23595.         @TipBlag    char(3)=NULL    --dod.16.11.07
  23596. AS
  23597.     -- Izmeneto za po organizacioni edinici na 09.11.2005
  23598.     Declare @SSQL as varchar(7000)
  23599.     --Select @Broj_Nalog = K.Broj_Nal         vaka bese do 15.10.2004
  23600.     --From KasStav K
  23601.     --Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal
  23602.     --Where K.Sifra_Nal=@Sifra_Nal and N.Datum_Nal=@Datum_Nal 
  23603.     IF @Br_Nal_Prik IS NULL
  23604.         SELECT TOP 1 @Broj_Nalog = Broj_Nal FROM Nalozi 
  23605.         WHERE Sifra_Nal = @Sifra_Nal AND Datum_Nal = @Datum_Nal ORDER BY Broj_Nal
  23606.      Else
  23607.         SET @Broj_Nalog = @Br_Nal_Prik
  23608. -- Dali dokumentot e devizen 
  23609.     Declare @ImaDev as smallint
  23610.     If @Sifra_Oe Is Not Null
  23611.         Select @ImaDev = Count(*) From KasStav K
  23612.         Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal    
  23613.         Where K.Sifra_Nal=@Sifra_Nal and N.Datum_Nal=@Datum_Nal AND K.Broj_Nal = @Broj_Nalog And KojaVal Is Not Null And K.Sifra_Oe=@Sifra_Oe
  23614.     Else 
  23615.         Select @ImaDev = Count(*) From KasStav K
  23616.         Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal    
  23617.         Where K.Sifra_Nal=@Sifra_Nal and N.Datum_Nal=@Datum_Nal AND K.Broj_Nal = @Broj_Nalog And KojaVal Is Not Null
  23618.     If @ImaDev > 0
  23619.         Set @DaliDev = 'D'
  23620.     Else 
  23621.         Set @DaliDev = 'N'
  23622. -- Prethodna sostojba
  23623.     CREATE Table #PrethSost
  23624.     (
  23625.      Sifra_Oe    smallint,
  23626.      PrethSost    decimal(18,6)
  23627.     )
  23628.     Set @SSQL = ' Select K.Sifra_Oe, Sum(K.Dolzi - K.Pobaruva)
  23629.             From KasStav K
  23630.             Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal
  23631.             Where K.Sifra_Nal=' + Cast(@Sifra_Nal as varchar(6)) + ' and N.Datum_Nal <= ''' + Cast(@Datum_Nal as varchar(30)) + ''' ' -- dali terba <= ili samo <
  23632.     If @Broj_Nalog Is Not Null
  23633.         Set @SSQL = @SSQL + ' AND (K.Broj_Nal < ' + Cast(@Broj_Nalog as varchar(10)) + ' OR N.Datum_Nal < ''' + Cast(@Datum_Nal as varchar(30)) + ''') '
  23634.     If @Sifra_Oe Is Not Null
  23635.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  23636.     If @Kto_Anal Is Not Null
  23637.         Set @SSQL = @SSQL + ' And K.Kto_Anal = ''' + @Kto_Anal + ''' '
  23638.     IF @TipBlag IS NOT NULL
  23639.             SET @SSQL=@SSQL+' AND TipBlag='''+@TipBlag+''' '
  23640.         Set @SSQL = @SSQL + ' Group By K.Sifra_Oe '
  23641.     Insert Into #PrethSost Exec(@SSQL)    
  23642.     Set @SSQL = ' Select K.KStaID, K.Broj_dok, K.Sifra_Nal, K.Broj_Nal, K.Dod_Datum, K.P_I, K.Kto_Anal, K.Kto_Osnovica,  K.Dolzi, K.Pobaruva, K.Lice, K.SMesto,
  23643.             K.Opis, K.Opis2, K.Sifra_Kup, KUP.ImeKup, K.KojaVal, KL.ImeVal, K.Kurs, K.Dev_Dolzi, K.Dev_Pobar, K.Sifra_Oper, K.USG, K.Datum_Vnes, 
  23644.             K.KasaGrupa, N.Datum_Nal, K.Sifra_Oe, Null as PrethSost, K.TipBlag, K.Sifra_Nac, PL.ImeNac
  23645.         From KasStav K
  23646.         Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal    
  23647.         Left outer Join Komint KUP On K.Sifra_Kup=KUP.Sifra_Kup
  23648.         Left Outer Join KrsLista KL On KL.SImeVal = K.KojaVal
  23649.         LEFT OUTER JOIN NacPlak PL ON K.Sifra_Nac=PL.Sifra_Nac
  23650.         Where K.Sifra_Nal=' + Cast(@Sifra_Nal as varchar(6)) + ' and N.Datum_Nal= ''' + Cast(@Datum_Nal as varchar(30)) + ''' '
  23651.     If @Broj_Nalog Is Not Null
  23652.         Set @SSQL = @SSQL + ' AND K.Broj_Nal = ' + Cast(@Broj_Nalog as varchar(10)) + ' '
  23653.     If @Sifra_Oe Is Not Null
  23654.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  23655.     If @Kto_Anal Is Not Null
  23656.         Set @SSQL = @SSQL + ' And K.Kto_Anal = ''' + @Kto_Anal + ''' '
  23657.     IF @TipBlag IS NOT NULL
  23658.         SET @SSQL=@SSQL+' AND TipBlag='''+@TipBlag+''' '
  23659.     Set @SSQL=@SSQL + ' 
  23660.         Union
  23661.         Select Null as KStaID, Null as Broj_dok, Null as Sifra_Nal, Null as Broj_Nal, Null as Dod_Datum, Null as P_I, Null as Kto_Anal, Null as Kto_Osnovica, Null as Dolzi, Null as Pobaruva, 
  23662.             Null as Lice, Null as SMesto, Null as Opis, Null as Opis2, Null as Sifra_Kup, Null as ImeKup, Null as KojaVal, Null as ImeVal, Null as Kurs, 
  23663.             Null as Dev_Dolzi, Null as Dev_Pobar, Null as Sifra_Oper, Null as USG, Null as Datum_Vnes, Null as KasaGrupa, Null as Datum_Nal, 
  23664.             P.Sifra_Oe, P.PrethSost, Null TipBlag, Null Sifra_Nac, Null ImeNac
  23665.             From #PrethSost P 
  23666.             Where 1=1'
  23667.     If @Sifra_Oe Is Not Null
  23668.         Set @SSQL = @SSQL + ' And P.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  23669.     Set @SSQL = @SSQL + ' Order By K.Sifra_Oe, K.KStaID'
  23670.     Exec(@SSQL)
  23671.  
  23672.  
  23673.  
  23674.  
  23675.  
  23676. Go
  23677. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_blagajnicki_izv_sum]'))
  23678. drop procedure [dbo].[sp_blagajnicki_izv_sum]
  23679.  
  23680. Go
  23681.  
  23682. CREATE      PROCEDURE sp_Blagajnicki_Izv_Sum
  23683.     @Sifra_Nal    smallint,
  23684.     @Datum_Nal    smalldatetime,
  23685.     @Sifra_Oe    smallint = Null,
  23686.     @Kto_Anal     char(10) = Null,
  23687.     @TipBlag    char(3)=NULL    --dod.16.11.07
  23688. --    @Br_Nal_Prik    int = NULL,
  23689. --    @Preth_Sost    decimal(18,6) Output,
  23690. --    @Broj_Nalog     int Output 
  23691. AS
  23692.     Declare @SSQL as varchar(4000)
  23693.     Create Table #Blag
  23694.     (
  23695.      KojaVal        char(3),
  23696.      PrethSost    decimal(18,6),
  23697.      TekDolzi    decimal(18,6),
  23698.      TekPobar    decimal(18,6)
  23699.     )
  23700.     Set @SSQL = ' Select K.KojaVal, Sum(K.Dev_Dolzi - K.Dev_Pobar)
  23701.             From KasStav K
  23702.             Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal
  23703.             Where K.Sifra_Nal= ' + Cast(@Sifra_Nal as varchar(6)) + ' and N.Datum_Nal < ''' + cast(@Datum_Nal as varchar(30)) + ''' '
  23704.     If @Sifra_Oe Is Not Null
  23705.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  23706.     If @Kto_Anal Is Not Null
  23707.         Set @SSQL = @SSQL + ' And K.Kto_Anal = ''' + @Kto_Anal + ''' '
  23708.     IF @TipBlag IS NOT NULL
  23709.         SET @SSQL=@SSQL+' AND TipBlag='''+@TipBlag+''' '
  23710.     Set @SSQL=@SSQL + ' Group By K.KojaVal '
  23711.     Insert Into #Blag (KojaVal, PrethSost) Exec(@SSQL)
  23712.     Set @SSQL = ' Select K.KojaVal, Sum(K.Dev_Dolzi), Sum(K.Dev_Pobar)
  23713.             From KasStav K
  23714.             Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal    
  23715.             Where K.Sifra_Nal= ' + Cast(@Sifra_Nal as varchar(6)) + ' and N.Datum_Nal = ''' + cast(@Datum_Nal as varchar(30)) + ''' ' -- AND K.Broj_Nal = @Broj_Nalog
  23716. --            Where K.Sifra_Nal=@Sifra_Nal and N.Datum_Nal=@Datum_Nal -- AND K.Broj_Nal = @Broj_Nalog
  23717.     If @Sifra_Oe Is Not Null
  23718.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  23719.     If @Kto_Anal Is Not Null
  23720.         Set @SSQL = @SSQL + ' And K.Kto_Anal = ''' + @Kto_Anal + ''' '
  23721.     IF @TipBlag IS NOT NULL
  23722.         SET @SSQL=@SSQL+' AND TipBlag='''+@TipBlag+''' '
  23723.     Set @SSQL=@SSQL + ' Group By K.KojaVal '
  23724.     Insert Into #Blag (KojaVal, TekDolzi, TekPobar) Exec(@SSQL)
  23725.     Select B.KojaVal, KL.ImeVal, Sum(B.PrethSost) PrethSost, Sum(B.TekDolzi) TekDolzi, Sum(B.TekPobar) TekPobar
  23726.     From #Blag B
  23727.     Left Outer Join KrsLista KL On KL.SImeVal = B.KojaVal 
  23728.     Group By B.KojaVal, KL.ImeVal
  23729.  
  23730.  
  23731.  
  23732.  
  23733. Go
  23734. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_blagajnicki_izvestaj]'))
  23735. drop procedure [dbo].[sp_blagajnicki_izvestaj]
  23736.  
  23737. Go
  23738. CREATE      PROCEDURE sp_Blagajnicki_Izvestaj
  23739.     @Sifra_Nal    smallint,
  23740.     @Datum_Nal    smalldatetime,
  23741.     @Br_Nal_Prik    int = NULL,
  23742.     @Sifra_Oe    smallint = Null,
  23743.     @Koi_Oe    varchar(10) = Null,
  23744.     @Kto_Anal    char(10) = Null,
  23745.     @Broj_Nalog     int Output 
  23746. AS
  23747.     Declare @SSQL as varchar(4000)
  23748.     IF @Br_Nal_Prik IS NULL
  23749.         SELECT TOP 1 @Broj_Nalog = Broj_Nal FROM Nalozi 
  23750.         WHERE Sifra_Nal = @Sifra_Nal AND Datum_Nal = @Datum_Nal ORDER BY Broj_Nal
  23751.      Else
  23752.         SET @Broj_Nalog = @Br_Nal_Prik
  23753.     Set @SSQL = ' Select K.KStaID, K.Broj_dok, K.Sifra_Nal, K.Broj_Nal, K.Dod_Datum, K.P_I, K.Kto_Anal, K.Dolzi, K.Pobaruva, K.Lice, K.SMesto,
  23754.         K.Opis, K.Opis2, K.Sifra_Kup, KUP.ImeKup, K.KojaVal, K.Kurs, K.Dev_Dolzi, K.Dev_Pobar, K.Sifra_Oper, K.USG, K.Datum_Vnes, 
  23755.         K.KasaGrupa, N.Datum_Nal, K.Sifra_Oe
  23756.     From KasStav K
  23757.     Inner Join Nalozi N On K.Sifra_Nal = N.Sifra_Nal and K.Broj_Nal=N.Broj_Nal    
  23758.     left outer Join Komint KUP On K.Sifra_Kup=KUP.Sifra_Kup
  23759.     Where 1=1 '
  23760.     If @Sifra_Nal Is Not Null
  23761.         Set @SSQL = @SSQL + ' and K.Sifra_Nal= ' + cast(@Sifra_Nal as varchar(6)) + ' '
  23762.     If @Datum_Nal Is Not Null
  23763.         Set @SSQL = @SSQL + ' and N.Datum_Nal= ''' + cast(@Datum_Nal as varchar(30)) + ''' '
  23764.     If @Broj_Nalog Is Not Null
  23765.         Set @SSQL = @SSQL + ' AND K.Broj_Nal = ' + cast(@Broj_Nalog as varchar(10)) + ' '
  23766.     If @Sifra_Oe Is Not Null
  23767.         Set @SSQL = @SSQL + ' AND K.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  23768.     If @Koi_OE Is Not NULL
  23769.              Set @SSQL  = @SSQL + ' and K.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  23770.     If @Kto_Anal Is Not Null
  23771.         Set @SSQL = @SSQL + ' AND K.Kto_Anal = ''' + @Kto_Anal + ''' '
  23772.     Set @SSQL = @SSQL + ' Order by KStaID '
  23773.     Exec(@SSQL)
  23774.  
  23775.  
  23776.  
  23777. Go
  23778. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_blagizvdatvnes]'))
  23779. drop procedure [dbo].[sp_blagizvdatvnes]
  23780.  
  23781. Go
  23782.  
  23783.  
  23784. CREATE PROCEDURE sp_BlagIzvDatVnes
  23785.    @Sifra_Dok varchar(200), 
  23786.    @Sifra_OE Smallint,
  23787.    @Datum_Vnes_Od smallDatetime,
  23788.    @Datum_Vnes_Do smallDatetime
  23789.   
  23790. AS
  23791.    Declare @SSQL Varchar(4000)
  23792.    
  23793.       SET @SSQL = 'SELECT A.*, K.ImeKup, K.SMesto FROM AnFinDok A
  23794.       LEFT OUTER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  23795.       WHERE 1=1 '  
  23796.     
  23797.     If @Sifra_Dok Is NOT Null 
  23798.         SET @SSQL = @SSQL + ' AND Sifra_Dok IN (' + Cast(@Sifra_Dok As Varchar(200)) + ') '
  23799.     If @Sifra_OE Is NOT Null
  23800.         SET @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  23801.     If @Datum_Vnes_Od Is NOT Null
  23802.             set @SSQL = @SSQL + 'AND cast(cast(datepart(yyyy, A.Datum_Vnes) as char(4)) +''-''+ 
  23803.             cast(datepart(mm, A.Datum_Vnes) as char(2)) +''-''+
  23804.             cast(datepart(dd, A.Datum_Vnes) as char(2)) as smalldatetime)    
  23805.              >= '''+cast(@Datum_Vnes_Od as varchar(35))+''' '    
  23806.     If @Datum_Vnes_Do Is NOT Null
  23807.         set @SSQL = @SSQL + ' AND cast(cast(datepart(yyyy, A.Datum_Vnes) as char(4)) +''-''+ 
  23808.             cast(datepart(mm, A.Datum_Vnes) as char(2)) +''-''+
  23809.             cast(datepart(dd, A.Datum_Vnes) as char(2)) as smalldatetime)    
  23810.              <= '''+cast(@Datum_Vnes_Do as varchar(35))+''' '
  23811.      print(@SSQL)  
  23812.      EXEC(@SSQL)
  23813.     RETURN @@ERROR
  23814.  
  23815.  
  23816. Go
  23817. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_blagsumkpzagrupa]'))
  23818. drop procedure [dbo].[sp_blagsumkpzagrupa]
  23819.  
  23820. Go
  23821.  
  23822.  
  23823. CREATE   PROCEDURE sp_BlagSumKPZaGrupa
  23824.     @Sifra_Nal    smallint,
  23825.     @Broj_Nal    int,
  23826.     @KasaGrupa    varchar(10),
  23827.     @Sifra_Nac    smallint,
  23828.     @Iznos        decimal(18,2)=0 OUTPUT 
  23829. AS
  23830. IF @Sifra_Nac IS NULL
  23831.     SELECT @Iznos = SUM(Dolzi) FROM KasStav WHERE P_I='P' AND Sifra_Nal=@Sifra_Nal AND Broj_Nal=@Broj_Nal AND UPPER(KasaGrupa)=UPPER(@KasaGrupa)
  23832. ELSE
  23833.     SELECT @Iznos = SUM(Dolzi) FROM KasStav WHERE P_I='P' AND Sifra_Nal=@Sifra_Nal AND Broj_Nal=@Broj_Nal AND UPPER(KasaGrupa)=UPPER(@KasaGrupa) AND Sifra_Nac=@Sifra_Nac
  23834.  
  23835.  
  23836.  
  23837.  
  23838.  
  23839. Go
  23840. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_blokiraj_1_komint]'))
  23841. drop procedure [dbo].[sp_blokiraj_1_komint]
  23842.  
  23843. Go
  23844. CREATE PROCEDURE sp_Blokiraj_1_Komint
  23845.     @Sifra_Kup    char(6),
  23846.     @MozeIsporaka    char(1)
  23847. AS
  23848.     Update Komint 
  23849.     Set MozeIsporaka=@MozeIsporaka
  23850.     Where Sifra_Kup=@Sifra_Kup
  23851.  
  23852.  
  23853.  
  23854. Go
  23855. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_blokiraj_komint]'))
  23856. drop procedure [dbo].[sp_blokiraj_komint]
  23857.  
  23858. Go
  23859.  
  23860.  
  23861. CREATE   PROCEDURE sp_Blokiraj_Komint
  23862.     @Sifra_Kup_Od    char(6),
  23863.     @Sifra_Kup_Do    char(6)
  23864. AS
  23865. Declare @SSQL as varchar(8000)
  23866. Set @SSQL = ' Update Komint 
  23867.     Set MozeIsporaka = dbo.fix_Moze_Isporaka(Sifra_Kup, MozeIsporaka,Limit_Dolzi,Garancija, GetDate(), KDrugo5)
  23868.     Where MozeIsporaka Not In (''N'', ''F'') '
  23869. If @Sifra_Kup_Od Is Not Null
  23870.     Set @SSQL = @SSQL + ' And Sifra_Kup >= ' + @Sifra_Kup_Od + ' '
  23871. If @Sifra_Kup_Do Is Not Null
  23872.     Set @SSQL = @SSQL + ' And Sifra_Kup <= ' + @Sifra_Kup_Do + ' '
  23873. Exec(@SSQL)
  23874.  
  23875.  
  23876.  
  23877.  
  23878. Go
  23879. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_prodpomes]'))
  23880. drop procedure [dbo].[sp_brand_prodpomes]
  23881.  
  23882. Go
  23883. CREATE                      PROCEDURE sp_Brand_ProdPoMes
  23884.     @Sifra_OE Smallint, 
  23885.     @KoiOE Varchar(200) = Null,
  23886.     @Pod1 Smallint = Null,
  23887.     @Pod2 Smallint = Null,
  23888.     @Pod3 Smallint = Null,
  23889.     @Pod4 Smallint = Null,
  23890.     @Pod5 Smallint = Null,
  23891.     @Sifra_Tip Smallint = Null,
  23892.     @Datum_Od Smalldatetime = Null,
  23893.     @Datum_Do Smalldatetime = Null,
  23894.     @Sifra_Kup_Od Char(6) = Null,
  23895.     @Sifra_Kup_Do Char(6) = Null,
  23896.     @Koi_Gradovi Varchar(200) = Null,
  23897.     @Sifra_Pat    smallint = Null,
  23898.     @TipDokProd    varchar(200) = Null,
  23899.     @Koi_Regioni     Varchar(200) = Null,
  23900.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  23901.     @TipKup Char(11) = Null,
  23902.     @Sifra_obj Smallint = Null,
  23903.     @KomercKako     char(1) = 'I',
  23904.     @KojaCena    char(1) = '1',                     -- 4 - NPS,    3 - Osnovna,     1 - Krajna,     2 - SoRabat
  23905.     @RazbijSostav Char(1) = 'N',
  23906.     @Podelba    char(1) = 'B'        -- B - Brend    G - Grupa,     P - Podgrupa,     (1,2,3,4,5) - Podelba(1, 2, 3, 4, 5) 
  23907. AS
  23908.     If @PoKojDatum = 'V'
  23909.             If @Datum_Do Is Not Null
  23910.         Set @Datum_Do = @Datum_Do + 1
  23911.     Declare @SSQL Varchar(4000)
  23912.     Declare @SSQL1 Varchar(4000)
  23913.     Declare @SSQLUsl Varchar(8000)
  23914.     Declare @SSQLGroup Varchar(4000)
  23915.     Declare @SSQLDat Varchar(4000)
  23916.     Set @SSQL1 = ' '
  23917.     Set @SSQLUsl = ' '
  23918.     Set @SSQLGroup = ' '
  23919.     Set @SSQLDat = ' '
  23920.     CREATE    Table #tSostav
  23921.     (    Sifra_Art Varchar(20),
  23922.         Sifra_Sur Varchar(20),
  23923.         Ima_Kolic Decimal(18,6),
  23924.         Cena Decimal(18,6),
  23925.         VkCena Decimal(18,6)
  23926.     )
  23927.     If @RazbijSostav = 'D'
  23928.         Begin
  23929.             Set @SSQL = 'Insert #tSostav
  23930.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  23931.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  23932.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  23933.             Exec(@SSQL)
  23934.         End
  23935.     Set @SSQL = 'Insert #tSostav
  23936.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  23937.         From Katart K '
  23938.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  23939.     If @RazbijSostav = 'D'
  23940.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  23941.     Exec(@SSQL)
  23942. --select * from #tsostav
  23943. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  23944. --------------------------------------------------------------
  23945.     Create Table #Rezult
  23946.     (
  23947.      Sifra        Varchar(10),
  23948.      Sifra_Art    varchar(20),
  23949.      Mesec        varchar(2),
  23950.      Godina        varchar(4),
  23951.      Vrednost    decimal(18,6),
  23952.      ProcPoBr    decimal(9,3),
  23953.      ProcPoArt    decimal(9,3)
  23954.     )
  23955.     If @Podelba = 'B'
  23956.         Set @SSQL = 'Select B.Sifra_Drg1, '
  23957.     Else If @Podelba = 'G'
  23958.         Set @SSQL = 'Select P.Sifra_Gr, '
  23959.     Else If @Podelba = 'P'
  23960.         Set @SSQL = 'Select K.Sifra_Podg, '
  23961.     Else If @Podelba = '1'
  23962.         Set @SSQL = 'Select K.Drugo1, '
  23963.     Else If @Podelba = '2'
  23964.         Set @SSQL = 'Select K.Drugo2, '
  23965.     Else If @Podelba = '3'
  23966.         Set @SSQL = 'Select K.Drugo3, '
  23967.     Else If @Podelba = '4'
  23968.         Set @SSQL = 'Select K.Drugo4, '
  23969.     Else If @Podelba = '5'
  23970.         Set @SSQL = 'Select K.Drugo5, '
  23971.     If @Podelba = 'B'
  23972.         Set @SSQL = @SSQL + ' K.Sifra_Drg, 
  23973.                 Month(S.Datum_Dok) As Mesec, Year(S.Datum_Dok) As Godina, '    -- bese sifra_art ama za Mia go naprajvme po brend i zbiren brend
  23974.     Else
  23975.         Set @SSQL = @SSQL + ' TS.Sifra_Sur as Sifra_Art, 
  23976.                 Month(S.Datum_Dok) As Mesec, Year(S.Datum_Dok) As Godina, '
  23977.     If @KojaCena = '3'
  23978.         Set @SSQL1 = @SSQL1 + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, '
  23979.     Else If @KojaCena = '2'
  23980.         Set @SSQL1 = @SSQL1 + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, '
  23981.     Else If @KojaCena = '1'
  23982.         Set @SSQL1 = @SSQL1 + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, '
  23983.     Else If @KojaCena = '4'
  23984.         Set @SSQL1 = @SSQL1 + ' Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS, '
  23985.     Set @SSQL1  = @SSQL1 + ' 0, 0 '
  23986.     Set @SSQL1 = @SSQL1 + 'From #tSostav TS
  23987.                 Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  23988.                 Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  23989.                 Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  23990.                 Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  23991.                 Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup AND KO.SIFRA_OBJ=D.SIFRA_OBJ '
  23992.     If @Podelba = 'G'
  23993.         Set @SSQL1 = @SSQL1 + ' Left Outer Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg ' 
  23994.     If @Podelba = 'B'
  23995.         Set @SSQL1 = @SSQL1 + ' Left Outer Join DrgPodel B On B.Sifra_Drg = K.Sifra_Drg ' 
  23996.     Set @SSQLUsl = @SSQLUsl + 'Where 1=1 ' --K.Iskluci <> ''D'' '
  23997.        If @KomercKako = 'I'
  23998.         If @Sifra_Pat IS NOT NULL
  23999.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  24000.        If @KomercKako = 'T'
  24001.         If @Sifra_Pat IS NOT NULL
  24002.             SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  24003.     If @Pod1 Is Not NULL
  24004.            Begin
  24005.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  24006.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  24007.            End
  24008.     If @Pod2 Is Not NULL
  24009.            Begin
  24010.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  24011.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  24012.            End
  24013.     If @Pod3 Is Not NULL
  24014.            Begin
  24015.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  24016.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  24017.            End
  24018.     If @Pod4 Is Not NULL
  24019.            Begin
  24020.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  24021.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  24022.            End
  24023.     If @Pod5 Is Not NULL
  24024.            Begin
  24025.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  24026.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  24027.            End
  24028. --    If @Pod5 Is Not NULL
  24029. --        Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  24030.     If @Sifra_Tip Is Not Null
  24031.         SET @SSQLUsl = @SSQLUsl +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  24032.     If @Sifra_Kup_Od Is Not NULL
  24033.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  24034.     If @Sifra_Kup_Do Is Not NULL
  24035.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  24036.     If @Sifra_obj Is Not NULL
  24037.         Set @SSQLUsl = @SSQLUsl + 'And D.Sifra_obj=''' + Cast(@Sifra_obj As Varchar(5)) + ''' '
  24038.     If @Koi_Gradovi Is Not NULL    
  24039.         Begin
  24040.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  24041.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  24042.         End
  24043.     If @Koi_Regioni Is Not NULL    
  24044.         Begin
  24045.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  24046.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  24047.         End
  24048.     If @TipKup Is Not NULL
  24049.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  24050.     If @Sifra_OE Is Not NULL    
  24051.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  24052.     If @KoiOE Is Not NULL
  24053.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  24054.     If @TipDokProd Is Not NULL
  24055.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  24056.     If @PoKojDatum = 'V'
  24057.           Begin
  24058.         If @Datum_Od Is Not NULL
  24059.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  24060.         If @Datum_Do Is Not NULL
  24061.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  24062.           End
  24063.     Else 
  24064.           Begin
  24065.         If @Datum_Od Is NOT Null
  24066.             Begin
  24067.                 SET @SSQLDat = @SSQLDat + 'AND S.Datum_Dok >= ''' +Cast(@Datum_OD as varchar(35)) +''' '
  24068.             End
  24069.         If @Datum_Do Is NOT Null
  24070.             Begin
  24071.                 SET @SSQLDat = @SSQLDat + 'AND S.Datum_Dok <= ''' +Cast(@Datum_Do as varchar(35)) +''' '
  24072.             End
  24073.            End
  24074.     If @Podelba = 'B'
  24075.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Sifra_Drg, B.Sifra_Drg1, '
  24076.     Else If @Podelba = 'G'
  24077.         Set @SSQLGroup = @SSQLGroup + 'Group By P.Sifra_Gr, TS.Sifra_Sur, '
  24078.     Else If @Podelba = 'P'
  24079.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Sifra_Podg, TS.Sifra_Sur, '
  24080.     Else If @Podelba = '1'
  24081.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo1, TS.Sifra_Sur, '
  24082.     Else If @Podelba = '2'
  24083.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo2, TS.Sifra_Sur, '
  24084.     Else If @Podelba = '3'
  24085.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo3, TS.Sifra_Sur, '
  24086.     Else If @Podelba = '4'
  24087.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo4, TS.Sifra_Sur, '
  24088.     Else If @Podelba = '5'
  24089.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo5, TS.Sifra_Sur, '
  24090.     Set @SSQLGroup = @SSQLGroup + ' Month(S.Datum_Dok), Year(S.Datum_Dok) '
  24091.     Insert Into #Rezult Exec(@SSQL+@SSQL1+@SSQLUsl+@SSQLDat+@SSQLGroup)
  24092. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  24093.     Create Table #Tab        -- Za Presmetuvanje na procentite
  24094.     (
  24095.      Sifra        Varchar(10),
  24096.      Vkupno    decimal(18,6),
  24097.      ProcPoBr    decimal(9,3)
  24098.     )
  24099.     Update #Rezult Set Sifra = 756 Where Sifra Is Null        -- Po Pretpostavka deka nema podelba so sifra 756
  24100.     Insert Into #Tab Select Sifra, Sum(Vrednost), 0 From #Rezult Group By Sifra
  24101.     Declare @Total as decimal(18,6)
  24102.     Select @Total = Sum(Vkupno) From #Tab
  24103.     Update #Tab Set ProcPoBr = Vkupno/@Total*100
  24104.     Update #Rezult
  24105.     Set #Rezult.ProcPoArt=#Rezult.Vrednost/#Tab.Vkupno*100--, #Rezult.ProcPoBr=#Tab.ProcPoBr
  24106.     From #Tab
  24107.     Where #Rezult.Sifra=#Tab.Sifra And #Tab.Vkupno <> 0
  24108. --Select * from #Tab2
  24109. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  24110. ----------------------------------------------------------------- Prethodna Godina --------------------------------------------------------------------------------------------------------
  24111.     Declare @Godina as smallint
  24112.     Declare @DatOd as smalldatetime
  24113.     Declare @DatDo as smalldatetime
  24114.     Set @Godina =Year(@Datum_Od)-1
  24115.     Set @DatOd = Cast(Cast(@Godina as Varchar(4)) + '-01-01' as smalldatetime)
  24116.     Set @DatDo = Cast(Cast(@Godina as Varchar(4)) + '-12-31' as smalldatetime)
  24117.     Set @SSQLDat = ' '
  24118.     Set @SSQLGroup = ' '
  24119.     If @Podelba = 'B'
  24120.         Set @SSQL = 'Select B.Sifra_Drg1, '
  24121.     Else If @Podelba = 'G'
  24122.         Set @SSQL = 'Select P.Sifra_Gr, '
  24123.     Else If @Podelba = 'P'
  24124.         Set @SSQL = 'Select K.Sifra_Podg, '
  24125.     Else If @Podelba = '1'
  24126.         Set @SSQL = 'Select K.Drugo1, '
  24127.     Else If @Podelba = '2'
  24128.         Set @SSQL = 'Select K.Drugo2, '
  24129.     Else If @Podelba = '3'
  24130.         Set @SSQL = 'Select K.Drugo3, '
  24131.     Else If @Podelba = '4'
  24132.         Set @SSQL = 'Select K.Drugo4, '
  24133.     Else If @Podelba = '5'
  24134.         Set @SSQL = 'Select K.Drugo5, '
  24135. --    Set @SSQL = @SSQL + 'TS.Sifra_Sur as Sifra_Art, 0 As Mesec, Year(S.Datum_Dok) As Godina, '
  24136.     If @Podelba = 'B'
  24137.         Set @SSQL = @SSQL + ' K.Sifra_Drg, 
  24138.                 0 As Mesec,  Year(S.Datum_Dok) As Godina, '
  24139.     Else
  24140.         Set @SSQL = @SSQL + ' TS.Sifra_Sur as Sifra_Art, 
  24141.                 0 As Mesec,  Year(S.Datum_Dok) As Godina, '
  24142.     If @Podelba = 'B'
  24143.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Sifra_Drg, B.Sifra_Drg1, '
  24144.     Else If @Podelba = 'G'
  24145.         Set @SSQLGroup = @SSQLGroup + 'Group By P.Sifra_Gr, TS.Sifra_Sur, '
  24146.     Else If @Podelba = 'P'
  24147.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Sifra_Podg, TS.Sifra_Sur, '
  24148.     Else If @Podelba = '1'
  24149.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo1, TS.Sifra_Sur, '
  24150.     Else If @Podelba = '2'
  24151.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo2, TS.Sifra_Sur, '
  24152.     Else If @Podelba = '3'
  24153.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo3, TS.Sifra_Sur, '
  24154.     Else If @Podelba = '4'
  24155.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo4, TS.Sifra_Sur, '
  24156.     Else If @Podelba = '5'
  24157.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Drugo5, TS.Sifra_Sur, '
  24158.     Set @SSQLGroup = @SSQLGroup + ' Year(S.Datum_Dok) '
  24159.     If @PoKojDatum = 'V'
  24160.           Begin
  24161.         If @DatOd Is Not NULL
  24162.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  24163.         If @DatDo Is Not NULL
  24164.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  24165.           End
  24166.     Else 
  24167.           Begin
  24168.         If @DatOd Is NOT Null
  24169.             Begin
  24170.                 SET @SSQLDat = @SSQLDat + 'AND S.Datum_Dok >= ''' +Cast(@DatOd as varchar(35)) +''' '
  24171.             End
  24172.         If @DatDo Is NOT Null
  24173.             Begin
  24174.                 SET @SSQLDat = @SSQLDat + 'AND S.Datum_Dok <= ''' +Cast(@DatDo as varchar(35)) +''' '
  24175.             End
  24176.            End
  24177. print @SSQL+@SSQL1+@SSQLUsl+@SSQLDat+@SSQLGroup
  24178.     Insert Into #Rezult Exec(@SSQL+@SSQL1+@SSQLUsl+@SSQLDat+@SSQLGroup)
  24179. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  24180. -------- Go zapisuvame procentot na nivo na podelbata vo sekoj red zaradi cross tabot--------------------------------------------------------------------
  24181.     Update #Rezult Set Sifra = 756 Where Sifra Is Null  
  24182.     Update #Rezult
  24183.     Set #Rezult.ProcPoBr=#Tab.ProcPoBr
  24184.     From #Tab
  24185.     Where #Rezult.Sifra=#Tab.Sifra-- And #Tab.Vkupno > 0
  24186.     Update #Rezult Set Sifra = Null Where Sifra = 756
  24187. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  24188.     Set @SSQL = ' Select R.Sifra, '
  24189.     If @Podelba = 'B'
  24190.         Set @SSQL = @SSQL + ' BB.Ime_Drg1 Ime, '
  24191.     Else If @Podelba = 'G'
  24192.         Set @SSQL = @SSQL + ' G.Ime_Gr Ime, '
  24193.     Else If @Podelba = 'P'
  24194.         Set @SSQL = @SSQL + ' P.Ime_Podg Ime, '
  24195.     Else If @Podelba = '1'
  24196.         Set @SSQL = @SSQL + ' D1.Ime_1 Ime, '
  24197.     Else If @Podelba = '2'
  24198.         Set @SSQL = @SSQL + ' D2.Ime_2 Ime, '
  24199.     Else If @Podelba = '3'
  24200.         Set @SSQL = @SSQL + ' D3.Ime_3 Ime, '
  24201.     Else If @Podelba = '4'
  24202.         Set @SSQL = @SSQL + ' D4.Ime_4 Ime, '
  24203.     Else If @Podelba = '5'
  24204.         Set @SSQL = @SSQL + ' D5.Ime_5 Ime, '
  24205.     Set @SSQL = @SSQL + ' R.Sifra_Art, '
  24206.     If @Podelba = 'B'
  24207.         Set @SSQL = @SSQL + ' B.Ime as ImeArt, '
  24208.     Else 
  24209.         Set @SSQL = @SSQL + ' K.ImeArt, '
  24210.     Set @SSQL = @SSQL + ' R.Mesec, R.Godina, R.Vrednost, R.ProcPoBr, R.ProcPoArt
  24211.                 From #Rezult R '
  24212.     If  @Podelba <> 'B'
  24213.         Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art = R.Sifra_Art '
  24214.     If @Podelba = 'B'
  24215.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg = R.Sifra_Art
  24216.                       Left Outer Join DrgPodel1 BB On BB.Sifra_Drg1 = B.Sifra_Drg1 '
  24217.     Else If @Podelba = 'G'
  24218.         Set @SSQL = @SSQL + ' Left Outer Join Grupi G On G.Sifra_Gr = R.Sifra '
  24219.     Else If @Podelba = 'P'
  24220.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg = R.Sifra '
  24221.     Else If @Podelba = '1'
  24222.         Set @SSQL = @SSQL + ' Left Outer Join Drugo1 D1 On D1.Sifra_1 = R.Sifra '
  24223.     Else If @Podelba = '2'
  24224.         Set @SSQL = @SSQL + ' Left Outer Join Drugo2 D2 On D2.Sifra_2 = R.Sifra '
  24225.     Else If @Podelba = '3'
  24226.         Set @SSQL = @SSQL + ' Left Outer Join Drugo3 D3 On D3.Sifra_3 = R.Sifra '
  24227.     Else If @Podelba = '4'
  24228.         Set @SSQL = @SSQL + ' Left Outer Join Drugo4 D4 On D4.Sifra_4 = R.Sifra '
  24229.     Else If @Podelba = '5'
  24230.         Set @SSQL = @SSQL + ' Left Outer Join Drugo5 D5 On D5.Sifra_5 = R.Sifra '
  24231.     Set @SSQL = @SSQL + ' Order By R.Sifra, R.Sifra_Art, R.ProcPoBr '
  24232. print @SSQL
  24233.     Exec(@SSQL)
  24234.  
  24235.  
  24236.  
  24237. Go
  24238. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_prom]'))
  24239. drop procedure [dbo].[sp_brand_prom]
  24240.  
  24241. Go
  24242.  
  24243. CREATE    PROCEDURE sp_Brand_Prom
  24244.     @Sifra_OE Smallint, 
  24245.     @KoiOE Varchar(300) = Null,
  24246.     @Brand_Od Smallint = Null,
  24247.     @Brand_Do Smallint = Null,
  24248.     @Sifra_Kup_Od Char(6) = Null,
  24249.     @Sifra_Kup_Do Char(6) = Null,
  24250.     @Pod1 Smallint = Null,
  24251.     @Pod2 Smallint = Null,
  24252.     @Pod3 Smallint = Null,
  24253.     @Pod4 Smallint = Null,
  24254.     @Pod5 Smallint = Null,
  24255.     @Sifra_Tip Smallint = Null,
  24256.     @Datum_Od Smalldatetime = Null,
  24257.     @Datum_Do Smalldatetime = Null,
  24258.     @Kolku Smallint = Null,
  24259.     @Podred Char(1) = Null,
  24260.     @Lokacija Varchar(10) = Null,
  24261.     @Sifra_Gr Char(3) = Null,
  24262.     @Sifra_Podg Char(6) = Null,
  24263.     @Kto Char(6) = Null,
  24264.     @TipKup Varchar(11) = Null,
  24265.     @Komint_KObj Char(1) = Null,
  24266.     @PoZbirenBrand Char(1) = Null,
  24267.     @RazbijSostav Char(1) = 'N',
  24268.     @Koi_Gradovi varchar(200) = Null,
  24269.     @Koi_Regioni varchar(200) = Null,
  24270.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  24271.     @Drugo1    smallint = Null,
  24272.     @Drugo2    smallint = Null,
  24273.     @Drugo3    smallint = Null,
  24274.     @Drugo4    smallint = Null,
  24275.     @Drugo5    smallint = Null
  24276. AS
  24277.     If @PoKojDatum = 'V'
  24278.             If @Datum_Do Is Not Null
  24279.         Set @Datum_Do = @Datum_Do + 1
  24280.     Declare @SSQL As Varchar(8000)
  24281.     create  Table #tSostav
  24282.     (    Sifra_Art Varchar(20),
  24283.         Sifra_Sur Varchar(20),
  24284.         Ima_Kolic Decimal(18,6),
  24285.         Cena Decimal(18,6),
  24286.         VkCena Decimal(18,6)
  24287.     )
  24288.     If @RazbijSostav = 'D'
  24289.         Begin
  24290.             Set @SSQL = 'Insert #tSostav
  24291.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  24292.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  24293.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  24294.             Exec(@SSQL)
  24295.         End
  24296.     Set @SSQL = 'Insert #tSostav
  24297.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  24298.         From Katart K '
  24299.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  24300.     If @RazbijSostav = 'D'
  24301.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  24302.     Exec(@SSQL)
  24303. --select * from #tsostav
  24304. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  24305. --------------------------------------------------------------
  24306.     Create Table #BPromet
  24307.     (    Sifra_Brand Smallint,
  24308.         Mesec Smallint,
  24309.         Godina Smallint,
  24310.         Tip Varchar(20),
  24311.         UL_Edinici Decimal(18,6),
  24312.         Vk_Osnov Decimal(18,6),
  24313.         Vk_SoRabat Decimal(18,6),
  24314.         Vk_Krajna Decimal(18,6),
  24315.         Vk_NPS Decimal(18,6)
  24316.     )
  24317. ---------------------------------------------
  24318. -- Gi Presmetuvam Velicinite za Import
  24319. ---------------------------------------------
  24320.     If @PoZbirenBrand Is Null
  24321.         Set @SSQL = 'Select K.Sifra_Drg Sifra_Brand, '
  24322.     Else
  24323.         Set @SSQL = 'Select B.Sifra_Drg1 Sifra_Brand, '
  24324.     Set @SSQL = @SSQL + 'Month(S.Datum_Dok) Mesec,
  24325.         Year(S.Datum_Dok) Godina,
  24326.         ''Import'',
  24327.         Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)) UL_Edinici,
  24328.         Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)) as Vr_Osnov, 
  24329.         Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_SoRabat,
  24330.         Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_Krajna,
  24331.         Sum(S.Kolic*TS.Ima_Kolic*K.GotCena) Vk_NPS
  24332.         From #tSostav TS
  24333.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  24334.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art
  24335.         Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  24336.         Inner Join Dokr D ON S.DokrID=D.DokrID '
  24337.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null)
  24338.          Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@Koi_Gradovi Is Not Null)
  24339.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  24340.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  24341.     If @PoZbirenBrand Is Not Null
  24342.         Set @SSQL = @SSQL + 'Inner Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  24343.     If @Sifra_Gr Is Not Null
  24344.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  24345.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' And D.Sifra_Dok=15 '
  24346.     If @Brand_Od Is Not Null
  24347.         Set @SSQL = @SSQL + 'And K.Sifra_Drg>=' + Cast(@Brand_Od As Varchar(6)) + ' '
  24348.     If @Brand_Do Is Not Null
  24349.         Set @SSQL = @SSQL + 'And K.Sifra_Drg<=' + Cast(@Brand_Do As Varchar(6)) + ' '
  24350.     If @Sifra_Podg Is Not Null
  24351.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  24352.     If @Sifra_Gr Is Not Null
  24353.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  24354.     If @PoKojDatum = 'V'
  24355.           Begin
  24356.         If @Datum_Od Is NOT Null
  24357.             Begin
  24358.                 SET @SSQL = @SSQL + 'AND Year(D.Datum_Vnes)>=' + Cast(Year(@Datum_Od) As Varchar(6))+ ' '
  24359.                 SET @SSQL = @SSQL + 'AND Month(D.Datum_Vnes)>=' + Cast(Month(@Datum_Od) As Varchar(3)) + ' '
  24360.             End
  24361.         If @Datum_Do Is NOT Null
  24362.             Begin
  24363.                 SET @SSQL = @SSQL + 'AND Year(D.Datum_Vnes)<=' + Cast(Year(@Datum_Do) As Varchar(6))+ ' '
  24364.                 SET @SSQL = @SSQL + 'AND Month(D.Datum_Vnes)<=' + Cast(Month(@Datum_Do) As Varchar(3)) + ' '
  24365.             End
  24366.               End
  24367.         Else 
  24368.               Begin
  24369.         If @Datum_Od Is NOT Null
  24370.             Begin
  24371.                 SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)>=' + Cast(Year(@Datum_Od) As Varchar(6))+ ' '
  24372.                 SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)>=' + Cast(Month(@Datum_Od) As Varchar(3)) + ' '
  24373.             End
  24374.         If @Datum_Do Is NOT Null
  24375.             Begin
  24376.                 SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)<=' + Cast(Year(@Datum_Do) As Varchar(6))+ ' '
  24377.                 SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)<=' + Cast(Month(@Datum_Do) As Varchar(3)) + ' '
  24378.             End
  24379.                End
  24380. /*    If @Datum_Od Is NOT Null
  24381.         Begin
  24382.             SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)>=' + Cast(Year(@Datum_Od) As Varchar(6))+ ' '
  24383.             SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)>=' + Cast(Month(@Datum_Od) As Varchar(3)) + ' '
  24384.         End
  24385.     If @Datum_Do Is NOT Null
  24386.         Begin
  24387.             SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)<=' + Cast(Year(@Datum_Do) As Varchar(6))+ ' '
  24388.             SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)<=' + Cast(Month(@Datum_Do) As Varchar(3)) + ' '
  24389.         End
  24390. */
  24391.     If @Sifra_OE Is Not NULL
  24392.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  24393.     If @KoiOE Is Not NULL
  24394.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  24395.     If @TipKup Is Not NULL
  24396.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  24397.     If @Sifra_Kup_Od Is Not NULL
  24398.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  24399.     If @Sifra_Kup_Do Is Not NULL
  24400.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  24401. -------------------------------------------------------------  19.07.2004  --------------------------------------------------------------------------------------------------------------------------
  24402.     If @Pod1 Is Not NULL
  24403.            Begin
  24404.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  24405.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  24406.            End
  24407.     If @Pod2 Is Not NULL
  24408.            Begin
  24409.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  24410.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  24411.            End
  24412.     If @Pod3 Is Not NULL
  24413.            Begin
  24414.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  24415.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  24416.            End
  24417.     If @Pod4 Is Not NULL
  24418.            Begin
  24419.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  24420.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  24421.            End
  24422.     If @Pod5 Is Not NULL
  24423.            Begin
  24424.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  24425.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  24426.            End
  24427. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  24428. /*
  24429.     If @Pod1 Is Not NULL
  24430.         Set @SSQL = @SSQL + ' And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  24431.     If @Pod2 Is Not NULL
  24432.         Set @SSQL = @SSQL + ' And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  24433.     If @Pod3 Is Not NULL
  24434.         Set @SSQL = @SSQL + ' And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  24435.     If @Pod4 Is Not NULL
  24436.         Set @SSQL = @SSQL + ' And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  24437.     If @Pod5 Is Not NULL
  24438.         Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  24439. */    If @Sifra_Tip Is Not Null
  24440.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  24441.     If @Lokacija Is Not NULL
  24442.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  24443.     If @Kto Is Not NULL
  24444.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  24445.     If @Koi_Gradovi Is Not NULL    
  24446.         Begin
  24447.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  24448.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  24449.         End
  24450.     If @Koi_Regioni Is Not NULL    
  24451.         Begin
  24452.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  24453.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  24454.         End
  24455.     If @Drugo1 Is Not NULL
  24456.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  24457.     If @Drugo2 Is Not NULL
  24458.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  24459.     If @Drugo3 Is Not NULL
  24460.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  24461.     If @Drugo4 Is Not NULL
  24462.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  24463.     If @Drugo5 Is Not NULL
  24464.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  24465.     If @PoZbirenBrand Is Null
  24466.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24467.     Else
  24468.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24469.     Insert #BPromet Exec(@SSQL)
  24470. ---------------------------------------------
  24471. -- Gi Presmetuvam Velicinite za Sales Out
  24472. ---------------------------------------------
  24473.     If @PoZbirenBrand Is Null
  24474.         Set @SSQL = 'Select K.Sifra_Drg Sifra_Brand, '
  24475.     Else
  24476.         Set @SSQL = 'Select B.Sifra_Drg1 Sifra_Brand, '
  24477.     Set @SSQL = @SSQL + 'Month(S.Datum_Dok) Mesec,
  24478.         Year(S.Datum_Dok) Godina,
  24479.         ''Sales Out'',
  24480.         Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)) UL_Edinici,
  24481.         Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)) as Vr_Osnov, 
  24482.         Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_SoRabat,
  24483.         Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_Krajna,
  24484.         Sum(S.Kolic*TS.Ima_Kolic*K.GotCena) Vk_NPS
  24485.         From #tSostav TS
  24486.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  24487.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art
  24488.         Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  24489.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 '
  24490.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null)
  24491.              Or (@Sifra_Tip Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Koi_Regioni Is Not Null)
  24492.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  24493.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  24494.     If @PoZbirenBrand Is Not Null
  24495.         Set @SSQL = @SSQL + 'Inner Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  24496.     If @Sifra_Gr Is Not Null
  24497.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  24498.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  24499.     If @Brand_Od Is Not Null
  24500.         Set @SSQL = @SSQL + 'And K.Sifra_Drg>=' + Cast(@Brand_Od As Varchar(6)) + ' '
  24501.     If @Brand_Do Is Not Null
  24502.         Set @SSQL = @SSQL + 'And K.Sifra_Drg<=' + Cast(@Brand_Do As Varchar(6)) + ' '
  24503.     If @Sifra_Podg Is Not Null
  24504.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  24505.     If @Sifra_Gr Is Not Null
  24506.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  24507.     If @PoKojDatum = 'V'
  24508.           Begin
  24509.         If @Datum_Od Is NOT Null
  24510.             Begin
  24511.                 SET @SSQL = @SSQL + 'AND Year(D.Datum_Vnes)>=' + Cast(Year(@Datum_Od) As Varchar(6))+ ' '
  24512.                 SET @SSQL = @SSQL + 'AND Month(D.Datum_Vnes)>=' + Cast(Month(@Datum_Od) As Varchar(3)) + ' '
  24513.             End
  24514.         If @Datum_Do Is NOT Null
  24515.             Begin
  24516.                 SET @SSQL = @SSQL + 'AND Year(D.Datum_Vnes)<=' + Cast(Year(@Datum_Do) As Varchar(6))+ ' '
  24517.                 SET @SSQL = @SSQL + 'AND Month(D.Datum_Vnes)<=' + Cast(Month(@Datum_Do) As Varchar(3)) + ' '
  24518.             End
  24519.               End
  24520.          Else 
  24521.           Begin
  24522.         If @Datum_Od Is NOT Null
  24523.             Begin
  24524.                 SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)>=' + Cast(Year(@Datum_Od) As Varchar(6))+ ' '
  24525.                 SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)>=' + Cast(Month(@Datum_Od) As Varchar(3)) + ' '
  24526.             End
  24527.         If @Datum_Do Is NOT Null
  24528.             Begin
  24529.                 SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)<=' + Cast(Year(@Datum_Do) As Varchar(6))+ ' '
  24530.                 SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)<=' + Cast(Month(@Datum_Do) As Varchar(3)) + ' '
  24531.             End
  24532.           End
  24533.     If @Sifra_OE Is Not NULL
  24534.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  24535.     If @KoiOE Is Not NULL
  24536.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  24537.     If @TipKup Is Not NULL
  24538.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  24539.     If @Sifra_Kup_Od Is Not NULL
  24540.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  24541.     If @Sifra_Kup_Do Is Not NULL
  24542.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  24543. -------------------------------------------------------------  19.07.2004  --------------------------------------------------------------------------------------------------------------------------
  24544.     If @Pod1 Is Not NULL
  24545.            Begin
  24546.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  24547.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  24548.            End
  24549.     If @Pod2 Is Not NULL
  24550.            Begin
  24551.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  24552.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  24553.            End
  24554.     If @Pod3 Is Not NULL
  24555.            Begin
  24556.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  24557.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  24558.            End
  24559.     If @Pod4 Is Not NULL
  24560.            Begin
  24561.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  24562.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  24563.            End
  24564.     If @Pod5 Is Not NULL
  24565.            Begin
  24566.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  24567.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  24568.            End
  24569. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  24570. /*
  24571.     If @Pod1 Is Not NULL
  24572.         Set @SSQL = @SSQL + ' And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  24573.     If @Pod2 Is Not NULL
  24574.         Set @SSQL = @SSQL + ' And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  24575.     If @Pod3 Is Not NULL
  24576.         Set @SSQL = @SSQL + ' And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  24577.     If @Pod4 Is Not NULL
  24578.         Set @SSQL = @SSQL + ' And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  24579.     If @Pod5 Is Not NULL
  24580.         Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  24581. */    If @Sifra_Tip Is Not Null
  24582.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  24583.     If @Lokacija Is Not NULL
  24584.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  24585.     If @Kto Is Not NULL
  24586.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  24587.     If @Koi_Gradovi Is Not NULL    
  24588.         Begin
  24589.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  24590.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  24591.         End
  24592.     If @Koi_Regioni Is Not NULL    
  24593.         Begin
  24594.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  24595.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  24596.         End
  24597.     If @Drugo1 Is Not NULL
  24598.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  24599.     If @Drugo2 Is Not NULL
  24600.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  24601.     If @Drugo3 Is Not NULL
  24602.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  24603.     If @Drugo4 Is Not NULL
  24604.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  24605.     If @Drugo5 Is Not NULL
  24606.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  24607.     If @PoZbirenBrand Is Null
  24608.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24609.     Else
  24610.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24611.     Insert #BPromet Exec(@SSQL)
  24612. ---------------------------------------------
  24613. -- Gi Presmetuvam Velicinite za Stock
  24614. ---------------------------------------------
  24615.     Create Table #VlIzl
  24616.     (    Sifra_Brand Smallint,
  24617.         Mesec Smallint,
  24618.         Godina Smallint,
  24619.         Vlez Decimal(18,6),
  24620.         Izlez Decimal(18,6),
  24621.         Vr_Vlez Decimal(18,6),
  24622.         Vr_Izlez Decimal(18,6)
  24623.     )
  24624.     If @PoZbirenBrand Is Null
  24625.         Set @SSQL = 'Select K.Sifra_Drg Sifra_Brand, '
  24626.     Else
  24627.         Set @SSQL = 'Select B.Sifra_Drg1 Sifra_Brand, '
  24628.     Set @SSQL = @SSQL + 'Month(S.Datum_Dok) Mesec, Year(S.Datum_Dok) Godina,
  24629.         Vlez = Sum(Case S.VlIzl
  24630.                 When ''V'' Then S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)
  24631.                 Else 0.0
  24632.             End),
  24633.         Izlez = Sum(Case S.VlIzl
  24634.                 When ''I'' Then S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)
  24635.                 Else 0.0
  24636.              End),
  24637.         Vr_Vlez = Sum(Case S.VlIzl
  24638.                 When ''V'' Then S.Kolic*TS.Ima_Kolic*K.GotCena
  24639.                 Else 0.0
  24640.             End),
  24641.         Vr_Izlez = Sum(Case S.VlIzl
  24642.                 When ''I'' Then S.Kolic*TS.Ima_Kolic*K.GotCena
  24643.                 Else 0.0
  24644.              End)
  24645.         FROM Sostav TS
  24646.         INNER JOIN Stavr S ON TS.Sifra_Art=S.Sifra_Art
  24647.         INNER JOIN Katart K ON TS.Sifra_Sur=K.Sifra_Art '
  24648.     If @PoKojDatum =' V'
  24649.         Set @SSQL = @SSQL + ' Inner Join Dokr D ON S.DokrID=D.DokrID '
  24650.     If @PoZbirenBrand Is Not Null
  24651.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  24652.             Inner Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  24653.     If @Sifra_Gr Is Not Null
  24654.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  24655.     Set @SSQL = @SSQL + 'WHERE K.Iskluci <> ''D'' '
  24656.     If @Brand_Od Is Not NULL
  24657.         Set @SSQL = @SSQL + 'And K.Sifra_Drg>=''' + Cast(@Brand_Od As Varchar(5)) + ''' '
  24658.     If @Brand_Do Is Not NULL
  24659.         Set @SSQL = @SSQL + 'And K.Sifra_Drg<=''' + Cast(@Brand_Do As Varchar(5)) + ''' '
  24660.     If @PoKojDatum =' V'
  24661.           Begin
  24662.         If @Datum_Do Is Not Null
  24663.             Set @SSQL = @SSQL + 'And Month(D.Datum_Vnes)<=Month(''' + Cast(@Datum_Do As Varchar(30)) + ''') And Year(D.Datum_Vnes)<=Year(''' + Cast(@Datum_Do As Varchar(30)) + ''') '
  24664.           End
  24665.     Else
  24666.           Begin
  24667.         If @Datum_Do Is Not Null
  24668.             Set @SSQL = @SSQL + 'And Month(S.Datum_Dok)<=Month(''' + Cast(@Datum_Do As Varchar(30)) + ''') And Year(S.Datum_Dok)<=Year(''' + Cast(@Datum_Do As Varchar(30)) + ''') '
  24669.           End        
  24670.     If @Sifra_OE Is Not NULL
  24671.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  24672.     If @KoiOE Is Not NULL
  24673.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  24674.     If @Sifra_Podg Is Not NULL
  24675.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  24676.     If @Sifra_Gr Is Not NULL
  24677.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  24678.     If @Lokacija Is Not NULL
  24679.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  24680.     If @Kto Is Not NULL
  24681.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  24682.     If @Drugo1 Is Not NULL
  24683.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  24684.     If @Drugo2 Is Not NULL
  24685.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  24686.     If @Drugo3 Is Not NULL
  24687.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  24688.     If @Drugo4 Is Not NULL
  24689.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  24690.     If @Drugo5 Is Not NULL
  24691.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  24692.     If @PoZbirenBrand Is Null
  24693.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, S.VlIzl, Month(S.Datum_Dok), Year(S.Datum_Dok) '
  24694.     Else
  24695.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, S.VlIzl, Month(S.Datum_Dok), Year(S.Datum_Dok) '
  24696.     Insert #VlIzl Exec(@SSQL)
  24697. print @SSQL
  24698.     Set @SSQL = 'Select Sifra_Brand, Mesec, Godina, ''Stock'',
  24699.         Sum(Vlez)-Sum(Izlez) UL_Edinici, 0.0, 0.0, 0.0, Sum(Vr_Vlez)-Sum(Vr_Izlez) Vk_NPS
  24700.         From #VlIzl
  24701.         Group By Sifra_Brand, Mesec, Godina '
  24702.     Insert #BPromet Exec(@SSQL)
  24703. ---------------------------------------------
  24704. -- Tabela so Rezultati
  24705. ---------------------------------------------
  24706.     If @PoZbirenBrand Is Null
  24707. --        If @Kolku Is Not Null
  24708. --            Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(5)) + ' tt.Sifra_Brand, B.Ime ImeBrand, '
  24709. --        Else
  24710.             Set @SSQL = 'Select tt.Sifra_Brand, B.Ime ImeBrand, '
  24711.     Else
  24712.         If @Kolku Is Not Null
  24713.             Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(5)) + ' tt.Sifra_Brand, BB.Ime_Drg1 ImeBrand, '
  24714.         Else
  24715.             Set @SSQL = 'Select tt.Sifra_Brand, BB.Ime_Drg1 ImeBrand, '     Set @SSQL = @SSQL + 'tt.Mesec, tt.Godina, tt.Tip,
  24716.             Round(tt.UL_Edinici, 4) UL_Edinici, Round(tt.Vk_Osnov, 4) Vk_Osnov,
  24717.             Round(tt.Vk_SoRabat, 4) Vk_SoRabat,
  24718.             Round(tt.Vk_Krajna, 4) Vk_Krajna,
  24719.             Round(tt.Vk_NPS, 4) Vk_NPS
  24720.     From #BPromet tt '
  24721.     If @PoZbirenBrand Is Null
  24722.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On tt.Sifra_Brand=B.Sifra_Drg  '
  24723.     Else
  24724.         Set @SSQL = @SSQL + 'Inner Join DrgPodel1 BB On tt.Sifra_Brand=BB.Sifra_Drg1 '
  24725.     Set @SSQL = @SSQL + 'Order By tt.Sifra_Brand, tt.Tip, tt.Mesec, tt.Godina '
  24726.     Exec(@SSQL)
  24727.  
  24728.  
  24729.  
  24730.  
  24731.  
  24732. Go
  24733. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_prom_proba]'))
  24734. drop procedure [dbo].[sp_brand_prom_proba]
  24735.  
  24736. Go
  24737.  
  24738. CREATE    PROCEDURE sp_Brand_Prom_Proba
  24739.     @Sifra_OE Smallint, 
  24740.     @KoiOE Varchar(200),
  24741.     @Brand_Od Smallint,
  24742.     @Brand_Do Smallint,
  24743.     @Sifra_Kup_Od Char(6),
  24744.     @Sifra_Kup_Do Char(6),
  24745.     @Pod1 Smallint,
  24746.     @Pod2 Smallint,
  24747.     @Pod3 Smallint = Null,
  24748.     @Pod4 Smallint = Null,
  24749.     @Pod5 Smallint = Null,
  24750.     @Sifra_Tip Smallint = Null,
  24751.     @Datum_Od Smalldatetime,
  24752.     @Datum_Do Smalldatetime,
  24753.     @Kolku Smallint,
  24754.     @Podred Char(1),
  24755.     @Lokacija Varchar(10),
  24756.     @Sifra_Gr Char(3),
  24757.     @Sifra_Podg Char(6),
  24758.     @Kto Char(6),
  24759.     @TipKup Varchar(11),
  24760.     @Komint_KObj Char(1),
  24761.     @PoZbirenBrand Char(1),
  24762.     @RazbijSostav Char(1),
  24763.     @Koi_Gradovi Varchar(200),
  24764.     @Koi_Regioni Varchar(200) = Null
  24765. AS
  24766.     Declare @SSQL As Varchar(8000)
  24767.     create          Table #tSostav
  24768.     (    Sifra_Art Varchar(20),
  24769.         Sifra_Sur Varchar(20),
  24770.         Ima_Kolic Decimal(18,6),
  24771.         Cena Decimal(18,6),
  24772.         VkCena Decimal(18,6)
  24773.     )
  24774.     If @RazbijSostav = 'D'
  24775.         Begin
  24776.             Set @SSQL = 'Insert #tSostav
  24777.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  24778.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  24779.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  24780.             Exec(@SSQL)
  24781.         End
  24782.     Set @SSQL = 'Insert #tSostav
  24783.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  24784.         From Katart K '
  24785.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  24786.     If @RazbijSostav = 'D'
  24787.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  24788.     Exec(@SSQL)
  24789. --select * from #tsostav
  24790. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  24791. --------------------------------------------------------------
  24792.     Create Table #BPromet
  24793.     (    Sifra_Brand Smallint,
  24794.         Mesec Smallint,
  24795.         Godina Smallint,
  24796.         Tip Varchar(20),
  24797.         UL_Edinici Decimal(18,6),
  24798.         Vk_Osnov Decimal(18,6),
  24799.         Vk_SoRabat Decimal(18,6),
  24800.         Vk_Krajna Decimal(18,6),
  24801.         Vk_NPS Decimal(18,6)
  24802.     )
  24803. ---------------------------------------------
  24804. -- Gi Presmetuvam Velicinite za Import
  24805. ---------------------------------------------
  24806.     If @PoZbirenBrand Is Null
  24807.         Set @SSQL = 'Select K.Sifra_Drg Sifra_Brand, '
  24808.     Else
  24809.         Set @SSQL = 'Select B.Sifra_Drg1 Sifra_Brand, '
  24810.     Set @SSQL = @SSQL + 'Month(S.Datum_Dok) Mesec,
  24811.         Year(S.Datum_Dok) Godina,
  24812.         ''Import'',
  24813.         Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)) UL_Edinici,
  24814.         Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)) as Vr_Osnov, 
  24815.         Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_SoRabat,
  24816.         Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_Krajna,
  24817.         Sum(S.Kolic*TS.Ima_Kolic*K.GotCena) Vk_NPS
  24818.         From #tSostav TS
  24819.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  24820.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art
  24821.         Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  24822.         Inner Join Dokr D ON S.DokrID=D.DokrID '
  24823.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  24824.         Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null)
  24825.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  24826.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  24827.     If @PoZbirenBrand Is Not Null
  24828.         Set @SSQL = @SSQL + 'Inner Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  24829.     If @Sifra_Gr Is Not Null
  24830.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  24831.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' And D.Sifra_Dok=15 '
  24832.     If @Brand_Od Is Not Null
  24833.         Set @SSQL = @SSQL + 'And K.Sifra_Drg>=' + Cast(@Brand_Od As Varchar(6)) + ' '
  24834.     If @Brand_Do Is Not Null
  24835.         Set @SSQL = @SSQL + 'And K.Sifra_Drg<=' + Cast(@Brand_Do As Varchar(6)) + ' '
  24836.     If @Sifra_Podg Is Not Null
  24837.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  24838.     If @Sifra_Gr Is Not Null
  24839.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  24840.     If @Datum_Od Is NOT Null
  24841.         Begin
  24842.             SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)>=' + Cast(Year(@Datum_Od) As Varchar(6))+ ' '
  24843.             SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)>=' + Cast(Month(@Datum_Od) As Varchar(3)) + ' '
  24844.         End
  24845.     If @Datum_Do Is NOT Null
  24846.         Begin
  24847.             SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)<=' + Cast(Year(@Datum_Do) As Varchar(6))+ ' '
  24848.             SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)<=' + Cast(Month(@Datum_Do) As Varchar(3)) + ' '
  24849.         End
  24850.     If @Sifra_OE Is Not NULL
  24851.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  24852.     If @KoiOE Is Not NULL
  24853.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  24854.     If @TipKup Is Not NULL
  24855.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  24856.     If @Sifra_Kup_Od Is Not NULL
  24857.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  24858.     If @Sifra_Kup_Do Is Not NULL
  24859.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  24860.     If @Pod1 Is Not NULL
  24861.         Set @SSQL = @SSQL + ' And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  24862.     If @Pod2 Is Not NULL
  24863.         Set @SSQL = @SSQL + ' And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  24864.     If @Pod3 Is Not NULL
  24865.         Set @SSQL = @SSQL + ' And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  24866.     If @Pod4 Is Not NULL
  24867.         Set @SSQL = @SSQL + ' And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  24868.     If @Pod5 Is Not NULL
  24869.         Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  24870.     If @Sifra_Tip Is Not Null
  24871.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  24872.     If @Lokacija Is Not NULL
  24873.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  24874.     If @Kto Is Not NULL
  24875.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  24876.     If @Koi_Gradovi Is Not NULL    
  24877.         Begin
  24878.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  24879.                                   OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  24880.         End
  24881.     If @Koi_Regioni Is Not NULL    
  24882.         Begin
  24883.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  24884.                                   OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  24885.         End
  24886.     If @PoZbirenBrand Is Null
  24887.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24888.     Else
  24889.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24890.     Insert #BPromet Exec(@SSQL)
  24891. --select * from #BPromet
  24892. ---------------------------------------------
  24893. -- Gi Presmetuvam Velicinite za Sales Out
  24894. ---------------------------------------------
  24895.     If @PoZbirenBrand Is Null
  24896.         Set @SSQL = 'Select K.Sifra_Drg Sifra_Brand, '
  24897.     Else
  24898.         Set @SSQL = 'Select B.Sifra_Drg1 Sifra_Brand, '
  24899.     Set @SSQL = @SSQL + 'Month(S.Datum_Dok) Mesec,
  24900.         Year(S.Datum_Dok) Godina,
  24901.         ''Sales Out'',
  24902.         Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)) UL_Edinici,
  24903.         Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)) as Vr_Osnov, 
  24904.         Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_SoRabat,
  24905.         Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) as Vr_Krajna,
  24906.         Sum(S.Kolic*TS.Ima_Kolic*K.GotCena) Vk_NPS
  24907.         From #tSostav TS
  24908.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  24909.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art
  24910.         Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  24911.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 '
  24912.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  24913.          Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null)
  24914.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  24915.                      Left Outer Join KObjekti KO ON D.Sifra_Obj=KO.Sifra_Obj and D.Sifra_Kup=KO.Sifra_Kup '
  24916.     If @PoZbirenBrand Is Not Null
  24917.         Set @SSQL = @SSQL + 'Inner Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  24918.     If @Sifra_Gr Is Not Null
  24919.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  24920.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  24921.     If @Brand_Od Is Not Null
  24922.         Set @SSQL = @SSQL + 'And K.Sifra_Drg>=' + Cast(@Brand_Od As Varchar(6)) + ' '
  24923.     If @Brand_Do Is Not Null
  24924.         Set @SSQL = @SSQL + 'And K.Sifra_Drg<=' + Cast(@Brand_Do As Varchar(6)) + ' '
  24925.     If @Sifra_Podg Is Not Null
  24926.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  24927.     If @Sifra_Gr Is Not Null
  24928.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  24929.     If @Datum_Od Is NOT Null
  24930.         Begin
  24931.             SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)>=' + Cast(Year(@Datum_Od) As Varchar(6))+ ' '
  24932.             SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)>=' + Cast(Month(@Datum_Od) As Varchar(3)) + ' '
  24933.         End
  24934.     If @Datum_Do Is NOT Null
  24935.         Begin
  24936.             SET @SSQL = @SSQL + 'AND Year(S.Datum_Dok)<=' + Cast(Year(@Datum_Do) As Varchar(6))+ ' '
  24937.             SET @SSQL = @SSQL + 'AND Month(S.Datum_Dok)<=' + Cast(Month(@Datum_Do) As Varchar(3)) + ' '
  24938.         End
  24939.     If @Sifra_OE Is Not NULL
  24940.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  24941.     If @KoiOE Is Not NULL
  24942.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  24943.     If @TipKup Is Not NULL
  24944.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  24945.     If @Sifra_Kup_Od Is Not NULL
  24946.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  24947.     If @Sifra_Kup_Do Is Not NULL
  24948.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  24949.     If @Pod1 Is Not NULL
  24950.         Set @SSQL = @SSQL + ' And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  24951.     If @Pod2 Is Not NULL
  24952.         Set @SSQL = @SSQL + ' And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  24953.     If @Pod3 Is Not NULL
  24954.         Set @SSQL = @SSQL + ' And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  24955.     If @Pod4 Is Not NULL
  24956.         Set @SSQL = @SSQL + ' And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  24957.     If @Pod5 Is Not NULL
  24958.         Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  24959.     If @Sifra_Tip Is Not Null
  24960.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  24961.     If @Lokacija Is Not NULL
  24962.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  24963.     If @Kto Is Not NULL
  24964.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  24965.     If @Koi_Gradovi Is Not NULL    
  24966.         Begin
  24967.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  24968.                            OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  24969.         End
  24970.     If @Koi_Regioni Is Not NULL    
  24971.         Begin
  24972.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  24973.                                   OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  24974.         End
  24975.     If @PoZbirenBrand Is Null
  24976.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24977.     Else
  24978.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, Month(S.Datum_Dok), Year(S.Datum_Dok)'
  24979.     Insert #BPromet Exec(@SSQL)
  24980. --select * from #BPromet
  24981. ---------------------------------------------
  24982. -- Gi Presmetuvam Velicinite za Stock
  24983. ---------------------------------------------
  24984.     Create Table #VlIzl
  24985.     (    Sifra_Brand Smallint,
  24986.         Mesec Smallint,
  24987.         Godina Smallint,
  24988.         Vlez Decimal(18,6),
  24989.         Izlez Decimal(18,6),
  24990.         Vr_Vlez Decimal(18,6),
  24991.         Vr_Izlez Decimal(18,6)
  24992.     )
  24993.     If @PoZbirenBrand Is Null
  24994.         Set @SSQL = 'Select K.Sifra_Drg Sifra_Brand, '
  24995.     Else
  24996.         Set @SSQL = 'Select B.Sifra_Drg1 Sifra_Brand, '
  24997.     Set @SSQL = @SSQL + 'Month(S.Datum_Dok) Mesec, Year(S.Datum_Dok) Godina,
  24998.         Vlez = Sum(Case S.VlIzl
  24999.                 When ''V'' Then S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)
  25000.                 Else 0.0
  25001.             End),
  25002.         Izlez = Sum(Case S.VlIzl
  25003.                 When ''I'' Then S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)
  25004.                 Else 0.0
  25005.              End),
  25006.         Vr_Vlez = Sum(Case S.VlIzl
  25007.                 When ''V'' Then S.Kolic*TS.Ima_Kolic*K.GotCena
  25008.                 Else 0.0
  25009.             End),
  25010.         Vr_Izlez = Sum(Case S.VlIzl
  25011.                 When ''I'' Then S.Kolic*TS.Ima_Kolic*K.GotCena
  25012.                 Else 0.0
  25013.              End)
  25014.         FROM Sostav TS
  25015.         INNER JOIN Stavr S ON TS.Sifra_Art=S.Sifra_Art
  25016.         INNER JOIN Katart K ON TS.Sifra_Sur=K.Sifra_Art
  25017.         Inner Join Dokr D ON S.DokrID=D.DokrID '
  25018.     If @PoZbirenBrand Is Not Null
  25019.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  25020.             Inner Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  25021.     If @Sifra_Gr Is Not Null
  25022.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  25023.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Koi_Regioni Is Not Null) 
  25024.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  25025.                      Left Outer Join KObjekti KO ON D.Sifra_Obj=KO.Sifra_Obj and D.Sifra_Kup=KO.Sifra_Kup '
  25026.     Set @SSQL = @SSQL + 'WHERE K.Iskluci <> ''D'' '
  25027.     If @Brand_Od Is Not NULL
  25028.         Set @SSQL = @SSQL + 'And K.Sifra_Drg>=''' + Cast(@Brand_Od As Varchar(5)) + ''' '
  25029.     If @Brand_Do Is Not NULL
  25030.         Set @SSQL = @SSQL + 'And K.Sifra_Drg<=''' + Cast(@Brand_Do As Varchar(5)) + ''' '
  25031.     If @Datum_Do Is Not Null
  25032.         Set @SSQL = @SSQL + 'And Month(S.Datum_Dok)<=Month(''' + Cast(@Datum_Do As Varchar(30)) + ''') And Year(S.Datum_Dok)<=Year(''' + Cast(@Datum_Do As Varchar(30)) + ''') '
  25033.     If @Sifra_OE Is Not NULL
  25034.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  25035.     If @KoiOE Is Not NULL
  25036.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  25037.     If @Sifra_Podg Is Not NULL
  25038.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  25039.     If @Sifra_Gr Is Not NULL
  25040.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  25041.     If @Lokacija Is Not NULL
  25042.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  25043.     If @Kto Is Not NULL
  25044.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  25045.     If @Koi_Gradovi Is Not NULL    
  25046.         Begin
  25047.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  25048.                            OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  25049.         End
  25050.     If @Koi_Regioni Is Not NULL    
  25051.         Begin
  25052.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  25053.                            OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  25054.         End
  25055.     If @PoZbirenBrand Is Null
  25056.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, S.VlIzl, Month(S.Datum_Dok), Year(S.Datum_Dok) '
  25057.     Else
  25058.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, S.VlIzl, Month(S.Datum_Dok), Year(S.Datum_Dok) '
  25059.     Insert #VlIzl Exec(@SSQL)
  25060.     Set @SSQL = 'Select Sifra_Brand, Mesec, Godina, ''Stock'',
  25061.         Sum(Vlez)-Sum(Izlez) UL_Edinici, 0.0, 0.0, 0.0, Sum(Vr_Vlez)-Sum(Vr_Izlez) Vk_NPS
  25062.         From #VlIzl
  25063.         Group By Sifra_Brand, Mesec, Godina '
  25064.     Insert #BPromet Exec(@SSQL)
  25065. ---------------------------------------------
  25066. -- Tabela so Rezultati
  25067. ---------------------------------------------
  25068.     If @PoZbirenBrand Is Null
  25069. --        If @Kolku Is Not Null
  25070. --            Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(5)) + ' tt.Sifra_Brand, B.Ime ImeBrand, '
  25071. --        Else
  25072.             Set @SSQL = 'Select tt.Sifra_Brand, B.Ime ImeBrand, '
  25073.     Else
  25074.         If @Kolku Is Not Null
  25075.             Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(5)) + ' tt.Sifra_Brand, BB.Ime_Drg1 ImeBrand, '
  25076.         Else
  25077.             Set @SSQL = 'Select tt.Sifra_Brand, BB.Ime_Drg1 ImeBrand, '     Set @SSQL = @SSQL + 'tt.Mesec, tt.Godina, tt.Tip,
  25078.             Round(tt.UL_Edinici, 4) UL_Edinici, Round(tt.Vk_Osnov, 4) Vk_Osnov,
  25079.             Round(tt.Vk_SoRabat, 4) Vk_SoRabat,
  25080.             Round(tt.Vk_Krajna, 4) Vk_Krajna,
  25081.             Round(tt.Vk_NPS, 4) Vk_NPS
  25082.     From #BPromet tt '
  25083.     If @PoZbirenBrand Is Null
  25084.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On tt.Sifra_Brand=B.Sifra_Drg  '
  25085.     Else
  25086.         Set @SSQL = @SSQL + 'Inner Join DrgPodel1 BB On tt.Sifra_Brand=BB.Sifra_Drg1 '
  25087.     Set @SSQL = @SSQL + 'Order By tt.Sifra_Brand, tt.Tip, tt.Mesec, tt.Godina '
  25088.     Exec(@SSQL)
  25089.  
  25090.  
  25091.  
  25092.  
  25093. Go
  25094. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_route]'))
  25095. drop procedure [dbo].[sp_brand_route]
  25096.  
  25097. Go
  25098. CREATE           PROCEDURE sp_Brand_Route
  25099.     @Sifra_OE Smallint,
  25100.     @KoiOE Varchar(200),
  25101.     @Sifra_Brand Smallint,
  25102.     @Datum_Od Smalldatetime,
  25103.     @Datum_Do Smalldatetime,
  25104.     @Kto Varchar(6),
  25105.     @Vk_NPS Decimal(18,6) OUTPUT,
  25106.     @Vk_Osnov Decimal(18,6) OUTPUT,
  25107.     @Vk_Krajna Decimal(18,6) OUTPUT,
  25108.     @Vk_SoRabat Decimal(18,6) OUTPUT,
  25109.     @RazbijSostav Char(1) = 'D',
  25110.     @Sifra_art_Od Varchar(20)=Null,
  25111.     @Sifra_art_Do Varchar(20)=Null
  25112. AS
  25113.     Declare @SSQL As Varchar(8000)
  25114.     Create Table #tSostav
  25115.     (    Sifra_Art Varchar(20),
  25116.         Sifra_Sur Varchar(20),
  25117.         Ima_Kolic Decimal(18,6),
  25118.         Cena Decimal(18,6),
  25119.         VkCena Decimal(18,6)
  25120.     )
  25121.     If @RazbijSostav = 'D'
  25122.         Begin
  25123.             Set @SSQL = 'Insert #tSostav
  25124.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  25125.                     Inner Join Katart K On S.Sifra_Sur=K.Sifra_Art '
  25126.             Set @SSQL = @SSQL + 'Where K.Iskluci<>''D'' '
  25127.             If @Kto Is Not Null
  25128.                 Set @SSQL = @SSQL + 'And K.Kto=' + @Kto + ' '
  25129.             If @Sifra_Brand Is Not Null
  25130.                 Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(8)) + ' '
  25131.             If @Sifra_art_Od Is Not Null 
  25132.                 Set @SSQL=@SSQL + ' And S.Sifra_art >= ''' + @Sifra_Art_Od + ''' '
  25133.             If @Sifra_art_Do Is Not Null 
  25134.                 Set @SSQL=@SSQL + ' And S.Sifra_art <= ''' + @Sifra_Art_Do + ''' '
  25135.             Exec(@SSQL)
  25136.         End
  25137.     Set @SSQL = 'Insert #tSostav
  25138.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  25139.         From Katart K
  25140.     Where K.Iskluci <> ''D'' '
  25141.     If @Kto Is Not Null
  25142.         Set @SSQL = @SSQL + 'And K.Kto=' + @Kto + ' '
  25143.     If @Sifra_Brand Is Not Null
  25144.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(8)) + ' '
  25145.     If @Sifra_art_Od Is Not Null 
  25146.         Set @SSQL=@SSQL + ' And K.Sifra_art >= ''' + @Sifra_Art_Od + ''' '
  25147.     If @Sifra_art_Do Is Not Null 
  25148.         Set @SSQL=@SSQL + ' And K.Sifra_art <= ''' + @Sifra_Art_Do + ''' '
  25149.     If @RazbijSostav = 'D'
  25150.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  25151.     Exec(@SSQL)
  25152. -- select * from #tsostav
  25153. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  25154. -- koi pripagjaat na toj brand
  25155. --------------------------------------------------------------
  25156.     Create Table #Red0
  25157.     (    Vk_NPS Decimal(18,6),
  25158.         Vk_Osnov Decimal(18,6),
  25159.         Vk_SoRabat Decimal(18,6),
  25160.         Vk_Krajna Decimal(18,6)
  25161.     )
  25162.     Set @SSQL = 'Select
  25163.         Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vk_NPS,
  25164.         Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as Vk_Osnov, 
  25165.         Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vk_SoRabat,
  25166.         Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vk_Krajna
  25167.         From #tSostav TS
  25168.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  25169.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art
  25170.         Inner Join Dokr D ON S.DokrID=D.DokrID
  25171.     Where D.Sifra_Za=1 '
  25172.     If @Sifra_OE Is Not Null And @KoiOE Is Null
  25173.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  25174.     Else If @Sifra_OE Is Null And @KoiOE Is Not Null
  25175.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  25176.     If @Datum_Od Is Not NULL
  25177.         Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  25178.     If @Datum_Do Is Not NULL
  25179.         Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  25180.     Insert #Red0 Exec(@SSQL)
  25181.     Select @Vk_NPS=Vk_NPS, @Vk_Osnov=Vk_Osnov, @Vk_SoRabat=Vk_SoRabat, @Vk_Krajna=Vk_Krajna From #Red0
  25182.     Create Table #Route
  25183.     (    Sifra_Brand Smallint,
  25184.         Red TinyInt,
  25185.         Sifra_Tip Smallint,        
  25186.         Tip_Act Smallint,
  25187.         Tip_NPS Decimal(18,6),
  25188.         Tip_Osnov Decimal(18,6),
  25189.         Tip_SoRabat Decimal(18,6),
  25190.         Tip_Krajna Decimal(18,6)
  25191.     )
  25192.     Set @SSQL = 'Select '
  25193.     If @Sifra_Brand Is Not Null
  25194.         Set @SSQL = @SSQL + 'K.Sifra_Drg Sifra_Brand, '
  25195.     Else
  25196.         Set @SSQL = @SSQL + '8999 Sifra_Brand, '
  25197.     Set @SSQL = @SSQL + '1 red,
  25198.         KUP.KDrugo1 Sifra_Tip,
  25199.         Count(Distinct(D.Sifra_Kup)) Tip_Act,
  25200.         Sum(S.Kolic*TS.Ima_Kolic*K.GotCena) As Tip_NPS,
  25201.         Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)) As Tip_Osnov, 
  25202.         Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) As Tip_SoRabat,
  25203.         Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) As  Tip_Krajna
  25204.         From #tSostav TS
  25205.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  25206.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art
  25207.         Inner Join Dokr D ON S.DokrID=D.DokrID
  25208.         Inner Join Komint KUP On D.Sifra_Kup=KUP.Sifra_Kup
  25209.     Where D.Sifra_Za=1 '
  25210.     If @Sifra_OE Is Not Null And @KoiOE Is Null
  25211.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  25212.     Else If @Sifra_OE Is Null And @KoiOE Is Not Null
  25213.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  25214.     If @Datum_Od Is Not NULL
  25215.         Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  25216.     If @Datum_Do Is Not NULL
  25217.         Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  25218.     If @Sifra_Brand Is Not Null
  25219.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, KUP.KDrugo1 '
  25220.     Else
  25221.         Set @SSQL = @SSQL + 'Group By KUP.KDrugo1 '
  25222.     Insert #Route Exec(@SSQL)
  25223.     Set @SSQL = 'Select '
  25224.     If @Sifra_Brand Is Not Null
  25225.         Set @SSQL = @SSQL + 'K.Sifra_Drg Sifra_Brand, '
  25226.     Else
  25227.         Set @SSQL = @SSQL + '8999 Sifra_Brand, '
  25228.     Set @SSQL = @SSQL + '2 Red,
  25229.         Sifra_Tip = Case KUP.KDrugo2
  25230.                 When 13 Then  13
  25231.                 When  6 Then   6
  25232.                 When 11 Then  11
  25233.                 When  4 Then   4
  25234.                 When 10 Then  10
  25235.                 When Null Then 1
  25236.                 Else 1
  25237.             End,
  25238.         Count(Distinct(D.Sifra_Kup)) Tip_Act,
  25239.         Sum(S.Kolic*TS.Ima_Kolic*K.GotCena) As Tip_NPS,
  25240.         Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)) As Tip_Osnov, 
  25241.         Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) As Tip_SoRabat,
  25242.         Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)) As  Tip_Krajna
  25243.         From #tSostav TS
  25244.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  25245.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art
  25246.         Inner Join Dokr D ON S.DokrID=D.DokrID
  25247.         Inner Join Komint KUP On D.Sifra_Kup=KUP.Sifra_Kup
  25248.     Where D.Sifra_Za=1 And KUP.KDrugo1=3 '
  25249.     If @Sifra_OE Is Not Null And @KoiOE Is Null
  25250.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  25251.     Else If @Sifra_OE Is Null And @KoiOE Is Not Null
  25252.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  25253.     If @Datum_Od Is Not NULL
  25254.         Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  25255.     If @Datum_Do Is Not NULL
  25256.         Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  25257.     If @Sifra_Brand Is Not Null
  25258.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, KUP.KDrugo2 '
  25259.     Else
  25260.         Set @SSQL = @SSQL + 'Group By KUP.KDrugo2 '
  25261.     Insert #Route Exec(@SSQL)
  25262. --select * from #route --where red=1 and sifra_tip=1
  25263.     If @Sifra_Brand Is Not Null
  25264.         Select R.Sifra_Brand, DP.Ime ImeBrand, R.Red,
  25265.             R.Sifra_Tip, KD.Ime_1K ImeTip, KD.VoZemjata TipUniv,
  25266.             R.Tip_Act, R.Tip_NPS, R.Tip_Osnov, R.Tip_SoRabat, R.Tip_Krajna
  25267.         From #Route R
  25268.         Inner Join DrgPodel DP On R.Sifra_Brand=DP.Sifra_Drg
  25269.         Inner Join KDrugo1 KD On R.Sifra_Tip=KD.Sifra_1K
  25270.         Where R.Red=1
  25271.         Union
  25272.         Select R.Sifra_Brand, DP.Ime ImeBrand, R.Red,
  25273.             R.Sifra_Tip, KD.Ime_2K ImeTip, KD.VoZemjata TipUniv,
  25274.             Sum(R.Tip_Act) Tip_Act, Sum(R.Tip_NPS) Tip_NPS,
  25275.             Sum(R.Tip_Osnov) Tip_Osnov, Sum(R.Tip_SoRabat) Tip_SoRabat,
  25276.             Sum(R.Tip_Krajna) Tip_Krajna
  25277.         From #Route R
  25278.         Inner Join DrgPodel DP On R.Sifra_Brand=DP.Sifra_Drg
  25279.         Inner Join KDrugo2 KD On R.Sifra_Tip=KD.Sifra_2K
  25280.         Where R.Red=2
  25281.         Group By R.Sifra_Brand, DP.Ime, R.Red, R.Sifra_Tip, KD.Ime_2K, KD.VoZemjata
  25282.         Order by R.Sifra_Brand, R.Red, R.Sifra_Tip
  25283.     Else    --@Sifra_Brand Is Null
  25284.         Select 8999 Sifra_Brand, '' ImeBrand, R.Red,
  25285.             R.Sifra_Tip, KD.Ime_1K ImeTip, KD.VoZemjata TipUniv,
  25286.             Sum(R.Tip_Act) Tip_Act,
  25287.             Sum(R.Tip_NPS) Tip_NPS, Sum(R.Tip_Osnov) Tip_Osnov,
  25288.             Sum(R.Tip_Sorabat) Tip_SoRabat, Sum(R.Tip_Krajna) Tip_Krajna
  25289.         From #Route R
  25290.         Inner Join DrgPodel DP On R.Sifra_Brand=DP.Sifra_Drg
  25291.         Inner Join KDrugo1 KD On R.Sifra_Tip=KD.Sifra_1K
  25292.         Where R.Red=1
  25293.         Group By R.Red, R.Sifra_Tip, KD.Ime_1K, KD.VoZemjata
  25294.         Union
  25295.         Select 8999 Sifra_Brand, '' ImeBrand, R.Red,
  25296.             R.Sifra_Tip, KD.Ime_2K ImeTip, KD.VoZemjata TipUniv,
  25297.             Sum(R.Tip_Act) Tip_Act,
  25298.             Sum(R.Tip_NPS) Tip_NPS, Sum(R.Tip_Osnov) Tip_Osnov,
  25299.             Sum(R.Tip_Sorabat) Tip_SoRabat, Sum(R.Tip_Krajna) Tip_Krajna
  25300.         From #Route R
  25301.         Inner Join DrgPodel DP On R.Sifra_Brand=DP.Sifra_Drg
  25302.         Inner Join KDrugo2 KD On R.Sifra_Tip=KD.Sifra_2K
  25303.         Where R.Red=2
  25304.         Group By R.Red, R.Sifra_Tip, KD.Ime_2K, KD.VoZemjata
  25305.         Order by R.Sifra_Brand, R.Red, R.Sifra_Tip
  25306.  
  25307.  
  25308.  
  25309. Go
  25310. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_toplista]'))
  25311. drop procedure [dbo].[sp_brand_toplista]
  25312.  
  25313. Go
  25314. CREATE    PROCEDURE sp_Brand_TopLista
  25315.     @Sifra_OE Smallint = Null, 
  25316.     @KoiOE Varchar(300) = Null,
  25317.     @Pod1 Smallint = Null,
  25318.     @Pod2 Smallint = Null,
  25319.     @Pod3 Smallint = Null,
  25320.     @Pod4 Smallint = Null,
  25321.     @Pod5 Smallint = Null,
  25322.     @Sifra_Tip Smallint = Null,
  25323.     @Datum_Od Smalldatetime = Null,
  25324.     @Datum_Do Smalldatetime = Null,
  25325.     @Sifra_Art_Od Varchar(20) = Null,
  25326.     @Sifra_Art_Do Varchar(20) = Null,
  25327.     @Sifra_Kup_Od Char(6) = Null,
  25328.     @Sifra_Kup_Do Char(6) = Null,
  25329.     @Podred Char(1) = Null,
  25330.     @Kolku Int = Null,
  25331.     @Kto Char(6) = Null,
  25332.     @Sifra_Gr Char(3) = Null,
  25333.     @Sifra_Podg Char(6) = Null,
  25334.     @Lokacija Varchar(10) = Null,
  25335.     @TipKup Varchar(200) = Null,
  25336.     @Komint_KObj Char(1) = Null,
  25337.     @Sifra_Brand Smallint = Null,
  25338.     @PoZbirenBrand Char(1) = Null,
  25339.     @RazbijSostav Char(1) = Null,
  25340.     @Koi_Gradovi Varchar(200) = Null,
  25341.     @Koi_Brandovi Varchar(200) = NULL,
  25342.     @Koi_Regioni Varchar(200) = Null,
  25343.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  25344.     @Drugo1    smallint = Null,
  25345.     @Drugo2    smallint = Null,
  25346.     @Drugo3    smallint = Null,
  25347.     @Drugo4    smallint = Null,
  25348.     @Drugo5    smallint = Null,
  25349.     @TipDokProd    varchar(200) = Null,
  25350.     @Sifra_Pat    varchar(300) = Null,
  25351.     @KomercKako    char(1) = 'T',        -- I Istoriski,     T-Tekoven
  25352.     @Sifra_Nivo    char(2) = Null,
  25353.     @KojaCena    char(1) = Null,
  25354.     @ImeArtDel    varchar(20) = Null,
  25355.     @Sifra_Div    smallint = Null,
  25356.     @GrKup varchar(500)= null,
  25357.     @GrArt varchar(500)= null
  25358. AS
  25359.     If @PoKojDatum = 'V'
  25360.             If @Datum_Do Is Not Null
  25361.         Set @Datum_Do = @Datum_Do + 1
  25362.     Declare @SSQL Varchar(8000)
  25363.     create               Table #tSostav
  25364.     (    Sifra_Art Varchar(20),
  25365.         Sifra_Sur Varchar(20),
  25366.         Ima_Kolic Decimal(18,6),
  25367.         Cena Decimal(18,6),
  25368.         VkCena Decimal(18,6)
  25369.     )
  25370.     If @RazbijSostav = 'D'
  25371.         Begin
  25372.             Set @SSQL = 'Insert #tSostav
  25373.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  25374.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  25375.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  25376.             Exec(@SSQL)
  25377.         End
  25378.     Set @SSQL = 'Insert #tSostav
  25379.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  25380.         From Katart K '
  25381.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  25382.     If @RazbijSostav = 'D'
  25383.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  25384.     Exec(@SSQL)
  25385. --select * from #tsostav
  25386. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  25387. --------------------------------------------------------------
  25388. -- promeneto 05.05.2008 GK zaradi brzinata na izvesstajot
  25389. --    Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) As UL,
  25390. --    Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  25391. --    Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  25392. --    Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna,
  25393.     If @Kolku Is Not NULL
  25394.         Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(6)) + ' '
  25395.     Else
  25396.         Set @SSQL = 'Select '
  25397.     If @PoZbirenBrand Is Not Null
  25398.         Set @SSQL =    @SSQL + 'B.Sifra_Drg1 Sifra_Drg, BB.Ime_Drg1 Ime, '
  25399.     Else
  25400.         Set @SSQL =    @SSQL + 'B.Sifra_Drg, B.Ime, '
  25401.     Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*TS.Ima_Kolic * (Case When K.KolkuDrg Is Null Or K.KolkuDrg = 0.0 Then 1 Else K.KolkuDrg End)), 4) As UL,
  25402.                 Count(K.Sifra_Drg) As Izlezi,
  25403.                 Count(Distinct S.DokrID) As Fakturi,
  25404.                 Round(Sum(S.Kolic*TS.Ima_Kolic * S.DokCena*TS.Cena/TS.VkCena / (Case When S.DanDokCena = ''D'' Then (1+S.Posn/100) Else 1 End)), 4) as Vr_Osnov, 
  25405.                 Round(Sum(S.Kolic*TS.Ima_Kolic * S.DokCena*TS.Cena/TS.VkCena * (1-S.Uces/100) * (1-D.Kasa/100) / (Case When S.DanDokCena = ''D'' Then (1+S.Posn/100) Else 1 End)), 4) as Vr_SoRabat, 
  25406.                 Round(Sum(S.Kolic*TS.Ima_Kolic * S.DokCena*TS.Cena/TS.VkCena * (1-S.Uces/100) * (1-D.Kasa/100) * (Case When S.DanDokCena = ''N'' Then (1+S.Posn/100) Else 1 End)), 4) as Vr_Krajna, 
  25407.                 Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS,
  25408.                 Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV, '
  25409.     If @Komint_KObj = 'K'
  25410.         Set @SSQL =    @SSQL + 
  25411.                 'Komintenti = Count (Distinct(Case Substring(Cast(S.Sifra_Dok As Varchar(5)),1,2)
  25412.                         When ''70'' Then 0
  25413.                         Else D.Sifra_Kup
  25414.                  End)) '
  25415.     Else If @Komint_KObj = 'O'
  25416.         Set @SSQL =    @SSQL + 
  25417.                 'Komintenti = Count (Distinct(Case Substring(Cast(S.Sifra_Dok As Varchar(5)),1,2)
  25418.                         When ''70'' Then 0
  25419.                         Else D.Sifra_Obj
  25420.                  End)) '
  25421.     Set @SSQL = @SSQL + 'From #tSostav TS
  25422.                 Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  25423.                 Inner Join KatArt K On TS.Sifra_Sur=K.Sifra_Art
  25424.                 Left Outer Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg
  25425.                 Inner Join Dokr D On S.DokrID=D.DokrID And D.Sifra_Za=1 '
  25426.     If @PoZbirenBrand Is Not Null
  25427.         Set @SSQL =    @SSQL + 'Left Outer Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  25428.     If @Sifra_Gr Is Not Null
  25429.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  25430.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  25431.         Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@Sifra_Pat Is Not Null) Or (@Sifra_Nivo Is Not Null) Or (@KojaCena Is Not Null)
  25432.         Or (@Sifra_Pat Is Not Null) 
  25433.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  25434.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  25435. --    Set @SSQL = @SSQL + 'Where 1=1 '
  25436.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  25437.     IF @Sifra_Art_Od IS NOT NULL
  25438.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  25439.     IF @Sifra_Art_Do IS NOT NULL
  25440.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  25441.     If @Koi_Gradovi Is Not NULL    
  25442.         Begin
  25443.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  25444.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  25445.         End
  25446.     If @Koi_Regioni Is Not NULL    
  25447.         Begin
  25448.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  25449.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  25450.         End
  25451.        If @KomercKako = 'I'
  25452.         If @Sifra_Pat IS NOT NULL
  25453.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  25454.        If @KomercKako = 'T'
  25455.         If @Sifra_Pat IS NOT NULL
  25456.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  25457.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  25458.     IF @Koi_Brandovi IS NOT NULL
  25459.         Set @SSQL = @SSQL + ' And K.Sifra_Drg IN (' + @Koi_Brandovi + ') '
  25460.     If @TipKup Is Not NULL
  25461.         Set @SSQL = @SSQL + ' And KUP.TipKup In (' + @TipKup + ') '
  25462.     If @Sifra_Nivo Is Not NULL
  25463.         Set @SSQL = @SSQL + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  25464.     If @KojaCena Is Not NULL
  25465.         Set @SSQL = @SSQL + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  25466.     If @Sifra_Kup_Od Is Not NULL
  25467.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  25468.     If @GrKup Is Not Null
  25469.         Set @SSQL = @SSQL + ' And D.Sifra_Kup In (Select Distinct Sifra_Kup From SGrKup Where Sif_GrKup In ( ' + @GrKup + ' )) '
  25470.     If @Sifra_Kup_Do Is Not NULL
  25471.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  25472.     If @Lokacija Is Not NULL
  25473.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  25474.     If @Kto Is Not NULL
  25475.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  25476.     If @Sifra_Brand Is Not Null
  25477.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  25478.     If @Sifra_Podg Is Not Null
  25479.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  25480.     If @Sifra_Gr Is Not Null
  25481.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=''' + @Sifra_Gr + ''' '
  25482.     If @PoKojDatum = 'V'
  25483.           Begin
  25484.         If @Datum_Od Is Not NULL
  25485.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  25486.         If @Datum_Do Is Not NULL
  25487.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  25488.           End
  25489.     Else 
  25490.           Begin
  25491.         If @Datum_Od Is Not NULL
  25492.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  25493.         If @Datum_Do Is Not NULL
  25494.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  25495.            End
  25496. ------------------------------------------------------------------------ 19.07.2004 ---------------------------------------------------------------
  25497.     If @Pod1 Is Not NULL
  25498.            Begin
  25499.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  25500.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  25501.            End
  25502.     If @Pod2 Is Not NULL
  25503.            Begin
  25504.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  25505.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  25506.            End
  25507.     If @Pod3 Is Not NULL
  25508.            Begin
  25509.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  25510.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  25511.            End
  25512.     If @Pod4 Is Not NULL
  25513.            Begin
  25514.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  25515.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  25516.            End
  25517.     If @Pod5 Is Not NULL
  25518.            Begin
  25519.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  25520.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  25521.            End
  25522. -------------------------------------------------------------------------------------------------------------------------------------------------------------
  25523.     If @Sifra_Tip Is Not Null
  25524.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  25525.     If @Sifra_OE Is Not NULL    
  25526.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  25527.     If @KoiOE Is Not NULL
  25528.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  25529.     If @Drugo1 Is Not NULL
  25530.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  25531.     If @Drugo2 Is Not NULL
  25532.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  25533.     If @Drugo3 Is Not NULL
  25534.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  25535.     If @Drugo4 Is Not NULL
  25536.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  25537.     If @Drugo5 Is Not NULL
  25538.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  25539.     If @Sifra_Div Is Not NULL
  25540.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  25541.        If @ImeArtDel IS NOT NULL 
  25542.         If IsNumeric(@ImeArtDel)=1
  25543.             Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  25544.         Else
  25545.             Set @SSQL = @SSQL + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  25546.     If @TipDokProd IS NOT NULL
  25547.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  25548.     If @PoZbirenBrand Is Not Null
  25549.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, BB.Ime_Drg1 '
  25550.     Else
  25551.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg, B.Ime '
  25552.     If @Podred = 'S'
  25553.         If @PoZbirenBrand Is Not Null
  25554.             Set @SSQL = @SSQL + 'Order By B.Sifra_Drg1 '
  25555.         Else
  25556.             Set @SSQL = @SSQL + 'Order By B.Sifra_Drg '
  25557.     Else If @Podred = 'A'
  25558.         If @PoZbirenBrand Is Not Null
  25559.             Set @SSQL = @SSQL + 'Order By BB.Ime_Drg1 '
  25560.         Else
  25561.             Set @SSQL = @SSQL + 'Order By B.Ime '
  25562.     Else If @Podred = '1'
  25563.         Set @SSQL = @SSQL + 'Order By Izlezi Desc ' 
  25564.     Else If @Podred = '2'
  25565.         Set @SSQL = @SSQL + 'Order By UL Desc '
  25566.     Else If @Podred = '3'
  25567.         Set @SSQL = @SSQL + 'Order By Vr_Krajna Desc '
  25568.     Else If @Podred = '4'
  25569.         Set @SSQL = @SSQL + 'Order By Vr_NPS Desc '
  25570. print @SSQL
  25571.     Exec(@SSQL)
  25572.  
  25573.  
  25574.  
  25575.  
  25576.  
  25577. Go
  25578. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_toppomes]'))
  25579. drop procedure [dbo].[sp_brand_toppomes]
  25580.  
  25581. Go
  25582.  
  25583.  
  25584. CREATE  PROCEDURE sp_Brand_TopPoMes
  25585.     @Sifra_OE Smallint, 
  25586.     @KoiOE Varchar(500) = Null,
  25587.     @Pod1 Smallint = Null,
  25588.     @Pod2 Smallint = Null,
  25589.     @Pod3 Smallint = Null,
  25590.     @Pod4 Smallint = Null,
  25591.     @Pod5 Smallint = Null,
  25592.     @Pod6 Smallint = Null,
  25593.     @Pod7 Smallint = Null,
  25594.     @KFPod1 char(1) = Null,
  25595.     @KFPod2 char(1) = Null,
  25596.     @KFPod3 char(1) = Null,
  25597.     @KFPod4 char(1) = Null,
  25598.     @KFPod5 char(1) = Null,
  25599.     @KFPod6 char(1) = Null,
  25600.     @KFPod7 char(1) = Null,
  25601.     @Sifra_Tip Smallint = Null,
  25602.     @Sifra_Art_Od Varchar(20) = Null,
  25603.     @Sifra_Art_Do Varchar(20) = Null,
  25604.     @Datum_Od Smalldatetime = Null,
  25605.     @Datum_Do Smalldatetime = Null,
  25606.     @Sifra_Brand_Od Smallint = Null,
  25607.     @Sifra_Brand_Do Smallint = Null,
  25608.     @Sifra_Kup_Od Char(6) = Null,
  25609.     @Sifra_Kup_Do Char(6) = Null,
  25610.     @Podred Char(1) = Null,
  25611.     @Kolku Int = Null,
  25612.     @Kto Char(6) = Null,
  25613.     @Sifra_Gr Char(3) = Null,
  25614.     @Sifra_Podg Char(6) = Null,
  25615.     @Lokacija Varchar(10) = Null,
  25616.     @TipKup Char(11) = Null,
  25617.     @Komint_KObj Char(1) = Null,
  25618.     @PoZbirenBrand Char(1) = 'B',    --Ova stavi go Z-zb.brand,B-Brand,P-Podgrupi,G-Grupi,A-Artikli, M-Gradovi, K-Komintent, 4-Drugo4, H-Hierarhiski
  25619.     @RazbijSostav Char(1) = Null,
  25620.     @SoBKolic_Tez    char(1) = 'B',    --Ova stavi go B-Brand kolic, T-Tezina
  25621.     @Sifra_obj Smallint = Null,
  25622.     @Sifra_Grad Varchar(200) = Null,
  25623.     @Koi_Regioni Varchar(200) = Null,
  25624.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  25625.     @Drugo1    smallint = Null,
  25626.     @Drugo2    smallint = Null,
  25627.     @Drugo3    smallint = Null,
  25628.     @Drugo4    smallint = Null,
  25629.     @Drugo5    smallint = Null,
  25630.     @Drugo6    smallint = Null,
  25631.     @Drugo7    smallint = Null,
  25632.     @GrPat        varchar(6) = Null,
  25633.     @Sifra_Pat    smallint = Null,
  25634.     @KomercKako     char(1) = 'I',
  25635.     @PoDenNed    char(1) = 'N',        -- W - Po Nedeli,        D - Po Denovi
  25636.     @TipDokProd    varchar(300) = Null,
  25637.     @PoPat_GrPat    char(1) = 'N',
  25638.     @PrikArt    char(1) = 'N',
  25639.     @GrKup varchar(500)= null,
  25640.     @GrArt varchar(500)= null
  25641. AS
  25642.     If @PoKojDatum = 'V'
  25643.             If @Datum_Do Is Not Null
  25644.         Set @Datum_Do = @Datum_Do + 1
  25645.     Declare @SSQL Varchar(8000)
  25646.     CREATE    Table #tSostav
  25647.     (    Sifra_Art Varchar(20),
  25648.         Sifra_Sur Varchar(20),
  25649.         Ima_Kolic Decimal(18,6),
  25650.         Cena Decimal(18,6),
  25651.         VkCena Decimal(18,6)
  25652.     )
  25653.     If @RazbijSostav = 'D'
  25654.         Begin
  25655.             Set @SSQL = 'Insert #tSostav
  25656.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  25657.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  25658.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  25659.             Exec(@SSQL)
  25660.         End
  25661.     Set @SSQL = 'Insert #tSostav
  25662.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  25663.         From Katart K '
  25664.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  25665.     If @RazbijSostav = 'D'
  25666.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  25667.     Exec(@SSQL)
  25668. --select * from #tsostav
  25669. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  25670. --------------------------------------------------------------
  25671. --    If @Kolku Is Not NULL   21.08.2008 gk 
  25672. --        Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(6)) + ' '
  25673. --    Else
  25674.  
  25675.     If @GrKup Is Not Null
  25676.     Begin
  25677.     CREATE   Table #KupObj
  25678.         (
  25679.             Sifra_Kup    char(6),
  25680.             Sifra_Obj    smallint
  25681.         )
  25682.         CREATE   Table #KupObj1
  25683.         (
  25684.             Sifra_Kup    char(6),
  25685.             Sifra_Obj    smallint
  25686.         )
  25687.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  25688.         Exec(@SSQL)
  25689.  
  25690.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  25691.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  25692.                 From SGrKupObj GK 
  25693.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  25694.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  25695.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  25696.         Exec(@SSQL)
  25697.  
  25698.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  25699.         Exec(@SSQL)
  25700.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  25701.     End
  25702.  
  25703.     If @GrArt Is Not Null
  25704.     Begin
  25705.         Create Table #GrArt
  25706.         (
  25707.             Sifra_Art    varchar(20)
  25708.         )
  25709.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  25710.  
  25711.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  25712.         Exec(@SSQL)
  25713.     End
  25714.  
  25715.     Set @SSQL = 'Select '
  25716.     If @PoZbirenBrand = 'Z'
  25717.         Set @SSQL = @SSQL + 'B.Sifra_Drg1 As Sifra_Brand, BB.Ime_Drg1 As ImeBrand, '
  25718.     Else If @PoZbirenBrand = 'P'
  25719.         Set @SSQL = @SSQL + 'K.Sifra_Podg As Sifra_Brand, P.Ime_Podg As ImeBrand, '
  25720.     Else If @PoZbirenBrand = 'G'
  25721.         Set @SSQL = @SSQL + 'G.Sifra_Gr As Sifra_Brand, G.Ime_Gr  As ImeBrand, '
  25722.     Else  If @PoZbirenBrand = 'A'
  25723.         Set @SSQL = @SSQL + 'K.Sifra_Art As Sifra_Brand, K.ImeArt  As ImeBrand, '
  25724.     Else  If @PoZbirenBrand = 'M'
  25725.         Set @SSQL = @SSQL + '(Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) As Sifra_Brand, M.ImeGrad  As ImeBrand, '
  25726.     Else  If @PoZbirenBrand = 'K'
  25727.         Set @SSQL = @SSQL + 'D.Sifra_Kup As Sifra_Brand, Kup.ImeKup  As ImeBrand, '
  25728.     Else  If @PoZbirenBrand = '4'
  25729.         Set @SSQL = @SSQL + 'K.Drugo4 As Sifra_Brand, D4.Ime_4  As ImeBrand, '
  25730.     Else  If @PoZbirenBrand = 'H'
  25731.         Set @SSQL = @SSQL + 'K.Sifra_KHier As Sifra_Brand, H.Ime_KHier  As ImeBrand, '
  25732.     Else
  25733.         Set @SSQL = @SSQL + 'K.Sifra_Drg As Sifra_Brand, B.Ime As ImeBrand, '
  25734.     If @PrikArt = 'D'        Set @SSQL = @SSQL + 'S.Sifra_Art, K.ImeArt,  '
  25735.     Else
  25736.         Set @SSQL = @SSQL + 'Null Sifra_Art, Null ImeArt,  '
  25737.     If @PoPat_GrPat = 'D'           --    (Case When KO.KDrugo3 Is Not Null Then KO.KDrugo3 Else Kup.KDrugo3 End) Sif_GrPat, K3.Ime_3K Ime_GrPat, ' -- SGP.Sif_GrPat, GP.Ime_GrPat, '
  25738.         Set @SSQL = @SSQL + ' D.Sifra_Pat, Pat.ImePat, 
  25739.                     (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End) Sif_GrPat, K4.Ime_4K Ime_GrPat, ' -- SGP.Sif_GrPat, GP.Ime_GrPat, '
  25740.     Else
  25741.         Set @SSQL = @SSQL + ' Null Sifra_Pat, Null ImePat, Null Sif_GrPat, Null Ime_GrPat, '
  25742.     Set @SSQL = @SSQL + ' ((Case When Month(S.Datum_Dok) <10 then ''0'' Else '''' End) + Cast(Month(S.Datum_Dok) as varchar(2))) As Mesec, Year(S.Datum_Dok) As Godina, '
  25743.     If @PoDenNed = 'W'
  25744.         Set @SSQL = @SSQL + 'DatePart(wk, S.Datum_Dok) Nedela, Null as Den, '
  25745.     Else If @PoDenNed = 'D'
  25746.         Set @SSQL = @SSQL + 'Null Nedela, S.Datum_Dok as Den, '
  25747.     Else 
  25748.         Set @SSQL = @SSQL + 'Null Nedela, Null as Den, '
  25749.     If @SoBKolic_Tez='T'
  25750.         Set @SSQL = @SSQL + 'Round(Sum(S.Kolic* K.Tezina/1000), 4) UL, '
  25751.     Else If @SoBKolic_Tez='K'
  25752.         Set @SSQL = @SSQL + 'Round(Sum(S.Kolic), 4) UL, '
  25753.     Else
  25754.         Set @SSQL = @SSQL + 'Round(Sum(S.Kolic*TS.Ima_Kolic * (Case When K.KolkuDrg Is Null Or K.KolkuDrg = 0.0 Then 1 Else K.KolkuDrg End)), 4) As UL, '
  25755. /*    Set @SSQL = @SSQL + 'Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) UL, '
  25756.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  25757.                 Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  25758.                 Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, 
  25759.                 Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS, '*/
  25760.     Set @SSQL = @SSQL + '
  25761.                 Round(Sum(S.Kolic*TS.Ima_Kolic * S.DokCena*TS.Cena/TS.VkCena / (Case When S.DanDokCena = ''D'' Then (1+S.Posn/100) Else 1 End)), 4) as Vr_Osnov, 
  25762.                 Round(Sum(S.Kolic*TS.Ima_Kolic * S.DokCena*TS.Cena/TS.VkCena * (1-S.Uces/100) * (1-D.Kasa/100) / (Case When S.DanDokCena = ''D'' Then (1+S.Posn/100) Else 1 End)), 4) as Vr_SoRabat, 
  25763.                 Round(Sum(S.Kolic*TS.Ima_Kolic * S.DokCena*TS.Cena/TS.VkCena * (1-S.Uces/100) * (1-D.Kasa/100) * (Case When S.DanDokCena = ''N'' Then (1+S.Posn/100) Else 1 End)), 4) as Vr_Krajna, 
  25764.                 Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS, 
  25765.                 Round(Sum(S.Kolic*K.Tezina/1000), 4) As KolicKG, '
  25766.     If @Komint_KObj = 'K'
  25767.         Set @SSQL = @SSQL + 'Count(Distinct D.Sifra_Kup) As Komintenti, '
  25768.     Else If @Komint_KObj = 'O'
  25769.         Set @SSQL = @SSQL + 'Count(Distinct(D.Sifra_Kup + ''&&&'' + Cast(D.Sifra_Obj as varchar(6)))) As Komintenti, '
  25770.     Set @SSQL = @SSQL + 'KUP.KDrugo2 Pod2, KD2.Ime_2K Ime_Pod2 '
  25771.     Set @SSQL = @SSQL + 'From #tSostav TS
  25772.                 Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  25773.                 Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  25774.                 Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  25775.                 Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  25776.                 Left Outer Join KDrugo2 KD2 On KUP.KDrugo2=KD2.Sifra_2K  
  25777.                 Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup AND KO.SIFRA_OBJ=D.SIFRA_OBJ '
  25778. --                Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup '
  25779.     If @GrKup Is Not Null
  25780.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  25781.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  25782.     If @GrArt Is Not Null
  25783.         Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  25784.     If @Sifra_Gr Is Not Null  OR @PoZbirenBrand = 'P'  OR  @PoZbirenBrand = 'G'
  25785.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  25786.     If @PoZbirenBrand = 'Z'
  25787.         Set @SSQL = @SSQL + 'Left Outer Join DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg 
  25788.                 Left Outer Join DrgPodel1 BB On B.Sifra_Drg1=BB.Sifra_Drg1 '
  25789.     Else If @PoZbirenBrand = 'G'
  25790.         Set @SSQL = @SSQL + 'Left Outer Join Grupi G On P.Sifra_Gr=G.Sifra_Gr '
  25791.     Else If @PoZbirenBrand = 'M'
  25792.         Set @SSQL = @SSQL + 'Left Outer Join Grad M On M.Sifra_Grad=(Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) '
  25793.     Else If @PoZbirenBrand = '4'
  25794.         Set @SSQL = @SSQL + 'Left Outer Join Drugo4 D4 On D4.Sifra_4=K.Drugo4 '
  25795.     Else If @PoZbirenBrand = 'H'
  25796.         Set @SSQL = @SSQL + 'Left Outer Join KatHier H On H.Sifra_KHier=K.Sifra_KHier '
  25797.     Else if @PoZbirenBrand = 'P' or @PoZbirenBrand = 'A'
  25798.                     Set @SSQL = @SSQL      -- kolku da ima nekoja komanda
  25799.     Else 
  25800.         Set @SSQL = @SSQL + 'Left Outer Join DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  25801.     If @PoPat_GrPat = 'D'                                --(Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End)
  25802.         Set @SSQL = @SSQL + ' Left Outer Join Patnici Pat On Pat.Sifra_Pat = D.Sifra_Pat 
  25803.                       Left Outer Join KDrugo4 K4 On K4.Sifra_4K = (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End) '  --(Case When KO.KDrugo4 Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End) 
  25804.                      -- Left Outer Join SGrPat SGP On SGP.Sifra_Pat=Pat.Sifra_Pat
  25805.                       --Left Outer Join GrPat GP On GP.Sif_GrPat=SGP.Sif_GrPat '
  25806.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  25807.     If @Lokacija Is Not NULL
  25808.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  25809.     If @Kto Is Not NULL
  25810.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  25811.     If @Sifra_Podg Is Not NULL
  25812.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  25813.     If @Sifra_Gr Is Not NULL
  25814.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  25815.     If @Sifra_Art_Od Is Not Null
  25816.         Set @SSQL = @SSQL + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  25817.     If @Sifra_Art_Do Is Not Null
  25818.         Set @SSQL = @SSQL + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  25819.        If @KomercKako = 'I'
  25820.     Begin
  25821.         If @Sifra_Pat IS NOT NULL
  25822.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  25823.         If @GrPat Is Not Null
  25824.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + ''') '
  25825.     End
  25826.        If @KomercKako = 'T'
  25827.     Begin
  25828.         If @Sifra_Pat IS NOT NULL
  25829.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  25830.         If @GrPat Is Not Null
  25831.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + ''') '
  25832.     End
  25833.     If @PoKojDatum = 'V'
  25834.           Begin
  25835.         If @Datum_Od Is Not NULL
  25836.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  25837.         If @Datum_Do Is Not NULL
  25838.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  25839.           End
  25840.     Else 
  25841.           Begin
  25842.         If @Datum_Od Is NOT Null
  25843.             Begin
  25844.                 SET @SSQL = @SSQL + 'AND S.Datum_Dok >= ''' +Cast(@Datum_OD as varchar(35)) +''' '
  25845.             End
  25846.         If @Datum_Do Is NOT Null
  25847.             Begin
  25848.                 SET @SSQL = @SSQL + 'AND S.Datum_Dok <= ''' +Cast(@Datum_Do as varchar(35)) +''' '
  25849.             End
  25850.            End
  25851.     If @Pod1 Is Not NULL
  25852.         If @KFPod1 = 'D'
  25853.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  25854.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  25855.         Else
  25856.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  25857.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  25858.     If @Pod2 Is Not NULL
  25859.         If @KFPod2 = 'D'
  25860.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  25861.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  25862.         Else
  25863.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  25864.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  25865.     If @Pod3 Is Not NULL
  25866.         If @KFPod3 = 'D'
  25867.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  25868.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  25869.         Else
  25870.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  25871.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  25872.     If @Pod4 Is Not NULL
  25873.         If @KFPod4 = 'D'
  25874.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  25875.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  25876.         Else
  25877.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  25878.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  25879.     If @Pod5 Is Not NULL
  25880.         If @KFPod5 = 'D'
  25881.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  25882.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  25883.         Else
  25884.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  25885.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  25886.     If @Pod6 Is Not NULL
  25887.         If @KFPod6 = 'D'
  25888.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  25889.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  25890.         Else
  25891.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  25892.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  25893.     If @Pod7 Is Not NULL
  25894.         If @KFPod7 = 'D'
  25895.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  25896.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  25897.         Else
  25898.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  25899.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  25900.     If @Sifra_Tip Is Not Null
  25901.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  25902.     If @Sifra_Kup_Od Is Not NULL
  25903.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  25904.     If @Sifra_Kup_Do Is Not NULL
  25905.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  25906.     If @Sifra_Brand_Od Is Not NULL
  25907.         Set @SSQL = @SSQL + ' And K.Sifra_Drg>=''' + Cast(@Sifra_Brand_Od As Varchar(5)) + ''' '
  25908.     If @Sifra_Brand_Do Is Not NULL
  25909.         Set @SSQL = @SSQL + ' And K.Sifra_Drg<=''' + Cast(@Sifra_Brand_Do As Varchar(5)) + ''' '
  25910.     If @Sifra_obj Is Not NULL
  25911.         Set @SSQL = @SSQL + 'And D.Sifra_obj=''' + Cast(@Sifra_obj As Varchar(5)) + ''' '
  25912.     If @Sifra_Grad Is Not NULL    
  25913.         Begin
  25914.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Sifra_Grad + ')) 
  25915.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Sifra_Grad + '))) '     
  25916.         End
  25917.     If @Koi_Regioni Is Not NULL    
  25918.         Begin
  25919.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  25920.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  25921.         End
  25922.     If @TipKup Is Not NULL
  25923.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  25924.     If @Sifra_OE Is Not NULL    
  25925.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  25926.     If @KoiOE Is Not NULL
  25927.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  25928.     If @TipDokProd Is Not NULL
  25929.              Set @SSQL  = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  25930.     If @Drugo1 Is Not NULL
  25931.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  25932.     If @Drugo2 Is Not NULL
  25933.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  25934.     If @Drugo3 Is Not NULL
  25935.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  25936.     If @Drugo4 Is Not NULL
  25937.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  25938.     If @Drugo5 Is Not NULL
  25939.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  25940.     If @Drugo6 Is Not NULL
  25941.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  25942.     If @Drugo7 Is Not NULL
  25943.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  25944.     If @PoZbirenBrand = 'Z'
  25945.         Set @SSQL = @SSQL + 'Group By B.Sifra_Drg1, BB.Ime_Drg1, '
  25946.     Else If @PoZbirenBrand = 'P'
  25947.         Set @SSQL = @SSQL + 'Group By K.Sifra_Podg, P.Ime_Podg, '
  25948.     Else If @PoZbirenBrand = 'G'
  25949.         Set @SSQL = @SSQL + 'Group By G.Sifra_Gr, G.Ime_Gr, '
  25950.     Else  If @PoZbirenBrand = 'A'
  25951.         Set @SSQL = @SSQL + 'Group By K.Sifra_Art, K.ImeArt, '
  25952.     Else  If @PoZbirenBrand = 'M'
  25953.         Set @SSQL = @SSQL + 'Group By (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End), M.ImeGrad, '
  25954.     Else  If @PoZbirenBrand = 'K'
  25955.         Set @SSQL = @SSQL + 'Group By D.Sifra_Kup, Kup.ImeKup, '
  25956.     Else  If @PoZbirenBrand = '4'
  25957.         Set @SSQL = @SSQL + 'Group By K.Drugo4, D4.Ime_4, '
  25958.     Else  If @PoZbirenBrand = 'H'
  25959.         Set @SSQL = @SSQL + 'Group By K.Sifra_KHier, H.Ime_KHier, '
  25960.     Else
  25961.         Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, B.Ime, '
  25962.     Set @SSQL = @SSQL + ' ((Case When Month(S.Datum_Dok) <10 then ''0'' Else '''' End) + Cast(Month(S.Datum_Dok) as varchar(2))), Year(S.Datum_Dok), KUP.KDrugo2, KD2.Ime_2K '
  25963.     If @PrikArt = 'D'
  25964.         Set @SSQL = @SSQL + ' , S.Sifra_Art, K.ImeArt '
  25965.     If @PoPat_GrPat = 'D'
  25966.         Set @SSQL = @SSQL + ', D.Sifra_Pat, Pat.ImePat, 
  25967.                     (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End), K4.Ime_4K ' --SGP.Sif_GrPat, GP.Ime_GrPat '
  25968.     If @PoDenNed = 'W'
  25969.         Set @SSQL = @SSQL + ', DatePart(wk, S.Datum_Dok) '
  25970.     Else If @PoDenNed = 'D'
  25971.         Set @SSQL = @SSQL + ', S.Datum_Dok '
  25972.     Set @SSQL = @SSQL + 'Order By Mesec, Godina'
  25973.     If @Podred = 'S'
  25974.         If @PoZbirenBrand = 'Z'
  25975.             Set @SSQL = @SSQL + ', B.Sifra_Drg1 ' 
  25976.         Else If @PoZbirenBrand = 'P'
  25977.             Set @SSQL = @SSQL + ', K.Sifra_Podg '
  25978.         Else If @PoZbirenBrand = 'G'            Set @SSQL = @SSQL + ', G.Sifra_Gr '
  25979.         Else  If @PoZbirenBrand = 'A'
  25980.             Set @SSQL = @SSQL + ', K.Sifra_Art '
  25981.         Else  If @PoZbirenBrand = 'M'
  25982.             Set @SSQL = @SSQL + ', (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) '
  25983.         Else  If @PoZbirenBrand = 'K'
  25984.             Set @SSQL = @SSQL + ', D.Sifra_Kup '
  25985.         Else  If @PoZbirenBrand = '4'
  25986.             Set @SSQL = @SSQL + ', K.Drugo4 '
  25987.         Else  If @PoZbirenBrand = 'H'
  25988.             Set @SSQL = @SSQL + ', K.Sifra_KHier '
  25989.         Else
  25990.             Set @SSQL = @SSQL + ', K.Sifra_Drg '
  25991.     Else If @Podred = 'A'
  25992.         If @PoZbirenBrand = 'Z'
  25993.             Set @SSQL = @SSQL + ', BB.Ime_Drg1 '
  25994.         Else If @PoZbirenBrand = 'P'
  25995.             Set @SSQL = @SSQL + ', P.Ime_Podg '
  25996.         Else If @PoZbirenBrand = 'G'
  25997.             Set @SSQL = @SSQL + ', G.Ime_Gr '
  25998.         Else  If @PoZbirenBrand = 'A'
  25999.             Set @SSQL = @SSQL + ', K.ImeArt '
  26000.         Else  If @PoZbirenBrand = 'M'
  26001.             Set @SSQL = @SSQL + ', M.ImeGrad '
  26002.         Else  If @PoZbirenBrand = 'K'
  26003.             Set @SSQL = @SSQL + ', Kup.ImeKup '
  26004.         Else  If @PoZbirenBrand = '4'
  26005.             Set @SSQL = @SSQL + ', D4.Ime_4 '
  26006.         Else  If @PoZbirenBrand = 'H'
  26007.             Set @SSQL = @SSQL + ', H.Ime_KHier '
  26008.         Else
  26009.             Set @SSQL = @SSQL + ', B.Ime ' 
  26010.     Else If @Podred = '1'
  26011.         Set @SSQL = @SSQL + ', UL Desc ' 
  26012.     Else If @Podred = '2'
  26013.         Set @SSQL = @SSQL + ', UL Desc ' 
  26014.     Else If @Podred = '3'
  26015.         Set @SSQL = @SSQL + ', Vr_Krajna Desc '
  26016.     Print @SSQL
  26017.     Exec(@SSQL)
  26018.  
  26019. Go
  26020. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_zaliha]'))
  26021. drop procedure [dbo].[sp_brand_zaliha]
  26022.  
  26023. Go
  26024.  
  26025. CREATE               PROCEDURE sp_Brand_Zaliha
  26026.    @Sifra_OE smallint,
  26027.    @Koi_OE Varchar(300),
  26028.    @Tip_Podr char(1) = Null,
  26029.    @Brand_Od char(6) = Null,
  26030.    @Brand_Do char(6) = Null,
  26031.    @Kto char(6) = Null,
  26032.    @Sifra_Gr char(3) = Null,
  26033.    @Sifra_Podg char(6) = Null,
  26034.    @Lokacija varchar(10) = Null,
  26035.    @KF_Lokacija char(1) = 'N',
  26036.    @Sifra_art_Od varchar(20) = Null,
  26037.    @Sifra_art_Do varchar(20) = Null,
  26038.    @Iskluci char(1) = 'N',
  26039.     @Drugo1    smallint = Null,
  26040.     @Drugo2    smallint = Null,
  26041.     @Drugo3    smallint = Null,
  26042.     @Drugo4    smallint = Null,
  26043.     @Drugo5    smallint = Null
  26044. AS
  26045.     Set Nocount Off
  26046.     Declare @SSQL varchar(2000)
  26047.    Set @SSQL='SELECT
  26048.         Sum(S.Vlez-S.Izlez) As Kolicina,
  26049.         Sum((S.Vlez-S.Izlez)*dbo.fix_BrandKolic(K.KolkuDrg)) UL_Edinici,
  26050.         Sum(dbo.fn_vr_osnov  ((S.Vlez-S.Izlez), S.Cena, S.DanCena, S.POsn)) as Vr_Osnov, 
  26051.         Sum(dbo.fn_vr_sorabat((S.Vlez-S.Izlez), S.Cena, S.DanCena, S.POsn, 0.0, 0)) as Vr_SoRabat,
  26052.         Sum(dbo.fn_vr_krajna ((S.Vlez-S.Izlez), S.Cena, S.DanCena, S.POsn, 0.0, 0)) as Vr_Krajna,
  26053.         Sum((S.Vlez-S.Izlez)*K.GotCena) Vk_NPS,
  26054.         K.Sifra_Drg, B.Ime 
  26055.         FROM Soart S '
  26056.    Set @SSQL=@SSQL+'Inner JOIN Katart K ON S.Sifra_Art=K.Sifra_Art  And K.SMatUsl=''M'' '
  26057.    Set @SSQL=@SSQL+'Left Outer JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  26058.     Set @SSQL=@SSQL+'Left Outer JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  26059.    Set @SSQL=@SSQL+'WHERE 1=1 '
  26060.     If @Iskluci = 'D'
  26061.           Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  26062.     If @Sifra_OE Is Not Null
  26063.         Set @SSQL = @SSQL + 'And S.Sifra_OE='+Cast(@Sifra_OE As Char(6)) + ' '
  26064.     If @Koi_OE Is Not Null
  26065.         Set @SSQL = @SSQL + 'And Sifra_OE In (' + @Koi_OE + ') '
  26066.    If @Brand_Od IS NOT NULL 
  26067.         Set @SSQL = @SSQL + 'AND K.Sifra_Drg>=' + @Brand_Od + ' '
  26068.    If @Brand_Do IS NOT NULL 
  26069.         Set @SSQL = @SSQL + 'AND K.Sifra_Drg<=' + @Brand_Do + ' '
  26070.    If @Kto Is Not Null
  26071.         Set @SSQL=@SSQL+'AND (K.Kto='''+@Kto+''') '
  26072.    If @Sifra_Gr Is Not Null
  26073.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  26074.    If @Sifra_Podg Is Not Null
  26075.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  26076.    If @Sifra_art_Od Is Not Null
  26077.         Set @SSQL=@SSQL + 'And K.Sifra_art >=''' + @Sifra_art_Od + ''' '
  26078.    If @Sifra_art_Do Is Not Null
  26079.         Set @SSQL=@SSQL + 'And K.Sifra_art <=''' + @Sifra_art_Do + ''' '
  26080.    If @Lokacija Is Not NULL
  26081.     Begin
  26082.        If @KF_Lokacija = 'N'
  26083.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  26084.        Else If @KF_Lokacija = 'D'
  26085.         Set @SSQL = @SSQL + 'And ((K.Lokacija<>''' + @Lokacija + ''')  Or (K.Lokacija is null ))'
  26086.     End    
  26087.     If @Drugo1 Is Not NULL
  26088.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  26089.     If @Drugo2 Is Not NULL
  26090.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  26091.     If @Drugo3 Is Not NULL
  26092.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  26093.     If @Drugo4 Is Not NULL
  26094.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  26095.     If @Drugo5 Is Not NULL
  26096.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  26097.     Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, B.Ime '
  26098.    If @Tip_Podr='S'
  26099.       Set @SSQL=@SSQL+'ORDER BY K.Sifra_Drg'
  26100.    Else If @Tip_Podr='A'
  26101.       Set @SSQL=@SSQL+'ORDER BY B.Ime'
  26102. print @SSQL
  26103.    EXEC(@SSQL)
  26104.     Set Nocount Off
  26105.  
  26106.  
  26107.  
  26108.  
  26109.  
  26110. Go
  26111. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_zaliha_datum]'))
  26112. drop procedure [dbo].[sp_brand_zaliha_datum]
  26113.  
  26114. Go
  26115.  
  26116. CREATE    PROCEDURE sp_Brand_Zaliha_Datum
  26117.     @Sifra_OE Smallint,
  26118.     @Koi_OE Varchar(300),
  26119.        @Brand_Od Smallint,
  26120.        @Brand_Do Smallint,
  26121.        @Datum Smalldatetime,
  26122.        @SoDDV Char(1),         -- D/N
  26123.     @Kto Char(6) = Null,
  26124.       @Sifra_Gr Char(3),
  26125.        @Sifra_Podg Char(6),
  26126.     @Tip_Podr Char(1) = 'S',
  26127.     @Lokacija Varchar(10) = Null,
  26128.     @KF_Lokacija char(1) = 'N',
  26129.        @Sifra_art_Od varchar(20) = Null,
  26130.        @Sifra_art_Do varchar(20) = Null,
  26131.        @Iskluci char(1) ='N',
  26132.     @Drugo1    smallint = Null,
  26133.     @Drugo2    smallint = Null,
  26134.     @Drugo3    smallint = Null,
  26135.     @Drugo4    smallint = Null,
  26136.     @Drugo5    smallint = Null
  26137. AS
  26138.     Declare @SSQL As Varchar(4000)
  26139.     Set @SSQL = 'Select S.Sifra_OE, S.Sifra_Art,
  26140.         Vlez = Sum(Case S.VlIzl
  26141.                 When ''V'' Then S.Kolic
  26142.                 When ''I'' Then 0
  26143.             End),
  26144.         Izlez = Sum(Case S.VlIzl
  26145.                 When ''V'' Then 0
  26146.                 When ''I'' Then S.Kolic
  26147.             End),
  26148.         dbo.fn_CenaDatum(S.Sifra_OE, S.Sifra_Art, ''' + Cast(@Datum As Varchar(30)) + ''', ''' + @SoDDV + ''') Cena
  26149.         From Stavr S
  26150.         Inner Join Katart K On S.sifra_art=K.Sifra_art  And K.SMatUsl=''M'' '
  26151.     If @Sifra_Gr Is Not Null
  26152.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  26153.     Set @SSQL = @SSQL + 'Where S.Datum_Dok<=''' + Cast(@Datum As Varchar(30)) + ''' '
  26154.     If @Iskluci = 'D'
  26155.         Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  26156.     If @Brand_Od Is Not Null
  26157.         Set @SSQL = @SSQL + 'And K.Sifra_Drg >=' + Cast(@Brand_Od As Varchar(8)) + ' '
  26158.     If @Brand_Do Is Not Null
  26159.         Set @SSQL = @SSQL + 'And K.Sifra_Drg <=' + Cast(@Brand_Do As Varchar(8)) + ' '
  26160.     If @Sifra_OE Is Not Null And @Koi_OE Is Null
  26161.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  26162.     Else If @Sifra_OE Is Null And @Koi_OE Is Not Null
  26163.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (' + @Koi_Oe + ') '
  26164. --            (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  26165.     If @Sifra_art_Od Is Not Null
  26166.         Set @SSQL=@SSQL + 'And K.Sifra_art >=''' + @Sifra_art_Od + ''' '
  26167.     If @Sifra_art_Do Is Not Null
  26168.         Set @SSQL=@SSQL + 'And K.Sifra_art <=''' + @Sifra_art_Do + ''' '
  26169.    If @Kto Is Not Null
  26170.       Set @SSQL=@SSQL + 'And K.Kto='''+@Kto+''' '
  26171.     If @Sifra_Podg Is Not Null
  26172.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  26173.     If @Sifra_Gr Is Not Null
  26174.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=' + @Sifra_Gr + ' '
  26175.     If @Lokacija Is Not NULL
  26176.         Begin
  26177.               If @KF_Lokacija = 'N'
  26178.             Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  26179.            Else If @KF_Lokacija = 'D'
  26180.             Set @SSQL = @SSQL + 'And ((K.Lokacija<>''' + @Lokacija + ''') Or (K.Lokacija is null ))'
  26181.            End    
  26182.     If @Drugo1 Is Not NULL
  26183.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  26184.     If @Drugo2 Is Not NULL
  26185.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  26186.     If @Drugo3 Is Not NULL
  26187.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  26188.     If @Drugo4 Is Not NULL
  26189.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  26190.     If @Drugo5 Is Not NULL
  26191.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  26192.     Set @SSQL = @SSQL + 'Group By S.Sifra_OE, S.Sifra_Art '
  26193. print @ssql
  26194. --exec (@SSQL)
  26195.     Create Table #Zaliha
  26196.     (    Sifra_OE Smallint,
  26197.         Sifra_Art Varchar(6),
  26198.         Vlez Decimal(18,6),
  26199.         Izlez Decimal(18,6),
  26200.         Cena Decimal(18,6),
  26201.         Sifra_Drg smallint,
  26202.         Cena1 Decimal(18,6),
  26203.         DanCena Char(1),
  26204.         Posn Decimal(18,6),
  26205.         Ul_Edinici Decimal(18,6),
  26206.         Kolicina Decimal(18,6),
  26207.         Vrednost decimal(18,6)
  26208.     )    
  26209. /*        Ul_Edinici Decimal(18,6),
  26210.         Vr_Osnov decimal(18,6),
  26211.         Vr_SoRabat decimal(18,6),
  26212.         Vr_Krajna decimal(18,6),
  26213.         Vk_NPS decimal(18,6),
  26214.         Vrednost decimal(18,6)
  26215. */
  26216.     Insert #Zaliha(Sifra_OE, Sifra_Art, Vlez, Izlez, Cena)
  26217.     Exec(@SSQL)
  26218.     UPDATE #Zaliha
  26219.     SET    #Zaliha.Sifra_Drg = K.Sifra_Drg,
  26220.         UL_Edinici =  ((#Zaliha.Vlez-#Zaliha.Izlez) * (dbo.fix_BrandKolic(K.KolkuDrg))),
  26221.         Kolicina = (#Zaliha.Vlez-#Zaliha.Izlez),
  26222.         Vrednost = ((#Zaliha.Vlez-#Zaliha.Izlez) * #Zaliha.Cena)
  26223.     FROM #Zaliha
  26224.     INNER JOIN Katart K On #Zaliha.Sifra_art=K.Sifra_art
  26225.     INNER JOIN Soart S ON #Zaliha.Sifra_art=K.Sifra_art
  26226.     WHERE K.Sifra_art =#Zaliha.Sifra_art
  26227. Set @SSQL = 'Select  ZB.Sifra_Drg, D.Ime, Sum(ZB.Vlez) Vlez, Sum(ZB.Izlez) Izlez, round(Sum(ZB.UL_Edinici), 6) Ul_Edinici, round(Sum(ZB.Kolicina), 6) Kolicina, Round(sum(ZB.Vrednost), 6)  Vrednost,
  26228.         Sum((ZB.Vlez-ZB.Izlez) *  ZB.Cena) as Vr_Osnov, 
  26229.         Sum((ZB.Vlez-ZB.Izlez) * ZB.Cena ) as Vr_SoRabat,
  26230.         Sum((ZB.Vlez-ZB.Izlez) * ZB.Cena ) as Vr_Krajna,
  26231.         Sum((ZB.Vlez-ZB.Izlez)*K.GotCena) Vk_NPS
  26232.         From #Zaliha ZB
  26233.         Inner Join Katart K On ZB.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' 
  26234.         Left Outer Join DrgPodel D On ZB.Sifra_Drg=D.Sifra_Drg ' 
  26235. Set @SSQL = @SSQL + ' Group By   ZB.Sifra_Drg, D.Ime '
  26236.     If @Tip_podr = 'S'
  26237.         Set @SSQL = @SSQL + 'Order By ZB.Sifra_Drg '
  26238.     Else If @Tip_Podr = 'A'
  26239.         Set @SSQL = @SSQL + 'Order By D.Ime '
  26240.     Exec(@SSQL)
  26241.  
  26242.  
  26243.  
  26244.  
  26245.  
  26246. Go
  26247. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_zaliha_datum_sostav]'))
  26248. drop procedure [dbo].[sp_brand_zaliha_datum_sostav]
  26249.  
  26250. Go
  26251.  
  26252. CREATE     PROCEDURE sp_Brand_Zaliha_Datum_Sostav
  26253.     @Sifra_OE Smallint,
  26254.     @Koi_OE Varchar(300) = Null,
  26255.        @Brand_Od Smallint = Null,
  26256.        @Brand_Do Smallint = Null,
  26257.        @Datum Smalldatetime = Null,
  26258.        @SoDDV Char(1),         -- D/N
  26259.     @Kto Char(6) = Null,
  26260.        @Sifra_Gr Char(3) = Null,
  26261.     @Sifra_Podg Char(6) = Null,
  26262.     @Tip_Podr Char(1) = 'S',
  26263.     @Lokacija Varchar(10) = Null,
  26264.     @KF_Lokacija char(1) = 'N',
  26265.        @Sifra_art_Od varchar(20) = Null,
  26266.        @Sifra_art_Do varchar(20) = Null,
  26267.        @RazbijSostav char(1) = 'D',
  26268.        @Iskluci char(1) = 'N',
  26269.     @Drugo1    smallint = Null,
  26270.     @Drugo2    smallint = Null,
  26271.     @Drugo3    smallint = Null,
  26272.     @Drugo4    smallint = Null,
  26273.     @Drugo5    smallint = Null
  26274. AS
  26275.     Declare @SSQL As Varchar(4000)
  26276.     CREATE          Table #tSostav
  26277.     (    Sifra_Art Varchar(20),
  26278.         Sifra_Sur Varchar(20),
  26279.         Ima_Kolic Decimal(18,6),
  26280.         Cena Decimal(18,6),
  26281.         VkCena Decimal(18,6)
  26282.     )
  26283.     If @RazbijSostav = 'D'
  26284.         Begin
  26285.             Set @SSQL = 'Insert #tSostav
  26286.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  26287.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  26288.         If @Iskluci = 'D'
  26289.             Set @SSQL = @SSQL + ' Where K.Iskluci <> ''' + @Iskluci  + ''' '
  26290.             Exec(@SSQL)
  26291.         End
  26292.     Set @SSQL = 'Insert #tSostav
  26293.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  26294.         From Katart K Where 1=1 '
  26295.     If @Iskluci = 'D'
  26296.            Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  26297.     If @RazbijSostav = 'D'
  26298.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  26299.     Exec(@SSQL)
  26300.     Set @SSQL = 'Select S.Sifra_OE, TS.Sifra_Sur Sifra_Art,
  26301.              Sum(Case S.VlIzl
  26302.                 When ''V'' Then S.Kolic*TS.Ima_Kolic
  26303.                 When ''I'' Then 0
  26304.             End) Vlez,
  26305.             Sum(Case S.VlIzl
  26306.                 When ''V'' Then 0
  26307.                 When ''I'' Then S.Kolic*TS.Ima_Kolic
  26308.             End) Izlez,
  26309.         dbo.fn_CenaDatum(S.Sifra_OE, TS.Sifra_Sur, ''' + Cast(@Datum As Varchar(30)) + ''', ''' + @SoDDV + ''') Cena
  26310.         From #tSostav TS
  26311.         Inner Join Stavr S On S.Sifra_art  = TS.Sifra_art
  26312.         Inner Join Katart K On TS.Sifra_Sur=K.Sifra_Art And K.SMatUsl=''M'' '
  26313.     If @Sifra_Gr Is Not Null
  26314.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  26315.     Set @SSQL = @SSQL + 'Where Datum_Dok<=''' + Cast(@Datum As Varchar(30)) + ''' '
  26316.     If @Iskluci = 'D'
  26317.            Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  26318.     If @Sifra_Art_Od Is Not Null
  26319.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  26320.     If @Sifra_Art_Do Is Not Null
  26321.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  26322.     If @Sifra_OE Is Not Null And @Koi_OE Is Null
  26323.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  26324.     Else If @Sifra_OE Is Null And @Koi_OE Is Not Null
  26325.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (' + @Koi_Oe + ') '
  26326. --                 (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  26327.     If @Brand_Od Is Not Null
  26328.         Set @SSQL = @SSQL + 'And K.Sifra_Drg >=' + Cast(@Brand_Od As Varchar(8)) + ' '
  26329.     If @Brand_Do Is Not Null
  26330.         Set @SSQL = @SSQL + 'And K.Sifra_Drg <=' + Cast(@Brand_Do As Varchar(8)) + ' '
  26331.        If @Kto Is Not Null
  26332.               Set @SSQL=@SSQL + 'And K.Kto='''+@Kto+''' '
  26333.        If @Sifra_Podg Is Not Null
  26334.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  26335.     If @Sifra_Gr Is Not Null
  26336.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=' + @Sifra_Gr + ' '
  26337.     If @Lokacija IS NOT NULL
  26338.     Begin
  26339.         If @KF_Lokacija = 'D'
  26340.             Set @SSQL=@SSQL+'AND (K.Lokacija IS NULL OR K.Lokacija<>'''+lTrim(rTrim(@Lokacija))+''') '
  26341.         Else
  26342.             Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rTrim(@Lokacija))+''') '
  26343.     End
  26344.     If @Drugo1 Is Not NULL
  26345.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  26346.     If @Drugo2 Is Not NULL
  26347.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  26348.     If @Drugo3 Is Not NULL
  26349.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  26350.     If @Drugo4 Is Not NULL
  26351.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  26352.     If @Drugo5 Is Not NULL
  26353.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  26354.     Set @SSQL = @SSQL + 'Group By S.Sifra_OE, S.Sifra_Art, TS.Sifra_Sur '
  26355. print @SSQL
  26356.     Create Table #Zaliha
  26357.     (    Sifra_OE Smallint,
  26358.         Sifra_Art Varchar(20),
  26359.         Vlez Decimal(18,6),
  26360.         Izlez Decimal(18,6),
  26361.         Cena Decimal(18,6)
  26362.     )        
  26363.     Insert #Zaliha Exec(@SSQL)
  26364.         Set @SSQL = 'Select   K.Sifra_Drg, D.Ime, Sum(Z.Vlez) Vlez, Sum(Z.Izlez) Izlez,
  26365.         Sum((Z.Vlez-Z.Izlez) * (dbo.fix_BrandKolic(K.KolkuDrg))) UL_Edinici,        
  26366.         round((Sum(Z.Vlez-Z.Izlez)), 6) Kolicina, 
  26367.         round((Sum((Z.Vlez-Z.Izlez)*Z.Cena)), 6)  Vrednost,
  26368.         Sum((Z.Vlez-Z.Izlez) *  Z.Cena) as Vr_Osnov, 
  26369.         Sum((Z.Vlez-Z.Izlez) * Z.Cena ) as Vr_SoRabat,
  26370.         Sum((Z.Vlez-Z.Izlez) * Z.Cena ) as Vr_Krajna,
  26371.         Sum((Z.Vlez-Z.Izlez) * K.GotCena) Vk_NPS
  26372.         From #Zaliha Z
  26373.         Inner Join Katart K On Z.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' 
  26374.         Left Outer Join DrgPodel D On K.Sifra_Drg=D.Sifra_Drg '
  26375.     Set @SSQL = @SSQL + ' Where 1=1 '
  26376.     If @Iskluci = 'D'
  26377.            Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  26378.     If @Lokacija IS NOT NULL
  26379.     Begin
  26380.         If @KF_Lokacija = 'D'
  26381.             Set @SSQL=@SSQL+'AND (K.Lokacija IS NULL OR K.Lokacija<>'''+lTrim(rTrim(@Lokacija))+''') '
  26382.         Else
  26383.             Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rTrim(@Lokacija))+''') '
  26384.     End
  26385.     Set @SSQL = @SSQL + ' Group By K.Sifra_Drg, D.Ime  '
  26386.     If @Tip_Podr = 'S'
  26387.         Set @SSQL = @SSQL + 'Order By K.Sifra_Drg '
  26388.     Else If @Tip_Podr = 'A'
  26389.         Set @SSQL = @SSQL + 'Order By D.Ime '
  26390.     Exec(@SSQL)
  26391. print @SSQL
  26392.  
  26393.  
  26394.  
  26395.  
  26396. Go
  26397. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brand_zaliha_sostav]'))
  26398. drop procedure [dbo].[sp_brand_zaliha_sostav]
  26399.  
  26400. Go
  26401.  
  26402. CREATE  PROCEDURE sp_Brand_Zaliha_Sostav
  26403.    @Sifra_OE smallint,
  26404.    @Koi_OE Varchar(300),
  26405.    @Tip_Podr char(1) = Null,
  26406.    @Brand_Od char(6) = Null,
  26407.    @Brand_Do char(6) = Null,
  26408.    @Kto char(6) = Null,
  26409.    @Sifra_Gr char(3) = Null,
  26410.    @Sifra_Podg char(6) = Null,
  26411.    @Lokacija varchar(10) = Null,
  26412.    @KF_Lokacija char(1) = 'N',
  26413.    @Sifra_art_Od varchar(20) = Null,
  26414.    @Sifra_art_Do varchar(20) = Null,
  26415.    @RazbijSostav char(1)='D',
  26416.    @Iskluci    char(1) = 'N',
  26417.     @Drugo1    smallint = Null,
  26418.     @Drugo2    smallint = Null,
  26419.     @Drugo3    smallint = Null,
  26420.     @Drugo4    smallint = Null,
  26421.     @Drugo5    smallint = Null
  26422. AS
  26423.     Declare @SSQL Varchar(8000)
  26424.     CREATE          Table #tSostav
  26425.     (    Sifra_Art Varchar(20),
  26426.         Sifra_Sur Varchar(20),
  26427.         Ima_Kolic Decimal(18,6),
  26428.         Cena Decimal(18,6),
  26429.         VkCena Decimal(18,6)
  26430.     )
  26431.     If @RazbijSostav = 'D'
  26432.         Begin
  26433.             Set @SSQL = 'Insert #tSostav
  26434.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  26435.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  26436.             If @Iskluci = 'D'
  26437.                Set @SSQL = @SSQL + ' Where K.Iskluci <> ''' + @Iskluci  + ''' '
  26438.             Exec(@SSQL)
  26439.         End
  26440.     Set @SSQL = 'Insert #tSostav
  26441.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  26442.         From Katart K WHERE 1=1'
  26443.     If @Iskluci = 'D'
  26444.            Set @SSQL = @SSQL + ' and K.Iskluci <> ''' + @Iskluci  + ''' '
  26445.     If @RazbijSostav = 'D'
  26446.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  26447.     Exec(@SSQL)
  26448.     Create Table #Tabela
  26449.     (
  26450.     Sifra_Oe    smallint,
  26451.     Sifra_art        varchar(20),
  26452.     Vlez        decimal(18,6),
  26453.     Izlez        decimal(18,6)
  26454.     )
  26455.     Set @SSQL='SELECT S.Sifra_Oe, SO.Sifra_Sur Sifra_art, (S.Vlez*So.Ima_Kolic) Vlez, (S.Izlez*SO.Ima_Kolic) Izlez 
  26456.         FROM Soart S   
  26457.         INNER JOIN #tSostav SO On S.Sifra_art = SO.Sifra_Art '
  26458.     Set @SSQL=@SSQL+'INNER JOIN Katart K ON SO.Sifra_Sur=K.Sifra_Art  And K.SMatUsl=''M'' '
  26459.     Set @SSQL=@SSQL+'INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar '
  26460.     Set @SSQL=@SSQL+'INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg 
  26461.                      INNER JOIN Grupi G ON P.Sifra_Gr=G.Sifra_Gr '
  26462.     If @Sifra_Oe Is Not Null
  26463.         Set @SSQL=@SSQL+' WHERE S.Sifra_OE = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  26464.     If @Koi_Oe Is Not Null
  26465.         Set @SSQL=@SSQL+'WHERE S.Sifra_OE In (' + @Koi_OE + ') '
  26466.     If @Iskluci = 'D'
  26467.         Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  26468.     If @Sifra_art_Od IS NOT NULL 
  26469.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_art_Od + ''' '
  26470.     If @Sifra_art_Do IS NOT NULL 
  26471.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_art_Do + ''' '
  26472.     If @Brand_Od Is Not Null
  26473.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg >=' + Cast(@Brand_Od As Varchar(6)) + ') '
  26474.     If @Brand_Do Is Not Null
  26475.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg <=' + Cast(@Brand_Do As Varchar(6)) + ') '
  26476.     If @Kto IS NOT NULL
  26477.         Set @SSQL=@SSQL+'AND (K.Kto='''+@Kto+''') '
  26478.     If @Sifra_Gr IS NOT NULL
  26479.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  26480.      If @Sifra_Podg Is Not Null
  26481.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  26482.     If @Lokacija IS NOT NULL
  26483.     Begin
  26484.         If @KF_Lokacija = 'D'
  26485.             Set @SSQL=@SSQL+'AND (K.Lokacija IS NULL OR K.Lokacija<>'''+lTrim(rTrim(@Lokacija))+''') '
  26486.         Else
  26487.             Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rTrim(@Lokacija))+''') '
  26488.     End
  26489.     If @Drugo1 Is Not NULL
  26490.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  26491.     If @Drugo2 Is Not NULL
  26492.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  26493.     If @Drugo3 Is Not NULL
  26494.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  26495.     If @Drugo4 Is Not NULL
  26496.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  26497.     If @Drugo5 Is Not NULL
  26498.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  26499.     Insert Into #Tabela Exec(@SSQL)
  26500. --select * from #tabela
  26501.    Set @SSQL='SELECT
  26502.         Sum(Ta.Vlez-Ta.Izlez)  As Kolicina,
  26503.         Sum((Ta.Vlez-Ta.Izlez) * dbo.fix_BrandKolic(K.KolkuDrg)) UL_Edinici,
  26504.         Sum(dbo.fn_vr_osnov  ((Ta.Vlez-Ta.Izlez), S.Cena, S.DanCena, S.POsn)) as Vr_Osnov, 
  26505.         Sum(dbo.fn_vr_sorabat((Ta.Vlez-Ta.Izlez), S.Cena, S.DanCena, S.POsn, 0.0, 0)) as Vr_SoRabat,
  26506.         Sum(dbo.fn_vr_krajna ((Ta.Vlez-Ta.Izlez), S.Cena, S.DanCena, S.POsn, 0.0, 0)) as Vr_Krajna,
  26507.         Sum((Ta.Vlez-Ta.Izlez)*K.GotCena) Vk_NPS, 
  26508.         K.Sifra_Drg, B.Ime '
  26509.     SET @SSQL=@SSQL + ' FROM #Tabela Ta
  26510.         Left Outer JOIN Soart S On S.Sifra_art = Ta.Sifra_art and S.Sifra_Oe = Ta.Sifra_Oe '
  26511.     Set @SSQL=@SSQL+'INNER JOIN Katart K ON Ta.Sifra_Art=K.Sifra_Art '
  26512.     Set @SSQL=@SSQL+'INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar 
  26513.                 Left Outer  JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  26514.     Set @SSQL=@SSQL+' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg 
  26515.                          INNER JOIN Grupi G ON P.Sifra_Gr=G.Sifra_Gr '
  26516.     If @Sifra_Oe Is Not Null
  26517.         Set @SSQL=@SSQL+' WHERE Ta.Sifra_OE = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  26518.     If @Koi_Oe Is Not Null
  26519.         Set @SSQL=@SSQL+'WHERE Ta.Sifra_OE In (' + @Koi_OE + ') '
  26520.     If @Iskluci = 'D'
  26521.         Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  26522.     Set @SSQL = @SSQL + 'Group By K.Sifra_Drg, B.Ime ' 
  26523.        If @Tip_Podr='S'
  26524.               Set @SSQL=@SSQL+'ORDER BY K.Sifra_Drg'
  26525.        Else If @Tip_Podr='A'
  26526.               Set @SSQL=@SSQL+'ORDER BY B.Ime'
  26527. print @SSQL
  26528.         Exec(@SSQL)
  26529.     Set Nocount Off
  26530.  
  26531.  
  26532.  
  26533.  
  26534. Go
  26535. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisi_constraints]'))
  26536. drop procedure [dbo].[sp_brisi_constraints]
  26537.  
  26538. Go
  26539.  
  26540. CREATE        PROCEDURE sp_Brisi_Constraints
  26541. AS
  26542.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_AnFinDok_DatNal1' AND type = 'C') 
  26543.         ALTER TABLE AnFinDok DROP CONSTRAINT CK_AnFinDok_DatNal1
  26544.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_AnFinDok_DatNal2' AND type = 'C') 
  26545.         ALTER TABLE AnFinDok DROP CONSTRAINT CK_AnFinDok_DatNal2
  26546.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Nalozi_DatNal1' AND type = 'C') 
  26547.         ALTER TABLE Nalozi DROP CONSTRAINT CK_Nalozi_DatNal1
  26548.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Nalozi_DatNal2' AND type = 'C') 
  26549.         ALTER TABLE Nalozi DROP CONSTRAINT CK_Nalozi_DatNal2
  26550.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_GStav_DatNal1' AND type = 'C') 
  26551.         ALTER TABLE GStav DROP CONSTRAINT CK_GStav_DatNal1
  26552.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_GStav_DatNal2' AND type = 'C') 
  26553.         ALTER TABLE GStav DROP CONSTRAINT CK_GStav_DatNal2
  26554.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Dokr_DatDok1' AND type = 'C')         ALTER TABLE Dokr DROP CONSTRAINT CK_Dokr_DatDok1
  26555.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Dokr_DatDok2' AND type = 'C') 
  26556.         ALTER TABLE Dokr DROP CONSTRAINT CK_Dokr_DatDok2
  26557.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Naracki_DatNar1' AND type = 'C') 
  26558.         ALTER TABLE Naracki DROP CONSTRAINT CK_Naracki_DatNar1
  26559.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Naracki_DatNar2' AND type = 'C') 
  26560.         ALTER TABLE Naracki DROP CONSTRAINT CK_Naracki_DatNar2
  26561.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Popis_Datum1' AND type = 'C') 
  26562.         ALTER TABLE Popis DROP CONSTRAINT CK_Popis_Datum1
  26563.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Popis_Datum2' AND type = 'C') 
  26564.         ALTER TABLE Popis DROP CONSTRAINT CK_Popis_Datum2
  26565.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_KasStav_Datum1' AND type = 'C')
  26566.         ALTER TABLE KasStav DROP CONSTRAINT CK_KasStav_Datum1
  26567.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_KasStav_Datum2' AND type = 'C') 
  26568.         ALTER TABLE KasStav DROP CONSTRAINT CK_KasStav_Datum2
  26569.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RabNal_Datum1' AND type = 'C') 
  26570.         ALTER TABLE RabNal DROP CONSTRAINT CK_RabNal_Datum1
  26571.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RabNal_Datum2' AND type = 'C') 
  26572.         ALTER TABLE RabNal DROP CONSTRAINT CK_RabNal_Datum2
  26573.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlCeni_DatDok1' AND type = 'C') 
  26574.         ALTER TABLE RazlCeni DROP CONSTRAINT CK_RazlCeni_DatDok1
  26575.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlCeni_DatDok2' AND type = 'C') 
  26576.         ALTER TABLE RazlCeni DROP CONSTRAINT CK_RazlCeni_DatDok2
  26577.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlFin_DatDok1' AND type = 'C') 
  26578.         ALTER TABLE RazlFin DROP CONSTRAINT CK_RazlFin_DatDok1
  26579.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlFin_DatDok2' AND type = 'C') 
  26580.         ALTER TABLE RazlFin DROP CONSTRAINT CK_RazlFin_DatDok2
  26581.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlProd_DatDok1' AND type = 'C') 
  26582.         ALTER TABLE RazlProd DROP CONSTRAINT CK_RazlProd_DatDok1
  26583.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlProd_DatDok2' AND type = 'C') 
  26584.         ALTER TABLE RazlProd DROP CONSTRAINT CK_RazlProd_DatDok2
  26585.  
  26586.  
  26587.  
  26588.  
  26589. Go
  26590. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisi_favtvrski_gstav]'))
  26591. drop procedure [dbo].[sp_brisi_favtvrski_gstav]
  26592.  
  26593. Go
  26594. CREATE PROCEDURE sp_Brisi_FAvtVrski_GStav
  26595.     @Sifra_Nal        smallint,
  26596.     @Kto_Anal        varchar(10),
  26597.     @Datum_Nal_Od    smalldatetime,
  26598.     @Datum_Nal_Do    smalldatetime
  26599. AS
  26600.     Delete From FavtVrski Where GstId In (Select GstId From GStav Where Sifra_Nal=@Sifra_Nal And Kto_Anal=@Kto_Anal 
  26601.                         And Datum_Nal >= @Datum_Nal_Od And Datum_Nal <= @Datum_Nal_Do)
  26602.     Delete From GStav Where Sifra_Nal=@Sifra_Nal And Kto_Anal=@Kto_Anal And Datum_Nal >= @Datum_Nal_Od And Datum_Nal <= @Datum_Nal_Do
  26603.  
  26604.  
  26605.  
  26606.  
  26607. Go
  26608. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisi_gst_akoe_0]'))
  26609. drop procedure [dbo].[sp_brisi_gst_akoe_0]
  26610.  
  26611. Go
  26612.  
  26613.  
  26614.  
  26615. create  PROCEDURE  sp_Brisi_Gst_AkoE_0
  26616.     @GstId  int
  26617.  AS
  26618.       DELETE FROM Gstav WHERE GstId = @GstId and
  26619.                               OdKade = 'V' and Dolzi = 0 and Pobaruva = 0 and
  26620.                               Dev_Dolzi = 0 and Dev_Pobaruva = 0 and KolkuVrski = 0
  26621.       RETURN @@ERROR
  26622.  
  26623.  
  26624.  
  26625.  
  26626. Go
  26627. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisi_vrzanigst_0]'))
  26628. drop procedure [dbo].[sp_brisi_vrzanigst_0]
  26629.  
  26630. Go
  26631.  
  26632.  
  26633. CREATE  PROCEDURE  sp_Brisi_VrzaniGst_0
  26634.     @Sifra_Nal smallint,
  26635.     @Broj_nal  int
  26636.  AS
  26637.       DELETE FROM Gstav WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_nal and
  26638.                               OdKade = 'V' and Dolzi = 0 and Pobaruva = 0 and
  26639.                               Dev_Dolzi = 0 and Dev_Pobaruva = 0 and KolkuVrski = 0
  26640.       RETURN @@ERROR
  26641.  
  26642.  
  26643.  
  26644.  
  26645. Go
  26646. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiabarkod]'))
  26647. drop procedure [dbo].[sp_brisiabarkod]
  26648.  
  26649. Go
  26650. CREATE PROCEDURE sp_BrisiABarKod
  26651.     @Sifra_Art    varchar(20)
  26652. AS
  26653.     DELETE FROM ABarKod WHERE Sifra_Art = @Sifra_Art
  26654. RETURN @@ERROR
  26655.  
  26656.  
  26657.  
  26658.  
  26659. Go
  26660. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiabarpak]'))
  26661. drop procedure [dbo].[sp_brisiabarpak]
  26662.  
  26663. Go
  26664. Create procedure sp_BrisiABarPak
  26665.     @Sifra_Art varchar(20)= null
  26666. As
  26667.     Delete from ABArPak    
  26668.     Where Sifra_Art= @Sifra_Art
  26669.     Return @@error
  26670.  
  26671.  
  26672. Go
  26673. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiadrtaggy]'))
  26674. drop procedure [dbo].[sp_brisiadrtaggy]
  26675.  
  26676. Go
  26677. CREATE PROCEDURE sp_BrisiAdrTaggy
  26678.     @Sifra_OE Smallint,
  26679.     @Sifra_Art VarChar(20)
  26680. AS
  26681. DELETE FROM AdrTaggy
  26682. WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art 
  26683. RETURN @@ERROR
  26684.  
  26685.  
  26686.  
  26687.  
  26688. Go
  26689. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiakciikolic]'))
  26690. drop procedure [dbo].[sp_brisiakciikolic]
  26691.  
  26692. Go
  26693. CREATE PROCEDURE sp_BrisiAkciiKolic
  26694.     @Ozn_Akcija    char(10)
  26695. AS
  26696. DELETE FROM AkciiKolic WHERE Ozn_Akcija=@Ozn_Akcija
  26697. RETURN @@ERROR
  26698.  
  26699. Go
  26700. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiakciiprod]'))
  26701. drop procedure [dbo].[sp_brisiakciiprod]
  26702.  
  26703. Go
  26704. CREATE PROCEDURE sp_BrisiAkciiProd
  26705.     @DokrID int
  26706. AS
  26707. Delete From AkciiProd Where DokrID =@DokrID
  26708. Return @@ERROR
  26709.  
  26710.  
  26711. Go
  26712. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiakcija]'))
  26713. drop procedure [dbo].[sp_brisiakcija]
  26714.  
  26715. Go
  26716.  
  26717. CREATE PROCEDURE sp_BrisiAkcija
  26718.     @Sifra_OE Smallint,
  26719.     @Sifra_Kup Char(6),
  26720.     @DatumVreme SmallDateTime
  26721. AS
  26722. DELETE FROM Akcija
  26723. WHERE Sifra_OE = @Sifra_OE AND Sifra_Kup = @Sifra_Kup AND DatumVreme = @DatumVreme
  26724. RETURN @@ERROR
  26725.  
  26726.  
  26727.  
  26728.  
  26729. Go
  26730. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisianfindok]'))
  26731. drop procedure [dbo].[sp_brisianfindok]
  26732.  
  26733. Go
  26734.  
  26735. CREATE PROCEDURE sp_BrisiANFINDOK
  26736.    @Sifra_OE Smallint,
  26737.    @Sifra_Dok Smallint,
  26738.    @Broj_Dok Int
  26739. AS
  26740.    DELETE FROM [AnFinDok]
  26741.    WHERE [Sifra_OE]=@Sifra_OE AND [Sifra_Dok]=@Sifra_Dok AND [Broj_Dok]=@Broj_Dok
  26742.       RETURN @@ERROR
  26743.  
  26744.  
  26745.  
  26746.  
  26747. Go
  26748. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisianfindok_sap]'))
  26749. drop procedure [dbo].[sp_brisianfindok_sap]
  26750.  
  26751. Go
  26752.  
  26753.  
  26754.  
  26755. CREATE       PROCEDURE sp_BrisiAnFindok_SAP
  26756. AS
  26757. DELETE FROM AnFindok
  26758. dbcc checkident (AnFinDok, reseed, 1)
  26759.  
  26760. RETURN @@ERROR
  26761.  
  26762.  
  26763.  
  26764.  
  26765.  
  26766.  
  26767. Go
  26768. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiapteka]'))
  26769. drop procedure [dbo].[sp_brisiapteka]
  26770.  
  26771. Go
  26772.  
  26773. CREATE PROCEDURE sp_BrisiApteka
  26774.  
  26775.     @Sifra_Apteka    char(2)
  26776. AS
  26777.     Delete From Apteka 
  26778.     Where Sifra_Apteka=@Sifra_Apteka
  26779.     Return @@ERROR
  26780.  
  26781.  
  26782. Go
  26783. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiarkakatlist]'))
  26784. drop procedure [dbo].[sp_brisiarkakatlist]
  26785.  
  26786. Go
  26787.  
  26788. create  PROCEDURE sp_BrisiArkaKatList
  26789.     @Kluc_sodrz varchar(20) 
  26790. AS
  26791.     Delete From ArkaKatList
  26792.     Where Kluc_Sodrz=@Kluc_Sodrz
  26793.     Return @@ERROR
  26794.  
  26795.  
  26796.  
  26797. Go
  26798. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiartikalodgrart]'))
  26799. drop procedure [dbo].[sp_brisiartikalodgrart]
  26800.  
  26801. Go
  26802. CREATE  procedure sp_BrisiArtikalOdGrArt
  26803.     @Sif_GrArt as varchar(20),
  26804.     @Sifra_Art as varchar(6)
  26805. As
  26806.     Delete From SGrArt
  26807.     Where Sif_GrArt=@Sif_GrArt and Sifra_Art=@Sifra_Art
  26808.  
  26809.  
  26810.  
  26811. Go
  26812. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiatckodovi]'))
  26813. drop procedure [dbo].[sp_brisiatckodovi]
  26814.  
  26815. Go
  26816.  
  26817. CREATE PROCEDURE sp_BrisiATCKodovi
  26818.  
  26819.     @Sifra_ATC    char(10)
  26820. AS
  26821.     Delete From ATCKodovi 
  26822.     Where Sifra_ATC=@Sifra_ATC
  26823.     Return @@ERROR
  26824.  
  26825.  
  26826. Go
  26827. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiavtkont]'))
  26828. drop procedure [dbo].[sp_brisiavtkont]
  26829.  
  26830. Go
  26831.  
  26832. CREATE PROCEDURE sp_BrisiAvtKont
  26833.     @Sif_GrOrg        char(6),
  26834.     @Sif_GrDok        char(3),
  26835.     @Sif_GrOrg_Prima    varchar(6)
  26836. AS
  26837. If @Sif_GrOrg_Prima IS NOT NULL
  26838.     DELETE FROM AvtKont
  26839.     WHERE Sif_GrOrg = @Sif_GrOrg AND Sif_GrDok = @Sif_GrDok AND Sif_GrOrg_Prima = @Sif_GrOrg_Prima
  26840. Else
  26841.     DELETE FROM AvtKont
  26842.     WHERE Sif_GrOrg = @Sif_GrOrg AND Sif_GrDok = @Sif_GrDok AND Sif_GrOrg_Prima IS NULL
  26843. RETURN @@ERROR
  26844.  
  26845.  
  26846.  
  26847.  
  26848. Go
  26849. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiavtkontartmap]'))
  26850. drop procedure [dbo].[sp_brisiavtkontartmap]
  26851.  
  26852. Go
  26853.  
  26854.  
  26855.  
  26856. CREATE  PROCEDURE sp_BrisiAvtKontArtMap
  26857. AS
  26858.     DELETE FROM AvtKontArtMap
  26859. RETURN @@ERROR
  26860.  
  26861.  
  26862.  
  26863. Go
  26864. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiavtkontos]'))
  26865. drop procedure [dbo].[sp_brisiavtkontos]
  26866.  
  26867. Go
  26868.  
  26869.  
  26870.  
  26871.  
  26872.  
  26873.  
  26874. CREATE     PROCEDURE sp_BrisiAvtKontOS
  26875.     @Kod_Kniz smallint
  26876.     
  26877. AS
  26878.     DELETE FROM avtkontosn
  26879.     Where Kod_Kniz=@Kod_Kniz
  26880. RETURN @@ERROR
  26881.  
  26882.  
  26883.  
  26884.  
  26885.  
  26886.  
  26887.  
  26888. Go
  26889. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiavtvrski]'))
  26890. drop procedure [dbo].[sp_brisiavtvrski]
  26891.  
  26892. Go
  26893.  
  26894. CREATE  PROCEDURE sp_BrisiAvtVrski
  26895.     @GStID    int,
  26896.     @AnID        int,
  26897.     @DokrID    int
  26898. AS
  26899.     Declare @SSQL Varchar(1000)
  26900.     Set @SSQL = 'DELETE FROM FAvtVrski    WHERE GStID = ' + cast(@GStID as varchar(11)) + ' AND AnID '
  26901. If @AnID IS NULL
  26902.     Set @SSQL = @SSQL + ' IS NULL'
  26903. Else
  26904.     Set @SSQL = @SSQL  + ' = ' + cast(@AnID as varchar(11)) 
  26905. Set @SSQL = @SSQL + ' AND DokrID '
  26906. If @DokrID IS NULL
  26907.     Set @SSQL = @SSQL + ' IS NULL'
  26908. Else
  26909.     Set @SSQL = @SSQL  + ' = ' + cast(@DokrID as varchar(11)) 
  26910. Exec (@SSQL)
  26911. RETURN @@ERROR
  26912.  
  26913.  
  26914.  
  26915. Go
  26916. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisibanki]'))
  26917. drop procedure [dbo].[sp_brisibanki]
  26918.  
  26919. Go
  26920. CREATE PROCEDURE sp_BrisiBanki
  26921.     @Sifra_Banka    smallint
  26922.  AS
  26923.     Delete Banki
  26924.     Where Sifra_Ban=@Sifra_Banka
  26925.     Return @@Error
  26926.  
  26927.  
  26928.  
  26929. Go
  26930. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisibanksmetki]'))
  26931. drop procedure [dbo].[sp_brisibanksmetki]
  26932.  
  26933. Go
  26934.  
  26935.  
  26936. CREATE  PROCEDURE sp_BrisiBankSmetki
  26937.     @KojaSmetka Char(1)
  26938. AS
  26939. DELETE FROM BankSmetki
  26940. WHERE KojaSmetka = @KojaSmetka
  26941. RETURN @@ERROR
  26942.  
  26943.  
  26944.  
  26945. Go
  26946. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisibrstanarac]'))
  26947. drop procedure [dbo].[sp_brisibrstanarac]
  26948.  
  26949. Go
  26950.  
  26951. CREATE  PROCEDURE sp_BrisiBrStaNarac
  26952.     @NarID    int
  26953. AS
  26954.     Delete From BrStaNarac
  26955.     Where StaNarID  in (SELECT StaNarID FROM StaNarac WHERE NarID = @NarID)
  26956.     Return @@ERROR
  26957.  
  26958.  
  26959.  
  26960. Go
  26961. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisibrstavr]'))
  26962. drop procedure [dbo].[sp_brisibrstavr]
  26963.  
  26964. Go
  26965. CREATE PROCEDURE sp_BrisiBrStavr
  26966.     @Sifra_OE smallint,
  26967.     @Sifra_Dok smallint,
  26968.     @Broj_Dok int,
  26969.     @Sifra_Prim smallint,
  26970.     @ImaDodatna char(1)
  26971.  AS
  26972.     Declare @SSQL as varchar(5000)
  26973.     SET @SSQL = 'Delete From BrStavr
  26974.     Where DokID in (SELECT DokID FROM Stavr WHERE Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + 
  26975.     '  AND Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + '  AND Broj_Dok=' + Cast(@Broj_Dok As Varchar(10)) + ' '
  26976.     If @Sifra_Prim Is Not Null
  26977.         Set @SSQL = @SSQL + 'AND Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + ' '
  26978.     If @ImaDodatna Is Not Null
  26979.         Set @SSQL = @SSQL + 'AND ImaDodatna=''' + @ImaDodatna + ''' '
  26980.     Set @SSQL = @SSQL + ' )'
  26981.     Exec(@SSQL)
  26982.     Return @@ERROR
  26983.  
  26984.  
  26985. Go
  26986. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicekovi]'))
  26987. drop procedure [dbo].[sp_brisicekovi]
  26988.  
  26989. Go
  26990. CREATE PROCEDURE sp_BrisiCekovi
  26991.     @Datum_Vnes    smalldatetime, 
  26992.     @KojaSmetka    char(1)
  26993. AS
  26994.     Delete From Cekovi
  26995.     Where Datum_Vnes=@Datum_Vnes and KojaSmetka=@KojaSmetka
  26996.     Return @@ERROR
  26997.  
  26998.  
  26999. Go
  27000. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicendog]'))
  27001. drop procedure [dbo].[sp_brisicendog]
  27002.  
  27003. Go
  27004.  
  27005.  
  27006. CREATE   PROCEDURE sp_BrisiCenDog
  27007.  
  27008.     @Sifra_Kup    char(6), 
  27009.     @TipKup    varchar(11),
  27010.     @DogBr    char(10)
  27011. AS
  27012.     Declare @SSQL as varchar(8000)
  27013.     
  27014.     Set @SSQL = ' Delete From CenDog
  27015.             Where DogBr = ''' + @DogBr + ''' '
  27016.     If @Sifra_Kup Is Not Null
  27017.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''' + @Sifra_Kup + ''' '
  27018.     Else 
  27019.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''999000'' '--Set @SSQL = @SSQL + ' And Sifra_Kup Is Null '
  27020.     If @TipKup Is Not Null
  27021.         Set @SSQL = @SSQL + ' And TipKup = ''' + @TipKup + ''' '
  27022.     Else
  27023.         Set @SSQL = @SSQL + ' And TipKup =''ALL '' '--Set @SSQL = @SSQL + ' And TipKup Is Null '
  27024.     Exec (@SSQL)
  27025.  
  27026.  
  27027.  
  27028.  
  27029. Go
  27030. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicendogsta]'))
  27031. drop procedure [dbo].[sp_brisicendogsta]
  27032.  
  27033. Go
  27034.  
  27035. CREATE  PROCEDURE sp_BrisiCenDogSta
  27036.  
  27037.     @Sifra_Kup    char(6), 
  27038.     @TipKup    varchar(11),
  27039.     @DogBr    char(10)
  27040. AS
  27041.     Declare @SSQL as varchar(8000)
  27042.     
  27043.     Set @SSQL = ' Delete From CenDogSta
  27044.             Where DogBr = ''' + @DogBr + ''' '
  27045.     If @Sifra_Kup Is Not Null
  27046.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''' + @Sifra_Kup + ''' '
  27047.     Else 
  27048.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''999000'' '--Set @SSQL = @SSQL + ' And Sifra_Kup Is Null '
  27049.     If @TipKup Is Not Null
  27050.         Set @SSQL = @SSQL + ' And TipKup = ''' + @TipKup + ''' '
  27051.     Else
  27052.         Set @SSQL = @SSQL + ' And TipKup =''ALL '' '--Set @SSQL = @SSQL + ' And TipKup Is Null '
  27053.     Exec (@SSQL)
  27054.  
  27055.  
  27056. Go
  27057. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicengrorg]'))
  27058. drop procedure [dbo].[sp_brisicengrorg]
  27059.  
  27060. Go
  27061.  
  27062. CREATE PROCEDURE  sp_BrisiCenGrOrg
  27063.     @Sifra_Art  Varchar(20)
  27064.  AS
  27065.     DECLARE @Greska Int
  27066.     DELETE FROM CenGrOrg WHERE Sifra_Art = @Sifra_Art
  27067. --   IF @@ERROR=0 AND @@ROWCOUNT=0
  27068. --      RETURN 77000
  27069. --   ELSE
  27070.       RETURN @@ERROR
  27071.  
  27072.  
  27073.  
  27074. Go
  27075. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicengrorg1grorg]'))
  27076. drop procedure [dbo].[sp_brisicengrorg1grorg]
  27077.  
  27078. Go
  27079. CREATE  PROCEDURE  sp_BrisiCenGrOrg1GrOrg
  27080.     @Sifra_Art  Varchar(20),
  27081.     @Sif_GrOrg    char(6)
  27082. AS
  27083.     DELETE FROM CenGrOrg WHERE Sifra_Art = @Sifra_Art AND Sif_GrOrg=@Sif_GrOrg
  27084. RETURN @@ERROR
  27085.  
  27086.  
  27087.  
  27088.  
  27089. Go
  27090. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicengrorgsogrorg]'))
  27091. drop procedure [dbo].[sp_brisicengrorgsogrorg]
  27092.  
  27093. Go
  27094. CREATE PROCEDURE  sp_BrisiCenGrOrgSoGrOrg
  27095.     @Sif_GrOrg  char(6)
  27096.  AS
  27097.     DELETE FROM CenGrOrg WHERE Sif_GrOrg = @Sif_GrOrg
  27098.     RETURN @@ERROR
  27099.  
  27100.  
  27101. Go
  27102. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenimp]'))
  27103. drop procedure [dbo].[sp_brisicenimp]
  27104.  
  27105. Go
  27106.  
  27107. CREATE  PROCEDURE sp_BrisiCenImp
  27108.     @Sifra_VidDog    VARCHAR(20),
  27109.     @Sifra_Vernost    SMALLINT,
  27110.     @Sif_GrOrg        CHAR(6)
  27111. AS
  27112. IF @Sif_GrOrg is not null
  27113. DELETE FROM CenImp WHERE Sifra_VidDog = @Sifra_VidDog AND 
  27114.                         Sifra_Vernost = @Sifra_Vernost AND
  27115.                         Sif_GrOrg = @Sif_GrOrg
  27116. ELSE
  27117. DELETE FROM CenImp WHERE Sifra_VidDog = @Sifra_VidDog AND 
  27118.                         Sifra_Vernost = @Sifra_Vernost AND
  27119.                         Sif_GrOrg IS Null
  27120. RETURN @@ERROR
  27121.  
  27122.  
  27123.  
  27124. Go
  27125. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiceniplanski]'))
  27126. drop procedure [dbo].[sp_brisiceniplanski]
  27127.  
  27128. Go
  27129. CREATE  PROCEDURE  sp_BrisiCeniPlanski
  27130.     @Sif_GrOrg char(6),
  27131.     @Vazi_Od    smalldatetime
  27132. AS
  27133. DELETE FROM CeniPlanski WHERE Sif_GrOrg = @Sif_GrOrg AND Vazi_Od=@Vazi_Od
  27134. RETURN @@ERROR
  27135.  
  27136.  
  27137.  
  27138. Go
  27139. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenkartkor]'))
  27140. drop procedure [dbo].[sp_brisicenkartkor]
  27141.  
  27142. Go
  27143. CREATE PROCEDURE sp_BrisiCenKartKor
  27144.     @Sifra_CeniKartKor    smallint
  27145.  AS
  27146.     Delete From CenKartKor 
  27147.     Where Sifra_CeniKartKor=@Sifra_CeniKartKor
  27148.     Return @@ERROR    
  27149.  
  27150.  
  27151. Go
  27152. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenovnik]'))
  27153. drop procedure [dbo].[sp_brisicenovnik]
  27154.  
  27155. Go
  27156. CREATE PROCEDURE sp_BrisiCenovnik
  27157.     @Sifra_art    varchar(20),
  27158.     @Sifra_Kup    char(6)
  27159.  AS
  27160.     Declare @SSQL as Varchar(2000)
  27161.     If @Sifra_art Is Not Null Or @Sifra_Kup Is Not Null
  27162.     Begin
  27163.         Set @SSQL= ' Delete from Cenovnik Where 1=1'
  27164.             If @Sifra_Kup Is Not Null
  27165.                 Set @SSQL = @SSQL + ' and Sifra_Kup =' + @Sifra_Kup + ' '
  27166.             If @Sifra_art Is Not Null
  27167.                 Set @SSQL = @SSQL + ' and Sifra_art =' + @Sifra_art + ' '
  27168.     End
  27169. -- AKO NEMA PUSTENO BAREM EDEN FILTER KE SE IZBRISE CELIOT CENOVNIK
  27170.     Exec (@SSQL)
  27171.  
  27172.  
  27173.  
  27174. Go
  27175. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenovnikotkup]'))
  27176. drop procedure [dbo].[sp_brisicenovnikotkup]
  27177.  
  27178. Go
  27179. Create procedure sp_BrisiCenovnikOtkup
  27180.     @Sifra_art varchar(20),
  27181.     @Vazi_Od smalldatetime
  27182. As
  27183.     Delete from CenovnikOtkup
  27184.     Where Sifra_art=@Sifra_Art and Vazi_od=@Vazi_Od
  27185.  
  27186.  
  27187.  
  27188. Go
  27189. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenpoart]'))
  27190. drop procedure [dbo].[sp_brisicenpoart]
  27191.  
  27192. Go
  27193. CREATE PROCEDURE sp_BrisiCenPoArt
  27194.     @Tip_Cena    smallint 
  27195. AS
  27196.     Delete From CenPoArt
  27197.     Where Tip_Cena=@Tip_Cena
  27198.     Return @@ERROR
  27199.  
  27200.  
  27201. Go
  27202. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenpopodgr]'))
  27203. drop procedure [dbo].[sp_brisicenpopodgr]
  27204.  
  27205. Go
  27206.  
  27207.  
  27208. CREATE   PROCEDURE sp_BrisiCenPoPodgr
  27209.     @Tip_Podelba    char(1),
  27210.     --@TipKup    varchar(11),
  27211.     @Sifra_Podelba    varchar(20)
  27212.  AS
  27213.     DELETE FROM CenPoPodgr 
  27214.     WHERE Tip_Podelba=@Tip_Podelba AND Sifra_Podelba=@Sifra_Podelba
  27215. RETURN @@ERROR
  27216.  
  27217.  
  27218.  
  27219. Go
  27220. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenpopodgr_inv]'))
  27221. drop procedure [dbo].[sp_brisicenpopodgr_inv]
  27222.  
  27223. Go
  27224.  
  27225.  
  27226.  
  27227. CREATE     PROCEDURE sp_BrisiCenPoPodgr_Inv
  27228.     @Tip_Podelba    char(1),
  27229.     @TipKup    varchar(11)
  27230. AS
  27231.     DELETE FROM CenPoPodgr 
  27232.     WHERE Tip_Podelba = @Tip_Podelba AND TipKup = @TipKup
  27233.     RETURN @@ERROR
  27234.  
  27235.  
  27236.  
  27237.  
  27238.  
  27239.  
  27240. Go
  27241. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenpopodgr_kup]'))
  27242. drop procedure [dbo].[sp_brisicenpopodgr_kup]
  27243.  
  27244. Go
  27245.  
  27246.  
  27247. create  PROCEDURE sp_BrisiCenPoPodgr_Kup
  27248.     @TipKup        varchar(11)
  27249. AS
  27250.     DELETE FROM CenPoPodgr 
  27251.     WHERE TipKup = @TipKup
  27252. RETURN @@ERROR
  27253.  
  27254.  
  27255.  
  27256. Go
  27257. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisicenvidvozila]'))
  27258. drop procedure [dbo].[sp_brisicenvidvozila]
  27259.  
  27260. Go
  27261. CREATE PROCEDURE sp_BrisiCenVidVozila
  27262.     @Sifra_Vid_Voz    varchar(20)
  27263.  AS
  27264.     Delete From CenVidVozila
  27265.     Where Sifra_Vid_Voz=@Sifra_Vid_Voz
  27266.     Return @@ERROR
  27267.  
  27268.  
  27269. Go
  27270. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisideklart]'))
  27271. drop procedure [dbo].[sp_brisideklart]
  27272.  
  27273. Go
  27274.  
  27275.  
  27276.  
  27277. CREATE      PROCEDURE sp_BrisiDeklArt
  27278.     @Sifra_Art    varchar(20),
  27279.     @Ozn        varchar(20)
  27280. As
  27281.     DELETE 
  27282.     FROM     DeklArt 
  27283.     WHERE     Sifra_Art = @Sifra_Art AND Ozn = @Ozn
  27284.     RETURN @@ERROR
  27285.  
  27286.  
  27287.  
  27288.  
  27289. Go
  27290. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevcar]'))
  27291. drop procedure [dbo].[sp_brisidevcar]
  27292.  
  27293. Go
  27294. CREATE      PROCEDURE sp_BrisiDevCar
  27295.    @AnID Integer
  27296. AS
  27297.     DELETE DevCar  WHERE AnID=@AnID
  27298.  
  27299.  
  27300. Go
  27301. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevfra]'))
  27302. drop procedure [dbo].[sp_brisidevfra]
  27303.  
  27304. Go
  27305.  
  27306. CREATE PROCEDURE sp_BrisiDevFra
  27307.     @DevFraID int
  27308. AS
  27309.     DELETE FROM DevFra
  27310.     WHERE DevFraID = @DevFraID
  27311.     RETURN @@ERROR
  27312.  
  27313.  
  27314.  
  27315. Go
  27316. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevfrastavk]'))
  27317. drop procedure [dbo].[sp_brisidevfrastavk]
  27318.  
  27319. Go
  27320.  
  27321. CREATE PROCEDURE sp_BrisiDevFraStavk
  27322.     @DevFraID    int
  27323. AS
  27324.     DELETE FROM DevFraStavk
  27325.     WHERE DevFraID = @DevFraID
  27326.     RETURN @@ERROR
  27327.  
  27328.  
  27329.  
  27330. Go
  27331. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevkalk]'))
  27332. drop procedure [dbo].[sp_brisidevkalk]
  27333.  
  27334. Go
  27335.  
  27336.  
  27337.  
  27338.  
  27339. CREATE       PROCEDURE sp_BrisiDevKalk
  27340.     @Sifra_OE smallint,
  27341.     @Sifra_Dok smallint=132,
  27342.     @Broj_Kalk int
  27343. AS
  27344.     DELETE [DevKalk]
  27345.     WHERE Sifra_OE=@Sifra_OE AND Broj_Kalk=@Broj_Kalk AND Sifra_Dok=@Sifra_Dok
  27346.  
  27347.  
  27348.  
  27349.  
  27350.  
  27351. Go
  27352. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevkons]'))
  27353. drop procedure [dbo].[sp_brisidevkons]
  27354.  
  27355. Go
  27356.  
  27357. CREATE PROCEDURE sp_BrisiDevKons 
  27358.     @DevKonsID int
  27359. AS
  27360.     DELETE FROM DevKons
  27361.     WHERE DevKonsID = @DevKonsID
  27362.     RETURN @@ERROR
  27363.  
  27364.  
  27365.  
  27366. Go
  27367. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevnaim]'))
  27368. drop procedure [dbo].[sp_brisidevnaim]
  27369.  
  27370. Go
  27371.  
  27372.  
  27373.  
  27374. CREATE    PROCEDURE sp_BrisiDevNaim
  27375.    @Sifra_OE smallint,
  27376.    @Broj_Kalk int,
  27377.     @Sifra_Dok smallint=132
  27378. AS
  27379.     DELETE [DevNaim]
  27380.     WHERE Sifra_OE=@Sifra_OE AND Broj_Kalk=@Broj_Kalk
  27381.  
  27382.  
  27383.  
  27384.  
  27385. Go
  27386. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevnaimst]'))
  27387. drop procedure [dbo].[sp_brisidevnaimst]
  27388.  
  27389. Go
  27390.  
  27391.  
  27392.  
  27393. CREATE    PROCEDURE sp_BrisiDevNaimSt
  27394.    @Sifra_OE smallint,
  27395.    @Broj_Kalk int,
  27396.     @Sifra_Dok smallint=132
  27397. AS
  27398.     DELETE [DevNaimSt]
  27399.     WHERE Sifra_OE=@Sifra_OE AND Broj_Kalk=@Broj_Kalk
  27400.  
  27401.  
  27402.  
  27403.  
  27404. Go
  27405. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevnar]'))
  27406. drop procedure [dbo].[sp_brisidevnar]
  27407.  
  27408. Go
  27409. Create  PROCEDURE sp_BrisiDevNar
  27410.     @DevNarID int
  27411. AS
  27412.     DELETE FROM DevNar
  27413.     WHERE DevNarID = @DevNarID
  27414.     RETURN @@ERROR
  27415.  
  27416.  
  27417.  
  27418. Go
  27419. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevnarstavk]'))
  27420. drop procedure [dbo].[sp_brisidevnarstavk]
  27421.  
  27422. Go
  27423.  
  27424. Create  PROCEDURE sp_BrisiDevNarStavk
  27425.     @DevNarID    int
  27426. AS
  27427.     DELETE FROM DevNarStavk
  27428.     WHERE DevNarID = @DevNarID
  27429.     RETURN @@ERROR
  27430.  
  27431.  
  27432.  
  27433. Go
  27434. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevstavk]'))
  27435. drop procedure [dbo].[sp_brisidevstavk]
  27436.  
  27437. Go
  27438.  
  27439.  
  27440.  
  27441.  
  27442.  
  27443. CREATE         PROCEDURE sp_BrisiDevStavk
  27444.     @Sifra_OE smallint,
  27445.     @Sifra_Dok smallint=132,
  27446.     @Broj_Kalk int
  27447. AS
  27448.     DELETE DevStavk
  27449.     WHERE Sifra_OE=@Sifra_OE AND Broj_Kalk=@Broj_Kalk AND Sifra_Dok=@Sifra_Dok
  27450.  
  27451.  
  27452.  
  27453.  
  27454.  
  27455.  
  27456. Go
  27457. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidevstavkons]'))
  27458. drop procedure [dbo].[sp_brisidevstavkons]
  27459.  
  27460. Go
  27461.  
  27462.  
  27463. CREATE  PROCEDURE sp_BrisiDevStavKons
  27464.     @DevKonsID int
  27465. AS
  27466.     DELETE FROM DevStavKons
  27467.     WHERE DevKonsID = @DevKonsID
  27468.     RETURN @@ERROR
  27469.  
  27470.  
  27471.  
  27472. Go
  27473. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidijagnozi]'))
  27474. drop procedure [dbo].[sp_brisidijagnozi]
  27475.  
  27476. Go
  27477.  
  27478. CREATE PROCEDURE sp_BrisiDijagnozi
  27479.  
  27480.     @Sifra_Dijagn    char(5)
  27481. AS
  27482.     Delete From Dijagnozi 
  27483.     Where Sifra_Dijagn=@Sifra_Dijagn
  27484.     Return @@ERROR
  27485.  
  27486.  
  27487. Go
  27488. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidnevnik]'))
  27489. drop procedure [dbo].[sp_brisidnevnik]
  27490.  
  27491. Go
  27492. CREATE PROCEDURE sp_BrisiDnevnik
  27493.     @IdDnevnik    int
  27494.  AS
  27495.     Delete From Dnevnik
  27496.     Where IdDnevnik=@IdDnevnik
  27497.     Return @@ERROR
  27498.  
  27499.  
  27500.  
  27501. Go
  27502. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidnizvskr]'))
  27503. drop procedure [dbo].[sp_brisidnizvskr]
  27504.  
  27505. Go
  27506. CREATE PROCEDURE sp_BrisiDnIzvSkr
  27507.     @Sema_DnIzvSkr    smallint
  27508.  AS
  27509.     Delete From DnIzvSkr
  27510.     Where Sema_DnIzvSkr=@Sema_DnIzvSkr
  27511.     Return @@ERROR
  27512.  
  27513.  
  27514.  
  27515. Go
  27516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidogtmobile]'))
  27517. drop procedure [dbo].[sp_brisidogtmobile]
  27518.  
  27519. Go
  27520. CREATE  PROCEDURE sp_BrisiDogTmobile
  27521.     @SifraKomint char(6)
  27522. AS
  27523.     DELETE FROM DogTmobile
  27524.     WHERE SifraKomint = @SifraKomint
  27525.     RETURN @@ERROR
  27526.  
  27527.  
  27528.  
  27529. Go
  27530. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokosnsred]'))
  27531. drop procedure [dbo].[sp_brisidokosnsred]
  27532.  
  27533. Go
  27534. CREATE PROCEDURE sp_BrisiDokOsnSred
  27535.     @Sifra_Oe    smallint, 
  27536.     @Sifra_Dok    smallint, 
  27537.     @Broj_Dok    int
  27538. AS
  27539.     Delete From DokOsnSred
  27540.     Where Sifra_Oe=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok
  27541.     Return @@ERROR
  27542.  
  27543.  
  27544. Go
  27545. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokr]'))
  27546. drop procedure [dbo].[sp_brisidokr]
  27547.  
  27548. Go
  27549.  
  27550.  
  27551. CREATE    PROCEDURE sp_BrisiDokr
  27552.    @Sifra_OE smallint,
  27553.    @Sifra_Dok smallint,
  27554.    @Broj_Dok int,
  27555.    @Sifra_Prim smallint,
  27556.    @ImaDodatna char(1)
  27557. -- Ednoznacen Kluc
  27558.  
  27559. AS
  27560.  
  27561. if dbo.fix_DokrBrsMoze(GetDate(), @Sifra_Oe, @Sifra_Dok, @Broj_Dok, @ImaDodatna, @Sifra_Prim) = 'N'
  27562.     Return 57903        -- Custom code za NEDOZVOLENO BRISENJE - DOKR
  27563.  
  27564. Declare @SSQL Varchar(1000)
  27565.     Set @SSQL = 'DELETE [Dokr]
  27566.         WHERE Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' AND 
  27567.           Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + ' AND 
  27568.           Broj_Dok=' + Cast(@Broj_Dok As Varchar(9)) + ' '
  27569.     If @Sifra_Prim Is Not Null
  27570.         Set @SSQL = @SSQL + ' AND Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  27571.     If @ImaDodatna Is Not Null
  27572.         Set @SSQL = @SSQL + 'AND ImaDodatna=''' + @ImaDodatna + ''' '
  27573.     /*  BESE BUG:   DK  MAR 22, 2003 If @Sifra_Prim Is Not Null
  27574.         Set @SSQL = @SSQL + ' AND Sifra_Prim=@Sifra_Prim '
  27575.             */
  27576.             /*
  27577.     If @ImaDodatna Is Not Null
  27578.         Set @SSQL = @SSQL + 'AND ImaDodatna=@ImaDodatna '
  27579.             */
  27580.     Exec(@SSQL)
  27581.  
  27582.  
  27583.  
  27584.  
  27585.  
  27586. Go
  27587. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokrabnal]'))
  27588. drop procedure [dbo].[sp_brisidokrabnal]
  27589.  
  27590. Go
  27591.  
  27592.  
  27593. CREATE  PROCEDURE sp_BrisiDokRabNal
  27594.     @DokrID        Int
  27595. AS
  27596.     DELETE FROM DokRabNal
  27597.     WHERE DokrID=@DokrID
  27598.     RETURN @@ERROR
  27599.  
  27600.  
  27601.  
  27602. Go
  27603. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokrabnalzarabnalid]'))
  27604. drop procedure [dbo].[sp_brisidokrabnalzarabnalid]
  27605.  
  27606. Go
  27607.  
  27608.  
  27609.  
  27610. CREATE   PROCEDURE sp_BrisiDokRabNalZaRabNalID
  27611.     @RabNalID        Int
  27612. AS
  27613.     DELETE FROM DokRabNal WHERE RabNalID=@RabNalID
  27614.     RETURN @@ERROR
  27615.  
  27616.  
  27617.  
  27618.  
  27619. Go
  27620. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokrotvkniz]'))
  27621. drop procedure [dbo].[sp_brisidokrotvkniz]
  27622.  
  27623. Go
  27624.  
  27625. CREATE       PROCEDURE sp_BrisiDokrOtvKniz
  27626.     @TekDaliZbiren    char(1),
  27627.     @DokrZbID        int,
  27628.     @Sifra_Oe         smallint,
  27629.     @Sifra_Dok        smallint,
  27630.     @Broj_Dok        int
  27631.     
  27632.     
  27633. AS
  27634.  
  27635. IF @TekDaliZbiren = 'D' 
  27636.  
  27637. SELECT DokrID FROM Dokr WHERE DokrID IN (SELECT DokrID FROM DokrZbSta WHERE DokrZbID=@DokrZbID)
  27638.  
  27639. ELSE
  27640.  
  27641. SELECT DokrID FROM Dokr WHERE Sifra_OE = @Sifra_OE  AND Sifra_Dok = @Sifra_Dok  AND Broj_Dok = @Broj_Dok
  27642.                                 
  27643. RETURN @@ERROR
  27644.  
  27645.  
  27646.  
  27647. Go
  27648. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokrvozbirni]'))
  27649. drop procedure [dbo].[sp_brisidokrvozbirni]
  27650.  
  27651. Go
  27652. CREATE PROCEDURE sp_BrisiDokrVoZbirni
  27653.     @DokrID_Zb    int
  27654. AS
  27655. DELETE FROM DokrVoZbirni WHERE DokrID_Zb=@DokrID_Zb
  27656.  
  27657.  
  27658. Go
  27659. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokrzb]'))
  27660. drop procedure [dbo].[sp_brisidokrzb]
  27661.  
  27662. Go
  27663.  
  27664.  
  27665.  
  27666.  
  27667. CREATE      PROCEDURE sp_BrisiDokrZb
  27668.    @Sifra_OE smallint,
  27669.    @Sifra_Dok smallint,
  27670.    @Broj_Dok int
  27671. AS
  27672. DELETE FROM DokrZb WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok 
  27673.  
  27674.  
  27675.  
  27676. Go
  27677. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidokrzbsta]'))
  27678. drop procedure [dbo].[sp_brisidokrzbsta]
  27679.  
  27680. Go
  27681.  
  27682. CREATE  PROCEDURE sp_BrisiDokrZbSta
  27683.     @DokrZbId    int
  27684. AS
  27685.     DELETE FROM DokrZbSta WHERE DokrZbId=@DokrZbId
  27686.  
  27687.  
  27688.  
  27689. Go
  27690. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisidozvorgart]'))
  27691. drop procedure [dbo].[sp_brisidozvorgart]
  27692.  
  27693. Go
  27694. CREATE PROCEDURE sp_BrisiDozvOrgArt
  27695.     @Sif_GrOrg        char(6)
  27696. AS
  27697.     DELETE FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg
  27698. RETURN @@ERROR
  27699.  
  27700.  
  27701. Go
  27702. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiedenprivorgtip]'))
  27703. drop procedure [dbo].[sp_brisiedenprivorgtip]
  27704.  
  27705. Go
  27706.  
  27707. CREATE PROCEDURE sp_BrisiEdenPrivOrgTip
  27708.     @Sifra_GrKor    varchar(20),
  27709.     @Sifra_OE    smallint,
  27710.     @Sifra_Dok    smallint,
  27711.     @Sifra_Prim    smallint
  27712.  AS
  27713.     DELETE FROM PrivilOrgTip WHERE Sifra_GrKor=@Sifra_GrKor AND Sifra_OE=@Sifra_OE
  27714.     AND Sifra_Dok=@Sifra_Dok AND Sifra_Prim=@Sifra_Prim
  27715. RETURN @@ERROR
  27716.  
  27717.  
  27718.  
  27719. Go
  27720. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiekvivart]'))
  27721. drop procedure [dbo].[sp_brisiekvivart]
  27722.  
  27723. Go
  27724. CREATE PROCEDURE sp_BrisiEkvivArt
  27725.      @IdEkviv varchar(50)
  27726. AS
  27727.     DELETE EkvivArt
  27728.     WHERE IdEkviv=@IdEkviv
  27729.  
  27730.  
  27731. Go
  27732. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiekvivdezen]'))
  27733. drop procedure [dbo].[sp_brisiekvivdezen]
  27734.  
  27735. Go
  27736. CREATE procedure sp_BrisiEkvivDezen
  27737.     @GrupaEkviv varchar(50)
  27738. As 
  27739.     Delete EkvivDezen
  27740.     Where GrupaEkviv=@GrupaEkviv
  27741.  
  27742.  
  27743.  
  27744. Go
  27745. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisievdekl]'))
  27746. drop procedure [dbo].[sp_brisievdekl]
  27747.  
  27748. Go
  27749. CREATE procedure SP_BrisiEvDekl
  27750.     @Godina smallint,
  27751.     @Rbr int
  27752. As 
  27753.     Delete from EvDekl
  27754.     Where Godina=@Godina  and Rbr=@Rbr
  27755.  
  27756.  
  27757. Go
  27758. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisievdeklsta]'))
  27759. drop procedure [dbo].[sp_brisievdeklsta]
  27760.  
  27761. Go
  27762. CREATE procedure sp_BrisiEvDeklSta
  27763.     @Godina smallint,
  27764.     @Rbr int
  27765. AS     
  27766.     Delete from EvDeklStav
  27767.     Where Godina=@Godina and Rbr=@Rbr
  27768.  
  27769.  
  27770. Go
  27771. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisievdeklstav]'))
  27772. drop procedure [dbo].[sp_brisievdeklstav]
  27773.  
  27774. Go
  27775. Create  procedure SP_BrisiEvDeklStav
  27776.     @Godina smallint,
  27777.     @Rbr int
  27778. As 
  27779.     Delete from EvDeklStav
  27780.     Where Godina=@Godina  and Rbr=@Rbr
  27781.  
  27782.  
  27783.  
  27784. Go
  27785. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisievproizvod]'))
  27786. drop procedure [dbo].[sp_brisievproizvod]
  27787.  
  27788. Go
  27789.  
  27790. CREATE  PROCEDURE sp_BrisiEvProizvod
  27791.     @DokrID    int
  27792. AS
  27793.     Delete From EvProizvod 
  27794.     Where DokrID=@DokrID
  27795.  
  27796.  
  27797.  
  27798. Go
  27799. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifaktura]'))
  27800. drop procedure [dbo].[sp_brisifaktura]
  27801.  
  27802. Go
  27803.  
  27804.  
  27805.  
  27806. CREATE    PROCEDURE sp_BrisiFaktura
  27807.     @Godina    smallint,
  27808.     @Faktura_Br char(6)
  27809. AS
  27810. DELETE FROM Specifikacii WHERE Godina_Fra=@Godina AND Faktura_Br IN 
  27811. (SELECT Faktura_Br FROM Faktura WHERE Godina_Fra=@Godina AND Faktura_Br=@Faktura_Br)
  27812. DELETE FROM Faktura WHERE Godina_Fra=@Godina AND Faktura_Br=@Faktura_Br
  27813. Declare @Sifra_Apt as char(2)
  27814. Declare @Broj_Recept as int
  27815. Declare @Sifra_Art as varchar(6)
  27816. Declare @GodPriem as smallint
  27817. Declare @Broj_Priem as int
  27818. Declare @Kolku_Pakuv decimal(9,3)
  27819. Declare @Kolku_Kolic decimal(9,3)
  27820. Declare TabRcpP Cursor Fast_Forward For
  27821.     Select Sifra_Apteka, Broj_Recept, Sifra_Art, Kolku_Pakuv, Kolku_Kolic, Broj_Priem, Godina_Priem
  27822.     From Recepti WHERE RTrim(Broj_Priem)<>'' AND Godina_Fra=@Godina AND Faktura_Br=@Faktura_Br
  27823. Open TabRcpP
  27824. Fetch Next From TabRcpP Into @Sifra_Apt, @Broj_Recept, @Sifra_Art, @Kolku_Pakuv, @Kolku_Kolic, @Broj_Priem, @GodPriem
  27825. While @@Fetch_Status = 0
  27826. Begin
  27827.     IF @Kolku_Pakuv=0 SELECT @Kolku_Pakuv=@Kolku_Kolic/Br_Vo_Pakuv FROM Lekovi WHERE Sifra_Art=@Sifra_Art
  27828.     UPDATE SostPriem SET Izlez_Pakuv = Izlez_Pakuv - @Kolku_Pakuv WHERE Godina=@GodPriem AND Broj_Priem=@Broj_Priem AND Sifra_Art=@Sifra_Art
  27829.     UPDATE Recepti SET Broj_Priem='', Godina_Priem=NULL WHERE Sifra_Apteka=@Sifra_Apt AND Broj_Recept=@Broj_Recept
  27830.     Fetch Next From TabRcpP Into @Sifra_Apt, @Broj_Recept, @Sifra_Art, @Kolku_Pakuv, @Kolku_Kolic, @Broj_Priem, @GodPriem
  27831. End
  27832. Close TabRcpP
  27833. Deallocate TabRcpP
  27834. UPDATE Recepti SET Specif_Br=null, Rbr_Vo_Specif=0, Faktura_Br=NULL
  27835. WHERE Godina_Fra=@Godina AND Faktura_Br=@Faktura_Br
  27836.  
  27837.  
  27838.  
  27839.  
  27840.  
  27841. Go
  27842. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifarmacevt]'))
  27843. drop procedure [dbo].[sp_brisifarmacevt]
  27844.  
  27845. Go
  27846.  
  27847. CREATE PROCEDURE sp_BrisiFarmacevt
  27848.  
  27849.     @Sifra_Farmacevt    char(6)
  27850. AS
  27851.     Delete From Farmacevt 
  27852.     Where Sifra_Farmacevt=@Sifra_Farmacevt 
  27853.     Return @@ERROR
  27854.  
  27855.  
  27856. Go
  27857. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifavtvrskiotvkniz]'))
  27858. drop procedure [dbo].[sp_brisifavtvrskiotvkniz]
  27859.  
  27860. Go
  27861.  
  27862. CREATE       PROCEDURE sp_BrisiFAvtVrskiOtvKniz
  27863.     @GStID             int,
  27864.     @AnID             int
  27865.     
  27866. AS
  27867.     DELETE FROM FAvtVrski WHERE GStID = @GStId  AND AnID = @AnID
  27868.  
  27869. RETURN @@ERROR
  27870.  
  27871.  
  27872.  
  27873. Go
  27874. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifazi]'))
  27875. drop procedure [dbo].[sp_brisifazi]
  27876.  
  27877. Go
  27878.  
  27879. CREATE PROCEDURE sp_BrisiFazi
  27880.     @Sifra_Faza    smallint
  27881. AS
  27882.     Delete from Fazi    
  27883.     Where Sifra_Faza=@Sifra_Faza
  27884.     Return @@Error
  27885.  
  27886.  
  27887.  
  27888. Go
  27889. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifikonta]'))
  27890. drop procedure [dbo].[sp_brisifikonta]
  27891.  
  27892. Go
  27893. CREATE PROCEDURE sp_BrisiFiKonta
  27894.     @FiID    smallint
  27895. AS
  27896.     Delete FiKonta    
  27897.     Where FiID=@FiID 
  27898.     Return @@Error
  27899.  
  27900.  
  27901.  
  27902. Go
  27903. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifiraspredelba]'))
  27904. drop procedure [dbo].[sp_brisifiraspredelba]
  27905.  
  27906. Go
  27907.  
  27908.  
  27909. create  PROCEDURE  sp_BrisiFiRaspredelba
  27910.     @Sifra_FiRsp  smallint
  27911. AS
  27912.     DECLARE @Greska Int
  27913.     DELETE FROM FiRaspredelba  WHERE Sifra_FiRsp = @Sifra_FiRsp
  27914. --   IF @@ERROR=0 AND @@ROWCOUNT=0
  27915. --      RETURN 77000
  27916. --   ELSE
  27917.       RETURN @@ERROR
  27918.  
  27919.  
  27920.  
  27921.  
  27922. Go
  27923. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifiskprom]'))
  27924. drop procedure [dbo].[sp_brisifiskprom]
  27925.  
  27926. Go
  27927.  
  27928. CREATE  PROCEDURE sp_BrisiFiskProm
  27929.     @Sifra_Oe    smallint,
  27930.     @Datum_dok    smalldatetime,
  27931.         @BrKasa         smallint
  27932.  AS
  27933.     Delete FiskProm
  27934.     Where Sifra_Oe=@Sifra_Oe and Datum_dok=@Datum_Dok and Brkasa=@BrKasa
  27935.     Return @@Error
  27936.  
  27937.  
  27938.  
  27939. Go
  27940. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifistavki]'))
  27941. drop procedure [dbo].[sp_brisifistavki]
  27942.  
  27943. Go
  27944. CREATE PROCEDURE sp_BrisiFiStavki
  27945.     @FiID    smallint
  27946. AS
  27947.     Delete FiStavki    
  27948.     Where FiID=@FiID 
  27949.     Return @@Error
  27950.  
  27951.  
  27952.  
  27953. Go
  27954. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifitabela]'))
  27955. drop procedure [dbo].[sp_brisifitabela]
  27956.  
  27957. Go
  27958. CREATE PROCEDURE sp_BrisiFiTabela
  27959.     @FiID    smallint
  27960. AS
  27961.     Delete FiTabela    
  27962.     Where FiID=@FiID 
  27963.     Return @@Error
  27964.  
  27965.  
  27966.  
  27967. Go
  27968. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisifizbir]'))
  27969. drop procedure [dbo].[sp_brisifizbir]
  27970.  
  27971. Go
  27972. CREATE PROCEDURE sp_BrisiFiZbir
  27973.     @FiID    smallint
  27974. AS
  27975.     Delete FiZbir    
  27976.     Where FiID=@FiID 
  27977.     Return @@Error
  27978.  
  27979.  
  27980.  
  27981. Go
  27982. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigotsurorg]'))
  27983. drop procedure [dbo].[sp_brisigotsurorg]
  27984.  
  27985. Go
  27986.  
  27987.  
  27988.  
  27989. CREATE  PROCEDURE  sp_BrisiGotSurOrg
  27990.     @Sifra_OE_Got smallint
  27991. AS
  27992.     DELETE FROM GotovSurovOrg WHERE Sifra_OE_Got = @Sifra_OE_Got
  27993.     RETURN @@ERROR
  27994.  
  27995.  
  27996.  
  27997. Go
  27998. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigrartdiv]'))
  27999. drop procedure [dbo].[sp_brisigrartdiv]
  28000.  
  28001. Go
  28002.  
  28003. create  procedure sp_BrisiGrArtDiv
  28004. @Sif_GrArt varchar(20) 
  28005. as
  28006. Delete from GrArtDiv
  28007. where Sif_GrArt=@Sif_GrArt
  28008.  
  28009.  
  28010.  
  28011. Go
  28012. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigrkupdiv]'))
  28013. drop procedure [dbo].[sp_brisigrkupdiv]
  28014.  
  28015. Go
  28016. CREATE procedure sp_BrisiGrKupDiv
  28017. @Sif_GrKup varchar(20) 
  28018. as
  28019. Delete from GrKupDiv
  28020. where sif_grkup=@Sif_GrKup
  28021.  
  28022.  
  28023. Go
  28024. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigrnar]'))
  28025. drop procedure [dbo].[sp_brisigrnar]
  28026.  
  28027. Go
  28028. CREATE PROCEDURE sp_BrisiGrNar
  28029.     @Sifra_GrNar    int
  28030. AS
  28031.     Delete From GrNar
  28032.     Where Sifra_GrNar=@Sifra_GrNar
  28033.     Return @@Error
  28034.  
  28035.  
  28036.  
  28037. Go
  28038. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigrpat]'))
  28039. drop procedure [dbo].[sp_brisigrpat]
  28040.  
  28041. Go
  28042. CREATE PROCEDURE sp_BrisiGrPat
  28043.     @Sif_GrPat Char (6)
  28044. AS
  28045.     DELETE FROM GrPat  
  28046.     WHERE Sif_GrPat=@Sif_GrPat
  28047.     RETURN @@ERROR
  28048.  
  28049.  
  28050. Go
  28051. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigrpmarza]'))
  28052. drop procedure [dbo].[sp_brisigrpmarza]
  28053.  
  28054. Go
  28055. CREATE PROCEDURE sp_BrisiGrpMarza
  28056.     @Grupa_Marza    smallint
  28057. AS
  28058.     Delete From GrpMarza 
  28059.     Where Grupa_Marza=@Grupa_Marza
  28060.     Return @@ERROR
  28061.  
  28062.  
  28063.  
  28064. Go
  28065. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigsostav]'))
  28066. drop procedure [dbo].[sp_brisigsostav]
  28067.  
  28068. Go
  28069.  
  28070.  
  28071. CREATE  PROCEDURE  sp_BrisiGSostav
  28072.     @Sif_GrOrg    char(6),
  28073.     @Sifra_Art  varchar(20)
  28074. AS
  28075.     DELETE FROM GSostav WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_Art = @Sifra_Art
  28076.     RETURN @@ERROR
  28077.  
  28078.  
  28079.  
  28080. Go
  28081. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigstandiv]'))
  28082. drop procedure [dbo].[sp_brisigstandiv]
  28083.  
  28084. Go
  28085.  
  28086.  
  28087.  
  28088. CREATE   PROCEDURE sp_BrisiGstAnDiv
  28089.     @GstID        int,
  28090.     @AnID        int
  28091. AS
  28092.     if @GstID is not null and @AnId is not null
  28093.         delete from GstAnDiv
  28094.         where GStId = @GstID and AnId = @AnID
  28095.     else if @GstID is not null
  28096.         delete from GstAnDiv
  28097.         where GstId = @GstID
  28098. RETURN @@ERROR
  28099.  
  28100.  
  28101.  
  28102. Go
  28103. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigstandivotvkniz]'))
  28104. drop procedure [dbo].[sp_brisigstandivotvkniz]
  28105.  
  28106. Go
  28107.  
  28108. CREATE       PROCEDURE sp_BrisiGstAnDivOtvKniz
  28109.     @GStID             int,
  28110.     @AnID             int
  28111.     
  28112. AS
  28113.     DELETE FROM GstAnDiv WHERE GStID = @GStId  AND AnID = @AnID
  28114.  
  28115. RETURN @@ERROR
  28116.  
  28117.  
  28118.  
  28119. Go
  28120. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigstav]'))
  28121. drop procedure [dbo].[sp_brisigstav]
  28122.  
  28123. Go
  28124.  
  28125. CREATE        PROCEDURE sp_BrisiGStav
  28126.     @GStID int
  28127. AS
  28128.     DELETE FROM GStav
  28129.     WHERE GStID = @GStID
  28130.     RETURN @@ERROR
  28131.  
  28132.  
  28133.  
  28134. Go
  28135. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisigstavso0iznos]'))
  28136. drop procedure [dbo].[sp_brisigstavso0iznos]
  28137.  
  28138. Go
  28139. CREATE PROCEDURE sp_BrisiGstavSo0Iznos
  28140.     @Sifra_Nal    smallint,
  28141.     @Broj_Nal    int
  28142. AS
  28143. DELETE FROM GStav WHERE Sifra_nal=@Sifra_Nal AND Broj_Nal=@Broj_Nal 
  28144. AND OdKade='S' AND Dolzi=0 AND Pobaruva=0 AND Dev_Dolzi=0 AND Dev_Pobaruva=0
  28145.  
  28146.  
  28147.  
  28148. Go
  28149. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisihilzni]'))
  28150. drop procedure [dbo].[sp_brisihilzni]
  28151.  
  28152. Go
  28153.  
  28154. CREATE PROCEDURE sp_BrisiHilzni
  28155.     @Sifra_Hilzna    smallint
  28156. AS
  28157.     Delete from Hilzni    
  28158.     Where Sifra_Hilzna=@Sifra_Hilzna
  28159.     Return @@Error
  28160.  
  28161.  
  28162.  
  28163. Go
  28164. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiinvpopis]'))
  28165. drop procedure [dbo].[sp_brisiinvpopis]
  28166.  
  28167. Go
  28168. CREATE PROCEDURE sp_BrisiInvPopis
  28169.     @Sifra_Oe    smallint,
  28170.     @BrojInvP    int
  28171.  AS
  28172.     Delete From InvPopis
  28173.     Where Sifra_Oe=@Sifra_Oe and BrojInvP=@BrojInvP
  28174.     Return @@ERROR
  28175.  
  28176.  
  28177. Go
  28178. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikarakterist]'))
  28179. drop procedure [dbo].[sp_brisikarakterist]
  28180.  
  28181. Go
  28182. CREATE PROCEDURE sp_BrisiKarakterist
  28183.     @Sifra_Karakt    SMALLINT
  28184. AS
  28185.     DELETE FROM Karakterist WHERE Sifra_Karakt=@Sifra_Karakt
  28186.  
  28187.  
  28188.  
  28189. Go
  28190. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikartdepoz]'))
  28191. drop procedure [dbo].[sp_brisikartdepoz]
  28192.  
  28193. Go
  28194. -- WTRG --
  28195. CREATE       PROCEDURE sp_BrisiKartDepoz
  28196.    @Broj_Depoz Int
  28197. AS
  28198.     DELETE FROM KartDepoz WHERE Broj_Depoz = @Broj_Depoz
  28199.  
  28200.  
  28201.  
  28202. Go
  28203. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikartkor]'))
  28204. drop procedure [dbo].[sp_brisikartkor]
  28205.  
  28206. Go
  28207. CREATE PROCEDURE sp_BrisiKartKor
  28208.     @Sifra_Oe    smallint,
  28209.     @Sifra_Kor    varchar(20)
  28210. AS
  28211.     Delete KartKor
  28212.     Where Sifra_Oe = @Sifra_Oe and Sifra_Kor = @Sifra_Kor
  28213.     Return @@ERROR    
  28214.  
  28215.  
  28216.  
  28217. Go
  28218. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikartkordetali]'))
  28219. drop procedure [dbo].[sp_brisikartkordetali]
  28220.  
  28221. Go
  28222.  
  28223.  
  28224.  
  28225.  
  28226. create        PROCEDURE sp_BrisiKartKorDetali
  28227.     @Sifra_Kor    varchar(20)
  28228. AS
  28229.     delete from KartKorDetali where Sifra_Kor = @Sifra_Kor
  28230.     Return @@ERROR
  28231.  
  28232.  
  28233.  
  28234.  
  28235.  
  28236.  
  28237. Go
  28238. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikartprom]'))
  28239. drop procedure [dbo].[sp_brisikartprom]
  28240.  
  28241. Go
  28242. CREATE PROCEDURE sp_BrisiKartProm
  28243.     @Sifra_Mark    smallint,
  28244.     @Sifra_Oe    smallint,
  28245.     @Broj_ska    int,
  28246.     @Sifra_Kor    varchar(20),
  28247.     @Sifra_Nac    smallint,
  28248.     @Datum_Ska    smalldatetime
  28249. AS
  28250.     Delete KartProm
  28251.     Where Sifra_Mark=@Sifra_Mark and Sifra_Oe=@Sifra_Oe and Broj_ska=@Broj_Ska and Sifra_Kor=@Sifra_Kor and Sifra_Nac=@Sifra_Nac and Datum_Ska=@Datum_Ska
  28252.     Return @@ERROR
  28253.  
  28254.  
  28255.  
  28256. Go
  28257. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikasdnevn]'))
  28258. drop procedure [dbo].[sp_brisikasdnevn]
  28259.  
  28260. Go
  28261. CREATE PROCEDURE sp_BrisiKasDnevn
  28262.     @Sifra_Nal    smallint,
  28263.     @Broj_nal    int
  28264.  AS
  28265.     DELETE KasDnevn
  28266.     WHERE Sifra_Nal=@Sifra_Nal and Broj_Nal=@Broj_Nal
  28267.     RETURN @@ERROR
  28268.  
  28269.  
  28270.  
  28271. Go
  28272. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikasstav]'))
  28273. drop procedure [dbo].[sp_brisikasstav]
  28274.  
  28275. Go
  28276. CREATE PROCEDURE sp_BrisiKasStav
  28277.     @KStaID    int
  28278.  AS
  28279.     DELETE KasStav
  28280.     WHERE KStaID = @KStaID
  28281.     RETURN @@ERROR
  28282.  
  28283.  
  28284.  
  28285. Go
  28286. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikasstav_dokrid]'))
  28287. drop procedure [dbo].[sp_brisikasstav_dokrid]
  28288.  
  28289. Go
  28290.  
  28291.  
  28292.  
  28293.  
  28294. CREATE    PROCEDURE sp_BrisiKasStav_DokrID 
  28295.     @DokrID        int
  28296. AS
  28297.     Create Table #AnFinZaBris
  28298.         (    [AnId] [Integer]
  28299.         )
  28300.     Insert Into #AnFinZaBris
  28301.         select AnId from KasStav
  28302.         where DokrId=@DokrId and AnId is not Null and AnId <> 0
  28303.     Delete From AnZatv
  28304.     where ANID1 in (select AnId from #AnFinZaBris)
  28305.     Delete From AnZatv
  28306.     where ANID2 in (select AnId from #AnFinZaBris)
  28307.     -- Pazi redosledeot e vazen!
  28308.     Delete From KasStav Where DokrID=@DokrID
  28309.     Delete From AnFinDok
  28310.     where AnId in (select AnId from #AnFinZaBris)
  28311.      Return @@Error
  28312.  
  28313.  
  28314.  
  28315. Go
  28316. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikasstav1]'))
  28317. drop procedure [dbo].[sp_brisikasstav1]
  28318.  
  28319. Go
  28320.  
  28321. Create  PROCEDURE sp_BrisiKasStav1
  28322.     @Sifra_Nal    smallint,
  28323.     @Broj_Nal    int
  28324.  AS
  28325.     DELETE KasStav
  28326.     WHERE Sifra_Nal=@Sifra_Nal and Broj_Nal=@Broj_Nal 
  28327.     RETURN @@ERROR
  28328.  
  28329.  
  28330.  
  28331. Go
  28332. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikasstavdetal]'))
  28333. drop procedure [dbo].[sp_brisikasstavdetal]
  28334.  
  28335. Go
  28336.  
  28337.  
  28338. create   PROCEDURE sp_BrisiKasStavDetal
  28339.     @KStaID    int 
  28340. AS
  28341.     Delete From KasStavDetal Where KStaId = @KStaID 
  28342.  
  28343.  
  28344. Go
  28345. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatart]'))
  28346. drop procedure [dbo].[sp_brisikatart]
  28347.  
  28348. Go
  28349. CREATE PROCEDURE sp_BrisiKatArt
  28350.     @Sifra_Art    varchar(20)
  28351. AS
  28352. DELETE FROM KatArt WHERE Sifra_Art=@Sifra_art
  28353.  
  28354.  
  28355. Go
  28356. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatartoem]'))
  28357. drop procedure [dbo].[sp_brisikatartoem]
  28358.  
  28359. Go
  28360.  
  28361. create   PROCEDURE sp_BrisiKatartOEM
  28362.     @Sifra_Art    varchar(20)
  28363.  
  28364. AS
  28365.  
  28366.     Delete From KatartOEM
  28367.     Where Sifra_Art = @Sifra_Art 
  28368.  
  28369.  
  28370.  
  28371. Go
  28372. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatasortlisti]'))
  28373. drop procedure [dbo].[sp_brisikatasortlisti]
  28374.  
  28375. Go
  28376.  
  28377. CREATE   PROCEDURE sp_BrisiKatAsortListi
  28378.     @Broj_ALista    smallint
  28379. As
  28380.     DELETE FROM KatAsortLista WHERE Broj_ALista=@Broj_ALista
  28381.  
  28382.  
  28383.  
  28384. Go
  28385. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatkarakt]'))
  28386. drop procedure [dbo].[sp_brisikatkarakt]
  28387.  
  28388. Go
  28389. CREATE PROCEDURE sp_BrisiKatKarakt
  28390.     @Sifra_Art    VARCHAR(20)
  28391. AS
  28392.     DELETE FROM KatKarakt WHERE Sifra_Art = @Sifra_Art
  28393.  
  28394.  
  28395.  
  28396. Go
  28397. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatlisti]'))
  28398. drop procedure [dbo].[sp_brisikatlisti]
  28399.  
  28400. Go
  28401.  
  28402. CREATE  PROCEDURE sp_BrisiKatListi
  28403.     @Broj_Lista    smallint
  28404. As
  28405.     DELETE FROM KatListi WHERE Broj_Lista=@Broj_Lista 
  28406.  
  28407.  
  28408.  
  28409. Go
  28410. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatpakuv]'))
  28411. drop procedure [dbo].[sp_brisikatpakuv]
  28412.  
  28413. Go
  28414. CREATE PROCEDURE sp_BrisiKatPakuv
  28415.     @Sifra_Art        varchar(    20),
  28416.     @Sifra_KatPak        smallint
  28417.  AS
  28418.     Delete From KatPakuv 
  28419.     Where Sifra_Art=@Sifra_Art And Sifra_KatPak=@Sifra_KatPak
  28420.     Return @@ERROR
  28421.  
  28422.  
  28423. Go
  28424. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatprior_vidobj]'))
  28425. drop procedure [dbo].[sp_brisikatprior_vidobj]
  28426.  
  28427. Go
  28428. CREATE PROCEDURE sp_BrisiKatPrior_VidObj
  28429.     @Sifra_Art    varchar(20)
  28430. AS
  28431.     Delete
  28432.     From KatPrior_VidObj
  28433.     Where Sifra_Art=@Sifra_Art
  28434.     Return @@ERROR
  28435.  
  28436.  
  28437. Go
  28438. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatserbr]'))
  28439. drop procedure [dbo].[sp_brisikatserbr]
  28440.  
  28441. Go
  28442. CREATE   PROCEDURE sp_BrisiKatSerBr
  28443.     @KontrSer    varchar(25)
  28444. AS
  28445.     Delete From KatSerBr
  28446.     Where KontrSer=@KontrSer 
  28447.     Return @@ERROR
  28448.  
  28449.  
  28450. Go
  28451. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatserbranaliza]'))
  28452. drop procedure [dbo].[sp_brisikatserbranaliza]
  28453.  
  28454. Go
  28455. CREATE PROCEDURE sp_BrisiKatSerBrAnaliza
  28456.     @KontrSer    varchar(25)
  28457. AS
  28458.     Delete From KatSerBrAnaliza 
  28459.     Where KontrSer=@KontrSer
  28460.     Return @@ERROR
  28461.  
  28462.  
  28463. Go
  28464. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatserbrsta]'))
  28465. drop procedure [dbo].[sp_brisikatserbrsta]
  28466.  
  28467. Go
  28468. CREATE PROCEDURE sp_BrisiKatSerBrSta
  28469.     @KontrSer    varchar(25)
  28470. AS
  28471.     Delete From KatSerBrSta Where KontrSer=@KontrSer
  28472.     Return @@ERROR
  28473.  
  28474.  
  28475.  
  28476. Go
  28477. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatserklas]'))
  28478. drop procedure [dbo].[sp_brisikatserklas]
  28479.  
  28480. Go
  28481.  
  28482.  
  28483. CREATE   PROCEDURE sp_BrisiKatSerKlas
  28484.     @Sifra_Art    varchar(20),
  28485.     @KontrSer    varchar(30)
  28486.  
  28487. AS
  28488.  
  28489.     Delete from KatSerKlas
  28490.     Where Sifra_Art = @Sifra_Art and KontrSer = @KontrSer 
  28491.  
  28492.     Return @@ERROR
  28493.  
  28494.  
  28495.  
  28496.  
  28497.  
  28498. Go
  28499. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatsliki]'))
  28500. drop procedure [dbo].[sp_brisikatsliki]
  28501.  
  28502. Go
  28503. CREATE PROCEDURE sp_BrisiKatSliki
  28504.     @Sifra_Art    varchar(    20)
  28505. AS
  28506.     Delete From KatSliki 
  28507.     Where Sifra_Art=@Sifra_Art 
  28508.     Return @@ERROR
  28509.  
  28510.  
  28511. Go
  28512. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatspecpakuv]'))
  28513. drop procedure [dbo].[sp_brisikatspecpakuv]
  28514.  
  28515. Go
  28516.  
  28517.  
  28518.  
  28519. CREATE    PROCEDURE sp_BrisiKatSpecPakuv
  28520.         @Sifra_Art    varchar(20)
  28521.     
  28522. AS
  28523.  
  28524.     Delete From KatSpecPakuv
  28525.     Where Sifra_Art=@Sifra_Art 
  28526.     Return @@ERROR
  28527.  
  28528.  
  28529.  
  28530.  
  28531. Go
  28532. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatspectipmat]'))
  28533. drop procedure [dbo].[sp_brisikatspectipmat]
  28534.  
  28535. Go
  28536.  
  28537.  
  28538.  
  28539. create    PROCEDURE sp_BrisiKatSpecTipMat
  28540.           @Sifra_TipMat        smallint
  28541. AS
  28542.  
  28543.     Delete From KatSpecTipMat
  28544.     Where Sifra_TipMat=@Sifra_TipMat
  28545.     Return @@ERROR
  28546.  
  28547.  
  28548.  
  28549.  
  28550. Go
  28551. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikatvelicboja]'))
  28552. drop procedure [dbo].[sp_brisikatvelicboja]
  28553.  
  28554. Go
  28555. CREATE PROCEDURE sp_BrisiKatVelicBoja
  28556.     @Sifra_Art        varchar(20)
  28557. AS
  28558. DELETE FROM KatVelicBoja WHERE Sifra_Art=@Sifra_Art 
  28559.  
  28560.  
  28561.  
  28562. Go
  28563. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikbanki]'))
  28564. drop procedure [dbo].[sp_brisikbanki]
  28565.  
  28566. Go
  28567.  
  28568. CREATE  PROCEDURE sp_BrisiKBanki
  28569.     @Sifra_Kup    char(6)
  28570. AS
  28571.     Delete From KBanki
  28572.     Where Sifra_Kup=@Sifra_Kup
  28573.     Return @@Error
  28574.  
  28575.  
  28576.  
  28577. Go
  28578. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiklista]'))
  28579. drop procedure [dbo].[sp_brisiklista]
  28580.  
  28581. Go
  28582. CREATE PROCEDURE sp_BrisiKlista
  28583.     @Broj        int
  28584. AS
  28585.     Delete Klista
  28586.     Where Broj = @Broj
  28587.     Return @@ERROR
  28588.  
  28589.  
  28590.  
  28591. Go
  28592. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiklistad]'))
  28593. drop procedure [dbo].[sp_brisiklistad]
  28594.  
  28595. Go
  28596. CREATE PROCEDURE sp_BrisiKlistaD
  28597.     @Broj        int
  28598. AS
  28599.     Delete KlistaD
  28600.     Where Broj=@Broj 
  28601.     RETURN @@ERROR
  28602.  
  28603.  
  28604.  
  28605. Go
  28606. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiknigatrg]'))
  28607. drop procedure [dbo].[sp_brisiknigatrg]
  28608.  
  28609. Go
  28610.  
  28611. CREATE PROCEDURE  sp_BrisiKnigaTrg
  28612.     @InterenBr   int
  28613.  AS
  28614.     DECLARE @Greska Int
  28615.     DELETE FROM KnigaTrg  WHERE InterenBr = @InterenBr
  28616.    IF @@ERROR=0 AND @@ROWCOUNT=0
  28617.       RETURN 77000
  28618.    ELSE
  28619.       RETURN @@ERROR
  28620.  
  28621.  
  28622.  
  28623. Go
  28624. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikobjekti]'))
  28625. drop procedure [dbo].[sp_brisikobjekti]
  28626.  
  28627. Go
  28628. CREATE PROCEDURE sp_BrisiKObjekti
  28629.     @Sifra_Kup Char(6),
  28630.     @Sifra_Obj smallint
  28631. AS
  28632. DELETE FROM KObjekti
  28633. WHERE Sifra_Kup = @Sifra_Kup AND Sifra_Obj = @Sifra_Obj
  28634. RETURN @@ERROR
  28635.  
  28636.  
  28637.  
  28638. Go
  28639. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikobjsliki]'))
  28640. drop procedure [dbo].[sp_brisikobjsliki]
  28641.  
  28642. Go
  28643.  
  28644.  
  28645. CREATE    PROCEDURE sp_BrisiKObjSliki
  28646.     @Sifra_Obj    smallint,
  28647.     @Sifra_Kup varchar(20)
  28648. AS
  28649.     Delete From KObjSliki 
  28650.     Where Sifra_Obj=@Sifra_Obj  and Sifra_Kup=@Sifra_Kup
  28651.     Return @@ERROR
  28652.  
  28653.  
  28654.  
  28655.  
  28656.  
  28657.  
  28658. Go
  28659. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikomintodgrkup]'))
  28660. drop procedure [dbo].[sp_brisikomintodgrkup]
  28661.  
  28662. Go
  28663.  
  28664. CREATE  procedure sp_BrisiKomintOdGrKup
  28665.     @Sif_GrKup as varchar(20),
  28666.     @Sifra_Kup as varchar(6)
  28667. As
  28668.     Delete From SGrKupObj
  28669.     Where Sif_Grkup=@Sif_Grkup and Sifra_Kup=@Sifra_Kup And Sifra_Obj Is Null
  28670.  
  28671.  
  28672.  
  28673. Go
  28674. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikomintpat]'))
  28675. drop procedure [dbo].[sp_brisikomintpat]
  28676.  
  28677. Go
  28678. CREATE  PROCEDURE sp_BrisiKomintPat
  28679.     @Sifra_Kup    char(6),
  28680.     @Sifra_Obj    smallint
  28681. AS
  28682.     If @Sifra_Obj Is Not Null
  28683.         Delete From KomintPat
  28684.         Where Sifra_Kup=@Sifra_Kup And Sifra_Obj=@Sifra_Obj
  28685.     Else
  28686.         Delete From KomintPat
  28687.         Where Sifra_Kup=@Sifra_Kup And Sifra_Obj is null
  28688.     Return @@ERROR
  28689.  
  28690.  
  28691. Go
  28692. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikomintpatpat]'))
  28693. drop procedure [dbo].[sp_brisikomintpatpat]
  28694.  
  28695. Go
  28696. CREATE   PROCEDURE sp_BrisiKomintPatPat
  28697.     @Sifra_Pat    smallint
  28698. AS
  28699.         Delete From KomintPat
  28700.         Where Sifra_Pat=@Sifra_Pat 
  28701.     Return @@ERROR
  28702.  
  28703.  
  28704.  
  28705. Go
  28706. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikomlimitdiv]'))
  28707. drop procedure [dbo].[sp_brisikomlimitdiv]
  28708.  
  28709. Go
  28710. create procedure sp_BrisiKomLimitDiv
  28711.     @Sifra_Kup char(6)
  28712. AS
  28713.     Delete from komLimitDiv
  28714.     Where Sifra_Kup=@Sifra_Kup
  28715.  
  28716.  
  28717. Go
  28718. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikompenz]'))
  28719. drop procedure [dbo].[sp_brisikompenz]
  28720.  
  28721. Go
  28722.  
  28723. CREATE PROCEDURE sp_BrisiKompenz
  28724.     @Broj_Komp Int
  28725. AS
  28726.     DELETE [Kompenz]
  28727.     WHERE [Broj_Komp]=@Broj_Komp
  28728.  
  28729.  
  28730.  
  28731. Go
  28732. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikompstav]'))
  28733. drop procedure [dbo].[sp_brisikompstav]
  28734.  
  28735. Go
  28736.  
  28737. CREATE PROCEDURE sp_BrisiKompStav
  28738.     @Broj_Komp Int
  28739. AS
  28740.     DELETE [KompStav]
  28741.     WHERE Broj_Komp=@Broj_Komp
  28742.  
  28743.  
  28744.  
  28745. Go
  28746. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikomsliki]'))
  28747. drop procedure [dbo].[sp_brisikomsliki]
  28748.  
  28749. Go
  28750. CREATE  PROCEDURE sp_BrisiKomSliki
  28751.     @Sifra_Kup    varchar(    20)
  28752. AS
  28753.     Delete From KomSliki 
  28754.     Where Sifra_Kup=@Sifra_kup 
  28755.     Return @@ERROR
  28756.  
  28757.  
  28758.  
  28759. Go
  28760. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikonfazurtros]'))
  28761. drop procedure [dbo].[sp_brisikonfazurtros]
  28762.  
  28763. Go
  28764.  
  28765.  
  28766.  
  28767.  
  28768. create   PROCEDURE sp_BrisiKonfAzurTros
  28769.     
  28770. AS
  28771.     delete from KonfAzurTros
  28772. RETURN @@ERROR
  28773.  
  28774.  
  28775.  
  28776.  
  28777.  
  28778. Go
  28779. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikonfceni]'))
  28780. drop procedure [dbo].[sp_brisikonfceni]
  28781.  
  28782. Go
  28783.  
  28784. CREATE PROCEDURE sp_BrisiKonfCeni
  28785.     @Sifra_Dok    Smallint,
  28786.     @Sifra_OE    Smallint,
  28787.     @Sifra_Prim    Smallint
  28788. AS
  28789. DELETE FROM KonfCeni
  28790. WHERE Sifra_Dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Prim = @Sifra_Prim
  28791. RETURN @@ERROR
  28792.  
  28793.  
  28794.  
  28795. Go
  28796. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikonta]'))
  28797. drop procedure [dbo].[sp_brisikonta]
  28798.  
  28799. Go
  28800. CREATE PROCEDURE sp_BrisiKonta
  28801.     @FiID    smallint,
  28802.     @RbrFi    smallint
  28803. AS
  28804.     Delete FiKonta    
  28805.     Where FiID=@FiID and RbrFi=@RbrFi
  28806.     Return @@Error
  28807.  
  28808.  
  28809.  
  28810. Go
  28811. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikredit]'))
  28812. drop procedure [dbo].[sp_brisikredit]
  28813.  
  28814. Go
  28815. CREATE procedure sp_BrisiKredit
  28816.     @Sifra_oe as smallint, 
  28817.     @Broj_kredit as int
  28818. As
  28819.     Delete from Kredit
  28820.     Where  Sifra_oe=@Sifra_oe and Broj_kredit=@Broj_kredit
  28821.  
  28822.  
  28823. Go
  28824. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikreditopomena]'))
  28825. drop procedure [dbo].[sp_brisikreditopomena]
  28826.  
  28827. Go
  28828.  
  28829. CREATE  procedure sp_BrisiKreditOpomena
  28830.     @Sifra_Oe smallint,
  28831.     @Broj_kredit int ,
  28832.     @Broj_Opomena int
  28833. As
  28834.     Delete from KreditOpomena
  28835.     Where Sifra_oe=@Sifra_oe and Broj_kredit=@Broj_kredit and Broj_Opomena=@Broj_Opomena
  28836.  
  28837.  
  28838.  
  28839. Go
  28840. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikreditstavki]'))
  28841. drop procedure [dbo].[sp_brisikreditstavki]
  28842.  
  28843. Go
  28844.  
  28845. CREATE  procedure sp_BrisiKreditStavki
  28846.     @Sifra_Oe smallint ,
  28847.     @Broj_kredit int 
  28848. As
  28849.     delete from KreditStavki
  28850.     Where Sifra_oe=@Sifra_oe and broj_kredit=@broj_kredit --and rbr_kredart=@rbr_kredart
  28851.  
  28852.  
  28853.  
  28854. Go
  28855. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikredittransakc]'))
  28856. drop procedure [dbo].[sp_brisikredittransakc]
  28857.  
  28858. Go
  28859.  
  28860. CREATE  procedure sp_BrisiKreditTransakc
  28861.     @Sifra_Oe smallint,
  28862.     @Broj_kredit int
  28863.  
  28864. As 
  28865.  
  28866.     Delete from KreditTransakc
  28867.     Where sifra_oe=@sifra_oe and broj_kredit=@broj_kredit
  28868.  
  28869.  
  28870.  
  28871.  
  28872. Go
  28873. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikredittransakc_rbr]'))
  28874. drop procedure [dbo].[sp_brisikredittransakc_rbr]
  28875.  
  28876. Go
  28877.  
  28878.  
  28879. create procedure sp_BrisiKreditTransakc_Rbr
  28880.     @Sifra_Oe smallint,
  28881.     @Broj_kredit int,
  28882.     @Rbr_KreditTrans int
  28883.  
  28884. As 
  28885.  
  28886.     Delete from KreditTransakc
  28887.     Where sifra_oe=@sifra_oe and broj_kredit=@broj_kredit and Rbr_KreditTrans = @Rbr_KreditTrans
  28888.  
  28889.  
  28890.  
  28891.  
  28892.  
  28893.  
  28894. Go
  28895. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikreditvrskazatv]'))
  28896. drop procedure [dbo].[sp_brisikreditvrskazatv]
  28897.  
  28898. Go
  28899.  
  28900.  
  28901.  
  28902. create  procedure sp_BrisiKreditVrskaZatv
  28903.     @Sifra_Oe_1 smallint,
  28904.     @Broj_kredit_1 int,
  28905.     @Rbr_KreditTrans_1 int
  28906.  
  28907. As
  28908.  
  28909.     delete from KreditVrskaZatv
  28910.     where Sifra_Oe_1 = @Sifra_oe_1 and Broj_kredit_1 = @Broj_kredit_1
  28911.     and rbr_kredittrans_1 = @rbr_kredittrans_1 
  28912.  
  28913.     return @@error
  28914.  
  28915.  
  28916.  
  28917.  
  28918.  
  28919.  
  28920.  
  28921. Go
  28922. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikredtransakc]'))
  28923. drop procedure [dbo].[sp_brisikredtransakc]
  28924.  
  28925. Go
  28926.  
  28927.  
  28928.  
  28929. create   PROCEDURE  sp_BrisiKredTransakc
  28930.     @Sifra_Oe smallint,
  28931.     @Broj_kredit int,
  28932.         @Rbr_KreditTrans int
  28933. AS
  28934.     DELETE FROM KreditTransakc WHERE Sifra_oe=@Sifra_Oe AND Broj_Kredit = @Broj_Kredit  and Rbr_KreditTrans=@Rbr_KreditTrans 
  28935.     RETURN @@ERROR
  28936.  
  28937.  
  28938.  
  28939.  
  28940. Go
  28941. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikrsvaznost]'))
  28942. drop procedure [dbo].[sp_brisikrsvaznost]
  28943.  
  28944. Go
  28945. CREATE PROCEDURE sp_BrisiKrsVaznost
  28946.     @Datum    smalldatetime
  28947. AS
  28948.     DELETE [KrsVaznost]
  28949.     WHERE [Datum]=@Datum 
  28950. Return @@ERROR
  28951.  
  28952.  
  28953.  
  28954. Go
  28955. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisikstapki]'))
  28956. drop procedure [dbo].[sp_brisikstapki]
  28957.  
  28958. Go
  28959. CREATE PROCEDURE sp_BrisiKStapki
  28960.     @Datum_Od        smalldatetime
  28961.  AS
  28962.     Delete KStapki
  28963.     Where Datum_Od=@Datum_Od
  28964.     Return @@ERROR
  28965.  
  28966.  
  28967.  
  28968. Go
  28969. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilekari]'))
  28970. drop procedure [dbo].[sp_brisilekari]
  28971.  
  28972. Go
  28973.  
  28974. Create  PROCEDURE sp_BrisiLekari
  28975.  
  28976.     @Sifra_Lekar    char(6)
  28977. AS
  28978.     Delete From Lekari
  28979.     Where Sifra_Lekar=@Sifra_Lekar
  28980.     Return @@ERROR
  28981.  
  28982.  
  28983. Go
  28984. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilogo]'))
  28985. drop procedure [dbo].[sp_brisilogo]
  28986.  
  28987. Go
  28988.  
  28989.  
  28990. CREATE  PROCEDURE sp_BrisiLogo
  28991.     @TipObr         varchar(2),    
  28992.     @Sifra_OE    Smallint,
  28993.     @Sifra_Dok    Smallint
  28994. AS
  28995. DELETE FROM Logo
  28996. WHERE TipObr = @TipObr AND Sifra_OE = @Sifra_OE AND Sifra_Dok = @Sifra_Dok
  28997. RETURN @@ERROR
  28998.  
  28999.  
  29000.  
  29001. Go
  29002. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilotser]'))
  29003. drop procedure [dbo].[sp_brisilotser]
  29004.  
  29005. Go
  29006. CREATE PROCEDURE sp_BrisiLotSer
  29007.     @SpecOzn    varchar(30)
  29008. AS
  29009.     Delete From LotSer
  29010.     Where SpecOzn=@SpecOzn
  29011.     Return @@ERROR
  29012.  
  29013.  
  29014.  
  29015. Go
  29016. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilotser_podokrid]'))
  29017. drop procedure [dbo].[sp_brisilotser_podokrid]
  29018.  
  29019. Go
  29020.  
  29021.  
  29022. create PROCEDURE sp_BrisiLotSer_PoDokrId
  29023.     @DokrId    int
  29024. AS
  29025.     Delete From LotSer
  29026.     where SpecOzn in 
  29027.     (select SpecOzn from MagStavr Where DokrId = @DokrId)
  29028.     RETURN @@ERROR
  29029.  
  29030.  
  29031.  
  29032. Go
  29033. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilotser_podokrid_art]'))
  29034. drop procedure [dbo].[sp_brisilotser_podokrid_art]
  29035.  
  29036. Go
  29037.  
  29038.  
  29039. create PROCEDURE sp_BrisiLotSer_PoDokrId_Art
  29040.     @DokrId    int,
  29041.     @Sifra_Art varchar (20)
  29042. AS
  29043.     Delete From LotSer
  29044.     where Sifra_Art = @Sifra_Art 
  29045.         and SpecOzn in 
  29046.     (select SpecOzn from MagStavr Where DokrId = @DokrId)
  29047.     RETURN @@ERROR
  29048.  
  29049.  
  29050.  
  29051. Go
  29052. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilpopis]'))
  29053. drop procedure [dbo].[sp_brisilpopis]
  29054.  
  29055. Go
  29056.  
  29057. CREATE PROCEDURE  sp_BrisiLPopis
  29058.     @IDPopis int,
  29059.     @Broj smallint
  29060.  AS
  29061.     DECLARE @Greska Int
  29062.     DELETE FROM LPopis WHERE IDPopis = @IDPopis  and Broj = @Broj
  29063. --   IF @@ERROR=0 AND @@ROWCOUNT=0
  29064. --      RETURN 77000
  29065. --   ELSE
  29066.       RETURN @@ERROR
  29067.  
  29068.  
  29069.  
  29070. Go
  29071. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilpopisos]'))
  29072. drop procedure [dbo].[sp_brisilpopisos]
  29073.  
  29074. Go
  29075.  
  29076.  
  29077. CREATE  PROCEDURE  sp_BrisiLPopisOS
  29078.     @IDPopisOS int,
  29079.     @Broj_Lista smallint
  29080.  AS
  29081.     DELETE FROM LPopisOS WHERE IDPopisOS = @IDPopisOS  and Broj_Lista = @Broj_Lista
  29082.     RETURN @@ERROR
  29083.  
  29084.  
  29085.  
  29086. Go
  29087. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilpopisos_br]'))
  29088. drop procedure [dbo].[sp_brisilpopisos_br]
  29089.  
  29090. Go
  29091.  
  29092.  
  29093.  
  29094. CREATE   PROCEDURE  sp_BrisiLPopisOS_Br
  29095.     @Broj_Lista smallint
  29096.  AS
  29097.     DELETE FROM LPopisOS WHERE Broj_Lista = @Broj_Lista
  29098.     RETURN @@ERROR
  29099.  
  29100.  
  29101.  
  29102. Go
  29103. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilstpartic]'))
  29104. drop procedure [dbo].[sp_brisilstpartic]
  29105.  
  29106. Go
  29107.  
  29108. Create  PROCEDURE sp_BrisiLstPartic
  29109.  
  29110. AS
  29111.  
  29112.     Delete From LstPartic
  29113.     Return @@ERROR
  29114.  
  29115.  
  29116. Go
  29117. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilstparticmarza]'))
  29118. drop procedure [dbo].[sp_brisilstparticmarza]
  29119.  
  29120. Go
  29121.  
  29122.  
  29123.  
  29124. CREATE   PROCEDURE sp_BrisiLstParticMarza
  29125.  
  29126. AS
  29127.  
  29128.     Delete From LstPartic
  29129.     Return @@ERROR
  29130.  
  29131.  
  29132.  
  29133.  
  29134. Go
  29135. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilstparticskala]'))
  29136. drop procedure [dbo].[sp_brisilstparticskala]
  29137.  
  29138. Go
  29139.  
  29140. create  PROCEDURE sp_BrisiLstParticSkala
  29141.  
  29142. AS
  29143.  
  29144.     Delete From LstParticSkala
  29145.  
  29146.     Return @@ERROR
  29147.  
  29148.  
  29149.  
  29150. Go
  29151. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisilstpoeniiznos]'))
  29152. drop procedure [dbo].[sp_brisilstpoeniiznos]
  29153.  
  29154. Go
  29155. Create  PROCEDURE sp_BrisiLstPoeniIznos
  29156.  
  29157. AS
  29158.  
  29159.     Delete From LstPoeniIznos
  29160.  
  29161.     Return @@ERROR
  29162.  
  29163.  
  29164.  
  29165.  
  29166. Go
  29167. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimagstavr]'))
  29168. drop procedure [dbo].[sp_brisimagstavr]
  29169.  
  29170. Go
  29171. CREATE PROCEDURE sp_BrisiMagStavr
  29172.     @DokrID    int
  29173. AS
  29174.     Delete From MagStavr
  29175.     Where DokrID=@DokrID
  29176.     Return @@ERROR
  29177.  
  29178.  
  29179. Go
  29180. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimagstavr_art]'))
  29181. drop procedure [dbo].[sp_brisimagstavr_art]
  29182.  
  29183. Go
  29184.  
  29185. CREATE  PROCEDURE sp_BrisiMagStavr_Art
  29186.     @DokrID    int,
  29187.     @Sifra_Art varchar (20)
  29188. AS
  29189.     Delete From MagStavr
  29190.     Where DokrID = @DokrID and Sifra_Art = @Sifra_Art
  29191.     Return @@ERROR
  29192.  
  29193.  
  29194.  
  29195. Go
  29196. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimapartimport]'))
  29197. drop procedure [dbo].[sp_brisimapartimport]
  29198.  
  29199. Go
  29200. Create  procedure sp_BrisiMapArtImport
  29201. As
  29202.     Delete from MapArtImport
  29203.     return @@error
  29204.  
  29205.  
  29206. Go
  29207. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimasini]'))
  29208. drop procedure [dbo].[sp_brisimasini]
  29209.  
  29210. Go
  29211. CREATE PROCEDURE sp_BrisiMasini
  29212.     @Sifra_Mas    varchar(15)
  29213. AS
  29214.     Delete From Masini 
  29215.     Where Sifra_Mas=@Sifra_Mas
  29216.  
  29217.  
  29218. Go
  29219. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimatic]'))
  29220. drop procedure [dbo].[sp_brisimatic]
  29221.  
  29222. Go
  29223.  
  29224.  
  29225.  
  29226.  
  29227.  
  29228.  
  29229.  
  29230.  
  29231.  
  29232.  
  29233.  
  29234. CREATE           PROCEDURE sp_BrisiMatic
  29235.    @Sifra Varchar(20),    --Zaradi GTipKup, Inaku 6 e dovolno
  29236.    @Tabela Varchar(20)
  29237. AS
  29238.    DECLARE @Greska Int
  29239.    SET @Tabela = Upper(@Tabela)
  29240.     IF @Tabela=''
  29241.         Print ''
  29242. --    ELSE IF @Tabela='KATART'
  29243. --        DELETE FROM [KatArt]      WHERE Sifra_Art=@Sifra  trgnato vo nova procedura
  29244.     ELSE IF @Tabela='PODGRUPI'
  29245.         DELETE FROM [Podgrupi]  WHERE Sifra_Podg=@Sifra
  29246.     ELSE IF @Tabela='GRUPI'
  29247.         DELETE FROM [Grupi]      WHERE Sifra_Gr=@Sifra
  29248.     ELSE IF @Tabela='TARIFI'
  29249.         DELETE FROM [Tarifi]    WHERE Sifra_Tar=@Sifra
  29250.     ELSE IF @Tabela='KOMINT'
  29251.         DELETE FROM [Komint]     WHERE Sifra_Kup=@Sifra
  29252.     ELSE IF @Tabela='ANAL'
  29253.         DELETE FROM [ANAL]   WHERE Kto_Anal=@Sifra
  29254.     ELSE IF @Tabela='GTIPKUP'
  29255.         DELETE FROM [GTIPKUP]   WHERE TipKup=@Sifra
  29256.     ELSE IF @Tabela='MARKETI'
  29257.         DELETE FROM [Marketi]    WHERE Sifra_Mark=Cast(@Sifra As Smallint)
  29258.     ELSE IF @Tabela='ORGED'
  29259.         DELETE FROM [Orged]  WHERE Sifra_OE=Cast(@Sifra As Smallint)
  29260.     ELSE IF @Tabela='TARIFI'
  29261.         DELETE FROM [Tarifi] WHERE Sifra_Tar=@Sifra
  29262.     ELSE IF @Tabela='GREGION'
  29263.         DELETE FROM [GRegion]  WHERE Sifra_Reg=Cast(@Sifra As Smallint)
  29264.     ELSE IF @Tabela='PATNICI'
  29265.         DELETE FROM [Patnici]   WHERE Sifra_Pat=Cast(@Sifra As Smallint)
  29266.     ELSE IF @Tabela='DRGPODEL'   
  29267.         DELETE FROM [DrgPodel]    WHERE Sifra_Drg=Cast(@Sifra As Smallint)
  29268.     ELSE IF @Tabela='GRORG'
  29269.         DELETE FROM [GrOrg] WHERE Sif_GrOrg=@Sifra
  29270.     ELSE IF @Tabela='SGRORG'
  29271.           DELETE FROM [SGrOrg] WHERE Sif_GrOrg=@Sifra
  29272.         ELSE IF @Tabela='GRPAT'
  29273.         DELETE FROM [GrPat] WHERE Sif_GrPat=@Sifra
  29274.         ELSE IF @Tabela='SGRPAT'
  29275.           DELETE FROM [SGrPat] WHERE Sif_GrPat=@Sifra 
  29276.     ELSE IF @Tabela='DRGPODEL1'
  29277.         DELETE FROM [DrgPodel1]  WHERE Sifra_Drg1=Cast(@Sifra As Smallint)
  29278.     ELSE IF @Tabela='DRUGO1'
  29279.         DELETE FROM [Drugo1]  WHERE Sifra_1=Cast(@Sifra As Smallint)
  29280.     ELSE IF @Tabela='DRUGO2'
  29281.         DELETE FROM [Drugo2]  WHERE Sifra_2=Cast(@Sifra As Smallint)
  29282.     ELSE IF @Tabela='DRUGO3'
  29283.         DELETE FROM [Drugo3]  WHERE Sifra_3=Cast(@Sifra As Smallint)
  29284.     ELSE IF @Tabela='DRUGO4'
  29285.         DELETE FROM [Drugo4]  WHERE Sifra_4=Cast(@Sifra As Smallint)
  29286.     ELSE IF @Tabela='DRUGO5'
  29287.         DELETE FROM [Drugo5]  WHERE Sifra_5=Cast(@Sifra As Smallint)
  29288.         ELSE IF @Tabela='DRUGO6'
  29289.         DELETE FROM [Drugo6]  WHERE Sifra_6=Cast(@Sifra As Smallint)  
  29290.     ELSE IF @Tabela='DRUGO7'
  29291.         DELETE FROM [Drugo7]  WHERE Sifra_7=Cast(@Sifra As Smallint)
  29292.         ELSE IF @Tabela='KDRUGO1'
  29293.         DELETE FROM [KDrugo1]  WHERE Sifra_1K=Cast(@Sifra As Smallint)
  29294.     ELSE IF @Tabela='KDRUGO2'
  29295.         DELETE FROM [KDrugo2]  WHERE Sifra_2K=Cast(@Sifra As Smallint)
  29296.     ELSE IF @Tabela='KDRUGO3'
  29297.         DELETE FROM [KDrugo3]  WHERE Sifra_3K=Cast(@Sifra As Smallint)
  29298.     ELSE IF @Tabela='KDRUGO4'
  29299.         DELETE FROM [KDrugo4]  WHERE Sifra_4K=Cast(@Sifra As Smallint)
  29300.     ELSE IF @Tabela='KDRUGO5'
  29301.         DELETE FROM [KDrugo5]  WHERE Sifra_5K=Cast(@Sifra As Smallint)
  29302.         ELSE IF @Tabela='KDRUGO6'
  29303.         DELETE FROM [KDrugo6]  WHERE Sifra_6K=Cast(@Sifra As Smallint) 
  29304.     ELSE IF @Tabela='KDRUGO7'
  29305.         DELETE FROM [KDrugo7]  WHERE Sifra_7K=Cast(@Sifra As Smallint)
  29306.         ELSE IF @Tabela='KRSLISTA'
  29307.         DELETE FROM [KrsLista]  WHERE SImeVal=@Sifra
  29308.     ELSE IF @Tabela='CBROEVI'
  29309.         DELETE FROM [CBroevi]  WHERE CarBroj=@Sifra
  29310.     ELSE IF @Tabela='TIPNARAC'
  29311.         DELETE FROM [TipNarac]  WHERE Sifra_Nar=Cast(@Sifra As Smallint)
  29312.     ELSE IF @Tabela = 'NIVO'
  29313.         DELETE FROM Nivo WHERE Sifra_Nivo = @Sifra
  29314.     ELSE IF @Tabela='TIPNAL'
  29315.         DELETE FROM TIPNAL   WHERE Sifra_nal=@Sifra
  29316.     ELSE IF @Tabela='TIPDOK'
  29317.           DELETE FROM TIPDOK   WHERE Sifra_dok=@Sifra
  29318.     ELSE IF @Tabela='KLAS'
  29319.           DELETE FROM KLAS   WHERE Kto_Klas=@Sifra
  29320.     ELSE IF @Tabela='SINT'
  29321.           DELETE FROM SINT   WHERE Kto_Sint=@Sifra
  29322.     ELSE IF @Tabela='GRANAL'
  29323.           DELETE FROM GRANAL   WHERE Kto_GrAn=@Sifra
  29324.     ELSE IF @Tabela='GRNAR'
  29325.           DELETE FROM GRNAR   WHERE Sifra_GrNar=@Sifra
  29326.     ELSE IF @Tabela='BANKI'
  29327.           DELETE FROM BANKI   WHERE Sifra_Ban=@Sifra
  29328.     ELSE IF @Tabela='FIXTEKST'
  29329.           DELETE FROM FIXTEKST   WHERE Sifra_FixTekst=@Sifra
  29330.     ELSE IF @Tabela='FIXTEKSTN'
  29331.           DELETE FROM FIXTEKSTN   WHERE Sifra_FixTekst=@Sifra
  29332.     ELSE IF @Tabela='PRODMEST'
  29333.           DELETE FROM PRODMEST   WHERE Sifra_Mest=@Sifra
  29334.     ELSE IF @Tabela='TIPPERCENOVNIK'
  29335.           DELETE FROM TipPerCenovnik WHERE Sifra_TipC=@Sifra
  29336.     ELSE IF @Tabela='UCESDENOVI'
  29337.         DELETE FROM [UCESDENOVI]  WHERE Denovi=Cast(@Sifra As Smallint)
  29338.     ELSE IF @Tabela='KATGAMB'
  29339.         DELETE FROM [KATGAMB]  Where Sifra_GAmb=@Sifra
  29340.     ELSE IF @Tabela='KATAMB'
  29341.         DELETE FROM [KATAMB]  Where Sifra_Amb=@Sifra
  29342.     ELSE IF @Tabela='LOKACIJA'
  29343.         DELETE FROM [LOKACIJA]  Where Sifra_Lok=@Sifra
  29344.     ELSE IF @Tabela='AMORGRP'
  29345.         DELETE FROM [AMORGRP]  Where Sifra_Amor=@Sifra
  29346.     ELSE IF @Tabela='OSNSRED'
  29347.         DELETE FROM [OSNSRED]  Where Inv_Broj=@Sifra
  29348.     ELSE IF @Tabela='MAKROLOK'
  29349.         DELETE FROM [MAKROLOK]  Where Sifra_MakLok=@Sifra
  29350.     ELSE IF @Tabela='MIKROLOK'
  29351.         DELETE FROM [MIKROLOK]  Where Sifra_MikLok=@Sifra
  29352.     ELSE IF @Tabela='RABOTNIK'
  29353.         DELETE FROM [RABOTNIK]  Where Sifra_Rab=@Sifra
  29354.     ELSE IF @Tabela='GRAD'
  29355.         DELETE FROM [GRAD]  Where Sifra_Grad=@Sifra
  29356.     ELSE IF @Tabela='DOZNAKI'
  29357.         DELETE FROM [Doznaki]  Where Broj_Doznaka=@Sifra
  29358.     ELSE IF @Tabela='PREVOZNIK'
  29359.         DELETE FROM [Prevoznik]  Where Sifra_Prev=@Sifra
  29360.     ELSE IF @Tabela='OPSTINI'
  29361.         DELETE FROM [Opstini]  Where Sif_Opstina=@Sifra
  29362.     ELSE IF @Tabela='PROGRAMI'
  29363.         DELETE FROM [Programi]  Where Sif_Progr=@Sifra
  29364.     ELSE IF @Tabela='PRIMATELI'
  29365.         DELETE FROM [Primateli]  Where Sif_Primatel=@Sifra
  29366.     ELSE IF @Tabela='ZADRSKI'
  29367.         DELETE FROM [Zadrski]  Where Sif_Zadr=@Sifra
  29368.     ELSE IF @Tabela='PODMES'
  29369.         DELETE FROM [PodMes]  Where GodMes=@Sifra
  29370.     ELSE IF @Tabela='PODGOD'
  29371.         DELETE FROM [PodGod]  Where Godina=@Sifra
  29372.     ELSE IF @Tabela='ZARAB'
  29373.         DELETE FROM [Zarab]  Where Sif_Zarab=@Sifra
  29374.     ELSE IF @Tabela='ZARIZVEDOSNOVICI'
  29375.         DELETE FROM [ZarIzvedOsnovici]  Where Sif_ZarabIzv=@Sifra
  29376.     ELSE IF @Tabela='INTERNIKART'
  29377.         DELETE FROM [InterniKart]  Where Interna_Kart=@Sifra
  29378.     ELSE IF @Tabela='NACPLAK'
  29379.         DELETE FROM [NacPlak]  Where Sifra_Nac=@Sifra
  29380.     ELSE IF @Tabela='OPERATORI'
  29381.         DELETE FROM [Operatori]  Where Sifra_Oper=@Sifra
  29382.     ELSE IF @Tabela = 'FIRMI'
  29383.         DELETE FROM Firmi  WHERE Sifra_Firma=@Sifra
  29384.     ELSE IF @Tabela = 'NACINPRESMZ'
  29385.         DELETE FROM NacinPresmZ  WHERE Sif_NacPresZ=@Sifra
  29386.     ELSE IF @Tabela = 'GRPIZBOR'
  29387.         DELETE FROM GrpIzbor  WHERE Sifra_GrpIzb=@Sifra
  29388.     ELSE IF @Tabela = 'VIDVOZILA'
  29389.         DELETE FROM VidVozila  WHERE Sifra_Vid_Voz=@Sifra
  29390.     ELSE IF @Tabela = 'DIVIZII'
  29391.         DELETE FROM Divizii  WHERE Sifra_Div=@Sifra
  29392.     ELSE IF @Tabela = 'NIVOCENIKARTKOR'
  29393.         DELETE FROM NivoCeniKartKor  WHERE Sifra_CeniKartKor=@Sifra
  29394.     ELSE IF @Tabela = 'TIPKARTKOR'
  29395.         DELETE FROM TipKartKor  WHERE Sifra_TipKartKor=@Sifra
  29396.     ELSE IF @Tabela = 'GRUPIOPER'
  29397.         DELETE FROM GrupiOper  WHERE Sifra_GrOper=@Sifra
  29398.     ELSE IF @Tabela = 'RELACISPOR'
  29399.         DELETE FROM RelacIspor  WHERE Sifra_RelIspor=@Sifra
  29400.     ELSE IF @Tabela = 'VIDPRODOBJ'
  29401.         DELETE FROM VidProdObj  WHERE Sifra_VPJ=@Sifra
  29402.     ELSE IF @Tabela = 'TIPKOMINT'
  29403.         DELETE FROM TipKomint  WHERE Sifra_tip=@Sifra
  29404.     ELSE IF @Tabela = 'AKCIIPROMO'
  29405.         DELETE FROM AkciiPromo  WHERE Ozn_Akcija=@Sifra
  29406.     ELSE IF @Tabela = 'AKCIIPROMOSTA'
  29407.         DELETE FROM AkciiPromoSta  WHERE Ozn_Akcija=@Sifra
  29408.     ELSE IF @Tabela = 'GRUPAWEB'
  29409.         DELETE FROM GrupaWeb  WHERE Sifra_GrWeb=@Sifra
  29410.     ELSE IF @Tabela = 'PODGRWEB'
  29411.         DELETE FROM PodgrWeb  WHERE Sifra_PodgrWeb=@Sifra
  29412.     ELSE IF @Tabela = 'KATSTATUS'
  29413.         DELETE FROM KatStatus  WHERE Sifra_KatStatus=@Sifra
  29414.     ELSE IF @Tabela = 'TIPKATPAKUV'
  29415.         DELETE FROM TipKatPakuv  WHERE Sifra_KatPak=@Sifra
  29416.     ELSE IF @Tabela='VIDDOG'
  29417.         DELETE FROM VidDog    WHERE Sifra_VidDog=@Sifra
  29418.     ELSE IF @Tabela='VERNTRAENJE'
  29419.         DELETE FROM VernTraenje    WHERE Sifra_Vernost=@Sifra
  29420.     ELSE IF @Tabela='TARMODEL'
  29421.         DELETE FROM TarModel    WHERE Sifra_TarModel=@Sifra
  29422.     ELSE IF @Tabela='KARAKTERIST'
  29423.         DELETE FROM Karakterist    WHERE Sifra_Karakt=@Sifra
  29424.     ELSE IF @Tabela='TIPKARAKT'
  29425.         DELETE FROM TipKarakt    WHERE Sifra_7=@Sifra
  29426.     ELSE IF @Tabela='CRRKodovi'
  29427.         DELETE FROM CRRKodovi    WHERE Sifra_Crr=@Sifra
  29428.     ELSE IF @Tabela='FORMULADEF'
  29429.         DELETE FROM FormulaDef   WHERE Sifra_Formula=@Sifra
  29430.     ELSE IF @Tabela='KREDITSTATUS'
  29431.         DELETE FROM kreditStatus   WHERE Status_kredit=@Sifra
  29432.     ELSE IF @Tabela='KREDITTIPOPOMENA'
  29433.         DELETE FROM KreditTipOpomena   WHERE Tip_Opomena=@Sifra
  29434.     ELSE IF @Tabela='OSNGRPODEL'
  29435.         DELETE FROM OsnGrPodel   WHERE Sifra_OsnGrPodel=@Sifra
  29436.     ELSE IF @Tabela='TROSOKMESTO'
  29437.         DELETE FROM TrosokMesto   WHERE Sifra_TrosM = @Sifra
  29438.     ELSE IF @Tabela='TROSOKVID'
  29439.         DELETE FROM TrosokVid   WHERE Sifra_TrosV = @Sifra
  29440.     ELSE IF @Tabela='TROSOK4TIP'
  29441.         DELETE FROM Trosok4Tip   WHERE Sifra_4Tros = @Sifra
  29442.     ELSE IF @Tabela='GRKUP'
  29443.         DELETE FROM [GrKUP] WHERE Sif_GrKUP=@Sifra
  29444.     ELSE IF @Tabela='SGRKUP'
  29445.           DELETE FROM [SGrKUP] WHERE Sif_GrKUP=@Sifra
  29446.     ELSE IF @Tabela='PROEKT'
  29447.           DELETE FROM [Proekt] WHERE Broj_Proekt=@Sifra
  29448.     ELSE IF @Tabela = 'TIPPRODMESTO'
  29449.         DELETE FROM [TIPPRODMESTO] WHERE Sif_TipProdM = @Sifra
  29450.     ELSE IF @TABELA='RABKALENDAR'
  29451.             DELETE FROM [RABKALENDAR] WHERE Datum=@Sifra
  29452.     ELSE IF @TABELA='SPREMAC'
  29453.             DELETE FROM [SPREMAC] WHERE Sif_Spremac=@Sifra
  29454.     ELSE IF @Tabela='GRART'
  29455.         DELETE FROM [GrART] WHERE Sif_GrART=@Sifra
  29456.     ELSE IF @Tabela='SGRART'
  29457.           DELETE FROM [SGrART] WHERE Sif_GrArt=@Sifra
  29458.     ELSE IF @Tabela='FAZI'
  29459.           DELETE FROM [Fazi] WHERE Sifra_Faza=@Sifra
  29460.     ELSE IF @Tabela='Boja'
  29461.           DELETE FROM Boja WHERE Sifra_Boja=@Sifra
  29462.     ELSE IF @Tabela='Dnevnik'
  29463.           DELETE FROM Dnevnik WHERE IDDnevnik=@Sifra
  29464.     ELSE IF @Tabela='KatPodSifra'
  29465.           DELETE FROM KatPodSifra WHERE Sifra_Art=@Sifra
  29466.    IF @@ERROR=0 AND @@ROWCOUNT=0
  29467.       RETURN 77000
  29468.    ELSE
  29469.       RETURN @@ERROR
  29470.  
  29471. Go
  29472. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimatic_mk]'))
  29473. drop procedure [dbo].[sp_brisimatic_mk]
  29474.  
  29475. Go
  29476.  
  29477. CREATE PROCEDURE sp_BrisiMatic_MK
  29478.    @Sifra nVarchar(20), 
  29479.    @Tabela Varchar(20)
  29480. AS
  29481.    DECLARE @Greska Int
  29482.    SET @Tabela = Upper(@Tabela)
  29483.     IF @Tabela=''
  29484.         Print ''
  29485.     ELSE IF @Tabela='KATHIER'
  29486.         DELETE FROM [KatHier] WHERE Sifra_KHier=@Sifra
  29487.    IF @@ERROR=0 AND @@ROWCOUNT=0
  29488.       RETURN 77000
  29489.    ELSE
  29490.       RETURN @@ERROR
  29491.  
  29492.  
  29493.  
  29494. Go
  29495. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimckatpoz]'))
  29496. drop procedure [dbo].[sp_brisimckatpoz]
  29497.  
  29498. Go
  29499.  
  29500. create          PROCEDURE [dbo].[sp_BrisiMCKatPoz]
  29501.     @Sif_MCPozicija int
  29502. AS
  29503.     DELETE    
  29504.     FROM    MCKatPozicija
  29505.     WHERE    Sif_MCPozicija = @Sif_MCPozicija
  29506.  
  29507.  
  29508.  
  29509.  
  29510.  
  29511. Go
  29512. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimclista]'))
  29513. drop procedure [dbo].[sp_brisimclista]
  29514.  
  29515. Go
  29516. create  PROCEDURE [dbo].[sp_BrisiMCLista]
  29517.     @Br_MCLista    smallint,
  29518.     @Sif_MCPozicija    smallint
  29519. AS
  29520.  
  29521.     DELETE
  29522.     FROM    MCLista
  29523.     WHERE    Br_MCLista = @Br_MCLista AND Sif_MCPozicija = @Sif_MCPozicija
  29524.     Return @@Error
  29525.  
  29526.  
  29527.  
  29528. Go
  29529. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimerenjazaart]'))
  29530. drop procedure [dbo].[sp_brisimerenjazaart]
  29531.  
  29532. Go
  29533.  
  29534.  
  29535. CREATE  PROCEDURE sp_BrisiMerenjaZaArt
  29536.     @Sifra_Kup    char(6),
  29537.     @Datum        smalldatetime,
  29538.     @Sifra_Art    varchar(20)
  29539. AS
  29540.     DELETE FROM MerenjaZaArt
  29541.     WHERE Sifra_Kup = @Sifra_Kup and Datum=@Datum and Sifra_Art=@Sifra_Art
  29542.     RETURN @@ERROR
  29543.  
  29544.  
  29545.  
  29546.  
  29547. Go
  29548. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimmozalzaorged]'))
  29549. drop procedure [dbo].[sp_brisimmozalzaorged]
  29550.  
  29551. Go
  29552.  
  29553.  
  29554.  
  29555.  
  29556.  
  29557. create     PROCEDURE  sp_BrisiMMOZalZaOrgEd
  29558.     @Sifra_Oe    smallint,
  29559.         @Sifra_Art    varchar(20)
  29560. AS
  29561.     DELETE FROM OptZalPoOe WHERE Sifra_Oe=@Sifra_Oe and Sifra_Art=@Sifra_Art 
  29562.     RETURN @@ERROR
  29563.  
  29564.  
  29565.  
  29566.  
  29567.  
  29568.  
  29569.  
  29570. Go
  29571. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisimozevlez]'))
  29572. drop procedure [dbo].[sp_brisimozevlez]
  29573.  
  29574. Go
  29575.  
  29576. CREATE PROCEDURE  sp_BrisiMozeVlez
  29577.     @Sifra_Art  varchar(20)
  29578. AS
  29579.     DECLARE @Greska Int
  29580.     DELETE FROM MozeVlez  WHERE Sifra_Art = @Sifra_Art
  29581.       RETURN @@ERROR
  29582.  
  29583.  
  29584.  
  29585. Go
  29586. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinadvkor]'))
  29587. drop procedure [dbo].[sp_brisinadvkor]
  29588.  
  29589. Go
  29590. CREATE PROCEDURE sp_BrisiNadvKor
  29591.     @KorIme    varchar(15)    
  29592.  AS
  29593.     Delete NadvKor
  29594.     Where KorIme=@KorIme
  29595.     Return @@ERROR
  29596.  
  29597.  
  29598.  
  29599. Go
  29600. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinalozi]'))
  29601. drop procedure [dbo].[sp_brisinalozi]
  29602.  
  29603. Go
  29604.  
  29605. CREATE PROCEDURE sp_BrisiNalozi
  29606.    @Sifra_Nal Smallint,
  29607.    @Broj_Nal int
  29608. AS
  29609.    DELETE FROM [Nalozi]
  29610.    WHERE [Sifra_Nal]=@Sifra_Nal AND [Broj_Nal]=@Broj_Nal
  29611.    RETURN @@ERROR
  29612.  
  29613.  
  29614.  
  29615. Go
  29616. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinaplata]'))
  29617. drop procedure [dbo].[sp_brisinaplata]
  29618.  
  29619. Go
  29620. CREATE PROCEDURE sp_BrisiNaplata
  29621.     @Sifra_OE    smallint,
  29622.     @Sifra_Dok    smallint,
  29623.     @Broj_Dok    int
  29624. AS
  29625.     Delete From Naplata 
  29626.     Where Sifra_OE=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok
  29627.     Return @@ERROR
  29628.  
  29629.  
  29630.  
  29631. Go
  29632. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinaracki]'))
  29633. drop procedure [dbo].[sp_brisinaracki]
  29634.  
  29635. Go
  29636.  
  29637. CREATE PROCEDURE sp_BrisiNaracki
  29638.     @Sifra_OE Smallint,
  29639.     @Sifra_Nar Smallint,
  29640.     @Broj_Nar Int
  29641. AS
  29642. DELETE [Naracki]
  29643. WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  29644.  
  29645.  
  29646.  
  29647. Go
  29648. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinaracki_narid]'))
  29649. drop procedure [dbo].[sp_brisinaracki_narid]
  29650.  
  29651. Go
  29652.  
  29653. CREATE  PROCEDURE sp_BrisiNaracki_NarID 
  29654.     @NarID        int
  29655. AS
  29656.     Delete From StaNarac Where NarID=@NarID
  29657.     Delete From StaNeReal Where NarID=@NarID
  29658.     Delete From Naracki Where NarID=@NarID
  29659.      Return @@Error
  29660.  
  29661.  
  29662.  
  29663. Go
  29664. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinarreal]'))
  29665. drop procedure [dbo].[sp_brisinarreal]
  29666.  
  29667. Go
  29668. CREATE PROCEDURE sp_BrisiNarReal
  29669.     @DokrID int
  29670. AS
  29671. DELETE FROM NarReal
  29672. WHERE DokrID = @DokrID
  29673. RETURN @@ERROR
  29674.  
  29675.  
  29676.  
  29677. Go
  29678. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisingbillcodes]'))
  29679. drop procedure [dbo].[sp_brisingbillcodes]
  29680.  
  29681. Go
  29682. CREATE PROCEDURE sp_BrisiNGBillCodes
  29683.     @Sifra_BillCode    char(10)
  29684. AS
  29685.     Delete From NGBillCodes 
  29686.     Where Sifra_BillCode=@Sifra_BillCode
  29687.     Return @@ERROR
  29688.  
  29689.  
  29690. Go
  29691. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisingcoursetype]'))
  29692. drop procedure [dbo].[sp_brisingcoursetype]
  29693.  
  29694. Go
  29695. CREATE PROCEDURE sp_BrisiNGCourseType
  29696.     @Sifra_CourseType    char(10)
  29697. AS
  29698.     Delete From NGCourseType
  29699.     Where Sifra_CourseType=@Sifra_CourseType
  29700.     Return @@ERROR
  29701.  
  29702.  
  29703. Go
  29704. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisingfamilija]'))
  29705. drop procedure [dbo].[sp_brisingfamilija]
  29706.  
  29707. Go
  29708. CREATE PROCEDURE sp_BrisiNGFamilija
  29709.     @Sifra_Famil    char(20)
  29710. AS
  29711.     Delete From NGFamilija 
  29712.     Where Sifra_Famil=@Sifra_Famil
  29713.     Return @@ERROR
  29714.  
  29715.  
  29716. Go
  29717. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinginvoice]'))
  29718. drop procedure [dbo].[sp_brisinginvoice]
  29719.  
  29720. Go
  29721. CREATE PROCEDURE sp_BrisiNGInvoice
  29722.     @Sifra_Oe    smallint,
  29723.     @Broj_Inv    int
  29724. AS
  29725.     Delete From NGInvoice 
  29726.     Where Sifra_Oe=@Sifra_Oe And Broj_Inv=@Broj_Inv
  29727.  
  29728.  
  29729. Go
  29730. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinginvoicestasite]'))
  29731. drop procedure [dbo].[sp_brisinginvoicestasite]
  29732.  
  29733. Go
  29734. CREATE PROCEDURE sp_BrisiNGInvoiceStaSite
  29735.     @Sifra_Oe        smallint, 
  29736.     @Broj_Inv        int
  29737. AS
  29738.     Delete From NGInvoiceSta
  29739.     Where Sifra_Oe=@Sifra_Oe And Broj_Inv=@Broj_Inv
  29740.     Return @@ERROR
  29741.  
  29742.  
  29743. Go
  29744. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisinginvoicestastavka]'))
  29745. drop procedure [dbo].[sp_brisinginvoicestastavka]
  29746.  
  29747. Go
  29748. CREATE PROCEDURE sp_BrisiNGInvoiceStaStavka
  29749.     @Sifra_Oe        smallint, 
  29750.     @Broj_Inv        int, 
  29751.     @RbrStavka        smallint
  29752. AS
  29753.     Delete From NGInvoiceSta
  29754.     Where Sifra_Oe=@Sifra_Oe And Broj_Inv=@Broj_Inv And RbrStavka=@RbrStavka
  29755.     Return @@ERROR
  29756.  
  29757.  
  29758. Go
  29759. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisingschoolyear]'))
  29760. drop procedure [dbo].[sp_brisingschoolyear]
  29761.  
  29762. Go
  29763.  
  29764. create  PROCEDURE sp_BrisiNGSchoolYear
  29765.  
  29766.     @Sifra_SchoolYear    char(10)
  29767.  
  29768. AS
  29769.  
  29770.     Delete From NGSchoolYear
  29771.     Where Sifra_SchoolYear = @Sifra_SchoolYear
  29772.  
  29773.     Return @@ERROR
  29774.  
  29775.  
  29776.  
  29777. Go
  29778. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisingstudents]'))
  29779. drop procedure [dbo].[sp_brisingstudents]
  29780.  
  29781. Go
  29782. CREATE PROCEDURE sp_BrisiNGStudents
  29783.     @Sifra_Student    char(6)
  29784. AS
  29785.     Delete From NGStudents 
  29786.     Where Sifra_Student=@Sifra_Student
  29787.     Return @@ERROR
  29788.  
  29789.  
  29790. Go
  29791. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiobjektodgrkup]'))
  29792. drop procedure [dbo].[sp_brisiobjektodgrkup]
  29793.  
  29794. Go
  29795.  
  29796.  
  29797. CREATE   procedure sp_BrisiObjektOdGrKup
  29798.     @Sif_GrKup as varchar(20),
  29799.     @Sifra_Kup as varchar(6),
  29800.     @Sifra_Obj smallint
  29801. As
  29802.     Delete From SGrKupObj
  29803.     Where Sif_Grkup=@Sif_Grkup and Sifra_Kup=@Sifra_Kup and Sifra_Obj=@Sifra_obj
  29804.  
  29805.  
  29806.  
  29807.  
  29808.  
  29809. Go
  29810. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisioptzalpooe]'))
  29811. drop procedure [dbo].[sp_brisioptzalpooe]
  29812.  
  29813. Go
  29814. CREATE PROCEDURE sp_BrisiOptZalPoOe
  29815.     @Sifra_Art    varchar(20)
  29816. AS
  29817.     Delete From OptZalPoOe
  29818.     Where Sifra_Art = @Sifra_Art
  29819.     Return @@ERROR
  29820.  
  29821.  
  29822. Go
  29823. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiosnovosig]'))
  29824. drop procedure [dbo].[sp_brisiosnovosig]
  29825.  
  29826. Go
  29827.  
  29828. CREATE PROCEDURE sp_BrisiOsnovOsig
  29829.  
  29830.     @Sifra_OsnovOsig    char(2)
  29831. AS
  29832.     Delete From OsnovOsig 
  29833.     Where Sifra_OsnovOsig=@Sifra_OsnovOsig
  29834.     Return @@ERROR
  29835.  
  29836.  
  29837. Go
  29838. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiosnpodelbi]'))
  29839. drop procedure [dbo].[sp_brisiosnpodelbi]
  29840.  
  29841. Go
  29842.  
  29843.  
  29844.  
  29845.  
  29846.  
  29847.  
  29848. CREATE      PROCEDURE  sp_BrisiOsnPodelbi
  29849.     @Sifra_OsnGrPodel smallint,
  29850.     @Sifra_OsnPodel smallint
  29851.      
  29852. AS
  29853.     DELETE FROM OsnPodelbi WHERE Sifra_OsnGrPodel=@Sifra_OsnGrPodel and Sifra_OsnPodel = @Sifra_OsnPodel 
  29854.     RETURN @@ERROR
  29855.  
  29856.  
  29857.  
  29858.  
  29859.  
  29860.  
  29861.  
  29862.  
  29863. Go
  29864. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiosnpodelsta]'))
  29865. drop procedure [dbo].[sp_brisiosnpodelsta]
  29866.  
  29867. Go
  29868.  
  29869.  
  29870.  
  29871.  
  29872. create    PROCEDURE  sp_BrisiOsnPodelSta
  29873.     @Inv_Broj    char(10)
  29874. AS
  29875.     DELETE FROM OsnPodelSta WHERE Inv_Broj=@Inv_Broj
  29876.     RETURN @@ERROR
  29877.  
  29878.  
  29879.  
  29880.  
  29881.  
  29882.  
  29883. Go
  29884. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiotkrojsema]'))
  29885. drop procedure [dbo].[sp_brisiotkrojsema]
  29886.  
  29887. Go
  29888. CREATE PROCEDURE sp_BrisiOtkrojSema
  29889.     @Sifra_Otkr    smallint
  29890.  AS
  29891.     Delete From OtkrojSema
  29892.     Where Sifra_Otkr=@Sifra_Otkr
  29893.     Return @@ERROR
  29894.  
  29895.  
  29896.  
  29897. Go
  29898. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipacienti]'))
  29899. drop procedure [dbo].[sp_brisipacienti]
  29900.  
  29901. Go
  29902.  
  29903. CREATE PROCEDURE sp_BrisiPacienti
  29904.  
  29905.     @EMBG        char(13)
  29906. AS
  29907.     Delete From Pacienti 
  29908.     Where EMBG=@EMBG
  29909.     Return @@ERROR
  29910.  
  29911.  
  29912. Go
  29913. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipaklista]'))
  29914. drop procedure [dbo].[sp_brisipaklista]
  29915.  
  29916. Go
  29917. CREATE  PROCEDURE sp_BrisiPakLista 
  29918.     @Sifra_OE smallint,
  29919.     @Mesto_Pak smallint, 
  29920.     @Sifra_Pak smallint, 
  29921.     @Broj_Pak smallint
  29922. AS
  29923. DELETE [PakLista]  WHERE Sifra_OE=@Sifra_OE AND Mesto_Pak=@Mesto_Pak AND Sifra_Pak=@Sifra_Pak AND Broj_Pak=@Broj_Pak
  29924.  
  29925.  
  29926. Go
  29927. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipaklistastav]'))
  29928. drop procedure [dbo].[sp_brisipaklistastav]
  29929.  
  29930. Go
  29931. CREATE  PROCEDURE sp_BrisiPakListaStav
  29932.     @Sifra_OE    smallint,
  29933.     @Mesto_Pak    smallint, 
  29934.     @Sifra_Pak    smallint, 
  29935.     @Broj_Pak    int
  29936.  AS
  29937. DELETE [PakListaStav]     WHERE Sifra_OE=@Sifra_OE and  Mesto_Pak=@Mesto_Pak AND Sifra_Pak=@Sifra_Pak AND Broj_Pak=@Broj_Pak
  29938.  
  29939.  
  29940. Go
  29941. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipakuvart]'))
  29942. drop procedure [dbo].[sp_brisipakuvart]
  29943.  
  29944. Go
  29945.  
  29946. create PROCEDURE  sp_BrisiPakuvArt
  29947.     @Broj_DokPak   int
  29948. AS
  29949.     DELETE FROM PakuvArt 
  29950.         WHERE Broj_DokPak = @Broj_DokPak
  29951.     RETURN @@ERROR
  29952.  
  29953.  
  29954.  
  29955. Go
  29956. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipercenceni]'))
  29957. drop procedure [dbo].[sp_brisipercenceni]
  29958.  
  29959. Go
  29960. CREATE PROCEDURE  sp_BrisiPerCenCeni
  29961.     @Sifra_TipC    smallint,
  29962.     @Datum_Od    smalldatetime
  29963.  AS
  29964.     DELETE FROM PerCenCeni WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od 
  29965.       RETURN @@ERROR
  29966.  
  29967.  
  29968.  
  29969. Go
  29970. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipercenceniredov]'))
  29971. drop procedure [dbo].[sp_brisipercenceniredov]
  29972.  
  29973. Go
  29974.  
  29975. CREATE  PROCEDURE  sp_BrisiPerCenCeniRedov
  29976.     @Sifra_TipC    smallint,
  29977.     @Datum_Od    smalldatetime
  29978. AS
  29979. DELETE FROM PerCenCeniRedov WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od  
  29980.       RETURN @@ERROR
  29981.  
  29982.  
  29983.  
  29984.  
  29985. Go
  29986. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiplanbudzet]'))
  29987. drop procedure [dbo].[sp_brisiplanbudzet]
  29988.  
  29989. Go
  29990.  
  29991.  
  29992.  
  29993. create    PROCEDURE sp_BrisiPlanBudzet
  29994.     @Godina    smallint
  29995.  AS
  29996.     Declare @SSQL As Varchar(2000)
  29997.     Set @SSQL = 'Delete from PlanBudzet '
  29998.     If @Godina Is Not Null 
  29999.         Set @SSQL=@SSQL+ ' where Godina = ' + cast(@Godina as varchar(4)) + ' '
  30000.     Exec(@SSQL)
  30001.     Return @@Error
  30002.  
  30003.  
  30004.  
  30005.  
  30006. Go
  30007. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiplanmes]'))
  30008. drop procedure [dbo].[sp_brisiplanmes]
  30009.  
  30010. Go
  30011.  
  30012.  
  30013. CREATE   PROCEDURE sp_BrisiPlanMes
  30014.     @Godina    smallint,
  30015.     @Mesec    smallint,
  30016.     @Sifra_oe smallint,
  30017.     @Sifra_Art Varchar(20),
  30018.         @ImePlan VarChar(10)
  30019.  AS
  30020.     Declare @SSQL As Varchar(2000)
  30021.     Set @SSQL = 'Delete [PlanMes]  Where Sifra_oe = ' + cast(@SifrA_oe as varchar(5)) + ' '
  30022.     If @Godina Is Not Null 
  30023.         Set @SSQL=@SSQL+ ' And Godina = ' + cast(@Godina as varchar(4)) + ' '
  30024.     If @Mesec Is Not Null 
  30025.         Set @SSQL=@SSQL+ ' And Mesec = ' + cast(@Mesec as varchar(2)) + ' '
  30026.     If @Sifra_Art Is Not Null 
  30027.         Set @SSQL=@SSQL+ ' And Sifra_art = ''' + @Sifra_art + ''' '    
  30028.     Set @SSQL=@SSQL+ ' And ImePlan = ''' + @ImePlan + ''' '    
  30029.     Exec(@SSQL)
  30030. --    Where Godina=@Godina and Mesec=@Mesec and Sifra_art=@Sifra_Art
  30031.     Return @@Error
  30032.  
  30033.  
  30034.  
  30035. Go
  30036. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiplanmespodel]'))
  30037. drop procedure [dbo].[sp_brisiplanmespodel]
  30038.  
  30039. Go
  30040.  
  30041.  
  30042.  
  30043.  
  30044. CREATE     PROCEDURE sp_BrisiPlanMesPodel
  30045.     @Godina    smallint,
  30046.     @Mesec    smallint,
  30047.     @Sifra_oe smallint,
  30048.     @Sifra_Podel nVarchar(20),
  30049.         @ImePlan VarChar(10),
  30050.         @KojaPodel VarChar(10)
  30051.  AS
  30052.     Declare @SSQL As Varchar(2000)
  30053.     Set @SSQL = 'Delete [PlanMesPodel]  Where Sifra_oe = ' + cast(@SifrA_oe as varchar(5)) + ' '
  30054.     If @Godina Is Not Null 
  30055.         Set @SSQL=@SSQL+ ' And Godina = ' + cast(@Godina as varchar(4)) + ' '
  30056.     If @Mesec Is Not Null 
  30057.         Set @SSQL=@SSQL+ ' And Mesec = ' + cast(@Mesec as varchar(2)) + ' '
  30058.     If @Sifra_Podel Is Not Null 
  30059.         Set @SSQL=@SSQL+ ' And Sifra_Podel = ''' + @Sifra_Podel + ''' '    
  30060.     Set @SSQL=@SSQL+ ' And ImePlan = ''' + @ImePlan + ''' '    
  30061.         Set @SSQL=@SSQL+ ' And KojaPodel = ''' + @KojaPodel + ''' '
  30062.     Exec(@SSQL)
  30063. --    Where Godina=@Godina and Mesec=@Mesec and Sifra_art=@Sifra_Art
  30064.     Return @@Error
  30065.  
  30066.  
  30067.  
  30068.  
  30069.  
  30070. Go
  30071. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiplanpat]'))
  30072. drop procedure [dbo].[sp_brisiplanpat]
  30073.  
  30074. Go
  30075. CREATE PROCEDURE sp_BrisiPlanPat
  30076.     @Sifra_Plan    smallint, 
  30077.     @Mesec    smallint, 
  30078.     @Godina    smallint
  30079. AS
  30080.     Delete From PlanPat 
  30081.     Where Sifra_Plan=@Sifra_Plan And Mesec=@Mesec And Godina=@Godina
  30082.     Return @@ERROR
  30083.  
  30084.  
  30085.  
  30086. Go
  30087. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiplanper]'))
  30088. drop procedure [dbo].[sp_brisiplanper]
  30089.  
  30090. Go
  30091. CREATE PROCEDURE sp_BrisiPlanPer
  30092.     @Sifra_Kup    char(6),
  30093.     @Sifra_Obj    smallint
  30094. AS
  30095. If @Sifra_Obj IS NULL
  30096.     DELETE PlanPer  WHERE Sifra_Kup = @Sifra_Kup
  30097. Else
  30098.     DELETE PlanPer  WHERE Sifra_Kup = @Sifra_Kup AND Sifra_Obj =@Sifra_Obj
  30099. Return @@ERROR
  30100.  
  30101.  
  30102.  
  30103. Go
  30104. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiplanpro]'))
  30105. drop procedure [dbo].[sp_brisiplanpro]
  30106.  
  30107. Go
  30108. CREATE PROCEDURE sp_BrisiPlanPro
  30109.     @Sif_GrOrg char(6),
  30110.     @Sifra_Nar smallint,
  30111.     @Broj_Plan char(10)
  30112. AS
  30113. DELETE FROM PlanPro WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_Nar=@Sifra_Nar AND Broj_Plan=@Broj_Plan
  30114. RETURN @@ERROR
  30115.  
  30116.  
  30117.  
  30118. Go
  30119. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiplanprosta]'))
  30120. drop procedure [dbo].[sp_brisiplanprosta]
  30121.  
  30122. Go
  30123. CREATE PROCEDURE sp_BrisiPlanProSta
  30124.     @Sif_GrOrg char(6),
  30125.     @Sifra_Nar smallint,
  30126.     @Broj_Plan char(10)
  30127. AS
  30128. DELETE FROM PlanProSta  WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_Nar=@Sifra_Nar AND Broj_Plan=@Broj_Plan
  30129.  
  30130.  
  30131.  
  30132. Go
  30133. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipocnabceni]'))
  30134. drop procedure [dbo].[sp_brisipocnabceni]
  30135.  
  30136. Go
  30137. CREATE PROCEDURE sp_BrisiPocNabCeni
  30138.     @Sifra_Oe    smallint, 
  30139.     @Sifra_Art    varchar(20)
  30140. AS
  30141.     Delete From PocNabCeni
  30142.     Where Sifra_Oe=@Sifra_Oe And Sifra_Art=@Sifra_Art
  30143.     Return @@ERROR
  30144.  
  30145.  
  30146. Go
  30147. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipocsostosn]'))
  30148. drop procedure [dbo].[sp_brisipocsostosn]
  30149.  
  30150. Go
  30151. CREATE PROCEDURE sp_BrisiPocSostOsn
  30152.     @Inv_Broj    char(10), 
  30153.     @Godina    smallint
  30154. AS
  30155.     Delete From PocSostOsn
  30156.     Where Inv_Broj=@Inv_Broj and Godina=@Godina
  30157.     Return @@ERROR
  30158.  
  30159.  
  30160. Go
  30161. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipocsostosngod]'))
  30162. drop procedure [dbo].[sp_brisipocsostosngod]
  30163.  
  30164. Go
  30165.  
  30166. CREATE  PROCEDURE sp_BrisiPocSostOsnGod
  30167.     @Godina    smallint
  30168. AS
  30169.     Delete From PocSostOsn Where Godina=@Godina AND Prenos='D'
  30170.  
  30171.  
  30172.  
  30173. Go
  30174. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipodelartkomusl]'))
  30175. drop procedure [dbo].[sp_brisipodelartkomusl]
  30176.  
  30177. Go
  30178.  
  30179. create  PROCEDURE sp_BrisiPodelArtKomUsl
  30180.     @Sifra_Kanal     smallint,
  30181.     @Sifra_Kup     char(6),
  30182.     @PodelKupKomerc nvarchar(20),
  30183.     @Sifra_Art     varchar(20), 
  30184.     @PodelArtKomerc nvarchar(20)
  30185. AS
  30186.     Delete From PodelArtKomUsl 
  30187.     Where Sifra_Kanal=@Sifra_Kanal and Sifra_Kup=@Sifra_Kup and PodelKupKomerc=@PodelKupKomerc and Sifra_Art=@Sifra_Art and PodelArtKomerc=@PodelArtKomerc
  30188.     Return @@ERROR
  30189.  
  30190.  
  30191.  
  30192. Go
  30193. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipodracnisluzbi]'))
  30194. drop procedure [dbo].[sp_brisipodracnisluzbi]
  30195.  
  30196. Go
  30197.  
  30198. CREATE PROCEDURE sp_BrisiPodracniSluzbi
  30199.  
  30200.     @Sifra_PodrSluzba    char(4)
  30201. AS
  30202.     Delete From PodracniSluzbi 
  30203.     Where Sifra_PodrSluzba=@Sifra_PodrSluzba
  30204.     Return @@ERROR
  30205.  
  30206.  
  30207.  
  30208. Go
  30209. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipombrdok]'))
  30210. drop procedure [dbo].[sp_brisipombrdok]
  30211.  
  30212. Go
  30213.  
  30214.  
  30215. create   PROCEDURE sp_BrisiPomBrDok
  30216.     @KodObr        varchar(50),
  30217.     @KodOperator    varchar(50)
  30218.  
  30219. AS
  30220.  
  30221.     Delete From PomBrojDok
  30222.     Where KodObr = @KodObr and KodOperator = @KodOperator
  30223.  
  30224.  
  30225.  
  30226.  
  30227. Go
  30228. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipopis]'))
  30229. drop procedure [dbo].[sp_brisipopis]
  30230.  
  30231. Go
  30232.  
  30233. CREATE PROCEDURE  sp_BrisiPopis
  30234.     @Sifra_OE smallint,
  30235.     @Datum smalldatetime
  30236.  AS
  30237.     DECLARE @Greska Int
  30238.     DELETE FROM Popis WHERE Sifra_OE = @Sifra_OE and Datum = @Datum
  30239.    IF @@ERROR=0 AND @@ROWCOUNT=0
  30240.       RETURN 77000
  30241.    ELSE
  30242.       RETURN @@ERROR
  30243.  
  30244.  
  30245.  
  30246. Go
  30247. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipopisdok]'))
  30248. drop procedure [dbo].[sp_brisipopisdok]
  30249.  
  30250. Go
  30251. CREATE PROCEDURE sp_BrisiPopisDok 
  30252.     @RbrPopis        smallint,
  30253.     @Sifra_Oe        smallint, 
  30254.     @Sifra_Dok        smallint, 
  30255.     @Broj_Dok        int
  30256. AS
  30257.     Delete From PopisDok 
  30258.     Where RbrPopis=@RbrPopis And Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  30259.     Return @@ERROR
  30260.  
  30261.  
  30262. Go
  30263. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipopislistaos]'))
  30264. drop procedure [dbo].[sp_brisipopislistaos]
  30265.  
  30266. Go
  30267. CREATE      PROCEDURE sp_BrisiPopisListaOS
  30268.     @Datum    smalldatetime,
  30269.     @Broj_Lista    int
  30270. AS
  30271.     Delete From LPopisOS 
  30272.     Where Broj_Lista=@Broj_Lista
  30273.     And IDPopisOS In (Select IDPopisOS From PopisOS Where Datum=@Datum)
  30274.  
  30275.  
  30276. Go
  30277. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipopisos]'))
  30278. drop procedure [dbo].[sp_brisipopisos]
  30279.  
  30280. Go
  30281.  
  30282.  
  30283. CREATE  PROCEDURE  sp_BrisiPopisOS
  30284.     @Sifra_OE smallint,
  30285.     @Datum smalldatetime
  30286. AS
  30287.     DECLARE @Greska Int
  30288.     DELETE FROM Popis WHERE Sifra_OE = @Sifra_OE and Datum = @Datum
  30289.    IF @@ERROR=0 AND @@ROWCOUNT=0
  30290.       RETURN 77000
  30291.    ELSE
  30292.       RETURN @@ERROR
  30293.  
  30294.  
  30295.  
  30296. Go
  30297. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipopisos_br]'))
  30298. drop procedure [dbo].[sp_brisipopisos_br]
  30299.  
  30300. Go
  30301.  
  30302.  
  30303.  
  30304. CREATE   PROCEDURE  sp_BrisiPopisOS_br
  30305.     @IDPopisOS smallint
  30306. AS
  30307.     DECLARE @Greska Int
  30308.     DELETE FROM PopisOs WHERE IDPopisOS=@IDPopisOs
  30309.    IF @@ERROR=0 AND @@ROWCOUNT=0
  30310.       RETURN 77000
  30311.    ELSE
  30312.       RETURN @@ERROR
  30313.  
  30314.  
  30315.  
  30316. Go
  30317. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisipopisos_os]'))
  30318. drop procedure [dbo].[sp_brisipopisos_os]
  30319.  
  30320. Go
  30321. CREATE  PROCEDURE  sp_BrisiPopisOS_OS
  30322.     @Sifra_OE smallint,
  30323.     @Datum smalldatetime
  30324. AS
  30325.     DECLARE @Greska Int
  30326.     DELETE FROM PopisOS WHERE Sifra_OE = @Sifra_OE and Datum = @Datum
  30327.    IF @@ERROR=0 AND @@ROWCOUNT=0
  30328.       RETURN 77000
  30329.    ELSE
  30330.       RETURN @@ERROR
  30331.  
  30332.  
  30333. Go
  30334. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiporastcenist]'))
  30335. drop procedure [dbo].[sp_brisiporastcenist]
  30336.  
  30337. Go
  30338. CREATE PROCEDURE sp_BrisiPorastCeniSt
  30339.     @Mesec    smallint,
  30340.     @Godina    smallint
  30341.  AS
  30342.     Delete From PorastCeniSt 
  30343.     Where Mesec=@Mesec and Godina=@Godina
  30344.     Return @@ERROR
  30345.  
  30346.  
  30347. Go
  30348. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiprivfiltoper]'))
  30349. drop procedure [dbo].[sp_brisiprivfiltoper]
  30350.  
  30351. Go
  30352.  
  30353.  
  30354.  
  30355.  
  30356. create    PROCEDURE sp_BrisiPrivFiltOper
  30357.     @NIme_User varchar(30),
  30358.     @TipPrivil varchar(30),
  30359.     @PodTipPrivil varchar(30),
  30360.     @OpcMeni varchar(30)
  30361.  AS
  30362.     delete From PrivFiltOper
  30363.     Where NIme_User=@NIme_User and TipPrivil = @TipPrivil and PodTipPrivil = @PodTipPrivil and OpcMeni = @OpcMeni
  30364.     
  30365.     Return @@ERROR
  30366.  
  30367.  
  30368.  
  30369.  
  30370.  
  30371.  
  30372.  
  30373.  
  30374. Go
  30375. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiprivilegii]'))
  30376. drop procedure [dbo].[sp_brisiprivilegii]
  30377.  
  30378. Go
  30379.  
  30380. CREATE PROCEDURE  sp_BrisiPrivilegii
  30381.     @Sifra_GrKor varchar(20)
  30382.  AS
  30383.     DELETE FROM Privilegii WHERE Sifra_GrKor = @Sifra_GrKor
  30384.       RETURN @@ERROR
  30385.  
  30386.  
  30387.  
  30388. Go
  30389. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiprivkoncept]'))
  30390. drop procedure [dbo].[sp_brisiprivkoncept]
  30391.  
  30392. Go
  30393.  
  30394.  
  30395. create  PROCEDURE sp_BrisiPrivKoncept
  30396.     @Sifra_GrKor  varchar (20)
  30397.  AS
  30398.     Delete PrivKoncept
  30399.     Where Sifra_GrKor=@Sifra_GrKor
  30400.     Return @@Error
  30401.  
  30402.  
  30403.  
  30404. Go
  30405. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiproizvtrosfix]'))
  30406. drop procedure [dbo].[sp_brisiproizvtrosfix]
  30407.  
  30408. Go
  30409. CREATE  PROCEDURE sp_BrisiProizvTrosFix
  30410.     @Proiz_Sema        smallint
  30411.  AS
  30412.     Delete 
  30413.     From ProizvTrosFix
  30414.     Where Proiz_Sema=@Proiz_Sema
  30415.     Return @@ERROR
  30416.  
  30417.  
  30418.  
  30419. Go
  30420. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirabnal]'))
  30421. drop procedure [dbo].[sp_brisirabnal]
  30422.  
  30423. Go
  30424.  
  30425. CREATE PROCEDURE sp_BrisiRabNal
  30426.     @RabNalID int
  30427. AS
  30428.     DELETE FROM RabNal
  30429.     WHERE RabNalID = @RabNalID
  30430.     RETURN @@ERROR
  30431.  
  30432.  
  30433.  
  30434. Go
  30435. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirabnalfazi]'))
  30436. drop procedure [dbo].[sp_brisirabnalfazi]
  30437.  
  30438. Go
  30439.  
  30440.  
  30441.  
  30442.  
  30443.  
  30444. CREATE      PROCEDURE sp_BrisiRabNalFazi
  30445.     @RabNalID    integer,
  30446.     @Sifra_Faza    smallint,
  30447.     @Sifra_Smena    smallint,
  30448.     @Datum_Dok    smalldatetime    
  30449. AS
  30450. Delete from RabNalFazi where RabNalID=@RabNalID AND Sifra_Smena=@Sifra_Smena AND Sifra_Faza=@Sifra_Faza AND Datum_Dok=@Datum_Dok
  30451.  
  30452.  
  30453.  
  30454.  
  30455.  
  30456.  
  30457.  
  30458. Go
  30459. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirasporedispor]'))
  30460. drop procedure [dbo].[sp_brisirasporedispor]
  30461.  
  30462. Go
  30463. CREATE                   PROCEDURE sp_BrisiRasporedIspor
  30464.     @Sifra_Oe        smallint, 
  30465.     @Sifra_Nar        smallint, 
  30466.     @Broj_Raspored    int
  30467. AS
  30468.     Delete From RasporedIspor
  30469.     Where Sifra_OE=@Sifra_OE and Sifra_Nar=@Sifra_Nar And Broj_Raspored=@Broj_Raspored
  30470.     Return @@ERROR
  30471.  
  30472.  
  30473.  
  30474. Go
  30475. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirasporedispstavki]'))
  30476. drop procedure [dbo].[sp_brisirasporedispstavki]
  30477.  
  30478. Go
  30479. CREATE          PROCEDURE sp_BrisiRasporedIspStavki
  30480.     @RasporId    int
  30481. AS
  30482.     Delete From RasporedIspStavki
  30483.     Where RasporId=@RasporId
  30484.     RETURN @@ERROR
  30485.  
  30486.  
  30487. Go
  30488. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirazlfin]'))
  30489. drop procedure [dbo].[sp_brisirazlfin]
  30490.  
  30491. Go
  30492. CREATE PROCEDURE sp_BrisiRazlFin
  30493.     @Broj_RazlFin    int,
  30494.     @Sifra_Oe    varchar(20)
  30495.  AS
  30496.     DELETE RazlFin
  30497.     WHERE Broj_RazlFin=@Broj_RazlFin and Sifra_Oe=@Sifra_Oe
  30498.  
  30499.  
  30500.  
  30501. Go
  30502. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirazlprod]'))
  30503. drop procedure [dbo].[sp_brisirazlprod]
  30504.  
  30505. Go
  30506. CREATE PROCEDURE sp_BrisiRazlProd
  30507.     @Broj_RazlProd    int,
  30508.     @Sifra_Oe    varchar(20)
  30509.  AS
  30510.     DELETE RazlProd
  30511.     WHERE Broj_RazlProd=@Broj_RazlProd and Sifra_Oe=@Sifra_Oe
  30512.  
  30513.  
  30514.  
  30515. Go
  30516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirecepti]'))
  30517. drop procedure [dbo].[sp_brisirecepti]
  30518.  
  30519. Go
  30520.  
  30521.  
  30522. CREATE  PROCEDURE sp_BrisiRecepti
  30523.  
  30524.     @Sifra_Apteka        char(2),
  30525.     @Broj_Recept        int
  30526. AS
  30527.     Delete From Recepti 
  30528.     Where Sifra_Apteka=@Sifra_Apteka And Broj_Recept=@Broj_Recept 
  30529.  
  30530.     Return @@ERROR
  30531.  
  30532.  
  30533.  
  30534. Go
  30535. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirecepti_p]'))
  30536. drop procedure [dbo].[sp_brisirecepti_p]
  30537.  
  30538. Go
  30539.  
  30540. create PROCEDURE sp_BrisiRecepti_P
  30541.     @Sifra_Apteka        char(2),
  30542.     @Broj_Recept        int
  30543.  
  30544. AS
  30545.  
  30546.     Delete From Recepti_P
  30547.     Where Sifra_Apteka=@Sifra_Apteka And Broj_Recept=@Broj_Recept 
  30548.  
  30549.     Return @@ERROR
  30550.  
  30551.  
  30552.  
  30553. Go
  30554. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirelacisporstav]'))
  30555. drop procedure [dbo].[sp_brisirelacisporstav]
  30556.  
  30557. Go
  30558. CREATE PROCEDURE sp_BrisiRelacIsporStav
  30559.     @Sifra_RelIspor    smallint
  30560. AS
  30561.     Delete From RelacIsporStav
  30562.     Where Sifra_RelIspor=@Sifra_RelIspor
  30563.     Return @@ERROR
  30564.  
  30565.  
  30566.  
  30567. Go
  30568. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirpopis]'))
  30569. drop procedure [dbo].[sp_brisirpopis]
  30570.  
  30571. Go
  30572.  
  30573. CREATE PROCEDURE  sp_BrisiRPopis
  30574.     @IDPopis int
  30575.  AS
  30576.     DECLARE @Greska Int
  30577.     DELETE FROM RPopis WHERE IDPopis = @IDPopis 
  30578.    IF @@ERROR=0 AND @@ROWCOUNT=0
  30579.       RETURN 77000
  30580.    ELSE
  30581.       RETURN @@ERROR
  30582.  
  30583.  
  30584.  
  30585. Go
  30586. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirutiplan]'))
  30587. drop procedure [dbo].[sp_brisirutiplan]
  30588.  
  30589. Go
  30590.  
  30591.  
  30592.  
  30593.  
  30594. create     PROCEDURE sp_BrisiRutiPlan
  30595.     @Sifra_Pat smallint,
  30596.     @Datum_Od smalldatetime,
  30597.     @DenOdNedela char(1)
  30598.  AS
  30599.     delete From RutiPlan
  30600.     Where Sifra_Pat=@Sifra_Pat and Datum_Od = @Datum_Od and DenOdNedela = @DenOdNedela
  30601.     
  30602.     Return @@ERROR
  30603.  
  30604.  
  30605.  
  30606.  
  30607.  
  30608.  
  30609.  
  30610. Go
  30611. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisirutizadatum]'))
  30612. drop procedure [dbo].[sp_brisirutizadatum]
  30613.  
  30614. Go
  30615.  
  30616.  
  30617.  
  30618.  
  30619.  
  30620.  
  30621. CREATE     PROCEDURE sp_BrisiRutiZaDatum
  30622.     @Sifra_Pat smallint,
  30623.     @Datum smalldatetime
  30624.  AS
  30625.     delete From RutiZaDatum
  30626.     Where Sifra_Pat=@Sifra_Pat and Datum = @Datum    
  30627.     Return @@ERROR
  30628.  
  30629.  
  30630.  
  30631.  
  30632.  
  30633.  
  30634.  
  30635.  
  30636.  
  30637. Go
  30638. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisamstemp]'))
  30639. drop procedure [dbo].[sp_brisisamstemp]
  30640.  
  30641. Go
  30642.  
  30643.  
  30644.  
  30645.  
  30646.  
  30647.  
  30648.  
  30649.  
  30650.  
  30651. create  PROCEDURE sp_BrisiSamsTemp    
  30652.             @Sifra_Kor varchar(20)            
  30653.             
  30654.             
  30655. as
  30656. delete from sams_temp where Sifra_kor = @Sifra_Kor
  30657.  
  30658.  
  30659.  
  30660.  
  30661.  
  30662.  
  30663.  
  30664.  
  30665.  
  30666.  
  30667.  
  30668.  
  30669.  
  30670.  
  30671.  
  30672.  
  30673.  
  30674.  
  30675. Go
  30676. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiscanlista]'))
  30677. drop procedure [dbo].[sp_brisiscanlista]
  30678.  
  30679. Go
  30680. CREATE PROCEDURE sp_BrisiScanLista
  30681.     @Sifra_Oe    smallint,
  30682.     @Tip_Lista    smallint,
  30683.     @Broj_Lista    int 
  30684. AS
  30685. DELETE FROM ScanLista WHERE Sifra_OE=@Sifra_OE AND Tip_Lista=@Tip_Lista AND Broj_Lista=@Broj_Lista
  30686.  
  30687.  
  30688.  
  30689. Go
  30690. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisgrart]'))
  30691. drop procedure [dbo].[sp_brisisgrart]
  30692.  
  30693. Go
  30694.  
  30695. create  procedure SP_BrisiSGrArt
  30696.     @Sif_GrArt nvarchar(20)
  30697. As
  30698.    Delete from SGrArt
  30699.     where Sif_GrArt=@Sif_GrArt
  30700.  
  30701.  
  30702.  
  30703. Go
  30704. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisgrkup]'))
  30705. drop procedure [dbo].[sp_brisisgrkup]
  30706.  
  30707. Go
  30708. CREATE procedure SP_BrisiSGrKup
  30709.     @Sif_GrKup nvarchar(20)
  30710. As
  30711.    Delete from SGrKup
  30712.     where Sif_GrKup=@Sif_GrKup
  30713.  
  30714.  
  30715. Go
  30716. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisgrorg]'))
  30717. drop procedure [dbo].[sp_brisisgrorg]
  30718.  
  30719. Go
  30720.  
  30721. CREATE PROCEDURE sp_BrisiSGrOrg
  30722.    @Sif_GrOrg Char (6)
  30723. AS
  30724.    DELETE FROM [SGrOrg]   WHERE [Sif_GrOrg]=@Sif_GrOrg 
  30725.  RETURN @@ERROR
  30726.  
  30727.  
  30728.  
  30729. Go
  30730. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisgrpat]'))
  30731. drop procedure [dbo].[sp_brisisgrpat]
  30732.  
  30733. Go
  30734. CREATE PROCEDURE sp_BrisiSGrPat
  30735.     @Sif_GrPat Char (6)
  30736. AS
  30737.     DELETE FROM SGrPat  
  30738.     WHERE Sif_GrPat=@Sif_GrPat
  30739.     RETURN @@ERROR
  30740.  
  30741.  
  30742. Go
  30743. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisifkupart]'))
  30744. drop procedure [dbo].[sp_brisisifkupart]
  30745.  
  30746. Go
  30747.  
  30748. CREATE  PROCEDURE sp_BrisiSifKupArt
  30749.     @Sifra_Kup    char(6)
  30750. AS
  30751.     Delete from SifKupArt Where Sifra_Kup = @Sifra_Kup
  30752.  
  30753.  
  30754.  
  30755. Go
  30756. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisiteprivorgtip]'))
  30757. drop procedure [dbo].[sp_brisisiteprivorgtip]
  30758.  
  30759. Go
  30760.  
  30761. CREATE PROCEDURE sp_BrisiSitePrivOrgTip
  30762.     @Sifra_GrKor    varchar(20)
  30763.  AS
  30764.     DELETE FROM PrivilOrgTip WHERE Sifra_GrKOr = @Sifra_GrKor
  30765. RETURN @@ERROR
  30766.  
  30767.  
  30768.  
  30769. Go
  30770. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisismeni]'))
  30771. drop procedure [dbo].[sp_brisismeni]
  30772.  
  30773. Go
  30774.  
  30775. CREATE PROCEDURE sp_BrisiSmeni
  30776.     @Sifra_Smena    smallint
  30777. AS
  30778.     Delete from Smeni    
  30779.     Where Sifra_Smena=@Sifra_Smena
  30780.     Return @@Error
  30781.  
  30782.  
  30783.  
  30784. Go
  30785. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisoart_sap]'))
  30786. drop procedure [dbo].[sp_brisisoart_sap]
  30787.  
  30788. Go
  30789.  
  30790. CREATE     PROCEDURE sp_BrisiSoart_SAP
  30791. AS
  30792. DELETE FROM Soart
  30793. RETURN @@ERROR
  30794.  
  30795.  
  30796.  
  30797.  
  30798. Go
  30799. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisostav]'))
  30800. drop procedure [dbo].[sp_brisisostav]
  30801.  
  30802. Go
  30803.  
  30804. CREATE PROCEDURE  sp_BrisiSostav
  30805.     @Sifra_Art  varchar(20)
  30806. AS
  30807.     DECLARE @Greska Int
  30808.     DELETE FROM Sostav  WHERE Sifra_Art = @Sifra_Art
  30809. --   IF @@ERROR=0 AND @@ROWCOUNT=0
  30810. --      RETURN 77000
  30811. --   ELSE
  30812.       RETURN @@ERROR
  30813.  
  30814.  
  30815.  
  30816. Go
  30817. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisostavkontr]'))
  30818. drop procedure [dbo].[sp_brisisostavkontr]
  30819.  
  30820. Go
  30821.  
  30822.  
  30823. CREATE  PROCEDURE sp_BrisiSostavKontr
  30824.     @Sifra_Art   varchar(20),
  30825.     @KontrSer    varchar(25)
  30826.  AS
  30827.     DELETE FROM SostavKontr WHERE Sifra_Art=@Sifra_Art AND KontrSer=@KontrSer
  30828. RETURN @@ERROR
  30829.  
  30830.  
  30831.  
  30832. Go
  30833. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisisostboivelstavki]'))
  30834. drop procedure [dbo].[sp_brisisostboivelstavki]
  30835.  
  30836. Go
  30837.  
  30838.  
  30839.  
  30840. create  PROCEDURE  [dbo].[sp_BrisiSostBoiVelStavki]
  30841.     @Sifra_Boja    smallint,
  30842.     @Sifra_Art  varchar(20)
  30843. AS
  30844.     DELETE FROM SostavBoiVel WHERE Sifra_Boja=@Sifra_Boja AND Sifra_Art = @Sifra_Art
  30845.     RETURN @@ERROR
  30846.  
  30847.  
  30848.  
  30849.  
  30850.  
  30851.  
  30852.  
  30853. Go
  30854. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisispecanfin]'))
  30855. drop procedure [dbo].[sp_brisispecanfin]
  30856.  
  30857. Go
  30858.  
  30859. CREATE    PROCEDURE sp_BrisiSpecAnFin
  30860.     @Broj_SpecFin int
  30861. AS
  30862.     DELETE FROM SpecAnFin WHERE  Broj_SpecFin=@Broj_SpecFin
  30863. SET QUOTED_IDENTIFIER OFF 
  30864.  
  30865.  
  30866.  
  30867. Go
  30868. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistaambal]'))
  30869. drop procedure [dbo].[sp_brisistaambal]
  30870.  
  30871. Go
  30872. CREATE PROCEDURE sp_BrisiStaAmbal
  30873.     @DokrID    int
  30874. AS
  30875.     Delete From StaAmbal
  30876.     Where DokrID=@DokrID
  30877.     Return @@ERROR
  30878.  
  30879.  
  30880. Go
  30881. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistadogan]'))
  30882. drop procedure [dbo].[sp_brisistadogan]
  30883.  
  30884. Go
  30885. CREATE  PROCEDURE Sp_BrisiStaDogAn
  30886.     @Sifra_Oe_Vlez        smallint,
  30887.     @Sifra_Dok_Vlez    smallint,
  30888.     @Broj_Dok_Vlez    int,
  30889.     @Rbr_Kart        int,
  30890.     @Sifra_Art        varchar(20)
  30891. AS
  30892.     Delete From StaDogAn 
  30893.     Where Sifra_Oe_Vlez=@Sifra_Oe_Vlez And Sifra_Dok_Vlez=@Sifra_Dok_Vlez 
  30894.         And Broj_Dok_Vlez=@Broj_Dok_Vlez And Rbr_Kart=@Rbr_Kart And Sifra_Art=@Sifra_Art
  30895.     Return @@ERROR
  30896.  
  30897.  
  30898.  
  30899. Go
  30900. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistadokrodobr]'))
  30901. drop procedure [dbo].[sp_brisistadokrodobr]
  30902.  
  30903. Go
  30904.  
  30905.  
  30906. create   PROCEDURE sp_BrisiStaDokrOdobr
  30907.     @Sifra_Oe    smallint,
  30908.     @Sifra_Dok    smallint,
  30909.     @Broj_Dok    int
  30910. AS
  30911.     Delete From StaDokrOdobr
  30912.     Where Sifra_Oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok and Broj_Dok = @Broj_Dok
  30913.     Return @@ERROR
  30914.  
  30915.  
  30916.  
  30917. Go
  30918. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistanarac]'))
  30919. drop procedure [dbo].[sp_brisistanarac]
  30920.  
  30921. Go
  30922.  
  30923. CREATE PROCEDURE sp_BrisiStaNarac
  30924.     @Sifra_OE Smallint,
  30925.     @Sifra_Nar Smallint,
  30926.     @Broj_Nar Int
  30927. AS
  30928.     DELETE FROM [StaNarac]
  30929.     WHERE Sifra_OE=@Sifra_OE And Sifra_Nar=@Sifra_Nar And Broj_Nar=@Broj_Nar
  30930. RETURN @@Error
  30931.  
  30932.  
  30933.  
  30934. Go
  30935. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistanaracreal]'))
  30936. drop procedure [dbo].[sp_brisistanaracreal]
  30937.  
  30938. Go
  30939.  
  30940. CREATE  PROCEDURE sp_BrisiStaNaracReal
  30941.     @NarId        int,
  30942.     @Sifra_Art    varchar(20)=NULL
  30943. AS
  30944. IF @Sifra_Art IS NULL
  30945.     Delete From StaNaracReal Where NarId=@NarID 
  30946. ELSE
  30947.     Delete From StaNaracReal 
  30948.     Where NarId=@NarID And Sifra_Art=@Sifra_Art
  30949.  
  30950.     Return @@ERROR
  30951.  
  30952.  
  30953.  
  30954.  
  30955. Go
  30956. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistanaracreal_podokrid]'))
  30957. drop procedure [dbo].[sp_brisistanaracreal_podokrid]
  30958.  
  30959. Go
  30960.  
  30961. CREATE PROCEDURE sp_BrisiStaNaracReal_PoDokrId
  30962.     @DokrId    int
  30963. AS
  30964.     Delete From StaNaracReal
  30965.     Where DokrId = @DokrId
  30966.     RETURN @@ERROR
  30967.  
  30968.  
  30969.  
  30970. Go
  30971. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistanaracrealponaridotkaz]'))
  30972. drop procedure [dbo].[sp_brisistanaracrealponaridotkaz]
  30973.  
  30974. Go
  30975.  
  30976.  
  30977. CREATE   PROCEDURE sp_BrisiStaNaracRealPoNarIDOtkaz
  30978.     @NarIdOtkaz        int
  30979. AS
  30980.     Delete From StaNaracReal Where NarIdOtkaz=@NarIDOtkaz
  30981.     Return @@ERROR
  30982.  
  30983.  
  30984.  
  30985.  
  30986.  
  30987. Go
  30988. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistanereal_podokrid]'))
  30989. drop procedure [dbo].[sp_brisistanereal_podokrid]
  30990.  
  30991. Go
  30992.  
  30993. CREATE          PROCEDURE sp_BrisiStaNeReal_PoDokrId
  30994.     @DokrId    int
  30995. AS
  30996.     Delete From StaNeReal
  30997.     Where DokrId = @DokrId
  30998.     RETURN @@ERROR
  30999.  
  31000.  
  31001.  
  31002. Go
  31003. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistanereal_ponarid]'))
  31004. drop procedure [dbo].[sp_brisistanereal_ponarid]
  31005.  
  31006. Go
  31007.  
  31008. CREATE          PROCEDURE sp_BrisiStaNeReal_PoNarId
  31009.     @NarId        int
  31010. AS
  31011.     Delete From StaNeReal
  31012.     Where NarId = @NarId
  31013.     RETURN @@ERROR
  31014.  
  31015.  
  31016.  
  31017. Go
  31018. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistaodobr]'))
  31019. drop procedure [dbo].[sp_brisistaodobr]
  31020.  
  31021. Go
  31022. CREATE      PROCEDURE sp_BrisiStaOdobr
  31023.    @AnID_Odob Integer
  31024. AS
  31025.     DELETE StaOdobr  WHERE AnID_Odob=@AnID_Odob
  31026.  
  31027.  
  31028.  
  31029. Go
  31030. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistaprodmest]'))
  31031. drop procedure [dbo].[sp_brisistaprodmest]
  31032.  
  31033. Go
  31034. CREATE PROCEDURE sp_BrisiStaProdMest
  31035.     @Broj_Dok Int
  31036. AS
  31037.     DELETE FROM [StaProdMest]
  31038.     WHERE  Broj_Dok=@Broj_Dok
  31039. RETURN @@Error
  31040.  
  31041.  
  31042.  
  31043. Go
  31044. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistarabn_karakt]'))
  31045. drop procedure [dbo].[sp_brisistarabn_karakt]
  31046.  
  31047. Go
  31048. CREATE  PROCEDURE sp_BrisiStaRabN_Karakt
  31049.     @RabNalID    int
  31050. AS
  31051.     DELETE FROM StaRabN_Karakt
  31052.     WHERE RabNalID = @RabNalID
  31053.     RETURN @@ERROR
  31054.  
  31055.  
  31056.  
  31057. Go
  31058. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistarabnal]'))
  31059. drop procedure [dbo].[sp_brisistarabnal]
  31060.  
  31061. Go
  31062.  
  31063. CREATE PROCEDURE sp_BrisiStaRabNal
  31064.     @RabNalID    int
  31065. AS
  31066.     DELETE FROM StaRabNal
  31067.     WHERE RabNalID = @RabNalID
  31068.     RETURN @@ERROR
  31069.  
  31070.  
  31071.  
  31072. Go
  31073. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistarabnalvelicboja]'))
  31074. drop procedure [dbo].[sp_brisistarabnalvelicboja]
  31075.  
  31076. Go
  31077. CREATE PROCEDURE sp_BrisiStaRabNalVelicBoja
  31078.     @RabNalID    int
  31079. AS
  31080. DELETE FROM StaRabNalVelicBoja WHERE RabNalID=@RabNalID
  31081.  
  31082. Go
  31083. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistavosnsred]'))
  31084. drop procedure [dbo].[sp_brisistavosnsred]
  31085.  
  31086. Go
  31087.  
  31088. CREATE  PROCEDURE sp_BrisiStavOSnSred
  31089.     @StaOID        int
  31090.  AS
  31091.     Delete From StavOsnSred
  31092.     Where StaOID=@StaOID
  31093.     Return @@ERROR
  31094.  
  31095.  
  31096.  
  31097. Go
  31098. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistavosnsredsite]'))
  31099. drop procedure [dbo].[sp_brisistavosnsredsite]
  31100.  
  31101. Go
  31102. CREATE  PROCEDURE sp_BrisiStavOSnSredSite
  31103.     @DokOID        int
  31104.  AS
  31105.     Delete From StavOsnSred
  31106.     Where DokOID=@DokOID
  31107.     Return @@ERROR
  31108.  
  31109.  
  31110. Go
  31111. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistavr_1]'))
  31112. drop procedure [dbo].[sp_brisistavr_1]
  31113.  
  31114. Go
  31115.  
  31116. CREATE PROCEDURE sp_BrisiStavr_1
  31117.    @DokID int
  31118. AS
  31119. DELETE [Stavr]
  31120. WHERE DokID=@DokID
  31121. RETURN @@ERROR
  31122.  
  31123.  
  31124.  
  31125. Go
  31126. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisistavr_site]'))
  31127. drop procedure [dbo].[sp_brisistavr_site]
  31128.  
  31129. Go
  31130.  
  31131. CREATE    PROCEDURE sp_BrisiStavr_Site
  31132.    @Sifra_OE smallint,
  31133.    @Sifra_Dok smallint,
  31134.    @Broj_Dok int,
  31135.    @Sifra_Prim smallint,
  31136.    @ImaDodatna char(1)
  31137. AS
  31138. Declare @SSQL Varchar(1000)
  31139.     Set @SSQL = 'DELETE [Stavr]
  31140.         WHERE Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' AND 
  31141.           Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + ' AND 
  31142.           Broj_Dok=' + Cast(@Broj_Dok As Varchar(9)) + ' '
  31143.     If @Sifra_Prim Is Not Null
  31144.         Set @SSQL = @SSQL + ' AND Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  31145.     If @ImaDodatna Is Not Null
  31146.         Set @SSQL = @SSQL + 'AND ImaDodatna=''' + @ImaDodatna + ''' '
  31147.     Exec(@SSQL)
  31148. RETURN @@ERROR
  31149.  
  31150.  
  31151.  
  31152. Go
  31153. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitekstsmetki]'))
  31154. drop procedure [dbo].[sp_brisitekstsmetki]
  31155.  
  31156. Go
  31157.  
  31158. create  PROCEDURE  sp_BrisiTekstSmetki
  31159.     @Kade  varchar(10)
  31160.  
  31161. AS
  31162.  
  31163.     DELETE FROM TekstSmetki  WHERE Kade = @Kade
  31164.  
  31165.       RETURN @@ERROR
  31166.  
  31167.  
  31168.  
  31169.  
  31170. Go
  31171. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitipkarakt]'))
  31172. drop procedure [dbo].[sp_brisitipkarakt]
  31173.  
  31174. Go
  31175. CREATE PROCEDURE sp_BrisiTipKarakt
  31176.     @Sifra_7        SMALLINT
  31177. AS
  31178.     DELETE FROM TipKarakt
  31179.     WHERE Sifra_7 = @Sifra_7
  31180.  
  31181.  
  31182.  
  31183. Go
  31184. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitippercenvaziza]'))
  31185. drop procedure [dbo].[sp_brisitippercenvaziza]
  31186.  
  31187. Go
  31188. CREATE PROCEDURE sp_BrisiTipPerCenVaziZa
  31189.     @Sifra_TipC    smallint
  31190. AS
  31191.     DELETE FROM TipPerCenVaziZa   WHERE Sifra_TipC = @Sifra_TipC
  31192. RETURN @@ERROR
  31193.  
  31194.  
  31195.  
  31196. Go
  31197. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitmaneks]'))
  31198. drop procedure [dbo].[sp_brisitmaneks]
  31199.  
  31200. Go
  31201.  
  31202. CREATE   PROCEDURE sp_BrisiTmAneks
  31203.     @Sifra_Oe    smallint,
  31204.     @BrojBaranje    int,
  31205.     @BrojPrilog    int,
  31206.     @Sifra_Aneks    int
  31207. AS
  31208.     Delete From TmAneks
  31209.     Where Sifra_Oe = @Sifra_Oe AND  BrojBaranje = @BrojBaranje AND BrojPrilog = @BrojPrilog AND Sifra_Aneks = @Sifra_Aneks
  31210.  
  31211.  
  31212.  
  31213. Go
  31214. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitmbaranje]'))
  31215. drop procedure [dbo].[sp_brisitmbaranje]
  31216.  
  31217. Go
  31218. CREATE PROCEDURE sp_BrisiTmBaranje
  31219.     @Sifra_OE smallint,
  31220.     @BrojBaranje int
  31221. AS
  31222. DELETE FROM tmBaranje WHERE Sifra_Oe=@Sifra_Oe AND BrojBaranje=@BrojBaranje
  31223.  
  31224.  
  31225.  
  31226. Go
  31227. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitmsim]'))
  31228. drop procedure [dbo].[sp_brisitmsim]
  31229.  
  31230. Go
  31231.  
  31232. CREATE   PROCEDURE sp_BrisiTmSim
  31233.     @Sifra_OE smallint,
  31234.     @BrojBaranje int,
  31235.     @BrojPrilog int
  31236. AS
  31237. IF NOT EXISTS (SELECT * FROM tmAneks WHERE  Sifra_OE = @Sifra_OE AND BrojBaranje = @BrojBaranje AND BrojPrilog = @BrojPrilog)
  31238.     BEGIN
  31239.         DELETE FROM tmSim_opcusl WHERE  Sifra_OE = @Sifra_OE AND BrojBaranje = @BrojBaranje AND BrojPrilog = @BrojPrilog
  31240.         DELETE FROM TmSim WHERE Sifra_OE = @Sifra_OE AND BrojBaranje = @BrojBaranje AND BrojPrilog = @BrojPrilog
  31241.     END
  31242. RETURN @@ERROR
  31243.  
  31244.  
  31245.  
  31246. Go
  31247. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitmsim_opcusl]'))
  31248. drop procedure [dbo].[sp_brisitmsim_opcusl]
  31249.  
  31250. Go
  31251. CREATE   PROCEDURE sp_BrisiTmSim_OpcUsl
  31252.     @Sifra_OE     smallint,
  31253.     @BrojBaranje    int,
  31254.     @BrojPrilog    int
  31255. AS
  31256.     Delete From TmSim_OpcUsl 
  31257.     Where Sifra_OE=@Sifra_Oe And BrojBaranje=@BrojBaranje And BrojPrilog=@BrojPrilog
  31258.     RETURN @@ERROR
  31259.  
  31260.  
  31261. Go
  31262. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitmtarifmodel]'))
  31263. drop procedure [dbo].[sp_brisitmtarifmodel]
  31264.  
  31265. Go
  31266. CREATE  PROCEDURE sp_BrisiTmTarifModel
  31267.     @Sifra_TarifModel    smallint
  31268. AS
  31269.     DELETE FROM tmTarifModel WHERE Sifra_TarifModel=@Sifra_TarifModel
  31270.  
  31271.  
  31272.  
  31273. Go
  31274. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitmtel]'))
  31275. drop procedure [dbo].[sp_brisitmtel]
  31276.  
  31277. Go
  31278. CREATE  PROCEDURE sp_BrisiTmTel
  31279.     @Sifra_Tel    int
  31280. AS
  31281.     Delete From TmTel 
  31282.     Where Sifra_Tel=@Sifra_Tel
  31283.  
  31284.  
  31285.  
  31286. Go
  31287. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitmuslugi]'))
  31288. drop procedure [dbo].[sp_brisitmuslugi]
  31289.  
  31290. Go
  31291. CREATE PROCEDURE sp_BrisiTmUslugi
  31292.     @Sifra_TmUsl    smallint
  31293. AS
  31294.     Delete From TmUslugi 
  31295.     Where Sifra_TmUsl=@Sifra_TmUsl
  31296.  
  31297.  
  31298. Go
  31299. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitransnal]'))
  31300. drop procedure [dbo].[sp_brisitransnal]
  31301.  
  31302. Go
  31303. CREATE PROCEDURE sp_BrisiTransNal
  31304.     @Sifra_Oe    smallint, 
  31305.     @Broj_Trans    int
  31306. AS
  31307.     Delete From TransNal
  31308.     Where Sifra_Oe=@Sifra_Oe and Broj_Trans=@Broj_Trans
  31309.     Return @@ERROR
  31310.  
  31311.  
  31312.  
  31313. Go
  31314. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitransnalstav]'))
  31315. drop procedure [dbo].[sp_brisitransnalstav]
  31316.  
  31317. Go
  31318. CREATE PROCEDURE sp_BrisiTransNalStav
  31319.     @Sifra_Oe    smallint, 
  31320.     @Broj_Trans    int
  31321. AS
  31322.     Delete From TransNalStav
  31323.     Where Sifra_Oe=@Sifra_Oe And Broj_Trans=@Broj_Trans
  31324.     Return @@ERROR
  31325.  
  31326.  
  31327.  
  31328. Go
  31329. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisitrospatn]'))
  31330. drop procedure [dbo].[sp_brisitrospatn]
  31331.  
  31332. Go
  31333. CREATE PROCEDURE sp_BrisiTrosPatn
  31334.     @Sifra_Oe     smallint,
  31335.     @Datum_Od    smalldatetime,
  31336.     @Datum_Do    smalldatetime
  31337. AS
  31338.     Delete from TrosPatn
  31339.     Where Sifra_Oe = @Sifra_Oe and Datum_Dok>=@Datum_Od and Datum_Dok<=@Datum_Do
  31340.     Return @@ERROR
  31341.  
  31342.  
  31343.  
  31344. Go
  31345. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiusl_komerc_opsti]'))
  31346. drop procedure [dbo].[sp_brisiusl_komerc_opsti]
  31347.  
  31348. Go
  31349. CREATE PROCEDURE sp_BrisiUsl_Komerc_Opsti
  31350.     @VlIzl        char(1), 
  31351.     @Tip_Sif_Kup    char(1), 
  31352.     @Sif_Kup_Gen    varchar(11),
  31353.     @Tip_Sif_Art    char(1),
  31354.     @Sif_Art_Gen    varchar(20)
  31355. AS
  31356.     Delete From  Usl_Komerc_Opsti
  31357.     Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And Tip_Sif_Art=@Tip_Sif_Art And Sif_Art_Gen=@Sif_Art_Gen
  31358.     Return @@ERROR
  31359.  
  31360.  
  31361. Go
  31362. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiusl_komerc_per]'))
  31363. drop procedure [dbo].[sp_brisiusl_komerc_per]
  31364.  
  31365. Go
  31366.  
  31367. CREATE  PROCEDURE sp_BrisiUsl_Komerc_Per
  31368.     @VlIzl        char(1), 
  31369.     @Tip_Sif_Kup    char(1), 
  31370.     @Sif_Kup_Gen    varchar(11), 
  31371.     @Tip_Sif_Art    char(1), 
  31372.     @Sif_Art_Gen    varchar(20),
  31373.     @Datum_Od    smalldatetime,
  31374.     @Datum_Do    smalldatetime=Null
  31375. AS
  31376. IF @Datum_Do IS NULL
  31377.     Delete From Usl_Komerc_Per Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And
  31378.     Tip_Sif_Art=@Tip_Sif_Art AND Sif_Art_Gen=@Sif_Art_Gen And Datum_Od=@Datum_Od AND Datum_Do IS NULL
  31379. ELSE
  31380.     Delete From Usl_Komerc_Per Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And 
  31381.     Tip_Sif_Art=@Tip_Sif_Art AND Sif_Art_Gen=@Sif_Art_Gen And Datum_Od=@Datum_Od AND Datum_Do=@Datum_Do
  31382.     Return @@ERROR
  31383.  
  31384.  
  31385.  
  31386. Go
  31387. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiusl_komerc_per_rok]'))
  31388. drop procedure [dbo].[sp_brisiusl_komerc_per_rok]
  31389.  
  31390. Go
  31391.  
  31392. CREATE PROCEDURE sp_BrisiUsl_Komerc_Per_Rok
  31393.     @VlIzl        char(1), 
  31394.     @Tip_Sif_Kup    char(1), 
  31395.     @Sif_Kup_Gen    varchar(11), 
  31396.     @Tip_Sif_Art    char(1), 
  31397.     @Sif_Art_Gen    varchar(20),
  31398.     @Datum_Od    smalldatetime,
  31399.     @Datum_Do    smalldatetime = Null
  31400. AS
  31401. If @Datum_Do IS NULL
  31402.     Delete From Usl_Komerc_Per Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And 
  31403.     Tip_Sif_Art=@Tip_Sif_Art AND Sif_Art_Gen=@Sif_Art_Gen And Datum_Od=@Datum_Od AND Datum_Do IS NULL
  31404. ELSE
  31405.     Delete From Usl_Komerc_Per Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And 
  31406.     Tip_Sif_Art=@Tip_Sif_Art AND Sif_Art_Gen=@Sif_Art_Gen And Datum_Od=@Datum_Od AND Datum_Do=@Datum_Do
  31407. Return @@ERROR
  31408.  
  31409.  
  31410.  
  31411. Go
  31412. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisivelicskala]'))
  31413. drop procedure [dbo].[sp_brisivelicskala]
  31414.  
  31415. Go
  31416.  
  31417.  
  31418. CREATE  PROCEDURE sp_BrisiVelicSkala
  31419.     @Sifra_VelSkala varchar(20)
  31420. AS
  31421.     DELETE FROM VelicSkala   
  31422.     WHERE Sifra_VelSkala=@Sifra_VelSkala
  31423.      RETURN @@ERROR
  31424.  
  31425.  
  31426.  
  31427.  
  31428. Go
  31429. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisivelicskalastav]'))
  31430. drop procedure [dbo].[sp_brisivelicskalastav]
  31431.  
  31432. Go
  31433.  
  31434.  
  31435. CREATE  PROCEDURE sp_BrisiVelicSkalaStav
  31436.     @Sifra_VelSkala varchar(20)
  31437. AS
  31438.     DELETE FROM VelicSkalaStav
  31439.     WHERE Sifra_VelSkala=@Sifra_VelSkala
  31440.      RETURN @@ERROR
  31441.  
  31442.  
  31443.  
  31444.  
  31445. Go
  31446. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisivirmani]'))
  31447. drop procedure [dbo].[sp_brisivirmani]
  31448.  
  31449. Go
  31450. CREATE PROCEDURE sp_BrisiVirmani
  31451.     @VirID    Int
  31452. AS
  31453.     Delete From VirmanIzv Where VirID=@VirID
  31454.  
  31455.  
  31456. Go
  31457. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisivozila]'))
  31458. drop procedure [dbo].[sp_brisivozila]
  31459.  
  31460. Go
  31461. CREATE Procedure sp_BrisiVozila
  31462.     @Sifra_Art varchar(20)
  31463. As
  31464.     Delete From Vozila
  31465.     Where Sifra_Art=@Sifra_art
  31466.     Return @@error
  31467.  
  31468.  
  31469. Go
  31470. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisivozizjava]'))
  31471. drop procedure [dbo].[sp_brisivozizjava]
  31472.  
  31473. Go
  31474. CREATE procedure sp_BrisiVozIzjava
  31475.     @Sifra_Oe smallint,
  31476.     @Broj_izjava int
  31477. As
  31478.     delete from VozIzjava
  31479.     where Sifra_Oe=@Sifra_Oe and Broj_Izjava=@Broj_izjava  
  31480.  
  31481.  
  31482. Go
  31483. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwbn_tnar]'))
  31484. drop procedure [dbo].[sp_brisiwbn_tnar]
  31485.  
  31486. Go
  31487. CREATE PROCEDURE sp_BrisiWbn_TNar
  31488.     @Sifra_Oe Smallint,
  31489.     @Sifra_Nar Smallint,
  31490.     @Broj_Nar int
  31491. AS
  31492.     Delete From Wbn_TNar 
  31493.     where Sifra_Oe=@Sifra_Oe 
  31494.           and Sifra_Nar=@Sifra_Nar 
  31495.           and Broj_Nar=@Broj_Nar
  31496.  
  31497.  
  31498.  
  31499. Go
  31500. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwbn_tsnar]'))
  31501. drop procedure [dbo].[sp_brisiwbn_tsnar]
  31502.  
  31503. Go
  31504. CREATE PROCEDURE sp_BrisiWbn_TSNar
  31505.     @Sifra_Oe Smallint,
  31506.     @Sifra_Nar Smallint,
  31507.     @Broj_Nar int
  31508. AS
  31509.     Delete From Wbn_TSNar 
  31510.     where Sifra_Oe=@Sifra_Oe 
  31511.           and Sifra_Nar=@Sifra_Nar 
  31512.           and Broj_Nar=@Broj_Nar
  31513.  
  31514.  
  31515.  
  31516. Go
  31517. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmfxr]'))
  31518. drop procedure [dbo].[sp_brisiwhmfxr]
  31519.  
  31520. Go
  31521. CREATE PROCEDURE sp_BrisiWhmFXR
  31522.  
  31523.     @Sifra_Oe    smallint, 
  31524.     @FXR_ID    varchar(30)
  31525. AS
  31526.  
  31527.     Delete From WhmFXR 
  31528.     Where Sifra_Oe=@Sifra_Oe And FXR_ID=@FXR_ID
  31529.     Return @@ERROR
  31530.  
  31531. Go
  31532. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmlokacgrupi]'))
  31533. drop procedure [dbo].[sp_brisiwhmlokacgrupi]
  31534.  
  31535. Go
  31536.  
  31537. CREATE  procedure sp_BrisiWhmLokacGrupi
  31538.     @Sifra_Oe smallint,
  31539.     @Sifra_Gr char(3)
  31540. AS
  31541.     delete from  WhmLokacGrupi 
  31542.     Where Sifra_Oe=@Sifra_Oe and Sifra_Gr=@Sifra_Gr 
  31543.     return @@error
  31544.  
  31545.  
  31546.  
  31547. Go
  31548. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmlokacija]'))
  31549. drop procedure [dbo].[sp_brisiwhmlokacija]
  31550.  
  31551. Go
  31552.  
  31553. CREATE  PROCEDURE sp_BrisiWhmLokacija
  31554.  
  31555.     @Sifra_Oe        smallint,
  31556.     @Lokac_ID        varchar(30)
  31557. AS
  31558.  
  31559.     Delete From WhmLokacija 
  31560.     Where Sifra_Oe=@Sifra_Oe And Lokac_ID=@Lokac_ID
  31561.     Return @@ERROR
  31562.  
  31563.  
  31564. Go
  31565. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmlokackarakterist]'))
  31566. drop procedure [dbo].[sp_brisiwhmlokackarakterist]
  31567.  
  31568. Go
  31569. CREATE PROCEDURE sp_BrisiWhmLokacKarakterist
  31570.  
  31571.     @Sifra_Oe    smallint,
  31572.     @Sekc_ID    varchar(15) = Null,
  31573.     @Lokac_X    char(4) = Null,
  31574.     @Lokac_Y    char(4) = Null,
  31575.     @Lokac_Z    char(4) = Null,
  31576.     @Lokac_ID    varchar(30) = Null,
  31577.     @FXR_ID    varchar(30) = Null, 
  31578.     @Sifra_Karakt    smallint
  31579.  
  31580. AS
  31581.     Declare @SSQL as varchar(8000)
  31582.  
  31583.     Set @SSQL = ' Delete From WhmLokacKarakterist
  31584.             Where Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' And Sifra_Karakt = ' + Cast(@Sifra_Karakt as varchar(6)) + ' '
  31585.  
  31586.     If @Sekc_ID Is Not Null
  31587.         Set @SSQL = @SSQL + ' And Sekc_ID = ' + @Sekc_ID + ' '
  31588.     Else 
  31589.         Set @SSQL = @SSQL + ' And Sekc_ID Is Null '
  31590.  
  31591.     If @Lokac_X Is Not Null
  31592.         Set @SSQL = @SSQL + ' And Lokac_X = ' + @Lokac_X + ' '
  31593.     Else 
  31594.         Set @SSQL = @SSQL + ' And Lokac_X Is Null '
  31595.  
  31596.     If @Lokac_Y Is Not Null
  31597.         Set @SSQL = @SSQL + ' And Lokac_Y = ' + @Lokac_Y + ' '
  31598.     Else 
  31599.         Set @SSQL = @SSQL + ' And Lokac_Y Is Null '
  31600.  
  31601.     If @Lokac_Z Is Not Null
  31602.         Set @SSQL = @SSQL + ' And Lokac_Z = ' + @Lokac_Z + ' '
  31603.     Else 
  31604.         Set @SSQL = @SSQL + ' And Lokac_Z Is Null '
  31605.  
  31606.     If @Lokac_ID Is Not Null
  31607.         Set @SSQL = @SSQL + ' And Lokac_ID = ' + @Lokac_ID + ' '
  31608.     Else 
  31609.         Set @SSQL = @SSQL + ' And Lokac_ID Is Null '
  31610.  
  31611.     If @FXR_ID Is Not Null
  31612.         Set @SSQL = @SSQL + ' And FXR_ID = ' + @FXR_ID + ' '
  31613.     Else 
  31614.         Set @SSQL = @SSQL + ' And FXR_ID Is Null '
  31615.     
  31616.     Exec(@SSQL)
  31617.  
  31618. Go
  31619. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmlokackatstatus]'))
  31620. drop procedure [dbo].[sp_brisiwhmlokackatstatus]
  31621.  
  31622. Go
  31623. CREATE PROCEDURE sp_BrisiWhmLokacKatStatus
  31624.  
  31625.     @Sifra_Oe        smallint, 
  31626.     @Sekc_ID        varchar(15) = Null,
  31627.     @Lokac_X        char(4) = Null,
  31628.     @Lokac_Y        char(4) = Null,
  31629.     @Lokac_Z        char(4) = Null,
  31630.     @Lokac_ID        varchar(30) = Null,
  31631.     @FXR_ID        varchar(30) = Null,
  31632.     @Sifra_KatStatus    smallint
  31633. AS
  31634.     Declare @SSQL as varchar(8000)
  31635.  
  31636.     Set @SSQL = ' Delete From WhmLokacKatStatus
  31637.             Where Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' And Sifra_KatStatus = ' + Cast(@Sifra_KatStatus as varchar(6)) + ' '
  31638.  
  31639.     If @Sekc_ID Is Not Null
  31640.         Set @SSQL = @SSQL + ' And Sekc_ID = ' + @Sekc_ID + ' '
  31641.     Else 
  31642.         Set @SSQL = @SSQL + ' And Sekc_ID Is Null '
  31643.  
  31644.     If @Lokac_X Is Not Null
  31645.         Set @SSQL = @SSQL + ' And Lokac_X = ' + @Lokac_X + ' '
  31646.     Else 
  31647.         Set @SSQL = @SSQL + ' And Lokac_X Is Null '
  31648.  
  31649.     If @Lokac_Y Is Not Null
  31650.         Set @SSQL = @SSQL + ' And Lokac_Y = ' + @Lokac_Y + ' '
  31651.     Else 
  31652.         Set @SSQL = @SSQL + ' And Lokac_Y Is Null '
  31653.  
  31654.     If @Lokac_Z Is Not Null
  31655.         Set @SSQL = @SSQL + ' And Lokac_Z = ' + @Lokac_Z + ' '
  31656.     Else 
  31657.         Set @SSQL = @SSQL + ' And Lokac_Z Is Null '
  31658.  
  31659.     If @Lokac_ID Is Not Null
  31660.         Set @SSQL = @SSQL + ' And Lokac_ID = ' + @Lokac_ID + ' '
  31661.     Else 
  31662.         Set @SSQL = @SSQL + ' And Lokac_ID Is Null '
  31663.  
  31664.     If @FXR_ID Is Not Null
  31665.         Set @SSQL = @SSQL + ' And FXR_ID = ' + @FXR_ID + ' '
  31666.     Else 
  31667.         Set @SSQL = @SSQL + ' And FXR_ID Is Null '
  31668.     
  31669.     Exec(@SSQL)
  31670.  
  31671. Go
  31672. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmmvc]'))
  31673. drop procedure [dbo].[sp_brisiwhmmvc]
  31674.  
  31675. Go
  31676. CREATE PROCEDURE sp_BrisiWhmMVC
  31677.  
  31678.     @MVC_ID        int
  31679. AS
  31680.     Delete From WhmMVC 
  31681.     Where MVC_ID=@MVC_ID
  31682.     Return @@ERROR
  31683.  
  31684. Go
  31685. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmprivoper]'))
  31686. drop procedure [dbo].[sp_brisiwhmprivoper]
  31687.  
  31688. Go
  31689. CREATE PROCEDURE sp_BrisiWhmPrivOper
  31690.  
  31691.     @Sifra_Oper        smallint,
  31692.     @Sifra_Oe_WHM    smallint
  31693. AS
  31694.  
  31695.     Delete From WhmPrivOper 
  31696.     Where Sifra_Oper=@Sifra_Oper And Sifra_Oe_WHM=@Sifra_Oe_WHM
  31697.     Return @@ERROR
  31698.  
  31699. Go
  31700. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisiwhmsekcija]'))
  31701. drop procedure [dbo].[sp_brisiwhmsekcija]
  31702.  
  31703. Go
  31704. CREATE PROCEDURE sp_BrisiWhmSekcija
  31705.  
  31706.     @Sifra_Oe        smallint,
  31707.     @Sekc_ID        varchar(15)
  31708. AS
  31709.  
  31710.     Delete From WhmSekcija 
  31711.     Where Sifra_Oe=@Sifra_Oe And Sekc_ID=@Sekc_ID
  31712.     Return @@ERROR
  31713.  
  31714. Go
  31715. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfaktnapraveno]'))
  31716. drop procedure [dbo].[sp_brisixfaktnapraveno]
  31717.  
  31718. Go
  31719. CREATE PROCEDURE sp_BrisiXFAktNapraveno
  31720.        @Broj_Napraveno int
  31721. AS
  31722.   DELETE FROM XFAktNapraveno WHERE Broj_Napraveno = @Broj_Napraveno
  31723.  
  31724.  
  31725.  
  31726. Go
  31727. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfaktnapravenosta]'))
  31728. drop procedure [dbo].[sp_brisixfaktnapravenosta]
  31729.  
  31730. Go
  31731.  
  31732.  
  31733. create  PROCEDURE sp_BrisiXFAktNapravenoSta
  31734.     @Broj_Napraveno int
  31735. AS
  31736.     DELETE FROM XFAktNapravenoSta
  31737.     WHERE Broj_Napraveno = @Broj_Napraveno
  31738.  
  31739.  
  31740.  
  31741. Go
  31742. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfbaranje]'))
  31743. drop procedure [dbo].[sp_brisixfbaranje]
  31744.  
  31745. Go
  31746. CREATE PROCEDURE sp_BrisiXFBaranje
  31747.     @Broj_Baranje int
  31748. AS
  31749.     DELETE FROM XFBaranje
  31750.     WHERE Broj_Baranje = @Broj_Baranje
  31751.  
  31752.  
  31753.  
  31754. Go
  31755. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfbaranjefile]'))
  31756. drop procedure [dbo].[sp_brisixfbaranjefile]
  31757.  
  31758. Go
  31759.  
  31760.  
  31761. CREATE PROCEDURE sp_BrisiXFBaranjeFile
  31762.     @FileID int
  31763. AS
  31764.     Delete from XFBaranjeFile 
  31765.     Where FileID = @FileID
  31766.  
  31767.  
  31768.  
  31769. Go
  31770. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfbaranjesta]'))
  31771. drop procedure [dbo].[sp_brisixfbaranjesta]
  31772.  
  31773. Go
  31774.  
  31775. create PROCEDURE sp_BrisiXFBaranjeSta
  31776.     @Broj_Baranje int
  31777. AS
  31778.     DELETE FROM XFBaranjeSta
  31779.     WHERE Broj_Baranje = @Broj_Baranje
  31780.  
  31781.  
  31782.  
  31783. Go
  31784. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfbaranjestaizvrs]'))
  31785. drop procedure [dbo].[sp_brisixfbaranjestaizvrs]
  31786.  
  31787. Go
  31788. create PROCEDURE sp_BrisiXFBaranjeStaIzvrs
  31789.     @Broj_Baranje int
  31790. AS
  31791.     DELETE FROM XFBaranjeStaIzvrs
  31792.     WHERE Broj_Baranje = @Broj_Baranje
  31793.  
  31794.  
  31795. Go
  31796. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfizvrsitel]'))
  31797. drop procedure [dbo].[sp_brisixfizvrsitel]
  31798.  
  31799. Go
  31800. CREATE PROCEDURE sp_BrisiXFIzvrsitel
  31801.     @Sifra_Izvrs    int
  31802. AS
  31803.     DELETE FROM XFIzvrsitel
  31804.     WHERE Sifra_Izvrs = @Sifra_Izvrs
  31805.  
  31806.  
  31807.  
  31808. Go
  31809. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfnapraveno]'))
  31810. drop procedure [dbo].[sp_brisixfnapraveno]
  31811.  
  31812. Go
  31813. CREATE PROCEDURE sp_BrisiXFNapraveno
  31814.     @Sifra_Napraveno    smallint
  31815. AS
  31816.     DELETE FROM XFNapraveno
  31817.     WHERE Sifra_Napraveno = @Sifra_Napraveno
  31818.  
  31819.  
  31820.  
  31821. Go
  31822. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfoblast]'))
  31823. drop procedure [dbo].[sp_brisixfoblast]
  31824.  
  31825. Go
  31826. CREATE PROCEDURE sp_BrisiXFOblast
  31827.     @Sifra_Oblast    smallint
  31828. AS
  31829.     DELETE FROM XFOblast
  31830.     WHERE Sifra_Oblast = @Sifra_Oblast
  31831.  
  31832.  
  31833.  
  31834. Go
  31835. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfoddel]'))
  31836. drop procedure [dbo].[sp_brisixfoddel]
  31837.  
  31838. Go
  31839. CREATE PROCEDURE sp_BrisiXFOddel
  31840.     @Sifra_Oddel    smallint
  31841. AS
  31842.     DELETE FROM XFOddel
  31843.     WHERE Sifra_Oddel = @Sifra_Oddel
  31844.  
  31845.  
  31846.  
  31847. Go
  31848. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfpredmet]'))
  31849. drop procedure [dbo].[sp_brisixfpredmet]
  31850.  
  31851. Go
  31852. CREATE PROCEDURE sp_BrisiXFPredmet
  31853.        @Broj_Predmet INT
  31854. AS
  31855.   DELETE FROM XFPredmet WHERE Broj_Predmet = @Broj_Predmet
  31856.  
  31857.  
  31858.  
  31859. Go
  31860. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfslednobaranje]'))
  31861. drop procedure [dbo].[sp_brisixfslednobaranje]
  31862.  
  31863. Go
  31864. CREATE PROCEDURE sp_BrisiXFSlednoBaranje
  31865.     @Sifra_VidBaranje        smallint
  31866. AS
  31867.     Delete From XFSlednoBaranje 
  31868.     Where Sifra_VidBaranje=@Sifra_VidBaranje
  31869.  
  31870.  
  31871. Go
  31872. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfstatusbaranje]'))
  31873. drop procedure [dbo].[sp_brisixfstatusbaranje]
  31874.  
  31875. Go
  31876. CREATE PROCEDURE sp_BrisiXFStatusBaranje
  31877.     @Sifra_StatusBaranje    smallint
  31878. AS
  31879.     DELETE FROM XFStatusBaranje
  31880.     WHERE Sifra_StatusBaranje = @Sifra_StatusBaranje
  31881.  
  31882.  
  31883.  
  31884. Go
  31885. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfstatuspredmet]'))
  31886. drop procedure [dbo].[sp_brisixfstatuspredmet]
  31887.  
  31888. Go
  31889. CREATE PROCEDURE sp_BrisiXFStatusPredmet
  31890.     @Sifra_StatusPredmet    smallint
  31891. AS
  31892.     DELETE FROM XFStatusPredmet
  31893.     WHERE Sifra_StatusPredmet = @Sifra_StatusPredmet
  31894.  
  31895.  
  31896.  
  31897. Go
  31898. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixftippredmet]'))
  31899. drop procedure [dbo].[sp_brisixftippredmet]
  31900.  
  31901. Go
  31902. CREATE PROCEDURE sp_BrisiXFTipPredmet
  31903.     @Sifra_TipPredmet    smallint
  31904. AS
  31905.     DELETE FROM XFTipPredmet
  31906.     WHERE Sifra_TipPredmet = @Sifra_TipPredmet
  31907.  
  31908.  
  31909.  
  31910. Go
  31911. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfvidbaranje]'))
  31912. drop procedure [dbo].[sp_brisixfvidbaranje]
  31913.  
  31914. Go
  31915. CREATE PROCEDURE sp_BrisiXFVidBaranje
  31916.     @Sifra_VidBaranje    smallint
  31917. AS
  31918.     DELETE FROM XFVidBaranje
  31919.     WHERE Sifra_VidBaranje = @Sifra_VidBaranje
  31920.  
  31921.  
  31922.  
  31923. Go
  31924. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfvidbarizvrs]'))
  31925. drop procedure [dbo].[sp_brisixfvidbarizvrs]
  31926.  
  31927. Go
  31928. CREATE PROCEDURE sp_BrisiXFVidBarIzvrs
  31929.     @Sifra_VidBaranje    smallint
  31930. AS
  31931.     Delete From XFVidBarIzvrs
  31932.     Where Sifra_VidBaranje=@Sifra_VidBaranje
  31933.  
  31934.  
  31935. Go
  31936. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisixfvraboddel]'))
  31937. drop procedure [dbo].[sp_brisixfvraboddel]
  31938.  
  31939. Go
  31940. CREATE PROCEDURE sp_BrisiXFVrabOddel
  31941.     @Sifra_Izvrs    int
  31942. --    @Sifra_Oddel    smallint
  31943. AS
  31944.     DELETE FROM XFVrabOddel
  31945.     WHERE Sifra_Izvrs = @Sifra_Izvrs --AND Sifra_Oddel = @Sifra_Oddel
  31946.  
  31947.  
  31948. Go
  31949. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisizatv]'))
  31950. drop procedure [dbo].[sp_brisizatv]
  31951.  
  31952. Go
  31953.  
  31954. CREATE  PROCEDURE sp_BrisiZatv
  31955.    @AnID int
  31956. AS
  31957. DELETE [AnZatv]
  31958. WHERE AnID1=@AnID OR AnID2=@AnID
  31959. RETURN @@ERROR
  31960.  
  31961.  
  31962.  
  31963. Go
  31964. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brisizatv_sap]'))
  31965. drop procedure [dbo].[sp_brisizatv_sap]
  31966.  
  31967. Go
  31968.  
  31969. CREATE  PROCEDURE sp_BrisiZatv_SAP
  31970.   
  31971. AS
  31972. DELETE from [AnZatv]
  31973. RETURN @@ERROR
  31974.  
  31975.  
  31976.  
  31977.  
  31978. Go
  31979. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brnaraczakup]'))
  31980. drop procedure [dbo].[sp_brnaraczakup]
  31981.  
  31982. Go
  31983. CREATE PROCEDURE sp_BrNaracZaKup
  31984.     @Sifra_Kup    Char(6),
  31985.     @Sifra_Obj    smallint = NULL,
  31986.     @Datum    SmallDateTime,
  31987.     @Sifra_Nar    smallint,
  31988.     @Broj_Narac    smallint OUTPUT
  31989. AS
  31990. If @Sifra_Obj IS NULL
  31991.     SELECT @Broj_Narac = COUNT(*) FROM Naracki 
  31992.     WHERE Sifra_Kup = @Sifra_Kup AND Datum_Nar = @Datum AND Sifra_Nar = @Sifra_Nar
  31993. Else
  31994.     SELECT @Broj_Narac = COUNT(*) FROM Naracki 
  31995.     WHERE Sifra_Kup = @Sifra_Kup AND Sifra_Obj = @Sifra_Obj AND Datum_Nar = @Datum AND Sifra_Nar = @Sifra_Nar
  31996.  
  31997.  
  31998.  
  31999. Go
  32000. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brojnostpopodelbanakup]'))
  32001. drop procedure [dbo].[sp_brojnostpopodelbanakup]
  32002.  
  32003. Go
  32004.  
  32005.  
  32006. CREATE                 PROCEDURE sp_BrojnostPoPodelbaNaKup
  32007.     @Sifra_Pat Smallint = Null, 
  32008.     @KoiPat Varchar(1500) = Null,
  32009.     @Pod1 Smallint = Null,
  32010.     @Pod2 Smallint = Null,
  32011.     @Pod3 Smallint = Null,
  32012.     @Pod4 Smallint = Null,
  32013.     @Pod5 Smallint = Null,
  32014.     @Pod6 Smallint = Null,
  32015.     @Pod7 Smallint = Null,
  32016.     @KFPod1 Char(1) = Null,
  32017.     @KFPod2 Char(1) = Null,
  32018.     @KFPod3 Char(1) = Null,
  32019.     @KFPod4 Char(1) = Null,
  32020.     @KFPod5 Char(1) = Null,
  32021.     @KFPod6 Char(1) = Null,
  32022.     @KFPod7 Char(1) = Null,
  32023.     @Sifra_Tip Smallint = Null,
  32024.     @Koi_Gradovi varchar(200) = Null,
  32025.     @Koi_Regioni varchar(200) = Null,
  32026.     @TipKup Varchar(200) = Null,
  32027.     @Sifra_Nivo char(2) = Null,
  32028.     @Sifra_Kup_Od Char(6) = Null,
  32029.     @Sifra_Kup_Do Char(6) = Null,
  32030.     @Podred Char(1) = Null,
  32031.     @Komint_KObj Char(1) = Null,
  32032.     @PoRedovi    char(2) = Null,    -- D1 - KDrugo1,    D2 - KDrugo2,     D3 - KDrugo3,     D4 - KDrugo4,    D5 - KDrugo5,    D6 - KDrugo6,    D7 - KDrugo7,
  32033.     @PoKoloni    char(2) = Null,     -- GR - Grad,    RE - Region,    TK - TipKup,    NI - Nivo,    ST - TipKomint,         PT - Patnik Tekoven,     VP - Vid na prodazen objekt
  32034.     @PoRegGrPat    char(1) = 'N',    --  D - Vraka gradovi, regioni, komercijalisti            N - Ne vraka gradovi, regioni, komercijalisti 
  32035.     @Sifra_VPJ    smallint = Null,
  32036.     @BrKoloni     int OUTPUT,
  32037.     @GrKup     varchar(500) = Null
  32038. AS
  32039.     Set Nocount On
  32040.     Declare @SSQL Varchar(8000)
  32041.     Declare @SSQLUsl Varchar(8000)
  32042.     Set @SSQLUsl = ' '
  32043.     Create Table #Rezultati
  32044.     (
  32045.     SifraR        Varchar(10),
  32046.     ImeR        Varchar(40),
  32047.     SifraK        Varchar(10),
  32048.     ImeK        Varchar(40),
  32049.     Brojnost        decimal(18,6),
  32050.     ProcR        decimal(18,6),
  32051.     ProcK        decimal(18,6),
  32052.     ProcVK        decimal(18,6),
  32053.     Sifra_Reg    smallint,
  32054.     Sifra_Grad    smallint,
  32055.     Sifra_Pat    smallint
  32056.     )
  32057. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32058.     If @PoRedovi = 'D1' 
  32059.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.KDrugo1 Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End) as SifraR, K1.Ime_1K as ImeR, '
  32060.     If @PoRedovi = 'D2' 
  32061.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.KDrugo2 Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End) as SifraR, K2.Ime_2K as ImeR, '
  32062.     If @PoRedovi = 'D3' 
  32063.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.KDrugo3 Is Not Null Then KO.KDrugo3 Else Kup.KDrugo3 End) as SifraR, K3.Ime_3K as ImeR, '
  32064.     If @PoRedovi = 'D4'
  32065.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.KDrugo4 Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End) as SifraR, K4.Ime_4K as ImeR, '
  32066.     If @PoRedovi = 'D5'
  32067.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.KDrugo5 Is Not Null Then KO.KDrugo5 Else Kup.KDrugo5 End) as SifraR, K5.Ime_5K as ImeR, '
  32068.     If @PoRedovi = 'D6'
  32069.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.KDrugo6 Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End) as SifraR, K6.Ime_6K as ImeR, '
  32070.     If @PoRedovi = 'D7'
  32071.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.KDrugo7 Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End) as SifraR, K7.Ime_7K as ImeR, '
  32072.     If @PoRedovi = 'GR'
  32073.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) as SifraR, GR.ImeGrad as ImeR, '
  32074.     If @PoRedovi = 'RE'
  32075.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.Sifra_Reg Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) as SifraR, RE.ImeRegion as ImeR, '
  32076.     If @PoRedovi = 'TK'
  32077.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.TipKup Is Not Null Then KO.TipKup Else Kup.TipKup End) as SifraR, TK.ImeTipKup as ImeR, '
  32078.     If @PoRedovi = 'NI'
  32079.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.Sifra_Nivo Is Not Null Then KO.Sifra_Nivo Else Kup.Sifra_Nivo End) as SifraR, NI.ImeNivo as ImeR, '
  32080. --    If @PoRedovi = 'ST'
  32081. --        Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.Sifra_Tip Is Not Null Then KO.Sifra_Tip Else Kup.Sifra_Tip End) as SifraR, ST.ImeTip as ImeR, '
  32082.     If @PoRedovi = 'ST'
  32083.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, Kup.Sifra_Tip as SifraR, ST.ImeTip as ImeR, '
  32084.     If @PoRedovi = 'PT'
  32085.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End) as SifraR, PT.ImePat as ImeR, '
  32086.     If @PoRedovi = 'VP'
  32087.         Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj, (Case When KO.Sifra_Vpj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End) as SifraR, VPJ.Ime_Vpj as ImeR, '
  32088. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32089.     If @PoKoloni = 'D1'
  32090.         Set @SSQL = @SSQL + ' (Case When KO.KDrugo1 Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End) as SifraK, K1.Ime_1K as ImeK, '
  32091.     If @PoKoloni = 'D2'
  32092.         Set @SSQL = @SSQL + ' (Case When KO.KDrugo2 Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End) as SifraK, K2.Ime_2K as ImeK, '
  32093.     If @PoKoloni = 'D3'
  32094.         Set @SSQL = @SSQL + ' (Case When KO.KDrugo3 Is Not Null Then KO.KDrugo3 Else Kup.KDrugo3 End) as SifraK, K3.Ime_3K as ImeK, '
  32095.     If @PoKoloni = 'D4'
  32096.         Set @SSQL = @SSQL + ' (Case When KO.KDrugo4 Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End) as SifraK, K4.Ime_4K as ImeK, '
  32097.     If @PoKoloni = 'D5'
  32098.         Set @SSQL = @SSQL + ' (Case When KO.KDrugo5 Is Not Null Then KO.KDrugo5 Else Kup.KDrugo5 End) as SifraK, K5.Ime_5K as ImeK, '
  32099.     If @PoKoloni = 'D6'
  32100.         Set @SSQL = @SSQL + ' (Case When KO.KDrugo6 Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End) as SifraK, K6.Ime_6K as ImeK, '
  32101.     If @PoKoloni = 'D7'
  32102.         Set @SSQL = @SSQL + ' (Case When KO.KDrugo7 Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End) as SifraK, K7.Ime_7K as ImeK, '
  32103.     If @PoKoloni = 'GR'
  32104.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) as SifraK, GR.ImeGrad as ImeK, '
  32105.     If @PoKoloni = 'RE'
  32106.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Reg Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) as SifraK, RE.ImeRegion as ImeK, '
  32107.     If @PoKoloni = 'TK'
  32108.         Set @SSQL = @SSQL + ' (Case When KO.TipKup Is Not Null Then KO.TipKup Else Kup.TipKup End) as SifraK, TK.ImeTipKup as ImeK, '
  32109.     If @PoKoloni = 'NI'
  32110.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Nivo Is Not Null Then KO.Sifra_Nivo Else Kup.Sifra_Nivo End) as SifraK, NI.ImeNivo as ImeK, '
  32111. --    If @PoKoloni = 'ST'
  32112. --        Set @SSQL = @SSQL + ' (Case When KO.Sifra_Tip Is Not Null Then KO.Sifra_Tip Else Kup.Sifra_Tip End) as SifraK, ST.ImeTip as ImeK, '
  32113.     If @PoKoloni = 'ST'
  32114.         Set @SSQL = @SSQL + ' Kup.Sifra_Tip as SifraK, ST.ImeTip as ImeK, '
  32115.     If @PoKoloni = 'PT'
  32116.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End) as SifraK, PT.ImePat as ImeK, '
  32117.     If @PoKoloni = 'VP'
  32118.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Vpj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End) as SifraK, VPJ.Ime_Vpj as ImeK, '
  32119. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32120.     Set @SSQL = @SSQL + ' 1, Kup.Sifra_Reg, Kup.Sifra_Grad, Kup.Sifra_Pat ' -- Count(Distinct Kup.Sifra_Kup) as Brojnost '
  32121.     Set @SSQL = @SSQL + ' From Komint KUP
  32122.                    Left Outer Join KObjekti KO ON Kup.Sifra_Kup=KO.Sifra_Kup '
  32123.     If @GrKup Is Not Null
  32124.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=KUP.Sifra_Kup 
  32125.                     And (Case When KO.Sifra_Obj Is Not Null Then KO.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  32126. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32127.     If @PoRedovi = 'D1'
  32128.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When KO.KDrugo1 Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End)'
  32129.     If @PoRedovi = 'D2'
  32130.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo2 K2 On K2.Sifra_2K = (Case When KO.KDrugo2 Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End)'
  32131.     If @PoRedovi = 'D3'
  32132.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo3 K3 On K3.Sifra_3K = (Case When KO.KDrugo3 Is Not Null Then KO.KDrugo3 Else Kup.KDrugo3 End)'
  32133.     If @PoRedovi = 'D4'
  32134.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo4 K4 On K4.Sifra_4K = (Case When KO.KDrugo4 Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End)'
  32135.     If @PoRedovi = 'D5'
  32136.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo5 K5 On K5.Sifra_5K = (Case When KO.KDrugo5 Is Not Null Then KO.KDrugo5 Else Kup.KDrugo5 End)'
  32137.     If @PoRedovi = 'D6'
  32138.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo6 K6 On K6.Sifra_6K = (Case When KO.KDrugo6 Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End)'
  32139.     If @PoRedovi = 'D7'
  32140.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo7 K7 On K7.Sifra_7K = (Case When KO.KDrugo7 Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End)'
  32141.     If @PoRedovi = 'GR'
  32142.         Set @SSQL = @SSQL + ' Left Outer Join Grad GR On GR.Sifra_Grad =  (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End)'
  32143.     If @PoRedovi = 'RE' 
  32144.         Set @SSQL = @SSQL + ' Left Outer Join GRegion RE On RE.Sifra_reg = (Case When KO.Sifra_Reg Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_reg End) '
  32145.     If @PoRedovi = 'TK' 
  32146.         Set @SSQL = @SSQL + ' Left Outer Join GTipKup TK On TK.TipKup = (Case When KO.TipKup Is Not Null Then KO.TipKup Else Kup.TipKup End)'
  32147.     If @PoRedovi = 'NI'
  32148.         Set @SSQL = @SSQL + ' Left Outer Join Nivo NI On NI.Sifra_Nivo = (Case When KO.Sifra_Nivo Is Not Null Then KO.Sifra_Nivo Else Kup.Sifra_Nivo End)'
  32149. --    If @PoRedovi = 'ST' 
  32150. --        Set @SSQL = @SSQL + ' Left Outer Join TipKomint ST On ST.Sifra_Tip = (Case When KO.Sifra_Tip Is Not Null Then KO.Sifra_Tip Else Kup.Sifra_Tip End)'
  32151.     If @PoRedovi = 'ST' 
  32152.         Set @SSQL = @SSQL + ' Left Outer Join TipKomint ST On ST.Sifra_Tip = Kup.Sifra_Tip '
  32153.     If @PoRedovi = 'PT' 
  32154.         Set @SSQL = @SSQL + ' Left Outer Join Patnici PT On PT.Sifra_Pat = (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End)'
  32155.     If @PoRedovi = 'VP' 
  32156.         Set @SSQL = @SSQL + ' Left Outer Join VidProdObj VPJ On VPJ.Sifra_Vpj = (Case When KO.Sifra_Vpj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End)'
  32157.     If @PoKoloni = 'D1'
  32158.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When KO.KDrugo1 Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End)'
  32159.     If @PoKoloni = 'D2'
  32160.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo2 K2 On K2.Sifra_2K = (Case When KO.KDrugo2 Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End)'
  32161.     If @PoKoloni = 'D3'
  32162.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo3 K3 On K3.Sifra_3K = (Case When KO.KDrugo3 Is Not Null Then KO.KDrugo3 Else Kup.KDrugo3 End)'
  32163.     If @PoKoloni = 'D4'
  32164.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo4 K4 On K4.Sifra_4K = (Case When KO.KDrugo4 Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End)'
  32165.     If @PoKoloni = 'D5'
  32166.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo5 K5 On K5.Sifra_5K = (Case When KO.KDrugo5 Is Not Null Then KO.KDrugo5 Else Kup.KDrugo5 End)'
  32167.     If @PoKoloni = 'D6'
  32168.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo6 K6 On K6.Sifra_6K = (Case When KO.KDrugo6 Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End)'
  32169.     If @PoKoloni = 'D7'
  32170.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo7 K7 On K7.Sifra_7K = (Case When KO.KDrugo7 Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End)'
  32171.     If @PoKoloni = 'GR'
  32172.         Set @SSQL = @SSQL + ' Left Outer Join Grad GR On GR.Sifra_Grad = (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End)'
  32173.     If @PoKoloni = 'RE'
  32174.         Set @SSQL = @SSQL + ' Left Outer Join GRegion RE On RE.Sifra_reg = (Case When KO.Sifra_reg Is Not Null Then KO.Sifra_reg Else Kup.Sifra_reg End)'
  32175.     If @PoKoloni = 'TK'
  32176.         Set @SSQL = @SSQL + ' Left Outer Join GTipKup TK On TK.TipKup = (Case When KO.TipKup Is Not Null Then KO.TipKup Else Kup.TipKup End)'
  32177.     If @PoKoloni = 'NI'
  32178.         Set @SSQL = @SSQL + ' Left Outer Join Nivo NI On NI.Sifra_Nivo = (Case When KO.Sifra_Nivo Is Not Null Then KO.Sifra_Nivo Else Kup.Sifra_Nivo End)'
  32179. --    If @PoKoloni = 'ST'
  32180. --        Set @SSQL = @SSQL + ' Left Outer Join TipKomint ST On ST.Sifra_Tip = (Case When KO.Sifra_Tip Is Not Null Then KO.Sifra_Tip Else Kup.Sifra_Tip End)'
  32181.     If @PoKoloni = 'ST'
  32182.         Set @SSQL = @SSQL + ' Left Outer Join TipKomint ST On ST.Sifra_Tip = Kup.Sifra_Tip '
  32183.     If @PoKoloni = 'PT' 
  32184.         Set @SSQL = @SSQL + ' Left Outer Join Patnici PT On PT.Sifra_Pat = (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End)'
  32185.     If @PoKoloni = 'VP' 
  32186.         Set @SSQL = @SSQL + ' Left Outer Join VidProdObj VPJ On VPJ.Sifra_Vpj = (Case When KO.Sifra_Vpj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End)'
  32187. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32188. ------------------------------------------------------------------------------ U S L O V ------------------------------------------------------------------------------------------------------------
  32189.     Set @SSQL = @SSQL + 'Where 1=1 '
  32190.     Set @SSQL = @SSQL + ' And ((KO.Aktiven Is Not Null And KO.Aktiven <> ''N'' ) 
  32191.                 Or (KO.Aktiven Is Null and (KUP.Aktiven <> ''N'' or KUP.Aktiven Is Null))) '
  32192. --    Set @SSQL = @SSQL + ' Where (KUP.Aktiven <> ''N'' or Kup.aktiven is null or Kup.Aktiven = '' '') and (KO.Aktiven <> ''N'' or KO.Aktiven is null Or KO.Aktiven='' '') '
  32193. --                And (KO.Sifra_Obj <> 0 Or KO.Sifra_Obj Is Null) '
  32194.     If @Pod1 Is Not NULL
  32195.         If @KFPod1 = 'D'
  32196.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  32197.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  32198.         Else
  32199.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  32200.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  32201.     If @Pod2 Is Not NULL
  32202.         If @KFPod2 = 'D'
  32203.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  32204.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  32205.         Else
  32206.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  32207.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  32208.     If @Pod3 Is Not NULL
  32209.         If @KFPod3 = 'D'
  32210.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  32211.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  32212.         Else
  32213.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  32214.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  32215.     If @Pod4 Is Not NULL
  32216.         If @KFPod4 = 'D'
  32217.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  32218.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  32219.         Else
  32220.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  32221.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  32222.     If @Pod5 Is Not NULL
  32223.         If @KFPod5 = 'D'
  32224.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  32225.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  32226.         Else
  32227.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  32228.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  32229.     If @Pod6 Is Not NULL
  32230.         If @KFPod6 = 'D'
  32231.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  32232.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  32233.         Else
  32234.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  32235.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  32236.     If @Pod7 Is Not NULL
  32237.         If @KFPod7 = 'D'
  32238.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  32239.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  32240.         Else
  32241.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  32242.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  32243.     If @Sifra_Tip Is Not NULL
  32244.         Set @SSQL = @SSQL + ' And Kup.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  32245.     If @Sifra_VPJ Is Not NULL
  32246.            Begin
  32247.         Set @SSQL = @SSQL + ' And ((KO.Sifra_VPJ Is Not Null And KO.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(6)) + ')
  32248.                       Or (KO.Sifra_VPJ Is Null And Kup.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(6)) + ')) '
  32249.            End
  32250.     If @Sifra_Kup_Od Is Not NULL
  32251.         Set @SSQL = @SSQL + ' And KUP.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  32252.     If @Sifra_Kup_Do Is Not NULL
  32253.         Set @SSQL = @SSQL + ' And KUP.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  32254.     If @TipKup Is Not NULL
  32255.         Set @SSQL = @SSQL + ' And KUP.TipKup In (' + @TipKup + ') '
  32256.     If @Sifra_Nivo Is Not NULL
  32257.         Set @SSQL = @SSQL + ' And KUP.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  32258.     If @Sifra_Pat Is Not NULL
  32259.            Begin
  32260.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat = ' + Cast(@Sifra_Pat As Varchar(6)) + ')
  32261.                       Or (KO.Sifra_Pat Is Null And Kup.Sifra_Pat = ' + Cast(@Sifra_Pat As Varchar(6)) + ')) '
  32262.            End
  32263.     If @KoiPat Is Not NULL
  32264.            Begin
  32265.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat IN (' + @KoiPat + ')) 
  32266.                       Or (KO.Sifra_Pat Is Null And Kup.Sifra_Pat IN (' + @KoiPat + '))) '
  32267.            End
  32268.     If @Koi_Gradovi Is Not NULL    
  32269.         Begin
  32270.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  32271.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  32272.         End
  32273.     If @Koi_Regioni Is Not NULL    
  32274.         Begin
  32275.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  32276.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  32277.         End
  32278. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32279. print @SSQL
  32280. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32281.     Create Table #Tab
  32282.     (
  32283.     Sifra_Kup    char(6),
  32284.     Sifra_Obj    smallint,
  32285.     SifraR        Varchar(10),
  32286.     ImeR        Varchar(40),
  32287.     SifraK        Varchar(10),
  32288.     ImeK        Varchar(40),
  32289.     Brojnost        decimal(18,6),
  32290.     Sifra_Reg    smallint,
  32291.     Sifra_Grad    smallint,
  32292.     Sifra_Pat    smallint
  32293.     )
  32294.     Insert Into #Tab(Sifra_kup, Sifra_Obj, SifraR, ImeR, SifraK, ImeK, Brojnost, Sifra_Reg, Sifra_Grad, Sifra_Pat) Exec(@SSQL+'And KO.Sifra_Obj <> 0')
  32295.     Insert Into #Tab(Sifra_kup, Sifra_Obj, SifraR, ImeR, SifraK, ImeK, Brojnost, Sifra_Reg, Sifra_Grad, Sifra_Pat) Exec(@SSQL+'And KO.Sifra_Obj = 0 
  32296.         And (Kup.Aktiven<>''N'' Or Kup.Aktiven Is Null) And Kup.Sifra_Kup Not In (Select distinct Sifra_Kup From #Tab) ')
  32297.     Insert Into #Tab(Sifra_kup, Sifra_Obj, SifraR, ImeR, SifraK, ImeK, Brojnost, Sifra_Reg, Sifra_Grad, Sifra_Pat) Exec(@SSQL+' And Kup.Sifra_Kup Not In (Select distinct Sifra_Kup From #Tab) And Kup.Aktiven <> ''N'' ')
  32298.     update #Tab 
  32299.     Set SifraR = '.', ImeR = '.' Where SifraR is Null
  32300.     update #Tab 
  32301.     Set SifraK = '.', ImeK = '.' Where SifraK is Null
  32302. --select * from #Tab  order by sifrar
  32303. --------------------------------------------------------------------------------------------------------------------------------------------
  32304. --- kreiram tabeli za da gi oddelam onie komintenti koi sto imaat i sifra_obj 0 i drugi objekti
  32305. ---  za da ne se dupliraat vo izvestajot
  32306.     Create Table #Tab1
  32307.     (
  32308.      Sifra_Kup    char(6),
  32309.      Sifra_Obj    smallint
  32310.     )
  32311.     Insert into #Tab1 
  32312.     Select Sifra_Kup, Sifra_Obj 
  32313.     From #Tab
  32314.     Where Sifra_Obj = 0
  32315.     Create Table #Tab2
  32316.     (
  32317.      Sifra_Kup    char(6),
  32318.      Sifra_Obj    smallint
  32319.     )
  32320.     Insert into #Tab2 
  32321.     Select Sifra_Kup, Sifra_Obj 
  32322.     From #Tab
  32323.     Where Sifra_Obj <> 0
  32324.     Create Table #Tab3
  32325.     (
  32326.      Sifra_Kup    char(6),
  32327.      Sifra_Obj    smallint
  32328.     )
  32329.     Insert Into #Tab3
  32330.     Select Sifra_Kup, Sifra_Obj 
  32331.     From #Tab2 
  32332.     Where Sifra_Kup In (Select Distinct Sifra_Kup From #Tab1)
  32333. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32334.     Insert Into #Rezultati(SifraR, ImeR, SifraK, ImeK, Brojnost, Sifra_Reg, Sifra_Grad, Sifra_Pat) 
  32335.             Select SifraR, ImeR, SifraK, ImeK, Count(Brojnost), Sifra_Reg, Sifra_Grad, Sifra_Pat
  32336.             From #Tab 
  32337.             Where Sifra_Kup Not In (Select Sifra_Kup From #Tab3)
  32338.             Group By SifraR, ImeR, SifraK, ImeK, Sifra_Reg, Sifra_Grad, Sifra_Pat 
  32339.     Insert Into #Rezultati(SifraR, ImeR, SifraK, ImeK, Brojnost, Sifra_Reg, Sifra_Grad, Sifra_Pat)
  32340.             Select SifraR, ImeR, SifraK, ImeK, Count(Brojnost), Sifra_Reg, Sifra_Grad, Sifra_Pat
  32341.             From #Tab 
  32342.             Where Sifra_Kup + '$$$' + Cast(Sifra_Obj as varchar(6))  In  (Select  Sifra_Kup + '$$$' + Cast(Sifra_Obj as varchar(6)) From #Tab3)
  32343.             Group By SifraR, ImeR, SifraK, ImeK, Sifra_Reg, Sifra_Grad, Sifra_Pat 
  32344. -------------------------------------------------------------  PROCENT PO REDOVI ----------------------------------------
  32345.     Create Table #ProcR
  32346.     (
  32347.     SifraR    varchar(10),
  32348.     Vkupno    decimal(18,6),
  32349.     Sifra_Reg    smallint,
  32350.     Sifra_Grad    smallint,
  32351.     Sifra_Pat    smallint
  32352.     )
  32353.     Insert Into #ProcR Select SifraR, Sifra_Reg, Sifra_Grad, Sifra_Pat, Sum(Brojnost)
  32354.     From #Rezultati
  32355.     Group By SifraR, Sifra_Reg, Sifra_Grad, Sifra_Pat
  32356.     Update #Rezultati
  32357.     Set #Rezultati.ProcR = (#Rezultati.Brojnost/#ProcR.Vkupno*100)
  32358.     From #ProcR
  32359.     Where #Rezultati.SifraR=#ProcR.SifraR and #Rezultati.Sifra_Reg=#ProcR.Sifra_Reg and #Rezultati.Sifra_Grad=#ProcR.Sifra_Grad 
  32360.         and #Rezultati.Sifra_Pat=#ProcR.Sifra_Pat and  #ProcR.Vkupno>0
  32361. -----------------------------------------------------------------------------------------------------------------------------------------------
  32362. -------------------------------------------------------------  PROCENT PO KOLONI ----------------------------------------
  32363.     Create Table #ProcK
  32364.     (
  32365.     SifraK    varchar(10),
  32366.     Vkupno    decimal(18,6),
  32367.     Sifra_Reg    smallint,
  32368.     Sifra_Grad    smallint,
  32369.     Sifra_Pat    smallint
  32370.     )
  32371.     Insert Into #ProcK Select SifraK, Sifra_Reg, Sifra_Grad, Sifra_Pat, Sum(Brojnost)
  32372.     From #Rezultati
  32373.     Group By SifraK, Sifra_Reg, Sifra_Grad, Sifra_Pat
  32374.     Update #Rezultati
  32375.     Set #Rezultati.ProcK = (#Rezultati.Brojnost/#ProcK.Vkupno*100)
  32376.     From #ProcK
  32377.     Where #Rezultati.SifraK=#ProcK.SifraK and #Rezultati.Sifra_Reg=#ProcK.Sifra_Reg and #Rezultati.Sifra_Grad=#ProcK.Sifra_Grad 
  32378.         and #Rezultati.Sifra_Pat=#ProcK.Sifra_Pat and #ProcK.Vkupno>0
  32379. -----------------------------------------------------------------------------------------------------------------------------------------------
  32380.     Declare @VkupnoKolic decimal(18,6)
  32381.     Set @VkupnoKolic = (Select Sum(Brojnost) From #Rezultati)
  32382.     Update #Rezultati
  32383.     Set #Rezultati.ProcVK = (#Rezultati.Brojnost/@VkupnoKolic*100)
  32384.     Select @BrKoloni = Count(Distinct SifraK) From #Rezultati
  32385. -----------------------------------------------------------------------------------------------------------------------------------------------
  32386.     If @PoRegGrPat = 'D'
  32387.     Begin
  32388.         Select R.SifraR, R.ImeR, R.SifraK, R.ImeK, Sum(R.Brojnost) Brojnost, Sum(R.ProcR) ProcR, Sum(R.ProcK) ProcK, Sum(R.ProcVK) ProcVK, 
  32389.             R.Sifra_Reg, Reg.ImeRegion, R.Sifra_Grad, G.ImeGrad, R.Sifra_Pat, P.ImePat
  32390.         From #Rezultati R
  32391.         Left Outer Join Gregion Reg On Reg.Sifra_Reg = R.Sifra_Reg
  32392.         Left Outer Join Grad G On G.Sifra_Grad = R.Sifra_Grad
  32393.         Left Outer Join Patnici P On P.Sifra_Pat = R.Sifra_Pat
  32394.         Group By SifraR, ImeR, SifraK, ImeK, R.Sifra_Reg, Reg.ImeRegion, R.Sifra_Grad, G.ImeGrad, R.Sifra_Pat, P.ImePat
  32395.     End
  32396.     Else
  32397.     Begin
  32398.         Select SifraR, ImeR, SifraK, ImeK, Sum(Brojnost) Brojnost, Sum(ProcR) ProcR, Sum(ProcK) ProcK, Sum(ProcVK) ProcVK, 
  32399.             Null as Sifra_Reg, Null as ImeRegion, Null as Sifra_Grad, Null as ImeGrad, Null as Sifra_Pat, Null as ImePat
  32400.         From #Rezultati
  32401.         Group By SifraR, ImeR, SifraK, ImeK
  32402.     End
  32403.     Set Nocount Off
  32404.  
  32405.  
  32406. Go
  32407. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brojotvfakzakup]'))
  32408. drop procedure [dbo].[sp_brojotvfakzakup]
  32409.  
  32410. Go
  32411.  
  32412. CREATE  PROCEDURE sp_BrojOtvFakZaKup
  32413.     @Sifra_Kup    char(6),
  32414.     @Broj_Fakt    int = 0 OUTPUT
  32415. AS
  32416. SELECT @Broj_Fakt=COUNT(*) FROM AnFinDok WHERE Sifra_Kup=@Sifra_Kup AND 
  32417. Dolzi>0 AND Dolzi-Plateno_Dolzi>10 AND Sifra_Za=1
  32418.  
  32419.  
  32420.  
  32421. Go
  32422. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brotvorenifakt]'))
  32423. drop procedure [dbo].[sp_brotvorenifakt]
  32424.  
  32425. Go
  32426. CREATE PROCEDURE sp_BrOtvoreniFakt
  32427.     @Sifra_Kup        char(6), 
  32428.     @Toler_Iznos    decimal(18,2)= 10,
  32429.     @TipKup_BezProv    varchar(11) = NULL,
  32430.     @BrOtvF            int = 0 OUTPUT
  32431. AS
  32432. Declare @wTipKup as varchar(11)
  32433. IF @TipKup_BezProv IS NOT NULL
  32434. Begin
  32435.     SELECT @wTipKup = TipKup FROM Komint WHERE Sifra_Kup=@Sifra_Kup
  32436.     If @wTipKup = @TipKup_BezProv RETURN
  32437. End
  32438.  
  32439. SELECT @BrOtvF=COUNT(*) FROM AnFinDok WHERE Sifra_Za=1 AND Sifra_Kup=@Sifra_Kup AND Dolzi>0 AND 
  32440. Dolzi-Plateno_Dolzi>@Toler_Iznos AND DateAdd(day, Rok, Datum_Dok)<GetDate() 
  32441.  
  32442.  
  32443. Go
  32444. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brpraznici]'))
  32445. drop procedure [dbo].[sp_brpraznici]
  32446.  
  32447. Go
  32448.  
  32449.  
  32450. CREATE      PROCEDURE sp_BrPraznici
  32451.     @Datum_Od    smalldatetime=null,
  32452.     @Datum_Do    smalldatetime=null,
  32453.     @Brden    int OUTPUT
  32454. AS
  32455. SELECT @BrDen= Count(Sto) FROM RabKalendar where Sto='P'And Datum >=@Datum_Od And Datum <= @Datum_Do
  32456.  
  32457.  
  32458.  
  32459. Go
  32460. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brutobilans]'))
  32461. drop procedure [dbo].[sp_brutobilans]
  32462.  
  32463. Go
  32464.  
  32465. CREATE       PROCEDURE    sp_BrutoBilans
  32466.     @Datum_Od    Smalldatetime,
  32467.     @Datum_Do    Smalldatetime,
  32468.     @KoiKlasi    Varchar(30),
  32469.     @Sifra_OE    smallint = NULL,
  32470.     @Koi_Oe    varchar(10) = null,
  32471.     @Grupa    char(2) = Null,
  32472.     @KtoSint    char(3) = Null,
  32473.     @Sifra_Div    smallint = Null,
  32474.     @BezDivizija    char(1) = 'N',
  32475.     @PocnuvaSo    varchar(10) = Null,    -- se odnesuva na kontoto
  32476.     @Kurs        decimal(18,4) = 1
  32477. AS
  32478.     Declare @SSQL Varchar(3000)
  32479.     Create Table #BrutoBilans
  32480.     (    Kto_Anal Char(10),
  32481.         Poc_Dolzi Decimal(18,4),
  32482.         Poc_Pobaruva Decimal(18,4),
  32483.         Tek_Dolzi Decimal(18,4),
  32484.         Tek_Pobaruva Decimal(18,4),
  32485.         Vk_Dolzi Decimal(18,4),
  32486.         Vk_Pobaruva Decimal(18,4),
  32487.         Sifra_Oe int
  32488.     )
  32489.     -- Pocetni sostojbi
  32490.     Declare @God as smallint
  32491.     Set @God=year(@Datum_Od)
  32492.     Set @SSQL = 'Select Kto_Anal, Sum(Dolzi) As Poc_Dolzi, Sum(Pobaruva) as Poc_Pobaruva,
  32493.         0 As Tek_Dolzi, 0 As Tek_Pobaruva, 0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe
  32494.         From GStav Where Sifra_Nal=999 AND Year(Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  32495.     If @KoiKlasi Is Not Null
  32496.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  32497.     If @Grupa Is Not Null
  32498.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 2) = ' + @Grupa + ' '
  32499.     If @KtoSint Is Not Null
  32500.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  32501.     If @PocnuvaSo Is Not Null
  32502.         Set @SSQL = @SSQL + ' And Kto_Anal Like ''' + @PocnuvaSo + '% '''
  32503.     If @BezDivizija = 'D'
  32504.         Set @SSQL = @SSQL + ' And Sifra_Div Is Null '
  32505.     Else
  32506.     Begin
  32507.         If @Sifra_Div Is Not Null
  32508.             Set @SSQL = @SSQL + ' And Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  32509.     End
  32510.     If @Sifra_OE Is Not Null
  32511.         Set @SSQL = @SSQL + ' And Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  32512.     If @Koi_OE Is Not NULL
  32513.              Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  32514.     Set @SSQL = @SSQL + 'Group By Kto_Anal, Sifra_Oe'
  32515.     Insert #BrutoBilans Exec(@SSQL)
  32516.     -- Tekoven Promet
  32517.     Set @SSQL = 'Select Kto_Anal, 0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32518.         Sum(Dolzi) As Tek_Dolzi, Sum(Pobaruva) As Tek_Pobaruva,
  32519.         0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe
  32520.         From GStav  Where Sifra_Nal <> 999 '
  32521.     If @KoiKlasi Is Not Null
  32522.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  32523.     If @Grupa Is Not Null
  32524.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 2) = ' + @Grupa + ' '
  32525.     If @KtoSint Is Not Null
  32526.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  32527.     If @PocnuvaSo Is Not Null
  32528.         Set @SSQL = @SSQL + ' And Kto_Anal Like ''' + @PocnuvaSo + '% '''
  32529.     If @Datum_Od Is Not Null
  32530.         Set @SSQL = @SSQL + 'And Datum_Nal>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  32531.     If @Datum_Do Is Not Null
  32532.         Set @SSQL = @SSQL + 'And Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  32533.     If @BezDivizija = 'D'
  32534.         Set @SSQL = @SSQL + ' And Sifra_Div Is Null '
  32535.     Else
  32536.     Begin
  32537.         If @Sifra_Div Is Not Null
  32538.             Set @SSQL = @SSQL + ' And Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  32539.     End
  32540.     If @Sifra_OE Is Not Null
  32541.         Set @SSQL = @SSQL + ' And Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  32542.     If @Koi_OE Is Not NULL
  32543.              Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  32544.     Set @SSQL = @SSQL + 'Group By Kto_Anal, Sifra_Oe'
  32545.     Insert #BrutoBilans Exec(@SSQL)
  32546.     -- Vkupen Promet
  32547.     Set @SSQL = 'Select Kto_Anal, 0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32548.         0 As Tek_Dolzi, 0 As Tek_Pobaruva,
  32549.         Sum(Dolzi) As Vk_Dolzi, Sum(Pobaruva) As Vk_Pobaruva, Sifra_Oe
  32550.         From GStav Where  Year(Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  32551.     If @KoiKlasi Is Not Null
  32552.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  32553.     If @Grupa Is Not Null
  32554.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 2) = ' + @Grupa + ' '
  32555.     If @KtoSint Is Not Null
  32556.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  32557.     If @PocnuvaSo Is Not Null
  32558.         Set @SSQL = @SSQL + ' And Kto_Anal Like ''' + @PocnuvaSo + '% '''
  32559.     If @Datum_Do Is Not Null
  32560.         Set @SSQL = @SSQL + 'And Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  32561.     If @BezDivizija = 'D'
  32562.         Set @SSQL = @SSQL + ' And Sifra_Div Is Null '
  32563.     Else
  32564.     Begin
  32565.         If @Sifra_Div Is Not Null
  32566.             Set @SSQL = @SSQL + ' And Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  32567.     End
  32568.     If @Sifra_OE Is Not Null
  32569.         Set @SSQL = @SSQL + ' And Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  32570.     If @Koi_OE Is Not NULL
  32571.              Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  32572.     Set @SSQL = @SSQL + 'Group By Kto_Anal, Sifra_Oe'
  32573.     Insert #BrutoBilans Exec(@SSQL)
  32574.  
  32575.     If @Kurs <> 1 And @Kurs <> 0 And @Kurs Is Not Null
  32576.         Select BB.Kto_Anal, A.ImeAnal, Null as Sifra_Div, Sum(BB.Poc_Dolzi/@Kurs) Poc_Dolzi, Sum(BB.Poc_Pobaruva/@Kurs) Poc_Pobaruva,
  32577.         SUBSTRING(BB.Kto_anal,1,3) Kto_Sint, SUBSTRING(BB.Kto_anal,1,2) Kto_Sint2, S.ImeSint, Sum(BB.Tek_Dolzi/@Kurs) Tek_Dolzi,
  32578.         Sum(BB.Tek_Pobaruva/@Kurs) Tek_Pobaruva, Sum(BB.Vk_Dolzi/@Kurs) Vk_Dolzi, Sum(BB.Vk_Pobaruva/@Kurs) Vk_Pobaruva, BB.Sifra_Oe, O.ImeOrg, O.Map_Org,
  32579.         Null Sifra_TrosM, Null ImeTrosM, Null Sifra_TrosV, Null ImeTrosV, Null AS KtoDivTrosM
  32580.         From #BrutoBilans BB
  32581.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  32582.         LEFT OUTER Join Sint S On A.Kto_Sint=S.Kto_Sint
  32583.         Left Outer Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  32584.         Group By BB.Kto_Anal, A.ImeAnal, SUBSTRING(BB.Kto_anal,1,3), SUBSTRING(BB.Kto_anal,1,2), S.ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org
  32585.         Order By BB.Kto_Anal
  32586.     Else
  32587.         Select BB.Kto_Anal, A.ImeAnal, Null as Sifra_Div, sum(BB.Poc_Dolzi) Poc_Dolzi, sum(BB.Poc_Pobaruva) Poc_Pobaruva,
  32588.         SUBSTRING(BB.Kto_anal,1,3) Kto_Sint, SUBSTRING(BB.Kto_anal,1,2) Kto_Sint2, S.ImeSint, Sum(BB.Tek_Dolzi) Tek_Dolzi,
  32589.         Sum(BB.Tek_Pobaruva) Tek_Pobaruva, Sum(BB.Vk_Dolzi) Vk_Dolzi, Sum(BB.Vk_Pobaruva) Vk_Pobaruva, BB.Sifra_Oe, O.ImeOrg, O.Map_Org,
  32590.         Null Sifra_TrosM, Null ImeTrosM, Null Sifra_TrosV, Null ImeTrosV, Null AS KtoDivTrosM
  32591.         From #BrutoBilans BB
  32592.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  32593.         LEFT OUTER Join Sint S On A.Kto_Sint=S.Kto_Sint
  32594.         Left Outer Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  32595.         Group By BB.Kto_Anal, A.ImeAnal, SUBSTRING(BB.Kto_anal,1,3), SUBSTRING(BB.Kto_anal,1,2), S.ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org
  32596.         Order By BB.Kto_Anal
  32597. Go
  32598. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brutobilans_divizii]'))
  32599. drop procedure [dbo].[sp_brutobilans_divizii]
  32600.  
  32601. Go
  32602.  
  32603.  
  32604.  
  32605.  
  32606.  
  32607. CREATE            PROCEDURE    sp_BrutoBilans_Divizii
  32608.     @Datum_Od    Smalldatetime,
  32609.     @Datum_Do    Smalldatetime,
  32610.     @KoiKlasi    Varchar(30),
  32611.     @Sifra_OE    smallint = NULL,
  32612.     @Koi_Oe    varchar(10) = null,
  32613.     @Grupa    char(2) = Null,
  32614.     @KtoSint    char(3) = Null,
  32615.     @Sifra_Div    smallint = Null,
  32616.     @BezDivizija    char(1) = 'N',
  32617.     @PocnuvaSo    varchar(10) = Null,
  32618.     @Sifra_TrosM    varchar(500) = Null,
  32619.     @Sifra_TrosV    varchar(500) = Null,
  32620.     @Sifra_4Tros    varchar(500) = Null,
  32621.     @Kurs        decimal(18,4) = 1
  32622. AS
  32623.     Declare @SSQL Varchar(3000)
  32624.     Declare @SSQLUsl Varchar(3000)
  32625.     Set @SSQLUsl = ' '
  32626.     Create Table #BrutoBilans
  32627.     (    Kto_Anal Char(10),
  32628.         Sifra_Div smallint,
  32629.         Poc_Dolzi Decimal(18,4),
  32630.         Poc_Pobaruva Decimal(18,4),
  32631.         Tek_Dolzi Decimal(18,4),
  32632.         Tek_Pobaruva Decimal(18,4),
  32633.         Vk_Dolzi Decimal(18,4),
  32634.         Vk_Pobaruva Decimal(18,4),
  32635.         Sifra_Oe int,
  32636.         Sifra_TrosM smallint,
  32637.         Sifra_TrosV smallint,
  32638.                     Sifra_4Tros smallint 
  32639.     )
  32640.     -- Pocetni sostojbi
  32641.     Declare @God as smallint
  32642.     Set @God=year(@Datum_Od)
  32643.     Set @SSQL = 'Select G.Kto_Anal, GD.Sifra_Div, 
  32644.             Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else G.Dolzi End) As Poc_Dolzi, 
  32645.             Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else G.Pobaruva End) as Poc_Pobaruva,
  32646.             0 As Tek_Dolzi, 0 As Tek_Pobaruva, 0 As Vk_Dolzi, 0 As Vk_Pobaruva, G.Sifra_Oe, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros
  32647.         From GStav G
  32648.         LEFT OUTER JOIN GstAnDiv GD On GD.GstID=G.GstID
  32649.         Where G.Sifra_Nal=999 AND Year(G.Datum_Nal) = ' + Cast(@God as char(4)) + ' And GD.GstID Is Null '
  32650.     If @KoiKlasi Is Not Null
  32651.         Set @SSQLUsl = @SSQLUsl + 'And SubString(G.Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  32652.     If @Grupa Is Not Null
  32653.         Set @SSQLUsl = @SSQLUsl + 'And SubString(G.Kto_Anal, 1, 2) = ' + @Grupa + ' '
  32654.     If @KtoSint Is Not Null
  32655.         Set @SSQLUsl = @SSQLUsl + 'And SubString(G.Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  32656.     If @PocnuvaSo Is Not Null
  32657.         Set @SSQLUsl = @SSQLUsl + ' And G.Kto_Anal Like ''' + @PocnuvaSo + '% '''
  32658.     If @BezDivizija = 'D'
  32659.         Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_Div Is Null '
  32660.     Else
  32661.     Begin
  32662.         If @Sifra_Div Is Not Null
  32663.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '               
  32664.         If @Sifra_TrosM Is Not Null
  32665.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_TrosM In (' + @Sifra_TrosM + ') ' 
  32666.                  If @Sifra_TrosV Is Not Null
  32667.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_TrosV In (' + @Sifra_TrosV + ') ' 
  32668.                  If @Sifra_4Tros Is Not Null
  32669.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_4Tros In (' + @Sifra_4Tros + ') ' 
  32670.     End
  32671.     If @Sifra_OE Is Not Null
  32672.         Set @SSQLUsl = @SSQLUsl + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  32673.     If @Koi_OE Is Not NULL
  32674.              Set @SSQLUsl  = @SSQLUsl + ' And G.Sifra_OE IN (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  32675.     Set @SSQLUsl = @SSQLUsl + 'Group By G.Kto_Anal, G.Sifra_Oe, GD.Sifra_Div, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros '
  32676.     Set @SSQL=@SSQL + @SSQLUsl + ' Union '
  32677.     Set @SSQL = @SSQL + ' Select G.Kto_Anal, GD.Sifra_Div, 
  32678.             Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) As Poc_Dolzi, 
  32679.             Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else 0 End) as Poc_Pobaruva,
  32680.             0 As Tek_Dolzi, 0 As Tek_Pobaruva, 0 As Vk_Dolzi, 0 As Vk_Pobaruva, G.Sifra_Oe, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros
  32681.         From GStav G
  32682.         INNER JOIN GstAnDiv GD On GD.GstID=G.GstID
  32683.         Where G.Sifra_Nal=999 AND Year(G.Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  32684.     Set @SSQL = @SSQL + @SSQLUsl
  32685.     Insert #BrutoBilans Exec(@SSQL)
  32686.     Set @SSQLUsl = ' '
  32687.     -- Tekoven Promet
  32688.     Set @SSQL = 'Select G.Kto_Anal, GD.Sifra_Div, 
  32689.             0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32690.             Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else G.Dolzi End) As Tek_Dolzi, 
  32691.             Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else G.Pobaruva End) as Tek_Pobaruva,
  32692.             0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros
  32693.         From GStav G  
  32694.         LEFT OUTER JOIN GstAnDiv GD On GD.GstID=G.GstID
  32695.         Where G.Sifra_Nal <> 999 And GD.GstID Is Null '
  32696.     If @KoiKlasi Is Not Null
  32697.         Set @SSQLUSl = @SSQLUSl + 'And SubString(G.Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  32698.     If @Grupa Is Not Null
  32699.         Set @SSQLUSl = @SSQLUSl + 'And SubString(G.Kto_Anal, 1, 2) = ' + @Grupa + ' '
  32700.     If @KtoSint Is Not Null
  32701.         Set @SSQLUSl = @SSQLUSl + 'And SubString(G.Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  32702.     If @PocnuvaSo Is Not Null
  32703.         Set @SSQLUsl = @SSQLUsl + ' And G.Kto_Anal Like ''' + @PocnuvaSo + '% '''
  32704.     If @Datum_Od Is Not Null
  32705.         Set @SSQLUSl = @SSQLUSl + 'And G.Datum_Nal>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  32706.     If @Datum_Do Is Not Null
  32707.         Set @SSQLUSl = @SSQLUSl + 'And G.Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  32708.     If @BezDivizija = 'D'
  32709.         Set @SSQLUSl = @SSQLUSl + ' And GD.Sifra_Div Is Null '
  32710.     Else
  32711.     Begin
  32712.         If @Sifra_Div Is Not Null
  32713.             Set @SSQLUSl = @SSQLUSl + ' And GD.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  32714.         If @Sifra_TrosM Is Not Null
  32715.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_TrosM In (' + @Sifra_TrosM + ') ' 
  32716.                  If @Sifra_TrosV Is Not Null
  32717.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_TrosV In (' + @Sifra_TrosV + ') ' 
  32718.                  If @Sifra_4Tros Is Not Null
  32719.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_4Tros In (' + @Sifra_4Tros + ') ' 
  32720.     End
  32721.     If @Sifra_OE Is Not Null
  32722.         Set @SSQLUSl = @SSQLUSl + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  32723.     If @Koi_OE Is Not NULL
  32724.              Set @SSQLUSl  = @SSQLUSl + ' And G.Sifra_OE IN (Select Sifra_Oe from SGrOrg where sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  32725.     Set @SSQLUSl = @SSQLUSl + 'Group By G.Kto_Anal, G.Sifra_Oe, GD.Sifra_Div, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros '
  32726.     Set @SSQL = @SSQL + @SSQLUsl + ' Union '
  32727.     Set @SSQL = 'Select G.Kto_Anal, GD.Sifra_Div, 
  32728.             0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32729.             Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) As Tek_Dolzi, 
  32730.             Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else 0 End) as Tek_Pobaruva,
  32731.             0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros
  32732.         From GStav G  
  32733.         INNER JOIN GstAnDiv GD On GD.GstID=G.GstID
  32734.         Where G.Sifra_Nal <> 999  '
  32735.     Set @SSQL = @SSQL + @SSQLUsl
  32736.     Insert #BrutoBilans Exec(@SSQL)
  32737.     Set @SSQLUsl = ' '
  32738.     -- Vkupen Promet
  32739.     Set @SSQL = 'Select G.Kto_Anal,  GD.Sifra_Div, 
  32740.         0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32741.         0 As Tek_Dolzi, 0 As Tek_Pobaruva,
  32742.         Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else G.Dolzi End) As Vk_Dolzi, 
  32743.         Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else G.Pobaruva End) as Vk_Pobaruva,
  32744.         Sifra_Oe, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros
  32745.         From GStav G
  32746.         LEFT OUTER JOIN GstAnDiv GD On GD.GstID=G.GstID
  32747.         Where  Year(G.Datum_Nal) = ' + Cast(@God as char(4)) + ' And GD.GstID Is Null '
  32748.     If @KoiKlasi Is Not Null
  32749.         Set @SSQLUsl = @SSQLUsl + 'And SubString(G.Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  32750.     If @Grupa Is Not Null
  32751.         Set @SSQLUsl = @SSQLUsl + 'And SubString(G.Kto_Anal, 1, 2) = ' + @Grupa + ' '
  32752.     If @KtoSint Is Not Null
  32753.         Set @SSQLUsl = @SSQLUsl + 'And SubString(G.Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  32754.     If @PocnuvaSo Is Not Null
  32755.         Set @SSQLUsl = @SSQLUsl + ' And G.Kto_Anal Like ''' + @PocnuvaSo + '% '''
  32756.     If @Datum_Do Is Not Null
  32757.         Set @SSQLUsl = @SSQLUsl + 'And G.Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  32758.     If @BezDivizija = 'D'
  32759.         Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_Div Is Null '
  32760.     Else
  32761.     Begin
  32762.         If @Sifra_Div Is Not Null
  32763.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  32764.         If @Sifra_TrosM Is Not Null
  32765.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_TrosM In (' + @Sifra_TrosM + ') ' 
  32766.                  If @Sifra_TrosV Is Not Null
  32767.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_TrosV In (' + @Sifra_TrosV + ') ' 
  32768.                  If @Sifra_4Tros Is Not Null
  32769.             Set @SSQLUsl = @SSQLUsl + ' And GD.Sifra_4Tros In (' + @Sifra_4Tros + ') ' 
  32770.     End
  32771.     If @Sifra_OE Is Not Null
  32772.         Set @SSQLUsl = @SSQLUsl + ' And G.Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  32773.     If @Koi_OE Is Not NULL
  32774.              Set @SSQLUsl  = @SSQLUsl + ' And G.Sifra_OE IN (Select Sifra_Oe from SGrOrg where sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  32775.     Set @SSQLUsl = @SSQLUsl + 'Group By G.Kto_Anal, G.Sifra_Oe, GD.Sifra_Div, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros '
  32776.     Set @SSQL = @SSQL + @SSQLUsl + ' Union '
  32777.     Set @SSQL = 'Select G.Kto_Anal,  GD.Sifra_Div, 
  32778.         0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32779.         0 As Tek_Dolzi, 0 As Tek_Pobaruva,
  32780.         Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) As Vk_Dolzi, 
  32781.         Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else 0 End) as Vk_Pobaruva,
  32782.         Sifra_Oe, GD.Sifra_TrosM, GD.Sifra_TrosV, GD.Sifra_4Tros
  32783.         From GStav G
  32784.         INNER JOIN GstAnDiv GD On GD.GstID=G.GstID
  32785.         Where  Year(G.Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  32786.     Set @SSQL = @SSQL + @SSQLUsl
  32787.     Insert #BrutoBilans Exec(@SSQL)
  32788.  
  32789.     If @Kurs <> 1 And @Kurs <> 0 And @Kurs Is Not Null
  32790.         Select BB.Kto_Anal, A.ImeAnal, BB.Sifra_Div, sum(BB.Poc_Dolzi/@Kurs) Poc_Dolzi, sum(BB.Poc_Pobaruva/@Kurs) Poc_Pobaruva,
  32791.         SUBSTRING(BB.Kto_anal,1,3) Kto_Sint, SUBSTRING(BB.Kto_anal,1,2) Kto_Sint2, S.ImeSint, Sum(BB.Tek_Dolzi/@Kurs) Tek_Dolzi,
  32792.         Sum(BB.Tek_Pobaruva/@Kurs) Tek_Pobaruva, Sum(BB.Vk_Dolzi/@Kurs) Vk_Dolzi, Sum(BB.Vk_Pobaruva/@Kurs) Vk_Pobaruva, BB.Sifra_Oe, O.ImeOrg, O.Map_Org,
  32793.         BB.Sifra_TrosM, TM.ImeTrosM, 
  32794.             dbo.fn_DesnoNuli(Cast(Substring(BB.KTo_Anal,1,6)as integer),6)+
  32795.             (Case When BB.Sifra_Div is not null Then dbo.fn_LevoNuli(Cast(BB.Sifra_Div as smallint),2) Else '00' End)+
  32796.             (Case When BB.Sifra_TrosM is not null Then dbo.fn_LevoNuli(Cast(BB.Sifra_TrosM as smallint),2) Else '00' End) AS KtoDivTrosM, 
  32797.         Null as Ime4Tros --T4.Ime4Tros, BB.Sifra_TrosV, TV.ImeTrosV,
  32798.         From #BrutoBilans BB
  32799.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  32800.         LEFT OUTER Join Sint S On A.Kto_Sint=S.Kto_Sint
  32801.         LEFT OUTER Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  32802.         LEFT OUTER join TrosokMesto TM ON BB.Sifra_TrosM=TM.Sifra_TrosM
  32803.         LEFT OUTER join TrosokVid TV ON BB.Sifra_TrosV=TV.Sifra_TrosV
  32804.         LEFT OUTER join Trosok4Tip T4 ON BB.Sifra_4Tros=T4.Sifra_4Tros 
  32805.         Group By BB.Kto_Anal, A.ImeAnal, SUBSTRING(BB.Kto_anal,1,3), SUBSTRING(BB.Kto_anal,1,2), S.ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org, BB.Sifra_Div,BB.Sifra_TrosM, TM.ImeTrosM --, BB.Sifra_TrosV, TV.ImeTrosV, T4.Ime4Tros
  32806.         Order By BB.Kto_Anal
  32807.     Else
  32808.         Select BB.Kto_Anal, A.ImeAnal, BB.Sifra_Div, sum(BB.Poc_Dolzi) Poc_Dolzi, sum(BB.Poc_Pobaruva) Poc_Pobaruva,
  32809.         SUBSTRING(BB.Kto_anal,1,3) Kto_Sint, SUBSTRING(BB.Kto_anal,1,2) Kto_Sint2, S.ImeSint, Sum(BB.Tek_Dolzi) Tek_Dolzi,
  32810.         Sum(BB.Tek_Pobaruva) Tek_Pobaruva, Sum(BB.Vk_Dolzi) Vk_Dolzi, Sum(BB.Vk_Pobaruva) Vk_Pobaruva, BB.Sifra_Oe, O.ImeOrg, O.Map_Org,
  32811.         BB.Sifra_TrosM, TM.ImeTrosM, 
  32812.             dbo.fn_DesnoNuli(Cast(Substring(BB.KTo_Anal,1,6)as integer),6)+
  32813.             (Case When BB.Sifra_Div is not null Then dbo.fn_LevoNuli(Cast(BB.Sifra_Div as smallint),2) Else '00' End)+
  32814.             (Case When BB.Sifra_TrosM is not null Then dbo.fn_LevoNuli(Cast(BB.Sifra_TrosM as smallint),2) Else '00' End) AS KtoDivTrosM, 
  32815.         Null as Ime4Tros --T4.Ime4Tros, BB.Sifra_TrosV, TV.ImeTrosV,
  32816.         From #BrutoBilans BB
  32817.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  32818.         LEFT OUTER Join Sint S On A.Kto_Sint=S.Kto_Sint
  32819.         LEFT OUTER Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  32820.         LEFT OUTER join TrosokMesto TM ON BB.Sifra_TrosM=TM.Sifra_TrosM
  32821.         LEFT OUTER join TrosokVid TV ON BB.Sifra_TrosV=TV.Sifra_TrosV
  32822.         LEFT OUTER join Trosok4Tip T4 ON BB.Sifra_4Tros=T4.Sifra_4Tros 
  32823.         Group By BB.Kto_Anal, A.ImeAnal, SUBSTRING(BB.Kto_anal,1,3), SUBSTRING(BB.Kto_anal,1,2), S.ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org, BB.Sifra_Div,BB.Sifra_TrosM, TM.ImeTrosM --, BB.Sifra_TrosV, TV.ImeTrosV, T4.Ime4Tros
  32824.         Order By BB.Kto_Anal
  32825. Go
  32826. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brutobilans_povekebazi]'))
  32827. drop procedure [dbo].[sp_brutobilans_povekebazi]
  32828.  
  32829. Go
  32830.  
  32831. CREATE       PROCEDURE sp_BrutoBilans_PovekeBazi
  32832.     @Datum_Od    Smalldatetime,
  32833.     @Datum_Do    Smalldatetime,
  32834.     @KoiKlasi    Varchar(30),
  32835.     @Sifra_OE    smallint = NULL,
  32836.     @Koi_Oe    varchar(10) = null,
  32837.     @Grupa    char(2) = Null,
  32838.     @KtoSint    char(3) = Null,
  32839.     @Sifra_Div    smallint = Null,
  32840.     @BezDivizija    char(1) = 'N',
  32841.     @ParalenliBazi     varchar(200) = Null,
  32842.     @PocnuvaSo    varchar(10) = Null,
  32843.     @Kurs        decimal(18,4) = 1
  32844. AS
  32845.     Declare @SSQL Varchar(8000)
  32846.     Declare @SSQLUsl Varchar(8000)
  32847.     Set @SSQLUsl = ' '
  32848.     Create Table #BrutoBilans
  32849.     (    Kto_Anal Char(10),
  32850.         Poc_Dolzi Decimal(18,4),
  32851.         Poc_Pobaruva Decimal(18,4),
  32852.         Tek_Dolzi Decimal(18,4),
  32853.         Tek_Pobaruva Decimal(18,4),
  32854.         Vk_Dolzi Decimal(18,4),
  32855.         Vk_Pobaruva Decimal(18,4),
  32856.         Sifra_Oe int
  32857.     )
  32858.     -- Pocetni sostojbi
  32859.     Declare @God as smallint
  32860.     Set @God=year(@Datum_Od)
  32861.     Create Table #Bazi
  32862.     (
  32863.      ImeBaza    varchar(50)
  32864.     )
  32865.     Insert Into #Bazi Select db_Name()
  32866.     If @ParalenliBazi Is Not Null
  32867.     Begin
  32868.         Declare @Poz_Delim Smallint
  32869.         Declare @Poz_Start Smallint
  32870.         Declare @BazaIme varchar(50)
  32871.         If @ParalenliBazi Is Null 
  32872.             Set @ParalenliBazi = ''
  32873.         Set @Poz_Start = 0
  32874.         While 1=1
  32875.         Begin
  32876.             Set @Poz_Delim = Charindex(',', @ParalenliBazi, @Poz_Start)
  32877.             If @Poz_Delim = 0
  32878.                 Break
  32879.             Set @BazaIme = SubString(@ParalenliBazi, @Poz_Start, @Poz_Delim-@Poz_Start)
  32880.             Set @Poz_Start = @Poz_Delim + 1
  32881.             Insert Into #Bazi Select @BazaIme
  32882.         End
  32883.     End
  32884.     -------------------------------------------------------------------------------- U S L O V ---------------------------------------------------------------------------------------------------------------
  32885.     If @KoiKlasi Is Not Null
  32886.         Set @SSQLUsl = @SSQLUsl + 'And SubString(Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  32887.     If @Grupa Is Not Null
  32888.         Set @SSQLUsl = @SSQLUsl + 'And SubString(Kto_Anal, 1, 2) = ' + @Grupa + ' '
  32889.     If @KtoSint Is Not Null
  32890.         Set @SSQLUsl = @SSQLUsl + 'And SubString(Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  32891.     If @PocnuvaSo Is Not Null
  32892.         Set @SSQLUsl = @SSQLUsl + ' And Kto_Anal Like ''' + @PocnuvaSo + '% '''
  32893.     If @BezDivizija = 'D'
  32894.         Set @SSQLUsl = @SSQLUsl + ' And Sifra_Div Is Null '
  32895.     Else
  32896.     Begin
  32897.         If @Sifra_Div Is Not Null
  32898.             Set @SSQLUsl = @SSQLUsl + ' And Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  32899.     End
  32900.     If @Sifra_OE Is Not Null
  32901.         Set @SSQLUsl = @SSQLUsl + ' And Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  32902.     If @Koi_OE Is Not NULL
  32903.              Set @SSQLUsl  = @SSQLUsl + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  32904.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  32905.     Declare @ImeBaza as varchar(50)
  32906.     Declare Bazi Cursor 
  32907.     Fast_Forward For Select ImeBaza From #Bazi
  32908.     Open Bazi
  32909.     Fetch Next From Bazi Into @ImeBaza
  32910.     While @@Fetch_Status = 0
  32911.     Begin
  32912.         --Pocetna Sostojba
  32913.         Set @SSQL = 'Select Kto_Anal, Sum(Dolzi) As Poc_Dolzi, Sum(Pobaruva) as Poc_Pobaruva,
  32914.             0 As Tek_Dolzi, 0 As Tek_Pobaruva, 0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe
  32915.             From ' + @ImeBaza + '..GStav Where Sifra_Nal=999 AND Year(Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  32916.         Insert #BrutoBilans Exec(@SSQL + @SSQLUsl + 'Group By Kto_Anal, Sifra_Oe')
  32917.         -- Tekoven Promet
  32918.         Set @SSQL = 'Select Kto_Anal, 0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32919.             Sum(Dolzi) As Tek_Dolzi, Sum(Pobaruva) As Tek_Pobaruva,
  32920.             0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe
  32921.             From ' + @ImeBaza + '..GStav  Where Sifra_Nal <> 999 '
  32922.         If @Datum_Od Is Not Null
  32923.             Set @SSQL = @SSQL + 'And Datum_Nal>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  32924.         If @Datum_Do Is Not Null
  32925.             Set @SSQL = @SSQL + 'And Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  32926.         Insert #BrutoBilans Exec(@SSQL + @SSQLUsl + 'Group By Kto_Anal, Sifra_Oe')
  32927.         -- Vkupen Promet
  32928.         Set @SSQL = 'Select Kto_Anal, 0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  32929.             0 As Tek_Dolzi, 0 As Tek_Pobaruva,
  32930.             Sum(Dolzi) As Vk_Dolzi, Sum(Pobaruva) As Vk_Pobaruva, Sifra_Oe
  32931.             From ' + @ImeBaza + '..GStav Where  Year(Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  32932.         If @Datum_Do Is Not Null
  32933.             Set @SSQL = @SSQL + 'And Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  32934.         Insert #BrutoBilans Exec(@SSQL + @SSQLUsl + 'Group By Kto_Anal, Sifra_Oe')
  32935.         Fetch Next From Bazi Into @ImeBaza
  32936.     End
  32937.     Close Bazi
  32938.     Deallocate Bazi
  32939.  
  32940.     If @Kurs<> 1 And @Kurs <> 0 And @Kurs Is Not Null 
  32941.         Select BB.Kto_Anal, A.ImeAnal, sum(BB.Poc_Dolzi/@Kurs) Poc_Dolzi, sum(BB.Poc_Pobaruva/@Kurs) Poc_Pobaruva,
  32942.         SUBSTRING(BB.Kto_anal,1,3) Kto_Sint, SUBSTRING(BB.Kto_anal,1,2) Kto_Sint2, S.ImeSint, Sum(BB.Tek_Dolzi/@Kurs) Tek_Dolzi,
  32943.         Sum(BB.Tek_Pobaruva/@Kurs) Tek_Pobaruva, Sum(BB.Vk_Dolzi/@Kurs) Vk_Dolzi, Sum(BB.Vk_Pobaruva/@Kurs) Vk_Pobaruva, BB.Sifra_Oe, O.ImeOrg, O.Map_Org,
  32944.         Null Sifra_TrosM, Null ImeTrosM, Null Sifra_TrosV, Null ImeTrosV, Null AS KtoDivTrosM
  32945.         From #BrutoBilans BB
  32946.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  32947.         LEFT OUTER Join Sint S On A.Kto_Sint=S.Kto_Sint
  32948.         Left Outer Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  32949.         Group By BB.Kto_Anal, A.ImeAnal, SUBSTRING(BB.Kto_anal,1,3), SUBSTRING(BB.Kto_anal,1,2), S.ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org
  32950.         Order By BB.Kto_Anal
  32951.     Else
  32952.         Select BB.Kto_Anal, A.ImeAnal, sum(BB.Poc_Dolzi) Poc_Dolzi, sum(BB.Poc_Pobaruva) Poc_Pobaruva,
  32953.         SUBSTRING(BB.Kto_anal,1,3) Kto_Sint, SUBSTRING(BB.Kto_anal,1,2) Kto_Sint2, S.ImeSint, Sum(BB.Tek_Dolzi) Tek_Dolzi,
  32954.         Sum(BB.Tek_Pobaruva) Tek_Pobaruva, Sum(BB.Vk_Dolzi) Vk_Dolzi, Sum(BB.Vk_Pobaruva) Vk_Pobaruva, BB.Sifra_Oe, O.ImeOrg, O.Map_Org,
  32955.         Null Sifra_TrosM, Null ImeTrosM, Null Sifra_TrosV, Null ImeTrosV, Null AS KtoDivTrosM
  32956.         From #BrutoBilans BB
  32957.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  32958.         LEFT OUTER Join Sint S On A.Kto_Sint=S.Kto_Sint
  32959.         Left Outer Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  32960.         Group By BB.Kto_Anal, A.ImeAnal, SUBSTRING(BB.Kto_anal,1,3), SUBSTRING(BB.Kto_anal,1,2), S.ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org
  32961.         Order By BB.Kto_Anal
  32962. Go
  32963. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brutobilans_stranski]'))
  32964. drop procedure [dbo].[sp_brutobilans_stranski]
  32965.  
  32966. Go
  32967.  
  32968. CREATE       PROCEDURE    sp_BrutoBilans_Stranski
  32969.     @Datum_Od    Smalldatetime,
  32970.     @Datum_Do    Smalldatetime,
  32971.     @KoiKlasi    Varchar(30),
  32972.     @Sifra_OE    smallint = NULL,
  32973.     @Koi_Oe    varchar(10) = null,
  32974.     @Grupa    char(2) = Null,
  32975.     @KtoSint    char(3) = Null,
  32976.     @Sifra_Div    smallint = Null,
  32977.     @BezDivizija    char(1) = 'N',
  32978.     @PocnuvaSo    varchar(10) = Null,    -- se odnesuva na kontoto
  32979.     @Kurs        decimal(18,4) = 1
  32980. AS
  32981.     Declare @SSQL Varchar(3000)
  32982.     Create Table #BrutoBilans
  32983.     (    Kto_Anal Char(10),
  32984.         Poc_Dolzi Decimal(18,4),
  32985.         Poc_Pobaruva Decimal(18,4),
  32986.         Tek_Dolzi Decimal(18,4),
  32987.         Tek_Pobaruva Decimal(18,4),
  32988.         Vk_Dolzi Decimal(18,4),
  32989.         Vk_Pobaruva Decimal(18,4),
  32990.         Sifra_Oe int
  32991.     )
  32992.     -- Pocetni sostojbi
  32993.     Declare @God as smallint
  32994.     Set @God=year(@Datum_Od)
  32995.     Set @SSQL = 'Select Kto_Anal, Sum(Dolzi) As Poc_Dolzi, Sum(Pobaruva) as Poc_Pobaruva,
  32996.         0 As Tek_Dolzi, 0 As Tek_Pobaruva, 0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe
  32997.         From GStav Where Sifra_Nal=999 AND Year(Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  32998.     If @KoiKlasi Is Not Null
  32999.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  33000.     If @Grupa Is Not Null
  33001.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 2) = ' + @Grupa + ' '
  33002.     If @KtoSint Is Not Null
  33003.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  33004.     If @PocnuvaSo Is Not Null
  33005.         Set @SSQL = @SSQL + ' And Kto_Anal Like ''' + @PocnuvaSo + '% '''
  33006.     If @BezDivizija = 'D'
  33007.         Set @SSQL = @SSQL + ' And Sifra_Div Is Null '
  33008.     Else
  33009.     Begin
  33010.         If @Sifra_Div Is Not Null
  33011.             Set @SSQL = @SSQL + ' And Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  33012.     End
  33013.     If @Sifra_OE Is Not Null
  33014.         Set @SSQL = @SSQL + ' And Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  33015.     If @Koi_OE Is Not NULL
  33016.              Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  33017.     Set @SSQL = @SSQL + 'Group By Kto_Anal, Sifra_Oe'
  33018.     Insert #BrutoBilans Exec(@SSQL)
  33019.     -- Tekoven Promet
  33020.     Set @SSQL = 'Select Kto_Anal, 0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  33021.         Sum(Dolzi) As Tek_Dolzi, Sum(Pobaruva) As Tek_Pobaruva,
  33022.         0 As Vk_Dolzi, 0 As Vk_Pobaruva, Sifra_Oe
  33023.         From GStav  Where Sifra_Nal <> 999 '
  33024.     If @KoiKlasi Is Not Null
  33025.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  33026.     If @Grupa Is Not Null
  33027.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 2) = ' + @Grupa + ' '
  33028.     If @KtoSint Is Not Null
  33029.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  33030.     If @PocnuvaSo Is Not Null
  33031.         Set @SSQL = @SSQL + ' And Kto_Anal Like ''' + @PocnuvaSo + '% '''
  33032.     If @Datum_Od Is Not Null
  33033.         Set @SSQL = @SSQL + 'And Datum_Nal>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  33034.     If @Datum_Do Is Not Null
  33035.         Set @SSQL = @SSQL + 'And Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  33036.     If @BezDivizija = 'D'
  33037.         Set @SSQL = @SSQL + ' And Sifra_Div Is Null '
  33038.     Else
  33039.     Begin
  33040.         If @Sifra_Div Is Not Null
  33041.             Set @SSQL = @SSQL + ' And Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  33042.     End
  33043.     If @Sifra_OE Is Not Null
  33044.         Set @SSQL = @SSQL + ' And Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  33045.     If @Koi_OE Is Not NULL
  33046.              Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  33047.     Set @SSQL = @SSQL + 'Group By Kto_Anal, Sifra_Oe'
  33048.     Insert #BrutoBilans Exec(@SSQL)
  33049.     -- Vkupen Promet
  33050.     Set @SSQL = 'Select Kto_Anal, 0 As Poc_Dolzi, 0 As Poc_Pobaruva,
  33051.         0 As Tek_Dolzi, 0 As Tek_Pobaruva,
  33052.         Sum(Dolzi) As Vk_Dolzi, Sum(Pobaruva) As Vk_Pobaruva, Sifra_Oe
  33053.         From GStav Where  Year(Datum_Nal) = ' + Cast(@God as char(4)) + ' '
  33054.     If @KoiKlasi Is Not Null
  33055.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 1) In (' + @KoiKlasi + ') '
  33056.     If @Grupa Is Not Null
  33057.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 2) = ' + @Grupa + ' '
  33058.     If @KtoSint Is Not Null
  33059.         Set @SSQL = @SSQL + 'And SubString(Kto_Anal, 1, 3) = ' + @KtoSint + ' '
  33060.     If @PocnuvaSo Is Not Null
  33061.         Set @SSQL = @SSQL + ' And Kto_Anal Like ''' + @PocnuvaSo + '% '''
  33062.     If @Datum_Do Is Not Null
  33063.         Set @SSQL = @SSQL + 'And Datum_Nal<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  33064.     If @BezDivizija = 'D'
  33065.         Set @SSQL = @SSQL + ' And Sifra_Div Is Null '
  33066.     Else
  33067.     Begin
  33068.         If @Sifra_Div Is Not Null
  33069.             Set @SSQL = @SSQL + ' And Sifra_Div = ' + Cast(@Sifra_Div AS varchar(6)) + ' '
  33070.     End
  33071.     If @Sifra_OE Is Not Null
  33072.         Set @SSQL = @SSQL + ' And Sifra_OE = ' + Cast(@Sifra_OE AS varchar(6)) + ' '
  33073.     If @Koi_OE Is Not NULL
  33074.              Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  33075.     Set @SSQL = @SSQL + 'Group By Kto_Anal, Sifra_Oe'
  33076.     Insert #BrutoBilans Exec(@SSQL)
  33077.  
  33078.     If @Kurs <> 1 And @Kurs <> 0 And @Kurs Is Not Null
  33079.         Select A.Str_Kto Kto_Anal, A.SImeAnal ImeAnal, S.Str_Kto Kto_Sint, Substring(S.Str_Kto,1,2) Kto_Sint2, S.SImeSint ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org, 
  33080.             sum(BB.Poc_Dolzi/@Kurs) Poc_Dolzi, sum(BB.Poc_Pobaruva/@Kurs) Poc_Pobaruva,
  33081.             Sum(BB.Tek_Dolzi/@Kurs) Tek_Dolzi, Sum(BB.Tek_Pobaruva/@Kurs) Tek_Pobaruva, 
  33082.             Sum(BB.Vk_Dolzi/@Kurs) Vk_Dolzi, Sum(BB.Vk_Pobaruva/@Kurs) Vk_Pobaruva
  33083.         From #BrutoBilans BB
  33084.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  33085.         Left Outer Join Sint S On A.Kto_Sint=S.Kto_Sint
  33086.         Left Outer Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  33087.         Group By A.Str_Kto, A.SImeAnal, S.Str_Kto, Substring(S.Str_Kto,1,2), S.SImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org
  33088.         Order By A.Str_Kto
  33089.     Else
  33090.         Select A.Str_Kto Kto_Anal, A.SImeAnal ImeAnal, S.Str_Kto Kto_Sint, Substring(S.Str_Kto,1,2) Kto_Sint2, S.SImeSint ImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org, 
  33091.             sum(BB.Poc_Dolzi) Poc_Dolzi, sum(BB.Poc_Pobaruva) Poc_Pobaruva,
  33092.             Sum(BB.Tek_Dolzi) Tek_Dolzi, Sum(BB.Tek_Pobaruva) Tek_Pobaruva, 
  33093.             Sum(BB.Vk_Dolzi) Vk_Dolzi, Sum(BB.Vk_Pobaruva) Vk_Pobaruva
  33094.         From #BrutoBilans BB
  33095.         Inner Join Anal A On BB.Kto_Anal=A.Kto_Anal
  33096.         Left Outer Join Sint S On A.Kto_Sint=S.Kto_Sint
  33097.         Left Outer Join Orged O On O.Sifra_Oe = BB.Sifra_Oe
  33098.         Group By A.Str_Kto, A.SImeAnal, S.Str_Kto, Substring(S.Str_Kto,1,2), S.SImeSint, BB.Sifra_Oe, O.ImeOrg, O.Map_Org
  33099.         Order By A.Str_Kto
  33100. Go
  33101. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_brzquer_str]'))
  33102. drop procedure [dbo].[sp_brzquer_str]
  33103.  
  33104. Go
  33105.  
  33106. CREATE       PROCEDURE sp_BrzQuer_Str
  33107.     @Tabela as varchar (30),
  33108.     @Kluc as varchar (30),
  33109.     @VrKluc as varchar (30), 
  33110.     @Pole as varchar (30)
  33111. AS
  33112.     Declare @SSQL as varchar(4000)
  33113.     Set @SSQL = ' Select ' + @Pole + ' from ' + @Tabela + ' where ' + @Kluc + ' = ''' + @Vrkluc + ''''
  33114.     Exec(@SSQL)
  33115.     print @SSQL
  33116.     Exec(@SSQL)
  33117.  
  33118.  
  33119.  
  33120. Go
  33121. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_budzet_plan_ostvareno]'))
  33122. drop procedure [dbo].[sp_budzet_plan_ostvareno]
  33123.  
  33124. Go
  33125.  
  33126.  
  33127. CREATE   PROCEDURE sp_Budzet_Plan_Ostvareno
  33128.     @Godina    smallint,
  33129.     @Mesec_Od    smallint,
  33130.     @Mesec_Do    smallint,
  33131.     @Kurs        decimal(18,6),
  33132.     @KojaPodel    varchar(10)='DIV'
  33133. AS
  33134.  
  33135.     Declare @SSQL as varchar(8000)
  33136.  
  33137.     Create Table #Rez
  33138.     (
  33139.         Godina        smallint,
  33140.         Mesec        smallint,    --varchar(2),
  33141.         Sifra_Div    varchar(20),
  33142.         Planirano    decimal(18,4),
  33143.         Realizirano    decimal(18,4)
  33144.     )
  33145.  
  33146.     Insert Into #Rez
  33147.     Select Godina, Mesec, Sifra, Sum(Iznos), 0
  33148.     From PlanBudzet
  33149.     Where Godina=@Godina And Mesec>=@Mesec_Od And Mesec<=@Mesec_Do
  33150.     Group By Godina, Mesec, Sifra
  33151. IF @KojaPodel='DIV'
  33152. BEGIN
  33153.     Insert Into #Rez
  33154.     Select Year(G.Datum_Nal), Month(G.Datum_Nal), GAD.Sifra_Div, 0, Sum(GAD.Dolzi-GAD.Pobaruva)
  33155.     From GStav G
  33156.     Inner Join GstAnDiv GAD On GAD.GstID=G.GstID
  33157.     Where Year(G.Datum_Nal)=@Godina And Month(G.Datum_Nal)>=@Mesec_Od And Month(G.Datum_Nal)<=@Mesec_Do
  33158.     Group By Year(G.Datum_Nal), Month(G.Datum_Nal), GAD.Sifra_Div
  33159.  
  33160.     Select R.Godina, (Case When R.Mesec=1 Then  '01 January' 
  33161.                             When R.Mesec=2 Then '02 February'
  33162.                             When R.Mesec=3 Then '03 March'
  33163.                             When R.Mesec=4 Then '04 April'
  33164.                             When R.Mesec=5 Then '05 May'
  33165.                             When R.Mesec=6 Then '06 June'
  33166.                             When R.Mesec=7 Then '07 July'
  33167.                             When R.Mesec=8 Then '08 August'
  33168.                             When R.Mesec=9 Then '09 September'
  33169.                             When R.Mesec=10 Then '10 October'
  33170.                             When R.Mesec=11 Then '11 November'
  33171.                             When R.Mesec=12 Then '12 December' End) Mes, 
  33172.         D.Sif_Prik, D.ImeStr, D.Gr_Div, ImeGrDiv, Sum(Planirano/@Kurs) Budget, Sum(Realizirano/@Kurs) Realized
  33173.     From #Rez R
  33174.     Left Outer Join Divizii D On D.Sifra_Div=R.Sifra_Div
  33175.     Group By R.Godina, R.Mesec, D.Sif_Prik, D.ImeStr, D.Gr_Div, ImeGrDiv
  33176. END
  33177. ELSE IF @KojaPodel='ANAL'
  33178. BEGIN
  33179.     Insert Into #Rez
  33180.     Select Year(G.Datum_Nal), Month(G.Datum_Nal), G.Kto_Anal, 0, Sum(G.Dolzi-G.Pobaruva)
  33181.     From GStav G
  33182.     Where Year(G.Datum_Nal)=@Godina And Month(G.Datum_Nal)>=@Mesec_Od And Month(G.Datum_Nal)<=@Mesec_Do AND 
  33183.     G.KTo_Anal IN (SELECT Sifra FROM PlanBudzet WHERE Godina=@Godina)
  33184.     Group By Year(G.Datum_Nal), Month(G.Datum_Nal),  G.Kto_Anal
  33185.  
  33186.     UPDATE #Rez SET Realizirano=Realizirano * -1 WHERE Realizirano<0
  33187.  
  33188.     Select R.Godina, (Case When R.Mesec=1 Then  '01 January' 
  33189.                             When R.Mesec=2 Then '02 February'
  33190.                             When R.Mesec=3 Then '03 March'
  33191.                             When R.Mesec=4 Then '04 April'
  33192.                             When R.Mesec=5 Then '05 May'
  33193.                             When R.Mesec=6 Then '06 June'
  33194.                             When R.Mesec=7 Then '07 July'
  33195.                             When R.Mesec=8 Then '08 August'
  33196.                             When R.Mesec=9 Then '09 September'
  33197.                             When R.Mesec=10 Then '10 October'
  33198.                             When R.Mesec=11 Then '11 November'
  33199.                             When R.Mesec=12 Then '12 December' End) Mes, 
  33200.         A.Kto_Anal Sif_Prik, A.ImeAnal ImeStr, A.Kto_Sint Gr_Div, S.ImeSint ImeGrDiv, Sum(Planirano/@Kurs) Budget, Sum(Realizirano/@Kurs) Realized
  33201.     From #Rez R
  33202.     Left Outer Join Anal A ON A.Kto_Anal=R.Sifra_Div
  33203.     LEFT OUTER JOIN Sint S ON A.Kto_Sint=S.Kto_Sint
  33204.     Group By R.Godina, R.Mesec, A.Kto_Anal, A.ImeAnal, A.Kto_Sint, S.ImeSint
  33205. END
  33206.                          
  33207.  
  33208. Go
  33209. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cen_kom_izveden]'))
  33210. drop procedure [dbo].[sp_cen_kom_izveden]
  33211.  
  33212. Go
  33213.  
  33214. CREATE procedure sp_Cen_Kom_Izveden
  33215.     @Sifra_kup    char(6),
  33216.     @Osn_Cen_Kom    varchar(6) = Null,
  33217.     @Sifra_art_Od    varchar(20) = Null,
  33218.     @Sifra_art_Do    varchar(20) = Null,
  33219.     @Kto        char(6) = Null,
  33220.     @Sifra_Gr    char(3) = Null,
  33221.     @Sifra_Podg    char(6) = Null,
  33222.     @Lokacija    varchar(10) = Null,
  33223.     @Sifra_Brand    Smallint = Null,
  33224.     @Sifra_ZBrand    Smallint = Null,
  33225.     @SifrA_Tar    chaR(3) = Null
  33226.  
  33227.  AS
  33228.  
  33229.     Create Table #CenKom
  33230.     (
  33231.      Sifra_Kup    char(6),
  33232.      Sifra_Art    varchaR(20),
  33233.      Aktiven    chaR(1),
  33234.      Cena        decimal(18,6),
  33235.      Popust        decimal(9,2)
  33236.     )
  33237.  
  33238.     Declare @SSQLUsl as Varchar(2000)
  33239.     Set @SSQLUsl = ' Where 1 = 1 '
  33240.  
  33241.     If @Sifra_Art_Od Is Not Null
  33242.         Set @SSQLUsl = @SSQLUsl + ' and C.Sifra_art >= ''' + @Sifra_art_Od + ''' '
  33243.     If @Sifra_Art_Do Is Not Null
  33244.         Set @SSQLUsl = @SSQLUsl + ' and C.Sifra_art <= ''' + @Sifra_art_Do + ''' '
  33245.  
  33246.     If @Kto Is Not Null
  33247.         Set @SSQLUsl = @SSQLUsl + ' and K.Kto= ''' + @Kto + ''' '
  33248.     If @Sifra_Podg Is Not Null
  33249.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  33250.     If @Sifra_Gr Is Not Null
  33251.         Set @SSQLUsl = @SSQLUsl + ' and P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  33252.     If @Lokacija Is Not Null
  33253.         Set @SSQLUsl = @SSQLUsl + ' and K.Lokacija = ''' + @Lokacija + ''' '
  33254.     If @Sifra_Brand Is Not Null
  33255.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Drg = ' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  33256.     If @Sifra_ZBrand Is Not Null
  33257.         Set @SSQLUsl = @SSQLUsl + ' and B.Sifra_Drg1 = ' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  33258.        If @Sifra_Tar Is Not Null
  33259.               Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Tar = ''' + @Sifra_Tar + ''' '
  33260.  
  33261.     Declare @SSQL as Varchar(2000)
  33262.  
  33263.     --- Insertiraj gi onie artikli koi DIREKTNO se na ovoj komint
  33264.     Set @SSQL= ' Insert Into #CenKom (Sifra_Kup, Sifra_Art, Aktiven, Cena, Popust)
  33265.              Select C.Sifra_Kup, C.Sifra_art, C.Aktiven, C.Cena, C.Popust
  33266.              From Cenovnik C '
  33267.  
  33268.     Declare @SSQL_Join as Varchar(2000)
  33269.     Set @SSQL_Join= ''
  33270.     If @Sifra_ZBrand Is Not Null or @Sifra_Gr is Not null or @Sifra_Podg is Not null
  33271.             or @Lokacija is not Null or @Kto is not null or @Sifra_Brand is not null 
  33272.             or @Sifra_Tar is not null
  33273.            Set @SSQL_Join = @SSQL_Join + ' INNER JOIN Katart K ON K.Sifra_Art=C.Sifra_Art '
  33274.     If @Sifra_ZBrand Is Not Null
  33275.            Set @SSQL_Join = @SSQL_Join + ' INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  33276.     If @Sifra_Gr Is Not Null
  33277.            Set @SSQL_Join = @SSQL_Join + ' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  33278.  
  33279.     Exec (@SSQL + @SSQL_Join + @SSQLUsl + ' and C.Sifra_Kup = ''' + @Sifra_Kup + ''' ')
  33280.  
  33281.     -- Najdi vo koja cenovna grupa e komintentot, i dodaj gi cenite od taa cenovna grupa
  33282.     Declare @KDrugo1 varchar(6)
  33283.     Declare @TipKup varchar(11)
  33284.     select @KDrugo1 = cast (KDrugo1 as varchar(6)),
  33285.            @TipKup = TipKup
  33286.     from Komint
  33287.     where Sifra_Kup = @Sifra_Kup
  33288.  
  33289.     if @KDrugo1 is not null
  33290.     begin
  33291.         Declare @ZbirenKom as varchar(6)
  33292.         set @ZbirenKom = dbo.fn_LevoNuliStr(@KDrugo1, 6)    -- Svedi na ssifra na komintent
  33293.  
  33294.         Set @SSQL= ' Insert Into #CenKom (Sifra_Kup, Sifra_Art, Aktiven, Cena, Popust)
  33295.                  Select C.Sifra_Kup, C.Sifra_art, C.Aktiven, C.Cena, C.Popust
  33296.                  From Cenovnik C '
  33297.  
  33298.         Exec (@SSQL + @SSQL_Join + @SSQLUsl + 
  33299.             ' and C.Sifra_Art not in (select sifra_art from #CenKom)
  33300.               and C.Sifra_Kup = ''' + @ZbirenKom + ''' ')
  33301.             
  33302.     end
  33303.  
  33304.     -- Dodaj gi cenite od OSNOVNIOT CENOVNIK, AKO IMA TAKOV
  33305.     if @Osn_Cen_Kom is not null
  33306.     begin
  33307.         Set @SSQL= ' Insert Into #CenKom (Sifra_Kup, Sifra_Art, Aktiven, Cena, Popust)
  33308.                  Select C.Sifra_Kup, C.Sifra_art, C.Aktiven, C.Cena, C.Popust
  33309.                  From Cenovnik C '
  33310.  
  33311.         Exec (@SSQL + @SSQL_Join + @SSQLUsl + 
  33312.             ' and C.Sifra_Art not in (select sifra_art from #CenKom)
  33313.               and C.Sifra_Kup = ''' + @Osn_Cen_Kom + ''' ')
  33314.             
  33315.     end
  33316.  
  33317.     -- Presmetaj gi rabatite
  33318.     update #CenKom
  33319.     set Popust = 0
  33320.     where Popust is null
  33321.  
  33322.     -- Najdi vo koja RABATNA grupa e komintentot, i dodeli gi rabatite od taa cenovna grupa
  33323.     -- Gore go najdov @TipKup zaradi efikasnost
  33324.     update #CenKom
  33325.     set Popust = CP.Uces
  33326.     from CenPoPodgr CP,
  33327.          Katart K
  33328.     where CP.Tip_Podelba = 'P' and CP.TipKup = @TipKup 
  33329.           and K.Sifra_Art = #CenKom.Sifra_Art
  33330.           and K.Sifra_Podg = CP.Sifra_Podelba
  33331.  
  33332.     -- Vrati go rezutltatot
  33333.     select C.*, Kom.ImeKup, K.ImeArt, K.EdMera
  33334.     from #CenKom C
  33335.     inner join Katart K on C.Sifra_Art = K.Sifra_Art
  33336.     inner join Komint Kom on C.Sifra_Kup = Kom.Sifra_Kup
  33337.         Order By C.Sifra_Art
  33338.  
  33339.  
  33340.  
  33341. Go
  33342. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cen_kombiniran]'))
  33343. drop procedure [dbo].[sp_cen_kombiniran]
  33344.  
  33345. Go
  33346.  
  33347. create procedure sp_Cen_Kombiniran
  33348.     @Sifra_kup    char(6),
  33349.     @Sifra_art_Od    varchar(20) = Null,
  33350.     @Sifra_art_Do    varchar(20) = Null,
  33351.     @Kto        char(6) = Null,
  33352.     @Sifra_Gr    char(3) = Null,
  33353.     @Sifra_Podg    char(6) = Null,
  33354.     @Lokacija    varchar(10) = Null,
  33355.     @Sifra_Brand    Smallint = Null,
  33356.     @Sifra_ZBrand    Smallint = Null,
  33357.     @SifrA_Tar    chaR(3) = Null,
  33358.     @KojaPodel    char(1) = Null
  33359.  
  33360.  AS
  33361.  
  33362.     Create Table #CenKom
  33363.     (
  33364.      Sifra_Kup    char(6),
  33365.      Sifra_Elem    varchaR(20),
  33366.      Ime_Elem    varchaR(50),
  33367.      Tip_Elem    char(1),
  33368.      Aktiven    chaR(1),
  33369.      Cena        decimal(18,6),
  33370.      Popust        decimal(9,2)
  33371.     )
  33372.  
  33373.     Declare @SSQLUsl as Varchar(2000)
  33374.     Set @SSQLUsl = ' Where 1 = 1 '
  33375.  
  33376.     If @Sifra_Art_Od Is Not Null
  33377.         Set @SSQLUsl = @SSQLUsl + ' and C.Sifra_art >= ''' + @Sifra_art_Od + ''' '
  33378.     If @Sifra_Art_Do Is Not Null
  33379.         Set @SSQLUsl = @SSQLUsl + ' and C.Sifra_art <= ''' + @Sifra_art_Do + ''' '
  33380.  
  33381.     If @Kto Is Not Null
  33382.         Set @SSQLUsl = @SSQLUsl + ' and K.Kto= ''' + @Kto + ''' '
  33383.     If @Sifra_Podg Is Not Null
  33384.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  33385.     If @Sifra_Gr Is Not Null
  33386.         Set @SSQLUsl = @SSQLUsl + ' and P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  33387.     If @Lokacija Is Not Null
  33388.         Set @SSQLUsl = @SSQLUsl + ' and K.Lokacija = ''' + @Lokacija + ''' '
  33389.     If @Sifra_Brand Is Not Null
  33390.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Drg = ' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  33391.     If @Sifra_ZBrand Is Not Null
  33392.         Set @SSQLUsl = @SSQLUsl + ' and B.Sifra_Drg1 = ' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  33393.        If @Sifra_Tar Is Not Null
  33394.               Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Tar = ''' + @Sifra_Tar + ''' '
  33395.  
  33396.     Declare @SSQL as Varchar(2000)
  33397.  
  33398.     --- Insertiraj gi onie artikli koi DIREKTNO se na ovoj komint
  33399.     Set @SSQL= ' Insert Into #CenKom 
  33400.             (Sifra_Kup, Sifra_Elem, Ime_Elem, Aktiven, Cena, Popust, Tip_Elem)
  33401.              Select C.Sifra_Kup, C.Sifra_art, K.ImeArt, C.Aktiven, C.Cena, C.Popust, ''A''
  33402.              From Cenovnik C 
  33403.                 INNER JOIN Katart K ON K.Sifra_Art=C.Sifra_Art '
  33404.  
  33405.     Declare @SSQL_Join as Varchar(2000)
  33406.     Set @SSQL_Join= ''
  33407.     If @Sifra_ZBrand Is Not Null
  33408.            Set @SSQL_Join = @SSQL_Join + ' INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  33409.     If @Sifra_Gr Is Not Null
  33410.            Set @SSQL_Join = @SSQL_Join + ' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  33411.  
  33412.     Exec (@SSQL + @SSQL_Join + @SSQLUsl + ' and C.Sifra_Kup = ''' + @Sifra_Kup + ''' ')
  33413.  
  33414.     --- Insertiraj gi onie elementite od CENOVNIK PO PODZGRUPI
  33415.     Set @SSQL= ' Insert Into #CenKom 
  33416.             (Sifra_Kup, Sifra_Elem, Ime_Elem, Aktiven, Cena, Popust, Tip_Elem)
  33417.              Select C.TipKup, C.Sifra_Podelba, null, ''D'', 0, C.Uces, ''P''
  33418.              From CenPoPOdgr C 
  33419.              where C.TipKup = ''' + @Sifra_Kup + ''' '
  33420.  
  33421.     Exec (@SSQL)
  33422.  
  33423.     if @KojaPodel = '1'
  33424.         update #CenKom
  33425.         set Ime_Elem = D.Ime_1
  33426.         from Drugo1 D
  33427.         where D.Sifra_1 = #CenKom.Sifra_Elem
  33428.     else if @KojaPodel = '2'
  33429.         update #CenKom
  33430.         set Ime_Elem = D.Ime_2
  33431.         from Drugo2 D
  33432.         where D.Sifra_2 = #CenKom.Sifra_Elem
  33433.     else if @KojaPodel = '7'
  33434.         update #CenKom
  33435.         set Ime_Elem = D.Ime_7
  33436.         from Drugo7 D
  33437.         where D.Sifra_7 = #CenKom.Sifra_Elem
  33438.  
  33439.     -- Vrati go rezutltatot
  33440.     select C.*, Kom.ImeKup
  33441.     from #CenKom C
  33442.     inner join Komint Kom 
  33443.         on C.Sifra_Kup = Kom.Sifra_Kup
  33444.         Order By C.Tip_Elem, C.Ime_Elem
  33445.  
  33446.  
  33447.  
  33448.  
  33449.  
  33450. Go
  33451. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cen_kup_podel]'))
  33452. drop procedure [dbo].[sp_cen_kup_podel]
  33453.  
  33454. Go
  33455.  
  33456. create procedure sp_Cen_Kup_Podel
  33457.     @Sifra_kup    char(6) = Null,
  33458.     @Sifra_kup_Do    char(6) = Null,
  33459.     @Sifra_art_Od    varchar(20) = Null,
  33460.     @Sifra_art_Do    varchar(20) = Null,
  33461.     @Kto        char(6) = Null,
  33462.     @Sifra_Gr    char(3) = Null,
  33463.     @Sifra_Podg    char(6) = Null,
  33464.     @Lokacija    varchar(10) = Null,
  33465.     @Sifra_Brand    Smallint = Null,
  33466.     @Sifra_ZBrand    Smallint = Null,
  33467.     @SifrA_Tar    chaR(3) = Null,
  33468.     @KojaPodel    char(1) = Null
  33469.  
  33470.  AS
  33471.  
  33472.     Create Table #CenKom
  33473.     (
  33474.      Sifra_Kup    char(6),
  33475.      Sifra_Elem    varchaR(20),
  33476.      Ime_Elem    varchaR(50),
  33477.      Tip_Elem    char(1),
  33478.      Aktiven    chaR(1),
  33479.      Cena        decimal(18,6),
  33480.      Popust        decimal(9,2)
  33481.     )
  33482.  
  33483.     Declare @SSQL as Varchar(2000)
  33484.  
  33485.     Set @SSQL= ' Insert Into #CenKom 
  33486.             (Sifra_Kup, Sifra_Elem, Ime_Elem, Aktiven, Cena, Popust, Tip_Elem)
  33487.              Select C.TipKup, C.Sifra_Podelba, null, ''D'', 0, C.Uces, ''P''
  33488.              From CenPoPOdgr C 
  33489.              where 1 = 1  '
  33490.     if @Sifra_Kup is not null
  33491.         set @SSQL = @SSQL + ' and C.TipKup >= ''' + @Sifra_Kup + ''' '
  33492.     if @Sifra_Kup_Do is not null
  33493.         set @SSQL = @SSQL + ' and C.TipKup <= ''' + @Sifra_Kup_Do + ''' '
  33494.  
  33495.     Exec (@SSQL)
  33496.  
  33497.     if @KojaPodel = '1'
  33498.         update #CenKom
  33499.         set Ime_Elem = D.Ime_1
  33500.         from Drugo1 D
  33501.         where D.Sifra_1 = #CenKom.Sifra_Elem
  33502.     else if @KojaPodel = '2'
  33503.         update #CenKom
  33504.         set Ime_Elem = D.Ime_2
  33505.         from Drugo2 D
  33506.         where D.Sifra_2 = #CenKom.Sifra_Elem
  33507.     else if @KojaPodel = '7'
  33508.         update #CenKom
  33509.         set Ime_Elem = D.Ime_7
  33510.         from Drugo7 D
  33511.         where D.Sifra_7 = #CenKom.Sifra_Elem
  33512.  
  33513.     -- Vrati go rezutltatot
  33514.     select C.*, Kom.ImeKup
  33515.     from #CenKom C
  33516.     inner join Komint Kom 
  33517.         on C.Sifra_Kup = Kom.Sifra_Kup
  33518.  
  33519.  
  33520.  
  33521. Go
  33522. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cenaodsoart]'))
  33523. drop procedure [dbo].[sp_cenaodsoart]
  33524.  
  33525. Go
  33526. CREATE  PROCEDURE sp_CenaOdSoArt
  33527.     @Sifra_OE    smallint,
  33528.     @Sifra_art    varchar(20),
  33529.     @Cena        decimal(18,2)  OUTPUT,
  33530.     @DanCena    char(1) OUTPUT
  33531.  AS
  33532.     SELECT @Cena = Cena, @DanCena = DanCena     FROM SoArt WHERE Sifra_OE=@Sifra_OE AND Sifra_Art = @Sifra_Art
  33533.  
  33534.  
  33535.  
  33536. Go
  33537. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ceniodcengrorg]'))
  33538. drop procedure [dbo].[sp_ceniodcengrorg]
  33539.  
  33540. Go
  33541.  
  33542.  
  33543. CREATE           PROCEDURE sp_CeniOdCenGrOrg
  33544.     @Sifra_OE        smallint
  33545. AS
  33546. Declare @Sif_GrOrg char(6)
  33547. SELECT @Sif_GrOrg = G.Sif_GrOrg FROM SGrOrg S INNER JOIN GrOrg G ON S.Sif_GrOrg=G.Sif_GrOrg
  33548. WHERE G.Edinstvena ='D' AND S.Sifra_Oe=@Sifra_OE
  33549. SELECT Sif_GrOrg, Sifra_Art,Cena FROM CenGrOrg WHERE Sif_GrOrg=@Sif_GrOrg
  33550.  
  33551.  
  33552.  
  33553. Go
  33554. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cenizakatkasa]'))
  33555. drop procedure [dbo].[sp_cenizakatkasa]
  33556.  
  33557. Go
  33558.  
  33559. CREATE           PROCEDURE sp_CeniZaKatKasa
  33560.     @Sifra_OE        smallint,
  33561.     @Datum_Od        smalldatetime =NULL
  33562. AS
  33563. IF @Datum_Od IS NULL SET @Datum_Od = GetDate()
  33564. Declare @SSQL varchar(3000)
  33565. CREATE TABLE #TmpCen
  33566. (Sifra_Art varchar (20),
  33567. MalCena decimal(18, 4) ,
  33568. DanMalCena char(1),
  33569. Kolic    decimal(18,4) )
  33570. INSERT INTO #TmpCen (Sifra_Art, MalCena,DanMalCena, Kolic) SELECT Sifra_Art, Cena, DanCena, Vlez-Izlez FROM SoArt WHERE Sifra_OE=@Sifra_OE
  33571. CREATE TABLE #TmpNeraskn
  33572. (Sifra_Art    varchar(20),
  33573.  Kolic        decimal(18,4))
  33574. INSERT INTO #TmpNeraskn (Sifra_Art, Kolic)   SELECT Sifra_Art, Sum(Kolic-RKolic) FROM KSPromet WHERE Sifra_OE=@Sifra_OE AND Kolic<>RKolic GROUP BY Sifra_Art
  33575. UPDATE #TmpCen SET Kolic = #TmpCen.Kolic - N.Kolic FROM #TmpNeraskn N WHERE #TmpCen.Sifra_Art = N.Sifra_Art
  33576. SELECT * FROM #TmpCen
  33577.  
  33578.  
  33579.  
  33580. Go
  33581. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cenovnici_istorija]'))
  33582. drop procedure [dbo].[sp_cenovnici_istorija]
  33583.  
  33584. Go
  33585. CREATE          PROCEDURE sp_Cenovnici_Istorija
  33586.     @VlIzl            char(1)='I', 
  33587.     @Tip_Sif_Kup        char(1)=' ', 
  33588.     @Sif_Kup_Gen        varchar(11)='',
  33589.     @Tip_Sif_Art        char(1)='A',
  33590.     @Datum_Od        smalldatetime,
  33591.     @Datum_Do        smalldatetime,
  33592.     @Sifra_Podg        char(6)=Null,
  33593.     @Sifra_Gr        char(3)=Null,
  33594.     @Sifra_Drg        smallint=Null,
  33595.     @Sifra_Art_Od        varchar(20)=Null,
  33596.     @Sifra_Art_Do        varchar(20)=Null,
  33597.     @Podr            char(1)='S',            --Sifra,Ime
  33598.     @ADrugo1        smallint = Null,
  33599.     @ADrugo2        smallint = Null,
  33600.     @ADrugo3        smallint = Null,
  33601.     @ADrugo4        smallint = Null,
  33602.     @ADrugo5        smallint = Null,
  33603.     @KFADrugo1        char(1) = 'N',
  33604.     @KFADrugo2        char(1) = 'N',
  33605.     @KFADrugo3        char(1) = 'N',
  33606.     @KFADrugo4        char(1) = 'N',
  33607.     @KFADrugo5        char(1) = 'N'
  33608. AS
  33609. Declare @SSQL varchar(3000)
  33610. CREATE TABLE #TmpArt
  33611. (Sif_Art_Gen varchar (20),
  33612. ImeArt    varchar(40))
  33613. CREATE TABLE #TmpUsl
  33614. (VlIzl char(1),
  33615. Tip_Sif_Kup char(1),  
  33616. Sif_Kup_Gen varchar (11),
  33617. Tip_Sif_Art char(1),
  33618. Sif_Art_Gen varchar (20),
  33619. Datum_Od smalldatetime,
  33620. Rok_Dosp smallint,
  33621. Datum_Do smalldatetime,
  33622. Uces decimal(6,2),
  33623. Dod_Uces decimal(6,2),
  33624. Cena decimal(18,4),
  33625. MalCena decimal(18,4),
  33626. DanCena char(1),
  33627. DanMalCena char(1),
  33628. ImeKup    varchar(40),
  33629. ImeArt    varchar(40),
  33630. Sifra_Podg char(6),
  33631. Ime_Podg varchar(40),
  33632. Sifra_Gr char(3),
  33633. Ime_Gr varchar(40)   )
  33634. IF @Tip_Sif_Art= 'A'
  33635. Begin
  33636.     SET @SSQL = 'SELECT A.Sifra_Art, A.ImeArt FROM KatArt A ' 
  33637.     IF @Sifra_Gr IS NOT NULL
  33638.         SET @SSQL = @SSQL + 'INNER JOIN Podgrupi P ON A.Sifra_Podg=P.Sifra_Podg '
  33639.     SET @SSQL = @SSQL +' WHERE 1=1 '    
  33640.     IF @Sifra_Podg IS NOT NULL
  33641.         SET @SSQL = @SSQL + ' AND A.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  33642.     IF @Sifra_Gr IS NOT NULL
  33643.         SET @SSQL = @SSQL + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  33644.     IF @Sifra_Drg IS NOT NULL
  33645.         SET @SSQL = @SSQL + ' AND A.Sifra_Drg = ' + Cast(@Sifra_Drg as varchar(5)) + ' '
  33646.     If @Sifra_Art_Od IS NOT NULL
  33647.         SET @SSQL = @SSQL + ' AND A.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  33648.     If @Sifra_Art_Do IS NOT NULL
  33649.         SET @SSQL = @SSQL + ' AND A.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  33650.     IF @ADrugo1 IS NOT NULL
  33651.         IF @KFADrugo1 = 'D'
  33652.             SET @SSQL = @SSQL + ' AND (A.Drugo1 <> ' + Cast(@ADrugo1 as varchar(5)) + ' Or A.Drugo1 Is Null) '
  33653.         Else
  33654.             SET @SSQL = @SSQL + ' AND A.Drugo1 = ' + Cast(@ADrugo1 as varchar(5)) + ' '
  33655.     IF @ADrugo2 IS NOT NULL
  33656.         IF @KFADrugo2 = 'D'
  33657.             SET @SSQL = @SSQL + ' AND (A.Drugo2 <> ' + Cast(@ADrugo2 as varchar(5)) + ' Or A.Drugo2 Is Null) '
  33658.         Else
  33659.             SET @SSQL = @SSQL + ' AND A.Drugo2 = ' + Cast(@ADrugo2 as varchar(5)) + ' '
  33660.     IF @ADrugo3 IS NOT NULL
  33661.         IF @KFADrugo3 = 'D'
  33662.             SET @SSQL = @SSQL + ' AND (A.Drugo3 <> ' + Cast(@ADrugo3 as varchar(5)) + ' Or A.Drugo3 Is Null) '
  33663.         Else
  33664.             SET @SSQL = @SSQL + ' AND A.Drugo3 = ' + Cast(@ADrugo3 as varchar(5)) + ' '
  33665.     IF @ADrugo4 IS NOT NULL
  33666.         IF @KFADrugo4 = 'D'
  33667.             SET @SSQL = @SSQL + ' AND (A.Drugo4 <> ' + Cast(@ADrugo4 as varchar(5)) + ' Or A.Drugo4 Is Null) '
  33668.         Else
  33669.             SET @SSQL = @SSQL + ' AND A.Drugo4 = ' + Cast(@ADrugo4 as varchar(5)) + ' '
  33670.     IF @ADrugo5 IS NOT NULL
  33671.         IF @KFADrugo5 = 'D'
  33672.             SET @SSQL = @SSQL + ' AND (A.Drugo5 <> ' + Cast(@ADrugo5 as varchar(5)) + ' Or A.Drugo5 Is Null) '
  33673.         Else
  33674.             SET @SSQL = @SSQL + ' AND A.Drugo5 = ' + Cast(@ADrugo5 as varchar(5)) + ' '
  33675. End
  33676. ELSE IF @Tip_Sif_Art= 'P'
  33677.     SET @SSQL = 'SELECT P.Sifra_Podg, P.Ime_Podg FROM Podgrupi P '
  33678. ELSE IF @Tip_Sif_Art= 'G'
  33679.     SET @SSQL = 'SELECT G.Sifra_Gr, G.Ime_Gr FROM Grupi G '
  33680. ELSE IF @Tip_Sif_Art= 'B'
  33681.     SET @SSQL = 'SELECT D.Sifra_Drg, D.Ime FROM  DrgPodel D '
  33682. ELSE IF @Tip_Sif_Art= '1'
  33683.     SET @SSQL = 'SELECT D.Sifra_1, D.Ime_1 FROM  Drugo1 D '
  33684. ELSE IF @Tip_Sif_Art= '2'
  33685.     SET @SSQL = 'SELECT D.Sifra_2, D.Ime_2 FROM  Drugo2 D '
  33686. ELSE IF @Tip_Sif_Art= '3'
  33687.     SET @SSQL = 'SELECT D.Sifra_3, D.Ime_3 FROM Drugo3 D '
  33688. ELSE IF @Tip_Sif_Art= '4'
  33689.     SET @SSQL = 'SELECT D.Sifra_4, D.Ime_4 FROM Drugo4 D '
  33690. ELSE IF @Tip_Sif_Art= '5'
  33691.     SET @SSQL = 'SELECT D.Sifra_5, D.Ime_5 FROM Drugo5 D '
  33692. ELSE 
  33693.     SET @SSQL = ' SELECT TOP 1 '''', '''' FROM KatArt '
  33694. INSERT INTO #TmpArt (Sif_Art_Gen, ImeArt) EXEC (@SSQL)
  33695. SET @SSQL='SELECT U.VlIzl, U.Tip_Sif_Kup, U.Sif_Kup_Gen, U.Tip_Sif_Art, U.Sif_Art_Gen, U.Datum_Od, U.Rok_Dosp, U.Datum_Do, U.Uces,
  33696. U.Dod_Uces, U.Cena, U.MalCena, U.DanCena, U.DanMalCena
  33697. FROM #TmpArt A INNER JOIN Usl_Komerc_Per U ON A.Sif_Art_Gen = U.Sif_Art_Gen
  33698. WHERE U.Datum_Od >= '''+ cast(@Datum_Od as varchar(30))+ ''' AND U.Datum_Od <='''+CAST(@Datum_Do as varchar(30))+ ''' '
  33699. IF @Sif_Kup_Gen <>'' AND @Tip_Sif_Kup <>' '
  33700.     SET @SSQL=@SSQL+' AND Tip_Sif_Kup=''' + @Tip_Sif_Kup + ''' AND Sif_Kup_Gen = ''' + @Sif_Kup_Gen + ''' '
  33701. INSERT INTO #TmpUsl (VlIzl, Tip_Sif_Kup, Sif_Kup_Gen, Tip_Sif_Art, Sif_Art_Gen, Datum_Od, Rok_Dosp, Datum_Do, Uces,
  33702. Dod_Uces, Cena, MalCena, DanCena, DanMalCena) EXEC(@SSQL)
  33703. UPDATE #TmpUsl SET ImeArt=A.ImeArt, Sifra_Podg = P.Sifra_Podg, Ime_Podg = P.Ime_Podg, Sifra_Gr=P.Sifra_Gr 
  33704. FROM KatArt A, Podgrupi P WHERE #TmpUsl.Sif_Art_Gen=A.Sifra_Art AND A.Sifra_Podg=P.Sifra_Podg AND #TmpUsl.Tip_Sif_Art= 'A'
  33705. UPDATE #TmpUsl SET ImeArt = P.Ime_Podg, Sifra_Gr=P.Sifra_Gr 
  33706. FROM Podgrupi P WHERE #TmpUsl.Sif_Art_Gen=P.Sifra_Podg AND #TmpUsl.Tip_Sif_Art= 'P'
  33707. UPDATE #TmpUsl SET Ime_Gr = G.Ime_Gr FROM Grupi G WHERE #TmpUsl.Sifra_Gr=G.Sifra_Gr 
  33708. UPDATE #TmpUsl SET ImeArt=P.Ime_1 FROM Drugo1 P WHERE #TmpUsl.Sif_Art_Gen=P.Sifra_1 AND #TmpUsl.Tip_Sif_Art= '1'
  33709. UPDATE #TmpUsl SET ImeArt=P.Ime_2 FROM Drugo2 P WHERE #TmpUsl.Sif_Art_Gen=P.Sifra_2 AND #TmpUsl.Tip_Sif_Art= '2'
  33710. UPDATE #TmpUsl SET ImeArt=P.Ime_3 FROM Drugo3 P WHERE #TmpUsl.Sif_Art_Gen=P.Sifra_3 AND #TmpUsl.Tip_Sif_Art= '3'
  33711. UPDATE #TmpUsl SET ImeArt=P.Ime_4 FROM Drugo4 P WHERE #TmpUsl.Sif_Art_Gen=P.Sifra_4 AND #TmpUsl.Tip_Sif_Art= '4'
  33712. UPDATE #TmpUsl SET ImeArt=P.Ime_5 FROM Drugo5 P WHERE #TmpUsl.Sif_Art_Gen=P.Sifra_5 AND #TmpUsl.Tip_Sif_Art= '5'
  33713. UPDATE #TmpUsl SET ImeArt=K.ImeKup FROM Komint K WHERE #TmpUsl.Sif_Art_Gen=K.Sifra_Kup AND #TmpUsl.Tip_Sif_Art= 'D'
  33714. UPDATE #TmpUsl SET ImeKup = K.ImeKup FROM Komint K WHERE #TmpUsl.Sif_Kup_Gen=K.Sifra_Kup AND #TmpUsl.Tip_Sif_Kup='K'
  33715. UPDATE #TmpUsl SET ImeKup = T.ImeTip FROM TipKomint T WHERE #TmpUsl.Sif_Kup_Gen=T.Sifra_Tip AND #TmpUsl.Tip_Sif_Kup='T'
  33716. UPDATE #TmpUsl SET ImeKup = K.Ime_1K FROM KDrugo1 K WHERE #TmpUsl.Sif_Kup_Gen=K.Sifra_1K AND #TmpUsl.Tip_Sif_Kup='1'
  33717. UPDATE #TmpUsl SET ImeKup = K.Ime_2K FROM KDrugo2 K WHERE #TmpUsl.Sif_Kup_Gen=K.Sifra_2K AND #TmpUsl.Tip_Sif_Kup='2'
  33718. UPDATE #TmpUsl SET ImeKup = K.Ime_3K FROM KDrugo3 K WHERE #TmpUsl.Sif_Kup_Gen=K.Sifra_3K AND #TmpUsl.Tip_Sif_Kup='3'
  33719. UPDATE #TmpUsl SET ImeKup = K.Ime_4K FROM KDrugo4 K WHERE #TmpUsl.Sif_Kup_Gen=K.Sifra_4K AND #TmpUsl.Tip_Sif_Kup='4'
  33720. UPDATE #TmpUsl SET ImeKup = K.Ime_5K FROM KDrugo5 K WHERE #TmpUsl.Sif_Kup_Gen=K.Sifra_5K AND #TmpUsl.Tip_Sif_Kup='5'
  33721. SET @SSQL = 'SELECT * FROM #TmpUsl '
  33722. IF @Podr='S'
  33723.     SET @SSQL = @SSQL + ' ORDER BY Sif_Art_Gen, Datum_Od '
  33724. ELSE
  33725.     SET @SSQL = @SSQL + ' ORDER BY ImeArt, Datum_Od '
  33726. --print @ssql
  33727. EXEC(@SSQL)
  33728.  
  33729.  
  33730. Go
  33731. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cenovnik_gr_orged]'))
  33732. drop procedure [dbo].[sp_cenovnik_gr_orged]
  33733.  
  33734. Go
  33735.  
  33736.  
  33737. CREATE                     PROCEDURE sp_Cenovnik_Gr_Orged
  33738.        @Sifra_OE smallint = Null,
  33739.        @Koi_OE varchar(10) = Null,
  33740.        @Koi_Artikli char(1) = Null,
  33741.       @Tip_Podr char(1) = Null,
  33742.       @Sifra_Od Varchar(20) = Null,
  33743.        @Sifra_Do Varchar(20) = Null,
  33744.        @Kto char(6) = Null,
  33745.        @Sifra_Gr char(3) = Null,
  33746.        @Sifra_Podg char(6) = Null,
  33747.        @Lokacija varchar(10) = Null,
  33748.     @Sifra_Tar char(3) = Null,
  33749.     @Sifra_Brand     Varchar(300) = Null,     --Smallint = Null,
  33750.     @Sifra_ZBrand     Smallint = Null,
  33751.     @Iskluci    char(1) = 'N',
  33752.     @SoPodgrupi    char(1) = 'N',
  33753.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  33754.     @KolkuMesta    smallint = Null,        -- Se Odnesuva na podgrupite    2, 3, 4, 5, 6    
  33755.     @ADrugo1    smallint = Null,
  33756.     @ADrugo2    smallint = Null,
  33757.     @ADrugo3    smallint = Null,
  33758.     @ADrugo4    smallint = Null,
  33759.     @ADrugo5    smallint = Null,
  33760.     @Aktiven    char(1) = Null,
  33761.     @CeniSamoOdArt char(1) = 'N',
  33762.     @Sifra_Div    smallint = Null,
  33763.         @ImeArtDel    varchar(20) = Null 
  33764. AS
  33765.     Set Nocount Off
  33766.     Declare @SSQL varchar(8000)
  33767.     If @CeniSamoOdArt = 'D'
  33768.         Set @SSQL = ' SELECT Null Sifra_Oe, Null ImeOrg, Sum(S.Vlez) Vlez, Sum(S.Izlez) Izlez, Null Cena, Null NNabCena, Null DanCena, '
  33769.     Else 
  33770.         Set @SSQL=' SELECT S.Sifra_Oe, O.ImeOrg, S.Vlez, S.Izlez, S.Cena, K.GotCena, S.NNabCena, S.DanCena, '
  33771.     Set @SSQL = @SSQL + '  S.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, T.ProcOsn, K.Sifra_Tar, T.ImeTar,
  33772.         K.Dogcena, K.Malcena,  K.Specena, K.Tezina, K.ImaKomerc, K.ImaBroevi, K.Lokacija, K.Nabavna, K.KolkuDrg, K.GotCena, 
  33773.         Nomen = Case K.Nom When NULL Then dbo.fn_Nom(K.Sifra_Art) Else K.Nom End, '
  33774.     If @SoPodgrupi = 'D'
  33775.            If @KolkuMesta Is Not Null
  33776.         Set @SSQL = @SSQL + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') as Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, '
  33777.           Else 
  33778.         Set @SSQL = @SSQL + ' K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, '
  33779.     Else 
  33780.         Set @SSQL = @SSQL + ' K.Sifra_Podg,  '' '' as Ime_Podg, '' '' as Sifra_Gr, '' '' as Ime_Gr, '
  33781.     Set @SSQL=@SSQL + ' K.Sifra_Drg, B.Ime as ImeDrg, K.Kto as Sifra_kup, Kup.ImeKup 
  33782.             FROM Soart S 
  33783.             INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' 
  33784.             INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  33785.             INNER JOIN Orged O On O.Sifra_Oe=S.Sifra_Oe '
  33786.     If @KolkuMesta Is Not Null 
  33787.         Set @SSQL=@SSQL+'Left Outer Join Podgrupi PG On PG.Sifra_Podg = Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') 
  33788.                           Left Outer Join Grupi G ON G.Sifra_Gr = PG.Sifra_Gr '
  33789.     Else
  33790.         Set @SSQL=@SSQL+'INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg
  33791.                           INNER  Join Grupi G ON G.Sifra_Gr = PG.Sifra_Gr ' 
  33792.     If @Sifra_ZBrand Is Not Null
  33793.            Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  33794.     Else
  33795.         Set @SSQL=@SSQL+'Left Outer JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  33796.     Set @SSQL=@SSQL+'Left Outer Join Komint Kup On Kup.Sifra_kup = K.Kto '
  33797.     If @Sifra_Oe Is Not Null
  33798.            Set @SSQL=@SSQL+' Where S.Sifra_OE='+Cast(@Sifra_OE As Char(6)) + ' '
  33799.     If @Koi_OE Is Not NULL
  33800.              Set @SSQL  = @SSQL + ' Where S.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  33801.     If @Iskluci = 'D'
  33802.            Set @SSQL = @SSQL + ' And K.Iskluci <> ''' + @Iskluci  + ''' '
  33803.        If @Sifra_Od IS NOT NULL 
  33804.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Od + ''' '
  33805.        If @Sifra_Do IS NOT NULL 
  33806.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Do + ''' '
  33807.     If @Sifra_Brand Is Not Null
  33808.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg In (' + @Sifra_Brand + ')) '             --=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  33809.     If @Sifra_ZBrand Is Not Null
  33810.         Set @SSQL=@SSQL+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  33811.     If @CeniSamoOdArt <> 'D' Or @CeniSamoOdArt Is Null
  33812.     Begin
  33813.            If @Koi_Artikli='S'
  33814.                   Set @SSQL=@SSQL+'AND (S.Vlez-S.Izlez<>0) '
  33815.            Else If @Koi_Artikli='P'
  33816.                   Set @SSQL=@SSQL+'AND (S.Vlez-S.Izlez>0) '
  33817.            Else If @Koi_Artikli='N'
  33818.                   Set @SSQL=@SSQL+'AND (S.Vlez-S.Izlez<0) '
  33819.            Else If @Koi_Artikli='0'
  33820.                   Set @SSQL=@SSQL+'AND (S.Vlez-S.Izlez=0) '
  33821.     End
  33822.        If @Kto Is Not Null
  33823.               Set @SSQL=@SSQL+'AND (K.Kto='''+@Kto+''') '
  33824.        If @Sifra_Gr Is Not Null
  33825.               Set @SSQL=@SSQL+'AND (PG.Sifra_Gr='''+@Sifra_Gr+''') '
  33826.        If @Sifra_Podg Is Not Null
  33827.         If @PocnuvaSo ='D'
  33828.             Set @SSQL = @SSQL + ' AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  33829.         Else
  33830.                   Set @SSQL = @SSQL + ' AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  33831.     If @Lokacija Is Not Null
  33832.           Set @SSQL = @SSQL + ' AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  33833.     If @Sifra_Tar Is Not Null
  33834.               Set @SSQL = @SSQL + ' AND (K.Sifra_Tar='''+@Sifra_Tar+''') '
  33835.     If @ADrugo1 Is Not NULL
  33836.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@ADrugo1 As Varchar(6)) + ' '
  33837.     If @ADrugo2 Is Not NULL
  33838.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@ADrugo2 As Varchar(6)) + ' '
  33839.     If @ADrugo3 Is Not NULL
  33840.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@ADrugo3 As Varchar(6)) + ' '
  33841.     If @ADrugo4 Is Not NULL
  33842.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@ADrugo4 As Varchar(6)) + ' '
  33843.     If @ADrugo5 Is Not NULL
  33844.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@ADrugo5 As Varchar(6)) + ' '
  33845.     If @Sifra_Div Is Not NULL
  33846.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '  
  33847.     If @Aktiven = 'N' 
  33848.         Set @SSQL = @SSQL + ' And K.Aktiven = ''N'' '
  33849.     Else If @Aktiven = 'D'
  33850.         Set @SSQL = @SSQL + ' And (K.Aktiven Is Null Or K.Aktiven <> ''N'') '
  33851.         If @ImeArtDel IS NOT NULL 
  33852.         If IsNumeric(@ImeArtDel)=1
  33853.             Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  33854.         Else
  33855.             Set @SSQL = @SSQL + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  33856.     If @CeniSamoOdArt = 'D'
  33857.         Set @SSQL = @SSQL + ' Group By  S.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, T.ProcOsn, K.Sifra_Tar, T.ImeTar,
  33858.                              K.Dogcena, K.Malcena,  K.Specena, K.Tezina, K.ImaKomerc, K.ImaBroevi, K.Lokacija, K.Nabavna, K.KolkuDrg, K.GotCena, 
  33859.                              (Case K.Nom When NULL Then dbo.fn_Nom(K.Sifra_Art) Else K.Nom End), 
  33860.                              K.Sifra_Drg, B.Ime, K.Kto, Kup.ImeKup, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr '
  33861.     If @CeniSamoOdArt = 'D' 
  33862.     Begin
  33863.            If @Koi_Artikli='S'
  33864.                   Set @SSQL = @SSQL + ' Having Sum(S.Vlez-S.Izlez) <> 0 '
  33865.            Else If @Koi_Artikli='P'
  33866.                   Set @SSQL = @SSQL + ' Having Sum(S.Vlez-S.Izlez) > 0 '
  33867.            Else If @Koi_Artikli='N'
  33868.                   Set @SSQL = @SSQL + ' Having Sum(S.Vlez-S.Izlez) < 0 '
  33869.            Else If @Koi_Artikli='0'
  33870.                   Set @SSQL = @SSQL + ' Having Sum(S.Vlez-S.Izlez) = 0 '
  33871.     End
  33872.  
  33873.        If @Tip_Podr='S'
  33874.               Set @SSQL=@SSQL+'ORDER BY S.Sifra_Art'
  33875.        Else If @Tip_Podr='A'
  33876.               Set @SSQL=@SSQL+'ORDER BY K.ImeArt'
  33877.        Else If @Tip_Podr='P'
  33878.               Set @SSQL=@SSQL+'ORDER BY K.Sifra_Podg'
  33879.        Else If @Tip_Podr='G'
  33880.               Set @SSQL=@SSQL+'ORDER BY P.Sifra_Gr'
  33881.        Else If @Tip_Podr='L'
  33882.               Set @SSQL=@SSQL+'ORDER BY K.Lokacija'
  33883.        Else If @Tip_Podr='K'
  33884.               Set @SSQL=@SSQL+'ORDER BY K.Kto'
  33885.        Else If @Tip_Podr='V'
  33886.         If @CeniSamoOdArt = 'D'
  33887.                   Set @SSQL=@SSQL+'ORDER BY Sum((S.Vlez-S.Izlez)*K.Nabavna) Desc'
  33888.         Else
  33889.                   Set @SSQL=@SSQL+'ORDER BY (S.Vlez-S.Izlez)*dbo.fn_VratiCena(S.Cena, S.Posn, S.DanCena, ''N'') Desc'
  33890. print @SSQL
  33891.     EXEC(@SSQL)
  33892.     Set Nocount Off
  33893.  
  33894.  
  33895. Go
  33896. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cenovnik_nadatum]'))
  33897. drop procedure [dbo].[sp_cenovnik_nadatum]
  33898.  
  33899. Go
  33900. CREATE          PROCEDURE sp_Cenovnik_NaDatum
  33901.     @VlIzl            char(1)='I', 
  33902.     @Tip_Sif_Kup        char(1)=' ', 
  33903.     @Sif_Kup_Gen        varchar(11)='',
  33904.     @Tip_Sif_Art        char(1)='A',
  33905.     @Datum_Od        smalldatetime,
  33906.     @Kto            char(6)=Null,
  33907.     @Sifra_Podg        char(6)=Null,
  33908.     @Sifra_Gr        char(3)=Null,
  33909.     @Sifra_Drg        smallint=Null,
  33910.     @Sifra_Art_Od        varchar(20)=Null,
  33911.     @Sifra_Art_Do        varchar(20)=Null,
  33912.     @Podr            char(1)='S',        --'S-sifra, I-ime
  33913.     @ADrugo1        smallint = Null,
  33914.     @ADrugo2        smallint = Null,
  33915.     @ADrugo3        smallint = Null,
  33916.     @ADrugo4        smallint = Null,
  33917.     @ADrugo5        smallint = Null,
  33918.     @KFADrugo1        char(1) = 'N',
  33919.     @KFADrugo2        char(1) = 'N',
  33920.     @KFADrugo3        char(1) = 'N',
  33921.     @KFADrugo4        char(1) = 'N',
  33922.     @KFADrugo5        char(1) = 'N'
  33923. AS
  33924.     Declare @SSQL varchar(3000)
  33925.     CREATE TABLE #TmpArt (Sifra_Art varchar(20), ImeArt varchar(50), Tip_Sif_Art char(1))
  33926.     CREATE TABLE #TmpCen
  33927.     (
  33928.      Sif_Kup_Gen varchar (11),
  33929.      Sif_Art_Gen varchar (20),
  33930.      Datum_Od smalldatetime,
  33931.      Datum_Do smalldatetime ,
  33932.      Rok_Dosp smallint ,
  33933.      Uces decimal(6, 2) ,
  33934.      Dod_Uces decimal(6, 2) ,
  33935.      Cena decimal(18, 4) ,
  33936.      MalCena decimal(18, 4),
  33937.      DanCena char(1),
  33938.      DanMalCena char(1),
  33939.      ImeKup    varchar(40),
  33940.      ImeArt    varchar(40),
  33941.      Sifra_Podg char(6),
  33942.      Ime_Podg varchar(40),
  33943.      Sifra_Gr char(3),
  33944.      Ime_Gr varchar(40),
  33945.      Tip_Sif_Art char(1)  
  33946.     )
  33947.     IF @Tip_Sif_Art= 'A' OR @Tip_Sif_Art= 'K'
  33948.     Begin
  33949.         SET @SSQL = 'SELECT A.Sifra_Art, A.ImeArt, ''A'' FROM KatArt A ' 
  33950.         IF @Sifra_Gr IS NOT NULL
  33951.             SET @SSQL = @SSQL + 'INNER JOIN Podgrupi P ON A.Sifra_Podg=P.Sifra_Podg '
  33952.         SET @SSQL = @SSQL +' WHERE 1=1 '    
  33953.         IF @Sifra_Podg IS NOT NULL
  33954.             SET @SSQL = @SSQL + ' AND A.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  33955.         IF @Sifra_Gr IS NOT NULL
  33956.             SET @SSQL = @SSQL + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  33957.         IF @Sifra_Drg IS NOT NULL
  33958.             SET @SSQL = @SSQL + ' AND A.Sifra_Drg = ' + Cast(@Sifra_Drg as varchar(5)) + ' '
  33959.         If @Sifra_Art_Od IS NOT NULL
  33960.             SET @SSQL = @SSQL + ' AND A.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  33961.         If @Sifra_Art_Do IS NOT NULL
  33962.             SET @SSQL = @SSQL + ' AND A.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  33963.         If @Kto IS NOT NULL
  33964.             SET @SSQL = @SSQL + ' AND A.Kto=''' + @Kto + ''' '
  33965.         IF @ADrugo1 IS NOT NULL
  33966.             IF @KFADrugo1 = 'D'
  33967.                 SET @SSQL = @SSQL + ' AND (A.Drugo1 <> ' + Cast(@ADrugo1 as varchar(5)) + ' Or A.Drugo1 Is Null) '
  33968.             Else
  33969.                 SET @SSQL = @SSQL + ' AND A.Drugo1 = ' + Cast(@ADrugo1 as varchar(5)) + ' '
  33970.         IF @ADrugo2 IS NOT NULL
  33971.             IF @KFADrugo2 = 'D'
  33972.                 SET @SSQL = @SSQL + ' AND (A.Drugo2 <> ' + Cast(@ADrugo2 as varchar(5)) + ' Or A.Drugo2 Is Null) '
  33973.             Else
  33974.                 SET @SSQL = @SSQL + ' AND A.Drugo2 = ' + Cast(@ADrugo2 as varchar(5)) + ' '
  33975.         IF @ADrugo3 IS NOT NULL
  33976.             IF @KFADrugo3 = 'D'
  33977.                 SET @SSQL = @SSQL + ' AND (A.Drugo3 <> ' + Cast(@ADrugo3 as varchar(5)) + ' Or A.Drugo3 Is Null) '
  33978.             Else
  33979.                 SET @SSQL = @SSQL + ' AND A.Drugo3 = ' + Cast(@ADrugo3 as varchar(5)) + ' '
  33980.         IF @ADrugo4 IS NOT NULL
  33981.             IF @KFADrugo4 = 'D'
  33982.                 SET @SSQL = @SSQL + ' AND (A.Drugo4 <> ' + Cast(@ADrugo4 as varchar(5)) + ' Or A.Drugo4 Is Null) '
  33983.             Else
  33984.                 SET @SSQL = @SSQL + ' AND A.Drugo4 = ' + Cast(@ADrugo4 as varchar(5)) + ' '
  33985.         IF @ADrugo5 IS NOT NULL
  33986.             IF @KFADrugo5 = 'D'
  33987.                 SET @SSQL = @SSQL + ' AND (A.Drugo5 <> ' + Cast(@ADrugo5 as varchar(5)) + ' Or A.Drugo5 Is Null) '
  33988.             Else
  33989.                 SET @SSQL = @SSQL + ' AND A.Drugo5 = ' + Cast(@ADrugo5 as varchar(5)) + ' '
  33990.     End
  33991.     ELSE IF @Tip_Sif_Art= 'P'
  33992.     Begin
  33993.         SET @SSQL = 'SELECT P.Sifra_Podg, P.Ime_Podg, ''P'' FROM Podgrupi P '
  33994.         IF @Sifra_Podg IS NOT NULL
  33995.             SET @SSQL = @SSQL + ' AND Sifra_Podg = ''' + @Sifra_Podg + ''' '
  33996.         IF @Sifra_Gr IS NOT NULL
  33997.             SET @SSQL = @SSQL + ' AND Sifra_Gr = ''' + @Sifra_Gr + ''' '
  33998.     End
  33999.     ELSE IF @Tip_Sif_Art= 'G'
  34000.     Begin
  34001.         SET @SSQL = 'SELECT G.Sifra_Gr, G.Ime_Gr, ''G'' FROM Grupi G '
  34002.         IF @Sifra_Gr IS NOT NULL
  34003.             SET @SSQL = @SSQL + ' AND Sifra_Gr = ''' + @Sifra_Gr + ''' '
  34004.     End
  34005.     ELSE IF @Tip_Sif_Art= 'B'
  34006.     Begin
  34007.         SET @SSQL = 'SELECT D.Sifra_Drg, D.Ime, ''B'' FROM DrgPodel D '
  34008.         IF @Sifra_Drg IS NOT NULL
  34009.             SET @SSQL = @SSQL + ' AND Sifra_Drg = ' + Cast(@Sifra_Drg as varchar(5)) + ' '
  34010.     End
  34011.     ELSE IF @Tip_Sif_Art= '1'
  34012.         SET @SSQL = 'SELECT D.Sifra_1, D.Ime_1, ''1'' FROM  Drugo1 D '
  34013.     ELSE IF @Tip_Sif_Art= '2'
  34014.         SET @SSQL = 'SELECT D.Sifra_2, D.Ime_2, ''2'' FROM  Drugo2 D '
  34015.     ELSE IF @Tip_Sif_Art= '3'
  34016.         SET @SSQL = 'SELECT D.Sifra_3, D.Ime_3, ''3'' FROM Drugo3 D '
  34017.     ELSE IF @Tip_Sif_Art= '4'
  34018.         SET @SSQL = 'SELECT D.Sifra_4, D.Ime_4, ''4'' FROM Drugo4 D '
  34019.     ELSE IF @Tip_Sif_Art= '5'
  34020.         SET @SSQL = 'SELECT D.Sifra_5, D.Ime_5, ''5'' FROM Drugo5 D '
  34021.     ELSE IF @Tip_Sif_Art= 'D'
  34022.         SET @SSQL = 'SELECT Sifra_Kup, ImeKup,  ''D'' FROM Komint WHERE Sifra_Kup IN (SELECT DISTINCT Kto FROM KatArt) '
  34023.     ELSE 
  34024.         SET @SSQL = 'SELECT TOP 1 '''', '''', '''' FROM Drugo1'                     --' VALUES ('''', '''', '''') '
  34025.     INSERT INTO #TmpArt (Sifra_Art, ImeArt, Tip_Sif_Art) EXEC (@SSQL)
  34026.     IF @Tip_Sif_Art= 'K'        --kombinacija
  34027.     Begin
  34028.         SET @SSQL = 'SELECT P.Sifra_Podg, P.Ime_Podg, ''P'' FROM Podgrupi P '
  34029.         IF @Sifra_Podg IS NOT NULL
  34030.             SET @SSQL = @SSQL + ' AND Sifra_Podg = ''' + @Sifra_Podg + ''' '
  34031.         IF @Sifra_Gr IS NOT NULL
  34032.             SET @SSQL = @SSQL + ' AND Sifra_Gr = ''' + @Sifra_Gr + ''' '
  34033.         INSERT INTO #TmpArt (Sifra_Art, ImeArt, Tip_Sif_Art) EXEC (@SSQL)
  34034.         SET @SSQL = 'SELECT G.Sifra_Gr, G.Ime_Gr, ''G'' FROM Grupi G '
  34035.         IF @Sifra_Gr IS NOT NULL
  34036.             SET @SSQL = @SSQL + ' AND Sifra_Gr = ''' + @Sifra_Gr + ''' '
  34037.         INSERT INTO #TmpArt (Sifra_Art, ImeArt, Tip_Sif_Art) EXEC (@SSQL)
  34038.     End
  34039.     Declare  @fSifArtGen as varchar(20)
  34040.     Declare @fTipSifArt as char(1)
  34041.     Set Nocount On
  34042.     Declare TabCc Cursor Fast_Forward For
  34043.         Select Sifra_Art, Tip_Sif_Art From #TmpArt
  34044.     Open TabCc
  34045.     Fetch Next From TabCc Into @fSifArtGen, @fTipSifArt
  34046.     While @@Fetch_Status = 0
  34047.     Begin            
  34048.         INSERT INTO #TmpCen (Sif_Art_Gen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena, Datum_Od, Datum_Do, Tip_Sif_Art)
  34049.         SELECT @FSifArtGen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena, Datum_Od, Datum_Do, @fTipSifArt
  34050.         FROM dbo.fix_dajcenazadatum(@VlIzl, @Tip_Sif_Kup, @Sif_Kup_Gen, @fTipSifArt, @fSifArtGen, @Datum_Od)
  34051.         Fetch Next From TabCc Into @fSifArtGen, @fTipSifArt
  34052.     End
  34053.     Close TabCc
  34054.     Deallocate TabCc
  34055.     Set Nocount Off
  34056.     IF @Tip_Sif_Kup= 'K'
  34057.         UPDATE #TmpCen SET ImeKup= K.ImeKup FROM Komint K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_Kup 
  34058.     /*ELSE IF @Tip_Sif_Kup= '1'
  34059.         UPDATE #TmpCen SET ImeKup= K.Ime_1K FROM KDrugo1 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_1K 
  34060.     ELSE IF @Tip_Sif_Kup= '2'
  34061.         UPDATE #TmpCen SET ImeKup= K.Ime_2K FROM KDrugo2 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_2K 
  34062.     ELSE IF @Tip_Sif_Kup= '3'
  34063.         UPDATE #TmpCen SET ImeKup= K.Ime_3K FROM KDrugo3 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_3K 
  34064.     ELSE IF @Tip_Sif_Kup= '4'
  34065.         UPDATE #TmpCen SET ImeKup= K.Ime_4K FROM KDrugo4 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_4K 
  34066.     ELSE IF @Tip_Sif_Kup= '5'
  34067.         UPDATE #TmpCen SET ImeKup= K.Ime_5K FROM KDrugo5 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_5K 
  34068.     */
  34069.     IF @Tip_Sif_Art= 'A' OR @Tip_Sif_Art= 'K' 
  34070.     Begin
  34071.         UPDATE #TmpCen SET Sifra_Podg = P.Sifra_Podg, Ime_Podg = P.Ime_Podg, Sifra_Gr=P.Sifra_Gr 
  34072.         FROM KatArt A, Podgrupi P WHERE #TmpCen.Sif_Art_Gen=A.Sifra_Art AND A.Sifra_Podg=P.Sifra_Podg AND #TmpCen.Tip_Sif_Art='A'
  34073.         UPDATE #TmpCen SET Ime_Gr = G.Ime_Gr FROM Grupi G WHERE #TmpCen.Sifra_Gr=G.Sifra_Gr 
  34074.     End
  34075.     UPDATE #TmpCen SET ImeArt = A.ImeArt FROM #TmpArt A WHERE #TmpCen.Sif_Art_Gen = A.Sifra_Art AND #TmpCen.Tip_Sif_Art = A.Tip_Sif_Art
  34076.     if @Podr='S'
  34077.         SELECT * FROM #TmpCen WHERE Datum_Od IS NOT NULL ORDER BY Sif_Art_Gen
  34078.     Else
  34079.         SELECT * FROM #TmpCen WHERE Datum_Od IS NOT NULL ORDER BY ImeArt
  34080.  
  34081.  
  34082. Go
  34083. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cenovniksost_nadatum]'))
  34084. drop procedure [dbo].[sp_cenovniksost_nadatum]
  34085.  
  34086. Go
  34087.  
  34088. CREATE           PROCEDURE sp_CenovnikSost_NaDatum
  34089.     @Sifra_OE        smallint,
  34090.     @Datum_Od        smalldatetime =NULL
  34091. AS
  34092. IF @Datum_Od IS NULL SET @Datum_Od = GetDate()
  34093. Declare @SSQL varchar(3000)
  34094. Declare @SamoDatum smalldatetime
  34095. SET @SamoDatum = dbo.fn_VratiDatum (@Datum_Od)
  34096. CREATE TABLE #TmpArt (Sifra_Art varchar(20))
  34097. CREATE TABLE #TmpCen
  34098. (Sifra_Art varchar (20),
  34099.  Rok_Dosp decimal(6,2),
  34100.  Uces    decimal(6,2),
  34101.  Dod_Uces decimal(6,2),
  34102. Cena decimal(18, 4) ,
  34103. MalCena decimal(18, 4),
  34104. DanCena char(1),
  34105. DanMalCena char(1),
  34106. Kolic    decimal(18,4) )
  34107. INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM SoArt WHERE Sifra_OE=@Sifra_OE
  34108. /*CREATE TABLE #TmpPoslDat
  34109. (Sif_Art_Gen    varchar(20),
  34110.  Datum        smalldatetime)
  34111. SET @SSQL= 'SELECT Sif_Art_Gen, Max(Datum_Od)  FROM Usl_Komerc_Per WHERE Datum_Do IS NOT NULL AND Datum_Od<=''' + 
  34112. cast(@Datum_Od as varchar(30))+''' AND Datum_Do >=''' + cast(@Datum_Od as varchar(30)) +
  34113. ''' AND VlIzl=''I'' AND Tip_Sif_Kup='' '' AND Sif_Kup_Gen='''' AND Tip_Sif_Art=''A'' AND  Sif_Art_Gen IN (SELECT Sif_Art_Gen FROM #TmpCen) GROUP BY Sif_Art_Gen '
  34114. INSERT INTO #TmpPoslDat (Sif_Art_Gen, Datum)  EXEC(@SSQL)
  34115. SET @SSQL= 'SELECT Sif_Art_Gen, Max(Datum_Od)  FROM Usl_Komerc_Per WHERE Datum_Do IS NULL AND Datum_Od<=''' + 
  34116. cast(@Datum_Od as varchar(30))+''' AND VlIzl=''I'' AND Tip_Sif_Kup='' '' AND Sif_Kup_Gen='''' AND Tip_Sif_Art=''A'' 
  34117. AND  Sif_Art_Gen IN (SELECT Sif_Art_Gen FROM #TmpCen) AND Sif_Art_Gen NOT IN (SELECT Sif_Art_Gen FROM #TmpPoslDat)  GROUP BY Sif_Art_Gen'
  34118. INSERT INTO #TmpPoslDat (Sif_Art_Gen, Datum)  EXEC(@SSQL)
  34119. UPDATE #TmpCen SET Cena=U.Cena, MalCena=U.MalCena, DanCena=U.DanCena, DanMalCena=U.DanMalCena
  34120. FROM #TmpPoslDat P, Usl_Komerc_Per U WHERE #TmpCen.Sifra_Art=P.Sif_Art_Gen AND P.Sif_Art_Gen=U.Sif_Art_Gen AND P.Datum=U.Datum_Od
  34121. */
  34122. Declare @fSifArtGen as varchar(20)
  34123. Declare @MalCena as decimal(18,4)
  34124. Declare @DanMalCena as char(1)
  34125.     Set Nocount On
  34126.     Declare TabCc Cursor Fast_Forward For Select Sifra_Art From #TmpArt
  34127.     Open TabCc
  34128.     Fetch Next From TabCc Into @fSifArtGen
  34129.     While @@Fetch_Status = 0
  34130.     Begin            
  34131.         INSERT INTO #TmpCen (Sifra_Art, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena)
  34132.         SELECT @FSifArtGen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena 
  34133.         FROM dbo.fix_dajcenazadatum('I', '', '', 'A', @fSifArtGen, @Datum_Od)
  34134.         Fetch Next From TabCc Into @fSifArtGen
  34135.     End
  34136.     Close TabCc
  34137.     Deallocate TabCc
  34138.     Declare TabCS Cursor Fast_Forward For Select Sifra_Art, MalCena, DanMalCena From #TmpCen    --dod.30.06.07
  34139.     Open TabCS
  34140.     Fetch Next From TabCS Into @fSifArtGen, @MalCena, @DanMalCena
  34141.     While @@Fetch_Status = 0
  34142.     Begin            
  34143.         exec sp_902 @Sifra_OE, @FSifArtGen, @MalCena, @DanMalCena, @SamoDatum
  34144.         Fetch Next From TabCS Into @fSifArtGen, @MalCena, @DanMalCena
  34145.     End
  34146.     Close TabCS
  34147.     Deallocate TabCS
  34148. UPDATE #TmpCen SET Kolic = S.Vlez - S.Izlez FROM SoArt S WHERE #TmpCen.Sifra_Art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE
  34149. CREATE TABLE #TmpNeraskn
  34150. (Sifra_Art    varchar(20),
  34151.  Kolic        decimal(18,4))
  34152. INSERT INTO #TmpNeraskn (Sifra_Art, Kolic)   SELECT Sifra_Art, Sum(Kolic-RKolic) FROM KSPromet WHERE Sifra_OE=@Sifra_OE AND Kolic<>RKolic GROUP BY Sifra_Art
  34153. UPDATE #TmpCen SET Kolic = #TmpCen.Kolic - N.Kolic FROM #TmpNeraskn N WHERE #TmpCen.Sifra_Art = N.Sifra_Art
  34154. Set Nocount Off
  34155. SELECT * FROM #TmpCen
  34156.  
  34157.  
  34158.  
  34159. Go
  34160. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cenovniktekovenprethoden]'))
  34161. drop procedure [dbo].[sp_cenovniktekovenprethoden]
  34162.  
  34163. Go
  34164.  
  34165.  
  34166. CREATE  PROCEDURE sp_CenovnikTekovenPrethoden
  34167.     @Datum            smalldatetime =NULL,
  34168.     @Sif_GrOrg        char(6)='SITE'
  34169. AS
  34170. IF @Datum IS NULL SET @Datum = GetDate()
  34171. Declare @SSQL varchar(3000)
  34172. CREATE TABLE #TmpArt (Sifra_Art varchar(20))
  34173. CREATE TABLE #TmpCen
  34174. (Sifra_Art varchar (20),
  34175.  Rok_Dosp decimal(6,2),
  34176.  Uces    decimal(6,2),
  34177.  Dod_Uces decimal(6,2),
  34178. Cena decimal(18, 2) ,
  34179. MalCena decimal(18, 2),
  34180. DanCena char(1),
  34181. DanMalCena char(1),
  34182. Kolic    decimal(18,4) )
  34183. CREATE TABLE #TmpCenSt
  34184. (Sifra_Art varchar (20),
  34185. PrethMalCena decimal(18,2) )
  34186. CREATE TABLE #TmpZal
  34187. (Sifra_Art    varchar (20),
  34188. Zaliha        decimal(18,4),
  34189. OnStock        Bit)
  34190. INSERT INTO #TmpArt (Sifra_Art) SELECT DISTINCT Sifra_Art FROM SoArt 
  34191. Declare  @fSifArtGen as varchar(20)
  34192.     Set Nocount On
  34193.     Declare TabCc Cursor Fast_Forward For Select Sifra_Art From KatArt WHERE Drugo2 IS NOT NULL AND Drugo2<>99
  34194.     Open TabCc
  34195.     Fetch Next From TabCc Into @fSifArtGen
  34196.     While @@Fetch_Status = 0
  34197.     Begin            
  34198.         INSERT INTO #TmpCen (Sifra_Art, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena)
  34199.         SELECT @FSifArtGen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena 
  34200.         FROM dbo.fix_dajcenazadatum('I', '', '', 'A', @fSifArtGen, @Datum)
  34201.         Fetch Next From TabCc Into @fSifArtGen
  34202.     End
  34203.     Close TabCc
  34204.     Deallocate TabCc
  34205.     Declare @fMalCena as decimal
  34206.     Declare TabCcSt Cursor Fast_Forward For Select Sifra_Art, MalCena From #TmpCen
  34207.     Open TabCcSt
  34208.     Fetch Next From TabCcSt Into @fSifArtGen, @fMalCena
  34209.     While @@Fetch_Status = 0
  34210.     Begin            
  34211.         INSERT INTO #TmpCenSt (Sifra_Art, PrethMalCena)
  34212.         SELECT @FSifArtGen, MalCena
  34213.         FROM dbo.fix_DajCenaPredDatum('I', '', '', 'A', @fSifArtGen, @Datum, @fMalCena)
  34214.         Fetch Next From TabCcSt Into @fSifArtGen, @fMalCena
  34215.     End
  34216.     Close TabCcSt
  34217.     Deallocate TabCcSt
  34218.     Set Nocount Off
  34219. INSERT INTO #TmpZal (Sifra_Art, Zaliha) SELECT Sifra_Art, SUM(Vlez-Izlez) FROM SoArt 
  34220. WHERE Sifra_OE IN(SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrg) GROUP BY Sifra_Art
  34221. UPDATE #TmpZal SET OnStock=1 WHERE Zaliha>0
  34222. SELECT A.Sifra_Podg PodgrupaID, A.Sifra_Art ProductID, A.ImeArt ProductIme, A.Sifra_Drg BrandID,
  34223. C1.PrethMalCena PricePrethodna, C.MalCena PriceAktuelna, C.Cena PriceGolemoprodazba, A.Drugo2 StatusID, Z.OnStock
  34224. FROM #TmpCen C INNER JOIN KatArt A ON C.Sifra_Art=A.Sifra_Art 
  34225. LEFT OUTER JOIN #TmpCenSt C1 ON C.Sifra_Art=C1.Sifra_Art
  34226. LEFT OUTER JOIN #TmpZal Z ON C.Sifra_Art=Z.Sifra_Art
  34227. ORDER BY A.Sifra_Art
  34228.  
  34229.  
  34230.  
  34231. Go
  34232. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkcustomer]'))
  34233. drop procedure [dbo].[sp_citaj_bulkcustomer]
  34234.  
  34235. Go
  34236.  
  34237. CREATE    PROCEDURE sp_Citaj_BulkCustomer
  34238.     @BulkFile Varchar(50),
  34239.     @BulkFieldTerminator Varchar(3) = '\t',
  34240.     @BulkRowTerminator Varchar(3) = '\n'
  34241. AS
  34242.     If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpCust]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34243.         Drop Table TmpCust
  34244.     If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpCust1]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34245.         Drop Table TmpCust1
  34246.     Create Table TmpCust
  34247.     (    DB_Code    char(5), 
  34248.         Cst_Code    char(6),
  34249.         Cst_Name    nvarchar(30),
  34250.         Type        char(6),
  34251.         Address        nvarchar(30),
  34252.         Town        nvarchar(20),
  34253.         Country        nvarchar(6)
  34254.     )
  34255.     Declare @SSQL Varchar(1000)
  34256.     Set @SSQL = 'BULK INSERT TmpCust
  34257.         FROM ''' + @BulkFile + '''
  34258.         WITH (
  34259.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34260.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34261.         )'
  34262.     EXEC (@SSQL)
  34263.     Create Table TmpCust1
  34264.     (    DB_Code    char(5), 
  34265.         Cst_Code    char(6),
  34266.         Cst_Name    nvarchar(30),
  34267.         Type        char(6),
  34268.         Address        nvarchar(30),
  34269.         Town        nvarchar(20),
  34270.         Country        nvarchar(6),
  34271.         Sifra_2K    smallint        
  34272.     )
  34273.     INSERT INTO TmpCust1 (DB_Code, Cst_Code, Cst_Name, Type, Address, Town, Country)
  34274.     SELECT DB_Code, Cst_Code, Cst_Name, Type, Address, Town, Country FROM TmpCust
  34275.     UPDATE TmpCust1 SET Sifra_2K=Kdrugo2.Sifra_2k
  34276.     FROM KDrugo2 
  34277.     WHERE KDrugo2.Ime_2K=TmpCust1.Type
  34278.     INSERT INTO KDrugo2 (Ime_2K)
  34279.     SELECT DISTINCT Type FROM TmpCust1
  34280.     WHERE Sifra_2k IS NULL
  34281.     UPDATE TmpCust1 SET Sifra_2K=Kdrugo2.Sifra_2k
  34282.     FROM KDrugo2 
  34283.     WHERE KDrugo2.Ime_2K=TmpCust1.Type
  34284.     UPDATE Komint  SET ImeKup=C.Cst_Name, Adresa=C.Address, SMesto=C.Town, KDrugo2=C.Sifra_2k
  34285.     FROM Komint KK, TmpCust1 C
  34286.     WHERE dbo.fn_NapraviSifra(C.DB_Code, C.Cst_Code) = KK.Sifra_Kup 
  34287.     INSERT INTO Komint (Sifra_Kup, ImeKup, Adresa, SMesto, KDrugo2)
  34288.     SELECT dbo.fn_NapraviSifra(C.DB_Code, C.Cst_Code) as Sifra_Kup, C.Cst_Name as ImeKup, 
  34289.     C.Address as Adresa, C.Town as SMesto, C.Sifra_2k
  34290.     FROM TmpCust1 C 
  34291.     WHERE dbo.fn_NapraviSifra(C.DB_Code, C.Cst_Code) NOT IN 
  34292.     (SELECT Sifra_Kup FROM Komint)
  34293.  
  34294.  
  34295.  
  34296. Go
  34297. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkfisk]'))
  34298. drop procedure [dbo].[sp_citaj_bulkfisk]
  34299.  
  34300. Go
  34301. CREATE    PROCEDURE sp_Citaj_BulkFisk
  34302.     @BulkFile Varchar(50),
  34303.     @BulkFieldTerminator Varchar(3) = ',',
  34304.     @BulkRowTerminator Varchar(3) = '\n'
  34305. AS
  34306.     Create Table ##TmpFisk
  34307.     (    Sifra_Oe smallint,
  34308.         BrKasa smallint,
  34309.         Datum_Dok smalldatetime,
  34310.         Tar1 decimal (18, 4) ,
  34311.         Tar2 decimal (18, 4) ,
  34312.         Tar0 decimal (18, 4),
  34313.         Gotovina decimal (18, 4),
  34314.         Cek decimal(18, 4),
  34315.         Kredit decimal (18, 4)
  34316.     )
  34317.     Declare @SSQL Varchar(1000)
  34318.     Set @SSQL = 'BULK INSERT ##TmpFisk
  34319.         FROM ''' + @BulkFile + '''
  34320.         WITH (
  34321.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34322.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34323.         )'
  34324.     EXEC (@SSQL)
  34325.     ALTER TABLE ##TmpFisk ADD
  34326.         Br_Smetki int,
  34327.         Linii    int
  34328.  
  34329.  
  34330. Go
  34331. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkfisk_vio]'))
  34332. drop procedure [dbo].[sp_citaj_bulkfisk_vio]
  34333.  
  34334. Go
  34335.  
  34336. create  PROCEDURE sp_Citaj_BulkFisk_Vio
  34337.     @BulkFile Varchar(50),
  34338.     @BulkFieldTerminator Varchar(3) = ',',
  34339.     @BulkRowTerminator Varchar(3) = '\n'
  34340. AS
  34341.     Create Table ##TmpFisk
  34342.     (    Sifra_Oe smallint,
  34343.         BrKasa smallint,
  34344.         Datum_Dok smalldatetime,
  34345.         Tar1 decimal (18, 4) ,
  34346.         Tar2 decimal (18, 4) ,
  34347.         Tar0 decimal (18, 4),
  34348.         Gotovina decimal (18, 4),
  34349.         Cek decimal(18, 4),
  34350.         Kredit decimal (18, 4),
  34351.         Danok1 decimal (18, 4),
  34352.         Danok2 decimal (18, 4),
  34353.         Promet decimal (18, 4),
  34354.         Predadeno decimal (18, 4),
  34355.         Pocetno decimal (18, 4),
  34356.         Ostaveno decimal (18, 4),
  34357.         DrugIzlez decimal (18, 4)
  34358.     )
  34359.     Declare @SSQL Varchar(1000)
  34360.     Set @SSQL = 'BULK INSERT ##TmpFisk
  34361.         FROM ''' + @BulkFile + '''
  34362.         WITH (
  34363.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34364.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34365.         )'
  34366.     EXEC (@SSQL)
  34367.     ALTER TABLE ##TmpFisk ADD
  34368.         Br_Smetki int,
  34369.         Linii    int
  34370.  
  34371.  
  34372.  
  34373. Go
  34374. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkfisk1]'))
  34375. drop procedure [dbo].[sp_citaj_bulkfisk1]
  34376.  
  34377. Go
  34378. CREATE    PROCEDURE sp_Citaj_BulkFisk1
  34379.     @BulkFile Varchar(50),
  34380.     @BulkFieldTerminator Varchar(3) = ',',
  34381.     @BulkRowTerminator Varchar(3) = '\n'
  34382. AS
  34383.     Create Table ##TmpFisk
  34384.     (    Sifra_Oe smallint,
  34385.         BrKasa smallint,
  34386.         Datum_Dok smalldatetime,
  34387.         Tar1 decimal (18, 4) ,
  34388.         Tar2 decimal (18, 4) ,
  34389.         Tar0 decimal (18, 4),
  34390.         Gotovina decimal (18, 4),
  34391.         Cek decimal(18, 4),
  34392.         Kredit decimal (18, 4),
  34393.         Br_Smetki int,
  34394.         Linii    int
  34395.     )
  34396.     Declare @SSQL Varchar(1000)
  34397.     Set @SSQL = 'BULK INSERT ##TmpFisk
  34398.         FROM ''' + @BulkFile + '''
  34399.         WITH (
  34400.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34401.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34402.         )'
  34403.     EXEC (@SSQL)
  34404.  
  34405.  
  34406.  
  34407. Go
  34408. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkitems]'))
  34409. drop procedure [dbo].[sp_citaj_bulkitems]
  34410.  
  34411. Go
  34412.  
  34413. CREATE     PROCEDURE sp_Citaj_BulkItems
  34414.     @BulkFile Varchar(50),
  34415.     @BulkFieldTerminator Varchar(3) = '\t',
  34416.     @BulkRowTerminator Varchar(3) = '\n'
  34417. AS
  34418.     If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpItems]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34419.         Drop Table TmpItems
  34420.     Create Table TmpItems
  34421.     (    DB_Code    char(12), 
  34422.         Trans_date    char(10),
  34423.         Cst_Code    char(6),
  34424.         Item_Code    char(6),
  34425.         Quantity        Decimal(15,4),
  34426.         Value        Decimal(15,2),
  34427.         Discount    Decimal(15,2),
  34428.         Doc_No    Char(13),
  34429.         Prom_Code    char(20),
  34430.         Van_Presel    char(1),
  34431.         Agent        char(5),
  34432.         LocalCode    char(5)
  34433.     )
  34434.     Declare @SSQL Varchar(1000)
  34435.     Set @SSQL = 'BULK INSERT TmpItems
  34436.         FROM ''' + @BulkFile + '''
  34437.         WITH (
  34438.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34439.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34440.         )'
  34441.     EXEC (@SSQL)
  34442.     UPDATE TmpItems Set Item_Code = '0'+ltrim(Item_Code), Cst_Code = dbo.fn_NapraviSifra(substring(Agent,1,2),ltrim(Cst_Code))
  34443.  
  34444.  
  34445.  
  34446. Go
  34447. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkkartkor]'))
  34448. drop procedure [dbo].[sp_citaj_bulkkartkor]
  34449.  
  34450. Go
  34451.  
  34452. CREATE     PROCEDURE sp_Citaj_BulkKartKor
  34453.     @BulkFile Varchar(50),
  34454.     @BulkFieldTerminator Varchar(3) = ',',
  34455.     @BulkRowTerminator Varchar(3) = '\n'
  34456. AS
  34457.     Create Table ##TmpKartKorProm
  34458. (    Sifra_Mark    smallint,
  34459.     Sifra_OE    smallint,
  34460.     Broj_Ska    int,
  34461.     Sifra_Kor    varchar(20),
  34462.     Sifra_Nac    smallint,
  34463.     Datum_Ska    smalldatetime,
  34464.     Dolzi        decimal(18,6),
  34465.     Pobaruva    decimal(18,6),
  34466.     FraUpl        char(1),
  34467.     KlubDolzi    decimal(18,6)
  34468. )
  34469.     Declare @SSQL Varchar(1000)
  34470.     Set @SSQL = 'BULK INSERT ##TmpKartKorProm
  34471.         FROM ''' + @BulkFile + '''
  34472.         WITH (
  34473.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34474.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34475.         )'
  34476.     EXEC (@SSQL)
  34477.  
  34478.  
  34479.  
  34480. Go
  34481. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkkartkor_bezklubdolzi]'))
  34482. drop procedure [dbo].[sp_citaj_bulkkartkor_bezklubdolzi]
  34483.  
  34484. Go
  34485.  
  34486.  
  34487. CREATE      PROCEDURE sp_Citaj_BulkKartKor_BezKlubDolzi
  34488.     @BulkFile Varchar(50),
  34489.     @BulkFieldTerminator Varchar(3) = ',',
  34490.     @BulkRowTerminator Varchar(3) = '\n'
  34491. AS
  34492.     Create Table ##TmpKartKorProm
  34493. (    Sifra_Mark    smallint,
  34494.     Sifra_OE    smallint,
  34495.     Broj_Ska    int,
  34496.     Sifra_Kor    varchar(20),
  34497.     Sifra_Nac    smallint,
  34498.     Datum_Ska    smalldatetime,
  34499.     Dolzi        decimal(18,6),
  34500.     Pobaruva    decimal(18,6),
  34501.     FraUpl        char(1)
  34502. )
  34503.     Declare @SSQL Varchar(1000)
  34504.     Set @SSQL = 'BULK INSERT ##TmpKartKorProm
  34505.         FROM ''' + @BulkFile + '''
  34506.         WITH (
  34507.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34508.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34509.         )'
  34510.     EXEC (@SSQL)
  34511.  
  34512.  
  34513.  
  34514. Go
  34515. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkmobi]'))
  34516. drop procedure [dbo].[sp_citaj_bulkmobi]
  34517.  
  34518. Go
  34519.  
  34520.  
  34521.  
  34522.  
  34523.  
  34524.  
  34525.  
  34526.  
  34527. CREATE         PROCEDURE sp_Citaj_BulkMobi
  34528.     @BulkFile Varchar(50),
  34529.     @BulkFieldTerminator Varchar(3) = '\t',
  34530.     @BulkRowTerminator Varchar(3) = '\n'
  34531. AS
  34532.     If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpMobi]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34533.         Drop Table TmpMobi
  34534.     Create Table TmpMobi
  34535.     (    
  34536.         Godina smallint, 
  34537.         BrSaldo int,
  34538.         Opis Varchar(40),
  34539.         Datum_Dok Varchar(40),
  34540.         RokDosp int,
  34541.         Sifra_Kup Char(6),
  34542.         ProdMest Char(6),
  34543.         RBr smallint,
  34544.         Sifra_Art varchar(20),
  34545.         Kolic  decimal(18,6),
  34546.         Cena Decimal(18,6),
  34547.         Rabat Decimal(18,6), 
  34548.         Sifra_Pat smallint
  34549.     )
  34550.     Declare @SSQL Varchar(1000)
  34551.     Set @SSQL = 'BULK INSERT TmpMobi
  34552.         FROM ''' + @BulkFile + '''
  34553.         WITH (
  34554.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34555.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34556.         )'
  34557.     EXEC (@SSQL)
  34558. UPDATE TmpMobi SET ProdMest=0 WHERE ProdMest IS NULL
  34559. Declare @i as integer
  34560. SET @i=2
  34561. WHILE @i<7
  34562. Begin
  34563.     UPDATE TmpMobi SET Sifra_Art = '0'+Sifra_Art WHERE LEN(Sifra_Art)<6
  34564.     UPDATE TmpMobi SET Sifra_Kup = '0'+Sifra_Kup WHERE LEN(Sifra_Kup)<6
  34565.     SET @i = @i + 1
  34566. End
  34567. Select distinct BrSaldo, Sifra_kup, ProdMest from tmpmobi 
  34568.  
  34569.  
  34570.  
  34571. Go
  34572. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulknaracki]'))
  34573. drop procedure [dbo].[sp_citaj_bulknaracki]
  34574.  
  34575. Go
  34576.  
  34577.  
  34578.  
  34579.  
  34580. CREATE     PROCEDURE sp_Citaj_BulkNaracki
  34581.     @BulkFile Varchar(50),
  34582.     @BulkFieldTerminator Varchar(3) = ',',
  34583.     @BulkRowTerminator Varchar(3) = '\n'
  34584. AS
  34585.     Create Table ##TmpNarac
  34586.     (    Sifra_OE    smallint, 
  34587.         Datum_Nar    Smalldatetime,
  34588.         Sifra_Art    Varchar(20),
  34589.         Kolic        Numeric(18, 6),
  34590.         Broj_Nar    int,
  34591.                 Opis1           varchar (20)
  34592.     )
  34593.     Declare @SSQL Varchar(1000)
  34594.     Set @SSQL = 'BULK INSERT ##TmpNarac
  34595.         FROM ''' + @BulkFile + '''
  34596.         WITH (
  34597.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34598.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34599.         )'
  34600.     EXEC (@SSQL)
  34601.  
  34602.  
  34603.  
  34604. Go
  34605. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulknaracki_bezopis]'))
  34606. drop procedure [dbo].[sp_citaj_bulknaracki_bezopis]
  34607.  
  34608. Go
  34609.  
  34610.  
  34611.  
  34612.  
  34613. CREATE   PROCEDURE sp_Citaj_BulkNaracki_BezOpis
  34614.     @BulkFile Varchar(50),
  34615.     @BulkFieldTerminator Varchar(3) = ',',
  34616.     @BulkRowTerminator Varchar(3) = '\n'
  34617. AS
  34618.     Create Table ##TmpNarac
  34619.     (    Sifra_OE    smallint, 
  34620.         Datum_Nar    Smalldatetime,
  34621.         Sifra_Art    Varchar(20),
  34622.         Kolic        Numeric(18, 6),
  34623.         Broj_Nar    int
  34624.     )
  34625.     Declare @SSQL Varchar(1000)
  34626.     Set @SSQL = 'BULK INSERT ##TmpNarac
  34627.         FROM ''' + @BulkFile + '''
  34628.         WITH (
  34629.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34630.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34631.         )'
  34632.     EXEC (@SSQL)
  34633.  
  34634.  
  34635.  
  34636. Go
  34637. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkpopis]'))
  34638. drop procedure [dbo].[sp_citaj_bulkpopis]
  34639.  
  34640. Go
  34641.  
  34642. CREATE PROCEDURE sp_Citaj_BulkPopis
  34643.     @BulkFile Varchar(50),
  34644.     @BulkFieldTerminator Varchar(3) = ',',
  34645.     @BulkRowTerminator Varchar(3) = '\n'
  34646. AS
  34647.     If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpLPopM]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34648.         Drop Table TmpLPopM
  34649.     Create Table TmpLPopM
  34650.     (    Sifra_OE    smallint, 
  34651.         Datum        Smalldatetime,
  34652.         Sifra_Art    Varchar(20),
  34653.         Kolic        Numeric(18, 6),
  34654.         Broj        smallint
  34655.     )
  34656.     Declare @SSQL Varchar(1000)
  34657.     Set @SSQL = 'BULK INSERT TmpLPopM
  34658.         FROM ''' + @BulkFile + '''
  34659.         WITH (
  34660.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34661.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34662.         )'
  34663.     EXEC (@SSQL)
  34664.  
  34665.  
  34666.  
  34667. Go
  34668. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkprodsokontr]'))
  34669. drop procedure [dbo].[sp_citaj_bulkprodsokontr]
  34670.  
  34671. Go
  34672.  
  34673.  
  34674. CREATE      PROCEDURE sp_Citaj_BulkProdSoKontr
  34675.     @BulkFile Varchar(50),
  34676.     @BulkFieldTerminator Varchar(3) = ',',
  34677.     @BulkRowTerminator Varchar(3) = '\n'
  34678. AS
  34679.     If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpProdKontrSer]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34680.         Drop Table TmpProdKontrSer
  34681.     Create Table TmpProdKontrSer
  34682. (    Sifra_Mark    smallint,
  34683.     Datum        smalldatetime,
  34684.     Sifra_Art    varchar(20),
  34685.     KontrSer1    varchar(10),
  34686.     KontrSer2    varchar(10),
  34687.     Cena        decimal(18,6),
  34688.     Kolic        decimal(18,6))
  34689.     Declare @SSQL Varchar(1000)
  34690.     Set @SSQL = 'BULK INSERT TmpProdKontrSer
  34691.         FROM ''' + @BulkFile + '''
  34692.         WITH (
  34693.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34694.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34695.         )'
  34696.     EXEC (@SSQL)
  34697.  
  34698.  
  34699.  
  34700. Go
  34701. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_bulkpromet]'))
  34702. drop procedure [dbo].[sp_citaj_bulkpromet]
  34703.  
  34704. Go
  34705. CREATE PROCEDURE sp_Citaj_BulkPromet
  34706.     @BulkFile Varchar(50),
  34707.     @BulkFieldTerminator Varchar(3) = ',',
  34708.     @BulkRowTerminator Varchar(3) = '\n'
  34709. AS
  34710.     If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpProd]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34711.         Drop Table TmpProd
  34712.     Create Table TmpProd
  34713.     (    Sifra_Mark smallint, 
  34714.         BrKasa Smallint,
  34715.         Datum Smalldatetime,
  34716.         Sifra_Art Varchar(20),
  34717.         Cena Numeric(18, 6),
  34718.         Kolic Numeric(18, 6),
  34719.         RDatum Smalldatetime,
  34720.         RKolic Numeric(18, 6),
  34721.         POsn Numeric(6,2)
  34722.     )
  34723.     Declare @SSQL Varchar(1000)
  34724.     Set @SSQL = 'BULK INSERT TmpProd
  34725.         FROM ''' + @BulkFile + '''
  34726.         WITH (
  34727.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34728.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34729.         )'
  34730.     EXEC (@SSQL)
  34731.  
  34732.  
  34733. Go
  34734. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_merenovagaapt]'))
  34735. drop procedure [dbo].[sp_citaj_merenovagaapt]
  34736.  
  34737. Go
  34738.  
  34739. CREATE  PROCEDURE sp_Citaj_MerenoVagaApt
  34740.     @BulkFile Varchar(50),
  34741.     @BulkFieldTerminator Varchar(3) = ',',
  34742.     @BulkRowTerminator Varchar(3) = '\n'
  34743. AS
  34744.     CREATE TABLE ##PomMerenoVagaApt
  34745.     (Sifra_OE smallint , 
  34746.     BrKasa smallint,
  34747.     Broj_Ska int,
  34748.     DatumVreme DateTime,
  34749.     Sifra_Art varchar(20),
  34750.     Tezina decimal(18,6),
  34751.     Cena decimal(18,6))
  34752.     Declare @SSQL Varchar(1000)
  34753.     Set @SSQL = 'BULK INSERT ##PomMerenoVagaApt
  34754.         FROM ''' + @BulkFile + '''
  34755.         WITH (
  34756.             FIELDTERMINATOR = ''' + @BulkFieldTerminator + ''', 
  34757.             ROWTERMINATOR = ''' + @BulkRowTerminator + '''
  34758.         )'
  34759.     EXEC (@SSQL)
  34760.  
  34761.  
  34762.  
  34763. Go
  34764. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_popisvk]'))
  34765. drop procedure [dbo].[sp_citaj_popisvk]
  34766.  
  34767. Go
  34768.  
  34769.  
  34770.  
  34771. CREATE    PROCEDURE sp_Citaj_PopisVk
  34772.     @IDPopis int
  34773. AS
  34774.     --If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpLPop]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34775.     --    Drop Table TmpLPop
  34776.     Create Table ##TmpLPop
  34777.     (    Sifra_Art varchar(20), 
  34778.         KontrSer varchar(25),
  34779.         Sifra_Boja smallint,
  34780.         Sifra_Velic smallint,
  34781.         Popis Decimal(18,6)
  34782.     )
  34783.     Declare @SSQL Varchar(8000)
  34784.     Set @SSQL =     'INSERT INTO ##TmpLPop
  34785.               SELECT SIFRA_ART, KontrSer, Sifra_Boja, Sifra_Velic, SUM(POPIS) As Popis
  34786.             FROM LPOPIS WHERE IDPopis = ' +  Cast(@IDPopis  As Varchar(8))  +
  34787.             ' GROUP BY SIFRA_ART, KontrSer, Sifra_Boja, Sifra_Velic'
  34788.     EXEC (@SSQL)
  34789.  
  34790.  
  34791.  
  34792.  
  34793. Go
  34794. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_popisvk_sel]'))
  34795. drop procedure [dbo].[sp_citaj_popisvk_sel]
  34796.  
  34797. Go
  34798. CREATE     PROCEDURE sp_Citaj_PopisVk_Sel
  34799.     @IDPopis int,
  34800.     @Sifra_OE1 smallint = NULL
  34801. AS
  34802. IF @Sifra_OE1 IS NULL
  34803.       SELECT SIFRA_ART, KontrSer, SUM(POPIS) As Popis
  34804.     FROM LPOPIS WHERE IDPopis = @IDPopis  
  34805.     GROUP BY SIFRA_ART, KontrSer
  34806.     ORDER BY sifra_art, kontrser
  34807. ELSE
  34808. Begin
  34809.     CREATE TABLE #Tmp1
  34810.     (Sifra_Art varchar(20),
  34811.      KontrSer varchar(25),
  34812.      Popis    decimal(18,6))
  34813.     INSERT INTO #Tmp1
  34814.       SELECT SIFRA_ART, KontrSer, SUM(POPIS) As Popis
  34815.     FROM LPOPIS WHERE IDPopis = @IDPopis  
  34816.     GROUP BY SIFRA_ART, KontrSer
  34817.     INSERT INTO #Tmp1 SELECT Sifra_Art, NULL, 0 FROM Soart WHERE Sifra_OE = @Sifra_OE1 AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #Tmp1)
  34818.     SELECT * FROM #Tmp1 ORDER BY Sifra_Art, KontrSer
  34819. End
  34820.  
  34821.  
  34822. Go
  34823. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_popzal]'))
  34824. drop procedure [dbo].[sp_citaj_popzal]
  34825.  
  34826. Go
  34827.  
  34828. CREATE     PROCEDURE sp_Citaj_PopZal
  34829.     @Celosen char(1)
  34830. AS
  34831.     Create Table #TmpRez
  34832. (    Sifra_Art    varchar(20), 
  34833.     KontrSer    varchar(25),
  34834.     Sifra_Boja    smallint,
  34835.     Sifra_Velic    smallint,
  34836.     KnigSost    Decimal(18,6), 
  34837.     Cena        Decimal(18, 6),
  34838.     DanCena    char(1),
  34839.     POsn        Numeric(6,2),
  34840.     Sifra_Tar    char(3),
  34841.     Vlez        Numeric(18,6),
  34842.     Popis        Decimal(18,6)
  34843. )
  34844.     Declare @SSQL varchar(2000)
  34845.     SET @SSQL = 'INSERT INTO #TmpRez (Sifra_Art, KontrSer, Sifra_Boja, Sifra_Velic, KnigSost, Cena, DanCena, POsn, Sifra_Tar, Popis)
  34846.     SELECT Sifra_Art, KontrSer, Sifra_Boja, Sifra_Velic, 0, 0, '''', 0, '''', Popis FROM ##TmpLPop'
  34847.     EXEC (@SSQL)
  34848.     SET @SSQL = 'UPDATE #TmpRez SET Cena = Z.Cena, DanCena = Z.DanCena, POsn = Z.POsn, Sifra_Tar = Z.Sifra_Tar
  34849.     FROM ##TmpZal Z WHERE #TmpRez.Sifra_Art = Z.Sifra_Art'
  34850.     EXEC (@SSQL)
  34851.     SET @SSQL = 'INSERT INTO #TmpRez (Sifra_Art, KontrSer, Sifra_Boja, Sifra_Velic, KnigSost, Cena, DanCena, POsn, Sifra_Tar, Popis)
  34852.     SELECT Sifra_Art, KontrSer, Sifra_Boja, Sifra_Velic, KnigSost, Cena, DanCena, POsn, Sifra_Tar, 0 FROM ##TmpZal'
  34853.     EXEC (@SSQL)
  34854.     SELECT Sifra_Art, KontrSer, Sifra_Boja, Sifra_Velic, Cena, DanCena, POsn, Sifra_Tar, SUM(KnigSost) KnigSost, SUM(Popis) Popis
  34855.     FROM #TmpRez GROUP BY Sifra_Art, KontrSer, Sifra_Boja, Sifra_Velic, Cena, DanCena, POsn, Sifra_Tar
  34856.  
  34857.  
  34858.  
  34859. Go
  34860. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_tekzaliha]'))
  34861. drop procedure [dbo].[sp_citaj_tekzaliha]
  34862.  
  34863. Go
  34864.  
  34865.  
  34866. CREATE           PROCEDURE sp_Citaj_TekZaliha
  34867.     @Sifra_OE    smallint,
  34868.     @Celosen    char(1), 
  34869.     @DanCenaOE    char(1),
  34870.     @NabCena    char(1) = 'N'    --P-tek.pros.nab.cena, N-cena od soart, K-Nab.c.-katart(dod 16.06.05)
  34871. AS
  34872.     --If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpZal]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  34873.     --    Drop Table TmpZal
  34874.     Create Table ##TmpZal
  34875.     (    Sifra_Art varchar(20), 
  34876.         KontrSer varchar(25),
  34877.         Sifra_Boja    smallint,
  34878.         Sifra_Velic    smallint,
  34879.         KnigSost Decimal(18,6), 
  34880.         Cena Decimal(18, 6),
  34881.         DanCena char(1),
  34882.         POsn Numeric(6,2),
  34883.         Sifra_Tar char(3),
  34884.         Vlez    Numeric(18,6)
  34885.     )
  34886.     Declare @SSQL Varchar(1000)
  34887.     Set @SSQL =     'INSERT INTO ##TmpZal (Sifra_Art, KnigSost, Cena, DanCena, POsn, Sifra_Tar)
  34888.             SELECT S.Sifra_Art, S.Vlez - S.Izlez AS KnigSost, '
  34889.     If @NabCena = 'P' 
  34890.         Set @SSQL = @SSQL + ' S.NNabCena  AS Cena, ''N'' '        
  34891.     Else If @NabCena = 'K' 
  34892.         Set @SSQL = @SSQL + ' A.Nabavna  AS Cena, ''D'' '        
  34893.     Else
  34894.         Set @SSQL = @SSQL + 'dbo.fn_VratiSkalCena(S.Cena,T.ProcOsn,'''+@DanCenaOE+''',S.DanCena) AS Cena, '''+ @DanCenaOE + ''' '        
  34895.     Set @SSQL = @SSQL + ' AS DanCena,T.ProcOsn AS Posn, T.Sifra_Tar AS Sifra_Tar
  34896.             FROM Soart S
  34897.             INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art
  34898.             INNER JOIN Tarifi T ON A.Sifra_Tar = T.Sifra_Tar
  34899.              WHERE S.Sifra_OE=' +   Cast(@Sifra_OE  As Varchar(8)) + ' AND A.SMatUsl =''M'' ' 
  34900.     If @Celosen <> 'D' 
  34901.         Set @SSQL = @SSQL + ' AND S.Sifra_Art IN (SELECT Sifra_Art from ##TmpLPop) '
  34902.     SET @SSQL = @SSQL + ' AND (A.RokKontrDali IS NULL OR A.RokKontrDali <> ''D'') '
  34903.     Exec (@SSQL)
  34904. --Za Kontrolni broevi, rokovi, serii
  34905.     Set @SSQL =     'INSERT INTO ##TmpZal (Sifra_Art, KontrSer, KnigSost, Cena, DanCena, POsn, Sifra_Tar)
  34906.             SELECT SN.Sifra_Art, SN.KontrSer, SN.Vlez - SN.Izlez AS KnigSost, '
  34907.     If @NabCena = 'P' 
  34908.         Set @SSQL = @SSQL + ' S.NNabCena  AS Cena, ''N'' '        
  34909.     Else If @NabCena = 'K' 
  34910.         Set @SSQL = @SSQL + ' A.Nabavna  AS Cena, ''D'' '        
  34911.     Else
  34912.         Set @SSQL = @SSQL + 'dbo.fn_VratiSkalCena(S.Cena,T.ProcOsn,'''+@DanCenaOE+''',S.DanCena) AS Cena, '''+ @DanCenaOE + ''' '        
  34913.     Set @SSQL = @SSQL + ' AS DanCena,T.ProcOsn AS Posn, T.Sifra_Tar AS Sifra_Tar
  34914.             FROM SoKontrSer SN
  34915.             INNER JOIN Soart S ON S.Sifra_OE = SN.Sifra_OE AND S.Sifra_Art = SN.Sifra_Art
  34916.             INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art
  34917.             INNER JOIN Tarifi T ON A.Sifra_Tar = T.Sifra_Tar
  34918.              WHERE SN.Sifra_OE=' +   Cast(@Sifra_OE  As Varchar(8)) + ' AND A.SMatUsl =''M'' ' 
  34919.     If @Celosen <> 'D' 
  34920.         Set @SSQL = @SSQL + ' AND SN.Sifra_Art IN (SELECT Sifra_Art from ##TmpLPop) '
  34921.     SET @SSQL = @SSQL + ' AND A.RokKontrDali = ''D'' '
  34922.     Exec (@SSQL)
  34923.  
  34924.  
  34925.  
  34926.  
  34927. Go
  34928. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_tekzaliha_sel]'))
  34929. drop procedure [dbo].[sp_citaj_tekzaliha_sel]
  34930.  
  34931. Go
  34932.  
  34933. CREATE          PROCEDURE sp_Citaj_TekZaliha_Sel
  34934.     @Sifra_OE    smallint,
  34935.     @Datum    smalldatetime = Null
  34936. AS
  34937. IF @Datum IS NULL
  34938.     SELECT S.Sifra_Art, S.Vlez, S.Izlez, S.Cena, A.ImeArt FROM Soart S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  34939.     WHERE S.Sifra_OE=@Sifra_OE ORDER BY S.Sifra_Art
  34940. ELSE
  34941.     SELECT Sifra_Art, SUM(Case VlIzl When 'V' Then Kolic Else 0 End) Vlez, SUM(Case VlIzl When 'I' Then Kolic Else 0 End) Izlez
  34942.     FROM Stavr WHERE Sifra_OE=@Sifra_OE AND Datum_Dok<=@Datum GROUP BY Sifra_Art ORDER BY Sifra_Art
  34943.  
  34944.  
  34945.  
  34946. Go
  34947. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_zalihaboivel]'))
  34948. drop procedure [dbo].[sp_citaj_zalihaboivel]
  34949.  
  34950. Go
  34951.  
  34952.  
  34953. CREATE                 PROCEDURE sp_Citaj_ZalihaBoiVel
  34954.     @Sifra_OE    smallint,
  34955.     @Celosen    char(1), 
  34956.     @DanCenaOE    char(1),
  34957.     @Datum        smalldatetime = NULL,
  34958.     @CenaNaDat    char(1) = 'N'    --N-Tekovna,D-na Datum,P-tek.Pros.nab.cena, K-nab.c. od katart (dod.16.06.05), C-pros.nab.c na dat
  34959. AS
  34960.     If @CenaNaDat = 'P' OR @CenaNaDat = 'C'
  34961.         SET @DanCenaOE = 'N'
  34962.  
  34963.     Create Table ##TmpZal
  34964.     (    Sifra_Art varchar(20), 
  34965.         KontrSer varchar(40),
  34966.         Sifra_Boja    smallint,
  34967.         Sifra_Velic    smallint,
  34968.         KnigSost Decimal(18,6), 
  34969.         Cena Decimal(18, 6),
  34970.         DanCena char(1),
  34971.         POsn Numeric(6,2),
  34972.         Sifra_Tar char(3),
  34973.         Vlez    Numeric(18,6))
  34974.  
  34975.     CREATE TABLE #TmpArt
  34976.     (Sifra_Art    varchar(20))
  34977. IF @Celosen<>'D'    
  34978.     INSERT INTO #TmpArt SELECT DISTINCT Sifra_Art FROM ##TmpLPop 
  34979.  
  34980.     Declare @SSQL Varchar(1000)
  34981. IF @Datum IS NULL
  34982. Begin
  34983.     SET @SSQL = 'SELECT S.Sifra_Art, S.LotBr, S.Sostojba FROM SoMag S '
  34984.     If @Celosen <> 'D' 
  34985.         SET @SSQL = @SSQL+' INNER JOIN ##TmpLPop L ON S.Sifra_Art=L.Sifra_Art '
  34986.     SET @SSQL = @SSQL+' WHERE S.Sifra_OE=' + Cast(@Sifra_OE  As Varchar(8))   
  34987.     INSERT INTO ##TmpZal (Sifra_Art, KontrSer, KnigSost) EXEC (@SSQL)
  34988. End
  34989. Else
  34990. Begin
  34991.     CREATE TABLE #TmpMStav
  34992.     (DokrID        int,
  34993.     Sifra_Art    varchar(20),
  34994.     Lokacija    varchar(50),
  34995.     LotBr        varchar(30),
  34996.     Kolic        decimal(18,6))
  34997.     
  34998.     SET @SSQL = 'SELECT MS.DokrID, MS.Sifra_Art, MS.Lokacija, MS.LotBr, SUM(CASE MS.VlIzl WHEN ''V'' Then MS.Kolic ELSE MS.Kolic * -1 End)
  34999.     FROM MagStavr MS INNER JOIN Dokr D ON MS.DokrID=D.DokrID '
  35000.     If @Celosen <> 'D' 
  35001.         SET @SSQL = @SSQL+' INNER JOIN #TmpArt L ON MS.Sifra_Art=L.Sifra_Art '
  35002.     SET @SSQL = @SSQL+' WHERE D.Sifra_OE=' + Cast(@Sifra_OE  As Varchar(8))+' AND D.Datum_Dok<='''+cast(@Datum as varchar(35))+''' GROUP BY MS.DokrID, MS.Sifra_Art, MS.Lokacija, MS.LotBr '
  35003.     INSERT INTO #TmpMStav EXEC (@SSQL)
  35004.     UPDATE #TmpMStav SET LotBr='' WHERE LotBr IS NULL
  35005.  
  35006.     SET @SSQL = 'SELECT S.Sifra_Art, MS.LotBr, SUM( CASE WHEN MS.LotBr IS NULL THEN (CASE S.VlIzl WHEN ''V'' Then S.Kolic ELSE S.Kolic * -1 End) 
  35007.                                     ELSE MS.Kolic END) FROM Stavr S
  35008.      LEFT OUTER JOIN #TmpMStav MS ON S.Rbr=MS.Lokacija AND S.Sifra_Art=MS.Sifra_Art AND S.DokrID=MS.DokrID '
  35009.     If @Celosen <> 'D' 
  35010.         SET @SSQL = @SSQL+' INNER JOIN #TmpArt L ON S.Sifra_Art=L.Sifra_Art '
  35011.     SET @SSQL = @SSQL+' WHERE S.Sifra_OE=' + Cast(@Sifra_OE  As Varchar(8))+' AND S.Datum_Dok<='''+cast(@Datum as varchar(35))+''' 
  35012.         GROUP BY S.Sifra_Art, MS.LotBr '
  35013.     INSERT INTO ##TmpZal (Sifra_Art, KontrSer, KnigSost) EXEC (@SSQL)
  35014. --i sega uste ispadna deka ima artikli koi gi ima i vo stavr i vo magstavr, no kolicinata ne e ista zatoa sto vnesle nekoja stavka bez boja i velicina
  35015.     CREATE TABLE #TmpZbMStav
  35016.     (DokrID        int,
  35017.     Sifra_Art    varchar(20),
  35018.     Kolic        decimal(18,6))
  35019.  
  35020.     CREATE TABLE #TmpZbStav
  35021.     (DokrID        int,
  35022.     Sifra_Art    varchar(20),
  35023.     Kolic        decimal(18,6))
  35024.  
  35025.     INSERT INTO #TmpZbMStav SELECT DokrID, Sifra_Art, SUM(Kolic) FROM #TmpMStav GROUP BY DokrID, Sifra_Art
  35026.     INSERT INTO #TmpZbStav SELECT S.DokrID, S.Sifra_Art, SUM(CASE S.VlIzl WHEN 'V' Then S.Kolic Else S.Kolic * -1 End) FROM Stavr S   
  35027.     INNER JOIN #TmpZbMStav M ON S.DokrID=M.DokrID AND S.Sifra_Art=M.Sifra_Art GROUP BY S.DokrID, S.Sifra_Art
  35028.  
  35029.     CREATE TABLE #TmpRez 
  35030.     (Sifra_Art    varchar(20),
  35031.     Kolic        decimal(18,6))
  35032.  
  35033.     INSERT INTO #TmpRez (Sifra_Art, Kolic) SELECT S.Sifra_Art, SUM(S.Kolic-M.Kolic)
  35034.     FROM #TmpZbStav S INNER JOIN #TmpZbMStav M ON S.DokrID=M.DokrID AND S.Sifra_Art=M.Sifra_Art GROUP BY S.DokrID, S.Sifra_Art
  35035.     HAVING SUM(S.Kolic-M.Kolic)<>0
  35036.  
  35037.     UPDATE ##TmpZal SET KnigSost=KnigSost+R.Kolic FROM #TmpRez R WHERE ##TmpZal.Sifra_Art=R.Sifra_Art AND ##TmpZal.KontrSer IS NULL
  35038.  
  35039.     INSERT INTO ##TmpZal (Sifra_Art, KnigSost) SELECT R.Sifra_Art, R.Kolic FROM #TmpRez R WHERE R.Sifra_Art NOT IN (SELECT Sifra_Art FROM ##TmpZal WHERE KontrSer IS NULL)
  35040. End
  35041.  
  35042. UPDATE ##TmpZal SET KontrSer='' WHERE KontrSer IS NULL
  35043. UPDATE ##TmpZal SET Sifra_Velic = Substring(KontrSer, PatIndex('%:%', KontrSer)+1, 5) WHERE KontrSer<>'' AND Substring(KontrSer, PatIndex('%:%', KontrSer)+1, 5)<>''
  35044. UPDATE ##TmpZal SET Sifra_Boja = Substring(KontrSer, PatIndex('% %', KontrSer)+1, PatIndex('%:%', KontrSer)-PatIndex('% %', KontrSer)-1) WHERE KontrSer<>'' AND Substring(KontrSer, PatIndex('% %', KontrSer)+1, PatIndex('%:%', KontrSer)-PatIndex('% %', KontrSer)-1)<>''
  35045. UPDATE ##TmpZal SET KontrSer=NULL
  35046. --CENI
  35047.     CREATE TABLE #TmpCeni
  35048.     ( Sifra_Art    varchar(20),
  35049.       Cena        Decimal(18,4))
  35050.     If @Celosen='D'             
  35051.         INSERT INTO #TmpCeni (Sifra_art, Cena) SELECT A.Sifra_Art,0 FROM KatArt A INNER JOIN Soart S ON A.Sifra_Art=S.Sifra_Art WHERE S.Sifra_OE=@Sifra_OE
  35052.     Else
  35053.         INSERT INTO #TmpCeni (Sifra_art, Cena) SELECT Sifra_Art,0 FROM ##TmpLPop
  35054.  
  35055. IF  @CenaNaDat = 'C'     
  35056. Begin
  35057.     Create Table #ProsCeni    
  35058.     ( Sifra_Art    varchar(20),
  35059.      Sostojba    decimal(18,4),
  35060.      Vrednost    decimal(18,4),
  35061.      ProsCena    decimal(18,4) )
  35062.     Set @SSQL = ' Select Sifra_Art, Sum(Case VlIzl When ''V'' Then Kolic When ''I'' Then (-1*Kolic) End),
  35063.             Sum(Case VlIzl When ''V'' Then (Kolic*NabCena) When ''I'' Then (-1*Kolic*NabCena) End), 0
  35064.             From Stavr
  35065.             Where Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + ''' AND Sifra_Oe = ' + cast(@Sifra_OE as varchar(5)) 
  35066.     If @Celosen<>'D' SET @SSQL = @SSQL + ' AND Sifra_Art IN (Select Sifra_Art FROM ##TmpLPop) '
  35067.     SET @SSQL = @SSQL + ' Group By Sifra_Art '
  35068.     Insert Into #ProsCeni Exec(@SSQL)
  35069.     Create Table #FinRazl    
  35070.     ( Sifra_Art    varchar(20),
  35071.      IznosRazl    decimal(18,4) )
  35072.     Set @SSQL = ' Select Sifra_Art, Sum((Case VlIzl When ''V'' Then Iznos_Razl When ''I'' Then (-1*Iznos_Razl) End))
  35073.             From RazlFin
  35074.             Where Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + '''  AND Sifra_Oe = ' + cast(@Sifra_OE as varchar(5)) 
  35075.     If @Celosen<>'D' SET @SSQL = @SSQL + ' AND Sifra_Art IN (Select Sifra_Art FROM ##TmpLPop) '
  35076.     SET @SSQL = @SSQL + ' Group By  Sifra_Art '
  35077.     Insert Into #FinRazl Exec(@SSQL)
  35078.     Update #ProsCeni Set #ProsCeni.Vrednost=#ProsCeni.Vrednost+#FinRazl.IznosRazl
  35079.     From #FinRazl  Where #ProsCeni.Sifra_Art=#FinRazl.Sifra_Art
  35080.     Update #ProsCeni Set ProsCena=Vrednost/Sostojba Where Sostojba Is Not Null And Sostojba <> 0
  35081.     Update #ProsCeni Set ProsCena = 0 Where ProsCena < 0
  35082.     Update #ProsCeni Set ProsCena = S.NNabCena FROM Soart S Where #ProsCeni.ProsCena = 0 AND #ProsCeni.Sifra_Art=S.Sifra_Art AND S.Sifra_OE=@Sifra_OE ---
  35083. End
  35084.  
  35085.     If @CenaNaDat = 'D'
  35086.     Begin
  35087.         UPDATE #TmpCeni SET Cena =dbo.fn_CenaDatum (@Sifra_OE,Sifra_Art,@Datum,@DanCenaOE)
  35088.     
  35089.         UPDATE #TmpCeni SET Cena =  dbo.fn_VratiSkalCena(S.Cena,S.POsn, @DanCenaOE, S.DanCena)     FROM Soart S
  35090.         WHERE S.Sifra_OE = @Sifra_OE AND #TmpCeni.Sifra_Art = S.Sifra_Art AND (#TmpCeni.Cena = 0 or #TmpCeni.Cena IS NULL)   
  35091.     End
  35092.     Else If @CenaNaDat = 'P'
  35093.         UPDATE #TmpCeni SET Cena =S.NNabCena FROM SoArt S WHERE S.Sifra_OE=@Sifra_OE AND S.Sifra_Art=#TmpCeni.Sifra_Art
  35094.     Else If @CenaNaDat = 'C'
  35095.         UPDATE #TmpCeni SET Cena =C.ProsCena FROM #ProsCeni C WHERE #TmpCeni.Sifra_Art = C.Sifra_Art
  35096.     Else If @CenaNaDat = 'K' 
  35097.     Begin
  35098.         If @DanCenaOE = 'D'    
  35099.             UPDATE #TmpCeni SET Cena =A.Nabavna FROM KatArt A WHERE #TmpCeni.Sifra_Art = A.Sifra_Art
  35100.         Else
  35101.             UPDATE #TmpCeni SET Cena =dbo.fn_VratiSkalCena(A.Nabavna,T.ProcOsn, @DanCenaOE , 'D')
  35102.             FROM KatArt A, Tarifi T WHERE #TmpCeni.Sifra_Art = A.Sifra_Art AND A.Sifra_Tar=T.Sifra_Tar
  35103.     End
  35104.     Else
  35105.         UPDATE #TmpCeni SET Cena = dbo.fn_VratiSkalCena(S.Cena,S.POsn, @DanCenaOE,S.DanCena) FROM Soart S
  35106.         WHERE S.Sifra_OE = @Sifra_OE AND #TmpCeni.Sifra_Art = S.Sifra_Art
  35107.  
  35108. DELETE FROM ##TmpZal WHERE Sifra_Art IN (SELECT Sifra_Art FROM KatArt WHERE SMatUsl='U')
  35109. UPDATE ##TmpZal SET Cena=T.Cena, DanCena=@DanCenaOE FROM #TmpCeni T WHERE ##TmpZal.Sifra_Art=T.Sifra_Art
  35110. UPDATE ##TmpZal SET POsn=T.ProcOsn, Sifra_Tar=A.Sifra_Tar FROM KatArt A,Tarifi T WHERE ##TmpZal.Sifra_Art=A.Sifra_Art AND A.Sifra_Tar=T.Sifra_Tar
  35111.  
  35112.  
  35113.  
  35114.  
  35115.  
  35116.  
  35117.  
  35118.  
  35119.  
  35120.  
  35121. Go
  35122. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_zalihanadat]'))
  35123. drop procedure [dbo].[sp_citaj_zalihanadat]
  35124.  
  35125. Go
  35126.  
  35127. CREATE              PROCEDURE sp_Citaj_ZalihaNaDat
  35128.     @Sifra_OE    smallint,
  35129.     @Celosen    char(1), 
  35130.     @DanCenaOE    char(1),
  35131.     @Datum    smalldatetime,
  35132.     @CenaNaDat    char(1) = 'N'        --N-Tekovna,D-na Datum,P-tek.Pros.nab.cena, K-nab.c. od katart (dod.16.06.05), C-pros.nab.c na dat(09.02.06)
  35133. AS
  35134.     Set Nocount On
  35135.     Declare @SSQL varchar(4000)
  35136.     If @CenaNaDat = 'P' OR @CenaNaDat = 'C'
  35137.         SET @DanCenaOE = 'N'
  35138.     Declare @DaliRokKontr char(1)
  35139.     SELECT @DaliRokKontr = DaliRokKontr FROM OrgEd WHERE Sifra_OE = @Sifra_OE
  35140.     IF @DaliRokKontr IS NULL SET @DaliRokKontr ='N'
  35141.     IF @DaliRokKontr= 'D'
  35142.         SET @SSQL = 'SELECT Sifra_Art, KontrSer, '
  35143.     ELSE
  35144.         SET @SSQL = 'SELECT Sifra_Art, Null KontrSer, '    
  35145.     Set @SSQL = @SSQL + ' SUM(CASE WHEN VlIzl = ''V'' THEN Kolic ELSE (Kolic * -1) END)
  35146.             FROM Stavr  
  35147.             WHERE Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + 
  35148.              ' AND Datum_Dok<=''' + Cast(@Datum As Varchar(35)) + ''' '
  35149.     If @Celosen <> 'D' 
  35150.         Set @SSQL = @SSQL + ' AND Sifra_Art IN (SELECT Sifra_Art from ##TmpLPop) '
  35151.     IF @DaliRokKontr= 'D'
  35152.         SET @SSQL = @SSQL + ' GROUP BY Sifra_Art, KontrSer'
  35153.     ELSE
  35154.         SET @SSQL = @SSQL + ' GROUP BY Sifra_Art'
  35155.     CREATE TABLE #KolicNaDat
  35156.     ( Sifra_Art  varchar(20),
  35157.       KontrSer  varchar(25),
  35158.       Kolic Numeric(18,6)
  35159.     )
  35160.     INSERT INTO #KolicNaDat EXEC (@SSQL)
  35161.     --If Exists (select * from dbo.sysobjects where id = object_id(N'[TmpZal]') and OBJECTPROPERTY(id, N'IsTable') = 1)
  35162.     --    Drop Table TmpZal
  35163.     Create Table ##TmpZal
  35164.     (    Sifra_Art varchar(20), 
  35165.         KontrSer varchar(25), 
  35166.         Sifra_Boja    smallint,
  35167.         Sifra_Velic    smallint,
  35168.         KnigSost Decimal(18,6), 
  35169.         Cena Decimal(18, 6),
  35170.         DanCena char(1),
  35171.         POsn Numeric(6,2),
  35172.         Sifra_Tar char(3),
  35173.         Vlez    Numeric(18,6)
  35174.     )
  35175.     CREATE TABLE #TmpCeni
  35176.     ( Sifra_Art    varchar(20),
  35177.       Cena        Decimal(18,4)
  35178.     )
  35179.     If @CenaNaDat = 'D'
  35180.     Begin
  35181.     If @Celosen='D'            --promeneto 05.04.05
  35182.         INSERT INTO #TmpCeni (Sifra_art, Cena) 
  35183.         SELECT Sifra_Art,dbo.fn_CenaDatum (@Sifra_OE,Sifra_Art,@Datum,@DanCenaOE) FROM KatArt
  35184.     Else
  35185.         INSERT INTO #TmpCeni (Sifra_Art, Cena)
  35186.         SELECT Sifra_Art,dbo.fn_CenaDatum (@Sifra_OE,Sifra_Art,@Datum,@DanCenaOE) FROM ##TmpLPop
  35187.         UPDATE #TmpCeni
  35188.         SET Cena =  dbo.fn_VratiSkalCena(S.Cena,S.POsn, @DanCenaOE, S.DanCena)
  35189.             FROM Soart S
  35190.         WHERE S.Sifra_OE = @Sifra_OE AND #TmpCeni.Sifra_Art = S.Sifra_Art AND (#TmpCeni.Cena = 0 or #TmpCeni.Cena IS NULL)   
  35191.     End
  35192.     IF  @CenaNaDat = 'C'    --dodadeno 09.02.06
  35193.     Begin
  35194.         Create Table #ProsCeni    
  35195.         ( Sifra_Art    varchar(20),
  35196.          Sostojba    decimal(18,4),
  35197.          Vrednost    decimal(18,4),
  35198.          ProsCena    decimal(18,4) )
  35199.         Set @SSQL = ' Select Sifra_Art, Sum(Case VlIzl When ''V'' Then Kolic When ''I'' Then (-1*Kolic) End),
  35200.                 Sum(Case VlIzl When ''V'' Then (Kolic*NabCena) When ''I'' Then (-1*Kolic*NabCena) End), 0
  35201.                 From Stavr
  35202.                 Where Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + ''' AND Sifra_Oe = ' + cast(@Sifra_OE as varchar(5)) 
  35203.         If @Celosen<>'D' SET @SSQL = @SSQL + ' AND Sifra_Art IN (Select Sifra_Art FROM ##TmpLPop) '
  35204.         SET @SSQL = @SSQL + ' Group By Sifra_Art '
  35205.         Insert Into #ProsCeni Exec(@SSQL)
  35206.         Create Table #FinRazl    
  35207.         ( Sifra_Art    varchar(20),
  35208.          IznosRazl    decimal(18,4) )
  35209.         Set @SSQL = ' Select Sifra_Art, Sum((Case VlIzl When ''V'' Then Iznos_Razl When ''I'' Then (-1*Iznos_Razl) End))
  35210.                 From RazlFin
  35211.                 Where Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + '''  AND Sifra_Oe = ' + cast(@Sifra_OE as varchar(5)) 
  35212.         If @Celosen<>'D' SET @SSQL = @SSQL + ' AND Sifra_Art IN (Select Sifra_Art FROM ##TmpLPop) '
  35213.         SET @SSQL = @SSQL + ' Group By  Sifra_Art '
  35214.         Insert Into #FinRazl Exec(@SSQL)
  35215.         Update #ProsCeni Set #ProsCeni.Vrednost=#ProsCeni.Vrednost+#FinRazl.IznosRazl
  35216.         From #FinRazl  Where #ProsCeni.Sifra_Art=#FinRazl.Sifra_Art
  35217.         Update #ProsCeni Set ProsCena=Vrednost/Sostojba Where Sostojba Is Not Null And Sostojba <> 0
  35218.         Update #ProsCeni Set ProsCena = 0 Where ProsCena < 0
  35219.         Update #ProsCeni Set ProsCena = S.NNabCena FROM Soart S Where #ProsCeni.ProsCena = 0 AND #ProsCeni.Sifra_Art=S.Sifra_Art AND S.Sifra_OE=@Sifra_OE ---
  35220.     End
  35221.     INSERT INTO ##TmpZal (Sifra_Art, KontrSer, KnigSost)  SELECT Sifra_Art, KontrSer, Kolic AS KnigSost FROM #KolicNaDat
  35222.     INSERT INTO ##TmpZal (Sifra_Art, KnigSost) SELECT Sifra_Art, 0 FROM SoArt WHERE Sifra_OE = @Sifra_OE 
  35223.     AND Sifra_Art NOT IN (SELECT DISTINCT Sifra_Art FROM #KolicNaDat)
  35224.     CREATE TABLE #TmpSoa
  35225. (    Sifra_Art    varchar(20),
  35226.     Cena        decimal(18,6),
  35227.     DanCena    char(1),
  35228.     POsn        decimal(6,2),
  35229.     Sifra_Tar    char(3)
  35230. )    
  35231.     SET @SSQL = 'SELECT S.Sifra_Art, '
  35232.     If @CenaNaDat = 'D'
  35233.         Set @SSQL = @SSQL + ' C.Cena, '
  35234.     Else If @CenaNaDat = 'P'
  35235.         Set @SSQL = @SSQL + '  S.NNabCena, '
  35236.     Else If @CenaNaDat = 'C'
  35237.         Set @SSQL = @SSQL + '  C.ProsCena, '
  35238.     Else If @CenaNaDat = 'K' 
  35239.     Begin
  35240.     If @DanCenaOE = 'D'    
  35241.         Set @SSQL = @SSQL + ' A.Nabavna  AS Cena, '    
  35242.     Else
  35243.         Set @SSQL = @SSQL + ' dbo.fn_VratiSkalCena(A.Nabavna,T.ProcOsn,'''+@DanCenaOE+''', ''D'')  AS Cena, '    
  35244.     End
  35245.     Else
  35246.         Set @SSQL = @SSQL + ' dbo.fn_VratiSkalCena(S.Cena,T.ProcOsn,'''+@DanCenaOE+''',S.DanCena) AS Cena, '
  35247.     Set @SSQL = @SSQL + '''' + @DanCenaOE + ''' AS DanCena,T.ProcOsn AS Posn, T.Sifra_Tar AS Sifra_Tar
  35248.             FROM Soart S
  35249.             INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art
  35250.             INNER JOIN Tarifi T ON A.Sifra_Tar = T.Sifra_Tar '
  35251.     If @CenaNaDat = 'D'
  35252.         Set @SSQL = @SSQL +'LEFT OUTER JOIN #TmpCeni C ON S.Sifra_Art = C.Sifra_Art '
  35253.     ELSE IF @CenaNaDat = 'C'
  35254.         Set @SSQL = @SSQL +'LEFT OUTER JOIN #ProsCeni C ON S.Sifra_Art = C.Sifra_Art '
  35255.     Set @SSQL = @SSQL +' WHERE S.Sifra_OE=' +   Cast(@Sifra_OE  As Varchar(8))  + ' AND A.SMatUsl =''M'' ' 
  35256.     If @Celosen <> 'D' 
  35257.         Set @SSQL = @SSQL + ' AND S.Sifra_Art IN (SELECT Sifra_Art from ##TmpLPop) '
  35258.     INSERT INTO #TmpSoa (Sifra_Art, Cena, DanCena, POsn, Sifra_Tar) EXEC (@SSQL)
  35259.     DELETE FROM ##TmpZal WHERE Sifra_Art IN (SELECT Sifra_Art FROM KatArt WHERE SMatUsl='U')    --dod. 03.02.06      !!!!!!
  35260.     UPDATE ##TmpZal SET Cena = S.Cena, DanCena = S.DanCena, POsn = S.POsn, Sifra_Tar = S.Sifra_Tar
  35261.     FROM #TmpSoa S WHERE ##TmpZal.Sifra_Art = S.Sifra_Art
  35262.     --Exec (@SSQL)            --sto bara ova ovde???
  35263.     Set Nocount Off
  35264.  
  35265.  
  35266.  
  35267. Go
  35268. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_citaj_zalihanadatsamokolic]'))
  35269. drop procedure [dbo].[sp_citaj_zalihanadatsamokolic]
  35270.  
  35271. Go
  35272.  
  35273.  
  35274.  
  35275.  
  35276. CREATE                 PROCEDURE sp_Citaj_ZalihaNaDatSamoKolic
  35277.     @KoiOE    varchar(200) = NULL,
  35278.     @Datum    smalldatetime,
  35279.     @KojaFirma    char(2)
  35280. AS
  35281.     --- Ne cepkaj dolzina na polinja - napraveno specijalno za Podravka
  35282.     CREATE TABLE #TmpZal    
  35283. (    Pret        char(6),
  35284.     Sifra_Art    char(18),
  35285.     Sifra_OE    char(4),
  35286.     Datum        char(8),
  35287.     Kolic        decimal(17,3),
  35288.     Blok_kolic    decimal(17,3),
  35289.     EdM        char(3),
  35290.     Pogon        char(4),
  35291.     Konto        char(4),
  35292.     Vrednost    decimal(13,2)
  35293. )
  35294.     Declare @SSQL varchar(4000)
  35295.     SET @SSQL = 'INSERT INTO #TmpZal (Sifra_Art, EdM, Kolic) 
  35296.             SELECT K.Alt_Sifra, Substring(K.EdMera,1,3), 
  35297.             SUM(CASE WHEN S.VlIzl = ''V'' THEN S.Kolic  ELSE  S.Kolic * -1 END) as Kolic 
  35298.             FROM Stavr  S
  35299.             INNER JOIN KatArt K ON S.Sifra_Art=K.Sifra_Art
  35300.             WHERE S.Datum_Dok<=''' + Cast(@Datum As Varchar(35)) + ''' '
  35301.     If @KoiOE IS NOT NULL
  35302.         Set @SSQL = @SSQL + ' AND S.Sifra_OE IN (' +@KoiOE + ') '
  35303.     Set @SSQL = @SSQL + ' GROUP BY K.Alt_Sifra, K.EdMera '
  35304.     EXEC (@SSQL)
  35305.     Declare @SDat    char(8)
  35306.     SET @SDat = Cast(YEAR(@Datum) As varchar(8))
  35307.     IF MONTH(@Datum) < 10
  35308.         SET @SDat = rtrim(@SDat) + '0'+Cast(MONTH(@Datum) As char(1))
  35309.     ELSE
  35310.         SET @SDat = rtrim(@SDat) + Cast(MONTH(@Datum) As char(2))
  35311.     IF DAY(@Datum) < 10
  35312.         SET @SDat = rtrim(@SDat) + '0'+Cast(DAY(@Datum) As char(1))
  35313.     ELSE
  35314.         SET @SDat = rtrim(@SDat) + Cast(DAY(@Datum) As char(2))
  35315.     UPDATE #TmpZal SET Pret=@KojaFirma, Sifra_OE=' ', Pogon='5700', Konto='6611', Datum = @SDat, Blok_Kolic=0
  35316.     CREATE TABLE #TmpZalV
  35317.     (Sifra_Oe    smallint,
  35318.      Sifra_Art    varchar(20),
  35319.      Alt_Sifra    varchar(20),
  35320.      Kolic        decimal(18,6),
  35321.      Cena        decimal(18,6))
  35322.     SET @SSQL = 'INSERT INTO #TmpZalV (Sifra_OE, Sifra_Art, Alt_Sifra, Kolic) 
  35323.             SELECT S.Sifra_OE, S.Sifra_Art, K.Alt_Sifra, 
  35324.             SUM(CASE WHEN S.VlIzl = ''V'' THEN S.Kolic  ELSE  S.Kolic * -1 END) as Kolic 
  35325.             FROM Stavr  S
  35326.             INNER JOIN KatArt K ON S.Sifra_Art=K.Sifra_Art
  35327.             WHERE S.Datum_Dok<=''' + Cast(@Datum As Varchar(35)) + ''' '
  35328.     If @KoiOE IS NOT NULL
  35329.         Set @SSQL = @SSQL + ' AND S.Sifra_OE IN (' +@KoiOE + ') '
  35330.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_OE, S.Sifra_Art, K.Alt_Sifra '
  35331.     EXEC (@SSQL)
  35332. --    UPDATE #TmpZalV SET Cena = dbo.fn_CenaDatum (Sifra_OE, Sifra_Art, @Datum, 'N')
  35333.     UPDATE #TmpZalV SET Cena = dbo.fn_CenaDatum_DokCena (Sifra_OE, Sifra_Art, @Datum, 'N')
  35334.     CREATE TABLE #TmpZalVSum
  35335.     (Alt_Sifra    varchar(20),
  35336.      Vrednost    decimal(18,6))
  35337.     INSERT INTO #TmpZalVSum SELECT Alt_Sifra, SUM(Kolic*Cena) FROM #TmpZalV GROUP BY Alt_Sifra
  35338.     UPDATE #TmpZal SET Vrednost = V.Vrednost FROM #TmpZalVSum V WHERE #TmpZal.Sifra_Art=V.Alt_Sifra
  35339.     UPDATE #TmpZal SET Vrednost = 0 WHERE Vrednost IS NULL
  35340.     SELECT * FROM #TmpZal WHERE Kolic <> 0
  35341.  
  35342.  
  35343.  
  35344. Go
  35345. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_constraints_brisi]'))
  35346. drop procedure [dbo].[sp_constraints_brisi]
  35347.  
  35348. Go
  35349. CREATE        PROCEDURE sp_Constraints_Brisi
  35350. AS
  35351.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_AnFinDok_DatNal1' AND type = 'C') 
  35352.         ALTER TABLE AnFinDok DROP CONSTRAINT CK_AnFinDok_DatNal1
  35353.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_AnFinDok_DatNal2' AND type = 'C') 
  35354.         ALTER TABLE AnFinDok DROP CONSTRAINT CK_AnFinDok_DatNal2
  35355.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Nalozi_DatNal1' AND type = 'C') 
  35356.         ALTER TABLE Nalozi DROP CONSTRAINT CK_Nalozi_DatNal1
  35357.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Nalozi_DatNal2' AND type = 'C') 
  35358.         ALTER TABLE Nalozi DROP CONSTRAINT CK_Nalozi_DatNal2
  35359.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_GStav_DatNal1' AND type = 'C') 
  35360.         ALTER TABLE GStav DROP CONSTRAINT CK_GStav_DatNal1
  35361.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_GStav_DatNal2' AND type = 'C') 
  35362.         ALTER TABLE GStav DROP CONSTRAINT CK_GStav_DatNal2
  35363.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Dokr_DatDok1' AND type = 'C')         ALTER TABLE Dokr DROP CONSTRAINT CK_Dokr_DatDok1
  35364.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Dokr_DatDok2' AND type = 'C') 
  35365.         ALTER TABLE Dokr DROP CONSTRAINT CK_Dokr_DatDok2
  35366.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Naracki_DatNar1' AND type = 'C') 
  35367.         ALTER TABLE Naracki DROP CONSTRAINT CK_Naracki_DatNar1
  35368.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Naracki_DatNar2' AND type = 'C') 
  35369.         ALTER TABLE Naracki DROP CONSTRAINT CK_Naracki_DatNar2
  35370.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Popis_Datum1' AND type = 'C') 
  35371.         ALTER TABLE Popis DROP CONSTRAINT CK_Popis_Datum1
  35372.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Popis_Datum2' AND type = 'C') 
  35373.         ALTER TABLE Popis DROP CONSTRAINT CK_Popis_Datum2
  35374.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_KasStav_Datum1' AND type = 'C')
  35375.         ALTER TABLE KasStav DROP CONSTRAINT CK_KasStav_Datum1
  35376.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_KasStav_Datum2' AND type = 'C') 
  35377.         ALTER TABLE KasStav DROP CONSTRAINT CK_KasStav_Datum2
  35378.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RabNal_Datum1' AND type = 'C') 
  35379.         ALTER TABLE RabNal DROP CONSTRAINT CK_RabNal_Datum1
  35380.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RabNal_Datum2' AND type = 'C') 
  35381.         ALTER TABLE RabNal DROP CONSTRAINT CK_RabNal_Datum2
  35382.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlCeni_DatDok1' AND type = 'C') 
  35383.         ALTER TABLE RazlCeni DROP CONSTRAINT CK_RazlCeni_DatDok1
  35384.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlCeni_DatDok2' AND type = 'C') 
  35385.         ALTER TABLE RazlCeni DROP CONSTRAINT CK_RazlCeni_DatDok2
  35386.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlFin_DatDok1' AND type = 'C') 
  35387.         ALTER TABLE RazlFin DROP CONSTRAINT CK_RazlFin_DatDok1
  35388.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlFin_DatDok2' AND type = 'C') 
  35389.         ALTER TABLE RazlFin DROP CONSTRAINT CK_RazlFin_DatDok2
  35390.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlProd_DatDok1' AND type = 'C') 
  35391.         ALTER TABLE RazlProd DROP CONSTRAINT CK_RazlProd_DatDok1
  35392.     IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlProd_DatDok2' AND type = 'C') 
  35393.         ALTER TABLE RazlProd DROP CONSTRAINT CK_RazlProd_DatDok2
  35394.  
  35395.  
  35396. Go
  35397. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_cosmo_dadenipopustipoart]'))
  35398. drop procedure [dbo].[sp_cosmo_dadenipopustipoart]
  35399.  
  35400. Go
  35401. CREATE PROCEDURE Sp_Cosmo_DadeniPopustiPoArt
  35402.  
  35403.     @Sifra_Oe    smallint,
  35404.     @KoiOe    varchar(10),
  35405.     @Datum_Od    smalldatetime,
  35406.     @Datum_Do    smalldatetime,    
  35407.     @Sifra_Art    varchar(20) = Null
  35408. AS
  35409.  
  35410.     Declare @SSQL as varchar(8000)
  35411.  
  35412.     Create Table #Rez
  35413.     (
  35414.         Sifra_Oe    smallint,
  35415.         Grp_Kasa    smallint,
  35416.         BrKasa        smallint,
  35417.         Broj_Ska    int,
  35418.         Datum_Dok    smalldatetime,
  35419.         Sifra_Art    varchar(20),
  35420.         Kolic        decimal(18,4),
  35421.         Cena        decimal(18,4),
  35422.         Popust        decimal(18,4),
  35423.         Vredn1        decimal(18,2),
  35424.         Vredn2        decimal(18,2),
  35425.         NabCenaArt    decimal(18,4),
  35426.         NabCenaStavr    decimal(18,4)
  35427.     )
  35428.  
  35429.     Set @SSQL = ' Select P.Sifra_Oe, P.Grp_Kasa, P.BrKasa, P.Broj_Ska, P.Datum_Evid, S.Sifra_Art, S.Kolic, S.Cena, A.KrtOzn, A.Vredn, A.Vredn2, K.Nabavna, 0
  35430.             From Promet P
  35431.             Inner Join SPromet S On S.Sifra_Oe=P.Sifra_Oe And S.Grp_Kasa=P.Grp_Kasa And S.BrKasa=P.BrKasa And S.Broj_Ska=P.Broj_Ska
  35432.             Inner Join SPrometAdh A On A.Sifra_Oe=S.Sifra_Oe And A.Grp_Kasa=S.Grp_Kasa And A.BrKasa=S.BrKasa And A.Broj_Ska=S.Broj_Ska And A.Rbr=S.Rbr
  35433.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  35434.             Where KlucSodrz = ''CPARAM2_PER'' '
  35435.     If @Sifra_Oe Is Not Null
  35436.         Set @SSQL = @SSQL + 'And P.Sifra_Oe = ' + Cast(@Sifra_Oe As varchar(6)) + ' '
  35437.     If @KoiOe Is Not Null
  35438.         Set @SSQL = @SSQL + 'And P.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = '''+ @KoiOe + ''') '
  35439.     If @Datum_Od Is Not Null
  35440.         Set @SSQL = @SSQL + 'And P.Datum_Evid >= ''' + Cast(@Datum_Od As varchar(30)) + ''' '
  35441.     If @Datum_Do Is Not Null
  35442.         Set @SSQL = @SSQL + 'And P.Datum_Evid <= ''' + Cast(@Datum_Do As varchar(30)) + ''' '
  35443.     If @Sifra_Art Is Not Null
  35444.         Set @SSQL = @SSQL + 'And S.Sifra_Art = ''' + @Sifra_Art + ''' '
  35445.  
  35446.     Insert Into #Rez Exec(@SSQL)
  35447.  
  35448.     Select Distinct Sifra_Oe, Datum_Dok, Sifra_Art 
  35449.     Into #KoiArt
  35450.     From #Rez
  35451.  
  35452.     Create Table #NabCeniStavr
  35453.     (
  35454.         Sifra_Oe    smallint,
  35455.         Datum_Dok    smalldatetime,
  35456.         Sifra_Art    varchar(20),
  35457.         Nabavna    decimal(18,4)
  35458.     )
  35459.     Set @SSQL = 'Select S.Sifra_Oe, S.Datum_Dok, S.Sifra_Art, Avg(S.NabCena*(1+S.Posn/100))
  35460.             From Stavr S
  35461.             Inner Join #KoiArt A On A.Sifra_Oe=S.Sifra_Oe And A.Datum_Dok=S.Datum_Dok And A.Sifra_Art=S.Sifra_Art
  35462.             Where S.VlIzl=''I'' And (ImaDodatna is null Or ImaDodatna ='' '') '
  35463.     If @Sifra_Oe Is Not Null
  35464.         Set @SSQL = @SSQL + 'And S.Sifra_Oe = ' + Cast(@Sifra_Oe As varchar(6)) + ' '
  35465.     If @KoiOe Is Not Null
  35466.         Set @SSQL = @SSQL + 'And S.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe + ''') '
  35467.     If @Datum_Od Is Not Null
  35468.         Set @SSQL = @SSQL + 'And S.Datum_Dok >= ''' + Cast(@Datum_Od As varchar(30)) + ''' '
  35469.     If @Datum_Do Is Not Null
  35470.         Set @SSQL = @SSQL + 'And S.Datum_Dok <= ''' + Cast(@Datum_Do As varchar(30)) + ''' '
  35471.     If @Sifra_Art Is Not Null
  35472.         Set @SSQL = @SSQL + 'And S.Sifra_Art = ''' + @Sifra_Art + ''' '
  35473.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Datum_Dok, S.Sifra_Art '
  35474.     Insert Into #NabCeniStavr Exec(@SSQL)
  35475.  
  35476.     Update #Rez 
  35477.     Set NabCenaStavr = #NabCeniStavr.Nabavna
  35478.     From #NabCeniStavr 
  35479.     Where #Rez.Sifra_Oe=#NabCeniStavr.Sifra_Oe And #Rez.Datum_Dok=#NabCeniStavr.Datum_Dok And #Rez.Sifra_Art=#NabCeniStavr.Sifra_Art
  35480.  
  35481.     Select R.Sifra_Oe, R.Grp_Kasa, R.BrKasa, R.Broj_Ska, R.Datum_Dok, R.Sifra_Art, K.ImeArt, 
  35482.         R.Kolic, R.Cena, R.Popust, R.Vredn1, R.Vredn2, R.NabCenaArt, R.NabCenaStavr
  35483.     From #Rez R
  35484.     Inner Join Katart K On K.Sifra_Art=R.Sifra_Art
  35485.  
  35486. Go
  35487. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_crosscheck_pak_nom]'))
  35488. drop procedure [dbo].[sp_crosscheck_pak_nom]
  35489.  
  35490. Go
  35491.  
  35492.  
  35493. CREATE  PROCEDURE sp_CrossCheck_Pak_Nom
  35494.     @Sifra_KatPak        smallint,
  35495.     @Sifra_KatPak_Pomalo    smallint,
  35496.     @Nom_Pakuv        varchar(50),
  35497.     @Nom_Pomalo        varchar(50),
  35498.     @Sifra_Art        varchar(20),
  35499.         @NajdenoSomnitelno    char (1) = Null OUTPUT 
  35500.  AS
  35501.     If Exists (Select Top 1 * From KatPakuv Where Sifra_KatPak = @Sifra_KatPak and Nom_Pomalo = @Nom_Pakuv and Nom_Pomalo <> Nom_Pakuv)
  35502.         set @NajdenoSomnitelno = '1'
  35503.     else
  35504.         set @NajdenoSomnitelno = 'N'
  35505.     Return @@ERROR
  35506.  
  35507.  
  35508.  
  35509. Go
  35510. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_crr_level_kpi]'))
  35511. drop procedure [dbo].[sp_crr_level_kpi]
  35512.  
  35513. Go
  35514.  
  35515. CREATE  PROCEDURE sp_CRR_Level_KPI
  35516.     @KoiPat_Naracki    varchar(6) = Null,
  35517.     @Sifra_Nar        varchar(100) = Null,
  35518.     @Sifra_Oe_Storno    smallint = Null,
  35519.     @Sifra_Dok_Storno    varchar(100) = Null,
  35520.     @Datum_Dok_Od    smalldatetime = Null,
  35521.     @Datum_Dok_Do    smalldatetime = Null
  35522. AS
  35523.     Declare @SSQL as varchar(8000)
  35524.     Create Table #CRR
  35525.     (
  35526.      Godina        smallint,
  35527.      Mesec        smallint,
  35528.      NarackiBr    int,
  35529.      NarackiVred    decimal(18,6),
  35530.      StornoBr    int,
  35531.      StornoVred    decimal(18,6)
  35532.     )
  35533.     Set @SSQL = ' Select Year(Datum_Nar), Month(Datum_Nar), Count(Broj_Nar), Sum(Toc200), 0, 0
  35534.             From Naracki 
  35535.             Where 1=1 '
  35536.     If @KoiPat_Naracki Is Not Null
  35537.         Set @SSQL = @SSQL + ' And Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @KoiPat_Naracki + ''')'
  35538.     If @Sifra_Nar Is Not Null
  35539.         Set @SSQL = @SSQL + ' And Sifra_Nar In (' + @Sifra_Nar + ') '
  35540.     If @Datum_Dok_Od Is Not Null
  35541.         Set @SSQL = @SSQL + ' And Datum_Nar >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  35542.     If @Datum_Dok_Do Is Not Null
  35543.         Set @SSQL = @SSQL + ' And Datum_Nar <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  35544.     Set @SSQL = @SSQL + ' Group By Year(Datum_Nar), Month(Datum_Nar) '
  35545.     Insert Into #CRR Exec(@SSQL)
  35546.     Set @SSQL = ' Select Year(Datum_Dok), Month(Datum_Dok), 0, 0, Count(Broj_Dok), Sum(Toc200)
  35547.             From Dokr
  35548.             Where 1=1 '
  35549.     If @Sifra_Oe_Storno Is Not Null
  35550.         Set @SSQL = @SSQL + ' And Sifra_Oe = ' +  Cast(@Sifra_Oe_Storno as varchar(6)) + ' '
  35551.     If @Sifra_Dok_Storno Is Not Null
  35552.         Set @SSQL = @SSQL + ' And Sifra_Dok In (' + @Sifra_Dok_Storno + ') '
  35553.     If @Datum_Dok_Od Is Not Null
  35554.         Set @SSQL = @SSQL + ' And Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  35555.     If @Datum_Dok_Do Is Not Null
  35556.         Set @SSQL = @SSQL + ' And Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  35557.     Set @SSQL = @SSQL + ' Group By Year(Datum_Dok), Month(Datum_Dok) '
  35558.     Insert Into #CRR Exec(@SSQL)
  35559.     Select Godina, Mesec, Sum(NarackiBr) NarackiBr, Sum(NarackiVred) NarackiVred, Sum(StornoBr) StornoBr, Sum(StornoVred) StornoVred
  35560.     From #CRR
  35561.     Group By Godina, Mesec
  35562.  
  35563.  
  35564.  
  35565. Go
  35566. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_crr_report]'))
  35567. drop procedure [dbo].[sp_crr_report]
  35568.  
  35569. Go
  35570.  
  35571.  
  35572. CREATE      PROCEDURE sp_CRR_Report
  35573.     @Sifra_Oe_Storno    smallint = Null,
  35574.     @Sifra_Dok_Storno    varchar(100) = Null,
  35575.     @Datum_Dok_Od    smalldatetime = Null,
  35576.     @Datum_Dok_Do    smalldatetime = Null,
  35577.     @Sifra_Pat_Storno    int = Null
  35578. AS
  35579.  
  35580.     Declare @SSQL as varchar(8000)
  35581.  
  35582.     Create Table #CRR
  35583.     (
  35584.      Sifra_Oe    smallint,
  35585.      Sifra_Dok    smallint,
  35586.      Broj_Dok    int,
  35587.      Datum_Dok    smalldatetime,
  35588.  
  35589.      Identif_Br    varchar(50),
  35590.      Ispratnica    varchar(50),
  35591.      Toc200        decimal(18,6),
  35592.      Sifra_Obj    smallint,
  35593.      Sifra_Kup    char(6),
  35594.      ImeKup        varchaR(50),
  35595.      Sifra_Pat    int,
  35596.      Broj_Stavki_ smallint,
  35597.      Broj_Stavki_orig smallint,
  35598.  
  35599.      Toc200_Orig    decimal(18,6),
  35600.  
  35601.      Sifra_Oe_Orig  smallint,
  35602.      Sifra_Dok_Orig smallint,
  35603.      Broj_Dok_Orig  int,
  35604.  
  35605.      Datum_Dok_Orig smalldatetime,
  35606.      Sifra_Pat_Orig smallint,
  35607.  
  35608.      Eden_CRR    smallint,
  35609.      Odbieno    varchar(50)
  35610.     )
  35611.  
  35612.     Set @SSQL = '
  35613.         select DStor.Sifra_Oe, DStor.Sifra_Dok, DStor.Broj_dok, DStor.Datum_Dok, 
  35614.             DStor.Identif_Br, DStor.Ispratnica, DStor.Toc200,
  35615.             DStor.Sifra_Obj, DStor.Sifra_Kup,
  35616.             K.ImeKup, DStor.Sifra_Pat, 
  35617.             count (*) as Broj_Stavki, 0 as Broj_Stavki_Orig,
  35618.             0 as Toc200_Orig,
  35619.             0 Sifra_Oe_Orig, 0 Sifra_Dok_Orig, 0 Broj_Dok_Orig,
  35620.             null Datum_Dok_Orig, null Sifra_Pat_Orig,
  35621.             SStor.SifrA_CRR, DStor.Opis
  35622.         from dokr DStor
  35623.         Left Outer Join Komint K
  35624.             on DStor.Sifra_Kup = K.Sifra_Kup
  35625.         inner join Stavr SStor 
  35626.             on DStor.Sifra_Oe = SStor.Sifra_Oe and DStor.Sifra_Dok = SStor.Sifra_Dok
  35627.                    and DStor.Broj_Dok = SStor.Broj_Dok
  35628.         where DStor.toc200 < 0 and DStor.vlizl=''I'' '
  35629.  
  35630.     If @Sifra_Oe_Storno Is Not Null
  35631.         Set @SSQL = @SSQL + ' And DStor.Sifra_Oe = ' +  Cast(@Sifra_Oe_Storno as varchar(6)) + ' '
  35632.  
  35633.     If @Sifra_Dok_Storno Is Not Null
  35634.         Set @SSQL = @SSQL + ' And DStor.Sifra_Dok In (' + @Sifra_Dok_Storno + ') '
  35635.  
  35636.     If @Datum_Dok_Od Is Not Null
  35637.         Set @SSQL = @SSQL + ' And DStor.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  35638.  
  35639.     If @Datum_Dok_Do Is Not Null
  35640.         Set @SSQL = @SSQL + ' And DStor.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  35641.  
  35642.     If @Sifra_Pat_Storno Is Not Null
  35643.         Set @SSQL = @SSQL + ' And DStor.Sifra_Pat = ' +  Cast(@Sifra_Pat_Storno as varchar(6)) + ' '
  35644.  
  35645.     Set @SSQL = @SSQL + ' Group By 
  35646.                 DStor.Sifra_Oe, DStor.Sifra_Dok, DStor.Broj_dok, DStor.Datum_Dok, 
  35647.                 DStor.Identif_Br, DStor.Ispratnica,
  35648.                 DStor.Toc200, DStor.Sifra_Obj, DStor.Sifra_Kup,
  35649.                 K.ImeKup, SStor.SifrA_CRR, DStor.Opis, DStor.Sifra_Pat '
  35650.  
  35651.     insert into #CRR 
  35652.         EXEC (@SSQL)
  35653.  
  35654.     select C.*, Kod.ImeCRR, ' ' as PlanNeplan
  35655.     from #CRR C
  35656.     left outer join CRRKodovi Kod
  35657.         on C.Eden_CRR = Kod.Sifra_CRR
  35658.  
  35659. Go
  35660. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_customer]'))
  35661. drop procedure [dbo].[sp_customer]
  35662.  
  35663. Go
  35664.  
  35665. CREATE        PROCEDURE sp_Customer
  35666.     @Datum_Od Smalldatetime,
  35667.     @Datum_Do Smalldatetime,
  35668.     @TipDok_Vlez        varchar(100)='1,10,16',
  35669.     @Sifra_Art_Od        varchar(20)=Null,
  35670.     @Sifra_Art_Do        varchar(20)='009000',
  35671.     @Sif_GrOrg        char(6)='9'
  35672. AS
  35673.     Declare @SSQL Varchar(4000)
  35674.     SET @SSQL='SELECT S.Datum_Dok, D.Sifra_Kup, 
  35675.     dbo.fn_ULKod(S.Sifra_Art, A.Alt_Sifra) as ULKod,
  35676.     dbo.fn_KolicSoZnak(T.Plus_Minus, S.Kolic) As Kolic,
  35677.     dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * dbo.fn_KolicSoZnak(T.Plus_Minus, S.Kolic) as Value,
  35678.     dbo.fn_VratiRabatSoDDV(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * dbo.fn_KolicSoZnak(T.Plus_Minus, S.Kolic) as Discount,
  35679.     S.Sifra_oe, S.Sifra_dok, S.Broj_Dok
  35680.     FROM Stavr S
  35681.     INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  35682.     INNER JOIN TipDok T ON S.Sifra_Dok=T.Sifra_Dok
  35683.     INNER JOIN Dokr D ON S.DokrID=D.DokrID
  35684.     WHERE A.Iskluci <> ''D'' '
  35685.     IF @TipDok_Vlez IS NOT NULL
  35686.         SET @SSQL = @SSQL + ' AND S.Sifra_dok IN (' + @TipDok_Vlez +') '
  35687.     IF @Sifra_Art_Od IS NOT NULL 
  35688.         SET @SSQL = @SSQL + ' AND A.Sifra_Art>=''' + @Sifra_Art_Od +''' '
  35689.     IF @Sifra_Art_Do IS NOT NULL 
  35690.         SET @SSQL = @SSQL + ' AND A.Sifra_Art<=''' + @Sifra_Art_Do +''' '
  35691.     If @Sif_GrOrg IS NOT NULL    
  35692.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg = '''+@Sif_GrOrg +''') '
  35693.     If @Datum_Od Is NOT Null
  35694.         SET @SSQL = @SSQL + ' AND S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  35695.     If @Datum_Do Is NOT Null
  35696.          SET @SSQL = @SSQL + ' AND S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  35697.     CREATE        Table #tItems
  35698.     (
  35699.      Datum          smalldatetime,
  35700.      Sifra_Kup     varchar(12),
  35701.      ULKod         varchar(10),
  35702.      Kolic            decimal(18,6),
  35703.      Value           decimal(18,6), 
  35704.      Discount      decimal(18,6),
  35705.      Sifra_oe       smallint,
  35706.      Sifra_Dok     smallint, 
  35707.      Broj_Dok      int,
  35708.      LocalCode    varchar(5),
  35709.      Descr_Prom  varchar(20)
  35710.     )
  35711.     INSERT INTO #tItems (Datum, Sifra_Kup, ULKod, Kolic, Value, Discount, Sifra_oe, Sifra_Dok, Broj_Dok)  Exec(@SSQL)
  35712.     SELECT K.Sifra_Kup, K.ImeKup, KD.Ime_2K, K.Adresa, K.Sifra_grad
  35713.     FROM Komint K
  35714.     LEFT OUTER JOIN KDrugo2 KD on K.KDrugo2 = KD.Sifra_2K
  35715.     WHERE Sifra_Kup  IN (SELECT DISTINCT Sifra_Kup FROM #tItems)
  35716.  
  35717.  
  35718.  
  35719. Go
  35720. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_1_voz_kup]'))
  35721. drop procedure [dbo].[sp_daj_1_voz_kup]
  35722.  
  35723. Go
  35724.  
  35725. create  PROCEDURE sp_Daj_1_Voz_Kup
  35726.     @Sifra_Kup    char(6),
  35727.     @Sifra_Art    varchar(20) = null OUTPUT,
  35728.     @KolkuVoz    int = null OUTPUT
  35729.  
  35730. AS
  35731.  
  35732.     select @KolkuVoz = count(*)
  35733.     from Vozila
  35734.     Where Sifra_Kup = @Sifra_Kup
  35735.  
  35736.     if @KolkuVoz is null or @KolkuVoz > 1
  35737.         set @Sifra_Art = Null
  35738.     else
  35739.         select @Sifra_Art = Sifra_Art
  35740.         from Vozila
  35741.         Where Sifra_Kup = @Sifra_Kup
  35742.  
  35743.  
  35744. Go
  35745. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_1cena_dok]'))
  35746. drop procedure [dbo].[sp_daj_1cena_dok]
  35747.  
  35748. Go
  35749.  
  35750.  
  35751. CREATE PROCEDURE sp_Daj_1Cena_Dok
  35752.  
  35753.    @Sifra_OE smallint,
  35754.    @Sifra_Dok smallint,
  35755.    @Broj_Dok int,
  35756.    @DokCena decimal (18, 6) OUTPUT
  35757.  
  35758. AS
  35759.  
  35760.    SELECT top 1 @DokCena = DokCena
  35761.    FROM Stavr
  35762.    WHERE Sifra_OE = @Sifra_OE AND Sifra_Dok = @Sifra_Dok AND Broj_Dok = @Broj_Dok
  35763.    order by Rbr
  35764.  
  35765.  
  35766.  
  35767.  
  35768. Go
  35769. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_1cena_dok_id]'))
  35770. drop procedure [dbo].[sp_daj_1cena_dok_id]
  35771.  
  35772. Go
  35773.  
  35774.  
  35775. create PROCEDURE [dbo].[sp_Daj_1Cena_Dok_ID]
  35776.  
  35777.    @DokrID int,
  35778.    @DokCena decimal (18, 6) OUTPUT
  35779.  
  35780. AS
  35781.  
  35782.    SELECT top 1 @DokCena = DokCena
  35783.    FROM Stavr
  35784.    WHERE DokrId = @DokrId
  35785.    order by Rbr
  35786.  
  35787.  
  35788.  
  35789.  
  35790.  
  35791.  
  35792. Go
  35793. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_broj_nal_blag]'))
  35794. drop procedure [dbo].[sp_daj_broj_nal_blag]
  35795.  
  35796. Go
  35797.  
  35798.  
  35799. CREATE  PROCEDURE sp_Daj_Broj_Nal_Blag
  35800.     @Sifra_Nal smallint,
  35801.     @Datum_Nal smalldatetime,
  35802.     @Broj_Nal int = Null OUTPUT
  35803.  
  35804. AS
  35805.  
  35806.     select @Broj_Nal = Broj_Nal
  35807.     from Nalozi
  35808.     where Sifra_Nal = @Sifra_Nal and Datum_Nal = @Datum_Nal
  35809.  
  35810.     if @Broj_Nal is null
  35811.     begin
  35812.         select @Broj_Nal = max(Broj_Nal)
  35813.         from Nalozi
  35814.         where Sifra_Nal = @Sifra_Nal and Datum_Nal < @Datum_Nal
  35815.         
  35816.         if @Broj_Nal is not null
  35817.             set @Broj_Nal = @Broj_Nal + 1
  35818.     end
  35819.  
  35820.     if @Broj_Nal is null
  35821.         set @Broj_Nal = 1                
  35822.  
  35823.  
  35824.  
  35825.  
  35826.  
  35827. Go
  35828. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_cen_kup_art_dog]'))
  35829. drop procedure [dbo].[sp_daj_cen_kup_art_dog]
  35830.  
  35831. Go
  35832.  
  35833.  
  35834. CREATE   PROCEDURE sp_Daj_Cen_Kup_Art_Dog
  35835.     @Sifra_Kup    char(6),
  35836.     @Sifra_Art    varchar(20),
  35837.     @DogBr        char(10),
  35838.  
  35839.     @Cena        decimal(18,4) OUTPUT,
  35840.     @DanCena    char(1) = null OUTPUT,
  35841.     @Uces        decimal(6,2) = null OUTPUT,
  35842.     @POsn        decimal(6,2) = null OUTPUT,
  35843.  
  35844.     @Kolic_Dog    decimal(18,6) = null OUTPUT,
  35845.  
  35846.     @PocDatum    smalldatetime = null OUTPUT,
  35847.     @KrajDatum    smalldatetime = null OUTPUT,
  35848.  
  35849.     @Aktiven    char(1) = Null OUTPUT,
  35850.     @AktivenSta    char(1) = Null OUTPUT,
  35851.  
  35852.     @Opis_Cena    varchar(30) = Null OUTPUT,
  35853.  
  35854.     @Sifra_Art_Cen    varchar(20) = Null OUTPUT,
  35855.  
  35856.     @ProvRealiz    chaR(1) = NUll,
  35857.     @Realizirano    decimal(18,6) = Null OUTPUT
  35858.  
  35859. AS
  35860.  
  35861.     Select @Cena = S.Cena, @Uces = S.Uces, @DanCena = S.DanCena, @Kolic_Dog = S.Kolic_Dog,
  35862.          @PocDatum = D.PocDatum, @KrajDatum = D.KrajDatum, @Aktiven = D.Aktiven, 
  35863.          @AktivenSta = S.AktivenSta, @Opis_Cena = S.Opis_Cena,
  35864.          @SifrA_ARt_Cen = S.SifrA_Art, @POsn = T.ProcOsn
  35865.     From CenDog D
  35866.     inner join CenDogSta S
  35867.         on D.SIfra_Kup = S.Sifra_Kup and D.TipKup = S.TipKup and D.DogBr = S.DogBr
  35868.     inner join Katart K
  35869.         on K.Sifra_Art = S.Sifra_Art
  35870.     inner join Tarifi T
  35871.         on K.Sifra_Tar = T.Sifra_Tar
  35872.     Where D.Sifra_Kup = @Sifra_Kup and S.Sifra_art = @Sifra_Art and D.DogBr = @DogBr and D.TipKup = 'ALL'
  35873.  
  35874.  
  35875.     if @Kolic_Dog is not null and @Kolic_Dog <> 0
  35876.     begin
  35877.         -- Presmetaj REALIZACIJA PO STAVKI
  35878.  
  35879.         Select @Realizirano = (
  35880.             select Sum(S.Kolic) 
  35881.             From Dokr D
  35882.             Inner Join Stavr S 
  35883.                 On S.DokrID = D.DokrID
  35884.                 Where D.DogBr = @DogBr and D.Sifra_Kup = @Sifra_Kup
  35885.                 and S.SifrA_Art = @SifrA_Art AND D.VlIzl = 'I' )
  35886.  
  35887.     end
  35888.  
  35889.  
  35890.  
  35891.  
  35892. Go
  35893. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_depozamb_art]'))
  35894. drop procedure [dbo].[sp_daj_depozamb_art]
  35895.  
  35896. Go
  35897.  
  35898.  
  35899.  
  35900. CREATE   PROCEDURE sp_Daj_DepozAmb_Art
  35901.     @Sifra_Art    varchar(20),
  35902.     @Sif_Depoz_Amb    char(1) OUTPUT
  35903. AS
  35904.     select @Sif_Depoz_Amb = Sif_Depoz_Amb
  35905.     from Katart 
  35906.     where Sifra_Art = @Sifra_Art
  35907.  
  35908.  
  35909.  
  35910. Go
  35911. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_diviz_art]'))
  35912. drop procedure [dbo].[sp_daj_diviz_art]
  35913.  
  35914. Go
  35915.  
  35916.  
  35917. create   PROCEDURE sp_Daj_Diviz_Art
  35918.     @Sifra_Art    varchar(20),
  35919.     @Sifra_Div    smallint OUTPUT
  35920. AS
  35921.     select @Sifra_Div = Sifra_Div
  35922.     from Katart 
  35923.     where Sifra_Art = @Sifra_Art
  35924.  
  35925.  
  35926.  
  35927. Go
  35928. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_dog_kup]'))
  35929. drop procedure [dbo].[sp_daj_dog_kup]
  35930.  
  35931. Go
  35932.  
  35933. create   PROCEDURE sp_Daj_Dog_Kup
  35934.     @Sifra_Kup    char(6),
  35935.     @Datum        smalldatetime,
  35936.     @Tip_Cenovnik   chaR(1)
  35937.  
  35938. AS
  35939.  
  35940.     SELECT *
  35941.     From CenDog
  35942.     WHERE Sifra_Kup = @Sifra_Kup AND Tip_Cenovnik = @Tip_Cenovnik
  35943.         and PocDatum <= @Datum and (KrajDatum is null or KrajDatum >= @Datum)
  35944.  
  35945.  
  35946.  
  35947.  
  35948.  
  35949. Go
  35950. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_dok_nefakt]'))
  35951. drop procedure [dbo].[sp_daj_dok_nefakt]
  35952.  
  35953. Go
  35954.  
  35955.  
  35956. CREATE    PROCEDURE sp_Daj_Dok_NeFakt
  35957.     @Sifra_GrOrg char (6),
  35958.     @Sifra_Dok  smallint,
  35959.     @Sifra_Dok2  smallint = 0,
  35960.     @Sifra_Dok3  smallint = 0,
  35961.     @Sifra_Dok4  smallint = 0,
  35962.     @Datum_Od Smalldatetime,
  35963.     @Datum_Do Smalldatetime,
  35964.     @SoAnalizaNarac char(1) = 'N',
  35965.     @Sifra_Prev char (6)
  35966. AS
  35967. Set Nocount On
  35968. CREATE      TABLE #TmpDok
  35969. (DokrId        int, 
  35970. Sifra_oe        smallint, 
  35971. Sifra_dok    smallint, 
  35972. Broj_Dok    int, 
  35973. Datum_Dok    smalldatetime, 
  35974. Sifra_Kup    char(6), 
  35975. Sifra_Obj    smallint, 
  35976. Sifra_Pat    smallint, 
  35977. Toc200        decimal(18,4),
  35978. Kasa        decimal(6,2), 
  35979. Rok        smallint, 
  35980. Spec_Forma_Pec varchar(10), 
  35981. Kto        char(10), 
  35982. Danok1        decimal(18,4), 
  35983. Danok2        decimal(18,4), 
  35984. KojaSmetka    char(1), 
  35985. ImeKup        varchar(40), 
  35986. Sifra_Grad    smallint,
  35987. ImeGrad    varchar(40), 
  35988. ImeObj        varchar(40),
  35989. Sifra_OENar    smallint,
  35990. Sifra_Nar    smallint,
  35991. Broj_Nar    int,
  35992. Lokacii_Nar    varchar(100),
  35993. Sifra_Dok_Acc    smallint,
  35994. Sifra_Oe_acc    smallint)
  35995. INSERT INTO #TmpDok (DokrId, Sifra_oe, Sifra_dok, Broj_Dok, Datum_Dok, Sifra_Kup, Sifra_Obj, Sifra_Pat, Toc200,
  35996.        Kasa, Rok, Spec_Forma_Pec, Kto, Danok1, Danok2, KojaSmetka, ImeKup, Sifra_Grad, ImeObj, Sifra_OENar,Sifra_Nar,Broj_Nar)
  35997. SELECT D.DokrId, D.Sifra_oe, D.Sifra_dok, D.Broj_Dok, D.Datum_Dok, D.SifrA_Kup, D.Sifra_Obj, D.Sifra_Pat, D.Toc200,
  35998.        D.Kasa, D.Rok, D.Spec_Forma_Pec, D.Kto, D.Danok1, D.Danok2, D.KojaSmetka, K.ImeKup, K.Sifra_Grad, KO.ImeObj, Sifra_OENar,Sifra_Nar,Broj_Nar
  35999. From Dokr D Inner Join sGrOrg sGr ON D.Sifra_oe = sGr.Sifra_oe 
  36000. Left Outer Join Komint K on D.Sifra_Kup = K.Sifra_Kup
  36001. Left Outer JOin KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup And D.Sifra_Obj=KO.Sifra_Obj
  36002. WHERE sGr.Sif_GrOrg = @Sifra_GrOrg
  36003.       And (D.Sifra_Dok = @Sifra_dok Or D.Sifra_Dok = @Sifra_Dok2 or D.Sifra_Dok = @Sifra_Dok3 or D.Sifra_Dok = @Sifra_Dok4)
  36004.       And D.Datum_dok >= @Datum_Od
  36005.       And D.Datum_Dok <= @Datum_Do
  36006.       And D.Sifra_Prev = @Sifra_Prev
  36007.       And D.DokrID NOT IN (SELECT DokrID FROM DokrZbSta)
  36008. Order by K.ImeKup, D.Sifra_Obj, D.Sifra_Dok, D.Rok, D.Sifra_Pat, D.Kasa, D.Spec_Forma_Pec
  36009. -- Mnogu e vazno PODREDUVANJEVO -- ni slucajno da ne se izbrise ili da se menuva
  36010. -- (D.K. Aug 2, 2006)
  36011. UPDATE #TmpDok SET Sifra_Grad = O.Sifra_Grad FROM KObjekti O WHERE #TmpDok.Sifra_Kup = O.Sifra_Kup AND #TmpDok.Sifra_Obj = O.Sifra_Obj
  36012. AND #TmpDok.Sifra_Obj IS NOT NULL AND O.Sifra_Grad IS NOT NULL
  36013. UPDATE #TmpDok SET ImeGrad = G.ImeGrad FROM Grad G WHERE #TmpDok.Sifra_Grad = G.Sifra_Grad
  36014. Declare @SifNar smallint
  36015. Declare @SifOENar smallint
  36016. Declare @BrNar int
  36017. Declare @Lokac varchar(100)
  36018. Declare @Lok1 varchar(10)
  36019. IF @SoAnalizaNarac='D'
  36020. Begin
  36021.     CREATE TABLE #TmpLok (Lokacija varchar(10))
  36022.     Declare Tabela1 Cursor Fast_Forward For Select Sifra_OENar, Sifra_Nar, Broj_Nar From #TmpDok
  36023.     Open Tabela1
  36024.     Fetch Next From Tabela1 Into @SifOEnar, @SifNar, @BrNar
  36025.     While @@Fetch_Status = 0
  36026.     Begin            
  36027.         SET @Lokac =''
  36028.         DELETE FROM #TmpLok
  36029.         INSERT INTO #TmpLok SELECT DISTINCT K.Lokacija FROM StaNarac SN 
  36030.         INNER JOIN Katart K ON SN.Sifra_Art=K.Sifra_Art WHERE SN.Sifra_OE= @SifOeNar AND SN.Sifra_Nar=@SifNar AND SN.Broj_Nar= @BrNar
  36031.         Declare TabL Cursor Fast_Forward For Select Lokacija From #TmpLok
  36032.         Open TabL
  36033.         Fetch Next From TabL Into @Lok1
  36034.         While @@Fetch_Status = 0
  36035.         Begin            
  36036.             IF @Lokac <> '' SET @Lokac = @Lokac + ','
  36037.             SET @Lokac = @Lokac + @Lok1
  36038.             Fetch Next From TabL Into @Lok1
  36039.         End
  36040.         Close TabL
  36041.         Deallocate TabL
  36042.         UPDATE #TmpDok SET Lokacii_Nar = @Lokac WHERE Sifra_OENar=@SifOEnar AND Sifra_Nar=@SifNar AND Broj_Nar=@BrNar
  36043.         Fetch Next From Tabela1 Into @SifOEnar, @SifNar, @BrNar
  36044.     End
  36045.     Close Tabela1
  36046.     Deallocate Tabela1
  36047. End
  36048. UPDATE #TmpDok SET Sifra_OE_Acc=K.Sifra_OE_Acc, Sifra_Dok_Acc=K.Sifra_Dok_Acc FROM KonfAccr K
  36049. WHERE #TmpDok.Sifra_OE = K.Sifra_OE AND #TmpDok.Sifra_Dok = K.Sifra_Dok
  36050. Set Nocount Off
  36051. SELECT * FROM #TmpDok ORDER BY ImeGrad, ImeKup, Sifra_Obj, Sifra_OE_Acc, Sifra_Dok_Acc, Rok, Sifra_Pat, Kasa, Spec_Forma_Pec
  36052.  
  36053.  
  36054.  
  36055.  
  36056. Go
  36057. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_dok_nefaktbezprev]'))
  36058. drop procedure [dbo].[sp_daj_dok_nefaktbezprev]
  36059.  
  36060. Go
  36061.  
  36062. CREATE    PROCEDURE sp_Daj_Dok_NeFaktBezPrev
  36063.     @Sifra_GrOrg char (6),
  36064.     @Sifra_Dok  smallint,
  36065.     @Sifra_Dok2  smallint = null,
  36066.     @Sifra_Dok3  smallint = null,
  36067.     @Datum_Od Smalldatetime,
  36068.     @Datum_Do Smalldatetime,
  36069.     @SoAnalizaNarac char(1) = 'N',
  36070.     @Podr    char(1)=NULL    -- O-po org.ed.
  36071. AS
  36072. Set Nocount On
  36073. CREATE     TABLE #TmpDok
  36074. (DokrId        int, 
  36075. Sifra_oe        smallint, 
  36076. Sifra_dok    smallint, 
  36077. Broj_Dok    int, 
  36078. Datum_Dok    smalldatetime, 
  36079. Sifra_Kup    char(6), 
  36080. Sifra_Obj    smallint, 
  36081. Sifra_Pat    smallint, 
  36082. Toc200        decimal(18,4),
  36083. Kasa        decimal(6,2), 
  36084. Rok        smallint, 
  36085. Spec_Forma_Pec varchar(10), 
  36086. Kto        char(10), 
  36087. Danok1        decimal(18,4), 
  36088. Danok2        decimal(18,4), 
  36089. KojaSmetka    char(1), 
  36090. ImeKup        varchar(40), 
  36091. Sifra_Grad    smallint,
  36092. ImeGrad    varchar(40), 
  36093. ImeObj        varchar(40),
  36094. Sifra_OENar    smallint,
  36095. Sifra_Nar    smallint,
  36096. Broj_Nar    int,
  36097. Lokacii_Nar    varchar(100),
  36098. Sifra_Dok_Acc    smallint,
  36099. Sifra_Oe_acc    smallint)
  36100. INSERT INTO #TmpDok (DokrId, Sifra_oe, Sifra_dok, Broj_Dok, Datum_Dok, Sifra_Kup, Sifra_Obj, Sifra_Pat, Toc200,
  36101.        Kasa, Rok, Spec_Forma_Pec, Kto, Danok1, Danok2, KojaSmetka, ImeKup, Sifra_Grad, ImeObj, Sifra_OENar,Sifra_Nar,Broj_Nar)
  36102. SELECT D.DokrId, D.Sifra_oe, D.Sifra_dok, D.Broj_Dok, D.Datum_Dok, D.SifrA_Kup, D.Sifra_Obj, D.Sifra_Pat, D.Toc200,
  36103.        D.Kasa, D.Rok, D.Spec_Forma_Pec, D.Kto, D.Danok1, D.Danok2, D.KojaSmetka, K.ImeKup, K.Sifra_Grad, KO.ImeObj, Sifra_OENar,Sifra_Nar,Broj_Nar
  36104. From Dokr D Inner Join sGrOrg sGr ON D.Sifra_oe = sGr.Sifra_oe 
  36105. Left Outer Join Komint K on D.Sifra_Kup = K.Sifra_Kup
  36106. Left Outer JOin KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup And D.Sifra_Obj=KO.Sifra_Obj
  36107. WHERE sGr.Sif_GrOrg = @Sifra_GrOrg
  36108.       And (D.Sifra_Dok = @Sifra_dok Or D.Sifra_Dok = @Sifra_Dok2 or D.Sifra_Dok = @Sifra_Dok3)
  36109.       And D.Datum_dok >= @Datum_Od
  36110.       And D.Datum_Dok <= @Datum_Do
  36111.       And D.DokrID NOT IN (SELECT DokrID FROM DokrZbSta)
  36112. Order by K.ImeKup, D.Sifra_Dok, D.Sifra_Pat, D.Kasa, D.Spec_Forma_Pec
  36113. -- Mnogu e vazno PODREDUVANJEVO -- ni slucajno da ne se izbrise ili da se menuva
  36114. -- (D.K. Aug 2, 2006)
  36115. UPDATE #TmpDok SET Sifra_Grad = O.Sifra_Grad FROM KObjekti O WHERE #TmpDok.Sifra_Kup = O.Sifra_Kup AND #TmpDok.Sifra_Obj = O.Sifra_Obj
  36116. AND #TmpDok.Sifra_Obj IS NOT NULL AND O.Sifra_Grad IS NOT NULL
  36117. UPDATE #TmpDok SET ImeGrad = G.ImeGrad FROM Grad G WHERE #TmpDok.Sifra_Grad = G.Sifra_Grad
  36118. Declare @SifNar smallint
  36119. Declare @SifOENar smallint
  36120. Declare @BrNar int
  36121. Declare @Lokac varchar(100)
  36122. Declare @Lok1 varchar(10)
  36123. IF @SoAnalizaNarac='D'
  36124. Begin
  36125.     CREATE TABLE #TmpLok (Lokacija varchar(10))
  36126.     Declare Tabela1 Cursor Fast_Forward For Select Sifra_OENar, Sifra_Nar, Broj_Nar From #TmpDok
  36127.     Open Tabela1
  36128.     Fetch Next From Tabela1 Into @SifOEnar, @SifNar, @BrNar
  36129.     While @@Fetch_Status = 0
  36130.     Begin            
  36131.         SET @Lokac =''
  36132.         DELETE FROM #TmpLok
  36133.         INSERT INTO #TmpLok SELECT DISTINCT K.Lokacija FROM StaNarac SN 
  36134.         INNER JOIN Katart K ON SN.Sifra_Art=K.Sifra_Art WHERE SN.Sifra_OE= @SifOeNar AND SN.Sifra_Nar=@SifNar AND SN.Broj_Nar= @BrNar
  36135.         Declare TabL Cursor Fast_Forward For Select Lokacija From #TmpLok
  36136.         Open TabL
  36137.         Fetch Next From TabL Into @Lok1
  36138.         While @@Fetch_Status = 0
  36139.         Begin            
  36140.             IF @Lokac <> '' SET @Lokac = @Lokac + ','
  36141.             SET @Lokac = @Lokac + @Lok1
  36142.             Fetch Next From TabL Into @Lok1
  36143.         End
  36144.         Close TabL
  36145.         Deallocate TabL
  36146.         UPDATE #TmpDok SET Lokacii_Nar = @Lokac WHERE Sifra_OENar=@SifOEnar AND Sifra_Nar=@SifNar AND Broj_Nar=@BrNar
  36147.         Fetch Next From Tabela1 Into @SifOEnar, @SifNar, @BrNar
  36148.     End
  36149.     Close Tabela1
  36150.     Deallocate Tabela1
  36151. End
  36152. UPDATE #TmpDok SET Sifra_OE_Acc=K.Sifra_OE_Acc, Sifra_Dok_Acc=K.Sifra_Dok_Acc FROM KonfAccr K
  36153. WHERE #TmpDok.Sifra_OE = K.Sifra_OE AND #TmpDok.Sifra_Dok = K.Sifra_Dok
  36154. Set Nocount Off
  36155. IF @Podr='O'    --za sekoja oe se pravi poseben dok.
  36156.     SELECT * FROM #TmpDok ORDER BY Sifra_Oe, Kasa, Sifra_OE_Acc, Sifra_Dok_Acc, ImeKup
  36157. ELSE
  36158.     SELECT * FROM #TmpDok ORDER BY ImeKup, Sifra_OE_Acc, Sifra_Dok_Acc, Sifra_Pat, Kasa
  36159.  
  36160.  
  36161.  
  36162. Go
  36163. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_grdok]'))
  36164. drop procedure [dbo].[sp_daj_grdok]
  36165.  
  36166. Go
  36167.  
  36168.  
  36169. create PROCEDURE sp_Daj_GrDok
  36170.  
  36171.     @GrDok varchar(20),
  36172.     @ImeGrDok varchar(50) = Null OUTPUT
  36173.  
  36174. AS
  36175.  
  36176.     Select @ImeGrDok = Ime_GrDok
  36177.     From GrDok G 
  36178.     where G.Sif_GrDok = @GrDok
  36179.  
  36180.  
  36181. Go
  36182. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_imakomerc_art]'))
  36183. drop procedure [dbo].[sp_daj_imakomerc_art]
  36184.  
  36185. Go
  36186.  
  36187. create PROCEDURE sp_Daj_ImaKomerc_Art
  36188.     @Sifra_Art    varchar(20),
  36189.     @ImaKomerc    int OUTPUT
  36190. AS
  36191.     select @ImaKomerc = ImaKomerc
  36192.     from Katart 
  36193.     where Sifra_Art = @Sifra_Art
  36194.  
  36195.  
  36196.  
  36197. Go
  36198. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_kadedefpregl]'))
  36199. drop procedure [dbo].[sp_daj_kadedefpregl]
  36200.  
  36201. Go
  36202.  
  36203. create PROCEDURE sp_Daj_KadeDefPregl
  36204.  
  36205.     @Operacija    chaR(20),
  36206.     @SIfra_Oper    varchar(50) = Null,
  36207.     @KadeDefPregl    char(1) OUTPUT
  36208.  
  36209. AS
  36210.  
  36211.     Select top 1 @KadeDefPregl = KadeDefPregl
  36212.     From KonfPregled
  36213.     Where OPeracija = @Operacija
  36214.  
  36215.  
  36216.  
  36217.  
  36218. Go
  36219. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_katserklas_celabaza]'))
  36220. drop procedure [dbo].[sp_daj_katserklas_celabaza]
  36221.  
  36222. Go
  36223.  
  36224. create  PROCEDURE [dbo].[sp_Daj_KatSerKlas_CelaBaza]
  36225.  
  36226.     @Kolku         smallint
  36227.  
  36228. AS
  36229.  
  36230.     Declare @SSQL varchaR(1000)
  36231.  
  36232.     -- Pazi, se koristi vo FrmMAtic
  36233.     -- I NE SMEE DA SE MENUVA REDOSLEDOT NA KOLONITE
  36234.     set @SSQL = 'select top ' + cast(@Kolku as varchaR(10)) + '  
  36235.                 KS.KontrSer,
  36236.                 KS.KontrSerExt, 
  36237.                 KS.AltKontrSer, 
  36238.                 KS.GodProiz, 
  36239.                 KS.Opis,
  36240.                 Art.ImeArt, 
  36241.                 0, 
  36242.                 0, 
  36243.                 KS.Sifra_Art,
  36244.                 KS.SIfra_3,
  36245.                 D3.Ime_3,
  36246.                 KS.Masa_Kgr,
  36247.                 KS.Sila_KW
  36248.         from KatSerKlas KS
  36249.          inner join Katart Art
  36250.                 on Art.Sifra_Art = KS.Sifra_Art
  36251.         left outer join Drugo3 D3
  36252.                 on KS.SIfra_3 = D3.SifrA_3
  36253.         Order By KS.Sifra_Art, KS.KontrSer '
  36254.  
  36255.         exec (@SSQL)
  36256.  
  36257.  
  36258.  
  36259. Go
  36260. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_katserklas_od_bilokade]'))
  36261. drop procedure [dbo].[sp_daj_katserklas_od_bilokade]
  36262.  
  36263. Go
  36264.  
  36265. create   PROCEDURE [dbo].[sp_Daj_KatSerKlas_Od_BiloKade]
  36266.  
  36267.     @Sifra_Art    varchar(20),
  36268.     @Kolku         smallint
  36269.  
  36270. AS
  36271.  
  36272.     Declare @SSQL varchaR(1000)
  36273.  
  36274.     -- Pazi, se koristi vo FrmMAtic
  36275.     -- I NE SMEE DA SE MENUVA REDOSLEDOT NA KOLONITE
  36276.     set @SSQL = 'select top ' + cast(@Kolku as varchaR(10)) + '  
  36277.                 KS.KontrSer,
  36278.                 KS.KontrSerExt, 
  36279.                 KS.AltKontrSer, 
  36280.                 KS.GodProiz, 
  36281.                 KS.Opis,
  36282.                 Art.ImeArt, 
  36283.                 0, 
  36284.                 0, 
  36285.                 KS.Sifra_Art,
  36286.                 KS.SIfra_3,
  36287.                 D3.Ime_3,
  36288.                 KS.Masa_Kgr,
  36289.                 KS.Sila_KW
  36290.         from KatSerKlas KS
  36291.          inner join Katart Art
  36292.                 on Art.Sifra_Art = KS.Sifra_Art
  36293.         left outer join Drugo3 D3
  36294.                 on KS.SIfra_3 = D3.SifrA_3
  36295.         where KS.Sifra_art = ''' + @Sifra_art + ''' 
  36296.         Order By KS.Sifra_Art, KS.KontrSer '
  36297.  
  36298.         exec (@SSQL)
  36299.  
  36300.  
  36301.  
  36302. Go
  36303. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_katserklas_od_somag]'))
  36304. drop procedure [dbo].[sp_daj_katserklas_od_somag]
  36305.  
  36306. Go
  36307.  
  36308. CREATE      PROCEDURE [dbo].[sp_Daj_KatSerKlas_Od_SoMag]
  36309.  
  36310.     @Sifra_Oe    smallint,
  36311.     @Sifra_Oe_Dod    smallint = Null,
  36312.     @Sifra_Art    varchar(20),
  36313.     @Kolku         smallint
  36314.  
  36315. AS
  36316.  
  36317.     -- Pazi, se koristi vo FrmMAtic
  36318.     -- I NE SMEE DA SE MENUVA REDOSLEDOT NA KOLONITE
  36319.  
  36320.     Declare @SSQL varchar(2000)
  36321.  
  36322.     if @Sifra_Oe_Dod is not null
  36323.         begin
  36324.         create Table #tSost
  36325.         (    Sifra_Art     Varchar(20),
  36326.             LotBr        Varchar(50),
  36327.             Sostojba    Decimal(18,6)
  36328.          )
  36329.  
  36330.         insert into #tSost (Sifra_Art, LotBr, Sostojba)
  36331.             select  S.Sifra_Art, S.LotBr KontrSer, S.Sostojba
  36332.             from SoMag S
  36333.             where S.Sifra_oe = @Sifra_oe and S.Sifra_art = @Sifra_art 
  36334.                 ---and S.Sostojba >= 1
  36335.  
  36336.         insert into #tSost (Sifra_Art, LotBr, Sostojba)
  36337.             select  S.Sifra_Art, S.LotBr KontrSer, S.Sostojba
  36338.             from SoMag S
  36339.             where S.Sifra_oe = @Sifra_oe_Dod and S.Sifra_art = @Sifra_art 
  36340.                 ----and S.Sostojba >= 1
  36341.  
  36342.     -- Pazi, se koristi vo FrmMAtic
  36343.     -- I NE SMEE DA SE MENUVA REDOSLEDOT NA KOLONITE
  36344.             set @SSQL = '
  36345.             select top ' + cast(@Kolku as varchar(10)) + '
  36346.                 S.LotBr KontrSer, 
  36347.                 KS.KontrSerExt, 
  36348.                                 KS.AltKontrSer, 
  36349.                                 KS.GodProiz, 
  36350.                                 KS.Opis,
  36351.                 Art.ImeArt, 
  36352.                 sum(S.Sostojba), 
  36353.                 0 Sifra_Oe, 
  36354.                 S.SifrA_Art,
  36355.                 KS.SIfra_3,
  36356.                 D3.Ime_3,
  36357.                 KS.Masa_Kgr,
  36358.                 KS.Sila_KW
  36359.             from #tSost S
  36360.             left outer join KatSerKlas KS
  36361.                 on KS.Sifra_Art = S.Sifra_Art and KS.KontrSer = S.LotBr
  36362.             inner join Katart Art
  36363.                 on Art.Sifra_Art = S.Sifra_Art
  36364.             left outer join Drugo3 D3
  36365.                 on KS.SIfra_3 = D3.SifrA_3
  36366.             group by S.Sifra_Art, S.LotBr, KS.KontrSerExt, KS.AltKontrSer, 
  36367.                  KS.GodProiz, KS.Opis, Art.ImeArt, KS.Sifra_3, D3.Ime_3,
  36368.                  KS.Masa_Kgr, KS.Sila_KW
  36369.             having (sum(S.Sostojba)) >= 1
  36370.             Order By S.Sifra_Art, S.LotBr '
  36371.  
  36372.         exec (@SSQL)
  36373.         end
  36374.     else
  36375.     begin
  36376.     -- Pazi, se koristi vo FrmMAtic
  36377.     -- I NE SMEE DA SE MENUVA REDOSLEDOT NA KOLONITE
  36378.         set @SSQL = '
  36379.             select top ' + cast(@Kolku as varchar(10)) + '
  36380.                 S.LotBr KontrSer,
  36381.                 KS.KontrSerExt, 
  36382.                 KS.AltKontrSer, 
  36383.                 KS.GodProiz, 
  36384.                 KS.Opis,
  36385.                 Art.ImeArt, 
  36386.                 S.Sostojba, 
  36387.                 S.Sifra_Oe, 
  36388.                 S.Sifra_Art,
  36389.                 KS.SIfra_3,
  36390.                 D3.Ime_3,
  36391.                 KS.Masa_Kgr,
  36392.                 KS.Sila_KW
  36393.             from SoMag S
  36394.             left outer join KatSerKlas KS
  36395.                 on KS.Sifra_Art = S.Sifra_Art and KS.KontrSer = S.LotBr
  36396.             inner join Katart Art
  36397.                 on Art.Sifra_Art = S.Sifra_Art
  36398.             left outer join Drugo3 D3
  36399.                 on KS.SIfra_3 = D3.SifrA_3
  36400.             where S.Sifra_oe = ' + cast(@Sifra_oe as varchaR(5)) + ' 
  36401.                 and S.Sifra_art = ''' + @Sifra_art + ''' 
  36402.                 and S.Sostojba >= 1
  36403.             Order By S.Sifra_Art, S.LotBr '
  36404.  
  36405.         exec (@SSQL)
  36406.     end
  36407.  
  36408.  
  36409.  
  36410.  
  36411.  
  36412.  
  36413.  
  36414.  
  36415.  
  36416. Go
  36417. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_kolrabat_fra]'))
  36418. drop procedure [dbo].[sp_daj_kolrabat_fra]
  36419.  
  36420. Go
  36421. CREATE PROCEDURE sp_Daj_KolRabat_Fra
  36422.     @Kolicina    decimal(18,4),
  36423.     @Rabat    decimal(6,2) = Null Output
  36424. AS
  36425.     Select @Rabat = Rabat
  36426.     From Usl_KolRab_Fra
  36427.     Where Abs(@Kolicina) >= Od_Kolic
  36428.         And Abs(@Kolicina) < Do_Kolic
  36429.  
  36430.  
  36431. Go
  36432. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_konfigmesgod]'))
  36433. drop procedure [dbo].[sp_daj_konfigmesgod]
  36434.  
  36435. Go
  36436.  
  36437. create  PROCEDURE sp_Daj_KonfigMesGod
  36438.  
  36439.     @Mesec    smallint = Null Output,
  36440.     @Godina    smallint = Null Output
  36441. AS
  36442.  
  36443.     Select @Mesec=Mesec, @Godina=Godina 
  36444.     From Konfig
  36445.  
  36446.  
  36447.  
  36448. Go
  36449. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_konfmapswap]'))
  36450. drop procedure [dbo].[sp_daj_konfmapswap]
  36451.  
  36452. Go
  36453.  
  36454.  
  36455. CREATE  PROCEDURE sp_Daj_KonfMapSwap
  36456.     @Sifra_Oe  smallint,
  36457.     @Sifra_Dok smallint,
  36458.     @Map_Sifra_Oe  smallint = Null Output,
  36459.     @Map_Sifra_Dok smallint = Null OutPut,
  36460.     @Map_Upl_Dok smallint = Null OutPut,
  36461.     @ImaZapis char (1) = Null Output
  36462.  
  36463. AS
  36464.  
  36465.     Declare @Probe_Oe as integer
  36466.  
  36467.     Select @Probe_Oe = Sifra_Oe, 
  36468.         @Map_Sifra_Oe = Map_Sifra_Oe, @Map_Sifra_Dok = Map_Sifra_Dok,
  36469.         @Map_Upl_Dok = Map_Upl_Dok 
  36470.     From KonfMapSwap
  36471.     where SifrA_Oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok
  36472.  
  36473.     if @Probe_Oe is null
  36474.         set @ImaZapis = 'N'
  36475.     else
  36476.         set @ImaZapis = 'D'
  36477.  
  36478.  
  36479.  
  36480. Go
  36481. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_list_azdok_rabnal]'))
  36482. drop procedure [dbo].[sp_daj_list_azdok_rabnal]
  36483.  
  36484. Go
  36485.  
  36486. create PROCEDURE SP_Daj_List_AzDok_RabNal
  36487.     @RabNalId As int
  36488.  
  36489. AS
  36490.  
  36491.     select D.*
  36492.     from DokRabNal DRN
  36493.     inner Join RabNal R
  36494.         on DRN.RabNalId = R.RabNalId
  36495.     inner Join Dokr D
  36496.         on DRN.DokrId = D.DokrId
  36497.     where DRN.RabNalId = @RabNalId
  36498.         and D.Broj_Nal is not null
  36499.  
  36500.  
  36501. Go
  36502. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_matbr]'))
  36503. drop procedure [dbo].[sp_daj_matbr]
  36504.  
  36505. Go
  36506.  
  36507.  
  36508. create  PROCEDURE sp_Daj_MatBr
  36509.     @Broj_Kniska    char(14),
  36510.     @EMBG    char(13) = Null Output
  36511. AS
  36512.  
  36513.     Select @EMBG = EMBG 
  36514.     From Pacienti 
  36515.     Where Broj_Kniska = @Broj_Kniska 
  36516.     Order By EMBG
  36517.  
  36518.  
  36519.  
  36520.  
  36521.  
  36522. Go
  36523. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_max_otkuplista]'))
  36524. drop procedure [dbo].[sp_daj_max_otkuplista]
  36525.  
  36526. Go
  36527.  
  36528. CREATE  PROCEDURE sp_Daj_Max_OtkupLista 
  36529.     @Sifra_OE smallint = NULL,
  36530.     @identif_br    varchar(10) = Null Output
  36531. AS
  36532. IF @Sifra_OE IS NULL
  36533.     Select @identif_br = Max(Case when IsNumeric(Identif_Br)=1 Then Cast(Identif_Br as Int) Else 0 End) 
  36534.     From Dokr WHERE Sifra_Dok=8
  36535. ELSE
  36536.     Select @identif_br = Max(Case when IsNumeric(Identif_Br)=1 Then Cast(Identif_Br as Int) Else 0 End) 
  36537.     From Dokr WHERE Sifra_Dok=8 AND Sifra_OE=@Sifra_OE
  36538.  
  36539.  
  36540.  
  36541. Go
  36542. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_maxkontrser]'))
  36543. drop procedure [dbo].[sp_daj_maxkontrser]
  36544.  
  36545. Go
  36546.  
  36547.  
  36548. CREATE   PROCEDURE sp_Daj_MaxKontrSer
  36549.     @PocetenBroj    char(1),
  36550.     @MaxKontrSer     varchar(25) = Null Output
  36551. AS
  36552.     Select @MaxKontrSer = Max(KontrSer) From KatSerBr
  36553.     Where SubString(KontrSer,1,1) = @PocetenBroj and len(KontrSer) >= 8
  36554.  
  36555.  
  36556.  
  36557. Go
  36558. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_maxkontrser_nal]'))
  36559. drop procedure [dbo].[sp_daj_maxkontrser_nal]
  36560.  
  36561. Go
  36562.  
  36563. CREATE    PROCEDURE sp_Daj_MaxKontrSer_Nal
  36564.     @PocetenBroj    char(5),
  36565.     @MaxKontrSer     varchar(25) = Null Output
  36566. AS
  36567.     Select @MaxKontrSer = Max(KontrSer) From KatSerBr
  36568.     Where SubString(KontrSer,1,5) = @PocetenBroj and len(KontrSer) >= 8
  36569.  
  36570.  
  36571.  
  36572. Go
  36573. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_maxkontrser_pakuv]'))
  36574. drop procedure [dbo].[sp_daj_maxkontrser_pakuv]
  36575.  
  36576. Go
  36577.  
  36578.  
  36579. CREATE   PROCEDURE sp_Daj_MaxKontrSer_Pakuv
  36580.     @PocetenBroj    char(1),
  36581.     @MaxKontrSer     varchar(25) = Null Output
  36582. AS
  36583.     Select @MaxKontrSer = Max(KontrSer_Pak) 
  36584.         From PakuvArt
  36585.     Where SubString(KontrSer_Pak, 1, 1) = @PocetenBroj and len(KontrSer_Pak) >= 8
  36586.  
  36587.  
  36588.  
  36589. Go
  36590. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_maxrnal_tip]'))
  36591. drop procedure [dbo].[sp_daj_maxrnal_tip]
  36592.  
  36593. Go
  36594.  
  36595.  
  36596.  
  36597. CREATE  PROCEDURE sp_Daj_MaxRNal_Tip
  36598.     @Sifra_oe    smallint,
  36599.     @Tip_RabNal     char (1),
  36600.         @MaxBrNal        int = null OUTPUT,
  36601.         @TrosIliProiz    char (1)
  36602. AS
  36603.     if @TrosIliProiz = 'T' 
  36604.     SELECT @MaxBrNal = Max(Broj_RabN) 
  36605.         FROM  RabNal
  36606.         WHERE Sifra_OeRab = @Sifra_oe and (Stat_RabNal is null or Stat_RabNal <> 'Z') and
  36607.         Tip_RabNal = @Tip_RabNal
  36608.     else if @Tip_RabNal = '1'
  36609.     SELECT @MaxBrNal = Max(Broj_RabN) 
  36610.         FROM  RabNal
  36611.         WHERE Sifra_OePrim = @Sifra_oe and (Stat_RabNal is null or Stat_RabNal <> 'Z') and
  36612.         Tip_RabNal = @Tip_RabNal
  36613.     else
  36614.     SELECT @MaxBrNal = Max(Broj_RabN) 
  36615.         FROM  RabNal
  36616.         WHERE Sifra_OeRab = @Sifra_oe and (Stat_RabNal is null or Stat_RabNal <> 'Z') and
  36617.         Tip_RabNal = @Tip_RabNal
  36618.  
  36619.  
  36620.  
  36621. Go
  36622. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_nabceni_katartsoart]'))
  36623. drop procedure [dbo].[sp_daj_nabceni_katartsoart]
  36624.  
  36625. Go
  36626.  
  36627.  
  36628.  
  36629.  
  36630.  
  36631. CREATE      PROCEDURE sp_Daj_NabCeni_KatartSoart
  36632.     @Sifra_Art    varchar(20)
  36633. AS
  36634. CREATE TABLE #TmpOE 
  36635. (Sifra_OE smallint,
  36636. Sifra_Art varchar(20),
  36637. DokCena    decimal(18,6))
  36638. INSERT INTO #TmpOE (Sifra_Oe, Sifra_Art, DokCena) 
  36639. SELECT DISTINCT S.Sifra_OE, @Sifra_Art, 0 FROM SGrOrg S inner join GrOrg G on G.Sif_GrOrg=S.Sif_GrOrg and Edinstvena='D'
  36640.  
  36641. UPDATE #TmpOE SET DokCena = S.DokCena FROM Soart S WHERE #TmpOE.Sifra_Oe=S.Sifra_OE AND #TmpOE.Sifra_Art=S.Sifra_Art
  36642.  
  36643.    select S.sifra_Oe, O.ImeOrg, S.Sifra_art, K.ImeArt, K.Nabavna, S.Dokcena
  36644.    from #TmpOE S
  36645.    inner join Orged O on O.Sifra_oe=S.Sifra_oe
  36646.    inner join Katart K on K.Sifra_art=@Sifra_Art
  36647.  
  36648.  
  36649.  
  36650.  
  36651.  
  36652.  
  36653. Go
  36654. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_naracki_prateni]'))
  36655. drop procedure [dbo].[sp_daj_naracki_prateni]
  36656.  
  36657. Go
  36658. CREATE PROCEDURE sp_Daj_Naracki_Prateni 
  36659.     @Sifra_Pat    int
  36660. AS
  36661.     Select N.Sifra_Oe Sifra_OeNar, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, 
  36662.         D.Sifra_Kup, (Case When D.Sifra_Obj > 0 Then KO.ImeObj Else Kup.ImeKup End) ImeKup,
  36663.         D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Toc200
  36664.     From Naracki N
  36665.     Left Outer Join Dokr D On D.Sifra_OeNar=N.Sifra_Oe And D.Sifra_Nar=N.Sifra_Nar And D.Broj_Nar=N.Broj_Nar
  36666.     Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  36667.     Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  36668.     Where N.Sifra_Pat = @Sifra_Pat And N.Datum_Nar >= DateAdd(day, -5, GetDate())
  36669.     Order By N.Datum_Nar Desc, N.Sifra_Nar, N.Broj_Nar
  36670.  
  36671.  
  36672. Go
  36673. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_neblok_dok]'))
  36674. drop procedure [dbo].[sp_daj_neblok_dok]
  36675.  
  36676. Go
  36677. CREATE    PROCEDURE sp_Daj_Neblok_Dok
  36678.     @Sifra_OE Smallint = null,
  36679.     @Datum_Od Smalldatetime = null,
  36680.     @Datum_Do Smalldatetime = null,
  36681.     @Sifra_Dok  smallint = null,
  36682.     @Sifra_Nal  smallint = null,
  36683.     @BrDokOd int = null,
  36684.     @BrDokDo int = null
  36685. AS
  36686.     Declare @SSQL Varchar(4000)
  36687.     Set @SSQL = 'SELECT D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna,D.Datum_Dok, 
  36688.         T.Sifra_Dok_Raskn, T.Sifra_Dok_RasknNeg
  36689.         FROM DOKR D INNER JOIN TipDok T ON D.Sifra_Dok=T.Sifra_Dok
  36690.         WHERE (D.Blokiran <> ''D'' Or D.Blokiran IS NULL) '
  36691.     IF @Sifra_OE IS NOT NULL 
  36692.         Set @SSQL =  @SSQL + ' AND D.SIFRA_OE = ' + Cast (@Sifra_OE as varchar(5)) + ' '
  36693.     If @Sifra_Nal  IS NOT NULL
  36694.         Set @SSQL =  @SSQL + ' AND T.Sifra_Nal = ' + Cast(@Sifra_Nal as varchar(10)) + ' '
  36695.     If @Sifra_Dok  IS NOT NULL
  36696.         Set @SSQL =  @SSQL + ' AND D.SIFRA_DOK = ' + cast(@Sifra_Dok as varchar(5)) + ' '
  36697.     If @BrDokOd  IS NOT NULL
  36698.         Set @SSQL =  @SSQL + ' AND D.BROJ_DOK >= ' + Cast(@BrDokOd as varchar(10)) + ' '
  36699.     If @BrDokDo  IS NOT NULL
  36700.         Set @SSQL =  @SSQL + ' AND D.BROJ_DOK <= ' + Cast(@BrDokDo as varchar(10)) + ' '
  36701.     If @Datum_Od Is NOT Null
  36702.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  36703.     If @Datum_Do Is NOT Null
  36704.         SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  36705.     SET @SSQL = @SSQL + 'AND D.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg IN
  36706.         (SELECT Sif_GrOrg FROM GrOrg WHERE GotovPro=''D'')) AND D.Sifra_Dok IN 
  36707.         (SELECT Sifra_Dok FROM TipDok WHERE MozeRasknKaf=''D'') ' 
  36708.     SET @SSQL = @SSQL + ' ORDER BY D.DokrID '   
  36709.     EXEC(@SSQL)
  36710.  
  36711.  
  36712. Go
  36713. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_nepl_kons]'))
  36714. drop procedure [dbo].[sp_daj_nepl_kons]
  36715.  
  36716. Go
  36717.  
  36718. CREATE PROCEDURE sp_Daj_Nepl_Kons
  36719.     @Sifra_oe  smallint,
  36720.     @Sifra_Dok  smallint,
  36721.     @Datum_Do Smalldatetime,
  36722.     @Spck_Stat char(1)
  36723.  
  36724. AS
  36725.  
  36726.     select D.*, K.ImeKup, K.SMesto ImeGrad
  36727.     from Dokr D 
  36728.         left outer join Komint K on D.Sifra_Kup = K.Sifra_Kup
  36729.     where sifra_oe = @Sifra_Oe and Sifra_Dok = @SifrA_Dok and
  36730.         Datum_dok <= @Datum_Do and Spck_Stat = @Spck_Stat
  36731.  
  36732.  
  36733.  
  36734. Go
  36735. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_odjaveni_dok]'))
  36736. drop procedure [dbo].[sp_daj_odjaveni_dok]
  36737.  
  36738. Go
  36739.  
  36740. CREATE  PROCEDURE sp_Daj_Odjaveni_Dok
  36741.     @Sifra_oe  smallint,
  36742.     @Sifra_Dok  smallint,
  36743.     @Sifra_Dok2  smallint = null,
  36744.     @Sifra_Dok3  smallint = null,
  36745.     @Datum_Do Smalldatetime,
  36746.     @Podr    char(1)=NULL    -- O-po org.ed.
  36747.  
  36748. AS
  36749.  
  36750. create   TABLE #TmpDok
  36751. (
  36752.   DokrId    int, 
  36753.   Sifra_oe    smallint, 
  36754.   Sifra_dok    smallint, 
  36755.   Broj_Dok    int, 
  36756.   Datum_Dok    smalldatetime, 
  36757.   Sifra_Kup    char(6), 
  36758.   Sifra_Obj    smallint, 
  36759.   Sifra_Pat    smallint, 
  36760.   Toc200    decimal(18,4),
  36761.   Kasa        decimal(6,2), 
  36762.   Rok        smallint, 
  36763.   Spec_Forma_Pec varchar(10), 
  36764.   Kto        char(10), 
  36765.   Danok1    decimal(18,4), 
  36766.   Danok2    decimal(18,4), 
  36767.   KojaSmetka    char(1), 
  36768.   ImeKup    varchar(40), 
  36769.   Sifra_Grad    smallint,
  36770.   ImeGrad    varchar(40), 
  36771.   ImeObj    varchar(40),
  36772.   Sifra_OENar    smallint,
  36773.   Sifra_Nar    smallint,
  36774.   Broj_Nar    int,
  36775.   Lokacii_Nar    varchar(100),
  36776.   Sifra_Dok_Acc    smallint,
  36777.   Sifra_Oe_acc    smallint,
  36778.   Sifra_Kor    varchar(20),
  36779.   ImeKor    varchar(40)
  36780. )
  36781.  
  36782. INSERT INTO #TmpDok (DokrId, Sifra_oe, Sifra_dok, Broj_Dok, Datum_Dok, Sifra_Kup, Sifra_Obj, Sifra_Pat, Toc200,
  36783.                     Kasa, Rok, Spec_Forma_Pec, Kto, Danok1, Danok2, KojaSmetka, ImeKup, Sifra_Grad, ImeObj, 
  36784.              Sifra_OENar, Sifra_Nar, Broj_Nar, ImeGrad, Sifra_Kor, ImeKor)
  36785. SELECT D.DokrId, D.Sifra_oe, D.Sifra_dok, D.Broj_Dok, D.Datum_Dok, D.SifrA_Kup, D.Sifra_Obj, D.Sifra_Pat, D.Toc200,
  36786.        D.Kasa, D.Rok, D.Spec_Forma_Pec, D.Kto, D.Danok1, D.Danok2, D.KojaSmetka, K.ImeKup, K.Sifra_Grad, KO.ImeObj,
  36787.        Sifra_OENar, Sifra_Nar, Broj_Nar, K.Smesto, D.Sifra_Kor, KK.ImeKor
  36788. From Dokr D
  36789. left Outer Join Komint K 
  36790.     on D.Sifra_Kup = K.Sifra_Kup
  36791. Left Outer JOin KObjekti KO 
  36792.     on D.Sifra_Kup = KO.Sifra_Kup And D.Sifra_Obj = KO.Sifra_Obj
  36793. left Outer Join KartKor KK 
  36794.     on D.Sifra_Kor = KK.Sifra_Kor
  36795. WHERE D.SIfra_Oe = @Sifra_Oe
  36796.       And (D.Sifra_Dok = @Sifra_dok Or D.Sifra_Dok = @Sifra_Dok2 or D.Sifra_Dok = @Sifra_Dok3)
  36797.       And D.Datum_Dok <= @Datum_Do
  36798.       And (D.Spck_Stat is null or D.Spck_Stat = 'N')
  36799. Order by K.ImeKup, D.Sifra_Dok, D.Sifra_Pat, D.Kasa, D.Spec_Forma_Pec
  36800.  
  36801. -- Mnogu e vazno PODREDUVANJEVO -- ni slucajno da ne se izbrise ili da se menuva
  36802. -- (D.K. Aug 2, 2006)
  36803.  
  36804. --UPDATE #TmpDok 
  36805. --SET Sifra_Grad = O.Sifra_Grad 
  36806. --FROM KObjekti O 
  36807. --WHERE #TmpDok.Sifra_Kup = O.Sifra_Kup AND #TmpDok.Sifra_Obj = O.Sifra_Obj
  36808. --    AND #TmpDok.Sifra_Obj IS NOT NULL AND O.Sifra_Grad IS NOT NULL
  36809.  
  36810. --UPDATE #TmpDok 
  36811. --SET ImeGrad = G.ImeGrad 
  36812. --FROM Grad G 
  36813. --WHERE #TmpDok.Sifra_Grad = G.Sifra_Grad
  36814.  
  36815. IF @Podr = 'O'    --za sekoja oe se pravi poseben dok.
  36816.     SELECT * 
  36817.     FROM #TmpDok 
  36818.     ORDER BY Sifra_Oe, Kasa, Sifra_OE_Acc, Sifra_Dok_Acc, ImeKup
  36819. ELSE
  36820.     SELECT * 
  36821.     FROM #TmpDok 
  36822.     ORDER BY ImeKup, Sifra_OE_Acc, Sifra_Dok_Acc, Sifra_Pat, Kasa
  36823.  
  36824.  
  36825.  
  36826. Go
  36827. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_odjaveni_nestornirani_dok]'))
  36828. drop procedure [dbo].[sp_daj_odjaveni_nestornirani_dok]
  36829.  
  36830. Go
  36831.  
  36832. CREATE PROCEDURE [dbo].[sp_Daj_Odjaveni_Nestornirani_Dok]
  36833.     @Sifra_oe  smallint,
  36834.     @Sifra_Dok  smallint,
  36835.     @Sifra_Dok2  smallint = null,
  36836.     @Sifra_Dok3  smallint = null,
  36837.     @Datum_Od Smalldatetime,
  36838.     @Datum_Do Smalldatetime
  36839.  
  36840. AS
  36841.  
  36842. create   TABLE #TmpDok
  36843. (
  36844.   DokrId    int, 
  36845.   Sifra_oe    smallint, 
  36846.   Sifra_dok    smallint, 
  36847.   Broj_Dok    int, 
  36848.   Datum_Dok    smalldatetime, 
  36849.   Sifra_Kup    char(6), 
  36850.   Sifra_Obj    smallint, 
  36851.   Sifra_Pat    smallint, 
  36852.   Toc200    decimal(18,4),
  36853.   Kasa        decimal(6,2), 
  36854.   Rok        smallint, 
  36855.   Spec_Forma_Pec varchar(10), 
  36856.   Kto        char(10), 
  36857.   Danok1    decimal(18,4), 
  36858.   Danok2    decimal(18,4), 
  36859.   KojaSmetka    char(1), 
  36860.   ImeKup    varchar(40), 
  36861.   Sifra_Grad    smallint,
  36862.   ImeGrad    varchar(40), 
  36863.   ImeObj    varchar(40),
  36864.   Sifra_OENar    smallint,
  36865.   Sifra_Nar    smallint,
  36866.   Broj_Nar    int,
  36867.   Lokacii_Nar    varchar(100),
  36868.   Sifra_Dok_Acc    smallint,
  36869.   Sifra_Oe_acc    smallint,
  36870.   Sifra_Kor    varchar(20),
  36871.   ImeKor    varchar(40),
  36872.   Spck_Stat    char(1)
  36873. )
  36874.  
  36875. INSERT INTO #TmpDok (DokrId, Sifra_oe, Sifra_dok, Broj_Dok, Datum_Dok, Sifra_Kup, Sifra_Obj, Sifra_Pat, Toc200,
  36876.                     Kasa, Rok, Spec_Forma_Pec, Kto, Danok1, Danok2, KojaSmetka, ImeKup, Sifra_Grad, ImeObj, 
  36877.                  Sifra_OENar, Sifra_Nar, Broj_Nar, ImeGrad, Sifra_Kor, ImeKor, Spck_Stat)
  36878. SELECT D.DokrId, D.Sifra_oe, D.Sifra_dok, D.Broj_Dok, D.Datum_Dok, D.SifrA_Kup, D.Sifra_Obj, D.Sifra_Pat, D.Toc200,
  36879.        D.Kasa, D.Rok, D.Spec_Forma_Pec, D.Kto, D.Danok1, D.Danok2, D.KojaSmetka, K.ImeKup, K.Sifra_Grad, KO.ImeObj,
  36880.        Sifra_OENar, Sifra_Nar, Broj_Nar, K.Smesto, D.Sifra_Kor, KK.ImeKor, D.Spck_Stat
  36881. From Dokr D
  36882. left Outer Join Komint K 
  36883.     on D.Sifra_Kup = K.Sifra_Kup
  36884. Left Outer JOin KObjekti KO 
  36885.     on D.Sifra_Kup = KO.Sifra_Kup And D.Sifra_Obj = KO.Sifra_Obj
  36886. left Outer Join KartKor KK 
  36887.     on D.Sifra_Kor = KK.Sifra_Kor
  36888. WHERE D.SIfra_Oe = @Sifra_Oe
  36889.       And (D.Sifra_Dok = @Sifra_dok Or D.Sifra_Dok = @Sifra_Dok2 or D.Sifra_Dok = @Sifra_Dok3)
  36890.       And D.Datum_Dok >= @Datum_Od And D.Datum_Dok <= @Datum_Do
  36891.       And (D.Spck_Stat is null or D.Spck_Stat <> 'S') 
  36892.       And D.DokrId not in (select Dokr_Id_Orig from DokrStorno)
  36893. Order by D.Sifra_Dok DESC, D.Broj_Dok DESC
  36894.  
  36895. -- Mnogu e vazno PODREDUVANJEVO -- ni slucajno da ne se izbrise ili da se menuva
  36896. -- (D.K. Aug 2, 2006)
  36897.  
  36898. --UPDATE #TmpDok 
  36899. --SET Sifra_Grad = O.Sifra_Grad 
  36900. --FROM KObjekti O 
  36901. --WHERE #TmpDok.Sifra_Kup = O.Sifra_Kup AND #TmpDok.Sifra_Obj = O.Sifra_Obj
  36902. --    AND #TmpDok.Sifra_Obj IS NOT NULL AND O.Sifra_Grad IS NOT NULL
  36903.  
  36904. --UPDATE #TmpDok 
  36905. --SET ImeGrad = G.ImeGrad 
  36906. --FROM Grad G 
  36907. --WHERE #TmpDok.Sifra_Grad = G.Sifra_Grad
  36908.  
  36909. SELECT * 
  36910. FROM #TmpDok 
  36911. ORDER BY ImeKup, Sifra_OE_Acc, Sifra_Dok_Acc, Sifra_Pat, Kasa
  36912.  
  36913.  
  36914.  
  36915.  
  36916.  
  36917. Go
  36918. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_oedok_accr]'))
  36919. drop procedure [dbo].[sp_daj_oedok_accr]
  36920.  
  36921. Go
  36922.  
  36923. CREATE  PROCEDURE sp_Daj_OeDok_Accr
  36924.     @Sifra_Oe        smallint,
  36925.     @Sifra_Dok        smallint,
  36926.     @Sifra_Oe_Acc    smallint = Null Output,
  36927.     @Sifra_Dok_Acc    smallint = Null Output
  36928. AS
  36929.     Select @Sifra_Oe_Acc=Sifra_Oe_Acc, @Sifra_Dok_Acc=Sifra_Dok_Acc
  36930.     From KonfAccr
  36931.     Where Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok
  36932.  
  36933.  
  36934.  
  36935. Go
  36936. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_potvrda_art_ser]'))
  36937. drop procedure [dbo].[sp_daj_potvrda_art_ser]
  36938.  
  36939. Go
  36940.  
  36941. CREATE PROCEDURE [dbo].[sp_Daj_Potvrda_Art_Ser]
  36942.     @Sifra_Art    varchar(20),
  36943.     @KontrSer    varchar(30),
  36944.     @PotvrdaBr    varchar(20) = null OUTPUT,
  36945.     @GarancBr    varchar(30) = null OUTPUT
  36946.  
  36947. AS
  36948.  
  36949.     select @PotvrdaBr = PotvrdaBr, @GarancBr = GarancBr
  36950.     from KatSerKlas
  36951.     where Sifra_Art = @Sifra_Art and KontrSer = @KontrSer
  36952.  
  36953.  
  36954.  
  36955.  
  36956.  
  36957.  
  36958. Go
  36959. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_preskoknati_broj_dok]'))
  36960. drop procedure [dbo].[sp_daj_preskoknati_broj_dok]
  36961.  
  36962. Go
  36963.  
  36964. CREATE     PROCEDURE sp_Daj_Preskoknati_Broj_Dok
  36965.     @Sifra_Oe as smallint,
  36966.         @Datum_Od as smalldatetime,
  36967.         @Datum_Do as smalldatetime
  36968.  AS
  36969.     Create Table #TmpDok
  36970.     (
  36971.      Sifra_Oe    smallint,
  36972.      Sifra_Dok    Smallint,
  36973.      Broj_Dok_Od    Int,
  36974.      Broj_Dok_Do    Int,
  36975.          Opis         varchar (100)
  36976.     )
  36977.     Declare @BrDok as int
  36978.     Declare @BrDokPred as int
  36979.         Declare @BrDokPosl as int
  36980.     Declare @Broj as int
  36981.     Declare @Sifra_Dok as smallint
  36982.     Declare @Sifra_Dok_Pred as smallint
  36983.     Set @BrDokPred = 1
  36984.         Set @BrDokPosl = 0
  36985.     Declare Dokum Cursor Fast_Forward For 
  36986.         Select distinct D.Sifra_Dok, D.Broj_Dok 
  36987.                 From Dokr D
  36988.                 Inner Join Stavr S
  36989.                 On D.DokrId = S.DokrId
  36990.                 Where D.Sifra_Oe = @Sifra_Oe and D.Datum_dok >= @Datum_Od and D.Datum_Dok <= @Datum_Do
  36991.                 Order By D.Sifra_Dok, D.Broj_Dok
  36992.     Open Dokum
  36993.     Fetch Next From Dokum Into @Sifra_Dok, @BrDok
  36994.     While @@Fetch_Status = 0
  36995.     Begin
  36996.         If @Sifra_Dok_Pred <> @Sifra_Dok
  36997.             Set @BrDokPred = 1
  36998.         If @BrDok <> @BrDokPred + 1 And @Sifra_Dok_Pred = @Sifra_Dok
  36999.             Insert Into #TmpDok Values (@Sifra_Oe, @Sifra_Dok, @BrDokPred + 1, @BrDok - 1, '')
  37000.         Else If @Sifra_Dok_Pred <> @Sifra_Dok Or @Sifra_Dok_Pred Is Null
  37001.         begin
  37002.             if @Sifra_Dok_Pred is not null
  37003.                 Insert Into #TmpDok Values (@Sifra_Oe, @Sifra_Dok_Pred, 0, 0, 'Last.No. ' + cast(@BrDokPosl as varchar(10)))
  37004.             Insert Into #TmpDok Values (@Sifra_Oe, @Sifra_Dok, 0, 0, 'Init.No. ' + cast(@BrDok as varchar(10)))
  37005.         end
  37006.         -- Insert Into #TmpDok Values (@Sifra_Oe, @Sifra_Dok, 1, @BrDok - 1)
  37007.         Set @Sifra_Dok_Pred = @Sifra_Dok
  37008.         Set @BrDokPred = @BrDok
  37009.         Set @BrDokPosl = @BrDok
  37010.         Fetch Next From Dokum Into @Sifra_Dok, @BrDok
  37011.     End
  37012.     if @Sifra_Dok_Pred is not null
  37013.         Insert Into #TmpDok Values (@Sifra_Oe, @Sifra_Dok_Pred, 0, 0, 'Last.No. ' + cast(@BrDokPosl as varchar(10)))
  37014.     Close Dokum
  37015.     Deallocate Dokum
  37016.     Select * from #TmpDok
  37017.  
  37018.  
  37019.  
  37020. Go
  37021. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_preskoknati_recepti]'))
  37022. drop procedure [dbo].[sp_daj_preskoknati_recepti]
  37023.  
  37024. Go
  37025.  
  37026. CREATE  PROCEDURE sp_Daj_Preskoknati_Recepti
  37027.     @Broj_Recept        int=null,
  37028.     @Broj_Recept_Do        int=null, 
  37029.     @Sifra_Apteka_Od    char(2)=null,
  37030.     @Sifra_Apteka_Do    char(2)=null,
  37031.     @Datum_Recept_Od    smalldatetime = Null,
  37032.     @Datum_Recept_Do    smalldatetime = Null,
  37033.     @Datum_Izdav_Od        smalldatetime = Null,
  37034.     @Datum_Izdav_Do        smalldatetime = Null
  37035.  
  37036.  AS
  37037.     Create Table #TmpDok
  37038.     (
  37039.      Sifra_APteka    chaR(2),
  37040.      Broj_Recept_Od    Int,
  37041.      Broj_REcept_Do    Int,
  37042.          Opis         varchar (100)
  37043.     )
  37044.  
  37045.     Declare @BrDok as int
  37046.     Declare @BrDokPred as int
  37047.         Declare @BrDokPosl as int
  37048.     Declare @Broj as int
  37049.  
  37050.     Declare @Sifra_Apt as chaR(2)
  37051.     Declare @Sifra_Apt_Pred as chaR(2)
  37052.  
  37053.     Set @BrDokPred = 1
  37054.         Set @BrDokPosl = 0
  37055.  
  37056.        Declare @SSQL as Varchar(8000)
  37057.        Set @SSQL = '     Declare Dokum Cursor Fast_Forward For 
  37058.             Select Sifra_APteka, Broj_Recept
  37059.                     From REcepti R
  37060.                       Where 1=1 '
  37061.        If @Sifra_Apteka_Od Is Not Null
  37062.         Set @SSQL = @SSQL + ' And R.Sifra_Apteka >= ''' + @Sifra_Apteka_Od + ''' '
  37063.     If @Sifra_Apteka_Do Is Not Null
  37064.         Set @SSQL = @SSQL + ' And R.Sifra_Apteka <= ''' + @Sifra_Apteka_Do + ''' '
  37065.     If @Broj_Recept Is Not Null
  37066.         Set @SSQL = @SSQL + ' And R.Broj_Recept >= ' + Cast(@Broj_Recept as varchar(6)) + ' '    
  37067.     If @Broj_Recept_Do Is Not Null
  37068.         Set @SSQL = @SSQL + ' And R.Broj_Recept <= ' + Cast(@Broj_Recept_Do as varchar(6)) + ' '    
  37069.     If @Datum_Recept_Od Is Not Null
  37070.         Set @SSQL = @SSQL + ' And R.Datum_Recept >= ''' + Cast(@Datum_Recept_Od as varchar(30)) + ''' '
  37071.     If @Datum_Recept_Do Is Not Null
  37072.         Set @SSQL = @SSQL + ' And R.Datum_Recept <= ''' + Cast(@Datum_Recept_Do as varchar(30)) + ''' '
  37073.     If @Datum_Izdav_Od Is Not Null
  37074.         Set @SSQL = @SSQL + ' And R.Datum_Izdav >= ''' + Cast(@Datum_Izdav_Od as varchar(30)) + ''' '
  37075.     If @Datum_Izdav_Do Is Not Null
  37076.         Set @SSQL = @SSQL + ' And R.Datum_Izdav <= ''' + Cast(@Datum_Izdav_Do as varchar(30)) + ''' '
  37077.     Set @SSQL = @SSQL + ' Order By R.SifrA_Apteka, R.Broj_Recept '
  37078.  
  37079.     exec (@SSQL)
  37080.  
  37081.     Open Dokum
  37082.     Fetch Next From Dokum Into @Sifra_Apt, @BrDok
  37083.     While @@Fetch_Status = 0
  37084.     Begin
  37085.  
  37086.         If @Sifra_APt_Pred <> @Sifra_APt
  37087.             Set @BrDokPred = 1
  37088.  
  37089.         If @BrDok <> @BrDokPred + 1 And @Sifra_Apt_Pred = @Sifra_APt
  37090.             Insert Into #TmpDok Values (@Sifra_Apt, @BrDokPred + 1, @BrDok - 1, '')
  37091.         Else If @Sifra_APt_Pred <> @Sifra_Apt Or @Sifra_APt_Pred Is Null
  37092.         begin
  37093.             if @Sifra_Apt_Pred is not null
  37094.                 Insert Into #TmpDok Values (@Sifra_APt_Pred, 0, 0, 'Do broj ' + cast(@BrDokPosl as varchar(10)))
  37095.             Insert Into #TmpDok Values (@Sifra_APt, 0, 0, 'Od broj ' + cast(@BrDok as varchar(10)))
  37096.         end
  37097.  
  37098.         -- Insert Into #TmpDok Values (@Sifra_Oe, @Sifra_Dok, 1, @BrDok - 1)
  37099.  
  37100.         Set @Sifra_Apt_Pred = @Sifra_Apt
  37101.         Set @BrDokPred = @BrDok
  37102.         Set @BrDokPosl = @BrDok
  37103.  
  37104.         Fetch Next From Dokum Into @Sifra_Apt, @BrDok
  37105.     End
  37106.  
  37107.     if @Sifra_Apt_Pred is not null
  37108.         Insert Into #TmpDok 
  37109.         Values (@Sifra_APt_Pred, 0, 0, 'Do broj ' + cast(@BrDokPosl as varchar(10)))
  37110.  
  37111.     Close Dokum
  37112.     Deallocate Dokum
  37113.  
  37114.     Select * from #TmpDok
  37115.  
  37116.  
  37117.  
  37118. Go
  37119. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_prifateni_status]'))
  37120. drop procedure [dbo].[sp_daj_prifateni_status]
  37121.  
  37122. Go
  37123.  
  37124.  
  37125. create  PROCEDURE sp_Daj_Prifateni_Status
  37126.     @Sifra_oe  smallint,
  37127.     @Datum_Od smalldatetime,
  37128.     @Datum_Do Smalldatetime
  37129.  
  37130. AS
  37131.  
  37132.     select D.*, K.ImeKup, K.SMesto ImeGrad
  37133.     from Dokr D 
  37134.         left outer join Komint K on D.Sifra_Kup = K.Sifra_Kup
  37135.     where sifra_oe = @Sifra_Oe and Sifra_Dok not in (100, 101) and
  37136.         Datum_Dok >= @Datum_Od and Datum_dok <= @Datum_Do  
  37137.     order by Datum_Dok Desc, Sifra_Dok, Broj_Dok Desc
  37138.     -- Mnogu e vazzno podreduvanjeto, NE CCEPKAJ GO
  37139.  
  37140.  
  37141.  
  37142. Go
  37143. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_razl_accr]'))
  37144. drop procedure [dbo].[sp_daj_razl_accr]
  37145.  
  37146. Go
  37147.  
  37148. CREATE  PROCEDURE sp_Daj_Razl_Accr
  37149.     @Dok_Ili_Accr char(1)
  37150. AS
  37151.     if @Dok_Ili_Accr = 'D'
  37152.         Select Distinct Sifra_Oe, Sifra_Dok
  37153.         From KonfAccr
  37154.     else
  37155.         Select Distinct Sifra_Oe_Acc, Sifra_Dok_Acc
  37156.         From KonfAccr
  37157.  
  37158.  
  37159.  
  37160. Go
  37161. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_rbr_max_specif_recept]'))
  37162. drop procedure [dbo].[sp_daj_rbr_max_specif_recept]
  37163.  
  37164. Go
  37165.  
  37166.  
  37167.  
  37168.  
  37169. CREATE  PROCEDURE sp_Daj_Rbr_Max_Specif_Recept
  37170.     @Datum_Izdav_Od smalldatetime,
  37171.     @Datum_Izdav_Do smalldatetime,
  37172.      @SIfra_PodrSluzba char(4),
  37173.     @Posl_Specif int OUTPUT
  37174.  
  37175. AS
  37176.  
  37177.         select @Posl_Specif = max(Spc_Specif)
  37178.         From Recepti
  37179.         Where 
  37180.               -- Ova go trgnav -- Spc_Podr = @Sifra_PodrSLuzba and
  37181.               Datum_Izdav >= @Datum_Izdav_Od and Datum_Izdav <= @Datum_Izdav_Do and
  37182.                   Spc_Specif is not null and Spc_Recept is not null
  37183.  
  37184.  
  37185.  
  37186.  
  37187.  
  37188.  
  37189.  
  37190. Go
  37191. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_rbr_max_specif_recept_p]'))
  37192. drop procedure [dbo].[sp_daj_rbr_max_specif_recept_p]
  37193.  
  37194. Go
  37195.  
  37196. create PROCEDURE sp_Daj_Rbr_Max_Specif_Recept_P
  37197.     @Datum_Izdav_Od smalldatetime,
  37198.     @Datum_Izdav_Do smalldatetime,
  37199.      @SIfra_PodrSluzba char(4),
  37200.     @Posl_Specif int OUTPUT
  37201.  
  37202. AS
  37203.  
  37204.         select @Posl_Specif = max(Spc_Specif)
  37205.         From Recepti_P
  37206.         Where 
  37207.               -- Ova go trgnav -- Spc_Podr = @Sifra_PodrSLuzba and
  37208.               Datum_Izdav >= @Datum_Izdav_Od and Datum_Izdav <= @Datum_Izdav_Do and
  37209.                   Spc_Specif is not null and Spc_Recept is not null
  37210.  
  37211.  
  37212.  
  37213.  
  37214. Go
  37215. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_rbr_specif_recept]'))
  37216. drop procedure [dbo].[sp_daj_rbr_specif_recept]
  37217.  
  37218. Go
  37219.  
  37220.  
  37221.  
  37222.  
  37223. CREATE  PROCEDURE sp_Daj_Rbr_Specif_Recept
  37224.     @Datum_Izdav_Od smalldatetime,
  37225.     @Datum_Izdav_Do smalldatetime,
  37226.      @SIfra_PodrSluzba char(4),
  37227.     @BezPartic char (1) = NUll,
  37228.     @Posl_Specif_10000_Recept int OUTPUT
  37229.  
  37230. AS
  37231.  
  37232.     if @BezPartic is null
  37233.         select @Posl_Specif_10000_Recept = max(Spc_Specif * 10000 + Spc_Recept)
  37234.         From Recepti
  37235.         Where Spc_Podr = @Sifra_PodrSLuzba and (BezPartic is null or BezPartic <> 'D') and
  37236.               Datum_Izdav >= @Datum_Izdav_Od and Datum_Izdav <= @Datum_Izdav_Do and
  37237.                   Spc_Specif is not null and Spc_Recept is not null
  37238.     else
  37239.         select @Posl_Specif_10000_Recept = max(Spc_Specif * 10000 + Spc_Recept)
  37240.         From Recepti
  37241.         Where Spc_Podr = @Sifra_PodrSLuzba and BezPartic = @BezPartic and
  37242.               Datum_Izdav >= @Datum_Izdav_Od and Datum_Izdav <= @Datum_Izdav_Do and
  37243.                   Spc_Specif is not null and Spc_Recept is not null
  37244.  
  37245.  
  37246.  
  37247.  
  37248.  
  37249. Go
  37250. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_rbr_specif_recept_p]'))
  37251. drop procedure [dbo].[sp_daj_rbr_specif_recept_p]
  37252.  
  37253. Go
  37254.  
  37255. create PROCEDURE sp_Daj_Rbr_Specif_Recept_P
  37256.     @Datum_Izdav_Od smalldatetime,
  37257.     @Datum_Izdav_Do smalldatetime,
  37258.      @SIfra_PodrSluzba char(4),
  37259.     @BezPartic char (1) = NUll,
  37260.     @Posl_Specif_10000_Recept int OUTPUT
  37261.  
  37262. AS
  37263.  
  37264.     if @BezPartic is null
  37265.         select @Posl_Specif_10000_Recept = max(Spc_Specif * 10000 + Spc_Recept)
  37266.         From Recepti_P
  37267.         Where Spc_Podr = @Sifra_PodrSLuzba and (BezPartic is null or BezPartic <> 'D') and
  37268.               Datum_Izdav >= @Datum_Izdav_Od and Datum_Izdav <= @Datum_Izdav_Do and
  37269.                   Spc_Specif is not null and Spc_Recept is not null
  37270.     else
  37271.         select @Posl_Specif_10000_Recept = max(Spc_Specif * 10000 + Spc_Recept)
  37272.         From Recepti_P
  37273.         Where Spc_Podr = @Sifra_PodrSLuzba and BezPartic = @BezPartic and
  37274.               Datum_Izdav >= @Datum_Izdav_Od and Datum_Izdav <= @Datum_Izdav_Do and
  37275.                   Spc_Specif is not null and Spc_Recept is not null
  37276.  
  37277.  
  37278.  
  37279.  
  37280. Go
  37281. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_sgrdok]'))
  37282. drop procedure [dbo].[sp_daj_sgrdok]
  37283.  
  37284. Go
  37285.  
  37286. CREATE PROCEDURE sp_Daj_SGrDok
  37287.  
  37288.     @GrDok varchar(20)
  37289.  
  37290. AS
  37291.  
  37292.     Select S.*, T.ImeDok, N.ImeNar, T.NaslovDok NaslovDok, N.Naslov NaslovNar
  37293.     From SGrDok S
  37294.     left outer join TipDok T 
  37295.         on S.Sifra_Dok = T.Sifra_Dok
  37296.     left outer join TipNarac N 
  37297.         on S.Sifra_Nar = N.Sifra_Nar
  37298.     where S.Sif_GrDok = @GrDok
  37299.     Order By S.Rbr
  37300.  
  37301.  
  37302.  
  37303.  
  37304.  
  37305. Go
  37306. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_sifpodrsluzba]'))
  37307. drop procedure [dbo].[sp_daj_sifpodrsluzba]
  37308.  
  37309. Go
  37310.  
  37311. create  PROCEDURE sp_Daj_SifPodrSluzba
  37312.  
  37313.     @PocCifriKniska        char(3),
  37314.     @Sifra_PodrSluzba    char(4) = Null Output
  37315.  
  37316. AS
  37317.  
  37318.     Select @Sifra_PodrSluzba = Sifra_PodrSluzba 
  37319.     From PodracniSluzbi 
  37320.     Where PocCifriKniska = @PocCifriKniska
  37321.  
  37322.  
  37323.  
  37324. Go
  37325. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_sifri_slaganje]'))
  37326. drop procedure [dbo].[sp_daj_sifri_slaganje]
  37327.  
  37328. Go
  37329. CREATE PROCEDURE sp_Daj_Sifri_Slaganje
  37330.     @Sifra_Slag        varchar(20)
  37331. AS
  37332.     Select Sifra_Slag, Rbr_Konf 
  37333.     From KonfSlaganje
  37334.     Where Sifra_Slag=@Sifra_Slag
  37335.  
  37336.  
  37337. Go
  37338. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_site_katstatus]'))
  37339. drop procedure [dbo].[sp_daj_site_katstatus]
  37340.  
  37341. Go
  37342.  
  37343. --    Opis na Parametri
  37344. CREATE               PROCEDURE sp_Daj_Site_KatStatus
  37345.  
  37346. AS
  37347.  
  37348.     select *
  37349.     from KatStatus
  37350.     order by Sifra_KatStatus
  37351.  
  37352.  
  37353.  
  37354.  
  37355. Go
  37356. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_sleden_rasporedisp]'))
  37357. drop procedure [dbo].[sp_daj_sleden_rasporedisp]
  37358.  
  37359. Go
  37360.  
  37361. CREATE PROCEDURE sp_Daj_Sleden_RasporedIsp
  37362.     @Sifra_Oe    smallint,
  37363.     @Sifra_Nar    smallint,
  37364.     @Broj_Raspored    int Output
  37365.  AS
  37366.     Select @Broj_Raspored=Max(Broj_Raspored)
  37367.     From RasporedIspor
  37368.     Where Sifra_Oe = @Sifra_Oe and Sifra_Nar = @Sifra_Nar
  37369.  
  37370.  
  37371.  
  37372. Go
  37373. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_spored_kontrser_siteart]'))
  37374. drop procedure [dbo].[sp_daj_spored_kontrser_siteart]
  37375.  
  37376. Go
  37377.  
  37378. create PROCEDURE [dbo].[sp_Daj_Spored_KontrSer_SiteArt]
  37379.  
  37380.     @KontrSer     varchaR(30)
  37381.  
  37382. AS
  37383.  
  37384.         select top 1 KS.Sifra_Art, KS.KontrSer, 
  37385.                  KS.KontrSerExt, KS.AltKontrSer, KS.GodProiz, KS.Opis,
  37386.                  Art.ImeArt, KS.SifrA_3, D3.Ime_3,
  37387.                  KS.Masa_Kgr, KS.Sila_KW
  37388.         from KatSerKlas KS
  37389.         inner join Katart Art
  37390.             on Art.Sifra_Art = KS.Sifra_Art
  37391.         left outer join Drugo3 D3
  37392.                 on KS.SIfra_3 = D3.SifrA_3
  37393.         where KS.KontrSer = @KontrSer
  37394.  
  37395.  
  37396.  
  37397.  
  37398.  
  37399.  
  37400.  
  37401.  
  37402.  
  37403. Go
  37404. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_spored_kontrserext]'))
  37405. drop procedure [dbo].[sp_daj_spored_kontrserext]
  37406.  
  37407. Go
  37408.  
  37409.  
  37410.  
  37411. CREATE   PROCEDURE sp_Daj_Spored_KontrSerExt
  37412.  
  37413.     @Sifra_Art    varchar(20),
  37414.     @KontrSerExt     varchaR(30)
  37415.  
  37416. AS
  37417.     
  37418.         select top 1 KS.Sifra_Art, KS.KontrSer, 
  37419.                  KS.KontrSerExt, KS.AltKontrSer, KS.GodProiz, KS.Opis,
  37420.                  Art.ImeArt, KS.SifrA_3, D3.Ime_3,
  37421.                  KS.Masa_Kgr, KS.Sila_KW
  37422.         from KatSerKlas KS
  37423.         inner join Katart Art
  37424.             on Art.Sifra_Art = KS.Sifra_Art
  37425.         left outer join Drugo3 D3
  37426.                 on KS.SIfra_3 = D3.SifrA_3
  37427.         where KS.Sifra_art = @Sifra_art and KS.KontrSerExt = @KontrSerExt
  37428.  
  37429.  
  37430.  
  37431.  
  37432.  
  37433.  
  37434.  
  37435. Go
  37436. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_spored_kontrserext_siteart]'))
  37437. drop procedure [dbo].[sp_daj_spored_kontrserext_siteart]
  37438.  
  37439. Go
  37440.  
  37441. create PROCEDURE [dbo].[sp_Daj_Spored_KontrSerExt_SiteArt]
  37442.  
  37443.     @KontrSerExt     varchaR(30)
  37444.  
  37445. AS
  37446.  
  37447.         select top 1 KS.Sifra_Art, KS.KontrSer, 
  37448.                  KS.KontrSerExt, KS.AltKontrSer, KS.GodProiz, KS.Opis,
  37449.                  Art.ImeArt, KS.SifrA_3, D3.Ime_3,
  37450.                  KS.Masa_Kgr, KS.Sila_KW
  37451.         from KatSerKlas KS
  37452.         inner join Katart Art
  37453.             on Art.Sifra_Art = KS.Sifra_Art
  37454.         left outer join Drugo3 D3
  37455.                 on KS.SIfra_3 = D3.SifrA_3
  37456.         where KS.KontrSerExt = @KontrSerExt
  37457.  
  37458.  
  37459.  
  37460.  
  37461.  
  37462.  
  37463.  
  37464.  
  37465.  
  37466. Go
  37467. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_udfizv]'))
  37468. drop procedure [dbo].[sp_daj_udfizv]
  37469.  
  37470. Go
  37471.  
  37472.  
  37473. create    PROCEDURE sp_Daj_UDFIzv
  37474.     @Meni  varchar(30)
  37475. AS
  37476. SELECT * FROM UDF_Izv U
  37477. WHERE U.Meni=@Meni
  37478.  
  37479.  
  37480.  
  37481. Go
  37482. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_udfstavki]'))
  37483. drop procedure [dbo].[sp_daj_udfstavki]
  37484.  
  37485. Go
  37486.  
  37487.  
  37488. CREATE    PROCEDURE sp_Daj_UDFStavki
  37489.     @XML  varchar(30)
  37490. AS
  37491. SELECT U.*, I.Procedura, I.Naslov FROM UDF_Stavki U
  37492. inner join UDF_Izv I on I.XML=U.XML
  37493. WHERE U.XML=@XML
  37494.  
  37495.  
  37496.  
  37497. Go
  37498. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_voz_kup]'))
  37499. drop procedure [dbo].[sp_daj_voz_kup]
  37500.  
  37501. Go
  37502.  
  37503. create  PROCEDURE sp_Daj_Voz_Kup
  37504.     @Sifra_Kup    char(6)
  37505.  
  37506. AS
  37507.  
  37508.     select V.*, K.ImeArt, K.Drugo1, D1.Ime_1, K.Sifra_Drg, DR.Ime, 
  37509.     K.Drugo2, D2.Ime_2, K.Drugo3, D3.Ime_3, K.Kto, K.Drugo4, D4.Ime_4
  37510.     from Vozila V 
  37511.     inner join Katart K on V.Sifra_Art=K.Sifra_Art
  37512.     left outer join Drugo1 D1 on K.Drugo1= D1.Sifra_1
  37513.     left outer join Drugo2 D2 on K.Drugo2= D2.Sifra_2
  37514.     left outer join Drugo3 D3 on K.Drugo3= D3.Sifra_3
  37515.     left outer join Drugo4 D4 on K.Drugo4= D4.Sifra_4
  37516.     left outer join DrgPodel DR on K.Sifra_drg= DR.Sifra_Drg
  37517.     Where V.Sifra_Kup = @Sifra_Kup
  37518.  
  37519.  
  37520.  
  37521. Go
  37522. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj_vreme_server]'))
  37523. drop procedure [dbo].[sp_daj_vreme_server]
  37524.  
  37525. Go
  37526.  
  37527.  
  37528. CREATE PROCEDURE sp_Daj_Vreme_Server
  37529.     @Datum_Server SmallDateTime OUTPUT
  37530. AS
  37531.     Select @Datum_Server = GetDate()
  37532.  
  37533.  
  37534.  
  37535. Go
  37536. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_daj3rabatiodcenpopodgr]'))
  37537. drop procedure [dbo].[sp_daj3rabatiodcenpopodgr]
  37538.  
  37539. Go
  37540. CREATE PROCEDURE sp_Daj3RabatiOdCenPoPodgr
  37541.     @Sifra_Art    varchar(20),
  37542.     @Sifra_Kup    char(6),
  37543.     @PodelArt    char(1),
  37544.     @ParamN1    decimal(18,6) OUTPUT,
  37545.     @ParamN2    decimal(18,6) OUTPUT,
  37546.     @ParamN3    decimal(18,6) OUTPUT,
  37547.     @Uces        decimal(6,2) OUTPUT,
  37548.     @Uces2        decimal(6,2) OUTPUT,
  37549.     @Uces3        decimal(6,2) OUTPUT,
  37550.     @Sifra_PodelArt    varchar(20) OUTPUT
  37551. AS
  37552. Declare @TipKup varchar(11)
  37553. If @PodelArt ='P'
  37554.     SELECT @Sifra_PodelArt = Sifra_Podg FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37555. ELSE If @PodelArt ='1'
  37556.     SELECT @Sifra_PodelArt = Drugo1 FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37557. ELSE If @PodelArt ='2'
  37558.     SELECT @Sifra_PodelArt = Drugo2 FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37559. ELSE If @PodelArt ='3'
  37560.     SELECT @Sifra_PodelArt = Drugo3 FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37561. ELSE If @PodelArt ='4'
  37562.     SELECT @Sifra_PodelArt = Drugo4 FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37563. ELSE If @PodelArt ='5'
  37564.     SELECT @Sifra_PodelArt = Drugo5 FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37565. ELSE If @PodelArt ='6'
  37566.     SELECT @Sifra_PodelArt = Drugo6 FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37567. ELSE If @PodelArt ='7'
  37568.     SELECT @Sifra_PodelArt = Drugo7 FROM KatArt WHERE Sifra_Art=@Sifra_Art
  37569. SELECT @TipKup = TipKup FROM Komint WHERE Sifra_Kup=@Sifra_Kup
  37570. SELECT @Uces = Uces, @Uces2 = Uces2, @Uces3 = Uces3,@ParamN1=ParamN1,@ParamN2=ParamN2,@ParamN3=ParamN3
  37571. FROM  CenPoPodgr WHERE TipKup = @TipKup AND Sifra_Podelba = @Sifra_PodelArt
  37572.  
  37573.  
  37574.  
  37575. Go
  37576. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajakciipromo]'))
  37577. drop procedure [dbo].[sp_dajakciipromo]
  37578.  
  37579. Go
  37580.  
  37581.  
  37582.  
  37583. CREATE    PROCEDURE sp_DajAkciiPromo
  37584.     @Sifra_Pat smallint = NULL
  37585. AS
  37586. IF @Sifra_Pat IS NULL
  37587.     SELECT SA.*, A.Datum_Poc, A.Datum_Kr, A.Sifra_Podelba FROM AkciiPromoSta SA 
  37588.     INNER JOIN AkciiPromo A ON SA.Ozn_Akcija=A.Ozn_Akcija
  37589.     WHERE A.Aktivna='D' AND A.Datum_Poc<=dbo.fn_VratiDatum(GetDate()) AND (A.Datum_Kr IS NULL OR A.Datum_Kr>=dbo.fn_VratiDatum(GetDate()))
  37590. ELSE
  37591. Begin
  37592.     CREATE TABLE #TmpGrPat (Sif_GrPat char(6))
  37593.     INSERT INTO #TmpGrPat SELECT Distinct Sif_GrPat FROM SGrPat WHERE Sifra_Pat=@Sifra_Pat
  37594.  
  37595.     SELECT SA.*, A.Datum_Poc, A.Datum_Kr, A.Sifra_Podelba FROM AkciiPromoSta SA 
  37596.     INNER JOIN AkciiPromo A ON SA.Ozn_Akcija=A.Ozn_Akcija
  37597.     WHERE A.Aktivna='D' AND A.Datum_Poc<=dbo.fn_VratiDatum(GetDate()) AND (A.Datum_Kr IS NULL OR A.Datum_Kr>=dbo.fn_VratiDatum(GetDate()))
  37598.     AND A.Sif_GrPat IN (SELECT Sif_GrPat FROM #TmpGrPat)
  37599. End
  37600.  
  37601.  
  37602.  
  37603. Go
  37604. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajakcrabatzapodelkup]'))
  37605. drop procedure [dbo].[sp_dajakcrabatzapodelkup]
  37606.  
  37607. Go
  37608.  
  37609.  
  37610. CREATE      PROCEDURE sp_DajAkcRabatZaPodelKup 
  37611.     @Sifra_Art        varchar(20),
  37612.     @Sifra_Podelba    varchar(20) = NULL,
  37613.     @Sifra_Kup        char(6),
  37614.     @Datum            smalldatetime
  37615. AS
  37616. Declare @Najde as char(1), @SpePopust as decimal(6,2)
  37617. SET @Najde = 'N'
  37618. IF @Sifra_Kup IS NOT NULL
  37619. Begin
  37620.     SELECT @SpePopust=SpePopust    From Cenovnik
  37621.     Where Sifra_Kup = @Sifra_Kup and Sifra_art = @Sifra_Art AND PocDatum<=@Datum AND (KrajDatum IS NULL OR KrajDatum>=@Datum) 
  37622.     IF @@ROWCOUNT>=1 AND @SpePopust>0
  37623.     Begin
  37624.         SET @Najde = 'D'
  37625.         SELECT '' AS Ozn_Akcija, Sifra_Art AS Sifra_Art_Osnoven, '' AS Sifra_Art_Paket, 0 AS Kolicina,
  37626.                 SpeCena AS Cena, SpePopust AS Rabat From Cenovnik
  37627.         Where Sifra_Kup = @Sifra_Kup and Sifra_art = @Sifra_Art AND PocDatum<=@Datum AND (KrajDatum IS NULL OR KrajDatum>=@Datum) 
  37628.     End
  37629. End
  37630.  
  37631. IF @Najde = 'N'
  37632. Begin
  37633.     IF @Sifra_Podelba IS NULL
  37634.         SELECT SA.* FROM AkciiPromoSta SA 
  37635.         INNER JOIN AkciiPromo A ON SA.Ozn_Akcija=A.Ozn_Akcija
  37636.         WHERE A.Aktivna='D' AND A.Datum_Poc<=@Datum AND (A.Datum_Kr IS NULL OR A.Datum_Kr>=@Datum) AND SA.Sifra_Art_Osnoven=@Sifra_Art AND A.Sifra_Podelba IS NULL
  37637.     ELSE
  37638.     Begin
  37639.         SELECT SA.* FROM AkciiPromoSta SA 
  37640.         INNER JOIN AkciiPromo A ON SA.Ozn_Akcija=A.Ozn_Akcija
  37641.         WHERE A.Aktivna='D' AND A.Datum_Poc<=@Datum AND (A.Datum_Kr IS NULL OR A.Datum_Kr>=@Datum) 
  37642.         AND SA.Sifra_Art_Osnoven=@Sifra_Art AND A.Sifra_Podelba = @Sifra_Podelba
  37643.     
  37644.         IF @@ROWCOUNT<1
  37645.         SELECT SA.* FROM AkciiPromoSta SA 
  37646.         INNER JOIN AkciiPromo A ON SA.Ozn_Akcija=A.Ozn_Akcija
  37647.         WHERE A.Aktivna='D' AND A.Datum_Poc<=@Datum AND (A.Datum_Kr IS NULL OR A.Datum_Kr>=@Datum) AND SA.Sifra_Art_Osnoven=@Sifra_Art AND A.Sifra_Podelba IS NULL
  37648.     End
  37649. End
  37650.  
  37651.  
  37652.  
  37653.  
  37654. Go
  37655. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajarticeni]'))
  37656. drop procedure [dbo].[sp_dajarticeni]
  37657.  
  37658. Go
  37659.  
  37660. CREATE           PROCEDURE sp_DajArtICeni
  37661.        @Sifra_OECeni    smallint = NULL,
  37662.     @Sif_GrOrgCeni    char(6)= NULL,
  37663.        @Kto             char(6) = Null,
  37664.        @Sifra_Gr         char(3) = Null,
  37665.        @Sifra_Podg     char(6) = Null,
  37666.     @Sifra_OEDok    smallint = NULL,
  37667.     @Sifra_Dok        smallint = NULL,
  37668.     @Broj_Dok        int = NULL
  37669. AS
  37670.     Declare @OE_ZaCeni smallint
  37671.     IF @Sifra_OECeni IS NOT NULL
  37672.         SET @OE_ZaCeni = @Sifra_OECeni
  37673.     ELSE
  37674.     Begin
  37675.         SELECT TOP 1 @OE_ZaCeni = Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrgCeni ORDER BY Sifra_OE
  37676.     End
  37677.  
  37678.     Declare @SSQL varchar(8000)
  37679.     Set @SSQL='SELECT K.Sifra_Art, K.ImeArt, K.Edmera, '
  37680.     IF @Sifra_OEDok IS NOT NULL AND @Sifra_DOk IS NOT NULL AND @Broj_Dok IS NOT NULL
  37681.         Set @SSQL=@SSQL+'ST.MagCena Cena, ST.DanMagCena DanCena '
  37682.     ELSE
  37683.         Set @SSQL=@SSQL+'S.Cena, S.DanCena '
  37684.     IF @Sifra_OEDok IS NOT NULL AND @Sifra_DOk IS NOT NULL AND @Broj_Dok IS NOT NULL
  37685.         Set @SSQL=@SSQL+' FROM Stavr ST INNER JOIN KatArt K ON ST.Sifra_Art=K.Sifra_Art 
  37686.             LEFT OUTER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg 
  37687.             WHERE Sifra_OE='+Cast(@Sifra_OEDok As varchar(4))+' AND Sifra_Dok='+cast(@Sifra_Dok as varchar(4))+' AND Broj_Dok='+Cast(@Broj_Dok as varchar(10))
  37688.     ELSE
  37689.         Set @SSQL=@SSQL+' FROM KatArt K LEFT OUTER JOIN Soart S ON K.Sifra_Art=S.Sifra_Art  
  37690.                         LEFT OUTER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg  
  37691.                           WHERE S.Sifra_OE='+Cast(@OE_ZaCeni As varchar(4))
  37692.     --IF @Sifra_OEDok IS NOT NULL AND @Sifra_DOk IS NOT NULL AND @Broj_Dok IS NOT NULL
  37693.     --       Set @SSQL=@SSQL+' AND K.Sifra_Art IN (SELECT Sifra_Art FROM Stavr WHERE Sifra_OE='+
  37694.     --    Cast(@Sifra_OEDok As varchar(4))+' AND Sifra_Dok='+cast(@Sifra_Dok as varchar(4))+' AND Broj_Dok='+Cast(@Broj_Dok as varchar(10))+ ')'
  37695.        If @Kto Is Not Null
  37696.            Set @SSQL=@SSQL+' AND K.Kto='''+@Kto+''' '
  37697.        If @Sifra_Gr Is Not Null
  37698.            Set @SSQL=@SSQL+' AND PG.Sifra_Gr='''+@Sifra_Gr+''' '
  37699.        If @Sifra_Podg Is Not Null
  37700.         Set @SSQL=@SSQL+' AND K.Sifra_Podg='''+@Sifra_Podg+''' '
  37701.        Set @SSQL=@SSQL+' ORDER BY K.Sifra_Art'
  37702.     EXEC(@SSQL)
  37703.  
  37704.  
  37705.  
  37706.  
  37707. Go
  37708. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajartikli]'))
  37709. drop procedure [dbo].[sp_dajartikli]
  37710.  
  37711. Go
  37712.  
  37713. CREATE  procedure sp_DajArtikli
  37714. As
  37715.     Select K.Sifra_Art, K.ImeArt Naziv, K.Sifra_Podg, P.Ime_Podg Naziv_Podg, K.EdMera JedMera FROM Katart K
  37716.     INNER JOIN Podgrupi P on K.Sifra_Podg=P.Sifra_Podg ORDER BY K.Sifra_Art
  37717.  
  37718.  
  37719.  
  37720. Go
  37721. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajartiklizaprenos]'))
  37722. drop procedure [dbo].[sp_dajartiklizaprenos]
  37723.  
  37724. Go
  37725. CREATE   PROCEDURE sp_DajArtikliZaPrenos
  37726.     @ObjIzvor    char(1),
  37727.     @ObjZaPrenos char(1)
  37728. AS
  37729.     CREATE TABLE #TmpArt (Sifra_art varchar(20))
  37730.     Declare @PocChr    varchar(20)
  37731.     Declare @KrChr    varchar(20)
  37732.     Declare KonfMat1 Cursor Fast_Forward For
  37733.     Select  Poc_char, Kr_char From KonfNasObjMatic 
  37734.     WHERE Tabela='KatArt' 
  37735.     AND PatIndex('%'+@ObjZaPrenos + '%', PrenosVoObj)<>0  --AND Izvor=@ObjIzvor -ova za 3 obj.nema da e OK
  37736.     Open KonfMat1
  37737.     Fetch Next From KonfMat1 Into @PocChr, @KrChr
  37738.     While @@Fetch_Status = 0
  37739.     Begin            
  37740.         INSERT INTO #TmpArt SELECT Sifra_Art FROM KatArt 
  37741.         Where Sifra_Art >= @PocChr AND Sifra_Art <= @KrChr AND 
  37742.         (Prenesen IS NULL OR PatIndex('%' + @ObjZaPrenos + '%', Prenesen)=0)
  37743.         Fetch Next From KonfMat1 Into @PocChr, @KrChr
  37744.     End
  37745.     Close KonfMat1
  37746.     Deallocate KonfMat1
  37747.     SELECT Sifra_Art, ImeArt, EdMera, Alt_Ime, Sifra_Podg, Sifra_Tar, Kto, 
  37748.     SMatUsl, Sifra_Drg, KolkuDrg, Drugo1, Drugo2, Drugo3, Drugo4, Drugo5, 
  37749.     Fakturna, Nabavna, DogCena, MalCena, GotCena, SpeCena, 
  37750.     Proc_Marza, Nom, SMin_Sost, SMax_Sost, SOpt_Sost, Lokacija, ImaBroevi, 
  37751.     ImaKomerc, Tezina, PopusMar, Alt_Sifra, Iskluci, SpecRabat, SpecRabatOd, SpecRabatDo, 
  37752.     BTezina, Volumen, Rabat_Dali, SodrziEd, ProcAlk, RokKontrDali, Prenesen FROM KatArt 
  37753.     WHERE Sifra_Art IN (Select Sifra_Art FROM #TmpArt)
  37754.  
  37755.  
  37756. Go
  37757. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajartiklizaprenoszakup]'))
  37758. drop procedure [dbo].[sp_dajartiklizaprenoszakup]
  37759.  
  37760. Go
  37761. CREATE   PROCEDURE sp_DajArtikliZaPrenosZaKup
  37762.     @Sifra_Kup    char(6),
  37763.     @KlkDena     smallint
  37764. AS
  37765.     Declare @Datum as smalldatetime 
  37766.     SET @Datum = DateAdd(day, @KlkDena * -1, dbo.fn_VratiDatum(GetDate()))
  37767.     SELECT Sifra_Art, ImeArt, EdMera, Alt_Ime, Sifra_Podg, Sifra_Tar, 
  37768.     SMatUsl, KolkuDrg, Nom, ImaBroevi, ImaKomerc, Tezina, Alt_Sifra,  
  37769.     BTezina, Volumen, SodrziEd FROM KatArt 
  37770.     WHERE DodadenNa >= @Datum  or IzmenetNa >= @Datum OR Sifra_Art IN
  37771.     (SELECT DISTINCT S.Sifra_Art FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID
  37772.      WHERE D.Datum_Dok>=@Datum AND D.Sifra_Za=1 AND D.Sifra_Kup=@Sifra_Kup)
  37773.  
  37774.  
  37775.  
  37776. Go
  37777. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajartodproizv]'))
  37778. drop procedure [dbo].[sp_dajartodproizv]
  37779.  
  37780. Go
  37781.  
  37782. CREATE  PROCEDURE sp_DajArtOdProizv
  37783.     @Sif_GrOrg    char(6)
  37784. AS
  37785. SELECT Sifra_Art, ImeArt FROM KatArt
  37786. WHERE SMatUsl='M' and Sifra_Art IN (SELECT DISTINCT Sifra_Art FROM Soart WHERE Sifra_OE IN
  37787. (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_OE IN
  37788. (SELECT Sifra_OE FROM OrgEd WHERE TipMag='G')))
  37789.  
  37790.  
  37791.  
  37792.  
  37793. Go
  37794. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajartzavlezrand]'))
  37795. drop procedure [dbo].[sp_dajartzavlezrand]
  37796.  
  37797. Go
  37798.  
  37799. CREATE         PROCEDURE sp_DajArtZaVlezRand
  37800.     @Sif_GrOrgI    char(6),
  37801.     @Datum        smalldatetime,
  37802.     @TipDok_Izl varchar(100),
  37803.     @Sifra_Kup    char(6),        --dobavuvac
  37804.     @KoiDokrID    varchar(500),
  37805.     @PrimBr        decimal(18,6)=0 OUTPUT,
  37806.     @PrimTez    decimal(18,6)=0 OUTPUT
  37807. AS
  37808.     CREATE TABLE #TmpA
  37809.     (Sifra_Art varchar(20),
  37810.      IspBr    decimal(18,6),
  37811.      IspTez decimal(18,6),
  37812.      ProcRand decimal(6,2))
  37813.     Declare @SSQL varchar(3000)
  37814. /*SET @SSQL='SELECT Sifra_Art, SUM(Alt_Kolic), SUM(Kolic), 0 FROM Stavr WHERE Sifra_OE IN
  37815. (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg='''+@Sif_GrOrgI+''') AND Sifra_Dok IN ('+@TipDok_Izl +
  37816. ') AND Dobav='+@Sifra_Kup+' AND Datum_Dok='''+cast(@Datum as varchar(35))+''' 
  37817. AND Sifra_Art IN (SELECT Sifra_Art FROM KatArt WHERE DaliSurov=''G'') GROUP BY Sifra_Art'
  37818. INSERT INTO #TmpA EXEC(@SSQL)
  37819. INSERT INTO #TmpA (Sifra_Art) 
  37820. SELECT DISTINCT S.Sifra_Art FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID
  37821. WHERE S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrgI)
  37822. AND S.Datum_Dok=@Datum AND S.VlIzl='V' AND D.Sifra_KuP=@Sifra_Kup AND
  37823. Sifra_Art IN (SELECT Sifra_Art FROM KatArt WHERE DaliSurov='G') AND S.Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpA) 
  37824. UPDATE #TmpA SET ProcRand=S.Proc_Rand FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID
  37825. WHERE #TmpA.Sifra_Art=S.Sifra_Art AND D.Sifra_Kup=@Sifra_Kup AND
  37826. S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrgI) AND S.Datum_Dok=@Datum AND S.VlIzl='V' */
  37827. SET @SSQL='SELECT S.Sifra_Art, Sum(S.Alt_Kolic), SUM(S.Kolic), AVG(S.Proc_Rand)
  37828. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID 
  37829. WHERE S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg='''+@Sif_GrOrgI+''')
  37830. AND S.Datum_Dok='''+cast(@Datum as varchar(35))+''' AND D.Sifra_Kup='+@Sifra_Kup+' AND S.VlIzl=''V'' 
  37831. GROUP BY S.Sifra_Art'
  37832. INSERT INTO #TmpA (Sifra_art, IspBr, IspTez, ProcRand)  EXEC (@SSQL)
  37833. UPDATE #TmpA SET ProcRand = 0 WHERE ProcRand IS NULl
  37834. UPDATE #TmpA SET ProcRand = ProcRand / 100
  37835. UPDATE #TmpA SET ProcRand=S.Ima_Kolic FROM Sostav S WHERE #TmpA.Sifra_Art=S.Sifra_Art AND S.VodeckiArtikal='D' AND ProcRand=0
  37836. CREATE TABLE #Tmp1
  37837. (PrimBr    decimal(18,6),
  37838.  PrimTez decimal(18,6))
  37839. SET @SSQL='SELECT SUM(Alt_Kolic), SUM(Kolic) FROM Stavr S WHERE S.DokrID IN ('+ @KoiDokrID +')'
  37840. INSERT INTO #Tmp1 EXEC (@SSQL)
  37841. SELECT @PrimBr=PrimBr, @PrimTez=PrimTez FROM #Tmp1
  37842. SELECT S.*, A.ImeArt, A.Sifra_Tar, T.ProcOsn FROM #TmpA S 
  37843. INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar ORDER BY S.Sifra_Art
  37844.  
  37845.  
  37846.  
  37847. Go
  37848. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajartzawebnarac]'))
  37849. drop procedure [dbo].[sp_dajartzawebnarac]
  37850.  
  37851. Go
  37852.  
  37853. CREATE              PROCEDURE sp_DajArtZaWEBNarac
  37854.     @ZemiArtSamoOdAsortLst    smallint=NULL,
  37855.     @KatAsortPoSto            varchar(5)=NULL,
  37856.     @SamoVoPDA                char(1)=NULL,
  37857.     @KlkDena                smallint=null,
  37858.     @KojaCena                char(1)='1',
  37859.     @Sifra_OE                smallint=NULL
  37860. AS
  37861.  
  37862. Declare @SSQL varchar(3000)
  37863. SET @SSQL = 'Select K.Sifra_Art, K.ImeArt, K.EdMera, K.Alt_Ime, K.Alt_EdMera,T.ProcOsn as POsn, '
  37864. IF @KojaCena='1'
  37865.     SET @SSQL = @SSQL + 'K.DogCena as Katal_Cena, '
  37866. ELSE IF @KojaCena='S'
  37867.     SET @SSQL = @SSQL + 'CASE S.DanCena WHEN ''D'' THEN S.Cena ELSE round(S.Cena * (1+S.Posn/100),1) END As Katal_Cena, '
  37868. IF @KatAsortPoSto IS NOT NULL AND @KatAsortPoSto='HA'
  37869.     SET @SSQL = @SSQL + ' K.Sifra_KHier Sifra_Podg, '
  37870. ELSE IF @KatAsortPoSto IS NOT NULL AND @KatAsortPoSto='DP'
  37871.     SET @SSQL = @SSQL + ' K.Kto Sifra_Podg, '
  37872. ELSE
  37873.     SET @SSQL = @SSQL + ' K.Sifra_Podg, '
  37874. SET @SSQL = @SSQL + ' K.ImaKomerc, K.Kto, K.Nom, K.Tezina, K.BTezina, 0 as Min_Narac_Kup,0 as Max_Narac_Kup, K.DeklArt
  37875.     From Katart K
  37876.     Left Outer Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar '
  37877. IF @KojaCena='S'
  37878.     SET @SSQL = @SSQL + ' LEFT OUTER JOIN Soart S ON K.Sifra_Art=S.Sifra_Art AND S.Sifra_OE='+cast(@Sifra_OE as varchar(5))
  37879. CREATE TABLE #TmpKL
  37880. (Sifra    varchar(10))
  37881.  
  37882. IF @ZemiArtSamoOdAsortLst IS NOT NULL
  37883. Begin
  37884.     Declare @BrZap integer
  37885.  
  37886.     IF @KatAsortPoSto = 'GP'
  37887.     Begin
  37888.         SELECT @BrZap= COUNT(DISTINCT Sifra2) FROM KatAsortLista WHERE Broj_ALista=@ZemiArtSamoOdAsortLst
  37889.         IF @BrZap IS NULL OR @BrZap=0
  37890.             INSERT INTO #TmpKL SELECT Sifra_Podg FROM Podgrupi
  37891.         ELSE
  37892.             INSERT INTO #TmpKL SELECT DISTINCT Sifra2 FROM KatAsortLista WHERE Broj_ALista=@ZemiArtSamoOdAsortLst
  37893.         SET @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg
  37894.         INNER JOIN KatAsortLista L ON L.Sifra1=P.Sifra_Gr
  37895.          WHERE L.Broj_ALista = ' + cast(@ZemiArtSamoOdAsortLst as varchar(5))
  37896.         + ' AND K.Sifra_Podg IN (SELECT Sifra FROM #TmpKL) '
  37897.     End
  37898.     ELSE IF @KatAsortPoSto = 'HA'
  37899.     Begin
  37900.         SET @SSQL = @SSQL + ' INNER JOIN KatAsortLista L ON L.Sifra1=K.Sifra_KHier
  37901.          WHERE L.Broj_ALista = ' + cast(@ZemiArtSamoOdAsortLst as varchar(5))
  37902.     End
  37903.     ELSE IF @KatAsortPoSto = 'DP'
  37904.     Begin
  37905.         SET @SSQL = @SSQL + ' INNER JOIN KatAsortLista L ON L.Sifra1=K.Kto
  37906.          WHERE L.Broj_ALista = ' + cast(@ZemiArtSamoOdAsortLst as varchar(5))
  37907.     End
  37908. End
  37909. ELSE 
  37910.     SET @SSQL = @SSQL + ' WHERE 1=1 '
  37911. IF @SamoVoPDA IS NOT NULL
  37912.     SET @SSQL = @SSQL + ' AND K.VoPDA='''+@SamoVoPDA +''''
  37913. IF @KlkDena IS NOT NULL
  37914.     SET @SSQL = @SSQL + ' AND (K.DodadenNa>=DateAdd(day, '+cast(@KlkDena * -1 as varchar(10))+', GetDate()) OR K.IzmenetNa>=DateAdd(day, '+cast(@KlkDena * -1 as varchar(10))+', GetDate()) )'
  37915.  
  37916. EXEC (@SSQL)
  37917. SET QUOTED_IDENTIFIER OFF 
  37918.  
  37919.  
  37920.  
  37921.  
  37922.  
  37923.  
  37924.  
  37925.  
  37926.  
  37927.  
  37928.  
  37929. Go
  37930. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajazurdok]'))
  37931. drop procedure [dbo].[sp_dajazurdok]
  37932.  
  37933. Go
  37934.  
  37935.  
  37936. CREATE    PROCEDURE sp_DajAzurDok
  37937.     @Sifra_OE Smallint,
  37938.     @Datum_Od Smalldatetime,
  37939.     @Datum_Do Smalldatetime,
  37940.     @Sifra_Dok  smallint,
  37941.     @BrDokOd int,
  37942.     @BrDokDo int,
  37943.     @Broj_Nal    int
  37944. AS
  37945.     Declare @SSQL Varchar(4000)
  37946.     Set @SSQL = 'SELECT D.*, T.Sif_GrDok  FROM DOKR D INNER JOIN TipDok T ON D.Sifra_Dok=T.Sifra_Dok
  37947.                            WHERE D.BROJ_NAL IS NOT NULL AND D.SIFRA_DOK = ' + cast(@Sifra_Dok as varchar(5)) + '
  37948.                            AND VlIzl=''I'' AND D.SIFRA_OE '
  37949.     If @Sifra_OE IS NULL
  37950.                      Set @SSQL =  @SSQL + 'IN (SELECT Sifra_OE FROM ORGED WHERE OrgDaliFin = ''D'')'
  37951.     Else
  37952.                      Set @SSQL =  @SSQL + '= ' + Cast (@Sifra_OE as varchar(5))
  37953.     If @Broj_Nal  IS NOT NULL
  37954.                      Set @SSQL =  @SSQL + ' AND D.Broj_Nal = ' + Cast(@Broj_nal as varchar(10))
  37955.     If @BrDokOd  IS NOT NULL
  37956.                      Set @SSQL =  @SSQL + ' AND D.BROJ_DOK >= ' + Cast(@BrDokOd as varchar(10))
  37957.     If @BrDokDo  IS NOT NULL
  37958.                      Set @SSQL =  @SSQL + ' AND D.BROJ_DOK <= ' + Cast(@BrDokDo as varchar(10))
  37959.     If @Datum_Od Is NOT Null
  37960.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  37961.     If @Datum_Do Is NOT Null
  37962.          SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  37963.     SET @SSQL = @SSQL + ' ORDER BY D.Sifra_Nal, D.Broj_Nal, D.DokrID '     --ova ostavi go zaradi prenosnicite
  37964.     EXEC(@SSQL)
  37965.  
  37966.  
  37967.  
  37968. Go
  37969. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajbarkodoviodkatpodsifra]'))
  37970. drop procedure [dbo].[sp_dajbarkodoviodkatpodsifra]
  37971.  
  37972. Go
  37973.  
  37974.  
  37975. CREATE   PROCEDURE sp_DajBarKodoviOdKatPodSifra 
  37976. AS
  37977.     --SELECT Sifra_Art, Sifra_PodSif_Art Nom, rtrim(Sifra_Art)+' '+ cast(sifra_boja as varchar(4))+':'+cast(Sifra_Velic as varchar(4)) as Ozn
  37978.     --FROM KatPodSifra    OVA TRGNATO ZATOA STO BESE ZA MAKPRIMAT NAPRAVENO ZA EDNOKRATNA UPOTREBA I SEGA NON-STOP PREVZEMAAT MNOGU BARKODOVI NEPOTREBNO, PO POTREBA DA SE VRATI
  37979.     
  37980. SELECT '' Sifra_Art, '' Nom, ' :' Ozn
  37981.  
  37982.  
  37983.  
  37984. Go
  37985. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajbarkodovizaprenos]'))
  37986. drop procedure [dbo].[sp_dajbarkodovizaprenos]
  37987.  
  37988. Go
  37989.  
  37990. CREATE  PROCEDURE sp_DajBarKodoviZaPrenos
  37991.     @ObjIzvor    char(1),
  37992.     @ObjZaPrenos char(1)
  37993. AS
  37994.     CREATE TABLE #TmpArt (Sifra_art varchar(20))
  37995.     Declare @PocChr    varchar(20)
  37996.     Declare @KrChr    varchar(20)
  37997.     Declare KonfMat1 Cursor Fast_Forward For
  37998.     Select  Poc_char, Kr_char From KonfNasObjMatic 
  37999.     WHERE Izvor=@ObjIzvor AND Tabela='KatArt' 
  38000.     AND PatIndex('%'+@ObjZaPrenos + '%', PrenosVoObj)<>0 
  38001.     Open KonfMat1
  38002.     Fetch Next From KonfMat1 Into @PocChr, @KrChr
  38003.     While @@Fetch_Status = 0
  38004.     Begin            
  38005.         INSERT INTO #TmpArt SELECT Sifra_Art FROM KatArt 
  38006.         Where Sifra_Art >= @PocChr AND Sifra_Art <= @KrChr AND 
  38007.         (Prenesen IS NULL OR PatIndex('%S%', Prenesen)=0)
  38008.         Fetch Next From KonfMat1 Into @PocChr, @KrChr
  38009.     End
  38010.     Close KonfMat1
  38011.     Deallocate KonfMat1
  38012.     SELECT Sifra_Art, Nom, Drugo2 FROM ABarKod 
  38013.     WHERE Sifra_Art IN (Select Sifra_Art FROM #TmpArt)
  38014.  
  38015.  
  38016.  
  38017. Go
  38018. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajbarkodovizaprenoszakup]'))
  38019. drop procedure [dbo].[sp_dajbarkodovizaprenoszakup]
  38020.  
  38021. Go
  38022. CREATE   PROCEDURE sp_DajBarKodoviZaPrenosZaKup
  38023.     @Sifra_Kup    char(6),
  38024.     @KlkDena     smallint
  38025. AS
  38026.     Declare @Datum as smalldatetime 
  38027.     SET @Datum = DateAdd(day, @KlkDena * -1, dbo.fn_VratiDatum(GetDate()))
  38028.     SELECT Sifra_Art, Nom FROM ABarKod WHERE Sifra_Art IN
  38029.     (SELECT Sifra_Art FROM KatArt 
  38030.     WHERE DodadenNa >= @Datum  or IzmenetNa >= @Datum or Sifra_Art IN
  38031.     (SELECT DISTINCT S.Sifra_Art FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID
  38032.      WHERE D.Datum_Dok>=@Datum AND D.Sifra_Za=1 AND D.Sifra_Kup=@Sifra_Kup))
  38033.  
  38034.  
  38035.  
  38036. Go
  38037. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajblokiranafaktura]'))
  38038. drop procedure [dbo].[sp_dajblokiranafaktura]
  38039.  
  38040. Go
  38041.  
  38042. CREATE  PROCEDURE sp_DajBlokiranaFaktura
  38043.     @Sifra_OE    smallint, 
  38044.     @KoiTipDok    varchar(100),
  38045.     @Datum_Dok    smalldatetime,
  38046.     @Sifra_Kup    char(6)
  38047. AS
  38048.     Declare @SSQL as varchar(800)
  38049.     SET @SSQL = 'SELECT Sifra_OE, Sifra_Dok, Broj_dok, Datum_Dok, Sifra_Obj FROM Dokr 
  38050.     WHERE Sifra_OE = ' +Cast(@Sifra_OE as varchar(6)) + 'AND Sifra_Dok IN (' +
  38051.     @KoiTipDok + ')    AND Datum_Dok <= ''' + Cast(@Datum_Dok as varchar(35)) + 
  38052.     ''' AND Blokiran = ''T'' '
  38053.     IF @Sifra_kup IS NOT NULL
  38054.         SET @SSQL = @SSQL + ' AND Sifra_Kup = ' + @Sifra_Kup
  38055.     EXEC(@SSQL)
  38056.  
  38057.  
  38058.  
  38059. Go
  38060. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajbrsneprenfindok]'))
  38061. drop procedure [dbo].[sp_dajbrsneprenfindok]
  38062.  
  38063. Go
  38064.  
  38065. CREATE  PROCEDURE sp_DajBrsNePrenFinDok
  38066.     @KoiOE    varchar(200)=NULL,
  38067.     @KoiDok    varchar(100)=NULL,
  38068.     @KojObj    char(1)
  38069. AS
  38070. Declare @SSQL    varchar(5000)
  38071. SET @SSQL = 'SELECT Sifra_OE OE, Sifra_Dok Dok, Broj_Dok BrDok
  38072.             FROM BrsFinDok WHERE (Prenesen IS NULL OR RTrim(Prenesen)='''' OR 
  38073.             PatIndex(''%'+@KojObj + '%'', Prenesen)=0) '    
  38074. IF @KoiOE IS NOT NULL 
  38075.     SET @SSQL = @SSQL + ' AND Sifra_OE IN (' + @KoiOE + ') '
  38076. IF @KoiDok IS NOT NULL 
  38077.     SET @SSQL = @SSQL + ' AND Sifra_Dok IN (' + @KoiDok + ') '
  38078. EXEC (@SSQL)
  38079.  
  38080.  
  38081.  
  38082. Go
  38083. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajcena_jole]'))
  38084. drop procedure [dbo].[sp_dajcena_jole]
  38085.  
  38086. Go
  38087.  
  38088.  
  38089.  
  38090. CREATE     PROCEDURE sp_dajcena_jole
  38091.     @Sifra_OE Smallint = Null,
  38092.     @TipDokPrimarni varchar(300)='2,132',
  38093.     @TipDokSekundarni varchar(300)='990',
  38094.     @GrupaOrg varchar(20) = Null,
  38095.     @Sifra_Art Varchar(20)
  38096.  
  38097. AS
  38098.  
  38099.     Declare @Koef decimal (18, 4)
  38100.     select @Koef = (select Koef
  38101.             from Katart
  38102.             where Sifra_Art = @Sifra_Art)
  38103.  
  38104.     IF @Koef <= 0
  38105.     begin
  38106.         select 0 KgrKomRealno, 
  38107.                0 KgrMet,
  38108.             K.ProcAlk, K.KolkuDrg,
  38109.             CenKat.CenaParam, CenKat.CenaParam2,
  38110.             0 GolCena,
  38111.             0 MalCena,
  38112.             K.Koef as KgrMetKatart,
  38113.             K.GotCena,
  38114.             K.DogCena DogCenaFix
  38115.         From Katart K
  38116.         Inner Join Tarifi Tar On Tar.Sifra_Tar = K.Sifra_Tar 
  38117.         Left Outer Join Drugo1 CenKat On K.Drugo1 = CenKat.Sifra_1
  38118.         where K.sifrA_art = @SIfrA_Art
  38119.  
  38120.         RETURN
  38121.     end
  38122.  
  38123.  
  38124.     CREATE TABLE #TempPosl
  38125.     (    [Kolic] decimal(18, 6) NULL ,
  38126.         [Alt_Kolic] decimal(18, 6) NULL ,
  38127.  
  38128.         [KgrKom] decimal(18, 6) NULL ,
  38129.     )
  38130.  
  38131.     if @TipDokPrimarni is not null and @TipDokPrimarni <> ''
  38132.     begin
  38133.         CREATE TABLE #SiteDokPrimarni
  38134.         (    Sifra_Dok smallint
  38135.         )
  38136.  
  38137.         insert into #SiteDokPrimarni
  38138.         select cast(Pole as int) from dbo.fn_split(@TipDokPrimarni, ',')  
  38139.     end
  38140.  
  38141.     if @TipDokSekundarni is not null and @TipDokSekundarni <> ''
  38142.     begin
  38143.         CREATE TABLE #SiteDokSekundarni
  38144.         (    Sifra_Dok smallint
  38145.         )
  38146.  
  38147.         insert into #SiteDokSekundarni
  38148.         select  cast(Pole as int) from dbo.fn_split(@TipDokSekundarni, ',')  
  38149.     end
  38150.  
  38151.     CREATE TABLE #SiteOrg
  38152.     (    Sifra_Oe smallint
  38153.     )
  38154.  
  38155.     if @GrupaOrg is not null and @GrupaOrg <> ''
  38156.         insert into #SiteOrg (Sifra_OE)
  38157.         Select G.Sifra_Oe 
  38158.         from SGrOrg G
  38159.         where G.sif_GrOrg = @GrupaOrg
  38160.     else if @Sifra_Oe is not null and @Sifra_Oe <> 0
  38161.         insert into #SiteOrg
  38162.         values (@Sifra_Oe)
  38163.     else
  38164.         insert into #SiteOrg
  38165.         select Sifra_Oe
  38166.         from OrgEd
  38167.  
  38168.     Declare @KolkuNajde as int
  38169.     Declare @KandKgrPosl as decimal(18, 6)
  38170.  
  38171.     set @KandKgrPosl = null
  38172.     set @KolkuNajde = Null
  38173.  
  38174.     -- Prvo vidi od primarnite priemi
  38175.     if @TipDokPrimarni is not null and @TipDokPrimarni <> ''
  38176.         begin
  38177.         delete from #TempPosl
  38178.  
  38179.         insert into #TempPosl
  38180.             (kolic, alt_kolic, KgrKom)
  38181.         Select Top 3 kolic, alt_kolic, Alt_Kolic / Kolic
  38182.         From Stavr S
  38183.         Inner Join #SiteDokPrimarni TD on S.Sifra_Dok = TD.Sifra_Dok
  38184.         Inner Join #SiteOrg ORG on S.Sifra_Oe = ORG.Sifra_Oe
  38185.         Where Sifra_Art=@Sifra_Art And VlIzl='V' And Kolic > 0
  38186.         Order By Datum_Dok Desc, DokID Desc
  38187.  
  38188.         select @KandKgrPosl = sum(KgrKom), @KolkuNajde = count(*)
  38189.         from #TempPosl
  38190.         end
  38191.  
  38192.  
  38193.     -- Ako ne najde, vidi od sekundarnite priemi
  38194.     if @KandKgrPosl is null and @TipDokSekundarni is not null and @TipDokSekundarni <> ''
  38195.         begin
  38196.         delete from #TempPosl
  38197.  
  38198.         insert into #TempPosl
  38199.             (kolic, alt_kolic, KgrKom)
  38200.         Select Top 3 kolic, alt_kolic, Alt_Kolic / Kolic
  38201.         From Stavr S
  38202.         Inner Join #SiteDokSekundarni TD on S.Sifra_Dok = TD.Sifra_Dok
  38203.         Inner Join #SiteOrg ORG on S.Sifra_Oe = ORG.Sifra_Oe
  38204.         Where Sifra_Art=@Sifra_Art And VlIzl='V' And Kolic > 0
  38205.         Order By Datum_Dok Desc, DokID Desc
  38206.                 
  38207.         select @KandKgrPosl = sum(KgrKom), @KolkuNajde = count(*)
  38208.         from #TempPosl
  38209.         end
  38210.  
  38211.  
  38212.     -- Ako ne najde, vidi bilo kakov priem koj ne e prenosnica
  38213.     if @KandKgrPosl is null 
  38214.         begin
  38215.         delete from #TempPosl
  38216.  
  38217.         insert into #TempPosl
  38218.             (kolic, alt_kolic, KgrKom)
  38219.         Select Top 3 kolic, alt_kolic, Alt_Kolic / Kolic
  38220.           From Stavr S
  38221.         Inner Join #SiteOrg ORG on S.Sifra_Oe = ORG.Sifra_Oe
  38222.         Where Sifra_Art=@Sifra_Art And VlIzl='V' And Kolic > 0 and (ImaDodatna='' or ImaDodatna is null)
  38223.         Order By Datum_Dok Desc, DokID Desc
  38224.  
  38225.         select @KandKgrPosl = sum(KgrKom), @KolkuNajde = count(*)
  38226.         from #TempPosl
  38227.         end
  38228.  
  38229.     -- Ako ne najde, vidi priem -  prenosnica
  38230.     if @KandKgrPosl is null 
  38231.         begin
  38232.         delete from #TempPosl
  38233.  
  38234.         insert into #TempPosl
  38235.             (kolic, alt_kolic, KgrKom)
  38236.         Select Top 3 kolic, alt_kolic, Alt_Kolic / Kolic
  38237.         From Stavr S
  38238.         Inner Join #SiteOrg ORG on S.Sifra_Oe = ORG.Sifra_Oe
  38239.         Where Sifra_Art=@Sifra_Art And VlIzl='V' And Kolic > 0 and ImaDodatna='P'
  38240.         Order By Datum_Dok Desc, DokID Desc
  38241.  
  38242.         select @KandKgrPosl = sum(KgrKom), @KolkuNajde = count(*)
  38243.         from #TempPosl
  38244.         end
  38245.  
  38246.     if @KandKgrPosl is not null
  38247.        begin
  38248.         Declare @KgrKomRealno decimal(18,6)
  38249.  
  38250.         set @KgrKomRealno = @KandKgrPosl / @KolkuNajde
  38251.  
  38252.         select @KgrKomRealno KgrKomRealno, 
  38253.                    (Case when K.KolkuDrg > 0 Then @KgrKomRealno / (K.KolkuDrg / 100) Else 0 End) KgrMet,
  38254.                 K.ProcAlk, K.KolkuDrg,
  38255.             CenKat.CenaParam, CenKat.CenaParam2,
  38256.             dbo.fn_zaokr_5den(CenKat.CenaParam * @KgrKomRealno * (1 + Tar.ProcOsn / 100)) GolCena,
  38257.             dbo.fn_zaokr_5den(CenKat.CenaParam2 * @KgrKomRealno * (1 + Tar.ProcOsn / 100)) MalCena,
  38258.                 K.Koef as KgrMetKatart, K.GotCena, K.DogCena DogCenaFix
  38259.         From Katart K
  38260.         Inner Join Tarifi Tar On Tar.Sifra_Tar = K.Sifra_Tar 
  38261.         Left Outer Join Drugo1 CenKat On K.Drugo1 = CenKat.Sifra_1
  38262.         where K.sifrA_art = @SIfrA_Art
  38263.         end
  38264.     else
  38265.         select 0 KgrKomRealno, 
  38266.                0 KgrMet,
  38267.             K.ProcAlk, K.KolkuDrg,
  38268.             CenKat.CenaParam, CenKat.CenaParam2,
  38269.             0 GolCena,
  38270.             0 MalCena,
  38271.             K.Koef as KgrMetKatart,
  38272.             K.GotCena,
  38273.             K.DogCena DogCenaFix
  38274.         From Katart K
  38275.         Inner Join Tarifi Tar On Tar.Sifra_Tar = K.Sifra_Tar 
  38276.         Left Outer Join Drugo1 CenKat On K.Drugo1 = CenKat.Sifra_1
  38277.         where K.sifrA_art = @SIfrA_Art
  38278.  
  38279.  
  38280.  
  38281.  
  38282.  
  38283.  
  38284.  
  38285.  
  38286. Go
  38287. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajceniodcenimp]'))
  38288. drop procedure [dbo].[sp_dajceniodcenimp]
  38289.  
  38290. Go
  38291.  
  38292. CREATE  PROCEDURE sp_DajCeniOdCenImp
  38293.     @Sifra_OE    smallint,
  38294.     @Sifra_Art    varchar(20),
  38295.     @Datum        smalldatetime,
  38296.     @Sifra_Vernost    smallint,
  38297.     @Sifra_VidDog    nvarchar(20)
  38298. AS
  38299. CREATE TABLE #TmpCen
  38300. (Sifra_VidDog    nvarchar (20),
  38301. Sifra_Vernost     smallint,
  38302. Sif_GrOrg         char (6),
  38303. Sifra_Art         varchar (20),
  38304. PocDatum        smalldatetime,
  38305. Cena            decimal(18, 4),
  38306. Subvencija        decimal(18, 4),
  38307. SlobSubvenc        char (1),
  38308. PocDatum2        smalldatetime,
  38309. KrajDatum2        smalldatetime,
  38310. Cena2            decimal(18, 4),
  38311. SlobSubvenc2    char(1),
  38312. TekCena            decimal(18, 4),
  38313. TekSlobSubv        char(1),
  38314. OK                char(1))
  38315.  
  38316. INSERT INTO #TmpCen (Sifra_VidDog, Sifra_Vernost, Sif_GrOrg, Sifra_Art, PocDatum, Cena, Subvencija, SlobSubvenc,PocDatum2, KrajDatum2, Cena2, SlobSubvenc2)
  38317. SELECT Sifra_VidDog, Sifra_Vernost, Sif_GrOrg, Sifra_Art, PocDatum, Cena, Subvencija, SlobSubvenc,PocDatum2, KrajDatum2, Cena2, SlobSubvenc2
  38318. FROM CenImp WHERE Sifra_Art = @Sifra_Art AND Sif_GrOrg IS NULL
  38319.  
  38320. INSERT INTO #TmpCen (Sifra_VidDog, Sifra_Vernost, Sif_GrOrg, Sifra_Art, PocDatum, Cena, Subvencija, SlobSubvenc,PocDatum2, KrajDatum2, Cena2, SlobSubvenc2)
  38321. SELECT Sifra_VidDog, Sifra_Vernost, Sif_GrOrg, Sifra_Art, PocDatum, Cena, Subvencija, SlobSubvenc,PocDatum2, KrajDatum2, Cena2, SlobSubvenc2
  38322. FROM CenImp WHERE Sifra_Art = @Sifra_Art AND Sif_GrOrg IN (SELECT DISTINCT Sif_GrOrg FROM SGrOrg WHERE Sifra_OE=@Sifra_OE)
  38323.  
  38324. UPDATE #TmpCen SET TekCena = Cena2, TekSlobSubv=SlobSubvenc2 WHERE PocDatum2 IS NOT NULL AND KrajDatum2 IS NOT NULL AND @Datum>=PocDatum2 AND @Datum<=KrajDatum2
  38325. UPDATE #TmpCen SET TekCena = Cena2, TekSlobSubv=SlobSubvenc2 WHERE PocDatum2 IS NOT NULL AND @Datum>=PocDatum2 
  38326. UPDATE #TmpCen SET TekCena = Cena, TekSlobSubv=SlobSubvenc WHERE PocDatum IS NOT NULL AND @Datum>=PocDatum
  38327. DELETE FROM #TmpCen WHERE TekCena IS NULL
  38328. UPDATE #TmpCen SET OK='N'
  38329.  
  38330. Declare @KlkZapisi as integer
  38331. Declare @OdiPonataka as char(1)
  38332. SET @OdiPonataka = 'D'
  38333.  
  38334. UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=@Sifra_Vernost AND Sifra_VidDog=@Sifra_VidDog AND Sif_GrOrg IS NOT NULL
  38335. SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38336.  
  38337. IF @KlkZapisi>0 SET @OdiPonataka = 'N'
  38338. IF @OdiPonataka = 'D'
  38339. Begin
  38340.     UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=0 AND Sifra_VidDog=@Sifra_VidDog AND Sif_GrOrg IS NOT NULL
  38341.     SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38342.     IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38343. End
  38344.  
  38345. IF @OdiPonataka = 'D' AND @Sifra_VidDog IN ('BIZNIS','RESIDENT')
  38346. Begin
  38347.     UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=@Sifra_Vernost AND Sifra_VidDog='POSTPAID' AND Sif_GrOrg IS NOT NULL 
  38348.     SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38349.     IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38350.     IF @OdiPonataka = 'D'
  38351.     Begin
  38352.         UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=0 AND Sifra_VidDog='POSTPAID' AND Sif_GrOrg IS NOT NULL 
  38353.         SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38354.         IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38355.     End
  38356. End
  38357.  
  38358. IF @OdiPonataka = 'D'        --bez org.ed.
  38359. Begin
  38360.     UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=@Sifra_Vernost AND Sifra_VidDog=@Sifra_VidDog AND Sif_GrOrg IS NULL
  38361.     SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38362.  
  38363.     IF @KlkZapisi>0 SET @OdiPonataka = 'N'
  38364.     IF @OdiPonataka = 'D'
  38365.     Begin
  38366.         UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=0 AND Sifra_VidDog=@Sifra_VidDog AND Sif_GrOrg IS NULL
  38367.         SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38368.         IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38369.     End
  38370.  
  38371.     IF @OdiPonataka = 'D' AND @Sifra_VidDog IN ('BIZNIS','RESIDENT')
  38372.     Begin
  38373.         UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=@Sifra_Vernost AND Sifra_VidDog='POSTPAID' AND Sif_GrOrg IS NULL 
  38374.         SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38375.         IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38376.         IF @OdiPonataka = 'D'
  38377.         Begin
  38378.             UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=0 AND Sifra_VidDog='POSTPAID' AND Sif_GrOrg IS NULL 
  38379.             SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38380.             IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38381.         End
  38382.     End
  38383. End                            --bez org.ed.
  38384.  
  38385. IF @OdiPonataka = 'D'        --prepaid
  38386. Begin
  38387.     UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=@Sifra_Vernost AND Sifra_VidDog='SLOBODEN' AND Sif_GrOrg IS NOT NULL
  38388.     SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38389.  
  38390.     IF @KlkZapisi>0 SET @OdiPonataka = 'N'
  38391.     IF @OdiPonataka = 'D'
  38392.     Begin
  38393.         UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=0 AND Sifra_VidDog='SLOBODEN' AND Sif_GrOrg IS NOT NULL
  38394.         SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38395.         IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38396.     End
  38397.  
  38398.     IF @OdiPonataka = 'D'        --bez org.ed.
  38399.     Begin
  38400.         UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=@Sifra_Vernost AND Sifra_VidDog=@Sifra_VidDog AND Sif_GrOrg IS NULL
  38401.         SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38402.  
  38403.         IF @KlkZapisi>0 SET @OdiPonataka = 'N'
  38404.         IF @OdiPonataka = 'D'
  38405.         Begin
  38406.             UPDATE #TmpCen SET OK='D' WHERE Sifra_Vernost=0 AND Sifra_VidDog=@Sifra_VidDog AND Sif_GrOrg IS NULL
  38407.             SELECT @KlkZapisi=COUNT(*) FROM #TmpCen WHERE OK='D'
  38408.             IF @KlkZapisi=0 SET @OdiPonataka = 'N'
  38409.         End
  38410.     End                            --bez org.ed.
  38411. End                            --prepaid
  38412.  
  38413. SELECT Sifra_VidDog, Sifra_Vernost, TekCena, Subvencija, TekSlobSubv FROM #TmpCen WHERE OK='D'
  38414.  
  38415.  
  38416.  
  38417.  
  38418. Go
  38419. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdatisporakaporuti1nar]'))
  38420. drop procedure [dbo].[sp_dajdatisporakaporuti1nar]
  38421.  
  38422. Go
  38423.  
  38424.  
  38425.  
  38426. CREATE   Procedure sp_DajDatIsporakaPoRuti1Nar
  38427.     @Sifra_OE    smallint,
  38428.     @Sifra_Nar    smallint,
  38429.     @Broj_Nar    int,
  38430.     @Dat_Isporaka smalldatetime = NULL OUTPUT
  38431. AS 
  38432. Declare @DatIspOd smalldatetime, @DatIspDo smalldatetime, @DatZaklZaUtre smalldatetime
  38433. Declare @Sifra_Pat smallint, @Sifra_Kup char(6), @Sifra_Obj as smallint
  38434. SET @DatIspOd = dbo.fn_VratiDatum(GetDate())
  38435. SET @DatIspDo = dbo.fn_VratiDatum(DateAdd(day, 20, GetDate()))
  38436.  
  38437. SET @DatZaklZaUtre = DateAdd(hour, 15, @DatIspOd)  -- 15h denes - da se parameterizira
  38438. SELECT @Sifra_Pat=Sifra_Pat, @Sifra_Kup=Sifra_Kup, @Sifra_Obj=Sifra_Obj FROM Naracki WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  38439. --IF @Sifra_Pat IS NULL OR @Sifra_Kup IS NULL RETURN
  38440.  
  38441. CREATE TABLE #TmpRuta
  38442.     (DenOdNedela char(1),
  38443.      Sifra_Kup char(6),
  38444.      Sifra_Obj smallint,
  38445.      Datum smalldatetime )
  38446.  
  38447. CREATE TABLE #TmpPR 
  38448. (Sifra_Kup char(6),
  38449. Sifra_Obj smallint, 
  38450. Datum smalldatetime)
  38451.  
  38452. Declare @Datum smalldatetime
  38453. Declare @Praznik as char(1)
  38454. SET @Datum=@DatIspOd
  38455. WHILE @Datum<=@DatIspDo         
  38456. BEGIN
  38457.  
  38458.     -- Specijalni ruti za fiksiran apsoluten datum
  38459.     IF @Sifra_Obj IS NULL
  38460.         INSERT INTO #TmpRuta (Datum, Sifra_Kup, Sifra_Obj)
  38461.         SELECT Datum, Sifra_Kup, Sifra_Obj 
  38462.         FROM RutiZaDatum WHERE Datum=@Datum  AND Sifra_Kup=@Sifra_Kup
  38463.     ELSE
  38464.         INSERT INTO #TmpRuta (Datum, Sifra_Kup, Sifra_Obj)
  38465.         SELECT Datum, Sifra_Kup, Sifra_Obj 
  38466.         FROM RutiZaDatum WHERE Datum=@Datum  AND Sifra_Kup=@Sifra_Kup AND Sifra_Obj=@Sifra_Obj
  38467.  
  38468.     -- Pazi na PRAZNICITE
  38469.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  38470.  
  38471.     IF @Praznik IS NULL
  38472.     BEGIN
  38473.         DELETE FROM #TmpPR
  38474.  
  38475.         IF @Sifra_Obj IS NULL
  38476.         Begin
  38477.             INSERT INTO #TmpPR (Sifra_Kup, Datum)
  38478.                 SELECT Sifra_Kup, MAX(Datum_Od) 
  38479.                 FROM RutiPlan 
  38480.                 WHERE Sifra_Kup =@Sifra_Kup AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) 
  38481.                 GROUP BY Sifra_Kup
  38482.     
  38483.             INSERT INTO #TmpRuta(Datum, Sifra_Kup, Sifra_Obj)
  38484.                 SELECT @Datum, R.Sifra_Kup, R.Sifra_Obj 
  38485.                 FROM RutiPlan R 
  38486.                 INNER JOIN #TmpPR T ON R.Sifra_Kup=T.Sifra_Kup AND R.Datum_Od=T.Datum
  38487.                 WHERE R.Sifra_Kup NOT IN (SELECT Sifra_Kup FROM RutiZaDatum WHERE Datum=@Datum)
  38488.                     AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Kup =@Sifra_Kup
  38489.         End
  38490.         ELSE
  38491.         Begin
  38492.             INSERT INTO #TmpPR 
  38493.                 SELECT Sifra_Kup, Sifra_Obj, MAX(Datum_Od) 
  38494.                 FROM RutiPlan 
  38495.                 WHERE Sifra_Kup =@Sifra_Kup AND Sifra_Obj=@Sifra_Obj AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) 
  38496.                 GROUP BY Sifra_Kup, Sifra_Obj
  38497.     
  38498.             INSERT INTO #TmpRuta(Datum, Sifra_Kup, Sifra_Obj)
  38499.                 SELECT @Datum, R.Sifra_Kup, R.Sifra_Obj 
  38500.                 FROM RutiPlan R 
  38501.                 INNER JOIN #TmpPR T ON R.Sifra_Kup=T.Sifra_Kup AND R.Datum_Od=T.Datum
  38502.                 WHERE R.Sifra_Kup+cast(R.Sifra_Obj as char(4)) NOT IN (SELECT Sifra_Kup+cast(R.Sifra_Obj as char(4)) FROM RutiZaDatum WHERE Datum=@Datum)
  38503.                     AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Kup =@Sifra_Kup AND R.Sifra_Obj=@Sifra_Obj
  38504.         End
  38505.     END
  38506.  
  38507.     SET @Datum = DateAdd(day, 1, @Datum)
  38508. END 
  38509.  
  38510. Declare @Rbr as smallint
  38511. SET @Rbr=1
  38512. WHILE @Rbr<=20
  38513. Begin
  38514.     --naracki stignati do 15 casot da se isporacaat utre
  38515.     IF @Rbr=1
  38516.     Begin
  38517.         SELECT @Dat_Isporaka = R.Datum 
  38518.         FROM #TmpRuta R, Naracki 
  38519.         WHERE Naracki.Datum_Vnes<=@DatZaklZaUtre AND Naracki.Dat_Isporaka IS NULL
  38520.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  38521.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NULL AND R.Sifra_Obj IS NULL 
  38522.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)    --bez obj.
  38523.         
  38524.         SELECT @Dat_Isporaka = R.Datum 
  38525.         FROM #TmpRuta R, Naracki 
  38526.         WHERE Naracki.Datum_Vnes<=@DatZaklZaUtre AND Naracki.Dat_Isporaka IS NULL
  38527.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  38528.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NOT NULL AND R.Sifra_Obj IS NOT NULL 
  38529.             AND Naracki.Sifra_Obj=R.Sifra_Obj AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)  --so obj.
  38530.     End
  38531.     ELSE
  38532.     Begin
  38533.         SELECT @Dat_Isporaka = R.Datum 
  38534.         FROM #TmpRuta R, Naracki 
  38535.         WHERE Naracki.Dat_Isporaka IS NULL 
  38536.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  38537.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NULL AND R.Sifra_Obj IS NULL 
  38538.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)    --bez obj.
  38539.  
  38540.         SELECT @Dat_Isporaka = R.Datum 
  38541.         FROM #TmpRuta R, Naracki 
  38542.         WHERE Naracki.Dat_Isporaka IS NULL 
  38543.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  38544.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NOT NULL AND R.Sifra_Obj IS NOT NULL 
  38545.             AND Naracki.Sifra_Obj=R.Sifra_Obj 
  38546.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)  --so obj.
  38547.     End
  38548.  
  38549.     IF @Dat_Isporaka IS NOT NULL BREAK
  38550.     SET @Rbr=@Rbr+1
  38551. End
  38552. print @Dat_Isporaka  
  38553.  
  38554.  
  38555. Go
  38556. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdivizijaoddokr]'))
  38557. drop procedure [dbo].[sp_dajdivizijaoddokr]
  38558.  
  38559. Go
  38560. CREATE PROCEDURE sp_DajDivizijaOdDokr 
  38561.     @Sifra_OE    smallint,
  38562.     @Sifra_Dok    smallint,
  38563.     @Broj_Dok    int,
  38564.     @Sifra_Div    varchar(5) OUTPUT
  38565. AS
  38566.     SELECT @Sifra_Div=Sifra_Div FROM Dokr WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  38567.  
  38568.  
  38569. Go
  38570. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdivzanaracka]'))
  38571. drop procedure [dbo].[sp_dajdivzanaracka]
  38572.  
  38573. Go
  38574. CREATE PROCEDURE sp_DajDivzaNaracka
  38575.     @Sifra_OE    smallint,
  38576.     @Sifra_Nar    smallint,
  38577.     @Broj_Nar    int
  38578. AS
  38579. SELECT Distinct A.Sifra_Div FROM StaNarac S INNER JOIN KatArt A ON A.Sifra_Art=S.Sifra_Art
  38580. WHERE S.Sifra_OE=@Sifra_Oe AND S.Sifra_Nar=@Sifra_Nar AND S.Broj_Nar=@Broj_Nar
  38581. ORDER BY A.Sifra_Div
  38582.  
  38583. Go
  38584. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdobavuvaci]'))
  38585. drop procedure [dbo].[sp_dajdobavuvaci]
  38586.  
  38587. Go
  38588.  
  38589. CREATE  PROCEDURE sp_DajDobavuvaci
  38590. AS
  38591.     Select Distinct K.Kto, Kup.ImeKup 
  38592.     From Katart K
  38593.     Inner Join Komint Kup On Kup.Sifra_Kup=K.Kto ORDER BY Kup.ImeKup
  38594.  
  38595.  
  38596.  
  38597. Go
  38598. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdok]'))
  38599. drop procedure [dbo].[sp_dajdok]
  38600.  
  38601. Go
  38602.  
  38603. CREATE  procedure sp_DajDok
  38604.     @Sifra_Oe smallint,
  38605.     @Datum_dok smalldatetime
  38606.     
  38607. As
  38608.     Select D.DokrID, D.Sifra_Oe,O.ImeOrg, D.Broj_Dok, D.Sifra_Dok  From Dokr D
  38609.     Inner Join Orged O on D.Sifra_oe=O.Sifra_Oe
  38610.     Where D.Sifra_Oe=@Sifra_Oe and D.Datum_Dok=@Datum_Dok
  38611.  
  38612.  
  38613.  
  38614. Go
  38615. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdok100zaazur]'))
  38616. drop procedure [dbo].[sp_dajdok100zaazur]
  38617.  
  38618. Go
  38619.  
  38620.  
  38621.  
  38622.  
  38623.  
  38624. CREATE    PROCEDURE sp_DajDok100ZaAzur
  38625.     @Sifra_OE Smallint,
  38626.     @Datum_Od Smalldatetime,
  38627.     @Datum_Do Smalldatetime,
  38628.     @BrDokOd int=Null,
  38629.     @BrDokDo int=Null
  38630. AS
  38631. Declare @SSQL Varchar(4000)
  38632. Declare @Stapka1 as decimal
  38633. Declare @Stapka2 as decimal
  38634. SELECT @Stapka1=Stapka1, @Stapka2=Stapka2 FROM DDVStapki WHERE @Datum_Od >= Datum_Od and @Datum_Od <= Datum_Do
  38635. Set @SSQL = 'SELECT S.Sifra_OE, S.Datum_Dok, 
  38636. SUM(CASE When S.POsn='+Cast(@Stapka1 as varchar(30))+' Then Kolic*DokCena Else 0 End)DokVr1, 
  38637. SUM(CASE When S.POsn='+Cast(@Stapka1 as varchar(30))+' Then (Kolic*DokCena)-Kolic*DokCena/(1+POsn/100) Else 0 End) DokDDV1,
  38638. SUM(CASE When S.POsn='+Cast(@Stapka2 as varchar(30))+' Then Kolic*DokCena Else 0 End)DokVr2, 
  38639. SUM(CASE When S.POsn='+Cast(@Stapka2 as varchar(30))+' Then (Kolic*DokCena)-Kolic*DokCena/(1+POsn/100) Else 0 End) DokDDV2
  38640.     FROM Stavr S INNER JOIN DOKR D ON S.DokrID=D.DokrID
  38641.     WHERE D.BROJ_NAL IS NULL AND D.SIFRA_DOK IN (100,101) AND D.SIFRA_OE '
  38642. If @Sifra_OE IS NULL
  38643.     Set @SSQL =  @SSQL + 'IN (SELECT Sifra_OE FROM ORGED WHERE OrgDaliFin = ''D'')'
  38644. Else
  38645.     Set @SSQL =  @SSQL + '= ' + Cast (@Sifra_OE as varchar(5))
  38646. If @BrDokOd  IS NOT NULL
  38647.     Set @SSQL =  @SSQL + ' AND D.BROJ_DOK >= ' + Cast(@BrDokOd as varchar(10))
  38648. If @BrDokDo  IS NOT NULL
  38649.     Set @SSQL =  @SSQL + ' AND D.BROJ_DOK <= ' + Cast(@BrDokDo as varchar(10))
  38650. If @Datum_Od Is NOT Null
  38651.     SET @SSQL = @SSQL + ' AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  38652. If @Datum_Do Is NOT Null
  38653.     SET @SSQL = @SSQL + ' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  38654. SET @SSQL = @SSQL + ' GROUP BY S.Sifra_OE, S.Datum_Dok
  38655. ORDER BY S.Sifra_OE, S.Datum_Dok'    
  38656. EXEC(@SSQL)
  38657.  
  38658.  
  38659.  
  38660.  
  38661. Go
  38662. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokbeztransnal]'))
  38663. drop procedure [dbo].[sp_dajdokbeztransnal]
  38664.  
  38665. Go
  38666.  
  38667. CREATE  PROCEDURE sp_DajDokBezTransNal
  38668.     @Sifra_OE    smallint = Null,
  38669.     @Datum_Od    smalldatetime = Null,
  38670.     @Datum_Do    smalldatetime = Null
  38671. AS
  38672.     Declare @SSQL varchar(2000)
  38673. SET @SSQL= 'SELECT D.DokrID, D.Sifra_OE OEDok, D.Sifra_Dok, D.Broj_Dok, 
  38674.     D.Datum_Dok, D.Toc200, D.Sifra_Kup, K.ImeKup
  38675.     From Dokr D
  38676.     LEFT OUTER JOIN Komint K ON D.Sifra_Kup = K.Sifra_Kup WHERE D.VlIzl=''I'' 
  38677.     AND D.DokrID NOT IN (SELECT DokrID FROM TransNalStav)'
  38678. IF @Sifra_OE IS NOT NULL
  38679.     SET @SSQL = @SSQL + ' AND D.Sifra_OE=' + cast(@Sifra_OE as varchar(5))
  38680. IF @Datum_Od IS NOT NULL
  38681.     SET @SSQL = @SSQL + ' AND D.Datum_Dok>=''' + cast(@Datum_Od as varchar(35))+''' '
  38682. IF @Datum_Do IS NOT NULL
  38683.     SET @SSQL = @SSQL + ' AND D.Datum_Dok<=''' + cast(@Datum_Do as varchar(35))+''' '
  38684. EXEC (@SSQL)
  38685.  
  38686.  
  38687.  
  38688. Go
  38689. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokrid]'))
  38690. drop procedure [dbo].[sp_dajdokrid]
  38691.  
  38692. Go
  38693. CREATE PROCEDURE sp_DajDokrID
  38694.     @Sifra_Oe smallint,
  38695.     @Sifra_Dok Smallint,
  38696.     @Broj_Dok int
  38697. AS
  38698. SELECT DokrID FROM Dokr 
  38699. WHERE Sifra_Oe=@Sifra_Oe AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  38700.  
  38701.  
  38702.  
  38703. Go
  38704. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokumenti]'))
  38705. drop procedure [dbo].[sp_dajdokumenti]
  38706.  
  38707. Go
  38708. CREATE      procedure sp_DajDokumenti
  38709.     @Sifra_Oe smallint,
  38710.     @Datum smalldatetime,
  38711.     @DokrID varchar(800)=NULL
  38712. As
  38713. Declare @@SSQL varchar(6000)
  38714. SET @@SSQL='Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.VlIzl, TD.Sifra_Za, 
  38715.     Round(Sum(S.kolic*S.nabcena*(1+S.POsn/100)),2) NabVred, 
  38716.     Round(Sum(S.kolic*(1-S.Uces/100)* case S.DanDokCena When ''D'' then S.dokcena else S.DokCena*(1+S.POsnPren/100) End),0) DokVred, 
  38717.     Round(Sum(S.kolic* case S.DanMagCena When ''D'' then S.magcena else S.MagCena*(1+S.Posn/100) End),0) MagVred
  38718.     From Stavr S INNER Join TipDok TD ON S.Sifra_Dok=TD.Sifra_Dok
  38719.     Where  TD.VoTrg_Knig=''D'' '
  38720.     set @@SSQL=@@SSQL+ ' and S.Sifra_oe=' + cast(@Sifra_Oe as varchar(10))+ ' '
  38721.     set @@SSQL=@@SSQL+ ' and S.Datum_dok= ''' + cast(@Datum as varchar(35))+ '''  '
  38722.  IF @DokrID IS not NULL
  38723.     set @@SSQL=@@SSQL + ' And S.DokrID in ('+@DokrID+')' 
  38724.     set @@SSQL=@@SSQL + ' Group by S.Sifra_oe, S.Sifra_Dok, S.Broj_Dok, S.VlIzl, TD.Sifra_Za '
  38725. IF @DokrID IS NULL
  38726.     set @@SSQL=@@SSQL + ' UNION
  38727.     Select Sifra_Oe, Sifra_Dok, Broj_Dok, ''I'' AS VlIzl, 1 Sifra_Za, 0 Nabavna, Pobaruva DokVred, 0 MagVred
  38728.     FROM AnFinDok
  38729.     Where Sifra_Dok IN (Select sifra_dok from TipDok Where VoTrg_Knig=''D'' And Sifra_Za=1 And TipDok=''2'' And DaliMater=''N'') 
  38730.     and  Sifra_oe=' + cast(@Sifra_Oe as varchar(10))+ ' and  Datum_dok= ''' + cast(@Datum as varchar(35))+ '''  '
  38731. --print @@SSQL
  38732. exec (@@SSQL)
  38733.  
  38734.  
  38735. Go
  38736. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzaazur]'))
  38737. drop procedure [dbo].[sp_dajdokzaazur]
  38738.  
  38739. Go
  38740.  
  38741.  
  38742.  
  38743.  
  38744. CREATE    PROCEDURE sp_DajDokZaAzur
  38745.     @Sifra_OE Smallint,
  38746.     @Datum_Od Smalldatetime,
  38747.     @Datum_Do Smalldatetime,
  38748.     @Sifra_Dok  smallint,
  38749.     @BrDokOd int,
  38750.     @BrDokDo int,
  38751.     @Sifra_Prim    smallint=null,
  38752.     @SamoLikvidirani  char(1) = 'N',
  38753.     @DivOdPat    char(1)='N',
  38754.     @TipDFiscSamoPecKnz char(1) = 'N',
  38755.     @OdrediImaPovDivVoDok char(1) = 'N'
  38756. AS
  38757. Declare @SSQL Varchar(3000), @SSQLUsl varchar(3000), @SSQLOrd varchar(100), @SSQLPom varchar(1000)
  38758. Declare @Sifra_Za smallint
  38759. Declare @Datum_Do1 smalldatetime
  38760. SET @Datum_Do1 = dateadd(day, 1, @Datum_Do)
  38761. SELECT @Sifra_Za = Sifra_ZA FROM TipDok WHERE Sifra_Dok=@Sifra_Dok
  38762.  
  38763. SET @SSQLUsl = ' WHERE D.BROJ_NAL IS NULL AND D.SIFRA_DOK = ' + cast(@Sifra_Dok as varchar(5)) + ' AND D.SIFRA_OE '
  38764. If @Sifra_OE IS NULL
  38765.     Set @SSQLUsl =  @SSQLUsl + 'IN (SELECT Sifra_OE FROM ORGED WHERE OrgDaliFin = ''D'')'
  38766. Else
  38767.     Set @SSQLUsl =  @SSQLUsl + '= ' + Cast (@Sifra_OE as varchar(5))
  38768. If @BrDokOd  IS NOT NULL
  38769.     Set @SSQLUsl =  @SSQLUsl + ' AND D.BROJ_DOK >= ' + Cast(@BrDokOd as varchar(10))
  38770. If @BrDokDo  IS NOT NULL
  38771.     Set @SSQLUsl =  @SSQLUsl + ' AND D.BROJ_DOK <= ' + Cast(@BrDokDo as varchar(10))
  38772. IF @TipDFiscSamoPecKnz = 'D'
  38773. Begin
  38774.     If @Datum_Od Is NOT Null
  38775.         SET @SSQLUsl = @SSQLUsl + ' AND ((T.DaliFisc IN (''D'', ''V'') AND D.Dat_Pec_Fisc IS NOT NULL AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Od As Varchar(35)) + ''') 
  38776.     OR (T.DaliFisc NOT IN (''D'', ''V'') AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + '''))'
  38777.     If @Datum_Do Is NOT Null
  38778.         SET @SSQLUsl = @SSQLUsl + ' AND ((T.DaliFisc IN (''D'', ''V'') AND D.Dat_Pec_Fisc IS NOT NULL AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Do1 As Varchar(35)) + ''') 
  38779.     OR (T.DaliFisc NOT IN (''D'', ''V'') AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + '''))'
  38780. End
  38781. ELSE
  38782. Begin
  38783.     If @Datum_Od Is NOT Null
  38784.         SET @SSQLUsl = @SSQLUsl + ' AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  38785.     If @Datum_Do Is NOT Null
  38786.         SET @SSQLUsl = @SSQLUsl + ' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  38787. End
  38788. If @Sifra_Prim IS NOT NULL
  38789.     Set @SSQLUsl =  @SSQLUsl + ' AND Sifra_Prim = ' + Cast (@Sifra_Prim as varchar(5))
  38790. IF @SamoLikvidirani='D'
  38791.     SET @SSQLUsl = @SSQLUsl + ' AND (D.Likvid IS NULL OR D.Likvid<>''M'')'    
  38792. IF @TipDFiscSamoPecKnz = 'D'
  38793.     SET @SSQLUsl = @SSQLUsl + ' AND (T.DaliFisc IS NULL OR T.DaliFisc NOT IN (''D'', ''V'') OR (D.Pec_Fisc IS NOT NULL AND D.Pec_Fisc>0)) '
  38794.  
  38795. IF @OdrediImaPovDivVoDok='D'
  38796. Begin
  38797.     CREATE        TABLE #TmpDiv
  38798.     (DokrID    int, BrDiv smallint, Sifra_Div smallint)
  38799.     SET @SSQLPom = 'SELECT S.DokrID, COUNT(Distinct A.Sifra_Div) FROM Stavr S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art 
  38800.     WHERE S.DokrID IN (SELECT D.DokrID FROM Dokr D INNER JOIN TipDok T ON D.Sifra_Dok=T.Sifra_Dok '
  38801.     INSERT INTO #TmpDiv (DokrID, BrDiv) EXEC (@SSQLPom + @SSQLUsl +') GROUP BY S.DokrID')
  38802. --print @SSQLPom + @SSQLUsl
  38803.     UPDATE #TmpDiv SET Sifra_Div=A.Sifra_Div FROM Stavr S, KatArt A WHERE #TmpDiv.BrDiv=1 AND #TmpDiv.DokrID=S.DokrID AND S.Sifra_Art=A.Sifra_Art
  38804. End
  38805.  
  38806. IF @Sifra_Za = 3
  38807.     SET @SSQLOrd = ' ORDER BY D.DokrID '     --ova ostavi go zaradi prenosnicite
  38808. ELSE
  38809.     SET @SSQLOrd = ' ORDER BY D.Sifra_OE, D.Broj_Dok '    
  38810.  
  38811. Set @SSQL = 'SELECT D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, Case D.Sifra_Za when 3 then D.ImaDodatna Else '''' End as ImaDodatna, D.Sifra_Prim, D.Sifra_Za, D.VlIzl, 
  38812.             D.Sifra_Nivo, D.KasaPoDDV, D.Identif_Br, D.Datum_Dok, D.Danok1, D.Danok2, D.Toc200, D.Opis, D.Sifra_Kup, 
  38813.             D.Kto, D.Rok, D.Kasa, D.Sifra_Pat, D.Datum_Dok, K.Kto_Anal Kto_AnalKup, '
  38814. IF @DivOdPat ='D'
  38815.     SET @SSQL = @SSQL + 'P.Sifra_Div, P.Sifra_TrosM, '
  38816. ELSE
  38817.      SET @SSQL = @SSQL + 'D.Sifra_Div, NULL Sifra_TrosM, '
  38818. IF @OdrediImaPovDivVoDok='D'
  38819.     SET @SSQL = @SSQL + '#TmpDiv.BrDiv, #TmpDiv.Sifra_Div Sifra_Div_OdArt, '
  38820. ELSE
  38821.     SET @SSQL = @SSQL + '0 BrDiv, 0 Sifra_Div_OdArt,'
  38822. SET @SSQL = @SSQL + 'T.Sif_GrDok  FROM DOKR D INNER JOIN TipDok T ON D.Sifra_Dok=T.Sifra_Dok 
  38823. LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup '
  38824. IF @DivOdPat ='D'
  38825.     SET @SSQL = @SSQL + ' LEFT OUTER JOIN Patnici P ON D.Sifra_Pat=P.Sifra_Pat '
  38826. IF @OdrediImaPovDivVoDok='D'
  38827.     SET @SSQL = @SSQL + ' LEFT OUTER JOIN #TmpDiv ON D.DokrID=#TmpDiv.DokrID '
  38828. EXEC(@SSQL+@SSQLUsl+@SSQLOrd)
  38829. --print @SSQL+@SSQLUsl+@SSQLOrd
  38830.  
  38831.  
  38832.  
  38833.  
  38834.  
  38835.  
  38836.  
  38837.  
  38838.  
  38839.  
  38840.  
  38841.  
  38842.  
  38843. Go
  38844. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzadokrvodetalni]'))
  38845. drop procedure [dbo].[sp_dajdokzadokrvodetalni]
  38846.  
  38847. Go
  38848.  
  38849.  
  38850.  
  38851. CREATE            PROCEDURE sp_DajDokZaDokrVoDetalni
  38852.     @Datum_Do        smalldatetime,
  38853.     @KoiOE_ZaZb        varchar(30) = '31,32,33,34',
  38854.     @KoiTipD_ZaZb    varchar(30) = '88,89',
  38855.     @Sifra_Kup_Od    char(6) = NULL,
  38856.     @Sifra_Kup_Do    char(6) = NULL,
  38857.     @SamoPregl        char(1) = 'D',
  38858.     @Datum_Od        smalldatetime = NULL,
  38859.     @Sifra_OE_CeniPlanski smallint = NULL,
  38860.     @KDrugo1        smallint=NULL
  38861. AS
  38862.     Declare @SSQL varchar(5000)
  38863. CREATE TABLE #TmpCeniPlan
  38864. (Sifra_Art    varchar(20),
  38865. Cena        decimal(18,4))
  38866.  
  38867. IF @Sifra_OE_CeniPlanski IS NOT NULL
  38868. Begin
  38869.     Declare @Sif_GrOrg char(6)
  38870.     SELECT @Sif_GrOrg=Sif_GrOrg FROM SGrOrg WHERE Sifra_OE=@Sifra_OE_CeniPlanski AND Sif_GrOrg IN (SELECT Sif_GrOrg FROM GrOrg WHERE ZaedPlanCeni='D')
  38871.  
  38872.     CREATE TABLE #Tmp1
  38873.     (Sifra_Art    varchar(20),
  38874.     Vazi_Od        smalldatetime)
  38875.     INSERT INTO #Tmp1 SELECT Sifra_Art, Max(Vazi_Od) FROM CeniPlanski WHERE Sif_GrOrg=@Sif_GrOrg GROUP BY Sifra_Art
  38876.     
  38877.     INSERT INTO #TmpCeniPlan SELECT C.Sifra_Art, dbo.fn_VratiCena(C.Cena, T.ProcOsn, C.DanCena, 'N')
  38878.     FROM CeniPlanski C INNER JOIN KatArt A ON C.Sifra_Art=A.Sifra_Art INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar
  38879.     INNER JOIN #Tmp1 Tm ON C.Sifra_Art=Tm.Sifra_Art AND C.Vazi_Od=Tm.Vazi_Od WHERE C.Sif_GrOrg=@Sif_GrOrg 
  38880. End
  38881.  
  38882. CREATE TABLE #TmpMasl
  38883. (Sifra_Kup    char(6),
  38884. Sifra_Art    varchar(20),
  38885. Datum        smalldatetime,
  38886. Vrednost    decimal(18,6))
  38887.  
  38888. INSERT INTO #TmpMasl (Sifra_Kup, Sifra_Art, Datum) SELECT Sifra_Kup, Sifra_Art, MAX(Datum) FROM MerenjaZaArt
  38889. WHERE Datum <=@Datum_Do GROUP BY Sifra_Kup, Sifra_Art
  38890. print'3'
  38891. UPDATE #TmpMasl SET Vrednost=M.Vrednost FROM MerenjaZaArt M 
  38892. WHERE #TmpMasl.Sifra_Kup=M.Sifra_Kup AND #TmpMasl.Sifra_Art=M.Sifra_Art AND #TmpMasl.Datum=M.Datum
  38893.  
  38894. SET @SSQL =    'SELECT D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K,
  38895. S.Sifra_Art, A.ImeArt, A.EdMera, A.GotCena Cena, M.Vrednost, C.Cena MagCena, S.DokCena,
  38896. cast(S.Sifra_Oe as varchar(8))+''-''+cast(S.Sifra_Dok as varchar(8))+''/''+Cast(S.Broj_Dok as varchar(8)) Dok, '
  38897. IF @SamoPregl='N'
  38898.     SET @SSQL = @SSQL + 'D.DokrID,'
  38899. ELSE
  38900.     SET @SSQL = @SSQL + 'D.Datum_Dok,'
  38901.  
  38902. SET @SSQL = @SSQL + 'SUM(S.Kolic) Kolic'
  38903. SET @SSQL = @SSQL + ', Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)IzvBezDDV, 
  38904. Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)*S.POsn/100 DDV
  38905. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  38906. LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  38907. LEFT OUTER JOIN #TmpCeniPlan C ON S.Sifra_Art=C.Sifra_Art
  38908. LEFT OUTER JOIN #TmpMasl M ON D.Sifra_Kup=M.Sifra_Kup AND S.Sifra_Art=M.Sifra_Art
  38909. LEFT OUTER JOIN KDrugo1 K1 ON K.KDrugo1=K1.Sifra_1K
  38910. WHERE S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + 
  38911. ''' AND S.Sifra_OE IN (' + @KoiOE_ZaZb + ') AND S.Sifra_Dok IN (' + @KoiTipD_ZaZb + ') '
  38912.  
  38913. IF @SamoPregl='N' OR @Datum_Od IS NULL
  38914.     SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID_Orig FROM DokrVoZbirni) '
  38915. IF @SamoPregl='D' AND @Datum_Od IS NOT NULL
  38916.     SET @SSQL = @SSQL + ' AND D.Datum_Dok >=''' + cast(@Datum_Od as varchar(35))+''' '
  38917. IF @Sifra_Kup_Od IS NOT NULL
  38918.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup>=' + @Sifra_Kup_Od + ' '
  38919. IF @Sifra_Kup_Do IS NOT NULL
  38920.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup<=' + @Sifra_Kup_Do + ' '
  38921. IF @KDrugo1 IS NOT NULL
  38922.     SET @SSQL = @SSQL + ' AND K.KDrugo1=' + cast(@KDrugo1 as varchar(5)) + ' '
  38923. SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K, D.DokrID, S.Sifra_Art, A.ImeArt, A.EdMera, A.GotCena, M.Vrednost, C.Cena, S.DOkCena, S.Posn, S.DanDokCena, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok '
  38924. IF @SamoPregl='N'
  38925.     SET @SSQL = @SSQL + ',D.DokrID '
  38926. ELSE
  38927.     SET @SSQL = @SSQL + ',D.Datum_Dok'
  38928. SET @SSQL = @SSQL + ' ORDER BY D.Sifra_Kup, S.Sifra_Art'
  38929. print @SSql
  38930. EXEC (@SSQL)
  38931.  
  38932.  
  38933.  
  38934.  
  38935.  
  38936.  
  38937.  
  38938.  
  38939.  
  38940.  
  38941.  
  38942.  
  38943.  
  38944. Go
  38945. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzadokrvodetalnisr]'))
  38946. drop procedure [dbo].[sp_dajdokzadokrvodetalnisr]
  38947.  
  38948. Go
  38949.  
  38950.  
  38951.  
  38952.  
  38953. CREATE          PROCEDURE sp_DajDokZaDokrVoDetalniSR
  38954.     @Datum_Do        smalldatetime,
  38955.     @KoiOE_ZaZb        varchar(30) = '31,32,33,34',
  38956.     @KoiTipD_ZaZb    varchar(30) = '88,89',
  38957.     @Sifra_Kup_Od    char(6) = NULL,
  38958.     @Sifra_Kup_Do    char(6) = NULL,
  38959.     @SamoPregl        char(1) = 'D',
  38960.     @Datum_Od        smalldatetime = NULL,
  38961.     @Sifra_OE_CeniPlanski smallint = NULL,
  38962.     @KDrugo1        smallint=NULL
  38963. AS
  38964.     Declare @SSQL varchar(5000)
  38965. CREATE TABLE #TmpCeniPlan
  38966. (Sifra_Art    varchar(20),
  38967. Cena        decimal(18,4))
  38968.  
  38969. IF @Sifra_OE_CeniPlanski IS NOT NULL
  38970. Begin
  38971.     Declare @Sif_GrOrg char(6)
  38972.     SELECT @Sif_GrOrg=Sif_GrOrg FROM SGrOrg WHERE Sifra_OE=@Sifra_OE_CeniPlanski AND Sif_GrOrg IN (SELECT Sif_GrOrg FROM GrOrg WHERE ZaedPlanCeni='D')
  38973.  
  38974.     CREATE TABLE #Tmp1
  38975.     (Sifra_Art    varchar(20),
  38976.     Vazi_Od        smalldatetime)
  38977.     INSERT INTO #Tmp1 SELECT Sifra_Art, Max(Vazi_Od) FROM CeniPlanski WHERE Sif_GrOrg=@Sif_GrOrg GROUP BY Sifra_Art
  38978.     
  38979.     INSERT INTO #TmpCeniPlan SELECT C.Sifra_Art, dbo.fn_VratiCena(C.Cena, T.ProcOsn, C.DanCena, 'N')
  38980.     FROM CeniPlanski C INNER JOIN KatArt A ON C.Sifra_Art=A.Sifra_Art INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar
  38981.     INNER JOIN #Tmp1 Tm ON C.Sifra_Art=Tm.Sifra_Art AND C.Vazi_Od=Tm.Vazi_Od WHERE C.Sif_GrOrg=@Sif_GrOrg 
  38982. End
  38983.  
  38984. CREATE TABLE #TmpMasl
  38985. (Sifra_Kup    char(6),
  38986. Sifra_Art    varchar(20),
  38987. Datum        smalldatetime,
  38988. Vrednost    decimal(18,6))
  38989.  
  38990. INSERT INTO #TmpMasl (Sifra_Kup, Sifra_Art, Datum) SELECT Sifra_Kup, Sifra_Art, MAX(Datum) FROM MerenjaZaArt
  38991. WHERE Datum <=@Datum_Do GROUP BY Sifra_Kup, Sifra_Art
  38992. print'3'
  38993. UPDATE #TmpMasl SET Vrednost=M.Vrednost FROM MerenjaZaArt M 
  38994. WHERE #TmpMasl.Sifra_Kup=M.Sifra_Kup AND #TmpMasl.Sifra_Art=M.Sifra_Art AND #TmpMasl.Datum=M.Datum
  38995.  
  38996. SET @SSQL =    'SELECT D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K,
  38997. S.Sifra_Art, A.ImeArt, A.EdMera, A.GotCena Cena, M.Vrednost, C.Cena MagCena, S.DokCena,
  38998. cast(S.Sifra_Oe as varchar(8))+''-''+cast(S.Sifra_Dok as varchar(8))+''/''+Cast(S.Broj_Dok as varchar(8)) Dok, '
  38999. IF @SamoPregl='N'
  39000.     SET @SSQL = @SSQL + 'D.DokrID,'
  39001. ELSE
  39002.     SET @SSQL = @SSQL + 'D.Datum_Dok,'
  39003.  
  39004. SET @SSQL = @SSQL + 'SUM(S.Kolic) Kolic'
  39005. SET @SSQL = @SSQL + ', Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)IzvBezDDV, 
  39006. Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)*S.POsn/100 DDV
  39007. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  39008. LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  39009. LEFT OUTER JOIN #TmpCeniPlan C ON S.Sifra_Art=C.Sifra_Art
  39010. LEFT OUTER JOIN #TmpMasl M ON D.Sifra_Kup=M.Sifra_Kup AND S.Sifra_Art=M.Sifra_Art
  39011. LEFT OUTER JOIN KDrugo1 K1 ON K.KDrugo1=K1.Sifra_1K
  39012. WHERE S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + 
  39013. ''' AND S.Sifra_OE IN (' + @KoiOE_ZaZb + ') AND S.Sifra_Dok IN (' + @KoiTipD_ZaZb + ') '
  39014.  
  39015. IF @SamoPregl='N' OR @Datum_Od IS NULL
  39016.     SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID_Orig FROM DokrVoZbirni) '
  39017. IF @SamoPregl='D' AND @Datum_Od IS NOT NULL
  39018.     SET @SSQL = @SSQL + ' AND D.Datum_Dok >=''' + cast(@Datum_Od as varchar(35))+''' '
  39019. IF @Sifra_Kup_Od IS NOT NULL
  39020.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup>=' + @Sifra_Kup_Od + ' '
  39021. IF @Sifra_Kup_Do IS NOT NULL
  39022.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup<=' + @Sifra_Kup_Do + ' '
  39023. IF @KDrugo1 IS NOT NULL
  39024.     SET @SSQL = @SSQL + ' AND K.KDrugo1=' + cast(@KDrugo1 as varchar(5)) + ' '
  39025. SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K, D.DokrID, S.Sifra_Art, A.ImeArt, A.EdMera, A.GotCena, M.Vrednost, C.Cena, S.DOkCena, S.Posn, S.DanDokCena, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok '
  39026. IF @SamoPregl='N'
  39027.     SET @SSQL = @SSQL + ',D.DokrID '
  39028. ELSE
  39029.     SET @SSQL = @SSQL + ',D.Datum_Dok'
  39030. SET @SSQL = @SSQL + ' ORDER BY D.Sifra_Kup, S.Sifra_Art'
  39031. print @SSql
  39032. EXEC (@SSQL)
  39033.  
  39034.  
  39035.  
  39036.  
  39037.  
  39038.  
  39039.  
  39040.  
  39041.  
  39042.  
  39043.  
  39044.  
  39045.  
  39046.  
  39047. Go
  39048. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzadokrvozbirni]'))
  39049. drop procedure [dbo].[sp_dajdokzadokrvozbirni]
  39050.  
  39051. Go
  39052.  
  39053.  
  39054.  
  39055.  
  39056.  
  39057. CREATE              PROCEDURE sp_DajDokZaDokrVoZbirni
  39058.     @Datum_Do        smalldatetime,
  39059.     @KoiOE_ZaZb        varchar(30) = '31,32,33,34,35,36',
  39060.     @KoiTipD_ZaZb    varchar(30) = '88,89',
  39061.     @Sifra_Kup_Od    char(6) = NULL,
  39062.     @Sifra_Kup_Do    char(6) = NULL,
  39063.     @SamoPregl        char(1) = 'D',
  39064.     @Datum_Od        smalldatetime = NULL,
  39065.     @Sifra_OE_CeniPlanski smallint = NULL,
  39066.     @KDrugo1        smallint=NULL
  39067. AS
  39068.     Declare @SSQL varchar(5000)
  39069. CREATE TABLE #TmpCeniPlan
  39070. (Sifra_Art    varchar(20),
  39071. Cena        decimal(18,4))
  39072.  
  39073. IF @Sifra_OE_CeniPlanski IS NOT NULL
  39074. Begin
  39075.     Declare @Sif_GrOrg char(6)
  39076.     SELECT @Sif_GrOrg=Sif_GrOrg FROM SGrOrg WHERE Sifra_OE=@Sifra_OE_CeniPlanski AND Sif_GrOrg IN (SELECT Sif_GrOrg FROM GrOrg WHERE ZaedPlanCeni='D')
  39077.  
  39078.     CREATE TABLE #Tmp1
  39079.     (Sifra_Art    varchar(20),
  39080.     Vazi_Od        smalldatetime)
  39081.     INSERT INTO #Tmp1 SELECT Sifra_Art, Max(Vazi_Od) FROM CeniPlanski WHERE Sif_GrOrg=@Sif_GrOrg GROUP BY Sifra_Art
  39082.     
  39083.     INSERT INTO #TmpCeniPlan SELECT C.Sifra_Art, dbo.fn_VratiCena(C.Cena, T.ProcOsn, C.DanCena, 'N')
  39084.     FROM CeniPlanski C INNER JOIN KatArt A ON C.Sifra_Art=A.Sifra_Art INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar
  39085.     INNER JOIN #Tmp1 Tm ON C.Sifra_Art=Tm.Sifra_Art AND C.Vazi_Od=Tm.Vazi_Od WHERE C.Sif_GrOrg=@Sif_GrOrg 
  39086. End
  39087.  
  39088. CREATE TABLE #TmpMasl
  39089. (Sifra_Kup    char(6),
  39090. Sifra_Art    varchar(20),
  39091. Datum        smalldatetime,
  39092. Vrednost    decimal(18,6))
  39093.  
  39094. INSERT INTO #TmpMasl (Sifra_Kup, Sifra_Art, Datum) SELECT Sifra_Kup, Sifra_Art, MAX(Datum) FROM MerenjaZaArt
  39095. WHERE Datum <=@Datum_Do GROUP BY Sifra_Kup, Sifra_Art
  39096. print'3'
  39097. UPDATE #TmpMasl SET Vrednost=M.Vrednost FROM MerenjaZaArt M 
  39098. WHERE #TmpMasl.Sifra_Kup=M.Sifra_Kup AND #TmpMasl.Sifra_Art=M.Sifra_Art AND #TmpMasl.Datum=M.Datum
  39099.  
  39100. SET @SSQL =    'SELECT D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K,
  39101. S.Sifra_Art, A.ImeArt, A.EdMera, A.GotCena Cena, M.Vrednost, C.Cena MagCena, S.DokCena,
  39102. cast(S.Sifra_Oe as varchar(8))+''-''+cast(S.Sifra_Dok as varchar(8))+''/''+Cast(S.Broj_Dok as varchar(8)) Dok, '
  39103. IF @SamoPregl='N'
  39104.     SET @SSQL = @SSQL + 'D.DokrID,'
  39105. ELSE
  39106.     SET @SSQL = @SSQL + 'D.Datum_Dok,'
  39107.  
  39108. SET @SSQL = @SSQL + 'SUM(S.Kolic) Kolic'
  39109. SET @SSQL = @SSQL + ', Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)IzvBezDDV, 
  39110. Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)*S.POsn/100 DDV
  39111. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  39112. LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  39113. LEFT OUTER JOIN #TmpCeniPlan C ON S.Sifra_Art=C.Sifra_Art
  39114. LEFT OUTER JOIN #TmpMasl M ON D.Sifra_Kup=M.Sifra_Kup AND S.Sifra_Art=M.Sifra_Art
  39115. LEFT OUTER JOIN KDrugo1 K1 ON K.KDrugo1=K1.Sifra_1K
  39116. WHERE S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + 
  39117. ''' AND S.Sifra_OE IN (' + @KoiOE_ZaZb + ') AND S.Sifra_Dok IN (' + @KoiTipD_ZaZb + ') '
  39118.  
  39119. IF @SamoPregl='N' OR @Datum_Od IS NULL
  39120.     SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID_Orig FROM DokrVoZbirni) '
  39121. IF @SamoPregl='D' AND @Datum_Od IS NOT NULL
  39122.     SET @SSQL = @SSQL + ' AND D.Datum_Dok >=''' + cast(@Datum_Od as varchar(35))+''' '
  39123. IF @Sifra_Kup_Od IS NOT NULL
  39124.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup>=' + @Sifra_Kup_Od + ' '
  39125. IF @Sifra_Kup_Do IS NOT NULL
  39126.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup<=' + @Sifra_Kup_Do + ' '
  39127. IF @KDrugo1 IS NOT NULL
  39128.     SET @SSQL = @SSQL + ' AND K.KDrugo1=' + cast(@KDrugo1 as varchar(5)) + ' '
  39129. SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K, D.DokrID, S.Sifra_Art, A.ImeArt, A.EdMera, A.GotCena, M.Vrednost, C.Cena, S.DOkCena, S.Posn, S.DanDokCena, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok '
  39130. IF @SamoPregl='N'
  39131.     SET @SSQL = @SSQL + ',D.DokrID '
  39132. ELSE
  39133.     SET @SSQL = @SSQL + ',D.Datum_Dok'
  39134. SET @SSQL = @SSQL + ' ORDER BY D.Sifra_Kup, S.Sifra_Art'
  39135. print @SSql
  39136. EXEC (@SSQL)
  39137.  
  39138.  
  39139.  
  39140.  
  39141.  
  39142.  
  39143.  
  39144.  
  39145.  
  39146.  
  39147.  
  39148.  
  39149.  
  39150.  
  39151.  
  39152. Go
  39153. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzadokrvozbirnicen]'))
  39154. drop procedure [dbo].[sp_dajdokzadokrvozbirnicen]
  39155.  
  39156. Go
  39157.  
  39158.  
  39159.  
  39160.  
  39161.  
  39162. CREATE           PROCEDURE sp_DajDokZaDokrVoZbirniCen
  39163.     @Datum_Do        smalldatetime,
  39164.     @KoiOE_ZaZb        varchar(30) = '31,32,33,34,35,36,37,38,39',
  39165.     @KoiTipD_ZaZb    varchar(30) = '88,89',
  39166.     @Sifra_Kup_Od    char(6) = NULL,
  39167.     @Sifra_Kup_Do    char(6) = NULL,
  39168.     @SamoPregl        char(1) = 'D',
  39169.     @Datum_Od        smalldatetime = NULL,
  39170.     @KDrugo1        smallint=NULL
  39171. AS
  39172.     Declare @SSQL varchar(5000)
  39173.  
  39174. CREATE TABLE #TmpCeniVazi
  39175. (Sifra_Art    varchar(20),
  39176. Vazi_Od        smalldatetime)
  39177. INSERT INTO #TmpCeniVazi SELECT Sifra_Art,MAX(Vazi_Od) FROM CenovnikOtkup WHERE Vazi_Od<=@Datum_Do GROUP BY Sifra_Art
  39178.  
  39179. /*CREATE TABLE #TmpMasl        --ovaa tabela ke treba ako rabotime so prosecni vrednosti
  39180. (Sifra_Kup    char(6),
  39181. Sifra_Art    varchar(20),
  39182. Datum        smalldatetime,
  39183. Vrednost    decimal(18,6),
  39184. Proteini    decimal(18,6)) */
  39185.  
  39186. CREATE TABLE #TmpCeni
  39187. (Sifra_Kup    char(6),
  39188. Sifra_Art    varchar(20),
  39189. Datum        smalldatetime,
  39190. Kolicina    decimal(18,6),
  39191. Vrednost1    decimal(18,6),
  39192. Vrednost2    decimal(18,6),
  39193. Cena1        decimal(18,6),
  39194. Cena2        decimal(18,6),
  39195. DanCena        char(1),
  39196. Cena        decimal(18,6))
  39197.  
  39198. SET @SSQL = 'SELECT D.Sifra_Kup, S.Sifra_art, S.Datum_Dok, S.Kolic 
  39199.         FROM Stavr S 
  39200.         INNER JOIN Dokr D ON S.DokrID=D.DokrID
  39201.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  39202.     WHERE S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + 
  39203.     ''' AND S.Sifra_OE IN (' + @KoiOE_ZaZb + ') AND S.Sifra_Dok IN (' + @KoiTipD_ZaZb + ') '
  39204. IF @SamoPregl='N' OR @Datum_Od IS NULL
  39205.     SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID_Orig FROM DokrVoZbirni) '
  39206. IF @SamoPregl='D' AND @Datum_Od IS NOT NULL
  39207.         SET @SSQL = @SSQL + ' AND D.Datum_Dok >=''' + cast(@Datum_Od as varchar(35))+''' '
  39208. IF @Sifra_Kup_Od IS NOT NULL
  39209.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup>=' + @Sifra_Kup_Od + ' '
  39210. IF @Sifra_Kup_Do IS NOT NULL
  39211.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup<=' + @Sifra_Kup_Do + ' ' 
  39212. IF @KDrugo1 IS NOT NULL
  39213.     SET @SSQL = @SSQL + ' AND K.KDrugo1=' + cast(@KDrugo1 as varchar(5)) + ' '
  39214. INSERT INTO #TmpCeni (Sifra_Kup, Sifra_Art, Datum, Kolicina) EXEC (@SSQL)
  39215.  
  39216. UPDATE #TmpCeni SET Vrednost1=M.Vrednost, Vrednost2=M.Proteini FROM MerenjaZaArt M 
  39217. WHERE M.Sifra_Kup=#TmpCeni.Sifra_Kup AND M.Sifra_Art=#TmpCeni.Sifra_Art AND M.Datum=#TmpCeni.Datum
  39218.  
  39219. CREATE TABLE #TmpPosl
  39220. (Sifra_Kup    char(6),
  39221. Sifra_Art    varchar(20),
  39222. Datum        smalldatetime)
  39223. INSERT INTO #TmpPosl SELECT Sifra_Kup, Sifra_Art, MAX(Datum) FROM MerenjaZaArt WHERE Datum<=@Datum_Do GROUP BY Sifra_Kup, Sifra_Art
  39224.                     --za denot za koj ne e vneseno merenje, da se zemat merenja od posled.den vo periodot
  39225. UPDATE #TmpCeni SET Vrednost1=M.Vrednost, Vrednost2=M.Proteini FROM MerenjaZaArt M, #TmpPosl T
  39226. WHERE #TmpCeni.Vrednost1 IS NULL AND M.Sifra_Kup=#TmpCeni.Sifra_Kup AND M.Sifra_Art=#TmpCeni.Sifra_Art 
  39227. AND M.Datum=T.Datum AND  M.Sifra_Kup=T.Sifra_Kup AND M.Sifra_Art=T.Sifra_Art
  39228.  
  39229. UPDATE #TmpCeni SET Vrednost1=1 WHERE Vrednost1 IS NULL
  39230. UPDATE #TmpCeni SET Vrednost2=1 WHERE Vrednost2 IS NULL
  39231.  
  39232. UPDATE #TmpCeni SET Cena1=C.Cena, Cena2=C.Cena2, DanCena=C.DanCena FROM CenovnikOtkup C, #TmpCeniVazi V 
  39233. WHERE #TmpCeni.Sifra_Art=C.Sifra_Art AND C.Sifra_Art=V.Sifra_Art AND C.Vazi_Od=V.Vazi_Od 
  39234. --AND #TmpCeni.Vrednost1=C.Vrednost1 AND #TmpCeni.Vrednost2=C.Vrednost2
  39235. UPDATE #TmpCeni SET Cena = Cena1*Vrednost1 + Cena2*Vrednost2
  39236.  
  39237. UPDATE #TmpCeni SET #TmpCeni.Cena = #TmpCeni.Cena + C.Cena 
  39238. FROM Cenovnik C WHERE #TmpCeni.Sifra_Kup=C.Sifra_Kup AND #TmpCeni.Sifra_Art=C.Sifra_Art
  39239.  
  39240.                     --za nekoe mleko ako nema cenovnik po vredosti, neka ima default cena
  39241. --UPDATE #TmpCeni SET Cena=C.Cena, DanCena=C.DanCena FROM CenovnikOtkup C, #TmpCeniVazi V 
  39242. --WHERE #TmpCeni.Sifra_Art=C.Sifra_Art AND C.Sifra_Art=V.Sifra_Art AND C.Vazi_Od=V.Vazi_Od 
  39243. --AND #TmpCeni.Vrednost1 IS NULL AND C.Vrednost1=0 AND C.Vrednost2=0
  39244.  
  39245. DELETE FROM #TmpCeni WHERE Kolicina=0
  39246. UPDATE #TmpCeni SET Cena=#TmpCeni.Cena/(1+T.ProcOsn/100) FROM KatArt A, Tarifi T 
  39247. WHERE #TmpCeni.Sifra_Art=A.Sifra_Art AND A.Sifra_Tar=T.Sifra_Tar AND #TmpCeni.DanCena='D'
  39248.  
  39249. SET @SSQL =    'SELECT D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K,
  39250. S.Sifra_Art, A.ImeArt, A.EdMera, C.Cena, 1  Vrednost, C.Cena MagCena, S.DokCena,
  39251. cast(S.Sifra_Oe as varchar(8))+''-''+cast(S.Sifra_Dok as varchar(8))+''/''+Cast(S.Broj_Dok as varchar(8)) Dok, '
  39252. IF @SamoPregl='N'
  39253.     SET @SSQL = @SSQL + 'D.DokrID,'
  39254. ELSE
  39255.     SET @SSQL = @SSQL + 'D.Datum_Dok,'
  39256.  
  39257. SET @SSQL = @SSQL + 'SUM(S.Kolic) Kolic'
  39258. SET @SSQL = @SSQL + ', Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)IzvBezDDV, 
  39259. Sum(S.Kolic)* S.DokCena/(Case When S.DanDokCena=''D'' Then (1+S.POsn/100) Else 1 End)*S.POsn/100 DDV
  39260. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  39261. LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  39262. LEFT OUTER JOIN #TmpCeni C ON S.Sifra_Art=C.Sifra_Art AND D.Sifra_Kup=C.Sifra_Kup AND C.Datum=S.Datum_Dok
  39263. LEFT OUTER JOIN KDrugo1 K1 ON K.KDrugo1=K1.Sifra_1K
  39264. WHERE S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + 
  39265. ''' AND S.Sifra_OE IN (' + @KoiOE_ZaZb + ') AND S.Sifra_Dok IN (' + @KoiTipD_ZaZb + ') '
  39266.  
  39267. IF @SamoPregl='N' OR @Datum_Od IS NULL
  39268.     SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID_Orig FROM DokrVoZbirni) '
  39269. IF @SamoPregl='D' AND @Datum_Od IS NOT NULL
  39270.     SET @SSQL = @SSQL + ' AND D.Datum_Dok >=''' + cast(@Datum_Od as varchar(35))+''' '
  39271. IF @Sifra_Kup_Od IS NOT NULL
  39272.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup>=' + @Sifra_Kup_Od + ' '
  39273. IF @Sifra_Kup_Do IS NOT NULL
  39274.     SET @SSQL = @SSQL + ' AND D.Sifra_Kup<=' + @Sifra_Kup_Do + ' '
  39275. IF @KDrugo1 IS NOT NULL
  39276.     SET @SSQL = @SSQL + ' AND K.KDrugo1=' + cast(@KDrugo1 as varchar(5)) + ' '
  39277. SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K, D.DokrID, S.Sifra_Art, A.ImeArt, A.EdMera, C.Cena, S.DOkCena, S.Posn, S.DanDokCena, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, D.Datum_Dok '
  39278. IF @SamoPregl='N'
  39279.     SET @SSQL = @SSQL + ',D.DokrID '
  39280. ELSE
  39281.     SET @SSQL = @SSQL + ',D.Datum_Dok'
  39282. SET @SSQL = @SSQL + ' ORDER BY D.Sifra_Kup, S.Sifra_Art, D.Datum_Dok'
  39283. --print @SSql
  39284. EXEC (@SSQL)
  39285.  
  39286.  
  39287.  
  39288.  
  39289.  
  39290.  
  39291.  
  39292.  
  39293.  
  39294.  
  39295.  
  39296.  
  39297.  
  39298.  
  39299.  
  39300.  
  39301.  
  39302.  
  39303. Go
  39304. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzadokrvozbirnisr]'))
  39305. drop procedure [dbo].[sp_dajdokzadokrvozbirnisr]
  39306.  
  39307. Go
  39308.  
  39309.  
  39310.  
  39311. CREATE      PROCEDURE sp_DajDokZaDokrVoZbirniSR
  39312.     @Datum_Do        smalldatetime,
  39313.     @KoiOE_ZaZb        varchar(30) = '31,32,33,34',
  39314.     @KoiTipD_ZaZb    varchar(30) = '88,89',
  39315.     @Sifra_Kup_Od    char(6) = NULL,
  39316.     @Sifra_Kup_Do    char(6) = NULL,
  39317.     @SamoPregl        char(1) = 'D',
  39318.     @Datum_Od        smalldatetime = NULL,
  39319.     @Sifra_OE_CeniPlanski smallint = NULL,
  39320.     @Kdrugo1        smallint=NULL
  39321. AS
  39322.     Declare @SSQL varchar(5000)
  39323.     Declare @Usl varchar(1000)
  39324.  
  39325.     CREATE TABLE #TmpArtSkala (Sifra_Art varchar(20))        --art.za presmetka po skala
  39326.     INSERT INTO #TmpArtSkala VALUES ('000099')
  39327.     INSERT INTO #TmpArtSkala VALUES ('000100')
  39328.  
  39329. SET @Usl= ' D.Sifra_OE IN (' + @KoiOE_ZaZb + ') AND D.Sifra_Dok IN (' + 
  39330.     @KoiTipD_ZaZb + ') AND D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' 
  39331.      AND D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  39332. IF @Sifra_Kup_Od IS NOT NULL
  39333.     SET @Usl = @Usl + ' AND D.Sifra_Kup>=' + @Sifra_Kup_Od + ' '
  39334. IF @Sifra_Kup_Do IS NOT NULL
  39335.     SET @Usl = @Usl + ' AND D.Sifra_Kup<=' + @Sifra_Kup_Do + ' '
  39336.  
  39337. CREATE TABLE #TmpKup
  39338. (Sifra_Kup    char(6),
  39339. Sifra_Art    varchar(20),
  39340. Kdrugo1        smallint,
  39341. VkDenovi    smallint,
  39342. ProsNab        decimal(18,4),
  39343. Cena        decimal(18,4))
  39344.  
  39345. SET @SSQL = 'SELECT DISTINCT D.Sifra_Kup, S.Sifra_Art FROM Dokr D INNER JOIN Stavr S ON D.DokrID=S.DokrID WHERE ' +@Usl
  39346. INSERT INTO #TmpKup (Sifra_Kup, Sifra_Art) EXEC (@SSQL)
  39347. IF @KDrugo1 IS NOT NULL
  39348.     DELETE FROM #TmpKup WHERE Sifra_Kup IN (SELECT Sifra_Kup FROM Komint WHERE KDrugo1 IS NULL OR KDrugo1<>@KDrugo1)
  39349.  
  39350. UPDATE #TmpKup SET KDrugo1=K.KDrugo1 FROM Komint K WHERE #TmpKup.Sifra_Kup=K.Sifra_Kup
  39351.  
  39352. CREATE TABLE #TmpP (Sifra_Kup char(6), NPod decimal(18,4))
  39353. SET @SSQL = 'SELECT D.Sifra_Kup, COUNT(DISTINCT D.Datum_Dok) FROM Dokr D INNER JOIN Stavr S ON D.DokrID=S.DokrID 
  39354. WHERE D.Sifra_Kup IN (SELECT Sifra_Kup FROM #TmpKup) AND S.Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala) AND '+@Usl +' GROUP BY D.Sifra_Kup'
  39355. INSERT INTO #TmpP EXEC (@SSQL)
  39356. UPDATE #TmpKup SET VkDenovi = T.NPod FROM #TmpP T WHERE #TmpKup.Sifra_Kup=T.Sifra_Kup AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)
  39357.  
  39358. DELETE FROM #TmpP
  39359. SET @SSQL = 'SELECT D.Sifra_Kup, SUM(S.Kolic) FROM Dokr D INNER JOIN Stavr S ON S.DokrID=D.DokrID
  39360. WHERE D.Sifra_Kup IN (SELECT Sifra_Kup FROM #TmpKup) AND S.Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala) AND ' +@Usl +' GROUP BY D.Sifra_Kup'
  39361. INSERT INTO #TmpP EXEC (@SSQL)
  39362. UPDATE #TmpKup SET ProsNab = T.NPod/VkDenovi FROM #TmpP T WHERE #TmpKup.Sifra_Kup=T.Sifra_Kup AND #TmpKup.VkDenovi<>0 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)
  39363.  
  39364. /*UPDATE #TmpKup SET Cena=19 WHERE Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)
  39365. UPDATE #TmpKup SET Cena=19.5 WHERE ProsNab>50 AND ProsNab<=100 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)
  39366. UPDATE #TmpKup SET Cena=20 WHERE ProsNab>100 AND ProsNab<=150 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)
  39367. UPDATE #TmpKup SET Cena=20.25 WHERE ProsNab>150 AND ProsNab<=200 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)
  39368. UPDATE #TmpKup SET Cena=20.5 WHERE ProsNab>200 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)   */
  39369.  
  39370. UPDATE #TmpKup SET Cena=K.Cena FROM KDrugo1 K WHERE Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala) AND #TmpKup.KDrugo1=K.Sifra_1K
  39371. UPDATE #TmpKup SET Cena=K.Cena+0.5 FROM KDrugo1 K WHERE ProsNab>50 AND ProsNab<=100 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala)  AND #TmpKup.KDrugo1=K.Sifra_1K
  39372. UPDATE #TmpKup SET Cena=K.Cena+1 FROM KDrugo1 K WHERE ProsNab>100 AND ProsNab<=150 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala) AND #TmpKup.KDrugo1=K.Sifra_1K
  39373. UPDATE #TmpKup SET Cena=K.Cena+1.25 FROM KDrugo1 K WHERE ProsNab>150 AND ProsNab<=200 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala) AND #TmpKup.KDrugo1=K.Sifra_1K
  39374. UPDATE #TmpKup SET Cena=K.Cena+1.5 FROM KDrugo1 K WHERE ProsNab>200 AND Sifra_Art IN (SELECT Sifra_Art FROM #TmpArtSkala) AND #TmpKup.KDrugo1=K.Sifra_1K
  39375.  
  39376. UPDATE #TmpKup SET Cena = C.Cena FROM Cenovnik C WHERE #TmpKup.Sifra_Kup=C.Sifra_Kup AND #TmpKup.Sifra_Art=C.Sifra_Art
  39377.  
  39378. SET @SSQL =    'SELECT D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K,
  39379. S.Sifra_Art, A.ImeArt, A.EdMera, C.Cena, 1 Vrednost, C.Cena MagCena, '
  39380. IF @SamoPregl='N'
  39381.     SET @SSQL = @SSQL + 'D.DokrID,'
  39382. ELSE
  39383.     SET @SSQL = @SSQL + 'D.Datum_Dok,'
  39384.  
  39385. SET @SSQL = @SSQL + 'SUM(S.Kolic) Kolic
  39386. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  39387. LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  39388. LEFT OUTER JOIN KDrugo1 K1 ON K.KDrugo1=K1.Sifra_1K
  39389. INNER JOIN #TmpKup C ON D.Sifra_Kup=C.Sifra_Kup AND C.Sifra_Art=S.Sifra_Art
  39390. WHERE ' + @Usl
  39391. IF @SamoPregl='N' --OR @Datum_Od IS NULL
  39392.     SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID_Orig FROM DokrVoZbirni) '
  39393. --IF @SamoPregl='D' AND @Datum_Od IS NOT NULL
  39394. --    SET @SSQL = @SSQL + ' AND D.Datum_Dok >=''' + cast(@Datum_Od as varchar(35))+''' '
  39395. SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup, K.ImeKup, K.Adresa, K.Smesto, K.Danocen, K.KDrugo1, K1.Ime_1K, D.DokrID, 
  39396. S.Sifra_Art, A.ImeArt, A.EdMera, C.Cena'
  39397. IF @SamoPregl='N'
  39398.     SET @SSQL = @SSQL + ',D.DokrID '
  39399. ELSE
  39400.     SET @SSQL = @SSQL + ',D.Datum_Dok'
  39401. SET @SSQL = @SSQL + ' ORDER BY D.Sifra_Kup, S.Sifra_Art'
  39402. EXEC (@SSQL)
  39403.  
  39404.  
  39405.  
  39406.  
  39407.  
  39408.  
  39409. Go
  39410. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzamob]'))
  39411. drop procedure [dbo].[sp_dajdokzamob]
  39412.  
  39413. Go
  39414.  
  39415.  
  39416.  
  39417.  
  39418.  
  39419. CREATE      PROCEDURE sp_DajDokZaMob
  39420.     @Sifra_Pat As smallint,
  39421.     @KoiOe As varchar(200),
  39422.     @KoiTipDok As varchar(200), 
  39423.     @Datum_Od As smalldatetime, 
  39424.     @Sifra_Kup char(6)=NULL
  39425. AS
  39426.     DECLARE @SSQL varchar(2000)
  39427.     SET @SSQL = 'SELECT DokrID,Sifra_Oe, Sifra_Dok, Broj_Dok, Sifra_kup, Sifra_Obj, Uces,
  39428.                 Rok, Sifra_Mest, Datum_Dok, Identif_Br, Kasa, Spec_Forma_Pec, Sifra_Div, Day(Datum_Dok) Den, Month(Datum_Dok) Mesec, Year(Datum_Dok) God
  39429.                 FROM Dokr WHERE Datum_Dok >='''+cast(@Datum_Od as varchar(35))+''' '
  39430.     IF @Sifra_Pat IS NOT NULL
  39431.         SET @SSQL = @SSQL + ' AND Sifra_Pat='+cast(@Sifra_Pat as varchar(5))
  39432.     IF @KoiOE IS NOT NULL
  39433.         SET @SSQL = @SSQL + ' AND Sifra_OE IN ('''+@KoiOe+''') '
  39434.     IF @KoiTipDok IS NOT NULL
  39435.         SET @SSQL = @SSQL + ' AND Sifra_Dok IN ('''+@KoiTipDok+''') '
  39436.     IF @Sifra_Kup IS NOT NULL
  39437.         SET @SSQL = @SSQL + ' AND Sifra_Kup='+@Sifra_Kup 
  39438.     SET @SSQL = @SSQL + ' ORDER BY Sifra_Oe, Sifra_Dok, Broj_Dok'
  39439. EXEC(@SSQL)
  39440.  
  39441.  
  39442.  
  39443. Go
  39444. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajdokzbzaazur]'))
  39445. drop procedure [dbo].[sp_dajdokzbzaazur]
  39446.  
  39447. Go
  39448.  
  39449.  
  39450.  
  39451.  
  39452.  
  39453. CREATE    PROCEDURE sp_DajDokZbZaAzur
  39454.     @Sifra_OE Smallint,
  39455.     @Datum_Od Smalldatetime,
  39456.     @Datum_Do Smalldatetime,
  39457.     @Sifra_Dok  smallint,
  39458.     @BrDokOd int,
  39459.     @BrDokDo int,
  39460.     @Sifra_Prim    smallint=null,
  39461.     @SamoLikvidirani char(1)='N',
  39462.     @DivOdPat    char(1)='N',
  39463.     @OdrediImaPovDivVoDok char(1)='N'
  39464. AS
  39465. Declare @SSQL Varchar(4000), @SSQLUsl varchar(2000)
  39466. SET @SSQLUsl=' WHERE D.BROJ_NAL IS NULL AND D.SIFRA_DOK = ' + cast(@Sifra_Dok as varchar(5)) + ' AND D.SIFRA_OE '
  39467. If @Sifra_OE IS NULL
  39468.     Set @SSQLUsl =  @SSQLUsl + 'IN (SELECT Sifra_OE FROM ORGED WHERE OrgDaliFin = ''D'')'
  39469. Else
  39470.     Set @SSQLUsl =  @SSQLUsl + '= ' + Cast (@Sifra_OE as varchar(5))
  39471. If @BrDokOd  IS NOT NULL
  39472.     Set @SSQLUsl =  @SSQLUsl + ' AND D.BROJ_DOK >= ' + Cast(@BrDokOd as varchar(10))
  39473. If @BrDokDo  IS NOT NULL
  39474.     Set @SSQLUsl =  @SSQLUsl + ' AND D.BROJ_DOK <= ' + Cast(@BrDokDo as varchar(10))
  39475. If @Datum_Od Is NOT Null
  39476.     SET @SSQLUsl = @SSQLUsl + ' AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  39477. If @Datum_Do Is NOT Null
  39478.     SET @SSQLUsl = @SSQLUsl + ' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  39479. IF @SamoLikvidirani='D'
  39480.     SET @SSQLUsl = @SSQLUsl + ' AND (D.Likvid IS NULL OR D.Likvid<>''M'')'    
  39481. --If @Sifra_Prim IS NOT NULL            OVOJ param zaradi uniformnost
  39482. --    Set @SSQLUsl =  @SSQLUsl + ' AND Sifra_Prim = ' + Cast (@Sifra_Prim as varchar(5))
  39483.  
  39484. IF @OdrediImaPovDivVoDok='D'
  39485. Begin
  39486.     CREATE     TABLE #TmpDiv
  39487.     (DokrZbID    int, BrDiv smallint, Sifra_Div smallint)
  39488.     SET @SSQL = 'SELECT SZ.DokrZbID, COUNT(Distinct A.Sifra_Div) FROM DokrZbSta SZ INNER JOIN DokrZb D ON SZ.DokrZbID=D.DokrZbID
  39489.     INNER JOIN Stavr S ON SZ.DokrID=S.DokrID INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art '
  39490.     INSERT INTO #TmpDiv (DokrZbID, BrDiv) EXEC (@SSQL + @SSQLUsl +' GROUP BY SZ.DokrZbID')
  39491. --print @SSQLPom + @SSQLUsl
  39492.     UPDATE #TmpDiv SET Sifra_Div=A.Sifra_Div FROM DokrZbSta SZ, Stavr S, KatArt A 
  39493.     WHERE #TmpDiv.BrDiv=1 AND #TmpDiv.DokrZbID=SZ.DokrZbID AND SZ.DokrID=S.DokrID AND S.Sifra_Art=A.Sifra_Art
  39494. End
  39495.  
  39496. Set @SSQL = 'SELECT D.*, P.Sifra_Div, P.Sifra_TrosM, T.Sif_GrDok, K.Kto_Anal Kto_AnalKup, '
  39497. IF @OdrediImaPovDivVoDok='D'
  39498.     SET @SSQL = @SSQL + '#TmpDiv.BrDiv, #TmpDiv.Sifra_Div Sifra_Div_OdArt '
  39499. ELSE
  39500.     SET @SSQL = @SSQL + '0 BrDiv, 0 Sifra_Div_OdArt  '
  39501. Set @SSQL = @SSQL + ' FROM DokrZb D INNER JOIN TipDok T ON D.Sifra_Dok=T.Sifra_Dok
  39502.     LEFT OUTER JOIN Patnici P ON D.Sifra_Pat=P.Sifra_Pat 
  39503.     LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup ' 
  39504. IF @OdrediImaPovDivVoDok='D'
  39505.     SET @SSQL = @SSQL + ' LEFT OUTER JOIN #TmpDiv ON D.DokrZbID=#TmpDiv.DokrZbID '
  39506. SET @SSQL = @SSQL + @SSQLUsl+ ' ORDER BY D.Sifra_OE, D.Broj_Dok '    
  39507. EXEC(@SSQL)
  39508.  
  39509.  
  39510.  
  39511.  
  39512.  
  39513.  
  39514.  
  39515. Go
  39516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajfakturi]'))
  39517. drop procedure [dbo].[sp_dajfakturi]
  39518.  
  39519. Go
  39520. CREATE PROCEDURE sp_DajFakturi
  39521.     @Sifra_Oe    smallint = Null,
  39522.     @Sifra_Dok    smallint = Null,
  39523.     @Datum_Od    smalldatetime = Null,
  39524.     @Datum_Do    smalldatetime = Null,
  39525.     @Dokr_Stat    char(1) = Null,        -- R - Vo faza na inicijalna faktura,     K - Zatvoren
  39526.     @Sifra_Reg    smallint = Null,
  39527.     @Sifra_Prev    char(6) = Null,
  39528.     @Raspredeleni    char(1) = Null        -- D - Raspredeleni po prevoznik,         N - Neraspredeleni (nema prevoznik)
  39529. AS
  39530.     Declare @SSQL as varchar(4000)
  39531.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, Kup.ImeKup, D.Sifra_Obj, O.ImeObj, 
  39532.             D.Dokr_Stat, D.Toc200 as Iznos, G.ImeGrad, D.Sifra_Prev, P.ImePrev
  39533.             From Dokr D
  39534.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  39535.             Left Outer Join KObjekti O On O.Sifra_Kup=D.Sifra_Kup and O.Sifra_Obj=D.Sifra_Obj
  39536.             Left Outer Join Grad G On G.Sifra_Grad=(Case When D.Sifra_Obj Is Not Null Then O.Sifra_Grad Else Kup.Sifra_Grad End)
  39537.             Left Outer Join Prevoznik P On P.Sifra_Prev=D.Sifra_Prev
  39538.             Where Sifra_Za = 1 '
  39539.     If @Sifra_Oe Is Not Null
  39540.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  39541.     If @Sifra_Dok Is Not Null
  39542.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + cast(@Sifra_Dok as varchar(6)) + ' '
  39543.     If @Datum_Od Is Not Null
  39544.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  39545.     If @Datum_Do Is Not Null
  39546.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  39547.     If @Dokr_Stat = 'R'
  39548.         Set @SSQL = @SSQL + ' And (D.Dokr_Stat = ''R'' Or D.Dokr_Stat Is Null) '
  39549.     Else If @Dokr_Stat = 'K'
  39550.         Set @SSQL  =@SSQL + ' And D.Dokr_Stat = ''K'' '
  39551.     If @Sifra_Reg Is Not Null
  39552.             Set @SSQL = @SSQL + ' And ((O.Sifra_Reg Is Not Null And O.Sifra_Reg = ' + cast(@Sifra_Reg as varchar(6)) + ') 
  39553.             OR ( O.Sifra_Reg Is Null and KUP.Sifra_Reg = ' + cast(@Sifra_Reg as varchar(6)) + ')) '     
  39554.     If @Sifra_Prev Is Not Null
  39555.         Set @SSQL = @SSQL + ' And D.Sifra_Prev = ' + cast(@Sifra_Prev as varchar(6)) + ' '
  39556.     If @Raspredeleni = 'D'
  39557.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Not Null '
  39558.     Else If @Raspredeleni = 'N'
  39559.         Set @SSQL = @SSQL + ' And (D.Sifra_Prev Is Null Or D.Sifra_Prev = '''') '
  39560. print @SSQL
  39561.     Exec(@SSQL)
  39562.  
  39563.  
  39564. Go
  39565. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajfindokzagstav]'))
  39566. drop procedure [dbo].[sp_dajfindokzagstav]
  39567.  
  39568. Go
  39569.  
  39570.  
  39571.  
  39572.  
  39573. CREATE    PROCEDURE sp_DajFinDokZaGStav
  39574.     @Sifra_OE Smallint,
  39575.     @Datum_Od Smalldatetime,
  39576.     @Datum_Do Smalldatetime,
  39577.     @Sifra_Dok  smallint,
  39578.     @Sifra_Nal    smallint = NULL,
  39579.     @BrDokOd int,
  39580.     @BrDokDo int
  39581. AS
  39582.     Declare @SSQL Varchar(4000)
  39583.     Set @SSQL = 'SELECT A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Nal, A.Broj_Nal, P.Sifra_Div, P.Sifra_pat, P.Sifra_TrosM
  39584.                 FROM AnFinDok A LEFT OUTER JOIN Patnici P ON A.Sifra_Pat=P.Sifra_Pat
  39585.                  WHERE (A.OdNadvor IS NULL or LTrim(A.OdNadvor)='''') AND A.Sifra_Dok = ' + cast(@Sifra_Dok as varchar(5)) + ' '
  39586.     If @Sifra_OE IS NOT NULL
  39587.         Set @SSQL =  @SSQL + ' AND A.Sifra_OE = ' + Cast (@Sifra_OE as varchar(5))
  39588.     If @Sifra_Nal IS NOT NULL
  39589.         Set @SSQL =  @SSQL + ' AND A.Sifra_Nal = ' + Cast (@Sifra_Nal as varchar(5))
  39590.     If @BrDokOd  IS NOT NULL
  39591.         Set @SSQL =  @SSQL + ' AND A.BROJ_DOK >= ' + Cast(@BrDokOd as varchar(10))
  39592.     If @BrDokDo  IS NOT NULL
  39593.         Set @SSQL =  @SSQL + ' AND A.BROJ_DOK <= ' + Cast(@BrDokDo as varchar(10))
  39594.     If @Datum_Od Is NOT Null
  39595.         SET @SSQL = @SSQL + ' AND A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  39596.     If @Datum_Do Is NOT Null
  39597.          SET @SSQL = @SSQL + ' AND A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  39598. --print(@SSQL)
  39599.     EXEC(@SSQL)
  39600.  
  39601.  
  39602.  
  39603.  
  39604. Go
  39605. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajgotovpro_sostavkontr]'))
  39606. drop procedure [dbo].[sp_dajgotovpro_sostavkontr]
  39607.  
  39608. Go
  39609.  
  39610.  
  39611. CREATE PROCEDURE sp_DajGotovPro_SostavKontr
  39612.     @Sifra_Art    varchar (20)
  39613. AS
  39614.     SELECT DISTINCT KontrSer from SostavKontr
  39615.         where Sifra_Art = @SifrA_art
  39616.  
  39617.  
  39618.  
  39619. Go
  39620. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajgrorgzaoe]'))
  39621. drop procedure [dbo].[sp_dajgrorgzaoe]
  39622.  
  39623. Go
  39624.  
  39625. CREATE    PROCEDURE sp_DajGrOrgZaOE
  39626.     @Sifra_OE   Smallint,
  39627.     @Sif_GrOrg  varchar(12)  OUTPUT
  39628. AS
  39629. SELECT @Sif_GrOrg = G.Sif_GrOrg FROM GrOrg G
  39630. Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @Sifra_OE  
  39631. WHERE G.Edinstvena='D'
  39632.  
  39633.  
  39634.  
  39635. Go
  39636. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajgrupizawebnarac]'))
  39637. drop procedure [dbo].[sp_dajgrupizawebnarac]
  39638.  
  39639. Go
  39640.  
  39641.  
  39642.  
  39643.  
  39644.  
  39645. CREATE      PROCEDURE sp_DajGrupiZaWEBNarac
  39646.     @WebPodelPoSto        varchar(5) = Null,
  39647.     @ZemiArtSamoOdAsortLst    smallint = Null,
  39648.     @SamoVoPDA            char(1)=NULL
  39649. AS
  39650. IF @WebPodelPoSto IS NOT NULL
  39651.     BEGIN
  39652.     IF @WebPodelPoSto = 'DP'
  39653.         IF @SamoVoPDA IS NOT NULL
  39654.             Select Sifra_Div as Sifra_Gr,ImeDiv as Ime_Gr,'' Propagiraj From Divizii
  39655.         ELSE
  39656.             SELECT Sifra_Gr, Ime_Gr, '' Propagiraj FROM Grupi
  39657.     END
  39658. ELSE 
  39659.   SELECT G.*, L.Reden_Broj FROM Grupi G INNER JOIN KatAsortLista L ON G.Sifra_gr=L.Sifra1 WHERE L.Broj_ALista = @ZemiArtSamoOdAsortLst
  39660.  
  39661.  
  39662.  
  39663.  
  39664.  
  39665.  
  39666.  
  39667. Go
  39668. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajgrupizawebnarac1]'))
  39669. drop procedure [dbo].[sp_dajgrupizawebnarac1]
  39670.  
  39671. Go
  39672.  
  39673. CREATE  PROCEDURE sp_DajGrupiZaWEBNarac1
  39674. AS
  39675. SELECT '001' As Sifra_Gr, '.' As Ime_Gr, '' Propagiraj  
  39676.  
  39677.  
  39678.  
  39679. Go
  39680. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajizn_marzazacena]'))
  39681. drop procedure [dbo].[sp_dajizn_marzazacena]
  39682.  
  39683. Go
  39684. CREATE PROCEDURE Sp_DajIzn_MarzaZaCena
  39685.     @Cena decimal(18,6),
  39686.     @Izn_Marza decimal(18,6) output
  39687. AS
  39688. SELECT @Izn_Marza=Izn_Marza FROM LstPartic 
  39689. WHERE @Cena>=Iznos_Od AND @Cena<=Iznos_Do
  39690.  
  39691.  
  39692.  
  39693. Go
  39694. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajiznosodkasstav]'))
  39695. drop procedure [dbo].[sp_dajiznosodkasstav]
  39696.  
  39697. Go
  39698.  
  39699. CREATE  PROCEDURE sp_DajIznosOdKasStav
  39700.     @Sifra_Nal    smallint,
  39701.     @Datum_Nal    smalldatetime,
  39702.     @Kto_Anal    char(10),
  39703.     @DP            char(1), 
  39704.     @Sifra_OE    smallint,
  39705.     @ProkDali    char(1)='D',
  39706.     @Iznos        decimal(18,4)= 0 OUTPUT
  39707. AS
  39708. IF @DP='D'
  39709.     Begin
  39710.     IF @ProkDali='N'
  39711.     Begin
  39712.         SELECT @Iznos=SUM(Dolzi) FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE
  39713.         SELECT KStaID FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE
  39714.     End
  39715.     ELSE
  39716.     Begin
  39717.         SELECT @Iznos=SUM(Dolzi) FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE AND Proknizen IS NULL
  39718.         SELECT KStaID FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE AND Proknizen IS NULL
  39719.     End
  39720.     End
  39721. ELSE
  39722.     Begin
  39723.     IF @ProkDali='N'
  39724.     Begin
  39725.         SELECT @Iznos=SUM(Pobaruva) FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE
  39726.         SELECT KStaID FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE
  39727.     End
  39728.     ELSE
  39729.     Begin
  39730.         SELECT @Iznos=SUM(Pobaruva) FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE AND Proknizen IS NULL
  39731.         SELECT KStaID FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Dod_Datum=@Datum_Nal AND Kto_Anal=@Kto_Anal AND Sifra_OE=@Sifra_OE AND Proknizen IS NULL
  39732.     End
  39733.     End
  39734.  
  39735.  
  39736.  
  39737. Go
  39738. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkaraktzadrugo7]'))
  39739. drop procedure [dbo].[sp_dajkaraktzadrugo7]
  39740.  
  39741. Go
  39742.  
  39743. CREATE  PROCEDURE sp_DajKaraktZaDrugo7
  39744.     @Sifra_7     SMALLINT,
  39745.     @Sifra_Art    VARCHAR(20)
  39746. AS
  39747.  
  39748. CREATE TABLE #Tmp1
  39749. (Sifra_Karakt    smallint,
  39750. ImeKarakt    nvarchar(40))
  39751.  
  39752. -- Zemi ja listata na site mozzni karakteristiki na ovoj tip 
  39753. INSERT INTO #Tmp1 (Sifra_Karakt, ImeKarakt) 
  39754. SELECT TK.Sifra_Karakt, K.ImeKarakt 
  39755. FROM TipKarakt TK
  39756. inner JOIN Karakterist K ON TK.Sifra_Karakt = K.Sifra_Karakt 
  39757. WHERE TK.Sifra_7 = @Sifra_7  
  39758.  
  39759. -- Vidi ako veke ima nekoi karakteristiki so PODATOCI, zemi go PODATOCITE
  39760. SELECT KK.Sifra_Karakt, KK.ImeKarakt, A.Karakt 
  39761. FROM #Tmp1 KK
  39762. left outer JOIN KatKarakt A ON KK.Sifra_Karakt = A.Sifra_Karakt and A.Sifra_Art = @Sifra_Art
  39763. ORDER BY KK.Sifra_Karakt
  39764.  
  39765.  
  39766.  
  39767.  
  39768. Go
  39769. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkartcareklzakup]'))
  39770. drop procedure [dbo].[sp_dajkartcareklzakup]
  39771.  
  39772. Go
  39773. CREATE PROCEDURE sp_DajKartcaReklZaKup
  39774.     @Sifra_Kup    char(6),
  39775.     @Sifra_Obj    smallint,
  39776.     @Sifra_Pat    smallint = NULL
  39777. AS
  39778. Declare @SSQL varchar(3000)
  39779. SET @SSQL='SELECT S.Sifra_Art, A.ImeArt, A.Lokacija, S.Kolic, S.Datum_Dok, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok
  39780. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID 
  39781. INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  39782. WHERE D.Sifra_Kup='+@Sifra_Kup +' AND D.VlIzl=''I'' AND A.Lokacija IN (''OS'', ''REK'', ''REP'') '
  39783. IF @Sifra_Obj IS NOT NULL
  39784.     SET @SSQL =@SSQL +' AND D.Sifra_Obj='+cast(@Sifra_Obj as varchar(5))+' '
  39785. IF @Sifra_Pat IS NOT NULL
  39786.     SET @SSQL =@SSQL +' AND D.Sifra_Pat='+cast(@Sifra_Pat as varchar(5))+' '
  39787. EXEC(@SSQL)
  39788.  
  39789. Go
  39790. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkasovizakniz]'))
  39791. drop procedure [dbo].[sp_dajkasovizakniz]
  39792.  
  39793. Go
  39794.  
  39795.  
  39796.  
  39797.  
  39798.  
  39799.  
  39800.  
  39801.  
  39802. CREATE         PROCEDURE sp_DajKasoviZaKniz
  39803.     @Sifra_Nal Smallint,
  39804.     @Broj_Nal  int,
  39805.     @KnizBlagPoStavki char(1)=NULL
  39806. AS
  39807.     CREATE TABLE #TmpKas
  39808. (    Sifra_OE    smallint,
  39809.     Kto_Anal    char(10),
  39810.     KojaVal        char(3),
  39811.     Sifra_Div    smallint,
  39812.     Dolzi        decimal(18,2),
  39813.     Pobaruva    decimal(18,2),
  39814.     Dev_Dolzi    decimal(18,2),
  39815.     Dev_Pobar    decimal(18,2),
  39816.     Opis        varchar(40),
  39817.     Danok1         decimal(18, 4),
  39818.     Danok2         decimal(18, 4),
  39819.     Kto_Osnovica char (10),
  39820.     Kto_Osn_DaliDev char(1),
  39821.     Kto_Osn_DaliKup char(1),
  39822.     Kto_Blag    char(10) 
  39823. )
  39824. IF @KnizBlagPoStavki='D'
  39825. Begin
  39826.     INSERT INTO #TmpKas (Sifra_OE, Kto_Anal, KojaVal, Sifra_Div, Dolzi, Pobaruva, Dev_Dolzi, Dev_Pobar, Opis, Danok1, Danok2, Kto_Osnovica)    
  39827.     SELECT K.Sifra_OE, K.Kto_Anal, K.KojaVal, K.Sifra_Div, K.Dolzi, K.Pobaruva, K.Dev_Dolzi, K.Dev_Pobar, 
  39828.     substring('K'+P_I+Cast(K.Broj_Dok as varchar(8))+' '+Substring(Case WHEN Kup.ImeKup IS NULL THEN K.Opis ELSE rtrim(K.Opis)+' '+ Kup.ImeKup END,1,40),1,40), 
  39829.     K.Danok1, K.Danok2, K.Kto_Osnovica
  39830.     FROM KasStav K LEFT OUTER JOIN AnFinDok A ON K.AnID=A.AnID LEFT OUTER JOIN Komint Kup ON A.Sifra_Kup=Kup.Sifra_Kup
  39831.     WHERE K.Sifra_Nal = @Sifra_Nal  AND K.Broj_Nal = @Broj_Nal  
  39832. End
  39833. ELSE IF @KnizBlagPoStavki='S'
  39834. Begin
  39835.     INSERT INTO #TmpKas (Sifra_OE, Kto_Anal, KojaVal, Sifra_Div, Dolzi, Pobaruva, Dev_Dolzi, Dev_Pobar, Opis)    
  39836.     SELECT K.Sifra_OE, K.Kto_Anal, K.KojaVal, K.Sifra_Div, K.Dolzi, K.Pobaruva, K.Dev_Dolzi, K.Dev_Pobar, 
  39837.     substring('K'+P_I+Cast(K.Broj_Dok as varchar(8))+' '+Substring(Case WHEN Kup.ImeKup IS NULL THEN K.Opis ELSE rtrim(K.Opis)+' '+ Kup.ImeKup END,1,40),1,40)
  39838.     FROM KasStav K LEFT OUTER JOIN AnFinDok A ON K.AnID=A.AnID LEFT OUTER JOIN Komint Kup ON A.Sifra_Kup=Kup.Sifra_Kup
  39839.     LEFT OUTER JOIN KasStavDetal KD ON K.KStaID = KD.KStaID
  39840.     WHERE K.Sifra_Nal = @Sifra_Nal AND K.Broj_Nal = @Broj_Nal AND KD.KStaID IS NULL
  39841.  
  39842.     INSERT INTO #TmpKas (Sifra_OE, Kto_Anal, KojaVal, Sifra_Div, Dolzi, Pobaruva, Dev_Dolzi, Dev_Pobar, Opis)    
  39843.     SELECT K.Sifra_OE, KD.Kto_Anal, K.KojaVal, K.Sifra_Div, 
  39844.     CASE WHEN K.Dolzi<>0 THEN KD.Iznos ELSE 0 END, CASE WHEN K.Pobaruva<>0 THEN KD.Iznos ELSE 0 END,
  39845.     CASE WHEN K.Dolzi<>0 AND K.Kurs>0 THEN KD.Iznos/K.Kurs ELSE 0 END, CASE WHEN K.Pobaruva<>0 AND K.Kurs>0 THEN KD.Iznos/K.Kurs ELSE 0 END,
  39846.     substring('K'+P_I+Cast(K.Broj_Dok as varchar(8))+' '+Substring(Case WHEN Kup.ImeKup IS NULL THEN K.Opis ELSE rtrim(K.Opis)+' '+ Kup.ImeKup END,1,40),1,40)
  39847.     FROM KasStav K LEFT OUTER JOIN AnFinDok A ON K.AnID=A.AnID LEFT OUTER JOIN Komint Kup ON A.Sifra_Kup=Kup.Sifra_Kup
  39848.     LEFT OUTER JOIN KasStavDetal KD ON K.KStaID = KD.KStaID
  39849.     WHERE K.Sifra_Nal = @Sifra_Nal AND K.Broj_Nal = @Broj_Nal AND KD.KStaID IS NOT NULL
  39850.  
  39851. End
  39852. ELSE 
  39853. Begin
  39854.     INSERT INTO #TmpKas (Sifra_OE, Kto_Anal, KojaVal, Sifra_Div, Dolzi, Pobaruva, Dev_Dolzi, Dev_Pobar)    
  39855.     SELECT Sifra_OE, Kto_Anal, KojaVal, Sifra_Div, Sum(Dolzi), Sum(Pobaruva), Sum(Dev_Dolzi), Sum(Dev_Pobar) FROM KasStav
  39856.     WHERE Sifra_Nal = @Sifra_Nal  AND  Broj_Nal = @Broj_Nal AND 
  39857.     Kto_Anal IN (SELECT Kto_Anal FROM Anal WHERE DaliOrg='D') AND Kto_Osnovica IS NULL
  39858.     GROUP BY Sifra_OE, Kto_Anal, KojaVal, Sifra_Div
  39859.     
  39860.     INSERT INTO #TmpKas (Kto_Anal, KojaVal, Sifra_Div, Dolzi, Pobaruva, Dev_Dolzi, Dev_Pobar)    
  39861.     SELECT Kto_Anal, KojaVal, Sifra_Div, Sum(Dolzi), Sum(Pobaruva), Sum(Dev_Dolzi), Sum(Dev_Pobar) FROM KasStav
  39862.     WHERE Sifra_Nal = @Sifra_Nal  AND  Broj_Nal = @Broj_Nal AND 
  39863.     Kto_Anal IN (SELECT Kto_Anal FROM Anal WHERE DaliOrg IS NULL or DaliOrg<>'D') AND Kto_Osnovica IS NULL
  39864.     GROUP BY Kto_Anal, KojaVal, Sifra_Div 
  39865.     
  39866.     INSERT INTO #TmpKas (Sifra_OE, Kto_Anal, KojaVal, Sifra_Div, Dolzi, Pobaruva, Dev_Dolzi, Dev_Pobar, Opis, Danok1, Danok2, Kto_Osnovica)    
  39867.     SELECT K.Sifra_OE, K.Kto_Anal, K.KojaVal, K.Sifra_Div, K.Dolzi, K.Pobaruva, K.Dev_Dolzi, K.Dev_Pobar, 
  39868.     Substring(Case WHEN Kup.ImeKup IS NULL THEN K.Opis ELSE rtrim(K.Opis)+' '+ Kup.ImeKup END,1,40), K.Danok1, K.Danok2, K.Kto_Osnovica
  39869.     FROM KasStav K LEFT OUTER JOIN AnFinDok A ON K.AnID=A.AnID LEFT OUTER JOIN Komint Kup ON A.Sifra_Kup=Kup.Sifra_Kup
  39870.     WHERE K.Sifra_Nal = @Sifra_Nal  AND K.Broj_Nal = @Broj_Nal AND Kto_Osnovica IS NOT NULL
  39871. End
  39872.  
  39873.     UPDATE #TmpKas SET Kto_Blag = KrsLista.Kto_Blag FROM KrsLista WHERE #TmpKas.KojaVal IS NOT NULL AND #TmpKas.KojaVal=KrsLista.sImeVal
  39874.     UPDATE #TmpKas SET Kto_Osn_DaliDev=A.DaliDev, Kto_Osn_DaliKup=A.DaliKupuv FROM Anal A WHERE #TmpKas.Kto_Osnovica=A.Kto_Anal
  39875.  
  39876.     SELECT * FROM #TmpKas
  39877.  
  39878.  
  39879.  
  39880.  
  39881.  
  39882.  
  39883.  
  39884.  
  39885. Go
  39886. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkasovizaknizae]'))
  39887. drop procedure [dbo].[sp_dajkasovizaknizae]
  39888.  
  39889. Go
  39890.  
  39891. CREATE  PROCEDURE sp_DajKasoviZaKnizAE
  39892.     @Sifra_Nal    smallint,
  39893.     @Broj_Nal    smallint
  39894. AS
  39895. CREATE TABLE #TmpKasa
  39896. (TipBlag    char(3),
  39897. P_I            char(1),
  39898. Dolzi        decimal(18,2),
  39899. Pobaruva    decimal(18,2),
  39900. Dev_Dolzi    decimal(18,2),
  39901. Dev_Pobar    decimal(18,2),
  39902. KojaVal        char(3),
  39903. POsn        decimal(5,2),
  39904. Sifra_Nac    smallint,
  39905. KasaGrupa    char(10))
  39906. INSERT INTO #TmpKasa (TipBlag, P_I,Sifra_Nac, KasaGrupa,KojaVal, Dolzi, Pobaruva, Dev_Dolzi,Dev_Pobar)
  39907. SELECT TipBlag, P_I,Sifra_Nac, KasaGrupa,KojaVal, SUM(Dolzi), SUM(Pobaruva), SUM(Dev_Dolzi),SUM(Dev_Pobar)
  39908. FROM KasStav WHERE Sifra_Nal=@Sifra_Nal AND Broj_Nal=@Broj_Nal GROUP BY TipBlag, P_I,Sifra_Nac, KasaGrupa,KojaVal
  39909. SELECT K.*, N.ImeNac from #TmpKasa K LEFT OUTER JOIN NacPlak N ON K.Sifra_Nac=N.Sifra_Nac
  39910. ORDER BY K.TipBlag, K.KasaGrupa, K.Sifra_Nac, K.P_I 
  39911.  
  39912.  
  39913.  
  39914. Go
  39915. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkatasortlisti]'))
  39916. drop procedure [dbo].[sp_dajkatasortlisti]
  39917.  
  39918. Go
  39919. CREATE    PROCEDURE sp_DajKatAsortListi
  39920.     @Broj_ALista    smallint,
  39921.     @Kolku_DenaIzm    smallint=0
  39922. AS
  39923.     Declare @KatAsortPoSto as char(5)
  39924.     SELECT @KatAsortPoSto = KatAsortPoSto FROM Konfig        
  39925. CREATE TABLE #TmpAsortLst
  39926. (Sif1    varchar(10),
  39927. Sif2    varchar(10),
  39928. I1    varchar(40),
  39929. I2    varchar(40),
  39930. Rbr    int,
  39931. Rbr1    int)
  39932. /*IF @KatAsortPoSto IS NULL OR RTrim(@KatAsortPoSto) = '' 
  39933. Begin
  39934.     SELECT * FROM #TmpAsortLst
  39935.     RETURN
  39936. End    */
  39937. CREATE TABLE #TmpAsortDop
  39938. (Sif1    varchar(10),
  39939. Sif2    varchar(10),
  39940. Rbr    int,
  39941. Rbr1    int NOT NULL IDENTITY (1, 1))
  39942. Declare @SSQL    varchar(1000)
  39943. Declare @DatOd     smalldatetime
  39944. SET @SSQL='SELECT Sifra1, Sifra2, Reden_Broj FROM KatAsortLista WHERE Broj_ALista='+cast(@Broj_ALista as varchar(6))
  39945. IF @Kolku_DenaIzm IS NOT NULL AND @Kolku_DenaIzm>0
  39946. Begin
  39947.     SET @DatOd=DateAdd(day, @Kolku_DenaIzm * -1, GetDate())
  39948.     SET @SSQL = @SSQL + ' AND Datum_Vnes >= ''' + Cast(@DatOd as varchar(35)) + ''''
  39949. End
  39950.     SET @SSQL = @SSQL + ' ORDER BY Reden_Broj '
  39951. INSERT INTO #TmpAsortLst (Sif1, Sif2, Rbr) EXEC (@SSQL)
  39952. IF Substring(@KatAsortPoSto,2,1)<>'A'
  39953. Begin    
  39954.     Declare @Sif1    varchar(10)
  39955.     Declare @Rbr    int
  39956.     Declare Tabela2 Cursor Fast_Forward For
  39957.     Select  Sif1, Rbr From #TmpAsortLst WHERE Sif2 IS NULL
  39958.     Open Tabela2
  39959.     Fetch Next From Tabela2 Into @Sif1, @Rbr
  39960.     While @@Fetch_Status = 0
  39961.     Begin            
  39962.     IF Substring(@KatAsortPoSto,2,1)='P'    
  39963.         Begin
  39964.         IF Substring(@KatAsortPoSto,1,1)='D'
  39965.             INSERT INTO #TmpAsortDop (Sif1, Sif2, Rbr)
  39966.             SELECT DISTINCT @Sif1, Sifra_Podg, @Rbr FROM Katart WHERE Kto=@Sif1
  39967.         ELSE IF Substring(@KatAsortPoSto,1,1)='G'
  39968.             INSERT INTO #TmpAsortDop (Sif1, Sif2, Rbr)
  39969.             SELECT DISTINCT @Sif1, Sifra_Podg, @Rbr FROM Podgrupi WHERE Sifra_Gr=@Sif1
  39970.         End
  39971.         Fetch Next From Tabela2 Into  @Sif1, @Rbr
  39972.     End
  39973.     Close Tabela2
  39974.     Deallocate Tabela2
  39975.     DELETE FROM #TmpAsortLst WHERE Sif2 IS NULL
  39976.     INSERT INTO #TmpAsortLst (Sif1, Sif2, Rbr, Rbr1) SELECT Sif1, Sif2, Rbr, Rbr1 FROM #TmpAsortDop
  39977. End
  39978. IF Substring(@KatAsortPoSto,1,1)='D'
  39979.     UPDATE #TmpAsortLst SET I1=K.ImeKup FROM Komint K WHERE #TmpAsortLst.Sif1=K.Sifra_Kup
  39980. IF Substring(@KatAsortPoSto,1,1)='G'
  39981.     UPDATE #TmpAsortLst SET I1=G.Ime_Gr FROM Grupi G WHERE #TmpAsortLst.Sif1=G.Sifra_Gr
  39982. IF Substring(@KatAsortPoSto,1,1)='2'
  39983.     UPDATE #TmpAsortLst SET I1=D.Ime_2 FROM Drugo2 D WHERE #TmpAsortLst.Sif1=D.Sifra_2
  39984. IF Substring(@KatAsortPoSto,1,1)='4'
  39985.     UPDATE #TmpAsortLst SET I1=D.Ime_4 FROM Drugo4 D WHERE #TmpAsortLst.Sif1=D.Sifra_4
  39986. IF Substring(@KatAsortPoSto,1,1)='H'
  39987.     UPDATE #TmpAsortLst SET I1=D.Ime_KHier FROM KatHier D WHERE #TmpAsortLst.Sif1=D.Sifra_KHier
  39988. --IF Substring(@KatAsortPoSto,2,1)='P'        Sega za sega ne nei teba, pa pomalku podatoci da prenesuvame
  39989. --    UPDATE #TmpAsortLst SET I2=P.Ime_Podg FROM Podgrupi P WHERE #TmpAsortLst.Sifra2=P.Sifra_Podg AND #TmpAsortLst.Sifra2 IS NOT NULL
  39990. SELECT * FROM #TmpAsortLst ORDER BY rbr, Rbr1
  39991.  
  39992.  
  39993. Go
  39994. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkobjektizaprenos]'))
  39995. drop procedure [dbo].[sp_dajkobjektizaprenos]
  39996.  
  39997. Go
  39998.  
  39999. CREATE     PROCEDURE sp_DajKObjektiZaPrenos
  40000.     @ObjIzvor    char(1),
  40001.     @ObjZaPrenos char(1)
  40002. AS
  40003.     CREATE TABLE #TmpKObj (Sifra char(9))
  40004.     Declare @PocChr    varchar(20)
  40005.     Declare @KrChr    varchar(20)
  40006.     Declare KonfMat1 Cursor Fast_Forward For
  40007.     Select  Poc_char, Kr_char From KonfNasObjMatic 
  40008.     WHERE Tabela='Komint' 
  40009.     AND PatIndex('%'+@ObjZaPrenos + '%', PrenosVoObj)<>0  --and Izvor=@ObjIzvor
  40010.     Open KonfMat1
  40011.     Fetch Next From KonfMat1 Into @PocChr, @KrChr
  40012.     While @@Fetch_Status = 0
  40013.     Begin            
  40014.         INSERT INTO #TmpKObj SELECT Sifra_Kup+cast(Sifra_Obj as char(3)) 
  40015.         FROM KObjekti Where Sifra_Kup >= @PocChr AND Sifra_Kup <= @KrChr AND 
  40016.         Sifra_Obj>0 AND (Prenesen IS NULL OR PatIndex('%' + @ObjZaPrenos + '%', Prenesen)=0)
  40017.         Fetch Next From KonfMat1 Into @PocChr, @KrChr
  40018.     End
  40019.     Close KonfMat1
  40020.     Deallocate KonfMat1
  40021.     SELECT * FROM KObjekti
  40022.     WHERE Sifra_Kup+cast(Sifra_Obj as char(3)) IN (Select Sifra FROM #TmpKObj)
  40023.  
  40024.  
  40025.  
  40026. Go
  40027. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkolicuslcena]'))
  40028. drop procedure [dbo].[sp_dajkolicuslcena]
  40029.  
  40030. Go
  40031.  
  40032. create PROCEDURE sp_DajKolicUslCena
  40033.     @Sifra_Art varchar(20),
  40034.     @Datum_Dok smalldatetime = Null,
  40035.     @Rok smallint = Null,
  40036.     @Sifra_Kup char(6) = Null,
  40037.     @ZaKolic decimal (18, 4),
  40038.     @CenaVrati decimal(18, 4) = Null OUTPUT
  40039.  
  40040. AS
  40041.  
  40042.     Declare @KojaCenaShiftirana smallint
  40043.  
  40044.     set @ZaKolic = abs(@ZaKolic)
  40045.  
  40046.     select @KojaCenaShiftirana = Sifra_Tip
  40047.     from usl_kolrab_fra
  40048.     where sifra_tip >= 101 and sifra_tip <= 110
  40049.         and tip_podelba = 'A'
  40050.         and Sifra_Podelba = @Sifra_Art
  40051.         and @ZaKolic >= - Od_Kolic 
  40052.         and @ZaKOlic <= - Do_Kolic    -- NE se cudi, granicite se zapisani kako negativni
  40053.                         -- vo bazata za da nema mesanje so drugi koncepti
  40054.  
  40055.     set @CenaVrati = 0
  40056.     if @KojaCenaShiftirana is not null
  40057.         begin
  40058.         SET @KojaCenaShiftirana = @KojaCenaShiftirana - 100
  40059.  
  40060.         Declare @DogCena decimal(18, 6)
  40061.         Declare @MalCena decimal(18, 6)
  40062.         Declare @GotCena decimal(18, 6)
  40063.  
  40064.         select @DogCena = DogCena, @MalCena = MalCena, @GotCena = GotCena
  40065.         from katart
  40066.         where sifrA_art = @sifra_art
  40067.     
  40068.         if @KojaCenaShiftirana = 1 and @DogCena > 0
  40069.             set @CenaVrati = @DogCena
  40070.         else if @KojaCenaShiftirana = 2 and @MalCena > 0
  40071.             set @CenaVrati = @MalCena
  40072.         else if @KojaCenaShiftirana = 3 and @GotCena > 0
  40073.             set @CenaVrati = @GotCena
  40074.         end
  40075.  
  40076.  
  40077. Go
  40078. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkolicuslceniart]'))
  40079. drop procedure [dbo].[sp_dajkolicuslceniart]
  40080.  
  40081. Go
  40082.  
  40083. create PROCEDURE sp_DajKolicUslCeniArt
  40084.  
  40085. AS
  40086.  
  40087.     select distinct sifra_podelba Sifra_Art
  40088.     from usl_kolrab_fra
  40089.     where sifra_tip >= 101 and sifra_tip <= 110
  40090.         and do_kolic < 0 and tip_podelba = 'A'
  40091.  
  40092.  
  40093. Go
  40094. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkolona]'))
  40095. drop procedure [dbo].[sp_dajkolona]
  40096.  
  40097. Go
  40098.  
  40099. CREATE PROCEDURE sp_DajKolona
  40100.     @Tabela Varchar(20),
  40101.     @Kolona Varchar(20),
  40102.     @PostoiTab Bit OUTPUT,
  40103.     @PostoiKol Bit OUTPUT
  40104. AS
  40105.     If Exists(Select * From Information_Schema.Tables
  40106.         Where Table_Name=@Tabela)
  40107.         Set @PostoiTab=1
  40108.     Else
  40109.         Set @PostoiTab=0
  40110.     If @PostoiTab=1
  40111.         Begin
  40112.             If Exists(Select * From Information_Schema.Columns
  40113.                 Where Table_Name=@Tabela And Column_Name=@Kolona)
  40114.                 Set @PostoiKol=1
  40115.             Else
  40116.                 Set @PostoiKol=0
  40117.         End
  40118.     Else
  40119.         Set @PostoiKol=0        
  40120.  
  40121.  
  40122.  
  40123. Go
  40124. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkomercuslzawebnarac]'))
  40125. drop procedure [dbo].[sp_dajkomercuslzawebnarac]
  40126.  
  40127. Go
  40128.  
  40129.  
  40130.  
  40131.  
  40132.  
  40133.  
  40134.  
  40135. CREATE         PROCEDURE sp_DajKomercUslZaWebNarac
  40136.     @KojaCena        char(1)='1',
  40137.     @RabatOdPodgr    char(1)='N', 
  40138.     @PoCenovnik        char(1)='N',
  40139.     @Sifra_Kup        char(6),
  40140.     @NacPlak        varchar(10)=NULL,
  40141.     @Sifra_OE        smallint=NULL
  40142. AS
  40143.  
  40144. Declare @ImeTab varchar(20)
  40145. SET @ImeTab = '##wNar'+@Sifra_Kup
  40146.  
  40147. CREATE TABLE #TmpVlezniArt (Sifra_Art varchar(20), Kolic decimal(18,6))
  40148. DECLARE @SSQL varchar(3000)
  40149. SET @SSQL = 'INSERT INTO #TmpVlezniArt SELECT * FROM ' + @ImeTab    --polnam pom.tabela za cursorot
  40150. EXEC (@SSQL)
  40151.  
  40152. CREATE TABLE #TmpArtKomerc
  40153. (Sifra_Art    varchar(20),
  40154. Kolic        decimal(18,6),
  40155. Cena        decimal(18,4),        --sekogas so ddv
  40156. Uces        decimal(6,2),
  40157. UcesOsn        decimal(6,2),
  40158. UcesKol        decimal(6,2),
  40159. UcesDod        decimal(6,2))
  40160.  
  40161. INSERT #TmpArtKomerc (Sifra_Art, Kolic, Cena, Uces, UcesOsn, UcesKol, UcesDod) 
  40162. SELECT Sifra_Art, Kolic, 0, 0, 0, 0, 0 FROM #TmpVlezniArt
  40163.  
  40164. Declare @Sifra_Art varchar(20), @Kolic decimal(18,6), @Uces decimal(6,2), @DaliCenSoDDV char(1)
  40165. Declare @Podgr    varchar(20), @TipKup varchar(11) 
  40166.  
  40167. IF @KojaCena='1'
  40168. BEGIN
  40169.     SELECT @DaliCenSoDDV=Cena_1_SoDanok FROM Konfig
  40170.     IF @DaliCenSoDDV='D'
  40171.         UPDATE #TmpArtKomerc SET Cena =K.DogCena FROM KatArt K WHERE #TmpArtKomerc.Sifra_Art=K.Sifra_Art
  40172.     ELSE
  40173.     BEGIN
  40174.         Declare @ZaokrDec smallint
  40175.         SELECT @ZaokrDec=Cena_1_Zaokr FROM Konfig
  40176.         UPDATE #TmpArtKomerc SET Cena=Round(K.DogCena*(1+T.ProcOsn/100),@ZaokrDec) FROM KatArt K, Tarifi T
  40177.         WHERE #TmpArtKomerc.Sifra_Art=K.Sifra_Art AND K.Sifra_Tar=T.Sifra_Tar
  40178.     END
  40179. END
  40180. ELSE IF @KojaCena='S'
  40181. BEGIN
  40182.     UPDATE #TmpArtKomerc SET Cena = CASE S.DanCena WHEN 'D' THEN S.Cena ELSE Round(S.Cena * S.Posn/100,1) END
  40183.     FROM Soart S WHERE #TmpArtKomerc.Sifra_Art=S.Sifra_Art AND S.Sifra_OE=@Sifra_OE
  40184. END
  40185.  
  40186. IF @PoCenovnik='O'        -- treba da se pusti ako ima OsnCenKomBazen
  40187. Begin
  40188.     Declare @wKojaCena varchar(1), @wOsnCenKomBazen char(6)
  40189.     SELECT @wKojaCena = KojaCena FROM Komint WHERE Sifra_Kup=@Sifra_Kup
  40190.     IF @wKojaCena<>''
  40191.     Begin
  40192.     --SELECT @wOsnCenKomBazen = OsnCenKomBazen FROM Konfig  vaka e najlesno, ama go nema vo sekoja baza
  40193.     CREATE TABLE #TmpKom (Sifra_Kup char(6))
  40194.     SET @SSQL='SELECT OsnCenKomBazen FROM Konfig'
  40195.     INSERT INTO #TmpKom EXEC (@SSQL)
  40196.     SELECT @wOsnCenKomBazen = Sifra_Kup FROM #TmpKom
  40197.     
  40198.     UPDATE #TmpArtKomerc SET Cena=C.Cena  FROM Cenovnik C WHERE #TmpArtKomerc.Sifra_Art=C.Sifra_Art AND C.Sifra_Kup=substring(@wOsnCenKomBazen, 1, 5)+@wKojaCena AND C.Cena>0
  40199.     UPDATE #TmpArtKomerc SET Uces=C.Popust FROM Cenovnik C WHERE #TmpArtKomerc.Sifra_Art=C.Sifra_Art AND C.Sifra_Kup=substring(@wOsnCenKomBazen, 1, 5)+@wKojaCena AND C.Popust>0
  40200.     End
  40201. End
  40202.  
  40203. IF @PoCenovnik='D' OR @PoCenovnik='O'
  40204. BEGIN
  40205.     UPDATE #TmpArtKomerc SET Cena=C.Cena FROM Cenovnik C WHERE #TmpArtKomerc.Sifra_Art=C.Sifra_Art AND C.Sifra_Kup=@Sifra_Kup AND C.Cena>0
  40206.     UPDATE #TmpArtKomerc SET Uces=C.Popust FROM Cenovnik C WHERE #TmpArtKomerc.Sifra_Art=C.Sifra_Art AND C.Sifra_Kup=@Sifra_Kup AND C.Popust>0
  40207. END
  40208. IF @RabatOdPodgr='D'
  40209. Begin
  40210.     SELECT @TipKup=TipKup FROM Komint WHERE Sifra_Kup=@Sifra_Kup
  40211.     UPDATE #TmpArtKomerc SET Uces=C.Uces FROM CenPoPodgr C, Komint K, KatArt A WHERE #TmpArtKomerc.Sifra_Art=A.Sifra_Art AND 
  40212.     C.Sifra_Podelba=A.Sifra_Podg AND C.TipKup=@TipKup
  40213. End
  40214.  
  40215. SELECT * FROM #TmpArtKomerc
  40216.  
  40217.  
  40218.  
  40219.  
  40220.  
  40221.  
  40222.  
  40223.  
  40224.  
  40225. Go
  40226. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkomint]'))
  40227. drop procedure [dbo].[sp_dajkomint]
  40228.  
  40229. Go
  40230.  
  40231. CREATE  procedure sp_DajKomint
  40232. As
  40233.     Select Sifra_Kup Sifra_Komint, ImeKup NazivKomint, Adresa, Smesto Mesto, Zemja Zemlja From Komint ORDER BY Sifra_Kup
  40234.  
  40235.  
  40236.  
  40237. Go
  40238. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkomintzaotkup]'))
  40239. drop procedure [dbo].[sp_dajkomintzaotkup]
  40240.  
  40241. Go
  40242.  
  40243.  
  40244.  
  40245. CREATE   PROCEDURE sp_DajKomintZaOtkup
  40246.     @Sifra_OE    smallint,
  40247.     @Sifra_Dok    smallint=88,
  40248.     @Datum_Dok    smalldatetime,
  40249.     @KDrugo1    Smallint,
  40250.     @Sifra_Art    varchar(20)
  40251. AS
  40252. Declare @SSQL Varchar(4000)
  40253. CREATE TABLE #TmpDok
  40254. (DokrID    int, 
  40255. Broj_Dok    int, 
  40256. Sifra_Kup    char(6), 
  40257. ImeKup        varchar(40), 
  40258. Kolic        decimal(18,6))
  40259.  
  40260. INSERT INTO #TmpDok (DokrID, Broj_Dok, Sifra_Kup, ImeKup, Kolic)
  40261. SELECT D.DokrID, D.Broj_Dok, K.Sifra_Kup, K.ImeKup, S.Kolic FROM Dokr D
  40262. LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  40263. LEFT OUTER JOIN Stavr S ON D.DokrID=S.DokrID
  40264. WHERE D.Sifra_OE=@Sifra_OE AND D.Sifra_Dok=@Sifra_Dok AND D.Datum_Dok=@Datum_Dok AND K.KDrugo1=@KDrugo1 AND S.Sifra_Art=@Sifra_Art
  40265.  
  40266. INSERT INTO #TmpDok (DokrID, Broj_Dok, Sifra_Kup, ImeKup, Kolic)
  40267. SELECT 0 DokrID, 0 Broj_Dok, K.Sifra_Kup, K.ImeKup, 0 Kolic FROM Komint K
  40268. WHERE K.KDrugo1=@KDrugo1 AND K.Sifra_Kup NOT IN (SELECT Sifra_Kup FROM #TmpDok)
  40269.  
  40270. SELECT * FROM #TmpDok ORDER BY Sifra_Kup
  40271.  
  40272.  
  40273.  
  40274.  
  40275. Go
  40276. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkomintzapat]'))
  40277. drop procedure [dbo].[sp_dajkomintzapat]
  40278.  
  40279. Go
  40280.  
  40281.  
  40282.  
  40283. CREATE      PROCEDURE sp_DajKomintZaPat
  40284.     @Sifra_Pat    smallint, 
  40285.     @KlkDena    smallint = 0, 
  40286.     @SoPodelbi    char(1) = '',
  40287.     @Sifra_Grad    smallint = NULL, 
  40288.     @Sifra_Reg    smallint = NULL,
  40289.     @ZemiReg    char(1) = '',
  40290.     @SamoKupSoReg char(1)=''
  40291. AS
  40292.     Declare @SSQL varchar(5000)
  40293.     SET @SSQL='SELECT SIFRA_KUP, Substring(IMEKUP,1,30) ImeKup, SUBSTRING(ADRESA, 1, 30) Adresa, SUBSTRING(SMESTO,1, 10) SMesto, Posta,  
  40294.                         Telefon, Sifra_Nivo, Rok_Dosp, Kasa, KojaCena, MozeIsporaka, Uces, Limit_Dolzi Limit, Sifra_Tip STip, Sifra_Vpj Vpj,Danocen Kontakt '
  40295.     If @SoPodelbi = 'D'  
  40296.         SET @SSQL = @SSQL + ', Aktiven, TipKup, Sifra_Grad, KDrugo1, KDrugo2, KDrugo3, BrProdMesta, BrAktProdMesta, DirDistr, ZemaOd, m2, Uces_Kol '
  40297.     Else If @SoPodelbi = 'G' 
  40298.         SET @SSQL = @SSQL + ', Aneks1 ZemaOd '
  40299.     Else If @SoPodelbi = 'R'    
  40300.         SET @SSQL = @SSQL + ', Spec_Rabat ZemaOd '
  40301.     If @ZemiReg = 'D' 
  40302.         SET @SSQL = @SSQL + ', Sifra_Reg SifReg '
  40303.     SET @SSQL = @SSQL + ' FROM KOMINT WHERE (Aktiven IS NULL OR Aktiven <>''N'') 
  40304.                     AND Sifra_Kup IN (SELECT Sifra_Kup FROM KomintPat WHERE Sifra_Pat = ' + cast(@Sifra_Pat as varchar(5)) + ')'
  40305.     If @Sifra_Grad IS NOT NULL 
  40306.         SET @SSQL = @SSQL + ' AND (Sifra_Grad = ' + cast(@Sifra_Grad as varchar(5)) + '
  40307.                              OR Sifra_Kup IN (Select Sifra_Kup from KObjekti Where Sifra_Grad = ' + cast(@Sifra_Grad as varchar(5)) + ' AND (Aktiven IS NULL OR Aktiven <>''N'') ))'
  40308.     If @Sifra_Reg IS NOT NULL
  40309.         SET @SSQL = @SSQL + ' AND (Sifra_Reg = '+cast(@Sifra_Reg as varchar(5)) + '
  40310.                              OR Sifra_Kup IN (Select Sifra_Kup from KObjekti Where Sifra_Reg = '+cast(@Sifra_Reg as varchar(5)) + ' AND (Aktiven IS NULL OR Aktiven <>''N'') ))'
  40311.     If @KlkDena > 0 
  40312.     Begin
  40313.         Declare @DatPoc As smalldatetime 
  40314.         SET @DatPoc = DateAdd(day, @KlkDena * -1, GetDate())
  40315.         SET @SSQL = @SSQL + ' AND (DodadenNa >= '''+cast(@DatPoc as varchar(35)) + ''' OR IzmenetNa >= '''+cast(@DatPoc as varchar(35)) + ''') '
  40316.     End
  40317.     If @SamoKupSoReg = 'D'
  40318.         SET @SSQL = @SSQL + ' AND (Sifra_Reg IS NOT NULL OR Sifra_Kup IN (SELECT Sifra_Kup FROM KObjekti WHERE Sifra_Reg IS NOT NULL))'
  40319.     EXEC (@SSQL)
  40320.  
  40321.  
  40322.  
  40323.  
  40324.  
  40325. Go
  40326. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkomintzaprenos]'))
  40327. drop procedure [dbo].[sp_dajkomintzaprenos]
  40328.  
  40329. Go
  40330.  
  40331. CREATE     PROCEDURE sp_DajKomintZaPrenos
  40332.     @ObjIzvor    char(1),
  40333.     @ObjZaPrenos char(1)
  40334. AS
  40335.     CREATE TABLE #TmpKom (Sifra_Kup char(6))
  40336.     Declare @PocChr    varchar(20)
  40337.     Declare @KrChr    varchar(20)
  40338.     Declare KonfMat1 Cursor Fast_Forward For
  40339.     Select  Poc_char, Kr_char From KonfNasObjMatic 
  40340.     WHERE Tabela='Komint' 
  40341.     AND PatIndex('%'+@ObjZaPrenos + '%', PrenosVoObj)<>0  --and Izvor=@ObjIzvor
  40342.     Open KonfMat1
  40343.     Fetch Next From KonfMat1 Into @PocChr, @KrChr
  40344.     While @@Fetch_Status = 0
  40345.     Begin            
  40346.         INSERT INTO #TmpKom SELECT Sifra_Kup FROM Komint
  40347.         Where Sifra_Kup >= @PocChr AND Sifra_Kup <= @KrChr AND 
  40348.         (Prenesen IS NULL OR PatIndex('%' + @ObjZaPrenos + '%', Prenesen)=0)
  40349.         Fetch Next From KonfMat1 Into @PocChr, @KrChr
  40350.     End
  40351.     Close KonfMat1
  40352.     Deallocate KonfMat1
  40353.     SELECT Sifra_Kup, ImeKup, ImeKup2, Adresa, Adresa2, Posta, SMesto, 
  40354.     Zemja, IspZemja, Telefon, Tel1,Fax, EMail, AdrWeb, Ziro, Danocen, 
  40355.     Banka, Sopstvenik, Ziro2, Banka2, Sifra_Pat, Sifra_Pat2, Sifra_Grad, 
  40356.     TipKup, Sifra_reg, Sifra_Nivo, KojaSmetka, KDrugo1, Kdrugo2, KDrugo3, 
  40357.     KDrugo4, KDrugo5, Uces, Kasa, Rok_Dosp, BrPoseti, KojaCena, DirDistr, 
  40358.     ZemaOd, Kontakt, Zabeleska, Aktiven, DogovorBroj, BrProdMesta, BrAktProdMesta, 
  40359.     ImaBanka, Alt_ImeKup, Alt_Adresa, MozeIsporaka, Garancija, MatBr, Prenesen, Limit_Dolzi FROM Komint
  40360.     WHERE Sifra_Kup IN (Select Sifra_Kup FROM #TmpKom)
  40361.  
  40362.  
  40363.  
  40364. Go
  40365. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkomzawebnarac]'))
  40366. drop procedure [dbo].[sp_dajkomzawebnarac]
  40367.  
  40368. Go
  40369.  
  40370. CREATE  PROCEDURE sp_DajKomZaWEBNarac
  40371.     @KlkDena    smallint=null
  40372. AS
  40373. IF @KlkDena IS NOT NULL
  40374.     SELECT Sifra_Kup, ImeKup, Adresa, Posta, SMesto, Zemja, Telefon, TelMobil, eMail, Kontakt FROM Komint
  40375.     WHERE DodadenNa>=DateAdd(day, @KlkDena * -1, GetDate()) OR IzmenetNa>=DateAdd(day, @KlkDena * -1, GetDate())
  40376. ELSE
  40377.     SELECT Sifra_Kup, ImeKup, Adresa, Posta, SMesto, Zemja, Telefon, TelMobil, eMail, Kontakt FROM Komint
  40378.  
  40379.  
  40380.  
  40381.  
  40382. Go
  40383. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkontenplan]'))
  40384. drop procedure [dbo].[sp_dajkontenplan]
  40385.  
  40386. Go
  40387.  
  40388. CREATE  procedure sp_DajKontenPlan
  40389. As
  40390. CREATE TABLE #TmpK
  40391. (Konto    char(10),
  40392. Naziv        varchar(40),
  40393. HNaziv    varchar(40))
  40394.  
  40395. INSERT INTO #TmpK SELECT Kto_Klas, ImeKlasa, SImeKlasa from Klas
  40396. INSERT INTO #TmpK SELECT Kto_Sint, ImeSint, SImeSint from Sint
  40397. INSERT INTO #TmpK SELECT Kto_Anal, ImeAnal, SImeAnal from Anal
  40398.  
  40399. SELECT * FROM #TmpK ORDER BY Konto
  40400.  
  40401.  
  40402. Go
  40403. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkorisnicizaupl]'))
  40404. drop procedure [dbo].[sp_dajkorisnicizaupl]
  40405.  
  40406. Go
  40407. CREATE  PROCEDURE sp_DajKorisniciZaUpl
  40408.     @Sifra_Kup        varchar(20),
  40409.     @Sifra_TipKartKor    smallint = Null
  40410. AS
  40411.     Declare @SSQL as varchar(8000)
  40412.     Set @SSQL = ' Select Sifra_Kor
  40413.             From  KartKor K
  40414.             Left Outer Join TipKartKor Tip on Tip.Sifra_TipKartKor = K.Sifra_TipKartKor
  40415.             Where Sifra_Kup = ' + @Sifra_Kup + ' And Tip.DaliKredit=''D'' '
  40416.     If @Sifra_TipKartKor Is Not Null
  40417.         Set @SSQL = @SSQL + ' And K.Sifra_TipKartKor = ' + Cast(@Sifra_TipKartKor as varchar(6)) + ' '
  40418.     Set @SSQL = @SSQL + ' Order By Sifra_Kor '
  40419.     Exec(@SSQL)
  40420.  
  40421.  
  40422. Go
  40423. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajktoodartzadok]'))
  40424. drop procedure [dbo].[sp_dajktoodartzadok]
  40425.  
  40426. Go
  40427. CREATE PROCEDURE sp_DajKtoOdArtZaDok
  40428.     @DokrID    int,
  40429.     @Sifra_Kup    char(6) OUTPUT
  40430. AS
  40431.     SELECT @Sifra_Kup = A.Kto FROM Stavr S INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art
  40432.     WHERE S.DokrID = @DokrID
  40433.  
  40434.  
  40435. Go
  40436. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajkurszadatum]'))
  40437. drop procedure [dbo].[sp_dajkurszadatum]
  40438.  
  40439. Go
  40440.  
  40441. CREATE  PROCEDURE sp_DajKursZaDatum
  40442.     @KojaVal    char(3),
  40443.     @Datum            SmallDateTime,
  40444.     @Kurs        Decimal(18,6) = 0 OUTPUT,
  40445.     @KursKupoven    Decimal(18,6) = 0 OUTPUT,
  40446.     @KursProdazen    Decimal(18,6) = 0 OUTPUT,
  40447.     @KursPazaren    Decimal(18,6) = 0 OUTPUT
  40448. AS
  40449.     Declare @PoslDatum smallDateTime
  40450.     SELECT @PoslDatum = Max(Datum) FROM KrsVaznost WHERE SImeVal = @KojaVal AND Datum <= @Datum
  40451. IF @PoslDatum IS NOT NULL
  40452.     Select @Kurs = KursSreden, @KursKupoven = KursKupoven,
  40453.            @KursProdazen = KursProdazen, @KursPazaren = KursPazaren
  40454.     From KrsVaznost WHERE Datum = @PoslDatum AND SImeVal = @KojaVal
  40455.  
  40456.  
  40457.  
  40458. Go
  40459. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajlikviddokr]'))
  40460. drop procedure [dbo].[sp_dajlikviddokr]
  40461.  
  40462. Go
  40463. CREATE    PROCEDURE sp_DajLikvidDokr
  40464.     @Sifra_OE Smallint,
  40465.     @Sifra_Dok Smallint,
  40466.     @Broj_Dok int,
  40467.     @Likvid char (1) OUTPUT
  40468. AS
  40469.         select @Likvid=Likvid From Dokr
  40470.         WHERE Sifra_oe = @Sifra_oe   And  Sifra_DOk = @Sifra_Dok  And  Broj_Dok = @Broj_Dok
  40471.  
  40472.  
  40473. Go
  40474. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajlimitzadiv]'))
  40475. drop procedure [dbo].[sp_dajlimitzadiv]
  40476.  
  40477. Go
  40478. CREATE PROCEDURE sp_DajLimitZaDiv
  40479.     @Sifra_Kup    char(6),
  40480.     @Sifra_Div    smallint,
  40481.     @Kto        char(10)=NULL,
  40482.     @Limit        decimal(18,6)=0 OUTPUT,
  40483.     @Saldo        decimal(18,6)=0 OUTPUT
  40484. AS
  40485. SELECT @Limit = Iznos FROM KomLimitDiv WHERE Sifra_Kup=@Sifra_Kup AND Sifra_DIv=@Sifra_Div
  40486. IF @Kto IS NULL
  40487.     SELECT @Saldo = SUM(Dolzi-Plateno_Dolzi) FROM AnFinDok WHERE Sifra_Kup=@Sifra_Kup AND Sifra_Div=@Sifra_Div AND Sifra_Za=1
  40488. ELSE
  40489.     SELECT @Saldo = SUM(Dolzi-Plateno_Dolzi) FROM AnFinDok WHERE Sifra_Kup=@Sifra_Kup AND Sifra_Div=@Sifra_Div AND Sifra_Za=1 AND Kto=@Kto
  40490.  
  40491.  
  40492.  
  40493. Go
  40494. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajlista_komobj_popisdok]'))
  40495. drop procedure [dbo].[sp_dajlista_komobj_popisdok]
  40496.  
  40497. Go
  40498. CREATE    PROCEDURE sp_DajLista_KomObj_PopisDok
  40499.     @Sifra_OE    smallint,
  40500.     @Sifra_Dok    smallint,
  40501.     @Datum_Od    smalldatetime,
  40502.     @Datum_Do    smalldatetime
  40503. AS
  40504.     Declare @SSQL varchar(2000)
  40505.     SELECT Distinct Sifra_Kup, Sifra_Obj
  40506.     From PopisDok P
  40507.     Where Sifra_Oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok and
  40508.           Datum_PopisDok >= @Datum_Od and Datum_PopisDok <= @Datum_Do
  40509.  
  40510.  
  40511. Go
  40512. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajlista_popisdok]'))
  40513. drop procedure [dbo].[sp_dajlista_popisdok]
  40514.  
  40515. Go
  40516.  
  40517.  
  40518.  
  40519.  
  40520. CREATE    PROCEDURE sp_DajLista_PopisDok
  40521.     @Sifra_Oe    smallint,
  40522.     @Sifra_Dok    smallint,
  40523.     @Datum_Od    smalldatetime,
  40524.     @Datum_Do    smalldatetime
  40525. AS
  40526.     Declare @SSQL varchar(2000)
  40527.     SELECT Distinct Sifra_Oe, Sifra_Dok, Broj_Dok
  40528.     From PopisDok P
  40529.     where Sifra_Oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok and
  40530.               Datum_PopisDok >= @Datum_Od and Datum_PopisDok <= @Datum_Do
  40531.  
  40532.  
  40533.  
  40534. Go
  40535. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajmaxbrdok]'))
  40536. drop procedure [dbo].[sp_dajmaxbrdok]
  40537.  
  40538. Go
  40539.  
  40540.  
  40541. CREATE   PROCEDURE sp_DajMaxBrDok
  40542.     @Sifra_Nal    smallint,
  40543.     @P_I        char(1),
  40544.     @TipBlag    char(3)=NULL,
  40545.     @DoBroj        int=NULL,
  40546.     @Broj_Dok    int Output
  40547. AS
  40548. IF @DoBroj IS NULL SET @DoBroj=1999999
  40549. IF @TipBlag IS NULL
  40550.     Select @Broj_Dok=Max(Broj_Dok)
  40551.     From KasStav
  40552.     Where Sifra_Nal = @Sifra_Nal and P_I = @P_I AND Broj_Dok<@DoBroj
  40553. ELSE
  40554.     Select @Broj_Dok=Max(Broj_Dok)    From KasStav
  40555.     Where Sifra_Nal = @Sifra_Nal and P_I = @P_I AND TipBlag=@TipBlag AND Broj_Dok<@DoBroj
  40556.  
  40557.  
  40558.  
  40559.  
  40560. Go
  40561. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajmaxbrdokzp]'))
  40562. drop procedure [dbo].[sp_dajmaxbrdokzp]
  40563.  
  40564. Go
  40565.  
  40566.  
  40567.  
  40568. CREATE   PROCEDURE sp_DajMaxBrDokZP
  40569.     @Sifra_OETros    smallint,
  40570.     @Pomosen        char(1),
  40571.     @DoBroj            int=NULL,
  40572.     @Broj_Dok        int Output
  40573. AS
  40574. IF @DoBroj IS NULL SET @DoBroj=1999999
  40575. If @Pomosen = 'D'  
  40576.     SELECT @Broj_Dok= MAX(Broj_RabN) FROM RabNal WHERE Pomosen = 'D' and Sifra_oerab = @Sifra_OETros AND Broj_RabN<@DoBroj
  40577. Else If @Pomosen = 'N'  
  40578.     SELECT @Broj_Dok=MAX(Broj_RabN) FROM RabNal WHERE (Pomosen <> 'D' or Pomosen is null) and Sifra_oerab = @Sifra_OETros AND Broj_RabN<@DoBroj
  40579. Else
  40580.     SELECT @Broj_Dok=MAX(Broj_RabN) FROM RabNal WHERE Sifra_oerab = @Sifra_OETros AND Broj_RabN<@DoBroj
  40581.  
  40582.  
  40583.  
  40584.  
  40585.  
  40586. Go
  40587. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajmaxdatumuslkomerc]'))
  40588. drop procedure [dbo].[sp_dajmaxdatumuslkomerc]
  40589.  
  40590. Go
  40591.  
  40592. CREATE  PROCEDURE sp_DajMaxDatumUslKomerc
  40593.     @Sifra_Kup    char(6),
  40594.     @Sifra_Tip    smallint = NULL,
  40595.     @Datum        smalldatetime = NULL OUTPUT
  40596. AS
  40597. IF @Sifra_Tip IS NULL    
  40598.     SELECT @Datum = Max(Datum_Od) FROM Usl_Komerc_Per WHERE Sif_Kup_Gen = @Sifra_Kup  AND Tip_Sif_Kup='K'
  40599. ELSE
  40600.     SELECT @Datum = Max(Datum_Od) FROM Usl_Komerc_Per WHERE Sif_Kup_Gen = @Sifra_Tip  AND Tip_Sif_Kup='T'
  40601.  
  40602.  
  40603.  
  40604. Go
  40605. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajmaxrbr_magstavr]'))
  40606. drop procedure [dbo].[sp_dajmaxrbr_magstavr]
  40607.  
  40608. Go
  40609. CREATE PROCEDURE sp_DajMaxRbr_MagStavr
  40610.     @Sifra_Oe    Smallint,
  40611.     @Sifra_Dok    Smallint,
  40612.     @Broj_Dok    Int,
  40613.     @MaxRbr    Int = Null Output
  40614. AS
  40615.     Set @MaxRbr = (Select Max(M.Rbr) 
  40616.             From Dokr D 
  40617.             Inner Join MagStavr M On M.DokrID=D.DokrID 
  40618.             Where D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok)
  40619.  
  40620.  
  40621. Go
  40622. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajmaxspecozn_lotser]'))
  40623. drop procedure [dbo].[sp_dajmaxspecozn_lotser]
  40624.  
  40625. Go
  40626. CREATE PROCEDURE sp_DajMaxSpecOzn_LotSer
  40627.     @Sifra_Art    varchar(20),
  40628.     @MaxSpecOzn    varchar(30) = Null Output
  40629. AS
  40630.     Set @MaxSpecOzn = (Select Max(SpecOzn) From LotSer Where Sifra_Art=@Sifra_Art)
  40631.  
  40632.  
  40633.  
  40634. Go
  40635. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnajstarlot]'))
  40636. drop procedure [dbo].[sp_dajnajstarlot]
  40637.  
  40638. Go
  40639. CREATE PROCEDURE sp_DajNajstarLot
  40640.     @Sifra_OE    smallint,
  40641.     @Sifra_Art    varchar(20)
  40642. AS
  40643. CREATE TABLE #TmpZalPoLot
  40644. (Sifra_Art    varchar(20),
  40645. LotBr        varchar(50),
  40646. Sostojba    decimal(18,4))
  40647. INSERT INTO #TmpZalPoLot (LotBr) SELECT MIN(LotBr) FROM SoMag 
  40648. WHERE Sifra_Oe=@Sifra_Oe AND Sifra_Art=@Sifra_Art AND Sostojba>0
  40649. UPDATE #TmpZalPoLot SET Sifra_Art=@Sifra_Art, Sostojba=M.Sostojba FROM SoMag M WHERE M.Sifra_OE=@Sifra_OE AND M.Sifra_Art=@Sifra_Art AND #TmpZalPoLot.LotBr=M.LotBr
  40650. SELECT A.Sifra_Tar, A.Lokacija, T.ProcOsn, L.LotBr, L.Sostojba FROM KatArt A 
  40651. INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar
  40652. LEFT OUTER JOIN #TmpZalPoLot L ON L.Sifra_Art=A.Sifra_Art WHERE A.Sifra_Art=@Sifra_Art
  40653.  
  40654.  
  40655.  
  40656. Go
  40657. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnalogzadatum]'))
  40658. drop procedure [dbo].[sp_dajnalogzadatum]
  40659.  
  40660. Go
  40661.  
  40662. CREATE  PROCEDURE sp_DajNalogZaDatum
  40663.     @Sifra_Nal    smallint,
  40664.     @Datum_Nal    smalldatetime,
  40665.     @Broj_Nal    int = Null OUTPUT,
  40666.     @Tek_Datum_Nal    smalldatetime = Null OUTPUT
  40667. AS
  40668. SELECT @Broj_Nal=Broj_Nal,@Tek_Datum_Nal=Datum_Nal FROM Nalozi WHERE Sifra_Nal=@Sifra_Nal AND Datum_Nal=@Datum_Nal
  40669. IF @@ROWCOUNT<1
  40670. Begin
  40671.     SELECT @Broj_Nal=Max(Broj_Nal) FROM Nalozi WHERE Sifra_Nal=@Sifra_Nal AND Datum_Nal<=@Datum_Nal
  40672.     IF @Broj_Nal IS NOT NULL
  40673.         SELECT @Tek_Datum_Nal=Datum_Nal FROM Nalozi WHERE Sifra_Nal=@Sifra_Nal AND Broj_Nal=@Broj_Nal
  40674. End
  40675.  
  40676.  
  40677.  
  40678. Go
  40679. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnaracka_ponarid]'))
  40680. drop procedure [dbo].[sp_dajnaracka_ponarid]
  40681.  
  40682. Go
  40683. CREATE PROCEDURE sp_DajNaracka_PoNarID
  40684.     @NarID        int,
  40685.     @Sifra_Oe    smallint = Null Output,
  40686.     @Sifra_Nar    smallint = Null Output,
  40687.     @Broj_Nar    int = Null Output
  40688. AS
  40689.     Select @Sifra_Oe=Sifra_Oe, @Sifra_Nar=Sifra_Nar, @Broj_Nar=Broj_Nar
  40690.     From Naracki
  40691.     Where NarID=@NarID
  40692.  
  40693.  
  40694.  
  40695. Go
  40696. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnarackazakup]'))
  40697. drop procedure [dbo].[sp_dajnarackazakup]
  40698.  
  40699. Go
  40700.  
  40701.  
  40702. CREATE   PROCEDURE sp_DajNarackaZaKup
  40703.     @Sifra_Kup    Char(6),
  40704.     @Datum    SmallDateTime
  40705. AS
  40706.     SELECT SN.*, A.ImeArt, A.EdMera, A.ImaKomerc
  40707.     FROM StaNarac SN
  40708.     INNER JOIN Naracki N ON N.NarID = SN.NarID AND N.Datum_nar = @Datum AND N.Sifra_Kup = @Sifra_Kup
  40709.             AND dbo.fn_KonvVoStr(N.Realiziran) = ''
  40710.     INNER JOIN KatArt A ON A.Sifra_Art = SN.Sifra_Art 
  40711.  
  40712.  
  40713.  
  40714. Go
  40715. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnaracki]'))
  40716. drop procedure [dbo].[sp_dajnaracki]
  40717.  
  40718. Go
  40719.  
  40720.  
  40721. CREATE   PROCEDURE sp_DajNaracki
  40722.     @Sifra_Oe    smallint = Null,
  40723.     @Sifra_Nar    smallint = Null,
  40724.     @Datum_Od    smalldatetime = Null,
  40725.     @Datum_Do    smalldatetime = Null,
  40726.     @Stat_Dok_Nar        char(1) = Null,        -- I - Vo faza na naracka,      N - Nalozeni naracki za podgotovka
  40727.     @Koi_Spec_Narac_Stat    char(1) = Null,        -- S - Site,   R - Realizirani(D,P,S),      N - Nerealizirani(N, Null)
  40728.     @ImeNaUser    varchar(20)=NULL
  40729. AS
  40730.     Declare @SSQL as varchar(4000)
  40731.     Set @SSQL = ' Select N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, O.ImeObj, 
  40732.             N.Realiziran, N.Stat_Dok_Nar, N.Toc200 as Iznos, G.ImeGrad
  40733.             From Naracki N
  40734.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  40735.             Left Outer Join KObjekti O On O.Sifra_Kup=N.Sifra_Kup and O.Sifra_Obj=N.Sifra_Obj
  40736.             Left Outer Join Grad G On G.Sifra_Grad=(Case When N.Sifra_Obj Is Not Null Then O.Sifra_Grad Else Kup.Sifra_Grad End)
  40737.             Where 1=1 '
  40738.     If @Sifra_Oe Is Not Null
  40739.         Set @SSQL = @SSQL + ' And N.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  40740.     If @Sifra_Nar Is Not Null
  40741.         Set @SSQL = @SSQL + ' And N.Sifra_Nar = ' + cast(@Sifra_Nar as varchar(6)) + ' '
  40742.     If @Datum_Od Is Not Null
  40743.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  40744.     If @Datum_Do Is Not Null
  40745.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  40746.     If @Stat_Dok_Nar = 'I'
  40747.         Set @SSQL = @SSQL + ' And (N.Stat_Dok_Nar = ''I'' Or N.Stat_Dok_Nar Is Null) '
  40748.     Else If @Stat_Dok_Nar = 'N'
  40749.         Set @SSQL  =@SSQL + ' And N.Stat_Dok_Nar = ''N'' '
  40750.     If @Koi_Spec_Narac_Stat = 'R'
  40751.         Set @SSQL  =@SSQL + ' And N.Realiziran In (''R'', ''P'', ''S'')'
  40752.     Else If @Koi_Spec_Narac_Stat = 'N'
  40753.         Set @SSQL = @SSQL + ' And (N.Realiziran = ''N'' Or N.Realiziran Is Null) '
  40754.     IF @ImeNaUser IS NOT NULL
  40755.         Set @SSQL = @SSQL + ' And N.Sifra_Oper = ''' + @ImeNaUser + ''' '
  40756.     Set @SSQL = @SSQL + ' ORDER BY N.Datum_Nar'
  40757.     Exec(@SSQL)
  40758.  
  40759.  
  40760.  
  40761.  
  40762. Go
  40763. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnarackizaisporaka]'))
  40764. drop procedure [dbo].[sp_dajnarackizaisporaka]
  40765.  
  40766. Go
  40767.  
  40768.  
  40769.  
  40770. CREATE     PROCEDURE sp_DajNarackiZaIsporaka
  40771.     @Sifra_Nar    smallint,
  40772.     @Datum_Od_Preth    smalldatetime,
  40773.     @Datum_Do_Preth    smalldatetime,
  40774.     @Datum_Nar_Od    smalldatetime,
  40775.     @Datum_Nar_Do    smalldatetime,
  40776.     @Sif_GrOrg_Zal    char(6),
  40777.     @Sifra_Pat        smallint=NULL,
  40778.     @Sif_GrPat        char(6)=NULL,
  40779.     @Lokacija        varchar(15)=NULL,
  40780.     @SamoPregled    char(1)='N'
  40781. AS
  40782. CREATE TABLE #Patnici
  40783. (Sifra_Pat    smallint)
  40784.  
  40785. IF @Sifra_Pat IS NOT NULL
  40786.     INSERT INTO #Patnici VALUES (@Sifra_Pat)
  40787. ELSE IF @Sif_GrPat IS NOT NULL
  40788.     INSERT INTO #Patnici SELECT Sifra_Pat FROM SGrPat WHERE Sif_GrPat=@Sif_GrPat
  40789. ELSE
  40790.     INSERT INTO #Patnici SELECT Sifra_Pat FROM Patnici 
  40791.  
  40792. CREATE TABLE #TmpPod
  40793. (Sifra_OE    smallint,
  40794. Sifra_Nar    smallint,
  40795. Broj_Nar    int,
  40796. Datum_Nar    smalldatetime,
  40797. Sifra_Kup    char(6),
  40798. Sifra_Obj    smallint,
  40799. ImeKup        varchar(80),
  40800. Sifra_Art    varchar(20),
  40801. ImeArt        varchar(40),
  40802. Kolic_Nar    decimal(18,6),
  40803. Kolic_Real    decimal(18,6),
  40804. Kolic_Zal    decimal(18,6),
  40805. Kolic_Preth    decimal(18,6),
  40806. Sifra_Pat    smallint,
  40807. Lokacija    varchar(10),
  40808. PrifPredlog    char(1),
  40809. Realiz_Na    smalldatetime,
  40810. Realiz_Kolic    decimal(18,6),
  40811. Sifra_Oe_Dok smallint,
  40812. NNabCena    decimal(18,6),
  40813. Sifra_Tar    char(3),
  40814. POsn        decimal(6,2))
  40815.   
  40816. IF @SamoPregled='D'
  40817.     INSERT INTO #TmpPod (Sifra_Oe, Sifra_Nar, Broj_Nar, Datum_Nar, Sifra_Kup, Sifra_Obj, Sifra_Art, Kolic_Nar, Kolic_Real, Sifra_Pat, PrifPredlog, Realiz_Na, Realiz_Kolic, ImeArt, Lokacija)
  40818.     SELECT N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_Kup, N.Sifra_Obj, S.Sifra_Art, S.Kolic, S.Realiz_Kolic, N.Sifra_Pat, S.PrifPredlog, S.Realiz_Na, S.Realiz_Kolic, A.ImeArt, A.Lokacija
  40819.     FROM StaNarac S INNER JOIN Naracki N ON S.NarID=N.NarID 
  40820.     INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art  
  40821.     INNER JOIN #Patnici P ON N.Sifra_Pat=P.Sifra_Pat
  40822.     WHERE N.Datum_Nar>=@Datum_Nar_Od AND N.Datum_Nar<=@Datum_Nar_Do AND N.Sifra_Nar=@Sifra_Nar 
  40823. ELSE
  40824. Begin
  40825.     INSERT INTO #TmpPod (Sifra_Oe, Sifra_Nar, Broj_Nar, Datum_Nar, Sifra_Kup, Sifra_Obj, Sifra_Art, Kolic_Nar, Kolic_Real, Sifra_Pat, ImeArt, Lokacija, Sifra_Tar, POsn)
  40826.     SELECT N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_Kup, N.Sifra_Obj, S.Sifra_Art, S.Kolic, S.Realiz_Kolic, N.Sifra_Pat, A.ImeArt, A.Lokacija, A.Sifra_Tar, T.ProcOsn
  40827.     FROM StaNarac S INNER JOIN Naracki N ON S.NarID=N.NarID 
  40828.     INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art INNER JOIN Tarifi T ON T.Sifra_Tar=A.Sifra_Tar
  40829.     INNER JOIN #Patnici P ON N.Sifra_Pat=P.Sifra_Pat
  40830.     WHERE N.Datum_Nar>=@Datum_Nar_Od AND N.Datum_Nar<=@Datum_Nar_Do AND N.Sifra_Nar=@Sifra_Nar AND (S.PrifPredlog IS NULL OR S.PrifPredlog<>'N') AND S.Realiz_Na IS NULL
  40831.  
  40832.     UPDATE #TmpPod SET Sifra_Oe_Dok=P.OE_OS FROM Patnici P WHERE #TmpPod.Sifra_Pat=P.Sifra_Pat AND #TmpPod.Lokacija='OS'
  40833.     UPDATE #TmpPod SET Sifra_Oe_Dok=P.OE_Rek FROM Patnici P WHERE #TmpPod.Sifra_Pat=P.Sifra_Pat AND #TmpPod.Lokacija='REK'
  40834.     UPDATE #TmpPod SET Sifra_Oe_Dok=P.OE_Rep FROM Patnici P WHERE #TmpPod.Sifra_Pat=P.Sifra_Pat AND #TmpPod.Lokacija='REP'
  40835.     Declare @SifOE_sGrOrg smallint
  40836.     SELECT TOP 1 @SifOE_sGrOrg=S.Sifra_OE FROM SGrOrg S WHERE S.Sif_GrOrg=@Sif_GrOrg_Zal ORDER BY S.Sifra_OE 
  40837.     UPDATE #TmpPod SET Sifra_Oe_Dok=@SifOE_sGrOrg WHERE Sifra_Oe_Dok IS NULL
  40838.  
  40839.     UPDATE #TmpPod SET NNabCena=S.NNabCena FROM Soart S WHERE #TmpPod.Sifra_OE_Dok=S.Sifra_OE AND #TmpPod.Sifra_Art=S.Sifra_Art
  40840.  
  40841.     CREATE TABLE #TmpZal
  40842.     (Sifra_Art    varchar(20),
  40843.     Kolic        decimal(18,6))
  40844.     
  40845.     INSERT INTO #TmpZal SELECT S.Sifra_Art, SUM(S.Vlez-S.Izlez) FROM Soart S INNER JOIN SGrOrg SO ON S.Sifra_OE=SO.Sifra_OE
  40846.     WHERE SO.Sif_GrOrg=@Sif_GrOrg_Zal AND Sifra_Art IN (SELECT Distinct Sifra_Art FROM #TmpPod)
  40847.     GROUP BY S.Sifra_Art
  40848.     
  40849.     UPDATE #TmpPod SET Kolic_Zal=Z.Kolic FROM #TmpZal Z WHERE #TmpPod.Sifra_Art=Z.Sifra_Art
  40850. End
  40851.  
  40852. CREATE TABLE #TmpKup (Sifra_Kup char(6), Sifra_Obj smallint)
  40853. INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #TmpPod
  40854.  
  40855. CREATE TABLE #TmpIspor
  40856. (Sifra_Kup    char(6),
  40857. Sifra_Obj    smallint,
  40858. Sifra_Art    varchar(20),
  40859. Kolic        decimal(18,6))
  40860.  
  40861. INSERT INTO #TmpIspor (Sifra_Kup, Sifra_Obj, Sifra_Art, Kolic)
  40862. SELECT D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, SUM(S.Kolic) FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID
  40863. INNER JOIN #TmpKup K ON D.Sifra_Kup=K.Sifra_Kup AND K.Sifra_Obj IS NULL
  40864. INNER JOIN #TmpZal Z ON S.Sifra_Art=Z.Sifra_Art
  40865. WHERE D.VlIzl='I' AND D.Sifra_Za=1 AND D.Datum_Dok>=@Datum_Od_Preth AND D.Datum_Dok<=@Datum_Do_Preth
  40866. GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  40867.  
  40868. INSERT INTO #TmpIspor (Sifra_Kup, Sifra_Obj, Sifra_Art, Kolic)
  40869. SELECT D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, SUM(S.Kolic) FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID
  40870. INNER JOIN #TmpKup K ON D.Sifra_Kup=K.Sifra_Kup AND K.Sifra_Obj IS NOT NULL AND D.Sifra_Obj=K.Sifra_Obj
  40871. INNER JOIN #TmpZal Z ON S.Sifra_Art=Z.Sifra_Art
  40872. WHERE D.VlIzl='I' AND D.Sifra_Za=1 AND D.Datum_Dok>=@Datum_Od_Preth AND D.Datum_Dok<=@Datum_Do_Preth
  40873. GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  40874.  
  40875. UPDATE #TmpPod SET Kolic_Preth=P.Kolic  FROM #TmpIspor P  
  40876. WHERE #TmpPod.Sifra_Art=P.Sifra_Art AND #TmpPod.Sifra_Kup=P.Sifra_Kup AND #TmpPod.Sifra_Obj=P.Sifra_Obj AND #TmpPod.Sifra_OBj IS NOT NULL
  40877.  
  40878. UPDATE #TmpPod SET Kolic_Preth=P.Kolic FROM #TmpIspor P   
  40879. WHERE #TmpPod.Sifra_Art=P.Sifra_Art AND #TmpPod.Sifra_Kup=P.Sifra_Kup AND #TmpPod.Sifra_Obj IS NULL AND #TmpPod.Sifra_Obj IS NULL
  40880.  
  40881. UPDATE #TmpPod SET ImeKup=K.ImeKup FROM Komint K WHERE #TmpPod.Sifra_Kup=K.Sifra_Kup 
  40882. UPDATE #TmpPod SET ImeKup=rtrim(ImeKup) +' '+K.ImeObj FROM KObjekti K WHERE #TmpPod.Sifra_Kup=K.Sifra_Kup AND #TmpPod.Sifra_Obj IS NOT NULL AND #TmpPod.Sifra_Obj=K.Sifra_Obj
  40883.  
  40884. SELECT P.* FROM #TmpPod P ORDER BY P.Datum_Nar, P.Sifra_OE, P.SIfra_Nar, P.Broj_Nar, P.Sifra_Art
  40885.  
  40886.  
  40887.  
  40888.  
  40889.  
  40890. Go
  40891. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnarackizaodobr]'))
  40892. drop procedure [dbo].[sp_dajnarackizaodobr]
  40893.  
  40894. Go
  40895.  
  40896.  
  40897.  
  40898.  
  40899.  
  40900. CREATE       PROCEDURE [dbo].[sp_DajNarackiZaOdobr]
  40901.     @Datum_Nar_Od    smalldatetime,
  40902.     @Datum_Nar_Do    smalldatetime,
  40903.     @Sifra_Pat        smallint=NULL,
  40904.     @Sif_GrPat        char(6)=NULL,
  40905.     @Sifra_Nar        smallint=NULL,
  40906.     @SamoPregled    char(1)=NULL
  40907. AS
  40908. CREATE TABLE #Patnici
  40909. (Sifra_Pat    smallint)
  40910.  
  40911. IF @Sifra_Pat IS NOT NULL
  40912.     INSERT INTO #Patnici VALUES (@Sifra_Pat)
  40913. ELSE IF @Sif_GrPat IS NOT NULL
  40914.     INSERT INTO #Patnici SELECT Sifra_Pat FROM SGrPat WHERE Sif_GrPat=@Sif_GrPat
  40915. ELSE
  40916.     INSERT INTO #Patnici SELECT Sifra_Pat FROM Patnici 
  40917.  
  40918. CREATE TABLE #TmpPod
  40919. (Sifra_OE    smallint,
  40920. Sifra_Nar    smallint,
  40921. Broj_Nar    int,
  40922. Datum_Nar    smalldatetime,
  40923. Sifra_Kup    char(6),
  40924. Sifra_Obj    smallint,
  40925. ImeKup        varchar(80),
  40926. Sifra_Art    varchar(20),
  40927. ImeArt        varchar(40),
  40928. Kolic_Nar    decimal(18,6),
  40929. Kolic_Real    decimal(18,6),
  40930. Kolic_Zal    decimal(18,6),
  40931. Kolic_Preth    decimal(18,6),
  40932. Sifra_Pat    smallint,
  40933. Lokacija    varchar(10),
  40934. PrifPredlog    char(1),
  40935. Realiz_Na    smalldatetime,
  40936. Realiz_Kolic    decimal(18,6),
  40937. Sifra_Oe_Dok smallint,
  40938. NNabCena    decimal(18,6),
  40939. Sifra_Tar    char(3),
  40940. POsn        decimal(6,2),
  40941. Rok            varchar(25),
  40942. Kolic_BO    decimal(18,6),
  40943. Odobril        varchar(10))
  40944.  
  40945. DECLARE @SSQL as varchar(3000)
  40946.   
  40947. IF (@SamoPregled IS NOT NULL)
  40948. BEGIN
  40949.     SET @SSQL = '
  40950.     INSERT INTO #TmpPod (Sifra_Kup, Sifra_Obj, Sifra_Art, 
  40951.             ImeArt, Sifra_Oe, Sifra_Nar, Broj_Nar, Datum_Nar, Kolic_Nar, PrifPredlog, Kolic_BO, Lokacija, Rok, Odobril)
  40952.     SELECT  N.Sifra_Kup, N.Sifra_Obj, S.Sifra_Art, A.ImeArt, S.Sifra_Oe, S.Sifra_Nar, S.Broj_Nar, N.Datum_Nar, 
  40953.             S.Kolic, S.PrifPredlog, S.Kolic_BO, S.Lokacija, S.KontrSer, S.Odobril
  40954.     FROM    StaNarac S INNER JOIN Naracki N ON S.NarID=N.NarID
  40955.                     INNER JOIN #Patnici P ON N.Sifra_Pat=P.Sifra_Pat
  40956.                     INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  40957.     WHERE N.Datum_Nar >= ''' + cast(@Datum_Nar_Od as varchar(30))  + '''' +
  40958.         ' AND N.Datum_Nar <= ''' + cast(@Datum_Nar_Do as varchar(30)) + ''''  + ' AND N.Sifra_Nar = ' + cast(@Sifra_Nar as varchar(10))
  40959.     IF (@SamoPregled = 'O')
  40960.         SET @SSQL = @SSQL + ' AND (S.Kolic_BO > 0 OR S.PrifPredlog =''N'' )'
  40961.     IF (@SamoPregled = 'M')
  40962.         SET @SSQL = @SSQL + ' AND (S.Kolic_BO > 0 OR S.PrifPredlog =''N'') AND S.Odobril IS NULL '
  40963.     IF (@SamoPregled = 'N')
  40964.         SET @SSQL = @SSQL + ' AND (S.Kolic_BO IS NULL OR S.Kolic_BO=0) AND (S.PrifPredlog IS NULL OR S.PrifPredlog<>''N'')'
  40965.  
  40966. --    PRINT(@SSQL)
  40967.     EXEC(@SSQL)
  40968.             
  40969.     UPDATE #TmpPod SET ImeKup=K.ImeKup FROM Komint K WHERE #TmpPod.Sifra_Kup=K.Sifra_Kup 
  40970.     UPDATE #TmpPod SET ImeKup=rtrim(ImeKup) + ' ' +K.ImeObj FROM KObjekti K WHERE #TmpPod.Sifra_Kup=K.Sifra_Kup AND #TmpPod.Sifra_Obj IS NOT NULL AND #TmpPod.Sifra_Obj=K.Sifra_Obj
  40971.             
  40972. END
  40973. ELSE
  40974. Begin
  40975.  
  40976.     INSERT INTO #TmpPod (Sifra_Oe, Sifra_Nar, Broj_Nar, Datum_Nar, Sifra_Kup, Sifra_Obj, 
  40977.                          Sifra_Art, Kolic_Nar, Kolic_Real, Sifra_Pat, ImeArt, Lokacija, Sifra_Tar, POsn, Rok)
  40978.     SELECT N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_Kup, N.Sifra_Obj, 
  40979.                         S.Sifra_Art, S.Kolic, S.Realiz_Kolic, N.Sifra_Pat, A.ImeArt, A.Lokacija, A.Sifra_Tar, T.ProcOsn, S.KontrSer
  40980.     FROM StaNarac S INNER JOIN Naracki N ON S.NarID=N.NarID 
  40981.     INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art INNER JOIN Tarifi T ON T.Sifra_Tar=A.Sifra_Tar
  40982.     INNER JOIN #Patnici P ON N.Sifra_Pat=P.Sifra_Pat
  40983.     WHERE N.Datum_Nar>=@Datum_Nar_Od AND N.Datum_Nar<=@Datum_Nar_Do AND N.Sifra_Nar=@Sifra_Nar AND (S.PrifPredlog IS NULL OR S.PrifPredlog<>'N') AND (S.Lokacija = '' OR S.Lokacija IS NULL) AND S.Realiz_Na IS NULL
  40984.     
  40985.     UPDATE #TmpPod SET ImeKup=K.ImeKup FROM Komint K WHERE #TmpPod.Sifra_Kup=K.Sifra_Kup 
  40986.     UPDATE #TmpPod SET ImeKup=rtrim(ImeKup) +' '+K.ImeObj FROM KObjekti K WHERE #TmpPod.Sifra_Kup=K.Sifra_Kup AND #TmpPod.Sifra_Obj IS NOT NULL AND #TmpPod.Sifra_Obj=K.Sifra_Obj
  40987.  
  40988. End
  40989.  
  40990. SELECT    cast(P.Sifra_Oe as varchar(5)) + '-' + cast(P.Sifra_Nar as varchar(6)) + '\' + cast(P.Broj_Nar as varchar(10)) AS Br_Nar, P.* 
  40991. FROM #TmpPod P 
  40992. ORDER BY P.Datum_Nar, P.Sifra_OE, P.SIfra_Nar, P.Broj_Nar, P.Sifra_Art
  40993.  
  40994.  
  40995.  
  40996.  
  40997.  
  40998.  
  40999.  
  41000.  
  41001.  
  41002.  
  41003. Go
  41004. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnarid_nar]'))
  41005. drop procedure [dbo].[sp_dajnarid_nar]
  41006.  
  41007. Go
  41008.  
  41009. create PROCEDURE sp_DajNarID_Nar
  41010.     @Sifra_Oe    smallint,
  41011.     @Sifra_Nar    smallint,
  41012.     @Broj_Nar    int,
  41013.     @NarID        int output
  41014. AS
  41015.     Select @NarID = NarId
  41016.     From Naracki
  41017.     where @Sifra_Oe=Sifra_Oe and @Sifra_Nar=Sifra_Nar and @Broj_Nar=Broj_Nar
  41018.  
  41019.  
  41020.  
  41021. Go
  41022. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajnepecdok]'))
  41023. drop procedure [dbo].[sp_dajnepecdok]
  41024.  
  41025. Go
  41026.  
  41027.  
  41028. CREATE   PROCEDURE sp_DajNePecDok
  41029.     @Datum_Od    smalldatetime,
  41030.     @Datum_Do    smalldatetime,
  41031.     @Sifra_Dok    varchar(200),
  41032.     @Sifra_OE    varchar(200)=Null,
  41033.     @BrZa_Pec_Dok    smallint = Null
  41034. AS
  41035.     Declare @SSQL as varchar(4000)
  41036.     Set @SSQL = ' Select Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, Datum_Vnes, Br_Kopii
  41037.             From Dokr Where Sifra_Dok In ( ' + @Sifra_Dok + ') '
  41038.     IF @Datum_Od IS NOT NULL
  41039.         Set @SSQL = @SSQL + ' And Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  41040.     IF @Datum_Do IS NOT NULL
  41041.         Set @SSQL = @SSQL + ' And Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '    
  41042.     If @Sifra_OE IS NOT NULL
  41043.         Set @SSQL = @SSQL + ' And Sifra_OE In ( ' + @Sifra_OE + ') ' 
  41044.     If @BrZa_Pec_Dok Is Null
  41045.         Set @SSQL = @SSQL + ' And Pec_Dok Is Null '
  41046.     Else 
  41047.         Set @SSQL = @SSQL + ' And (Pec_Dok IS NULL OR Pec_Dok= ' + Cast(@BrZa_Pec_Dok as varchar(6)) + ') '
  41048.     Exec(@SSQL)
  41049.  
  41050.  
  41051.  
  41052. Go
  41053. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajneprenfindok]'))
  41054. drop procedure [dbo].[sp_dajneprenfindok]
  41055.  
  41056. Go
  41057. CREATE   PROCEDURE sp_DajNePrenFinDok
  41058.     @KoiOE    varchar(200)=NULL,
  41059.     @KoiDok    varchar(100)=NULL,
  41060.     @KojObj    char(1)
  41061. AS
  41062. Declare @SSQL    varchar(5000)
  41063. SET @SSQL = 'SELECT Sifra_OE OE, Sifra_Dok Dok, Broj_Dok BrDok, BrojDok, 
  41064.             Sifra_Nal SifNal, Broj_Nal BrNal, Datum_Nal DatNal, Kto, Sifra_Za SZa, 
  41065.             Sifra_Kup Kup, Dolzi Dol, Pobaruva Pob, Plateno_Dolzi PlDol, Plateno_Pobar PlPob,
  41066.             Dev_Dolzi DevDol, Dev_Pobaruva DevPob, Dev_Plat_Dolzi DevPlDol, Dev_Plat_Pobar DevPlPob,
  41067.             KojaVal Val, Sifra_Pat Pat, Datum_Dok Dat, Rok, Opis, Sifra_Nivo Nivo, Danok1, Danok2
  41068.             FROM AnFinDok WHERE (Prenesen IS NULL OR RTrim(Prenesen)='''' OR 
  41069.             PatIndex(''%'+@KojObj + '%'', Prenesen)=0) '    
  41070. IF @KoiOE IS NOT NULL 
  41071.     SET @SSQL = @SSQL + ' AND Sifra_OE IN (' + @KoiOE + ') '
  41072. IF @KoiDok IS NOT NULL 
  41073.     SET @SSQL = @SSQL + ' AND Sifra_Dok IN (' + @KoiDok + ') '
  41074. EXEC (@SSQL)
  41075.  
  41076.  
  41077. Go
  41078. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajobjektizapat]'))
  41079. drop procedure [dbo].[sp_dajobjektizapat]
  41080.  
  41081. Go
  41082.  
  41083.  
  41084. CREATE  PROCEDURE sp_DajObjektiZaPat
  41085.     @Sifra_Pat    smallint, 
  41086.     @KlkDena    smallint = 0, 
  41087.     @SoPodelbi    char(1) = '',
  41088.     @Sifra_Grad    smallint = NULL, 
  41089.     @Sifra_Reg    smallint = NULL,
  41090.     @SamoKupSoReg char(1)=''
  41091. AS
  41092.     Declare @SSQL varchar(5000)
  41093. SET @SSQL='SELECT O.Sifra_Kup, O.Sifra_Obj, O.ImeObj, O.Adresa, O.Smesto, O.Posta, O.Telefon, O.TelMobil, SubString(O.Kontakt,1,20) Kontakt, O.Sifra_Vpj Vpj'
  41094. If @SoPodelbi = 'D'  
  41095.     SET @SSQL = @SSQL + ', O.Aktiven, O.TipKup, O.Sifra_Grad, O.KDrugo1, O.KDrugo2, O.KDrugo3, O.BrProdMesta, O.BrAktProdMesta, O.m2 '
  41096. SET @SSQL = @SSQL + ' FROM KObjekti O INNER JOIN KomintPat P ON O.Sifra_Kup=P.Sifra_Kup AND O.Sifra_Obj=P.Sifra_Obj
  41097.     WHERE O.Sifra_Obj > 0 AND (O.Aktiven IS NULL OR O.Aktiven <>''N'') 
  41098.     AND O.Sifra_Kup IN (SELECT SIFRA_KUP FROM KOMINT WHERE (Aktiven IS NULL OR Aktiven <>''N'') 
  41099.     AND P.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(5)) + ' '
  41100. If @Sifra_Grad IS NOT NULL 
  41101.     SET @SSQL = @SSQL + ' AND (Sifra_Grad = ' + cast(@Sifra_Grad as varchar(5)) + '
  41102.              OR Sifra_Kup IN (Select Sifra_Kup from KObjekti Where Sifra_Grad = ' + cast(@Sifra_Grad as varchar(5)) + ' AND (Aktiven IS NULL OR Aktiven <>''N'') ))'
  41103. If @Sifra_Reg IS NOT NULL
  41104.     SET @SSQL = @SSQL + ' AND (Sifra_Reg = '+cast(@Sifra_Reg as varchar(5)) + '
  41105.              OR Sifra_Kup IN (Select Sifra_Kup from KObjekti Where Sifra_Reg = '+cast(@Sifra_Reg as varchar(5)) + ' AND (Aktiven IS NULL OR Aktiven <>''N'') ))'
  41106. If @KlkDena > 0 
  41107. Begin
  41108.     Declare @DatPoc As smalldatetime 
  41109.     SET @DatPoc = DateAdd(day, @KlkDena * -1, GetDate())
  41110.     SET @SSQL = @SSQL + ' AND (DodadenNa >= '''+cast(@DatPoc as varchar(35)) + ''' OR IzmenetNa >= '''+cast(@DatPoc as varchar(35)) + ''') '
  41111. End
  41112. If @SamoKupSoReg = 'D'
  41113.     SET @SSQL = @SSQL + ' AND (Sifra_Reg IS NOT NULL OR Sifra_Kup IN (SELECT Sifra_Kup FROM KObjekti WHERE Sifra_Reg IS NOT NULL))'
  41114. SET @SSQL = @SSQL + ' )'
  41115. EXEC (@SSQL)
  41116.  
  41117.  
  41118.  
  41119. Go
  41120. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajobjektizaprenos]'))
  41121. drop procedure [dbo].[sp_dajobjektizaprenos]
  41122.  
  41123. Go
  41124.  
  41125. CREATE PROCEDURE sp_DajObjektiZaPrenos
  41126. AS
  41127.     SELECT M.*, O.Sifra_OE, O.OrgEdVoMark  FROM Marketi M
  41128.     INNER  JOIN OrgEd O ON M.Sifra_Mark = O.Sifra_Mark
  41129.     WHERE M.ID_Server IS NOT NULL  AND  M.ID_Server <> ''
  41130.  
  41131.  
  41132.  
  41133. Go
  41134. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajobjektizawebnarac]'))
  41135. drop procedure [dbo].[sp_dajobjektizawebnarac]
  41136.  
  41137. Go
  41138. Create   PROCEDURE sp_DajObjektiZaWEBNarac
  41139. AS
  41140.    SELECT Sifra_Kup, Sifra_Obj, ImeObj, Adresa, Posta, SMesto, Telefon ,eMail, Kontakt FROM KObjekti
  41141.     
  41142.  
  41143.  
  41144.  
  41145.  
  41146. Go
  41147. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajodscanlistagrupirano]'))
  41148. drop procedure [dbo].[sp_dajodscanlistagrupirano]
  41149.  
  41150. Go
  41151.  
  41152.  
  41153.  
  41154.  
  41155. CREATE     PROCEDURE sp_DajOdScanListaGrupirano
  41156.     @Sifra_OE    smallint,
  41157.     @Tip_Lista    smallint,
  41158.     @Broj_Lista    int
  41159. AS
  41160. CREATE TABLE #TmpScanLista
  41161.     (Rbr_Scan smallint,
  41162.     Nom_Scan varchar (100),
  41163.     Kolic_Pak decimal(18, 6),
  41164.     Kolic decimal(18, 6),
  41165.     LotBr varchar (50),
  41166.     RokRed varchar (6),
  41167.     Lokacija varchar (50),
  41168.     Sifra_KatStatus smallint,
  41169.     Sifra_KatPak smallint,
  41170.     Sifra_Art varchar (20))
  41171. INSERT INTO #TmpScanLista (Rbr_Scan,Nom_Scan,Kolic_Pak,Kolic,LotBr,RokRed,Lokacija,Sifra_KatStatus,Sifra_KatPak,Sifra_Art)
  41172. SELECT Rbr_Scan,Nom_Scan,Kolic_Pak,Kolic,LotBr,RokRed,Lokacija,Sifra_KatStatus,Sifra_KatPak,Sifra_Art
  41173. FROM ScanLista WHERE Sifra_OE=@Sifra_OE AND Tip_Lista=@Tip_Lista AND Broj_Lista=@Broj_Lista
  41174. Declare @PozChr29 int
  41175. Declare @KodEAN  varchar(50)
  41176. Declare @Sifra_Art    varchar(20)
  41177. Declare @Kolic        decimal(18,6)
  41178. Declare @Kolic_Pak    decimal(18,6)
  41179. Declare @Sostojba    decimal(18,6)
  41180. Declare @Rbr         int
  41181. Declare @Nom_Pakuv    varchar(50)
  41182. Declare @Kolic1        decimal(18,6)
  41183. Declare @Sifra_KatPak    smallint
  41184. Declare @Faktor2    decimal(18,6)
  41185. Declare @Sodrzi_Kolic    decimal(18,6)
  41186. Declare @Nom_Pomalo    varchar(50)
  41187. Declare TabM Cursor Fast_Forward For  Select Sifra_Art, Kolic, KOlic_Pak, Rbr_Scan, Nom_Scan From #TmpScanLista
  41188. Open TabM
  41189. Fetch Next From TabM Into @Sifra_Art, @Kolic, @Kolic_Pak, @Rbr, @Nom_Pakuv
  41190. While @@Fetch_Status = 0
  41191. Begin        
  41192.     IF @Sifra_Art IS NULL
  41193.     Begin
  41194.         Set @PozChr29 = Charindex(char(29), @Nom_Pakuv)
  41195.         IF (Substring(@Nom_Pakuv,1,2)='02' or Substring(@Nom_Pakuv,1,2)='01') AND @PozChr29>0    --ova e znak deka e paleta
  41196.         Begin
  41197.             SET @KodEAN = Substring(@Nom_Pakuv, 4, 13)
  41198.         End
  41199.         ELSE
  41200.         Begin
  41201.             SET @KodEAN = @Nom_Pakuv
  41202.         End
  41203.         SELECT @Sifra_Art = Sifra_Art, @Sodrzi_Kolic = Sodrzi_Kolic, @Sifra_KatPak = Sifra_KatPak, @Nom_Pomalo = Nom_Pomalo 
  41204.                 FROM KatPakuv 
  41205.                 WHERE Nom_Pakuv = @KodEAN AND Sifra_KatPak IN (SELECT Sifra_KatPak FROM TipKatPakuv WHERE Sifra_Pak=2)     --2=paketi
  41206.         set @Faktor2 = 1
  41207.                 if @Sifra_KatPak = 4
  41208.         begin
  41209.             SELECT @Faktor2 = Sodrzi_Kolic FROM KatPakuv 
  41210.                     WHERE Sifra_Art = @Sifra_Art and Nom_Pakuv = @Nom_Pomalo AND Sifra_KatPak IN (SELECT Sifra_KatPak FROM TipKatPakuv WHERE Sifra_Pak=2)     --2=paketi
  41211.                 end
  41212.         IF @Sifra_Art IS NULL
  41213.                    Begin
  41214.             SELECT @Sifra_Art = Sifra_Art 
  41215.                         FROM KatPakuv 
  41216.                         WHERE Nom_Pomalo = @KodEAN AND Sifra_KatPak_Pomalo is null 
  41217.             Set @Sodrzi_Kolic = 1
  41218.                    End
  41219.          else
  41220.             set @Sodrzi_Kolic = @Sodrzi_Kolic * @Faktor2
  41221.                 set @Kolic1 = @Kolic_Pak * @Sodrzi_Kolic
  41222.         IF @Sifra_Art IS NOT NULL    
  41223.             UPDATE #TmpScanLista SET Sifra_Art=@Sifra_Art, Kolic = @Kolic1 WHERE Rbr_Scan=@Rbr
  41224.     End
  41225.     Fetch Next From TabM Into @Sifra_Art, @Kolic, @Kolic_Pak, @Rbr, @Nom_Pakuv
  41226. End
  41227. Close TabM
  41228. Deallocate TabM
  41229. SELECT S.Sifra_Art, A.ImeArt, A.EdMera, S.Lokacija,S.LotBr,S.RokRed,S.Sifra_KatStatus,S.Sifra_KatPak, SUM(S.Kolic_Pak) Kolic_Pak, SUM(S.Kolic) Kolic
  41230. FROM #TmpScanLista S LEFT OUTER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  41231. GROUP BY S.Sifra_Art,A.ImeArt,A.EdMera,S.Lokacija,S.LotBr,S.RokRed,S.Sifra_KatStatus,S.Sifra_KatPak
  41232. order by S.Sifra_Art, S.RokRed
  41233.  
  41234.  
  41235.  
  41236. Go
  41237. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajodscanlistagrupirano10]'))
  41238. drop procedure [dbo].[sp_dajodscanlistagrupirano10]
  41239.  
  41240. Go
  41241.  
  41242. CREATE      PROCEDURE sp_DajOdScanListaGrupirano10
  41243.     @Sifra_OE    smallint,
  41244.     @Tip_Lista    smallint,
  41245.     @Broj_Lista    int
  41246. AS
  41247.  
  41248. CREATE TABLE #TmpScanLista
  41249.     ( Rbr_Scan smallint,
  41250.     Nom_Scan varchar (100),
  41251.     Kolic_Pak decimal(18, 6),
  41252.     Kolic decimal(18, 6),
  41253.     LotBr varchar (50),
  41254.     RokRed varchar (6),
  41255.     Lokacija varchar (50),
  41256.     Sifra_KatStatus smallint,
  41257.     Sifra_KatPak smallint,
  41258.     Sifra_Art varchar (20),
  41259.     Lokac_Id varchar(30))
  41260.  
  41261. INSERT INTO #TmpScanLista 
  41262. ( Rbr_Scan,Nom_Scan,Kolic_Pak,Kolic,LotBr,RokRed,Lokacija,Sifra_KatStatus,Sifra_KatPak,Sifra_Art,Lokac_Id )
  41263. SELECT Rbr_Scan,Nom_Scan,Kolic_Pak,Kolic,LotBr,RokRed,Lokacija,Sifra_KatStatus,Sifra_KatPak,Sifra_Art, WL.Lokac_Id
  41264. FROM ScanLista S
  41265. left outer join WhmLokacija WL
  41266.     on S.Sifra_Oe = WL.Sifra_Oe and S.Lokacija = WL.Lokac_BarKod
  41267. WHERE S.Sifra_OE=@Sifra_OE AND Tip_Lista=@Tip_Lista AND Broj_Lista=@Broj_Lista
  41268.  
  41269. Declare @PozChr29 int
  41270. Declare @KodEAN  varchar(50)
  41271. Declare @Sifra_Art    varchar(20)
  41272. Declare @Kolic        decimal(18,6)
  41273. Declare @Kolic_Pak    decimal(18,6)
  41274. Declare @Sostojba    decimal(18,6)
  41275. Declare @Rbr         int
  41276. Declare @Nom_Pakuv    varchar(50)
  41277. Declare @Kolic1        decimal(18,6)
  41278. Declare @Sifra_KatPak    smallint
  41279. Declare @Faktor2    decimal(18,6)
  41280. Declare @Sodrzi_Kolic    decimal(18,6)
  41281. Declare @Nom_Pomalo    varchar(50)
  41282. Declare TabM Cursor Fast_Forward For  Select Sifra_Art, Kolic, KOlic_Pak, Rbr_Scan, Nom_Scan From #TmpScanLista
  41283. Open TabM
  41284. Fetch Next From TabM Into @Sifra_Art, @Kolic, @Kolic_Pak, @Rbr, @Nom_Pakuv
  41285.  
  41286. While @@Fetch_Status = 0
  41287. Begin        
  41288.     IF @Sifra_Art IS NULL
  41289.     Begin
  41290.         Set @PozChr29 = Charindex(char(29), @Nom_Pakuv)
  41291.         --IF (Substring(@Nom_Pakuv,1,2)='02' or Substring(@Nom_Pakuv,1,2)='01') AND @PozChr29>0    --ova e znak deka e paleta
  41292.         IF (Substring(@Nom_Pakuv,1,2)='02' or Substring(@Nom_Pakuv,1,2)='01') AND len(@Nom_Pakuv) > 20    --ova e znak deka e paleta
  41293.         Begin
  41294.             SET @KodEAN = Substring(@Nom_Pakuv, 4, 13)
  41295.         End
  41296.         ELSE
  41297.         Begin
  41298.             SET @KodEAN = @Nom_Pakuv
  41299.         End
  41300.  
  41301.         SELECT @Sifra_Art = Sifra_Art, @Sodrzi_Kolic = ZaKolic, @Sifra_KatPak = Sifra_KatPak, @Nom_Pomalo = @KodEAN
  41302.                 FROM ABarPak
  41303.                 WHERE Nom = @KodEAN        -- Ovde imame dvoznaccnost ako ima poveke takvi zapisi
  41304.  
  41305.         IF @Sifra_Art IS NOT NULL    
  41306.         begin
  41307.             set @Kolic1 = @Kolic_Pak * @Sodrzi_Kolic
  41308.  
  41309.             UPDATE #TmpScanLista 
  41310.             SET Sifra_Art=@Sifra_Art, 
  41311.                 Kolic = @Kolic1 
  41312.             WHERE Rbr_Scan=@Rbr
  41313.         end
  41314.  
  41315.     End
  41316.  
  41317.     Fetch Next From TabM Into @Sifra_Art, @Kolic, @Kolic_Pak, @Rbr, @Nom_Pakuv
  41318. End
  41319. Close TabM
  41320. Deallocate TabM
  41321.  
  41322. SELECT S.Sifra_Art, A.ImeArt, A.EdMera, S.Lokacija,S.LotBr,S.RokRed,S.Sifra_KatStatus,S.Sifra_KatPak,
  41323.        SUM(S.Kolic_Pak) Kolic_Pak, SUM(S.Kolic) Kolic, S.Lokac_Id
  41324. FROM #TmpScanLista S
  41325. LEFT OUTER JOIN KatArt A 
  41326.     ON S.Sifra_Art=A.Sifra_Art
  41327. GROUP BY S.Sifra_Art,A.ImeArt,A.EdMera,S.Lokacija,S.LotBr,S.RokRed,S.Sifra_KatStatus,S.Sifra_KatPak, S.Lokac_Id
  41328. order by S.Sifra_Art, S.RokRed
  41329.  
  41330.  
  41331.  
  41332.  
  41333.  
  41334. Go
  41335. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajorged]'))
  41336. drop procedure [dbo].[sp_dajorged]
  41337.  
  41338. Go
  41339. CREATE procedure sp_DajOrgEd
  41340.     @Sif_GrOrg char(6)
  41341. As
  41342.     Select S.Sif_GrOrg, S.Sifra_Oe,O.ImeOrg  From SGrOrg S
  41343.     Inner Join Orged O on S.Sifra_oe=O.Sifra_Oe
  41344.     Where Sif_GrOrg=@Sif_GrOrg
  41345.  
  41346.  
  41347. Go
  41348. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajosnamorzasredstvo]'))
  41349. drop procedure [dbo].[sp_dajosnamorzasredstvo]
  41350.  
  41351. Go
  41352. CREATE PROCEDURE sp_DajOsnAmorZaSredstvo
  41353.     @Inv_Broj    char(10),
  41354.     @Godina        smallint,
  41355.     @Osn_Amor    decimal(18,6)=0 OUTPUT,
  41356.     @Otpis_Pret decimal(18,6)=0 OUTPUT
  41357. AS
  41358. IF EXISTS (SELECT * FROM PocSostOsn WHERE Inv_Broj=@Inv_Broj AND Godina=@Godina)
  41359.     Begin
  41360.         SELECT @Osn_Amor=Osn_Amor, @Otpis_Pret=Otpis_Pret FROM PocSostOsn WHERE Inv_Broj=@Inv_Broj AND Godina=@Godina
  41361.         RETURN 
  41362.     End
  41363. else
  41364.     SELECT @Osn_Amor=Osn_Amor, @Otpis_Pret=Otpis_Pret FROM StavOsnSred WHERE Inv_Broj=@Inv_Broj AND Tip_StaOsn IN ('P','I')
  41365. Go
  41366. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajozndeklart]'))
  41367. drop procedure [dbo].[sp_dajozndeklart]
  41368.  
  41369. Go
  41370.  
  41371.  
  41372.  
  41373. CREATE      PROCEDURE sp_DajOznDeklArt
  41374.     @Sifra_Art    varchar(20)    
  41375. As
  41376.     Select * from DeklArt where Sifra_Art=@Sifra_Art 
  41377.     Return @@ERROR
  41378.  
  41379.  
  41380.  
  41381. Go
  41382. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpapersizekonflokprn]'))
  41383. drop procedure [dbo].[sp_dajpapersizekonflokprn]
  41384.  
  41385. Go
  41386.  
  41387. CREATE  PROCEDURE sp_DajPaperSizeKonfLokPrn
  41388.     @Sifra_OE    smallint,
  41389.     @Sifra_Dok    smallint,
  41390.     @ImePC        varchar(30)
  41391. AS
  41392. IF EXISTS (SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND ImePC=@ImePC)
  41393. Begin
  41394.     SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND ImePC=@ImePC
  41395.     IF @@ROWCOUNT>0 RETURN
  41396. End
  41397. IF EXISTS (SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND ImePC IS NULL)
  41398. Begin
  41399.     SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND ImePC IS NULL
  41400.     IF @@ROWCOUNT>0 RETURN
  41401. End
  41402. IF EXISTS (SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE IS NULL AND Sifra_Dok=@Sifra_Dok AND ImePC IS NULL)
  41403. Begin
  41404.     SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE IS NULL AND Sifra_Dok=@Sifra_Dok AND ImePC IS NULL
  41405.     IF @@ROWCOUNT>0 RETURN
  41406. End
  41407. --ova sega na kraj ako sakame bas site dok od toj komjuter da se 
  41408. IF EXISTS (SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE IS NULL AND Sifra_Dok IS NULL AND ImePC=@ImePC)
  41409. Begin
  41410.     SELECT * FROM KonfLokPrn WHERE PaperName IS NOT NULL AND Sifra_OE IS NULL AND Sifra_Dok IS NULL AND ImePC=@ImePC
  41411.     IF @@ROWCOUNT>0 RETURN
  41412. End
  41413.  
  41414. SELECT top 1 NULL Sifra_Oe, NULL Grp_Kasa, NULL Lokacija, NULL ImePrinter, NULL FiskalenPrn, NULL ObicenPrn, 
  41415. NULL BrKopii, NULL BrKopiiSoKor, NULL FiskalenPrnSoKor, NULL KopijaPrn, NULL ImePrinterKopija, 
  41416. NULL Sifra_dok, NULL PaperName, NULL ImePC FROM KonfLokPrn
  41417.  
  41418.  
  41419.  
  41420.  
  41421. Go
  41422. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajplancenazaart]'))
  41423. drop procedure [dbo].[sp_dajplancenazaart]
  41424.  
  41425. Go
  41426.  
  41427.  
  41428. CREATE   PROCEDURE sp_DajPlanCenaZaArt
  41429.     @Sifra_OE    smallint,
  41430.     @Sifra_Art    varchar(20),
  41431.     @Datum_Cena    smalldatetime,
  41432.     @Cena        decimal(12,4) = 0 OUTPUT,
  41433.     @DanCena    char(1)='' OUTPUT,
  41434.     @ImaZapis    char(1) = 'N' OUTPUT,
  41435.     @Sifra_Tar    char(3) = '' OUTPUT,
  41436.     @POsn        decimal(6,2)=0 OUTPUT
  41437. AS
  41438.     Declare @Sif_GrOrg char(6)
  41439.     SELECT @Sif_GrOrg = G.Sif_GrOrg FROM GrOrg G Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @Sifra_OE WHERE G.ZaedPlanCeni='D'
  41440.     IF @Sif_GrOrg IS NULL
  41441.         SET @ImaZapis = 'N'
  41442.     ELSE
  41443.     Begin
  41444.     SELECT TOP 1 @Cena=Cena, @DanCena=DanCena FROM CeniPlanski 
  41445.     WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_Art=@Sifra_Art AND Vazi_Od<=@Datum_Cena ORDER BY Vazi_Od Desc
  41446.     IF @@RowCount < 1 SET @ImaZapis='N' ELSE SET @ImaZapis='D'
  41447.     IF @ImaZapis='D'
  41448.         SELECT @Sifra_Tar = T.Sifra_Tar, @POsn=T.ProcOsn FROM KatArt A INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar WHERE A.Sifra_Art=@Sifra_Art
  41449.     End
  41450.  
  41451.  
  41452.  
  41453.  
  41454. Go
  41455. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpodatartzaetiketa]'))
  41456. drop procedure [dbo].[sp_dajpodatartzaetiketa]
  41457.  
  41458. Go
  41459.  
  41460.  
  41461.  
  41462. CREATE   PROCEDURE sp_DajPodatArtZaEtiketa
  41463.     @Datum    smalldatetime = NULL,
  41464.     @Sifra_Art varchar(20),
  41465.     @RokTraDen as smallint =NULL
  41466. AS
  41467.     IF @Datum IS NULL SET @Datum=GetDate()
  41468.     IF @RokTraDen IS NULL or @RokTraDen <= 0 
  41469.         SET @RokTraDen=(select RokTraDen From katart Where Sifra_Art=@Sifra_Art)
  41470.     SELECT A.Sifra_Art, A.ImeArt, A.EdMera, A.Nom, A.RokTraDen, A.ImaKomerc, A.Tezina, A.Alt_ime,A.ImaBroevi,
  41471.      (case when day(DateAdd(day, @RokTraDen, @Datum)) < 10 then '0' + cast(day(DateAdd(day, @RokTraDen, @Datum)) as char(1)) Else cast(day(DateAdd(day, @RokTraDen, @Datum)) as char(2)) End) + '.' + 
  41472.     (case when month(DateAdd(day, @RokTraDen, @Datum)) < 10 then '0' + cast(month(DateAdd(day, @RokTraDen, @Datum)) as char(1)) Else cast(month(DateAdd(day, @RokTraDen, @Datum)) as char(2)) End) + '.' +
  41473.        cast(year(DateAdd(day, @RokTraDen, @Datum)) as char(4))
  41474.     as UpotrebDo,
  41475.     (case when day(@Datum) < 10 then '0' + cast(day(@Datum) as char(1)) Else cast(day(@Datum) as char(2)) End)     + '.' + 
  41476.     (case when month( @Datum) < 10 then '0' + cast(month(@Datum) as char(1)) Else cast(month(@Datum) as char(2)) End) + '.' +
  41477.     cast(year(@Datum) as char(4))
  41478.     as ProizvedenoNa,
  41479.       P.Nom_pakuv FROM KatArt A
  41480.      LEFT OUTER JOIN KatPakuv P ON A.Sifra_Art=P.Sifra_Art AND P.Sifra_KatPak=2
  41481.      WHERE A.Sifra_Art=@Sifra_Art
  41482.  
  41483.  
  41484.  
  41485. Go
  41486. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpodatartzawhmetik]'))
  41487. drop procedure [dbo].[sp_dajpodatartzawhmetik]
  41488.  
  41489. Go
  41490.  
  41491.  
  41492.  
  41493.  
  41494. CREATE   PROCEDURE [dbo].[sp_DajPodatArtZaWHMEtik]
  41495.     @Sifra_Art    varchar(20),
  41496.     @Sifra_KatPak smallint,
  41497.     @Rok        char(6),
  41498.     @LotBr        varchar(50),
  41499.     @Kolic        int=0,
  41500.     @DaliMK        char(1)='D'
  41501. AS
  41502. Declare @Batch varchar(50)
  41503. set @Batch = @LotBr
  41504.  
  41505. IF @Kolic=0 SELECT @Kolic=ZaKolic FROM ABarPak WHERE Sifra_Art=@Sifra_Art AND Sifra_KatPak=@Sifra_KatPak
  41506.  
  41507. SELECT A.Sifra_Art, CASE @DaliMK WHEN 'D' Then A.ImeArt Else A.Alt_Ime End AS ImeArt, @Kolic As Kolic,
  41508. '020'+B.Nom+'15'+@Rok+'37'+cast(cast(@Kolic as integer) as varchar(5))+char(29)+ Case @LotBr WHEN '' THEN '' ELSE '10'+@LotBr End As BarKod,
  41509. '(02)0'+B.Nom+'(15)'+@Rok+'(37)'+cast(cast(@Kolic as integer) as varchar(5))+ Case @LotBr WHEN '' THEN '' ELSE '(10)'+@LotBr End As BarKodPrik,
  41510. B.Nom as Content, @Rok as BestBefore, @Kolic as CountKol, @Batch as Batch 
  41511. FROM KatArt A INNER JOIN ABarPak B ON A.Sifra_Art=B.Sifra_Art 
  41512. WHERE A.Sifra_Art=@Sifra_Art AND B.Sifra_KatPak=@Sifra_KatPak
  41513.  
  41514.  
  41515.  
  41516.  
  41517.  
  41518.  
  41519. Go
  41520. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpodelbikup]'))
  41521. drop procedure [dbo].[sp_dajpodelbikup]
  41522.  
  41523. Go
  41524.  
  41525.  
  41526.  
  41527. CREATE    PROCEDURE sp_DajPodelbiKup
  41528.     @StaviVoTabela    char(1) = 'N',
  41529.     @SamoGradovi        char(1) = 'N'
  41530. AS
  41531.     CREATE TABLE #TmpPodelbi
  41532. (    Podelba        char(2),
  41533.     Sifra        varchar(11),
  41534.     Ime        varchar(40)
  41535. )
  41536. IF @SamoGradovi <> 'D'
  41537. BEGIN 
  41538.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'K1', cast(Sifra_1K as varchar(11)), Ime_1K FROM KDrugo1
  41539.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'K2', cast(Sifra_2K as varchar(11)), Ime_2K FROM KDrugo2
  41540.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'K3', cast(Sifra_3K as varchar(11)), Ime_3K FROM KDrugo3
  41541.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'TK', TipKup, ImeTipKup FROM GTipKup
  41542.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'KA', Sifra_Tip, ImeTip FROM TipKomint
  41543.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'VP', Sifra_Vpj, Ime_Vpj FROM VidProdObj
  41544. END
  41545.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'GR', cast(Sifra_Grad as varchar(11)), ImeGrad FROM Grad
  41546. IF @SamoGradovi = 'D'
  41547.     INSERT INTO #TmpPodelbi (Podelba, Sifra, Ime) SELECT 'RG', cast(Sifra_Reg as varchar(11)), ImeRegion FROM GRegion
  41548. IF @StaviVoTabela='D'
  41549. Begin
  41550.     CREATE TABLE ##TmpPodelbi
  41551. (    Podelba        char(2),
  41552.     Sifra        varchar(11),
  41553.     Ime        varchar(40)
  41554. )
  41555.     INSERT INTO ##TmpPodelbi SELECT * FROM #TmpPodelbi
  41556. End
  41557. ELSE
  41558.     SELECT *  FROM #TmpPodelbi
  41559.  
  41560.  
  41561.  
  41562. Go
  41563. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpodgrupizawebnarac]'))
  41564. drop procedure [dbo].[sp_dajpodgrupizawebnarac]
  41565.  
  41566. Go
  41567.  
  41568.  
  41569. CREATE        PROCEDURE sp_DajPodgrupiZaWEBNarac
  41570.     @ZemiArtSamoOdAsortLst    smallint = NULL,
  41571.     @KatAsortPoSto        char(2)='GP',
  41572.     @WebPodelPoSto        varchar(5)= NULL,
  41573.     @SamoVoPDA            char(1)=NULL
  41574. AS
  41575.  
  41576. IF @WebPodelPoSto Is Not NULL
  41577.     Begin
  41578.         IF @WebPodelPoSto ='DP'         --dauti: dobavuvac+podgrupa
  41579.         Begin
  41580.             IF @SamoVoPDA IS NOT NULL
  41581.             Begin
  41582.                 CREATE TABLE #TmpPodel (Sifra_Podg char(6), Ime_Podg varchar(40), Sifra_Gr char(3))
  41583.                 INSERT INTO #TmpPodel
  41584.                 Select Distinct a.kto as Sifra_Podg, k.imekup as Ime_Podg,'001' as Sifra_Gr
  41585.                 From katart a 
  41586.                 inner join komint k on a.kto=k.sifra_kup 
  41587.                 where VoPDA is not null and VoPDA=@SamoVoPDA    --'W'
  41588.         
  41589.                 UPDATE #TmpPodel SET Sifra_Gr = A.Sifra_Div FROM KatArt A WHERE #TmpPodel.Sifra_Podg=A.Kto
  41590.                 SELECT * FROM #TmpPodel
  41591.             End
  41592.             Else
  41593.                 SELECT Sifra_Podg, Ime_Podg, Sifra_Gr FROM Podgrupi
  41594.         End
  41595.     End
  41596. Else
  41597.     Begin 
  41598.         IF @KatAsortPoSto='GP'
  41599.         Begin
  41600.             CREATE TABLE #TmpKL
  41601.            (Rbr int IDENTITY (1, 1),
  41602.             Sifra    varchar(10))
  41603.             Declare @BrZap integer
  41604.             
  41605.             SELECT @BrZap= COUNT(DISTINCT Sifra2) FROM KatAsortLista WHERE Broj_ALista=@ZemiArtSamoOdAsortLst
  41606.             IF @BrZap IS NULL OR @BrZap=0
  41607.                 INSERT INTO #TmpKL (Sifra) SELECT Sifra_Podg FROM Podgrupi ORDER BY Sifra_Podg
  41608.             ELSE
  41609.                 INSERT INTO #TmpKL (Sifra) SELECT Sifra2 FROM KatAsortLista WHERE Broj_ALista=@ZemiArtSamoOdAsortLst ORDER BY Reden_Broj
  41610.         
  41611.             SELECT P.*, KL.Rbr FROM Podgrupi P INNER JOIN Grupi G ON P.Sifra_Gr=G.Sifra_Gr INNER JOIN KatAsortLista L ON G.Sifra_Gr=L.Sifra1
  41612.             INNER JOIN #TmpKL KL ON P.Sifra_Podg=KL.Sifra WHERE L.Broj_ALista = @ZemiArtSamoOdAsortLst  
  41613.         End
  41614.         ELSE IF @KatAsortPoSto='HA'
  41615.         Begin
  41616.             SELECT H.Sifra_KHier Sifra_Podg, H.Ime_KHier Ime_Podg, '001' as Sifra_Gr, 1 as Rbr FROM KatHier H 
  41617.             INNER JOIN KatAsortLista L ON L.Sifra1=H.Sifra_KHier
  41618.         End
  41619.     End
  41620.  
  41621.  
  41622.  
  41623.  
  41624.  
  41625.  
  41626.  
  41627.  
  41628. Go
  41629. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpodzaartponom]'))
  41630. drop procedure [dbo].[sp_dajpodzaartponom]
  41631.  
  41632. Go
  41633.  
  41634.  
  41635.  
  41636. CREATE    PROCEDURE sp_DajPodZaArtPoNom
  41637.     @Nom VARCHAR(50),
  41638.     @Sifra_Oe smallint = null
  41639. AS
  41640.     DECLARE @Sifra_Art VARCHAR(20)
  41641.     SELECT @Sifra_Art = Sifra_Art FROM ArkaKat WHERE Nom=@Nom
  41642.     IF @@ROWCOUNT < 1
  41643.         SELECT @Sifra_Art = Sifra_Art FROM ABarKod WHERE Nom=@Nom
  41644.     IF @Sifra_Art IS NOT NULL
  41645.         SELECT Sifra_Art, ImeArt, EdMera, CenaOsn as Cena FROM ArkaKat 
  41646.     WHERE Sifra_Art = @Sifra_Art
  41647.         
  41648.  
  41649.  
  41650.  
  41651.  
  41652.  
  41653. Go
  41654. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpodzatipdok]'))
  41655. drop procedure [dbo].[sp_dajpodzatipdok]
  41656.  
  41657. Go
  41658. create PROCEDURE [dbo].[sp_DajPodZaTipDok]
  41659.     @Sifra_Dok    smallint,
  41660.     @Sifra_Nal    smallint=NULL OUTPUT,
  41661.     @Broj_Nal    int=NULL OUTPUT,
  41662.     @Datum_Nal    smalldatetime=NULL OUTPUT,
  41663.     @Kto        varchar(10)=NULL OUTPUT
  41664. AS
  41665. Declare @Sts_Kniz char(1)
  41666.  
  41667.     SELECT @Sifra_Nal=Sifra_Nal, @Kto=SUBSTRING(KoeKto,1,4) FROM TipDok WHERE Sifra_Dok=@Sifra_Dok
  41668.     SELECT @Broj_Nal=MAX(Broj_Nal) FROM Nalozi WHERE Sifra_Nal=@Sifra_Nal 
  41669.     IF @Broj_Nal IS NOT NULL
  41670.         SELECT @Sts_Kniz=Sts_Kniz, @Datum_Nal=Datum_Nal FROM Nalozi WHERE Sifra_Nal=@Sifra_Nal AND Broj_Nal=@Broj_Nal
  41671.     ELSE SET @Broj_Nal=0
  41672.  
  41673.     IF @Broj_Nal=0 OR @Sts_Kniz='D'
  41674.     BEGIN
  41675.         SET @Broj_Nal=@Broj_Nal +1
  41676.         SET @Datum_Nal=dbo.fn_VratiDatum(GetDate())
  41677.         INSERT INTO Nalozi (Sifra_Nal, Broj_Nal, Datum_Nal, Sts_Kniz)
  41678.         VALUES (@Sifra_Nal, @Broj_Nal, @Datum_Nal, '')
  41679.     END
  41680.  
  41681.  
  41682.  
  41683. Go
  41684. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpopis_komobj]'))
  41685. drop procedure [dbo].[sp_dajpopis_komobj]
  41686.  
  41687. Go
  41688. CREATE  PROCEDURE sp_DajPopis_KomObj
  41689.     @Sifra_OE    smallint,
  41690.     @Sifra_Dok    smallint,
  41691.     @Datum_Od    smalldatetime,
  41692.     @Datum_Do    smalldatetime,
  41693.     @Sifra_Kup    char (6),
  41694.     @Sifra_Obj    char (6)
  41695. AS
  41696.     Declare @SSQL varchar(2000)
  41697.     Create Table #Art
  41698.     (
  41699.      Datum_Dok    smalldatetime,
  41700.      Broj_Dok    int,
  41701.      Rbr        Smallint,
  41702.      Sifra_Art    Varchar(20)
  41703.     )
  41704.     Insert Into #Art Select Min(Datum_Dok), Min(Broj_Dok), Min(Rbr), Sifra_Art 
  41705.             From PopisDok
  41706.             Where Sifra_Oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok and
  41707.                 Datum_PopisDok >= @Datum_Od and Datum_PopisDok <= @Datum_Do and
  41708.                 Sifra_Kup = @Sifra_Kup
  41709.             Group By Sifra_Art
  41710.     If @Sifra_Obj is null
  41711.         SELECT P.Sifra_Art, Sum(P.Ostaveno) as Zaliha
  41712.         From PopisDok P
  41713.         Inner Join #Art A On A.Sifra_Art = P.Sifra_Art
  41714.         Where P.Sifra_Oe = @Sifra_Oe and P.Sifra_Dok = @Sifra_Dok and
  41715.             P.Datum_PopisDok >= @Datum_Od and P.Datum_PopisDok <= @Datum_Do and
  41716.             P.Sifra_Kup = @Sifra_Kup
  41717.         Group By P.Sifra_Art, A.Datum_Dok, A.Broj_Dok, A.Rbr
  41718.         Order By A.Datum_Dok, A.Broj_Dok, A.Rbr
  41719.     Else
  41720.         SELECT P.Sifra_Art, Sum(P.Ostaveno) as Zaliha
  41721.         From PopisDok P
  41722.         Inner Join #Art A On A.Sifra_Art = P.Sifra_Art
  41723.         Where P.Sifra_Oe = @Sifra_Oe and P.Sifra_Dok = @Sifra_Dok and
  41724.             P.Datum_PopisDok >= @Datum_Od and P.Datum_PopisDok <= @Datum_Do and
  41725.             P.Sifra_Kup = @Sifra_Kup and P.Sifra_Obj = @Sifra_Obj
  41726.         Group By P.Sifra_Art, A.Datum_Dok, A.Broj_Dok, A.Rbr
  41727.         Order By A.Datum_Dok, A.Broj_Dok, A.Rbr
  41728.  
  41729.  
  41730. Go
  41731. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajposlkomercuslpokup]'))
  41732. drop procedure [dbo].[sp_dajposlkomercuslpokup]
  41733.  
  41734. Go
  41735.  
  41736.  
  41737.  
  41738. CREATE    PROCEDURE sp_DajPoslKomercUslPoKup   --spec. samo za rok i rabat
  41739.     @Datum    smalldatetime = Null
  41740. AS
  41741. Set Nocount On
  41742.     IF @Datum IS NULL   SET @Datum=GetDate()
  41743.     CREATE TABLE #TmpSiteTipKup (Tip_Sif_Kup char(1), Sif_Kup_Gen varchar(11), MaxDatum smalldatetime)
  41744.     INSERT INTO #TmpSiteTipKup SELECT Tip_Sif_Kup, Sif_Kup_Gen, Max(Datum_Od) FROM Usl_Komerc_Per 
  41745.     WHERE Datum_Od<= @Datum GROUP BY Tip_Sif_Kup, Sif_Kup_Gen
  41746.     CREATE TABLE #TmpUsl (Tip_Sif_Kup char(1), Sif_Kup_Gen varchar(11), Rok_Dosp smallint, Uces decimal(6,2))
  41747.     Declare @Tip_Sif_Kup char(1)
  41748.     Declare @Sif_Kup_Gen varchar(11)
  41749.     Declare @MaxDat smalldatetime
  41750.     Declare TabC Cursor Fast_Forward For Select Tip_Sif_Kup, Sif_Kup_Gen, MaxDatum From #TmpSiteTipKup
  41751.     Open TabC
  41752.     Fetch Next From TabC Into @Tip_Sif_Kup, @Sif_Kup_Gen, @MaxDat
  41753.     While @@Fetch_Status = 0
  41754.     Begin            
  41755.         INSERT INTO #TmpUsl (Tip_Sif_Kup, Sif_Kup_Gen, Rok_Dosp, Uces)
  41756.         SELECT @Tip_Sif_Kup, @Sif_Kup_Gen, Rok_Dosp, Uces FROM dbo.fix_dajcenazadatum('I', @Tip_Sif_Kup, @Sif_Kup_Gen, '', '', @MaxDat)
  41757.         Fetch Next From TabC Into @Tip_Sif_Kup, @Sif_Kup_Gen, @MaxDat
  41758.     End
  41759.     Close TabC
  41760.     Deallocate TabC
  41761.     CREATE TABLE #TmpGotova (Sifra_Kup varchar(20), Sifra_Tip varchar(11), Rok_Dosp smallint, Rabat decimal(6,2))
  41762.     INSERT INTO #TmpGotova (Sifra_Kup, Rok_Dosp, Rabat) SELECT Sif_Kup_Gen, Rok_Dosp, Uces FROM #TmpUsl WHERE Tip_Sif_Kup='K'
  41763.     INSERT INTO #TmpGotova (Sifra_Tip, Rok_Dosp, Rabat) SELECT Sif_Kup_Gen, Rok_Dosp, Uces FROM #TmpUsl WHERE Tip_Sif_Kup='T'
  41764.     SELECT * FROM #TmpGotova
  41765. Set Nocount Off
  41766.  
  41767.  
  41768.  
  41769.  
  41770.  
  41771. Go
  41772. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajposlkomercuslpokupipodelart]'))
  41773. drop procedure [dbo].[sp_dajposlkomercuslpokupipodelart]
  41774.  
  41775. Go
  41776.  
  41777. CREATE     PROCEDURE sp_DajPoslKomercUslPoKupIPodelArt   --spec. samo za rok i rabat
  41778.     @Datum    smalldatetime = Null
  41779. AS
  41780. Set Nocount On
  41781.     Declare @SSQL as varchar(5000)
  41782.  
  41783.     IF @Datum IS NULL   SET @Datum=GetDate()
  41784.  
  41785.     CREATE TABLE #TmpSiteTipKup (Tip_Sif_Kup char(1), Sif_Kup_Gen varchar(11), Tip_Sif_Art char(1), MaxDatum smalldatetime)
  41786.  
  41787.     Set @SSQL = ' INSERT INTO #TmpSiteTipKup 
  41788.             SELECT Tip_Sif_Kup, Sif_Kup_Gen, Tip_Sif_Art, Max(Datum_Od) 
  41789.             FROM Usl_Komerc_Per 
  41790.             WHERE Datum_Od<= ''' + Cast(@Datum as varchar(30)) + '''      
  41791.             GROUP BY Tip_Sif_Kup, Sif_Kup_Gen, Tip_Sif_Art '
  41792.     Exec(@SSQL)  -- napraveno so @SSQL 20.05.2010 zaradi sto javuvasse greska pri upgrade na bazite na sql2005 i sql2008
  41793.  
  41794.     CREATE TABLE #TmpUsl (Tip_Sif_Kup char(1), Sif_Kup_Gen varchar(11), Tip_Sif_Art char(1), Sif_Art_Gen varchar(11), Rok_Dosp smallint, Uces decimal(6,2))
  41795.     Declare @Tip_Sif_Kup char(1), @Tip_Sif_Art char(1)
  41796.     Declare @Sif_Kup_Gen varchar(11), @Sif_Art_Gen varchar(11)
  41797.     Declare @MaxDat smalldatetime
  41798.     Declare TabC Cursor Fast_Forward For Select Tip_Sif_Kup, Sif_Kup_Gen, Tip_Sif_Art, MaxDatum From #TmpSiteTipKup
  41799.     Open TabC
  41800.     Fetch Next From TabC Into @Tip_Sif_Kup, @Sif_Kup_Gen, @Tip_Sif_Art, @MaxDat
  41801.     While @@Fetch_Status = 0
  41802.     Begin
  41803.         Set @SSQL = ' SELECT ''' + @Tip_Sif_Kup + ''',''' + @Sif_Kup_Gen + ''',''' + @Tip_Sif_Art + ''', Sif_Art_Gen, Rok_Dosp, Uces 
  41804.                 FROM dbo.fix_dajcenazadatum(''I'', ''' + @Tip_Sif_Kup + ''',''' + @Sif_Kup_Gen + ''',''' + @Tip_Sif_Art + ''','''',''' + Cast(@MaxDat as varchar(30)) + ''')'   --trgnato 14.09.09, vrateno 04.11.09, treba za Multiprom
  41805.         INSERT INTO #TmpUsl (Tip_Sif_Kup, Sif_Kup_Gen, Tip_Sif_Art, Sif_Art_Gen, Rok_Dosp, Uces) Exec(@SSQL)
  41806.         --SELECT @Tip_Sif_Kup, @Sif_Kup_Gen, @Tip_Sif_Art, '', Rok_Dosp, Uces FROM dbo.fix_dajcenazadatum('I', @Tip_Sif_Kup, @Sif_Kup_Gen, @Tip_Sif_Art,'', @MaxDat)
  41807.         Fetch Next From TabC Into @Tip_Sif_Kup, @Sif_Kup_Gen, @Tip_Sif_Art, @MaxDat
  41808.     End
  41809.     Close TabC
  41810.     Deallocate TabC
  41811.     CREATE TABLE #TmpGotova (Sifra_Kup char(6), Sifra_Tip varchar(11), Sifra_Podelba varchar(20), Rok_Dosp smallint, Rabat decimal(6,2))
  41812.     INSERT INTO #TmpGotova (Sifra_Kup, Sifra_Podelba, Rok_Dosp, Rabat) SELECT Sif_Kup_Gen, Sif_Art_Gen, Rok_Dosp, Uces FROM #TmpUsl WHERE Tip_Sif_Kup='K'
  41813.     INSERT INTO #TmpGotova (Sifra_Tip, Sifra_Podelba, Rok_Dosp, Rabat) SELECT Sif_Kup_Gen, Sif_Art_Gen, Rok_Dosp, Uces FROM #TmpUsl WHERE Tip_Sif_Kup='T'
  41814.     SELECT * FROM #TmpGotova
  41815. Set Nocount Off
  41816.  
  41817. Go
  41818. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajpotrkolicsonajstarlot]'))
  41819. drop procedure [dbo].[sp_dajpotrkolicsonajstarlot]
  41820.  
  41821. Go
  41822.  
  41823. --use wtrg
  41824. CREATE   PROCEDURE sp_DajPotrKolicSoNajstarLot
  41825.     @Sifra_OE    smallint,
  41826.     @Sifra_Art    varchar(20),
  41827.     @PotrKolic    decimal(18,6)
  41828. AS
  41829. CREATE TABLE #TmpZalPoLot
  41830. (LotBr        varchar(50),
  41831. Sostojba    decimal(18,4),
  41832. OK            char(1))
  41833. INSERT INTO #TmpZalPoLot (LotBr, Sostojba) SELECT LotBr, Sostojba FROM SoMag 
  41834. WHERE Sifra_Oe=@Sifra_Oe AND Sifra_Art=@Sifra_Art AND Sostojba>0 ORDER BY LotBr
  41835. Declare @VkKol decimal(18,6)
  41836. SET @VkKol =0
  41837. Declare @Sostojba decimal(18,6)
  41838. Declare @LotBr varchar(50)
  41839. Declare TabLS Cursor Fast_Forward For Select LotBr, Sostojba From #TmpZalPoLot 
  41840.     Open TabLS
  41841.     Fetch Next From TabLS Into @LotBr, @Sostojba
  41842.     While @@Fetch_Status = 0
  41843.     Begin    
  41844.         IF @PotrKolic>0
  41845.         Begin    
  41846.             IF @PotrKolic>=@Sostojba
  41847.                 SET    @PotrKolic = @PotrKolic - @Sostojba
  41848.             ELSE
  41849.                 Begin
  41850.                     UPDATE #TmpZalPoLot SET Sostojba=@PotrKolic WHERE LotBr=@LotBr 
  41851.                     SET @PotrKolic = 0
  41852.                 End
  41853.             UPDATE #TmpZalPoLot SET Ok='D' WHERE LotBr=@LotBr  
  41854.         End
  41855.         Fetch Next From TabLS Into @LotBr, @Sostojba
  41856.     End
  41857.     Close TabLS
  41858.     Deallocate TabLS
  41859. DELETE FROM #TmpZalPoLot WHERE OK IS NULL
  41860. SELECT * FROM #TmpZalPoLot ORDER BY LotBr
  41861.  
  41862.  
  41863.  
  41864. Go
  41865. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajprodmestvoured]'))
  41866. drop procedure [dbo].[sp_dajprodmestvoured]
  41867.  
  41868. Go
  41869. CREATE PROCEDURE sp_DajProdMestVoUred
  41870.     @Sifra_Pat    smallint,
  41871.     @Sifra_Grad    smallint=NULL,
  41872.     @Sifra_Reg    smallint=NULL,
  41873.     @PatOdKomintPat    char(1)='N'
  41874. AS
  41875.  
  41876. CREATE TABLE #TmpKup (Sifra_Kup char(6), Sifra_Obj smallint)
  41877.  
  41878. If @Sifra_Pat IS NOT NULL 
  41879. Begin
  41880.     IF @PatOdKomintPat='D'
  41881.     Begin
  41882.         INSERT INTO #TmpKup (Sifra_Kup, Sifra_Obj) SELECT P.Sifra_Kup, P.Sifra_Obj FROM KomintPat P INNER JOIN Komint K ON P.Sifra_Kup=K.Sifra_Kup
  41883.         WHERE P.Sifra_Pat = @Sifra_Pat AND (K.Aktiven IS NULL OR K.Aktiven <>'N') 
  41884.     End
  41885.     ELSE
  41886.     Begin
  41887.         INSERT INTO #TmpKup (Sifra_Kup, Sifra_Obj) SELECT Sifra_Kup, NULL FROM Komint 
  41888.         WHERE (Aktiven IS NULL OR Aktiven <>'N') AND (Sifra_Pat = @Sifra_Pat OR Sifra_Pat2= @Sifra_Pat)  
  41889.      
  41890.         INSERT INTO #TmpKup (Sifra_Kup, Sifra_Obj) SELECT O.Sifra_Kup, O.Sifra_Obj FROM KObjekti O INNER JOIN Komint K ON O.Sifra_Kup=K.Sifra_Kup
  41891.         WHERE (K.Aktiven IS NULL OR K.Aktiven <>'N') AND (O.Sifra_Pat= @Sifra_Pat OR O.Sifra_Pat2= @Sifra_Pat) AND O.Sifra_Obj>0
  41892.     End
  41893. End
  41894.  
  41895. IF @Sifra_Grad IS NOT NULL
  41896. Begin
  41897.     INSERT INTO #TmpKup (Sifra_Kup, Sifra_Obj) SELECT Sifra_Kup, NULL FROM Komint WHERE Sifra_Grad = @Sifra_Grad AND (Aktiven IS NULL OR Aktiven <>'N') 
  41898.     INSERT INTO #TmpKup (Sifra_Kup, Sifra_Obj) SELECT O.Sifra_Kup, O.Sifra_Obj FROM KObjekti O INNER JOIN Komint K ON O.Sifra_Kup=K.Sifra_Kup
  41899.             Where O.Sifra_Grad = @Sifra_Grad AND (K.Aktiven IS NULL OR K.Aktiven <>'N') AND O.Sifra_Obj>0
  41900. End
  41901. If @Sifra_Reg IS NOT NULL
  41902. Begin
  41903.     INSERT INTO #TmpKup (Sifra_Kup, Sifra_Obj) SELECT Sifra_Kup, NULL FROM Komint WHERE Sifra_Reg = @Sifra_Reg AND (Aktiven IS NULL OR Aktiven <>'N') 
  41904.     INSERT INTO #TmpKup (Sifra_Kup, Sifra_Obj) SELECT O.Sifra_Kup, O.Sifra_Obj FROM KObjekti O INNER JOIN Komint K ON O.Sifra_Kup=K.Sifra_Kup
  41905.             Where O.Sifra_Reg = @Sifra_Reg AND (K.Aktiven IS NULL OR K.Aktiven <>'N') AND O.Sifra_Obj>0
  41906. End
  41907.  
  41908. CREATE TABLE #TmpKup1 (Sifra_Kup char(6), Sifra_Obj smallint)
  41909. INSERT INTO #TmpKup1 SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #TmpKup
  41910.  
  41911. SELECT P.Sifra_Mest SMst, P.Sifra_Kup Kup, P.Sifra_Obj Obj, P.Opis, P.BarKod FROM ProdMest P   
  41912. INNER JOIN #TmpKup1 T ON P.Sifra_Kup=T.Sifra_Kup WHERE P.Sifra_Obj IS NULL  
  41913. UNION   
  41914. SELECT P.Sifra_Mest SMst, P.Sifra_Kup, P.Sifra_Obj, P.Opis, P.BarKod FROM ProdMest P   
  41915. INNER JOIN #TmpKup1 T ON P.Sifra_Kup=T.Sifra_Kup AND T.Sifra_Obj=P.Sifra_Obj WHERE P.Sifra_Obj IS NOT NULL 
  41916.  
  41917.  
  41918. Go
  41919. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajprometvooe]'))
  41920. drop procedure [dbo].[sp_dajprometvooe]
  41921.  
  41922. Go
  41923.  
  41924.  
  41925. CREATE        PROCEDURE sp_DajPrometVoOE
  41926.     @Sifra_OE    Smallint,
  41927.     @Sifra_Prim  Smallint,
  41928.     @Datum_Od Smalldatetime,
  41929.     @Datum_Do Smalldatetime,
  41930.     @OE_Red     Smallint,
  41931.     @OE_Dr        Smallint,
  41932.     @RedMora    Decimal(18,6)  OUTPUT,
  41933.     @RedMoze   Decimal(18,6)  OUTPUT,
  41934.     @DrMora       Decimal(18,6)  OUTPUT,
  41935.     @DrMoze      Decimal(18,6)  OUTPUT
  41936. AS
  41937.     Declare @SSQL As Varchar(2000)
  41938.     CREATE       Table #tPromet
  41939.     (Sifra_Art          varchar(20),
  41940.      ImeArt             varchar(50),
  41941.      Sifra_Tar         char(3),
  41942.      ProcOsn         decimal(6,2),
  41943.      Vrednost         decimal(18,6),
  41944.      Kolic               decimal(18,6),
  41945.      Red_Vlez       decimal(18,6),
  41946.      Red_Kolic      decimal(18,6),
  41947.      Red_Mora      decimal(18,6),
  41948.      Red_Moze     decimal(18,6),
  41949.      Dr_Vlez          decimal(18,6),
  41950.      Dr_Kolic         decimal(18,6),
  41951.      Dr_Mora         decimal(18,6),
  41952.      Dr_Moze        decimal(18,6),
  41953.               Lokacija         varchar(15),
  41954.               MagVr            decimal(18,6)
  41955.     )
  41956.                                 --(Sifra_Art, ImeArt, Vrednost, Kolic)
  41957.     Set @SSQL = 'INSERT INTO #tPromet 
  41958.     SELECT S.Sifra_Art, A.ImeArt, A.Sifra_Tar, T.ProcOsn,
  41959.     SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) As Vrednost, SUM(S.Kolic) As Kolic,0,0,0,0,0,0,0,0,A.Lokacija,
  41960.              SUM(dbo.fn_VratiVredIzl(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0, ''D'')) As MagVr
  41961.     FROM Stavr S
  41962.     INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art
  41963.     INNER JOIN Dokr D ON S.DokrID = D.DokrID
  41964.     INNER JOIN Tarifi  T ON A.Sifra_Tar = T.Sifra_Tar
  41965.     WHERE S.Sifra_OE= ' + Cast(@Sifra_OE As varchar(5)) + ' AND S.VlIzl = ''I'' AND S.Datum_Dok >= ''' + Cast(@Datum_Od As varchar(35)) + 
  41966.     ''' AND S.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(35)) +'''  AND '
  41967.     If @Sifra_Prim IS NULL
  41968.         Set @SSQL = @SSQL + 'S.Sifra_Prim IS NULL '     
  41969.     Else
  41970.         Set @SSQL = @SSQL + 'S.Sifra_Prim = ' + Cast(@Sifra_Prim As varchar(5)) 
  41971.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art, A.ImeArt, A.Sifra_Tar, T.ProcOsn, A.Lokacija'
  41972.     EXEC (@SSQL)
  41973.     UPDATE #tPromet SET Red_Vlez = SoArt.Vlez, Red_Kolic = SoArt.Vlez - SoArt.Izlez
  41974.     FROM SoArt 
  41975.     WHERE SoArt.Sifra_OE = @OE_Red AND SoArt.Sifra_Art = #tPromet.Sifra_Art
  41976.     UPDATE #tPromet SET Dr_Vlez = SoArt.Vlez, Dr_Kolic = SoArt.Vlez - SoArt.Izlez
  41977.     FROM SoArt 
  41978.     WHERE SoArt.Sifra_OE = @OE_Dr AND SoArt.Sifra_Art = #tPromet.Sifra_Art
  41979.     UPDATE #tPromet SET Red_Mora = Vrednost
  41980.     WHERE Red_Vlez > 0 AND Dr_Vlez <= 0
  41981.     UPDATE #tPromet SET Dr_Mora = Vrednost
  41982.     WHERE Dr_Vlez > 0 AND Red_Vlez <= 0
  41983.     UPDATE #tPromet SET Red_Moze = 
  41984.         CASE
  41985.         WHEN Kolic > Red_Kolic THEN Vrednost/Kolic * Red_Kolic
  41986.         ELSE Vrednost
  41987.         END,
  41988.         Dr_Moze = 
  41989.         CASE
  41990.         WHEN Kolic > Dr_Kolic THEN Vrednost/Kolic * Dr_Kolic
  41991.         ELSE Vrednost
  41992.         END
  41993.     WHERE Kolic <> 0
  41994.     SELECT @RedMora  = SUM(Red_Mora), @RedMoze = SUM(Red_Moze), @DrMora = SUM(Dr_Mora), @DrMoze = SUM(Dr_Moze)
  41995.     FROM #tPromet
  41996.     SELECT * FROM #tPromet ORDER BY ImeArt
  41997.  
  41998.  
  41999.  
  42000. Go
  42001. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajrabat_kup_podel]'))
  42002. drop procedure [dbo].[sp_dajrabat_kup_podel]
  42003.  
  42004. Go
  42005.  
  42006. create  PROCEDURE sp_DajRabat_Kup_Podel
  42007.     @Sifra_Art    varchar(20),
  42008.     @Sifra_Kup    varchar(6),
  42009.     @KojaPodel    char(1),
  42010.     @Uces        decimal(6,2) OUTPUT,
  42011.     @Uces2        decimal(6,2) OUTPUT,
  42012.     @Uces3        decimal(6,2) OUTPUT
  42013. AS
  42014.  
  42015.     Declare @Podel    varchar(20)
  42016.  
  42017.     if @KojaPodel = '1'
  42018.         SELECT @Podel = Drugo1
  42019.         FROM KatArt 
  42020.         WHERE Sifra_Art = @Sifra_Art
  42021.     else if @KojaPodel = '2'
  42022.         SELECT @Podel = Drugo2
  42023.         FROM KatArt 
  42024.         WHERE Sifra_Art = @Sifra_Art
  42025.     else if @KojaPodel = '7'
  42026.         SELECT @Podel = Drugo7
  42027.         FROM KatArt 
  42028.         WHERE Sifra_Art = @Sifra_Art
  42029.  
  42030.     SELECT @Uces = Uces, @Uces2 = Uces2, @Uces3 = Uces3  
  42031.     FROM  CenPoPodgr
  42032.     WHERE Tip_Podelba = 'A' and TipKup = @Sifra_Kup and Sifra_Podelba = @Podel
  42033.     -- Vo princip Tip_Podelba ne ni treba, ama radi INDEXOT taka e MNOGU pobrzo
  42034.  
  42035.  
  42036.  
  42037.  
  42038. Go
  42039. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajrabatzatipkup]'))
  42040. drop procedure [dbo].[sp_dajrabatzatipkup]
  42041.  
  42042. Go
  42043. CREATE PROCEDURE sp_DajRabatZaTipKup
  42044.     @Sifra_Art    varchar(20),
  42045.     @TipKup    varchar(11),
  42046.     @Uces        decimal(6,2) OUTPUT,
  42047.     @Uces2    decimal(6,2) OUTPUT,
  42048.     @Uces3    decimal(6,2) OUTPUT
  42049. AS
  42050.     Declare @Podgr    varchar(20)
  42051.     SELECT @Podgr = Sifra_Podg FROM KatArt WHERE Sifra_Art = @Sifra_Art
  42052.     SELECT @Uces = Uces, @Uces2 = Uces2, @Uces3 = Uces3  
  42053.     FROM  CenPoPodgr
  42054.     WHERE TipKup = @TipKup AND Sifra_Podelba = @Podgr
  42055.  
  42056.  
  42057.  
  42058. Go
  42059. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajrabatzatipkupdelpodg]'))
  42060. drop procedure [dbo].[sp_dajrabatzatipkupdelpodg]
  42061.  
  42062. Go
  42063.  
  42064.  
  42065. CREATE   PROCEDURE sp_DajRabatZaTipKupDelPodg
  42066.     @Sifra_Art    varchar(20),
  42067.     @Sifra_Kup    char(6),
  42068.     @TocnoZaKup    char(1)='N',
  42069.     @Uces        decimal(6,2) OUTPUT
  42070. AS
  42071.     Declare @Podgr    varchar(20), @Rabat_Dali char(1)
  42072.     SELECT @Podgr = Sifra_Podg, @Rabat_Dali=Rabat_Dali FROM KatArt WHERE Sifra_Art = @Sifra_Art
  42073.     IF @Rabat_Dali='N'  --go ima i vo MaskStavr, ama za sekoj slucaj
  42074.     Begin
  42075.         SET @Uces=0
  42076.         RETURN
  42077.     End
  42078.  
  42079.     Declare @TipKup    varchar(11)
  42080.     If @TocnoZaKup='D'
  42081.         SET @TipKup=@Sifra_Kup
  42082.     ELSE
  42083.         SELECT @TipKup=TipKup FROM Komint WHERE Sifra_Kup=@Sifra_Kup
  42084.  
  42085.     Declare @iLen integer
  42086.     SET @iLen = Len(@Podgr)
  42087.  
  42088. WHILE @iLen > 0
  42089. Begin
  42090.     SELECT @Uces = Uces    FROM  CenPoPodgr
  42091.     WHERE TipKup = @TipKup AND Sifra_Podelba = @Podgr
  42092.  
  42093.     IF @@RowCount=1 RETURN
  42094.     SET @iLen = @iLen - 1
  42095.     SET @Podgr = Substring(@Podgr, 1, @iLen)
  42096. End
  42097.  
  42098.  
  42099.  
  42100.  
  42101. Go
  42102. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajrazlcenazaazur]'))
  42103. drop procedure [dbo].[sp_dajrazlcenazaazur]
  42104.  
  42105. Go
  42106.  
  42107.  
  42108.  
  42109. CREATE    PROCEDURE sp_DajRazlCenaZaAzur
  42110.     @Sifra_OE Smallint=Null,
  42111.     @Datum_Od Smalldatetime,
  42112.     @Datum_Do Smalldatetime,
  42113.     @Sifra_Dok  smallint=Null
  42114. AS
  42115. Declare @SSQL Varchar(4000)
  42116. Set @SSQL = 'SELECT D.*, T.Sif_GrDok  FROM RazlCeni D INNER JOIN TipDok T ON D.Sifra_Razl=T.Sifra_Dok
  42117.     WHERE D.Broj_Nal IS NULL AND D.Sifra_Razl = ' + cast(@Sifra_Dok as varchar(5)) + 
  42118.     ' AND D.Kolic <> 0 AND Sifra_Art  IN (SELECT Sifra_Art FROM KatArt WHERE SMatUsl=''M'') AND D.SIFRA_OE '
  42119. If @Sifra_OE IS NULL
  42120.     Set @SSQL =  @SSQL + 'IN (SELECT Sifra_OE FROM ORGED WHERE OrgDaliFin = ''D'')'
  42121. Else
  42122.     Set @SSQL =  @SSQL + '= ' + Cast (@Sifra_OE as varchar(5))
  42123. If @Datum_Od Is NOT Null
  42124.     SET @SSQL = @SSQL + ' AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  42125. If @Datum_Do Is NOT Null
  42126.     SET @SSQL = @SSQL + ' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  42127. SET @SSQL = @SSQL + ' ORDER BY D.Sifra_OE, D.Datum_Dok, D.Sifra_Razl '     
  42128. EXEC(@SSQL)
  42129.  
  42130.  
  42131.  
  42132. Go
  42133. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajrutiplan]'))
  42134. drop procedure [dbo].[sp_dajrutiplan]
  42135.  
  42136. Go
  42137.  
  42138. CREATE  Procedure sp_DajRutiPlan 
  42139.     @Sifra_pat smallint
  42140. As 
  42141. CREATE TABLE #TmpDat
  42142. (Datum_Od smalldatetime,
  42143. DenOdNedela char(1))
  42144. INSERT INTO #TmpDat SELECT MAX(Datum_Od), DenOdNedela FROM RutiPlan
  42145. WHERE Datum_Od<=GetDate() AND Sifra_Pat=@Sifra_Pat GROUP BY DenOdNedela
  42146.  
  42147. Select R.* from RutiPlan R INNER JOIN #TmpDat T ON R.Datum_Od=T.Datum_Od AND R.DenOdNedela=T.denOdNedela
  42148. where Sifra_pat=@Sifra_Pat ORDER BY R.DenOdnedela , R.Rbr
  42149.  
  42150.  
  42151.  
  42152. Go
  42153. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajrutizadatum]'))
  42154. drop procedure [dbo].[sp_dajrutizadatum]
  42155.  
  42156. Go
  42157.  
  42158. CREATE  PROCEDURE sp_DajRutiZaDatum
  42159.     @Sifra_Pat smallint
  42160. As 
  42161. Declare @Denes as smalldatetime 
  42162. set @denes = dbo.fn_VratiDatum(GetDate())
  42163.  
  42164. Select *, dbo.fn_VratiDatumStringSoCrti (Datum) DatumStr from RutiZaDatum 
  42165. where Sifra_pat=@Sifra_Pat and Datum=@Denes
  42166.  
  42167.  
  42168.  
  42169. Go
  42170. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajsaldokupzawebnarac]'))
  42171. drop procedure [dbo].[sp_dajsaldokupzawebnarac]
  42172.  
  42173. Go
  42174.  
  42175. CREATE  PROCEDURE sp_DajSaldoKupZaWEBNarac
  42176.     @Kto char(10) = null
  42177. AS
  42178. SELECT Sifra_Kup, SUM(Dolzi-Pobaruva) as Saldo FROM AnFinDok WHERE Sifra_Za=1 GROUP BY Sifra_Kup Order by Sifra_Kup
  42179.  
  42180.  
  42181.  
  42182. Go
  42183. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajsledenbrdokrzb]'))
  42184. drop procedure [dbo].[sp_dajsledenbrdokrzb]
  42185.  
  42186. Go
  42187. CREATE PROCEDURE sp_DajSledenBrDokrZb
  42188.     @Sifra_OE    smallint,
  42189.     @Sifra_Dok    smallint,
  42190.     @DoBroj        int=NULL,
  42191.     @Broj_Dok    int=NULL OUTPUT
  42192. AS
  42193. IF @DoBroj IS NULL
  42194.     SELECT @Broj_Dok=MAX(Broj_Dok) FROM DokrZb WHERE Sifra_OE = @Sifra_OE and Sifra_Dok = @Sifra_Dok
  42195. ELSE
  42196.     SELECT @Broj_Dok=MAX(Broj_Dok) FROM DokrZb WHERE Sifra_OE = @Sifra_OE and Sifra_Dok = @Sifra_Dok AND Broj_Dok<@DoBroj
  42197.  
  42198.  
  42199. Go
  42200. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajsledenbrizjava]'))
  42201. drop procedure [dbo].[sp_dajsledenbrizjava]
  42202.  
  42203. Go
  42204.  
  42205. CREATE PROCEDURE sp_DajSledenBrIzjava
  42206.     @Sifra_Oe    smallint,
  42207.     @Broj_Izjava    int=0 OUTPUT
  42208. AS
  42209. SELECT @Broj_Izjava=MAX(Broj_Izjava) FROM VozIzjava WHERE Sifra_oe=@Sifra_oe 
  42210.  
  42211.  
  42212.  
  42213.  
  42214. Go
  42215. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajsledenbrrabnal]'))
  42216. drop procedure [dbo].[sp_dajsledenbrrabnal]
  42217.  
  42218. Go
  42219.  
  42220.  
  42221. CREATE   PROCEDURE sp_DajSledenBrRabNal
  42222.     @Sifra_OERab    smallint,
  42223.     @DaliPomosen    char(1)=NULL,
  42224.     @DoBroj            int=NULL,
  42225.     @Broj_RabN        int Output
  42226. AS
  42227. IF @DoBroj IS NULL SET @DoBroj=1000000
  42228. If @DaliPomosen = 'D'  
  42229.     SELECT @Broj_RabN=MAX(Broj_RabN) FROM RabNal WHERE Pomosen = 'D' and Sifra_OERab = @Sifra_OERab AND Broj_RabN<@DoBroj
  42230. Else If @DaliPomosen = 'N'  
  42231.     SELECT @Broj_RabN=MAX(Broj_RabN) FROM RabNal WHERE (Pomosen <> 'D' or Pomosen is null) and Sifra_oerab = @Sifra_OERab AND Broj_RabN<@DoBroj
  42232. Else
  42233.     SELECT @Broj_RabN=MAX(Broj_RabN) FROM RabNal WHERE Sifra_oerab = @Sifra_OERab AND Broj_RabN<@DoBroj
  42234.  
  42235.  
  42236.  
  42237.  
  42238.  
  42239. Go
  42240. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajsledenxfpredmet]'))
  42241. drop procedure [dbo].[sp_dajsledenxfpredmet]
  42242.  
  42243. Go
  42244. CREATE PROCEDURE sp_DajSledenXFPredmet
  42245. AS
  42246.     Select Max(Broj_Predmet) MaxBrPredmet From XFPredmet
  42247.  
  42248.  
  42249. Go
  42250. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajslednasifart]'))
  42251. drop procedure [dbo].[sp_dajslednasifart]
  42252.  
  42253. Go
  42254. CREATE PROCEDURE sp_DajSlednaSifArt
  42255.     @Sifra_Art varchar(20),
  42256.     @Sledna_Sifra varchar(20) OUTPUT
  42257. AS
  42258.     Declare @Br as int
  42259.     Declare @iSifra as int
  42260.     SET @Br = 1
  42261.     SET @iSifra = Cast(@Sifra_Art as int) + 1
  42262. While @Br < 100 
  42263. Begin
  42264.     SET  Nocount On
  42265.     SELECT * FROM KatArt WHERE Sifra_Art = @iSifra
  42266.     IF @@RowCount = 0 
  42267.     Begin
  42268.         SET @Sledna_Sifra = Cast(@iSifra as varchar(20))
  42269.         RETURN
  42270.     End
  42271.     SET @Br = @Br + 1
  42272.     SET @iSifra = @iSifra + 1    
  42273.     SET  Nocount Off
  42274. End
  42275.  
  42276.  
  42277. Go
  42278. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajslednasifkup]'))
  42279. drop procedure [dbo].[sp_dajslednasifkup]
  42280.  
  42281. Go
  42282. CREATE PROCEDURE sp_DajSlednaSifKup
  42283.     @Sifra_Kup char(6),
  42284.     @Sledna_Sifra varchar(6) OUTPUT
  42285. AS
  42286.     Declare @Br as int
  42287.     Declare @iSifra as int
  42288.     SET @Br = 1
  42289.     SET @iSifra = Cast(@Sifra_Kup as int) + 1
  42290. While @Br < 100 
  42291. Begin
  42292.     SET  Nocount On
  42293.     SELECT * FROM Komint WHERE Sifra_Kup = @iSifra
  42294.     IF @@RowCount = 0 
  42295.     Begin
  42296.         SET @Sledna_Sifra = Cast(@iSifra as varchar(6))
  42297.         RETURN
  42298.     End
  42299.     SET @Br = @Br + 1
  42300.     SET @iSifra = @iSifra + 1    
  42301.     SET  Nocount Off
  42302. End
  42303.  
  42304.  
  42305.  
  42306. Go
  42307. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajsoartzawebnarac]'))
  42308. drop procedure [dbo].[sp_dajsoartzawebnarac]
  42309.  
  42310. Go
  42311.  
  42312.  
  42313. CREATE           PROCEDURE sp_DajSoArtZaWEBNarac
  42314.     @Sifra_OE varchar(100),
  42315.     @ZemiArtSamoOdAsortLst    smallint=NULL,
  42316.     @KatAsortPoSto            varchar(5)=NULL,
  42317.     @SamoVoPDA                char(1)=NULL,
  42318.     @ZalOdKade    char(1)='K'        --K-od katart, O-od OptZalPoOE t.e po org.ed.
  42319. AS
  42320. Declare @SSQL varchar(3000)
  42321.  
  42322. CREATE TABLE #TmpOE (Sifra_OE smallint)
  42323. SET @SSQL='SELECT Sifra_OE FROM OrgED WHERE Sifra_OE IN ('+@Sifra_OE+')'
  42324. INSERT INTO #TmpOE EXEC (@SSQL)
  42325. Declare @Sifra_OE_Prva as smallint
  42326. SELECT Top 1 @Sifra_OE_Prva = Sifra_OE FROM #TmpOE ORDER BY Sifra_OE
  42327.  
  42328. CREATE TABLE #TmpArt
  42329. (Sifra_Art varchar(20))
  42330.  
  42331. SET @SSQL = 'Select K.Sifra_Art From katart K'
  42332. IF @ZemiArtSamoOdAsortLst IS NOT NULL
  42333. Begin
  42334.     IF @KatAsortPoSto = 'GP'
  42335.         SET @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg
  42336.         INNER JOIN KatAsortLista L ON L.Sifra1=P.Sifra_Gr
  42337.          WHERE L.Broj_ALista = ' + cast(@ZemiArtSamoOdAsortLst as varchar(5))
  42338.     ELSE IF @KatAsortPoSto = 'HA'
  42339.         SET @SSQL = @SSQL + ' INNER JOIN KatAsortLista L ON L.Sifra1=K.Sifra_KHier
  42340.          WHERE L.Broj_ALista = ' + cast(@ZemiArtSamoOdAsortLst as varchar(5))
  42341.     ELSE IF @KatAsortPoSto = 'DP'
  42342.         SET @SSQL = @SSQL + ' INNER JOIN KatAsortLista L ON L.Sifra1=K.Kto
  42343.          WHERE L.Broj_ALista = ' + cast(@ZemiArtSamoOdAsortLst as varchar(5))
  42344. End
  42345. ELSE 
  42346.     SET @SSQL = @SSQL + ' WHERE 1=1 '
  42347. IF @SamoVoPDA IS NOT NULL
  42348.     SET @SSQL = @SSQL + ' AND K.VoPDA='''+@SamoVoPDA +''''
  42349. INSERT INTO #TmpArt EXEC (@SSQL)
  42350.  
  42351. CREATE TABLE #TmpSoArt
  42352. (Sifra_Art    varchar(20),
  42353. Zaliha        decimal(18,6))
  42354. INSERT INTO #TmpSoArt SELECT Sifra_Art, SUM(Vlez-Izlez) FROM Soart WHERE Sifra_Oe IN (SELECT Sifra_OE FROM #TmpOE) GROUP BY Sifra_Art
  42355.  
  42356. IF @ZalOdKade='K'
  42357.     SELECT  @Sifra_OE_Prva Sifra_Oe, S.Sifra_Art,S.Zaliha,
  42358.           CASE 
  42359.              WHEN (S.Zaliha) >= K.SOpt_Sost THEN 1
  42360.              WHEN (S.Zaliha) < K.SOpt_Sost AND (S.Zaliha) >= K.SMin_Sost THEN 2
  42361.              ELSE 3
  42362.           END as Status_Zaliha
  42363.     FROM #TmpSoArt S INNER JOIN #TmpArt A ON S.Sifra_Art=A.Sifra_Art
  42364.     LEFT OUTER JOIN KatArt K ON S.Sifra_Art=K.Sifra_Art
  42365. ELSE
  42366.     SELECT @Sifra_OE_Prva Sifra_Oe, S.Sifra_Art, S.Zaliha,
  42367.           CASE 
  42368.              WHEN (S.Zaliha) >= O.OptZal THEN 1
  42369.              WHEN (S.Zaliha) < O.OptZal AND (S.Zaliha) >= O.MinZal THEN 2
  42370.              ELSE 3
  42371.           END as Status_Zaliha
  42372.     FROM #TmpSoArt S INNER JOIN #TmpArt A ON S.Sifra_Art=A.Sifra_Art
  42373.     LEFT OUTER JOIN OptZalPoOE O ON S.Sifra_Art=O.Sifra_Art AND O.Sifra_OE=@Sifra_OE_Prva
  42374.      
  42375. SET QUOTED_IDENTIFIER OFF 
  42376.  
  42377.  
  42378.  
  42379.  
  42380.  
  42381.  
  42382.  
  42383.  
  42384.  
  42385. Go
  42386. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajsomagzaart]'))
  42387. drop procedure [dbo].[sp_dajsomagzaart]
  42388.  
  42389. Go
  42390. CREATE PROCEDURE sp_DajSoMagZaArt
  42391.     @Sifra_Oe    smallint,
  42392.     @Sifra_Art    varchar(20),
  42393.     @KoiArt        char(1)='P'  --P-pozitivna zal, N-negativna, S-Site, 0-0zaliha
  42394. AS
  42395. IF @KoiArt='P'
  42396.     SELECT LotBr, Sostojba FROM SoMag WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art AND Sostojba>0 ORDER BY LotBr
  42397. ELSE IF @KoiArt='N'
  42398.     SELECT LotBr, Sostojba FROM SoMag WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art AND Sostojba<0 ORDER BY LotBr
  42399. ELSE IF @KoiArt='0'
  42400.     SELECT LotBr, Sostojba FROM SoMag WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art AND Sostojba=0 ORDER BY LotBr
  42401. ELSE
  42402.     SELECT LotBr, Sostojba FROM SoMag WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art ORDER BY LotBr
  42403.  
  42404.  
  42405.  
  42406. Go
  42407. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajstavkiodtmpmobi]'))
  42408. drop procedure [dbo].[sp_dajstavkiodtmpmobi]
  42409.  
  42410. Go
  42411.  
  42412.  
  42413. CREATE      PROCEDURE sp_DajStavkiOdTmpMobi
  42414.     @BrSaldo int
  42415. AS
  42416.     SELECT M.*, A.Sifra_Tar, A.DogCena, T.ProcOsn, S.NNabCena FROM TmpMobi M
  42417.     LEFT OUTER JOIN KatArt A ON A.Sifra_Art=M.Sifra_Art 
  42418.     LEFT OUTER JOIN Tarifi T ON T.Sifra_Tar=A.Sifra_Tar
  42419.     LEFT OUTER JOIN SoArt S ON S.Sifra_Art=A.Sifra_Art AND S.Sifra_OE=1
  42420.     LEFT OUTER JOIN Komint K ON M.Sifra_kup=K.Sifra_Kup
  42421.     LEFT OUTER JOIN KObjekti O ON M.Sifra_kup=O.Sifra_Kup AND M.ProdMest=O.Sifra_Obj
  42422.     WHERE M.BrSaldo = @BrSaldo     Order by M.Rbr
  42423. --Case M.ProdMest When 0 Then K.Sifra_Pat Else O.Sifra_Pat End AS Sifra_Pat FROM TmpMobi M bese do 22.11.07
  42424.  
  42425.  
  42426.  
  42427. Go
  42428. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajstavkitouch]'))
  42429. drop procedure [dbo].[sp_dajstavkitouch]
  42430.  
  42431. Go
  42432. CREATE    PROCEDURE sp_DajStavkiTouch
  42433.     @Sifra_GrpIzb CHAR(10)=NULL
  42434. AS
  42435. DECLARE @SSQL AS VARCHAR(500)
  42436. SET @SSQL = 'SELECT N.*, I.Ime_GrpIzb, K.ImeArt, K.DogCena FROM GrpIzborNiza N
  42437.     LEFT OUTER JOIN GrpIzbor I ON N.Sifra_Nar_Izb=I.Sifra_GrpIzb 
  42438.     LEFT OUTER JOIN Katart K ON N.Sifra_Nar_Art=K.Sifra_Art '
  42439. IF @Sifra_GrpIzb IS NOT NULL AND @Sifra_GrpIzb <> ''
  42440.     SET @SSQL = @SSQL + ' WHERE N.Sifra_GrpIzb = ''' + @Sifra_GrpIzb + ''''
  42441. SET @SSQL = @SSQL + ' ORDER BY N.Reden_Izb '
  42442. EXEC (@SSQL)
  42443.  
  42444.  
  42445.  
  42446. Go
  42447. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajstavrzamob]'))
  42448. drop procedure [dbo].[sp_dajstavrzamob]
  42449.  
  42450. Go
  42451.  
  42452.  
  42453.  
  42454. CREATE    PROCEDURE sp_DajStavrZaMob
  42455.     @Sifra_Pat As smallint,
  42456.     @KoiOe As varchar(200),
  42457.     @KoiTipDok As varchar(200), 
  42458.     @Datum_Od As smalldatetime, 
  42459.     @Sifra_Kup char(6)=NULL
  42460. AS
  42461.     DECLARE @SSQL varchar(2000)
  42462.     SET @SSQL = 'SELECT DokrId, Sifra_Oe, Sifra_Dok, Broj_Dok, Sifra_Art, Kolic, 
  42463.                 DokCena, Uces, KontrSer, UcesOsn, UcesKol, UcesDod, KontrSer, Tros
  42464.                 FROM Stavr WHERE DokrID IN (SELECT DokrID FROM Dokr WHERE Datum_Dok >='''+cast(@Datum_Od as varchar(35))+''' '
  42465.     IF @Sifra_Pat IS NOT NULL
  42466.         SET @SSQL = @SSQL + ' AND Sifra_Pat='+cast(@Sifra_Pat as varchar(5))
  42467.     IF @KoiOE IS NOT NULL
  42468.         SET @SSQL = @SSQL + ' AND Sifra_OE IN ('''+@KoiOe+''') '
  42469.     IF @KoiTipDok IS NOT NULL
  42470.         SET @SSQL = @SSQL + ' AND Sifra_Dok IN ('''+@KoiTipDok+''') '
  42471.     IF @Sifra_Kup IS NOT NULL
  42472.         SET @SSQL = @SSQL + ' AND Sifra_Kup='+@Sifra_Kup 
  42473.         SET @SSQL = @SSQL + ')'
  42474. EXEC(@SSQL)
  42475.  
  42476.  
  42477.  
  42478. Go
  42479. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajtekcenazapercen]'))
  42480. drop procedure [dbo].[sp_dajtekcenazapercen]
  42481.  
  42482. Go
  42483.  
  42484.  
  42485.  
  42486.  
  42487. CREATE    PROCEDURE sp_DajTekCenaZaPerCen
  42488.     @Sifra_TipC    smallint,
  42489.     @Sifra_Art    Varchar(20), 
  42490.     @Cena        decimal(18,6) OUTPUT,
  42491.     @NabCena    decimal(18,6) OUTPUT,
  42492.     @Rabat        decimal(6,2)=0 OUTPUT    
  42493. AS
  42494. Declare @Sifra_OE smallint
  42495. SELECT TOP 1 @Sifra_OE=Sifra_OE FROM TipPerCenVaziZa WHERE Sifra_TipC=@Sifra_TipC 
  42496.     SELECT  @Cena=Case S.DanCena When 'D' Then S.Cena Else S.Cena/(1+S.POsn/100) End, @NabCena=K.Nabavna
  42497.     FROM Soart S INNER JOIN KatArt K ON S.Sifra_Art=K.Sifra_Art
  42498.     WHERE S.Sifra_Art=@Sifra_Art AND S.Sifra_OE=@Sifra_OE
  42499.  
  42500.  
  42501.  
  42502.  
  42503. Go
  42504. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajtipdok]'))
  42505. drop procedure [dbo].[sp_dajtipdok]
  42506.  
  42507. Go
  42508.  
  42509. CREATE PROCEDURE sp_DajTipDok
  42510. As 
  42511.     Select Sifra_Dok, ImeDok NazivDok from TipDok
  42512.  
  42513.  
  42514.  
  42515. Go
  42516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajtipdokzaazur]'))
  42517. drop procedure [dbo].[sp_dajtipdokzaazur]
  42518.  
  42519. Go
  42520.  
  42521.  
  42522.  
  42523.  
  42524. CREATE     PROCEDURE sp_DajTipDokZaAzur
  42525.     @Sifra_Dok    smallint= Null,
  42526.     @KoiSifri    varchar(100)=Null
  42527. AS
  42528.     Declare @SSQL as varchar(1000)
  42529. SET @SSQL = 'SELECT Sifra_Dok, Sifra_Nal, KoeKto, AnalKupDob, Sif_GrDok, Dev, Vl_Izl, ImaDanok, Dali_Accru, Kom_I_Prim, Sifra_Za
  42530. FROM TIPDOK WHERE DaliFin = ''D'' AND Anal_Prof <> ''D'' '
  42531. IF @Sifra_Dok IS NOT NULL
  42532.     SET @SSQL = @SSQL + ' AND Sifra_Dok='+cast(@Sifra_Dok as varchar(5))
  42533. IF @KoiSifri IS NOT NULL
  42534.     SET @SSQL = @SSQL + ' AND Sifra_Dok IN ('+@KoiSifri+')'
  42535. CREATE TABLE #TmpTD
  42536. (Sifra_Dok    smallint, 
  42537. Sifra_Nal    smallint, 
  42538. KoeKto        varchar(50), 
  42539. AnalKupDob    char(1), 
  42540. Sif_GrDok    char(3), 
  42541. Dev            char(1), 
  42542. Vl_Izl        char(1), 
  42543. ImaDanok    char(1), 
  42544. Dali_Accru     char(1),
  42545. Kom_I_Prim    char(1),
  42546. Sifra_Za    char(1))
  42547. INSERT INTO #TmpTD EXEC(@SSQL)
  42548. IF @Sifra_Dok IS NOT NULL
  42549. Begin
  42550.     Declare @Zb as char(1)
  42551.     SELECT @Zb = Dali_Accru FROM TipDok WHERE Sifra_Dok=@Sifra_Dok
  42552.     IF @Zb = 'D'
  42553.         INSERT INTO #TmpTD SELECT Sifra_Dok, Sifra_Nal, KoeKto, AnalKupDob, Sif_GrDok, Dev, Vl_Izl, ImaDanok, Dali_Accru, Kom_I_Prim, Sifra_Za
  42554.         FROM TIPDOK WHERE DaliFin = 'D' AND Anal_Prof <> 'D' AND Sifra_Dok IN 
  42555.         (SELECT DISTINCT Sifra_Dok FROM Dokr WHERE DokrID IN 
  42556.         (SELECT DokrID FROM DokrZbSta WHERE DokrZbID IN (SELECT DokrZbID FROM DokrZb WHERE Sifra_Dok=@Sifra_Dok)))
  42557. End
  42558. SELECT * FROM #TmpTD ORDER BY replace(Dali_Accru,'D', 'Z') DESC, Sifra_Dok
  42559.  
  42560.  
  42561.  
  42562.  
  42563. Go
  42564. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajtipnarzaprik]'))
  42565. drop procedure [dbo].[sp_dajtipnarzaprik]
  42566.  
  42567. Go
  42568. CREATE PROCEDURE sp_DajTipNarZaPrik
  42569.     @Sifra_OE    smallint,
  42570.     @Sifra_Dok    smallint,
  42571.     @Sifra_Nar    smallint OUTPUT
  42572. AS
  42573. SELECT @Sifra_Nar=Sifra_Nar FROM TipNarac WHERE OdiVo_Sifra_OE=@Sifra_OE AND OdiVo_Sifra_Dok=@Sifra_Dok
  42574. IF @Sifra_Nar IS NULL
  42575.     SELECT @Sifra_Nar=Sifra_Nar FROM TipNarac WHERE OdiVo_Sifra_Dok=@Sifra_Dok
  42576.  
  42577.  
  42578. Go
  42579. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajvkteztroszarabnal]'))
  42580. drop procedure [dbo].[sp_dajvkteztroszarabnal]
  42581.  
  42582. Go
  42583. CREATE PROCEDURE sp_DajVkTezTrosZaRabNal
  42584.     @DokrID int,
  42585.     @VkTezinaTros decimal(18,6) = 0 OUTPUT
  42586. AS
  42587.     DECLARE @RabNalID int
  42588.     SELECT @RabNalID = RabNalID FROM DokRabNal WHERE DokrID=@DokrID
  42589. CREATE TABLE #TmpDokrIDIzlez
  42590. (DokrID    int)
  42591. INSERT INTO #TmpDokrIDIzlez SELECT DokrID FROM DokRabNal WHERE RabNalID=@RabNalID AND Tip_Rabstav='T'
  42592. SELECT @VkTezinaTros = SUM(Kolic) FROM Stavr WHERE DokrID IN (SELECT DokrID FROM #TmpDokrIDIzlez)
  42593.  
  42594.  
  42595.  
  42596. Go
  42597. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajwhmpriviloper]'))
  42598. drop procedure [dbo].[sp_dajwhmpriviloper]
  42599.  
  42600. Go
  42601. CREATE PROCEDURE sp_DajWhmPrivilOper
  42602.  
  42603.     @Sifra_Oper        smallint,
  42604.     @Sifra_Oe_Whm    smallint,
  42605.     @ImePrivilWhm        varchar(30),
  42606.     @Moze_Vlez        char(1) = Null Output,
  42607.     @Opc_Spec1        varchar(10) = Null Output,
  42608.     @Opc_Spec2        varchar(10) = Null Output
  42609. AS
  42610.  
  42611.     Select @Moze_Vlez=Moze_Vlez, @Opc_Spec1=Opc_Spec1, @Opc_Spec2=Opc_Spec2
  42612.     From WhmPrivOper
  42613.     Where Sifra_Oper=@Sifra_Oper And Sifra_Oe_Whm=@Sifra_Oe_Whm And ImePrivilWhm=@ImePrivilWhm
  42614. Go
  42615. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajzalihazaladen]'))
  42616. drop procedure [dbo].[sp_dajzalihazaladen]
  42617.  
  42618. Go
  42619. CREATE PROCEDURE sp_DajZalihaZaLaden
  42620.     @Koi_Art_Proizv    varchar(500),
  42621.     @Sifra_Oe_Zal    smallint,
  42622.     @Datum_Do        smalldatetime
  42623. AS
  42624.     Declare @SSQL varchar(2000)
  42625. SET @SSQL='SELECT S.Sifra_Art, A.ImeArt, A.Edmera, A.Sifra_Tar, A.Tezina, T.ProcOsn, 
  42626. SUM(Case S.VlIzl When ''V'' Then S.Kolic Else S.Kolic*-1 End) Kolic
  42627. FROM Stavr S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar
  42628. WHERE S.Datum_Dok <='''+Cast(@Datum_Do as varchar(35))+
  42629. ''' AND S.Sifra_OE = '+cast(@Sifra_OE_Zal as varchar(5))+
  42630. ' AND S.Sifra_Art IN (SELECT Sifra_Art FROM KatArt WHERE Alt_Sifra IN ('''+@Koi_Art_Proizv+'''))
  42631.  GROUP BY S.Sifra_Art, A.ImeArt, A.Edmera, A.Sifra_Tar, A.Tezina, T.ProcOsn'
  42632. EXEC (@SSQL)
  42633.  
  42634.  
  42635.  
  42636. Go
  42637. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajzalpokupzaoe]'))
  42638. drop procedure [dbo].[sp_dajzalpokupzaoe]
  42639.  
  42640. Go
  42641.  
  42642. CREATE  PROCEDURE sp_DajZalPoKupZaOE
  42643.     @Sifra_Oe    smallint
  42644. AS
  42645. CREATE TABLE #TmpKom1
  42646. (Sifra_Kup char(6), Sifra_Obj smallint, Sifra_Art varchar(20), Vlez decimal(18,6), Izlez decimal(18,6), 
  42647. NNabCena decimal(18,6), SoaCena decimal(18,6), SoaDanCena char(1))
  42648.  
  42649. CREATE TABLE #TmpKom 
  42650. (Sifra_Kup char(6), Sifra_Obj smallint, Sifra_Art varchar(20), Vlez decimal(18,6), Izlez decimal(18,6), 
  42651. NNabCena decimal(18,6), SoaCena decimal(18,6), SoaDanCena char(1))
  42652.  
  42653. INSERT INTO #TmpKom1 (Sifra_Kup, Sifra_Obj, Sifra_Art, Vlez, Izlez)
  42654. SELECT D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, SUM(Case S.VlIzl WHEN 'V' Then S.Kolic Else 0 End), SUM(Case S.VlIzl WHEN 'I' Then S.Kolic Else 0 End)
  42655. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID WHERE D.Sifra_OE=@Sifra_OE Group by D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  42656.  
  42657. CREATE TABLE #TmpK (Sifra_Kup char(6), Br_Obj smallint)
  42658. INSERT INTO #TmpK SELECT Sifra_Kup, count(*) from Kobjekti 
  42659. WHERE Sifra_Kup IN (SELECT DISTINCT Sifra_Kup FROM #TmpKom1) GROUP BY Sifra_Kup
  42660.  
  42661. UPDATE #TmpKom1 SET Sifra_Obj=0 WHERE Sifra_Obj IS NULL AND Sifra_Kup IN (SELECT Sifra_Kup FROM #TmpK WHERE br_Obj>1)
  42662. INSERT INTO #TmpKom (Sifra_Kup, Sifra_Obj, Sifra_Art, Vlez, Izlez)
  42663. SELECT Sifra_Kup, Sifra_Obj, Sifra_Art, SUM(Vlez), SUM(Izlez) FROM #TmpKom1 GROUP BY Sifra_Kup, Sifra_Obj, Sifra_Art
  42664.  
  42665. UPDATE #TmpKom SET NNabCena = S.NNabCena, SoaCena=S.Cena, SoaDanCena=S.DanCena FROM Soart S 
  42666. WHERE S.Sifra_OE=@Sifra_OE AND #TmpKom.Sifra_Art=S.Sifra_Art 
  42667.  
  42668. SELECT T.*, A.Sifra_Tar, Ta.ProcOsn FROM #TmpKom T INNER JOIN KatArt A ON A.Sifra_Art=T.Sifra_Art INNER JOIN Tarifi Ta ON A.Sifra_Tar=Ta.Sifra_Tar
  42669. WHERE T.Vlez<>T.Izlez and A.SMatUsl='M' ORDER BY T.Sifra_Kup, T.Sifra_Obj, T.Sifra_Art
  42670.  
  42671.  
  42672.  
  42673.  
  42674. Go
  42675. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajzalzawebnaracki1art]'))
  42676. drop procedure [dbo].[sp_dajzalzawebnaracki1art]
  42677.  
  42678. Go
  42679.  
  42680.  
  42681.  
  42682.  
  42683. CREATE    PROCEDURE sp_DajZalZaWebNaracki1Art
  42684.     @Sifra_Art Varchar(20), 
  42685.     @Sifra_OE varchar(200),
  42686.     @Vlez decimal(18,6)=0 OUTPUT,
  42687.     @Izlez decimal(18,6)=0 OUTPUT,
  42688.     @ProcOsn decimal(6,2)=0 OUTPUT,
  42689.     @Sifra_Tar    char(3)='' OUTPUT
  42690. AS
  42691.     SELECT @ProcOsn=T.ProcOsn, @Sifra_Tar=K.Sifra_Tar FROM KatArt K INNER JOIN Tarifi T ON K.Sifra_tar=T.Sifra_Tar WHERE K.Sifra_Art=@Sifra_Art
  42692.  
  42693. Declare @SSQL varchar(2000)
  42694. CREATE TABLE #TmpOE (Sifra_OE smallint)
  42695. SET @SSQL = 'SELECT Sifra_OE FROM OrgEd WHERE Sifra_OE IN ('+@Sifra_OE+') '
  42696. print (@ssql)
  42697. INSERT INTO #TmpOE EXEC (@SSQL)
  42698.  
  42699. SELECT @Vlez=SUM(S.Vlez), @Izlez=SUM(S.Izlez) FROM Soart S INNER JOIN #TmpOE O ON S.Sifra_OE=O.Sifra_OE
  42700. WHERE S.Sifra_Art=@Sifra_Art GROUP BY S.Sifra_Art
  42701.  
  42702.  
  42703.  
  42704.  
  42705.  
  42706. Go
  42707. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajzbirsuroviniposostavkontr]'))
  42708. drop procedure [dbo].[sp_dajzbirsuroviniposostavkontr]
  42709.  
  42710. Go
  42711.  
  42712. CREATE      PROCEDURE sp_DajZbirSuroviniPoSostavKontr
  42713. AS
  42714. SELECT S.Sifra_Sur, SUR.ImeArt, SUR.EdMera, SUM(S.Ima_Kolic*A.Kolic/S.Za_Kolku) Kolic 
  42715. FROM SostavKontr S
  42716. INNER JOIN ##TmpSurPoSKontr A ON S.Sifra_Art=A.Sifra_Art AND S.KontrSer=A.Kontr 
  42717. INNER JOIN KatArt SUR ON S.Sifra_Sur=SUR.Sifra_Art
  42718. GROUP BY S.Sifra_Sur, SUR.ImeArt, SUR.EdMera
  42719.  
  42720.  
  42721.  
  42722. Go
  42723. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dajzbstavodmagstavr]'))
  42724. drop procedure [dbo].[sp_dajzbstavodmagstavr]
  42725.  
  42726. Go
  42727.  
  42728.  
  42729.  
  42730. CREATE    PROCEDURE sp_DajZbStavOdMagStavr
  42731.     @DokrID    int
  42732. AS
  42733. SELECT M.Sifra_Art, sum(M.Kolic) Kolic  --vaka ne SUM(CASE When A.ImaKomerc<=0 Then M.Kolic Else M.Kolic*M.Paketi END) Kolic 
  42734. FROM MagStavr M --INNER JOIN KatArt A On M.Sifra_Art=A.Sifra_Art
  42735. WHERE M.DokrID=@DokrID GROUP BY M.Sifra_Art
  42736.  
  42737.  
  42738.  
  42739. Go
  42740. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dali_ima_sifkupart]'))
  42741. drop procedure [dbo].[sp_dali_ima_sifkupart]
  42742.  
  42743. Go
  42744. CREATE PROCEDURE sp_Dali_Ima_SifKupArt
  42745.     @Sifra_Kup    char(6),
  42746.     @Sifra_Art    varchar(20),
  42747.     @ImaArt    char(1) = 'N' Output,
  42748.     @ImaKup    char(1) = 'N' Output
  42749. AS
  42750.     If Exists (Select * From SifKupArt Where Sifra_Kup=@Sifra_Kup And Sifra_Art=@Sifra_Art)
  42751.     Begin
  42752.         Set @ImaArt='D'
  42753.         Set @ImaKup='D'
  42754.     End
  42755.     Else 
  42756.     Begin
  42757.         Set @ImaArt='N'
  42758.         Set @ImaKup='N'
  42759.     End
  42760.     If @ImaKup <> 'D' 
  42761.         If Exists (Select Top 1 * From SifKupArt Where Sifra_Kup=@Sifra_Kup)
  42762.             Set @ImaKup='D'
  42763.  
  42764.  
  42765. Go
  42766. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dalipecatimecustom]'))
  42767. drop procedure [dbo].[sp_dalipecatimecustom]
  42768.  
  42769. Go
  42770.  
  42771.  
  42772.  
  42773. CREATE    PROCEDURE sp_DaliPecatimeCustom
  42774.     
  42775. AS
  42776. select count(papername) BrStavki from konflokprn where papername is not null and papername<>''
  42777.  
  42778.  
  42779.  
  42780.  
  42781.  
  42782. Go
  42783. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dalipostoi_sap]'))
  42784. drop procedure [dbo].[sp_dalipostoi_sap]
  42785.  
  42786. Go
  42787.  
  42788. CREATE    PROCEDURE sp_DaliPostoi_SAP
  42789.         @Vrednost varchar(20),
  42790.         @Sifra Varchar(20),
  42791.         @Tabela Varchar(20)
  42792. AS
  42793. DECLARE @SSQL as varchar(100)
  42794. SET @SSQL='SELECT '+ @Sifra +' sifra from '+@Tabela + ' Where '+ @Sifra +'='''+@Vrednost +''''
  42795. PRINT(@SSQL)
  42796. EXEC (@SSQL)
  42797. RETURN @@ERROR
  42798.  
  42799.  
  42800.  
  42801.  
  42802. Go
  42803. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dalipostoiart_imp]'))
  42804. drop procedure [dbo].[sp_dalipostoiart_imp]
  42805.  
  42806. Go
  42807. CREATE PROCEDURE sp_DaliPostoiArt_IMP
  42808.     @Sifra_Art     VARCHAR(20),
  42809.     @Postoi        SMALLINT OUTPUT
  42810. AS
  42811.  
  42812.     SET @Postoi = 0
  42813.     IF EXISTS (SELECT Sifra_Art FROM Katart WHERE Sifra_Art = @Sifra_Art)
  42814.         SET @Postoi = 1
  42815.  
  42816.  
  42817.  
  42818. Go
  42819. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dalipostoisgrorg]'))
  42820. drop procedure [dbo].[sp_dalipostoisgrorg]
  42821.  
  42822. Go
  42823.  
  42824.  
  42825. CREATE  PROCEDURE sp_DaliPostoiSGrOrg
  42826.    @Sif_GrOrg char(6),
  42827.    @Sifra_OE smallint
  42828. AS
  42829.   Select * from  SGrOrg Where Sif_GrOrg=@Sif_GrOrg and Sifra_OE=@Sifra_OE
  42830.    RETURN @@ERROR
  42831.  
  42832.  
  42833.  
  42834.  
  42835. Go
  42836. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ddvprijava]'))
  42837. drop procedure [dbo].[sp_ddvprijava]
  42838.  
  42839. Go
  42840.  
  42841.  
  42842.  
  42843.  
  42844.  
  42845.  
  42846.  
  42847.  
  42848.  
  42849. CREATE    PROCEDURE  sp_DDVPrijava
  42850.     @Datum_Nal_Od as smalldatetime,
  42851.     @Datum_Nal_Do as smalldatetime,
  42852.     @ParalenliBazi     varchar(200) = Null
  42853. AS
  42854. Declare @SSQL Varchar(8000)
  42855. CREATE       Table #Bazi
  42856.     (
  42857.      ImeBaza    varchar(50)
  42858.     )
  42859. Insert Into #Bazi Select db_Name()
  42860. If @ParalenliBazi Is Not Null
  42861. Set @ParalenliBazi=@ParalenliBazi+ ','
  42862. Begin
  42863.     Declare @Poz_Delim Smallint
  42864.     Declare @Poz_Start Smallint
  42865.     Declare @BazaIme varchar(50)
  42866.     If @ParalenliBazi Is Null 
  42867.         Set @ParalenliBazi = ''
  42868.         Set @Poz_Start = 0
  42869.     While 1=1
  42870.         Begin
  42871.             Set @Poz_Delim = Charindex(',', @ParalenliBazi, @Poz_Start)
  42872.             If @Poz_Delim = 0
  42873.                 Break
  42874.             Set @BazaIme = SubString(@ParalenliBazi, @Poz_Start, @Poz_Delim-@Poz_Start)
  42875.             Set @Poz_Start = @Poz_Delim + 1
  42876.             Insert Into #Bazi Select @BazaIme
  42877.         End
  42878. End
  42879. Create Table #tmpDDVPrijava
  42880. (    Pole1 Decimal(18,4),
  42881.     Pole2 Decimal(18,4),
  42882.     Pole3 Decimal(18,4),
  42883.     Pole4 Decimal(18,4),
  42884.     Pole5 Decimal(18,4),
  42885.     Pole6 Decimal(18,4),
  42886.     Pole8 Decimal(18,4),
  42887.     Pole9 Decimal(18,4),
  42888.     Pole10 Decimal(18,4),
  42889.     Pole11 Decimal(18,4),
  42890.     Pole12 Decimal(18,4),
  42891.     Pole13 Decimal(18,4)
  42892. )
  42893.     Declare @ImeBaza as varchar(50)
  42894.     Declare Bazi Cursor 
  42895.     Fast_Forward For Select ImeBaza From #Bazi
  42896.     Open Bazi
  42897.     Fetch Next From Bazi Into @ImeBaza
  42898.     While @@Fetch_Status = 0
  42899.     Begin
  42900.         --Pocetna Sostojba
  42901.         Set @SSQL = 'select 
  42902.                 sum(case when A.VoDDVPrijava=1 then Pobaruva end) as Pole1,
  42903.                 sum(case when A.VoDDVPrijava=2 then Pobaruva end) as Pole2 ,
  42904.                 sum(case when A.VoDDVPrijava=3 then Pobaruva end) as Pole3 ,
  42905.                 sum(case when A.VoDDVPrijava=4 then Pobaruva end) as Pole4 ,
  42906.                 sum(case when A.VoDDVPrijava=5 then Pobaruva end) as Pole5 ,
  42907.                 sum(case when A.VoDDVPrijava=6 then Pobaruva end) as Pole6 ,
  42908.                 sum(case when A.VoDDVPrijava=2 or A.VoDDVPrijava=4  then Pobaruva end) as Pole8,
  42909.                 sum(case when A.VoDDVPrijava=9 then Dolzi end) as Pole9 ,
  42910.                 sum(case when A.VoDDVPrijava=10 then Dolzi end) as Pole10 ,
  42911.                 sum(case when A.VoDDVPrijava=11 then Dolzi end) as Pole11 ,
  42912.                 sum(case when A.VoDDVPrijava=12 then Dolzi end) as Pole12 ,
  42913.                 sum(case when A.VoDDVPrijava=10 or A.VoDDVPrijava=12  then Dolzi end) as Pole13
  42914.                  from ' + @ImeBaza + '..gstav G
  42915.                 left outer Join ' + @ImeBaza + '..anal A on A.Kto_Anal=G.Kto_Anal
  42916.                 where G.Sifra_Nal<>999 AND A.VoDDVPrijava in (1,2,3,4,5,6,9,10,11,12) and Datum_Nal >=''' + cast(@Datum_Nal_Od as varchar(35))  + '''
  42917.                  And Datum_Nal <= '''+ cast(@Datum_Nal_Do as varchar(35))  + ''''
  42918.         Insert #tmpDDVPrijava Exec(@SSQL)
  42919.         Fetch Next From Bazi Into @ImeBaza
  42920.     End
  42921.     Close Bazi
  42922.     Deallocate Bazi
  42923. Select sum(Pole1) as Pole1 ,
  42924. sum(Pole2) as Pole2,
  42925. sum(Pole3) as Pole3,
  42926. sum(Pole4) as Pole4,
  42927. sum(Pole5) as Pole5,
  42928. sum(Pole6) as Pole6,
  42929. sum(Pole8) as Pole8,
  42930. sum(Pole9) as Pole9,
  42931. sum(Pole10)as Pole10,
  42932. sum(Pole11)as Pole11,
  42933. sum(Pole12)as Pole12,
  42934. sum(Pole13)as Pole13  
  42935. from #tmpDDVPrijava
  42936.  
  42937.  
  42938.  
  42939.  
  42940.  
  42941.  
  42942.  
  42943. Go
  42944. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ddvprijava_sr]'))
  42945. drop procedure [dbo].[sp_ddvprijava_sr]
  42946.  
  42947. Go
  42948.  
  42949.  
  42950.  
  42951.  
  42952.  
  42953.  
  42954.  
  42955.  
  42956.  
  42957. CREATE    PROCEDURE  sp_DDVPrijava_SR
  42958.     @Datum_Nal_Od as smalldatetime,
  42959.     @Datum_Nal_Do as smalldatetime,
  42960.     @ParalenliBazi     varchar(200) = Null
  42961. AS
  42962. Declare @SSQL Varchar(8000)
  42963. CREATE       Table #Bazi
  42964.     (
  42965.      ImeBaza    varchar(50)
  42966.     )
  42967. Insert Into #Bazi Select db_Name()
  42968. If @ParalenliBazi Is Not Null
  42969. Set @ParalenliBazi=@ParalenliBazi+ ','
  42970. Begin
  42971.     Declare @Poz_Delim Smallint
  42972.     Declare @Poz_Start Smallint
  42973.     Declare @BazaIme varchar(50)
  42974.     If @ParalenliBazi Is Null 
  42975.         Set @ParalenliBazi = ''
  42976.         Set @Poz_Start = 0
  42977.     While 1=1
  42978.         Begin
  42979.             Set @Poz_Delim = Charindex(',', @ParalenliBazi, @Poz_Start)
  42980.             If @Poz_Delim = 0
  42981.                 Break
  42982.             Set @BazaIme = SubString(@ParalenliBazi, @Poz_Start, @Poz_Delim-@Poz_Start)
  42983.             Set @Poz_Start = @Poz_Delim + 1
  42984.             Insert Into #Bazi Select @BazaIme
  42985.         End
  42986. End
  42987. Create Table #tmpDDVPrijava
  42988. (    Pole1 Decimal(18,4),
  42989.     Pole2 Decimal(18,4),
  42990.     Pole3 Decimal(18,4),
  42991.     Pole103 Decimal(18,4),
  42992.     Pole4 Decimal(18,4),
  42993.     Pole104 Decimal(18,4),
  42994.     Pole5 Decimal(18,4),
  42995.     Pole105 Decimal(18,4),
  42996.     Pole6 Decimal(18,4),
  42997.     Pole106 Decimal(18,4),
  42998.     Pole7 Decimal(18,4),
  42999.     Pole107 Decimal(18,4),
  43000.     Pole8 Decimal(18,4),
  43001.     Pole108 Decimal(18,4),
  43002.     Pole9 Decimal(18,4),
  43003.     Pole109 Decimal(18,4),
  43004.     Pole110 Decimal(18,4)
  43005. )
  43006.     Declare @ImeBaza as varchar(50)
  43007.     Declare Bazi Cursor 
  43008.     Fast_Forward For Select ImeBaza From #Bazi
  43009.     Open Bazi
  43010.     Fetch Next From Bazi Into @ImeBaza
  43011.     While @@Fetch_Status = 0
  43012.     Begin
  43013.         --Pocetna Sostojba
  43014.         Set @SSQL = 'select 
  43015.                 sum(case when A.VoDDVPrijava=1 then Pobaruva end) as Pole1,
  43016.                 sum(case when A.VoDDVPrijava=2 then Pobaruva end) as Pole2 ,
  43017.                 sum(case when A.VoDDVPrijava=3 then Pobaruva end) as Pole3 ,
  43018.                 sum(case when A.VoDDVPrijava=103 then Pobaruva end) as Pole103 ,
  43019.                 sum(case when A.VoDDVPrijava=4 then Pobaruva end) as Pole4 ,
  43020.                 sum(case when A.VoDDVPrijava=104 then Pobaruva end) as Pole104 ,
  43021.                 sum(case when A.VoDDVPrijava=5 then Pobaruva end) as Pole5 ,
  43022.                 sum(case when A.VoDDVPrijava=105 then Pobaruva end) as Pole105 ,
  43023.                 sum(case when A.VoDDVPrijava=6 then Pobaruva end) as Pole6 ,
  43024.                 sum(case when A.VoDDVPrijava=2 or A.VoDDVPrijava=4  then Pobaruva end) as Pole8,
  43025.                 sum(case when A.VoDDVPrijava=9 then Dolzi end) as Pole9 ,
  43026.                 sum(case when A.VoDDVPrijava=10 then Dolzi end) as Pole10 ,
  43027.                 sum(case when A.VoDDVPrijava=11 then Dolzi end) as Pole11 ,
  43028.                 sum(case when A.VoDDVPrijava=12 then Dolzi end) as Pole12 ,
  43029.                 sum(case when A.VoDDVPrijava=10 or A.VoDDVPrijava=12  then Dolzi end) as Pole13
  43030.                  from ' + @ImeBaza + '..gstav G
  43031.                 left outer Join ' + @ImeBaza + '..anal A on A.Kto_Anal=G.Kto_Anal
  43032.                 where A.VoDDVPrijava in (1,2,3,4,5,6,9,10,11,12) and Datum_Nal >=''' + cast(@Datum_Nal_Od as varchar(35))  + '''
  43033.                  And Datum_Nal <= '''+ cast(@Datum_Nal_Do as varchar(35))  + ''''
  43034.         Insert #tmpDDVPrijava Exec(@SSQL)
  43035.         Fetch Next From Bazi Into @ImeBaza
  43036.     End
  43037.     Close Bazi
  43038.     Deallocate Bazi
  43039. Select sum(Pole1) as Pole1 ,
  43040. sum(Pole2) as Pole2,
  43041. sum(Pole3) as Pole3,
  43042. sum(Pole4) as Pole4,
  43043. sum(Pole5) as Pole5,
  43044. sum(Pole6) as Pole6,
  43045. sum(Pole8) as Pole8,
  43046. sum(Pole9) as Pole9,
  43047. sum(Pole10)as Pole10,
  43048. sum(Pole11)as Pole11,
  43049. sum(Pole12)as Pole12,
  43050. sum(Pole13)as Pole13  
  43051. from #tmpDDVPrijava
  43052.  
  43053.  
  43054.  
  43055.  
  43056.  
  43057.  
  43058.  
  43059. Go
  43060. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_deklaracii_podok]'))
  43061. drop procedure [dbo].[sp_deklaracii_podok]
  43062.  
  43063. Go
  43064. CREATE            PROCEDURE sp_Deklaracii_PoDok
  43065.     @Sifra_OE     smallint,
  43066.     @Sifra_Dok     smallint,
  43067.     @Broj_Dok     int,
  43068.     @DobavOd    char(1) = 'K'    -- K - Katart,    D - Dokr
  43069. AS
  43070.     Declare @SSQL Varchar(8000)
  43071.     Set @SSQL = 'SELECT S.Sifra_Art, K.ImeArt, K.Sifra_Podg, P.Ime_Podg, Kup.BrIzjava, K.Alt_Ime, K.Alt_Ime2, K.Edmera, K.Tezina,
  43072.             Nomen = Case K.Nom When NULL Then dbo.fn_Nom(S.Sifra_Art) Else K.Nom  End,
  43073.             K.Cena, K.DogCena, K.MalCena, K.GotCena, K.SpeCena, K.Sodrzied, K.BTezina, K.ProcAlk, K.Rok_Tra, S.Kolic, '
  43074.     IF @DobavOd='D'
  43075.         Set @SSQL = @SSQL + ' D.Sifra_Kup as Kto, Kup.ImeKup '
  43076.     ELSE
  43077.         Set @SSQL = @SSQL + ' K.Kto, Kup.ImeKup '
  43078.     Set @SSQL = @SSQL + ' FROM Dokr D
  43079.                 INNER JOIN Stavr S on S.DokrId = D.DokrId
  43080.                 INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  43081.                 INNER JOIN Podgrupi P On P.Sifra_Podg = K.Sifra_Podg '
  43082.     If @DobavOd = 'D'
  43083.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup '
  43084.     Else
  43085.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup = K.Kto '
  43086.     Set @SSQL = @SSQL + ' WHERE D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' 
  43087.                 AND D.Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(10)) + ' 
  43088.                 AND D.Broj_Dok=' + Cast(@Broj_Dok As Varchar(10)) + ' 
  43089.                 ORDER BY S.RBr '
  43090.     Exec(@SSQL)
  43091.  
  43092.  
  43093. Go
  43094. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_denovinanaplata]'))
  43095. drop procedure [dbo].[sp_denovinanaplata]
  43096.  
  43097. Go
  43098.  
  43099.  
  43100. CREATE                        PROCEDURE sp_DenoviNaNaplata
  43101.     @Sifra_OE Smallint = Null, 
  43102.     @KoiOE Varchar(300) = Null,
  43103.     @Pod1 Smallint = Null,
  43104.     @Pod2 Smallint = Null,
  43105.     @Pod3 Smallint = Null,
  43106.     @Pod4 Smallint = Null,
  43107.     @Pod5 Smallint = Null,
  43108.     @Sifra_Tip Smallint = Null,
  43109.     @Datum_Od Smalldatetime = Null,
  43110.     @Datum_Do Smalldatetime = Null,
  43111.     @Sifra_Kup_Od Char(6) = Null,             
  43112.     @Sifra_Kup_Do Char(6) = Null,    
  43113.     @Podred Char(1) = Null,    
  43114.     @Kolku Int = Null,    
  43115.     @TipKup Char(11) = Null,    
  43116. --    @Komint_KObj Char(1) = 'K',    
  43117.     @Koi_Gradovi Varchar(200) = Null,
  43118.     @Sifra_Pat    smallint = Null,
  43119.     @KomercKako    char(1) = 'I',        -- I - Istoriski,      T-Tekovno
  43120.     @TipDokProd    varchar(200) = Null,
  43121.     @Koi_Regioni    varchar(200) = Null,
  43122.     @PoKojDatum    char(1) = 'D',         -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  43123.     @GrKup varchar(500)= null,
  43124.     @GrArt varchar(500)= null
  43125. AS
  43126.     If @PoKojDatum = 'V'
  43127.             If @Datum_Do Is Not Null
  43128.         Set @Datum_Do = @Datum_Do + 1
  43129.     Set Nocount On
  43130.     Declare @SSQL Varchar(8000)
  43131.     Declare @SSQLUsl Varchar(8000)
  43132.     Declare @Toc as decimal(18,6)
  43133.     SET @SSQLUsl = ' '
  43134. ------------------------------------------------------------------
  43135.     If @GrKup Is Not Null
  43136.     Begin
  43137.     Create    Table #KupObj
  43138.         (
  43139.             Sifra_Kup    char(6),
  43140.             Sifra_Obj    smallint
  43141.         )
  43142.         CREATE   Table #KupObj1
  43143.         (
  43144.             Sifra_Kup    char(6),
  43145.             Sifra_Obj    smallint
  43146.         )
  43147.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  43148.         Exec(@SSQL)
  43149.  
  43150.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  43151.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  43152.                 From SGrKupObj GK 
  43153.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  43154.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  43155.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  43156.         Exec(@SSQL)
  43157.  
  43158.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  43159.         Exec(@SSQL)
  43160.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  43161.     End
  43162.  
  43163. --    If @GrArt Is Not Null
  43164. --    Begin
  43165. --        Create Table #GrArt
  43166. --        (
  43167. --            Sifra_Art    varchar(20)
  43168. --        )
  43169. --        Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  43170. --        Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  43171. --        Exec(@SSQL)
  43172. --    End
  43173. ----------------------------------------------------------------------------------------
  43174.     Create Table #Tab
  43175.     ( 
  43176.      Sifra_Kup    char(6),
  43177. --     Sifra_Obj    smallint,
  43178.      RokIznos    decimal(18,4),
  43179.      Toc200    decimal(18,4),
  43180.      Rabat        decimal(18,4),
  43181.      VkIznos    decimal(18,4),
  43182.      DenIznos    decimal(18,4),
  43183.      PlatIznos    decimal(18,4)
  43184.     )
  43185. --    Set @SSQL = ' Select D.Sifra_kup, Round(Sum(Case D.Rok When 0 Then D.Toc200 else (D.Rok*D.Toc200) end), 4) as RokIznos, 
  43186.     Set @SSQL = ' Select D.Sifra_kup, D.Rok as RokIznos, 
  43187.             Round (Sum(S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)), 2) Toc200,
  43188.             Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces)), 4) As Rabat,
  43189.             Round(Sum(dbo.fn_vr_osnov(S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) As VkIznos, 
  43190.             0 as DenIznos, 0 PlatIznos
  43191.             From Dokr D
  43192.             Inner Join Stavr S On S.DokrId = D.DokrId 
  43193.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  43194.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  43195. -------------------------------------
  43196.     If @GrKup Is Not Null
  43197.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  43198.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  43199. --    If @GrArt Is Not Null
  43200.     ---    Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  43201. --------------------------------------
  43202.     Set @SSQL = @SSQL + 'Where D.VlIzl=''I'' and D.Sifra_Za = ''1'' ' --and D.Toc200 > 50 '
  43203.     If @Koi_Gradovi Is Not NULL    
  43204.             Set @SSQL = @SSQL + ' and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + ') '     
  43205.     If @Koi_Regioni Is Not NULL    
  43206.             Set @SSQL = @SSQL + ' and KUP.Sifra_Reg In ( ' + @Koi_Regioni + ') '     
  43207.     If @PoKojDatum = 'V'
  43208.           Begin
  43209.         If @Datum_Od Is Not NULL
  43210.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  43211.         If @Datum_Do Is Not NULL
  43212.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  43213.           End
  43214.     Else 
  43215.           Begin
  43216.         If @Datum_Od Is Not NULL
  43217.             Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  43218.         If @Datum_Do Is Not NULL
  43219.             Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  43220.           End
  43221.     If @Sifra_Kup_Od Is Not NULL
  43222.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  43223.     If @Sifra_Kup_Do Is Not NULL
  43224.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  43225.     If @Pod1 Is Not NULL
  43226.         Set @SSQL = @SSQL + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  43227.     If @Pod2 Is Not NULL
  43228.         Set @SSQL = @SSQL + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  43229.     If @Pod3 Is Not NULL
  43230.         Set @SSQL = @SSQL + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '
  43231.     If @Pod4 Is Not NULL
  43232.         Set @SSQL = @SSQL + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  43233.     If @Pod5 Is Not NULL
  43234.         Set @SSQL = @SSQL + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  43235.     If @Sifra_Tip Is Not Null
  43236.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  43237.     If @KomercKako = 'I'
  43238.         If @Sifra_Pat IS NOT NULL
  43239.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  43240.     If @KomercKako = 'T'
  43241.         If @Sifra_Pat IS NOT NULL
  43242.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  43243. --    If @Sifra_Pat IS NOT NULL
  43244. --        SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  43245.     If @TipKup Is Not NULL
  43246.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  43247.     If @Sifra_OE Is Not NULL    
  43248.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  43249.     If @KoiOE Is Not NULL
  43250.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  43251.     If @TipDokProd IS NOT NULL
  43252.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  43253. --    Set @SSQL = @SSQL + 'Group By D.Sifra_Kup '
  43254.     Set @SSQL = @SSQL + 'Group By D.Sifra_Kup, D.Rok '
  43255.     Insert Into #Tab Exec(@SSQL)
  43256.     Create Table #Napl
  43257.     (
  43258.      Sifra_Kup    char(6),
  43259.      Rok        decimal(18,8)
  43260. --     DenIznos    decimal(18,6),
  43261. --     PlatIznos    decimal(18,6)
  43262.     )
  43263. /*    Set @SSQL = ' Select A.Sifra_Kup, 0, 0, 0, 0, sum(AN.Iznos*datediff(d, A.Datum_Dok, AN.DatumZatv)), Sum(AN.Iznos) 
  43264.             From AnFinDok A
  43265.             Inner Join AnZatv AN On (A.AnId=An.AnId1 Or A.AnId=An.AnId2)
  43266.             Left Outer Join Komint KUP ON A.Sifra_Kup=KUP.Sifra_Kup '
  43267.     Set @SSQL = ' Select A.Sifra_Kup, sum(AN.Iznos*datediff(d, A.Datum_Dok+A.Rok, AN.DatumZatv)), Sum(AN.Iznos) 
  43268.             From AnFinDok A
  43269.             Inner Join AnZatv AN On (A.AnId=An.AnId1 Or A.AnId=An.AnId2)
  43270.             Left Outer Join Komint KUP ON A.Sifra_Kup=KUP.Sifra_Kup '
  43271. */
  43272.     Set @SSQL = ' Select A.sifra_kup, 
  43273.             (CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6)))
  43274.             from anfindok A
  43275.             inner join anzatv z on A.anid=z.anid2
  43276.             inner join anfindok f on  f.anid=z.anid1
  43277.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  43278.             where A.sifra_za=1 and abs(A.pobaruva) > 50  ' -- bese A.Pobaruva <>0 -- bara Zarko M&A 
  43279.     If @Koi_Gradovi Is Not NULL    
  43280.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + ') '     
  43281.     If @Koi_Regioni Is Not NULL    
  43282.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Reg In ( ' + @Koi_Regioni + ') '     
  43283.     If @PoKojDatum = 'V'
  43284.           Begin
  43285.         If @Datum_Od Is Not NULL
  43286.             Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  43287.         If @Datum_Do Is Not NULL
  43288.             Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  43289.           End
  43290.     Else 
  43291.           Begin
  43292.         If @Datum_Od Is Not NULL
  43293.             Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  43294.         If @Datum_Do Is Not NULL
  43295.             Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  43296.           End
  43297.     If @Sifra_Kup_Od Is Not NULL
  43298.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  43299.     If @Sifra_Kup_Do Is Not NULL
  43300.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  43301.     If @Pod1 Is Not NULL
  43302.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  43303.     If @Pod2 Is Not NULL
  43304.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  43305.     If @Pod3 Is Not NULL
  43306.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '
  43307.     If @Pod4 Is Not NULL
  43308.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  43309.     If @Pod5 Is Not NULL
  43310.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  43311.     If @Sifra_Tip Is Not Null
  43312.         SET @SSQLUsl = @SSQLUsl +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  43313.     If @KomercKako = 'I'
  43314.         If @Sifra_Pat IS NOT NULL
  43315.             SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  43316.     If @KomercKako = 'T'
  43317.         If @Sifra_Pat IS NOT NULL
  43318.             SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  43319. --    If @Sifra_Pat IS NOT NULL
  43320. --        SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  43321.     If @TipKup Is Not NULL
  43322.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  43323.     If @Sifra_OE Is Not NULL    
  43324.         Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  43325.     If @KoiOE Is Not NULL
  43326.              Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE IN (' + @KoiOE + ') '
  43327.     If @TipDokProd IS NOT NULL
  43328.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Dok IN (' + @TipDokProd + ') '
  43329. --    Set @SSQLUsl = @SSQLUsl + 'Group By A.Sifra_Kup '
  43330. --print @SSQL+@SSQLUsl
  43331.     Insert Into #Napl Exec(@SSQL+@SSQLUsl)
  43332.     Set @SSQL = ' Select A.sifra_kup, 
  43333.             (CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6)))
  43334.             from anfindok A
  43335.             inner join anzatv z on A.anid=z.anid1
  43336.             inner join anfindok f on  f.anid=z.anid2
  43337.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  43338.             where A.sifra_za=1 and abs(A.pobaruva) > 50  ' -- bese A.Pobaruva <>0 -- bara Zarko M&A 
  43339.     Insert Into #Napl Exec(@SSQL+@SSQLUsl)
  43340.     Update #Napl Set Rok=0 Where Rok Is Null
  43341.     Create Table #Rokovi
  43342.     (
  43343.      Sifra_Kup    char(6),     Rok        decimal(9,3)
  43344.     )
  43345.     Insert Into #Rokovi Select Sifra_Kup, Avg(Rok) from #Napl group by Sifra_Kup
  43346.     Update #Rokovi Set Rok = 0 where Rok<0
  43347. --select * from #rokovi
  43348.     Create Table #Vkup
  43349.     (
  43350.      Sifra_Kup    char(6),
  43351.      Vkupno    decimal(18,6)
  43352.     )
  43353.     Insert Into #Vkup Select Sifra_Kup, Sum(Toc200) from #Tab Group By Sifra_Kup
  43354. --    Select T.Sifra_Kup, Kup.ImeKup, Sum(T.RokIznos) RokIznos, Sum(T.Toc200) as  Toc200, Sum(T.Rabat) as Rabat, Sum(T.VkIznos) as VkIznos, 
  43355.     Create Table #Podred
  43356.     (
  43357.      Rbr        int IDENTITY (1, 1) NOT NULL,
  43358.      Sifra_kup    char(6)
  43359.     )
  43360.     Set @SSQL = ' Insert Into #Podred (Sifra_Kup) '
  43361.     If @Kolku Is Not Null
  43362.         Set @SSQL = @SSQL + ' Select Top ' + cast(@Kolku as varchar(5))  + ' '
  43363.     Else 
  43364.         Set @SSQL = @SSQL + ' Select '
  43365.     Set @SSQL = @SSQL + ' V.Sifra_Kup 
  43366.                 From #Vkup V
  43367.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = V.Sifra_Kup '
  43368.     If @Podred = 'S'
  43369.         Set @SSQL = @SSQL + ' Order By V.Sifra_Kup '
  43370.     Else If @Podred = 'A'
  43371.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup '
  43372.     Else If @Podred = 'V'
  43373.         Set @SSQL = @SSQL + ' Order By V.Vkupno Desc '
  43374.     Exec(@SSQL)    
  43375. --    Select * from #Podred 
  43376. /*    If @Kolku Is Not Null
  43377.         Set @SSQL = ' Select Top ' + cast(@Kolku as varchar(5))  + ' '
  43378.     Else 
  43379.         Set @SSQL = ' Select '
  43380. */
  43381.     Set @SSQL = ' Select P.Rbr, T.Sifra_Kup, Kup.ImeKup, T.RokIznos, Sum(T.Toc200) as  Toc200, Sum(T.Rabat) as Rabat, Sum(T.VkIznos) as VkIznos, 
  43382.                  V.Vkupno, K2.Ime_2k, R.Rok
  43383.     From #Tab T
  43384.     Left Outer Join #Rokovi R On R.Sifra_Kup=T.Sifra_Kup
  43385.     Left Outer Join #Vkup V On V.Sifra_Kup=T.Sifra_Kup
  43386.     Left Outer Join #Podred P On P.Sifra_Kup=T.Sifra_Kup
  43387.     Left Outer Join Komint Kup On Kup.Sifra_Kup = T.Sifra_Kup
  43388.     Left Outer Join KDrugo2 K2 On K2.Sifra_2K=Kup.KDrugo2 '
  43389.     If @Kolku Is Not Null
  43390.         Set @SSQL = @SSQL + ' Where T.Sifra_Kup In (Select Distinct Sifra_Kup From #Podred) '
  43391.     Set @SSQL = @SSQL + ' Group By  P.Rbr, T.Sifra_Kup, Kup.ImeKup, T.RokIznos,
  43392.                  V.Vkupno, K2.Ime_2k, R.Rok 
  43393.                  Order By P.Rbr '
  43394. --select * from #Rokovi
  43395. --select * from #Vkup
  43396. --select * from #Tab
  43397. /*    If @Podred = 'S'
  43398.         Set @SSQL = @SSQL + ' Order By T.Sifra_Kup '
  43399.     Else If @Podred = 'A'
  43400.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup '
  43401.     Else If @Podred = 'V'
  43402.         Set @SSQL = @SSQL + ' Order By P.Rbr '
  43403.     Else If @Podred = 'R'
  43404.         Set @SSQL = @SSQL + ' Order By R.Rok Desc '
  43405. */
  43406. --select * from #napl
  43407. --print @SSQL
  43408.     Exec(@SSQL)
  43409.     Set Nocount Off
  43410.  
  43411.  
  43412.  
  43413.  
  43414. Go
  43415. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_detalenpregled_rabnal]'))
  43416. drop procedure [dbo].[sp_detalenpregled_rabnal]
  43417.  
  43418. Go
  43419. CREATE     PROCEDURE sp_DetalenPregled_RabNal
  43420.     @Sifra_OERab    smallint = Null,
  43421.     @BrojRabNOd    int = Null,
  43422.     @BrojRabNDo    Int = Null,
  43423.     @Datum_PocProiz_Od    smalldatetime = Null,
  43424.     @Datum_PocProiz_Do    smalldatetime = Null,
  43425.     @PvoTros    char(1) = 'S'        -- P - Proizvodstvo,        T - Trosok          S - Site
  43426. AS
  43427.     DECLARE @SSQL as varchar(8000)
  43428.         Set @SSQL= 'Select RN.RabNalID, RN.Sifra_OeRab, RN.Broj_RabN, RN.Datum_Poc_Proiz, 
  43429.                     DRN.Sifra_Mas, M.ImeMas, DRN.Sifra_Smena, SM.Ime_Smena, DRN.Sifra_Rab, R.ImeRab,
  43430.                     D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.VlIzl, DRN.Tip_RabStav,
  43431.                     E.Sifra_Art, K.ImeArt, E.KontrSer, E.Kolic, E.Tezina_Dara, E.Tezina_Neto, E.Tezina_Bruto
  43432.                 From Dokr D 
  43433.                 Left Outer Join DokRabNal DRN On DRN.DokrId=D.DokrId
  43434.                 Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID
  43435.                 Left Outer Join EvProizvod E On E.DokrID=DRN.DokrID 
  43436.                 Left Outer Join Masini M On M.Sifra_Mas=DRN.Sifra_Mas 
  43437.                 Left Outer Join Smeni SM On SM.Sifra_Smena=DRN.Sifra_Smena
  43438.                 Left Outer Join Rabotnik R On R.Sifra_Rab=DRN.Sifra_Mas
  43439.                 Inner Join Katart K On K.Sifra_Art=E.Sifra_Art '
  43440.         Set @SSQL = @SSQL + ' Where 1=1 '
  43441.         If @PvoTros Is Not Null And @PvoTros <> 'S'
  43442.             Set @SSQL=@SSQL + ' And DRN.Tip_RabStav=''' + @PvoTros + ''' '
  43443.         If @Sifra_OeRab is Not Null
  43444.             Set @SSQL=@SSQL + ' And RN.Sifra_OeRab = ' + cast(@Sifra_OeRab as Varchar(10)) +  ' '
  43445.         If @Datum_PocProiz_Od is Not Null
  43446.             Set @SSQL=@SSQL + ' And RN.Datum_Poc_Proiz >= ''' + cast(@Datum_PocProiz_Od as Varchar(35)) +  ''' '
  43447.         If @Datum_PocProiz_Do is Not Null
  43448.             Set @SSQL=@SSQL + ' And RN.Datum_Poc_Proiz <= ''' + cast(@Datum_PocProiz_Do as Varchar(35)) +  ''' '
  43449.         If @BrojRabNOd is Not Null
  43450.             Set @SSQL=@SSQL + ' And RN.Broj_RabN >= ' + cast(@BrojRabNOd as Varchar(10)) +  ' '
  43451.         If @BrojRabNDo is Not Null
  43452.             Set @SSQL=@SSQL + ' And RN.Broj_RabN <= ' + cast(@BrojRabNDo as Varchar(10)) +  ' '
  43453.         Exec(@SSQL)
  43454.  
  43455.  
  43456. Go
  43457. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_devnaimoddevkalk]'))
  43458. drop procedure [dbo].[sp_devnaimoddevkalk]
  43459.  
  43460. Go
  43461.  
  43462.  
  43463. CREATE           PROCEDURE sp_DevNaimOdDevKalk
  43464.    @Sifra_OE smallint,
  43465.     @Sifra_Dok smallint=132,
  43466.    @Broj_Kalk int
  43467. AS
  43468.     SELECT N.*, C.Ime
  43469.     FROM DevNaim N
  43470.     INNER JOIN CBroevi C ON N.CarBroj=C.CarBroj
  43471.     WHERE N.Sifra_OE= Cast(@Sifra_OE As Varchar(10))  AND N.Broj_Kalk= Cast(@Broj_Kalk As Varchar(10)) 
  43472.     ORDER BY N.CarBroj
  43473.  
  43474.  
  43475.  
  43476.  
  43477. Go
  43478. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_devnaimstoddevkalk]'))
  43479. drop procedure [dbo].[sp_devnaimstoddevkalk]
  43480.  
  43481. Go
  43482.  
  43483.  
  43484. CREATE           PROCEDURE sp_DevNaimStOdDevKalk
  43485.    @Sifra_OE smallint,
  43486.    @Broj_Kalk int,
  43487.     @Sifra_Dok smallint=132,
  43488.    @CarBroj  varchar(10)
  43489. AS
  43490.     SELECT * FROM DevNaimSt 
  43491.     WHERE Sifra_OE= Cast(@Sifra_OE As Varchar(10))  AND Broj_Kalk= Cast(@Broj_Kalk As Varchar(10))  AND CarBroj = @CarBroj
  43492.  
  43493.  
  43494.  
  43495.  
  43496. Go
  43497. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dirsite]'))
  43498. drop procedure [dbo].[sp_dirsite]
  43499.  
  43500. Go
  43501.  
  43502. CREATE   PROCEDURE sp_DirSite
  43503. AS
  43504.     create Table #Tab
  43505.     (
  43506.     Tabela    varchar(20),
  43507.     Zapisi    int
  43508.     )
  43509.     Create Table #Tabeli
  43510.     (
  43511.     Tabela    varchar(20)
  43512.     )
  43513.     Insert Into #Tabeli SELECT Name  FROM SYSOBJECTS WHERE TYPE = 'U' ORDER BY NAME 
  43514.     Declare @SSQL as Varchar(2000)
  43515.     Declare Crs Cursor For Select tabela From #tabeli 
  43516.     Open Crs
  43517.     Declare @Tabela as varchar(20)
  43518.     Declare @Redovi as int
  43519.     Fetch Next From Crs Into @Tabela
  43520.     While @@Fetch_Status = 0
  43521.         Begin    
  43522.         Set @SSQL = ' Select  ''' + @Tabela + ''', count(*) from ' + @Tabela + ' '
  43523.         Insert Into #Tab Exec(@SSQL)
  43524.         Fetch Next From Crs Into @Tabela
  43525.     End --While
  43526.     Close Crs
  43527.     Deallocate Crs
  43528.     Select * from #tab
  43529.  
  43530.  
  43531.  
  43532. Go
  43533. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dirtabela]'))
  43534. drop procedure [dbo].[sp_dirtabela]
  43535.  
  43536. Go
  43537. CREATE PROCEDURE sp_DirTabela
  43538.     @Tabela    varchar(20)
  43539.  AS
  43540.     Declare @SSQL as Varchar(200)
  43541.     Set @SSQL = 'Select ''' + @Tabela + '''Tabela ,Count(*) Zapisi from ' + @Tabela
  43542.     Exec (@SSQL)
  43543.  
  43544.  
  43545.  
  43546. Go
  43547. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dnevakt]'))
  43548. drop procedure [dbo].[sp_dnevakt]
  43549.  
  43550. Go
  43551. CREATE  PROCEDURE sp_DnevAkt
  43552.     @Sifra_OE Smallint,
  43553.     @Sifra_Kup Char(6),
  43554.     @DatumVreme DateTime,
  43555.     @Aktivnost Char(1)
  43556. AS
  43557.     Declare @SSQL Varchar(3000)
  43558. -- proba
  43559.     Set @SSQL = 'Select
  43560.         AK.Sifra_Kup,
  43561.         KUP.ImeKup,
  43562.         Cast(Day(AK.DatumVreme) As Varchar(2)) + ''/'' +
  43563.         Cast(Month(AK.DatumVreme) As Varchar(2)) + ''/'' +
  43564.         Cast(Year(AK.DatumVreme) As Varchar(4)) As Datum,
  43565.         KUP.KDrugo2, KD2.Ime_2K,
  43566.         Case Ak.Aktivnost
  43567.             When ''V'' Then
  43568.                 Cast(DatePart(Hour, AK.DatumVreme) As Varchar(2)) + '':'' +
  43569.                 Cast(DatePart(Minute, AK.DatumVreme) As Varchar(2))
  43570.             Else ''0''
  43571.         End As Vreme_Vlez,
  43572.         Case Ak.Aktivnost
  43573.             When ''I'' Then
  43574.                 Cast(DatePart(Hour, AK.DatumVreme) As Varchar(2)) + '':'' +
  43575.                 Cast(DatePart(Minute, AK.DatumVreme) As Varchar(2))
  43576.             Else ''0''
  43577.         End As Vreme_Izlez, '
  43578.         Set @SSQL = @SSQL + '(Select Sum(Dolzi) From AnFinDok Where Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  43579.             If @Sifra_Kup Is Not Null
  43580.                 Set @SSQL = @SSQL + 'And Sifra_Kup=''' + @Sifra_Kup + ''' '
  43581.             If @DatumVreme Is Not Null
  43582.                 Set @SSQL = @SSQL + 'And Datum_Dok='' 
  43583.                     Cast(Year(AK.DatumVreme) As Varchar(4)) + ''-'' +                    
  43584.                     Cast(Month(AK.DatumVreme) As Varchar(2)) + ''-'' +
  43585.                     Cast(Day(AK.DatumVreme) As Varchar(2))'' '
  43586.             Set @SSQL = @SSQL + 'And Sifra_Dok in (1, 16)) As Prodazba '
  43587.     Set @SSQL = @SSQL + '
  43588.     From Akcija AK
  43589.     Inner Join Komint KUP On AK.Sifra_Kup=KUP.Sifra_Kup
  43590.     Left Outer Join KDrugo2 KD2 On KUP.KDrugo2=KD2.Sifra_2K
  43591.     Inner Join SifAkc SA On AK.Aktivnost=SA.Sifra_Akc
  43592.     Where 1=1 '
  43593.     If @Sifra_OE Is Not Null
  43594.         Set @SSQL = @SSQL + 'And Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  43595.     If @Sifra_Kup Is Not Null
  43596.         Set @SSQL = @SSQL + 'And Sifra_Kup=''' + @Sifra_Kup + ''' '
  43597. print @ssql
  43598.     Exec(@SSQL)
  43599.  
  43600.  
  43601.  
  43602. Go
  43603. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dnevenizvestaj]'))
  43604. drop procedure [dbo].[sp_dnevenizvestaj]
  43605.  
  43606. Go
  43607.  
  43608. CREATE  PROCEDURE sp_DnevenIzvestaj
  43609.     @Koi_MatDok Varchar(30),
  43610.     @Sifra_FinDok  Smallint,
  43611.     @Datum_Od Smalldatetime,
  43612.     @Datum_Do Smalldatetime
  43613. AS
  43614.     Declare @SSQL Varchar(2000)
  43615.     Set @SSQL = 'Select D.Sifra_OE Sifra_OE, D.Sifra_Dok Sifra_Dok,
  43616.         D.Broj_Dok Broj_Dok, D.Identif_Br BrojDok, D.Kto Konto,
  43617.         D.Sifra_Kup Sifra_Kup, Kup.ImeKup ImeKup,
  43618.         D.Datum_Dok Datum_Dok, D.Toc200 Iznos
  43619.         From Dokr D
  43620.         Inner Join Komint Kup On D.Sifra_Kup=Kup.Sifra_Kup
  43621.         Where D.Sifra_Dok In (' + @Koi_MatDok + ') '
  43622.     If @Datum_Od Is Not Null
  43623.         Set @SSQL = @SSQL + 'And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  43624.     If @Datum_Do Is Not Null
  43625.         Set @SSQL = @SSQL + 'And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  43626.     Set @SSQL = @SSQL + 'Union
  43627.     Select A.Sifra_OE Sifra_OE, A.Sifra_Dok Sifra_Dok,
  43628.         A.Broj_Dok Broj_Dok, A.BrojDok BrojDok, A.Kto Konto,
  43629.         A.Sifra_Kup Sifra_Kup, Kup.ImeKup ImeKup,
  43630.         A.Datum_Dok Datum_Dok, A.Pobaruva Iznos
  43631.         From Anfindok A
  43632.         Inner Join Komint Kup On A.Sifra_Kup=Kup.Sifra_Kup
  43633.         Where A.Sifra_Dok=' + Cast(@Sifra_FinDok As Varchar(6)) + ' '
  43634.     If @Datum_Od Is Not Null
  43635.         Set @SSQL = @SSQL + 'And A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  43636.     If @Datum_Do Is Not Null
  43637.         Set @SSQL = @SSQL + 'And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  43638.     Exec(@SSQL)
  43639.  
  43640.  
  43641.  
  43642. Go
  43643. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dnevenizvestaj_maloprodazba]'))
  43644. drop procedure [dbo].[sp_dnevenizvestaj_maloprodazba]
  43645.  
  43646. Go
  43647.  
  43648. CREATE  PROCEDURE [dbo].[sp_DnevenIzvestaj_Maloprodazba]
  43649.     @Sifra_Oe    smallint,
  43650.     @Datum_Od    smalldatetime,
  43651.     @Datum_Do    smalldatetime,
  43652.     @PrikaziSto    char(1)='D',    -- D - Sifra na dokument     A - po Artikli
  43653.     @Sifra_Oper    varchar(20) = Null,
  43654.     @TwistOrg    smallint = Null,
  43655.     @TwistDok    smallint = Null
  43656.  
  43657. AS
  43658.  
  43659.     Declare @SSQL as varchar(8000)
  43660.     Create Table #Promet
  43661.     (
  43662.      OdKade    char(6),
  43663.      Sifra        varchar(20),
  43664.      Ime        varchar(50),
  43665.      Opis        varchar(50),
  43666.      Iznos        decimal(18,6),
  43667.      DodNac        smallint,
  43668.      Dokument    varchar(30),
  43669.      NabVr        decimal(18,6),
  43670.      ProdVrNeto decimal(18,6)
  43671.     )
  43672.  
  43673.     -- Da go najdeme prometot od kasa po nacini na plakkanje i po operatori
  43674.     Set @SSQL = ' Select ''Kasa'', PL.Sifra_Nac, N.ImeNac, O.Ime_Oper, PL.Iznos, null, Null, 0, 0
  43675.             From KPlkProm PL
  43676.             Inner Join KPromet P On P.Sifra_Oe=PL.Sifra_Oe And P.Grp_Kasa=PL.Grp_Kasa And P.BrKasa=PL.BrKasa And P.Broj_Ska=PL.Broj_Ska
  43677.             Inner Join NacPlak N On N.Sifra_Nac=PL.Sifra_Nac
  43678.             Left Outer Join Operatori O On O.Sifra_Oper=P.Sifra_Oper
  43679.             Where 1=1 '
  43680.     If @Sifra_Oe Is Not Null
  43681.         Set @SSQL=@SSQL + ' And PL.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' '
  43682.     If @Datum_Od Is Not Null
  43683.         Set @SSQL=@SSQL + ' And P.Datum_Evid >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  43684.     If @Datum_Do Is Not Null
  43685.         Set @SSQL=@SSQL + ' And P.Datum_Evid <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  43686.     If @Sifra_Oper Is Not Null
  43687.         Set @SSQL=@SSQL + ' And P.Sifra_Oper = ''' + @Sifra_Oper + ''' '
  43688.     Insert Into #Promet Exec(@SSQL)
  43689.  
  43690. --print '1'
  43691.  
  43692.     if @TwistOrg is not null and @TwistDok is not null
  43693.     begin
  43694.         Set @SSQL = ' Select ''Kasa'', 6, ''Gotovina'', ''1'', 
  43695.                         round(sum(S.Kolic * S.MagCena), 0), null, Null,
  43696.                         round(sum(S.Kolic * S.NabCena), 2),
  43697.                         round(sum(S.Kolic * S.MagCena / (1 + S.POsn / 100)), 2)
  43698.                 From Stavr S
  43699.                 Where 1=1 '
  43700.         If @TwistOrg Is Not Null
  43701.             Set @SSQL=@SSQL + ' And S.Sifra_Oe = ' + Cast(@TwistOrg as varchar(5)) + ' '
  43702.         If @TwistDok Is Not Null
  43703.             Set @SSQL=@SSQL + ' And S.Sifra_Dok = ' + Cast(@TwistDok as varchar(5)) + ' '
  43704.         If @Datum_Od Is Not Null
  43705.             Set @SSQL=@SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  43706.         If @Datum_Do Is Not Null
  43707.             Set @SSQL=@SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  43708.  
  43709.         Insert Into #Promet Exec(@SSQL)
  43710.     end
  43711. --print '2'
  43712.  
  43713.     -----------------------------------------------------------------------------------------
  43714.     -- Sega gledaj PO ARTIKLI ILI DOKUMENTI DETALNO
  43715.     -----------------------------------------------------------------------------------------
  43716.     -- Da go najdeme prometot od dokumentite
  43717.     Create Table #Ski    --gk 16.11.2010
  43718.     (
  43719.         DokrID    int,
  43720.         Sifra_Nac    smallint,
  43721.         IznosNac    decimal(18,2),
  43722.         IznosSka    decimal(18,2),
  43723.         Procent        decimal(18,6)
  43724.     )
  43725.     Set @SSQL = ' Select D.DokrID, KP.Sifra_Nac, Sum(KP.Iznos), D.Toc200, 0
  43726.                 From Dokr D 
  43727.                 left outer Join KPromet P on P.Sifra_Oe = D.Sifra_Oe and P.Grp_Kasa = D.Sifra_Dok and P.Departm = D.Broj_Dok 
  43728.                 left outer join KPlkProm KP On P.Sifra_Oe=KP.Sifra_Oe And P.Grp_Kasa=KP.Grp_Kasa And P.BrKasa=KP.BrKasa And P.Broj_Ska=KP.Broj_Ska 
  43729.                 Inner Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  43730.                 Where D.Sifra_Dok In (100, 101, 1, 3) '
  43731.     If @Sifra_Oe Is Not Null
  43732.         Set @SSQL=@SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' '
  43733.     If @Datum_Od Is Not Null
  43734.         Set @SSQL=@SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  43735.     If @Datum_Do Is Not Null
  43736.         Set @SSQL=@SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  43737.     If @Sifra_Oper Is Not Null
  43738.         Set @SSQL=@SSQL + ' And D.Sifra_Oper = ''' + @Sifra_Oper + ''' '
  43739.     Set @SSQL = @SSQL + ' Group By D.DokrID, KP.Sifra_Nac, D.Toc200 '
  43740.     Insert Into #Ski Exec(@SSQL)
  43741.  
  43742.     Update #Ski Set Procent = (Case When IznosSka <> 0 Then IznosNac/IznosSka Else 0 End)
  43743.  
  43744.     If @PrikaziSto = 'A'
  43745.         Set @SSQL = ' Select ''Dok'', S.Sifra_Art, K.ImeArt, Null Opis, 
  43746.                       Round(Sum(S.Kolic * (Case When S.DanDokCena=''D'' Then S.DokCena Else S.DokCena*(1+S.Posn/100) End) * (1-S.Uces/100) * (1-D.Kasa/100) * Ski.Procent),2) Iznos, 
  43747.                       Ski.Sifra_Nac, Cast(D.Sifra_Oe as varchar(3)) + ''-'' + Cast(D.Sifra_Dok as varchar(3)) + ''/'' + Cast(D.Broj_Dok as varchar(6)) Dokument,
  43748.                       round(sum(S.Kolic * S.NabCena * Ski.Procent), 2),
  43749.                       round(sum(S.Kolic * S.MagCena / (1 + S.POsn / 100) * Ski.Procent), 2)
  43750.                 From Stavr S 
  43751.                 Inner Join Dokr D On D.DokrID=S.DokrID
  43752.                 Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  43753.                 left outer Join KPromet P 
  43754.                     on P.Sifra_Oe = S.Sifra_Oe and P.Grp_Kasa = S.Sifra_Dok and P.Departm = S.Broj_Dok 
  43755.                 Left Outer Join #Ski Ski On Ski.DokrID=D.DokrID '
  43756.     Else                                                            --  KP.Iznos,
  43757.         Set @SSQL = ' Select ''Dok'', D.Sifra_Dok, TD.ImeDok, Null Opis, Round((D.Toc200 * Procent), 2), Ski.Sifra_Nac, Null, 0, 0
  43758.                 From Dokr D 
  43759.                 left outer Join KPromet P 
  43760.                     on P.Sifra_Oe = D.Sifra_Oe and P.Grp_Kasa = D.Sifra_Dok and P.Departm = D.Broj_Dok 
  43761.                 Left Outer Join #Ski Ski On Ski.DokrID=D.DokrID '
  43762.     Set @SSQL = @SSQL + ' Inner Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  43763.                   Where D.Sifra_Dok In (100, 101, 1, 3)  '
  43764.     If @Sifra_Oe Is Not Null
  43765.         Set @SSQL=@SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' '
  43766.     If @Datum_Od Is Not Null
  43767.         Set @SSQL=@SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  43768.     If @Datum_Do Is Not Null
  43769.         Set @SSQL=@SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  43770.     If @Sifra_Oper Is Not Null
  43771.         Set @SSQL=@SSQL + ' And D.Sifra_Oper = ''' + @Sifra_Oper + ''' '
  43772.     If @PrikaziSto = 'A' 
  43773.         Set @SSQL=@SSQL + ' Group By S.Sifra_Art, K.ImeArt, Ski.Sifra_Nac, Cast(D.Sifra_Oe as varchar(3)) + ''-'' + Cast(D.Sifra_Dok as varchar(3)) + ''/'' + Cast(D.Broj_Dok as varchar(6))  '
  43774.     Insert Into #Promet Exec(@SSQL)
  43775.  
  43776. --print '3'
  43777.  
  43778.     if @TwistOrg is not null and @TwistDok is not null
  43779.     begin
  43780.         If @PrikaziSto = 'A'
  43781.             Set @SSQL = ' Select ''Dok'', S.Sifra_Art, K.ImeArt, Null Opis, 
  43782.                         round(Sum(S.Kolic * S.MagCena), 0), 6, Null,
  43783.                         round(sum(S.Kolic * S.NabCena), 2),
  43784.                         round(sum(S.Kolic * S.MagCena / (1 + S.POsn / 100)), 2)
  43785.                 From Stavr S 
  43786.                 Inner Join Dokr D On D.DokrID=S.DokrID
  43787.                 Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  43788.         Else
  43789.             Set @SSQL = ' Select ''Dok'', 6, ''Gotovina'', Null Opis, 
  43790.                         round(Sum(S.Kolic * S.MagCena), 0), 6, Null,
  43791.                         round(sum(S.Kolic * S.NabCena), 2),
  43792.                         round(sum(S.Kolic * S.MagCena / (1 + S.POsn / 100)), 2)
  43793.                 From Stavr S 
  43794.                 Inner Join Dokr D On D.DokrID=S.DokrID
  43795.                 Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  43796.  
  43797.         Set @SSQL = @SSQL + ' Where 1=1 '
  43798.         If @TwistOrg Is Not Null
  43799.             Set @SSQL=@SSQL + ' And D.Sifra_Oe = ' + Cast(@TwistOrg as varchar(5)) + ' '
  43800.         If @TwistDok Is Not Null
  43801.             Set @SSQL=@SSQL + ' And D.Sifra_Dok = ' + Cast(@TwistDok as varchar(5)) + ' '
  43802.         If @Datum_Od Is Not Null
  43803.             Set @SSQL=@SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  43804.         If @Datum_Do Is Not Null
  43805.             Set @SSQL=@SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  43806.  
  43807.         If @PrikaziSto = 'A' 
  43808.             Set @SSQL=@SSQL + ' Group By S.Sifra_Art, K.ImeArt '
  43809.  
  43810.         Insert Into #Promet Exec(@SSQL)
  43811.     end
  43812.  
  43813. --print '4'
  43814.  
  43815.     Select P.*, N.ImeNac ImeDodNac
  43816.     From #Promet P
  43817.     Left Outer Join NacPlak N
  43818.         on P.DodNac = N.Sifra_Nac
  43819.  
  43820. ------    select OdKade, Sifra, Ime, Opis, sum(Iznos) Iznos
  43821. ------    from #Promet
  43822. ------    group by OdKade, Sifra, Ime, Opis
  43823.  
  43824.  
  43825. Go
  43826. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dnevenizvestaj_maloprodazbasum]'))
  43827. drop procedure [dbo].[sp_dnevenizvestaj_maloprodazbasum]
  43828.  
  43829. Go
  43830.  
  43831.  
  43832.  
  43833.  
  43834.  
  43835.  
  43836. CREATE    PROCEDURE  sp_DnevenIzvestaj_MaloprodazbaSUM
  43837.     @Sifra_Oe    smallint,
  43838.     @Datum_Od    smalldatetime,
  43839.     @Datum_Do    smalldatetime,
  43840.     @Sifra_Oper    varchar(20) = Null,
  43841.     @TwistOrg    smallint = Null,
  43842.     @TwistDok    smallint = Null
  43843. AS
  43844.     Declare @SSQL as varchar(8000)
  43845.     Create Table #Promet
  43846.     (Sifra_OE    smallint,
  43847.      Sifra_Nac    varchar(20),
  43848.      ImeNac        varchar(50),
  43849.      ImeOper        varchar(50),
  43850.      Iznos        decimal(18,6))
  43851.  
  43852.     -- Da go najdeme prometot od kasa po nacini na plakkanje i po operatori
  43853.     Set @SSQL = ' Select PL.Sifra_OE, PL.Sifra_Nac, N.ImeNac, O.Ime_Oper, SUM(PL.Iznos) 
  43854.             From KPlkProm PL
  43855.             Inner Join KPromet P On P.Sifra_Oe=PL.Sifra_Oe And P.Grp_Kasa=PL.Grp_Kasa And P.BrKasa=PL.BrKasa And P.Broj_Ska=PL.Broj_Ska
  43856.             Inner Join NacPlak N On N.Sifra_Nac=PL.Sifra_Nac
  43857.             Left Outer Join Operatori O On O.Sifra_Oper=P.Sifra_Oper
  43858.             Where 1=1 '
  43859.     If @Sifra_Oe Is Not Null
  43860.         Set @SSQL=@SSQL + ' And PL.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' '
  43861.     If @Datum_Od Is Not Null
  43862.         Set @SSQL=@SSQL + ' And P.Datum_Evid >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  43863.     If @Datum_Do Is Not Null
  43864.         Set @SSQL=@SSQL + ' And P.Datum_Evid <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  43865.     If @Sifra_Oper Is Not Null
  43866.         Set @SSQL=@SSQL + ' And P.Sifra_Oper = ''' + @Sifra_Oper + ''' '
  43867.     Set @SSQL=@SSQL + ' GROUP BY PL.Sifra_OE, PL.Sifra_Nac, N.ImeNac, O.Ime_Oper'
  43868.     Insert Into #Promet Exec(@SSQL)
  43869.  
  43870. --print '1'
  43871.  
  43872.     if @TwistOrg is not null and @TwistDok is not null
  43873.     begin
  43874.         Set @SSQL = ' Select  S.Sifra_OE, 6, ''Gotovina'', ''1'', SUM(round((S.Kolic * S.MagCena), 0)) 
  43875.                 From Stavr S
  43876.                 Where 1=1 '
  43877.         If @TwistOrg Is Not Null
  43878.             Set @SSQL=@SSQL + ' And S.Sifra_Oe = ' + Cast(@TwistOrg as varchar(5)) + ' '
  43879.         If @TwistDok Is Not Null
  43880.             Set @SSQL=@SSQL + ' And S.Sifra_Dok = ' + Cast(@TwistDok as varchar(5)) + ' '
  43881.         If @Datum_Od Is Not Null
  43882.             Set @SSQL=@SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  43883.         If @Datum_Do Is Not Null
  43884.             Set @SSQL=@SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  43885.         Set @SSQL=@SSQL + ' GROUP BY S.Sifra_OE'
  43886.         Insert Into #Promet Exec(@SSQL)
  43887.     end
  43888. --print '2'
  43889.  
  43890.     Select Sifra_OE, Sifra_Nac, ImeNac, ImeOper, SUM(Iznos) Iznos From #Promet P GROUP BY Sifra_OE, Sifra_Nac, ImeNac, ImeOper
  43891.      
  43892.  
  43893.  
  43894. Go
  43895. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dnevenizvzadistr]'))
  43896. drop procedure [dbo].[sp_dnevenizvzadistr]
  43897.  
  43898. Go
  43899.  
  43900.  
  43901.  
  43902.  
  43903.  
  43904.  
  43905. CREATE       PROCEDURE sp_DnevenIzvZaDistr
  43906.     @Sifra_Oe        smallint,
  43907.     @Datum_DokOd    smalldatetime,
  43908.     @Datum_DokDo    smalldatetime,
  43909.     @Sifra_ArtOd        varchar(20),
  43910.     @Sifra_ArtDo        varchar(20),
  43911.     @Podred        char(1) = 'S',    -- S - Sifra,     A - Ime
  43912.     @GotovinaPoPresm    char(1) = 'N',-- D - Da se prikazuva gotovinskiot promet po presmetka    N - od dokumenti
  43913.     @Sifra_Prev char(6)= null,
  43914.    @KPod6        smallint = Null,
  43915.     @KPod7        smallint = Null    
  43916. AS
  43917.     Declare @SSQL as varchar(4000)
  43918.     Declare @SSQLUsl as varchar(4000)
  43919.     Set @SSQLUsl = ' '
  43920.     Create Table #Rez
  43921.     (
  43922.      Sifra_Art     varchar(20),
  43923.      Vlez        decimal(18,6),
  43924.      Izlez        decimal(18,6),
  43925.      IzlezGot    decimal(18,6),
  43926.      VredIzlezGot    decimal(18,6),
  43927.      VratIspr        decimal(18,6),
  43928.      VratNeIspr    decimal(18,6),
  43929.      Cena        decimal(18,6)
  43930.     )
  43931. -- I (prvo) - da gi najdeme site vlezovi
  43932.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  43933.             From Dokr D
  43934.             Inner Join Stavr S On S.DokrID=D.DokrID
  43935.             Where D.ImaDodatna = ''P'' 
  43936.             and D.Sifra_Prim In (1, 101)
  43937.             and D.VlIzl = ''V''
  43938.             and S.Kolic > 0 '
  43939.     If @Datum_DokOd Is Not Null 
  43940.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok >= ''' + Cast(@Datum_DokOd as varchar(30)) + ''' '
  43941.     If @Datum_DokDo Is Not Null 
  43942.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok <= ''' + Cast(@Datum_DokDo as varchar(30)) + ''' '
  43943.     If @Sifra_Oe Is Not Null 
  43944.         Set @SSQLUsl = @SSQLUsl + ' and D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  43945.     If @Sifra_ArtOd Is Not Null 
  43946.         Set @SSQLUsl = @SSQLUsl + ' and S.Sifra_Art >= ''' + @Sifra_ArtOd + ''' '
  43947.     If @Sifra_ArtDo Is Not Null 
  43948.         Set @SSQLUsl = @SSQLUsl + ' and S.Sifra_Art <= ''' + @Sifra_ArtDo + ''' '
  43949.     If @Sifra_Prev Is Not Null 
  43950.         Set @SSQLUsl = @SSQLUsl + ' and D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  43951.     Insert Into #Rez(Sifra_Art, Vlez) Exec(@SSQL + @SSQLUsl + ' Group By S.Sifra_Art ')
  43952. -- II - da gi najdeme izlezite - faktura
  43953.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic), Round((Case When S.DanDokCena=''N'' Then (S.DokCena * (1+S.Posn/100)) Else S.DokCena End) * (1-S.Uces/100) * (1-D.Kasa/100), 4)
  43954.             From Dokr D
  43955.             Inner Join Stavr S On S.DokrID=D.DokrID
  43956.             Where D.VlIzl=''I'' and D.Sifra_Dok NOT IN (82,84,6,106)'
  43957.     Insert Into #Rez(Sifra_Art, Izlez, Cena) Exec(@SSQL + @SSQLUsl + ' Group By S.Sifra_Art, S.DanDokCena, S.DokCena, S.Posn, S.Uces, D.Kasa') 
  43958. -- II - da gi najdeme site ostanati izlezi (gotovinski)
  43959.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic), Sum(S.Kolic*dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa))
  43960.             From Dokr D
  43961.             Inner Join Stavr S On S.DokrID=D.DokrID
  43962.             Where D.VlIzl=''I'' and D.Sifra_Dok IN (82,84,6,106)'
  43963.     Insert Into #Rez(Sifra_Art, IzlezGot, VredIzlezGot) Exec(@SSQL+@SSQLUsl+' Group By S.Sifra_Art' )
  43964. -- III - da gi najdeme vratenite artikli koi se ispravni
  43965.     Set @SSQL = ' Select S.Sifra_Art, Sum(Abs(S.Kolic)), Round((Case When S.DanDokCena=''N'' Then (S.DokCena * (1+S.Posn/100)) Else S.DokCena End) * (1-S.Uces/100) * (1-D.Kasa/100), 4)
  43966.             From Dokr D
  43967.             Inner Join Stavr S On S.DokrID=D.DokrID
  43968.             Where D.ImaDodatna = ''P'' 
  43969.             and D.Sifra_Prim In (1, 101)
  43970.             and S.Kolic < 0 '
  43971.     Insert Into #Rez(Sifra_Art, VratIspr, Cena) Exec(@SSQL+@SSQLUsl+' Group By S.Sifra_Art, S.DanDokCena, S.DokCena, S.Posn, S.Uces, D.Kasa') 
  43972. -- IV - da gi najdeme vratenite artikli koi se ne ispravni
  43973.     Set @SSQL = ' Select S.Sifra_Art, Sum(Abs(S.Kolic)), Round((Case When S.DanDokCena=''N'' Then (S.DokCena * (1+S.Posn/100)) Else S.DokCena End) * (1-S.Uces/100) * (1-D.Kasa/100), 4)
  43974.             From Dokr D
  43975.             Inner Join Stavr S On S.DokrID=D.DokrID
  43976.             Where D.ImaDodatna = ''P'' 
  43977.             and D.Sifra_Prim Not In (1, 101)
  43978.             and S.Kolic < 0 '
  43979.     Insert Into #Rez(Sifra_Art, VratNeIspr, Cena) Exec(@SSQL+@SSQLUsl+' Group By S.Sifra_Art, S.DanDokCena, S.DokCena, S.Posn, S.Uces, D.Kasa') 
  43980.     If @GotovinaPoPresm = 'D'
  43981.     Begin
  43982.         Update #Rez Set Vlez=0 Where Vlez Is Null
  43983.         Update #Rez Set Izlez=0 Where Izlez Is Null
  43984.         Update #Rez Set VratIspr=0 Where VratIspr Is Null
  43985.         Update #Rez Set VratNeIspr=0 Where VratNeIspr Is Null
  43986.     End
  43987.  
  43988.     Create Table #Ceni
  43989.     (
  43990.         Sifra_Art     varchar(20),
  43991.         Izlez        decimal(18,4),
  43992.         VrednIzlez    decimal(18,4),
  43993.         Cena        decimal(18,4)
  43994.     )
  43995.     If @GotovinaPoPresm <> 'D'
  43996.     Begin
  43997.         Insert Into #Ceni 
  43998.         Select Sifra_Art, Sum(Izlez), Sum(Izlez*Cena), 0
  43999.         From #Rez
  44000.         Group By Sifra_Art
  44001.     
  44002.         Update #Ceni Set Cena = VrednIzlez/Izlez Where Izlez <> 0
  44003.     End
  44004.  
  44005.     Set @SSQL = ' Select R.Sifra_Art, K.ImeArt, K.ImaKomerc, 
  44006.             (Case When C.Cena > 0 Then C.Cena Else K.DogCena End) DogCena, 
  44007.             Sum(R.Vlez) Vlez, Sum(R.Izlez) Izlez, '
  44008.     If @GotovinaPoPresm = 'D'
  44009.         Set @SSQL = @SSQL + ' Sum(R.Vlez-R.Izlez-R.VratIspr-R.VratNeIspr) as IzlezGot, Null as VredIzlezGot, '
  44010.     Else 
  44011.         Set @SSQL = @SSQL + ' Sum(R.IzlezGot) IzlezGot, Sum(VredIzlezGot) VredIzlezGot, '
  44012.     Set @SSQL = @SSQL + ' Sum(R.VratIspr) VratIspr, Sum(R.VratNeIspr) VratNeIspr 
  44013.             From #Rez R
  44014.             Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  44015.             Left Outer Join #Ceni C ON C.Sifra_Art = K.Sifra_Art
  44016.             Group By R.Sifra_Art, K.ImeArt, K.ImaKomerc, (Case When C.Cena > 0 Then C.Cena Else K.DogCena End) '
  44017.     If @Podred = 'S'
  44018.         Set @SSQL = @SSQL + ' Order By R.Sifra_Art '
  44019.     Else If @Podred = 'A'
  44020.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  44021.     Exec (@SSQL)
  44022.  
  44023.  
  44024.  
  44025.  
  44026.  
  44027. Go
  44028. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dnevenizvzadistrambalaza]'))
  44029. drop procedure [dbo].[sp_dnevenizvzadistrambalaza]
  44030.  
  44031. Go
  44032.  
  44033.  
  44034. CREATE   PROCEDURE sp_DnevenIzvZaDistrAmbalaza
  44035.     @Sifra_Oe        smallint,
  44036.     @Datum_DokOd    smalldatetime,
  44037.     @Datum_DokDo    smalldatetime,
  44038.     @Sifra_AmbOd        varchar(20),
  44039.     @Sifra_AmbDo        varchar(20),
  44040.     @Podred        char(1) = 'S',
  44041.     @Sifra_Prev         char(6) = null    -- S - Sifra,     A - Ime
  44042. AS
  44043.     Declare @SSQL as varchar(4000)
  44044.     Declare @SSQLUsl as varchar(4000)
  44045.     Set @SSQLUsl = ' ' 
  44046.  
  44047.     Create Table #Rez
  44048.     (
  44049.      Sifra_Amb     varchar(20),
  44050.      ProdPolna    decimal(18,6),    --4
  44051.      VratPolna    decimal(18,6),    --3
  44052.      VratPrazOdKup    decimal(18,6),    --5
  44053.      VratPrazVoMag    decimal(18,6),    --6
  44054.      TovarPolnaMag    decimal(18,6),    --1
  44055.      VratPolnaMag    decimal(18,6),    --2
  44056.     )
  44057.  
  44058. -- I (prvo) - da ja najdeme dadenata ambalaza so prodazbata
  44059.     Set @SSQL = ' Select A.Sifra_Amb, Sum(S.Kolic/A.SodrziArt)
  44060.             From Dokr D
  44061.             Inner Join Stavr S On S.DokrID=D.DokrID
  44062.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  44063.             Inner Join KatAmb A On A.Sifra_Amb = K.Sifra_Amb
  44064.             Where D.Sifra_Za = ''1'' 
  44065.             and S.Kolic > 0  And A.Povratna = ''D'' '
  44066.     If @Datum_DokOd Is Not Null 
  44067.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok >= ''' + Cast(@Datum_DokOd as varchar(30)) + ''' '
  44068.     If @Datum_DokDo Is Not Null 
  44069.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok <= ''' + Cast(@Datum_DokDo as varchar(30)) + ''' '
  44070.     If @Sifra_Oe Is Not Null 
  44071.         Set @SSQLUsl = @SSQLUsl + ' and D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  44072.     If @Sifra_AmbOd Is Not Null 
  44073.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Amb >= ''' + @Sifra_AmbOd + ''' '
  44074.     If @Sifra_AmbDo Is Not Null 
  44075.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Amb <= ''' + @Sifra_AmbDo + ''' '
  44076.     If @Sifra_Prev Is Not Null 
  44077.         Set @SSQLUsl = @SSQLUsl + ' and D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  44078.     Set @SSQLUsl = @SSQLUsl + ' Group By A.Sifra_Amb '
  44079.     Insert Into #Rez(Sifra_Amb, ProdPolna) Exec(@SSQL+@SSQLUsl)
  44080. ----------------------------------------------------------------------------------------------------------------------
  44081. -- II - da najdeme vratenata ambalaza od komitentite so vrateni polni artikli
  44082.     Set @SSQL = ' Select A.Sifra_Amb, Abs(Sum(S.Kolic/A.SodrziArt))
  44083.             From Dokr D
  44084.             Inner Join Stavr S On S.DokrID=D.DokrID
  44085.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  44086.             Inner Join KatAmb A On A.Sifra_Amb = K.Sifra_Amb
  44087.             Where D.Sifra_Za = ''1'' 
  44088.             And S.Kolic < 0 And A.Povratna = ''D'' '
  44089.     Insert Into #Rez(Sifra_Amb, VratPolna) Exec(@SSQL+@SSQLUsl)
  44090. ----------------------------------------------------------------------------------------------------------------------
  44091. -- III - da najdeme tovarena polna ambalaza od magacin
  44092.     Set @SSQL = ' Select A.Sifra_Amb, Abs(Sum(S.Kolic/A.SodrziArt))
  44093.             From Dokr D
  44094.             Inner Join Stavr S On S.DokrID=D.DokrID
  44095.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  44096.             Inner Join KatAmb A On A.Sifra_Amb = K.Sifra_Amb
  44097.             Where D.Sifra_Za = ''3'' And D.VlIzl=''V'' 
  44098.             And S.Kolic > 0 And A.Povratna = ''D'' '
  44099.     Insert Into #Rez(Sifra_Amb, TovarPolnaMag) Exec(@SSQL+@SSQLUsl)
  44100. ----------------------------------------------------------------------------------------------------------------------
  44101. -- IV - da najdeme vratenata polna ambalaza vo magacin
  44102.     Set @SSQL = ' Select A.Sifra_Amb, Abs(Sum(S.Kolic/A.SodrziArt))
  44103.             From Dokr D
  44104.             Inner Join Stavr S On S.DokrID=D.DokrID
  44105.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  44106.             Inner Join KatAmb A On A.Sifra_Amb = K.Sifra_Amb
  44107.             Where D.Sifra_Za = ''3'' And D.VlIzl=''V'' 
  44108.             And S.Kolic < 0 And A.Povratna = ''D'' '
  44109.     Insert Into #Rez(Sifra_Amb, VratPolnaMag) Exec(@SSQL+@SSQLUsl)
  44110. ----------------------------------------------------------------------------------------------------------------------
  44111.  
  44112. Set @SSQLUsl = ' '
  44113. -- V - da ja najdeme vratenata prazna ambalaza od komintentite
  44114.     Set @SSQL = ' Select S.Sifra_Amb, Sum(-1*S.Kolic) 
  44115.             From Dokr D
  44116.             Inner Join StaAmbal S On S.DokrID=D.DokrID
  44117.             Where D.Sifra_Za = ''1'' '
  44118.     If @Datum_DokOd Is Not Null 
  44119.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok >= ''' + Cast(@Datum_DokOd as varchar(30)) + ''' '
  44120.     If @Datum_DokDo Is Not Null 
  44121.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok <= ''' + Cast(@Datum_DokDo as varchar(30)) + ''' '
  44122.     If @Sifra_Oe Is Not Null 
  44123.         Set @SSQLUsl = @SSQLUsl + ' and D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  44124.     If @Sifra_AmbOd Is Not Null 
  44125.         Set @SSQLUsl = @SSQLUsl + ' and S.Sifra_Amb >= ''' + @Sifra_AmbOd + ''' '
  44126.     If @Sifra_AmbDo Is Not Null 
  44127.         Set @SSQLUsl = @SSQLUsl + ' and S.Sifra_Amb <= ''' + @Sifra_AmbDo + ''' '
  44128.     If @Sifra_Prev Is Not Null 
  44129.         Set @SSQLUsl = @SSQLUsl + ' and D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  44130.     Set @SSQLUsl = @SSQLUsl + ' Group By S.Sifra_Amb '
  44131.     Insert Into #Rez(Sifra_Amb, VratPrazOdKup) Exec(@SSQL+@SSQLUsl)
  44132. -- VI - da ja najdeme vratenata prazna ambalaza vo magacin
  44133.     Set @SSQL = ' Select S.Sifra_Amb, Sum(-1*S.Kolic) 
  44134.             From Dokr D
  44135.             Inner Join StaAmbal S On S.DokrID=D.DokrID
  44136.             Where D.ImaDodatna = ''P'' '
  44137.     Insert Into #Rez(Sifra_Amb, VratPrazVoMag) Exec(@SSQL+@SSQLUsl)
  44138.  
  44139. -- VII - Na kraj Rezultatot
  44140.     Set @SSQL = ' Select R.Sifra_Amb, A.ImeAmb, A.SodrziArt, A.VoGAmb,
  44141.             Sum(R.ProdPolna) ProdPolna, 
  44142.             Sum(R.VratPolna) VratPolna, 
  44143.             Sum(R.VratPrazOdKup) VratPrazOdKup, 
  44144.             Sum(R.VratPrazVoMag) VratPrazVoMag,
  44145.             Sum(R.TovarPolnaMag) TovarPolnaMag,
  44146.             Sum(R.VratPolnaMag) VratPolnaMag
  44147.             From #Rez R
  44148.             Inner Join KatAmb A On A.Sifra_Amb = R.Sifra_Amb
  44149.             Group By R.Sifra_Amb, A.ImeAmb, A.SodrziArt, A.VoGAmb '
  44150.     If @Podred = 'S'
  44151.         Set @SSQL = @SSQL + ' Order By R.Sifra_Amb '
  44152.     Else If @Podred = 'A'
  44153.         Set @SSQL = @SSQL + ' Order By A.ImeAmb '
  44154.     Exec (@SSQL)
  44155. Go
  44156. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dnevenpromet]'))
  44157. drop procedure [dbo].[sp_dnevenpromet]
  44158.  
  44159. Go
  44160.  
  44161. CREATE        PROCEDURE sp_DnevenPromet
  44162.     @Datum_Dok_Od    smalldatetime,
  44163.     @Datum_Dok_Do    smalldatetime,
  44164.     @PoKojDatum    char(1)                --  'D' - Datum_Dok,     'V' - Datum_Vnes
  44165. As
  44166.     Declare @SSQL as varchar(2000)
  44167.     Declare @DatumOd As Varchar(12)
  44168.     Declare @DatumDo As Varchar(12)
  44169.     Set @DatumOd = @Datum_Dok_Od
  44170.     Set @DatumDo = @Datum_Dok_Do
  44171.     Create Table #Tab
  44172.     (
  44173.      Sifra    varchar(5),
  44174.      Opis    varchar(70),
  44175.      Iznos    decimal(18,6)
  44176.     )
  44177.     Insert Into #Tab(Sifra,Opis) select 'Datum', 'Od ' + cast(day(@DatumOd) as char(2))+'.' +cast(Month(@DatumOd) as char(2))+'.'+cast(year(@DatumOd) as char(4)) +
  44178.                               '    Do ' + cast(day(@DatumDo) as char(2))+'.' +cast(Month(@DatumDo) as char(2))+'.'+cast(year(@DatumDo) as char(4)) 
  44179.     Insert Into #Tab(Sifra, Opis) Select 1, 'Proda`ba:'
  44180.     Set @SSQL = ' Select 101, ''Mleko i mle~ni proizvodi i konditorija '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44181.             From Stavr S
  44182.             Inner Join Dokr D On D.DokrId = S.DokrId
  44183.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  44184.             Where S.Sifra_Oe In (3, 6) and S.Sifra_Dok in (1,3,6,11,13,16,81,83) And K.Sifra_Podg Not Like ''11%'' '
  44185.         If @PoKojDatum = 'D'
  44186.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44187.         Else 
  44188.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44189.     Insert Into #Tab Exec(@SSQL)
  44190.     Set @SSQL = ' Select 102, ''Meso zamrznato '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44191.             From Stavr S
  44192.             Inner Join Dokr D On D.DokrId = S.DokrId
  44193.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44194.             Where (K.Sifra_Podg like ''100%'' or K.Sifra_Podg like ''102%'' or K.Sifra_Podg like ''104%'' or K.Sifra_Podg like ''106%'' or K.Sifra_Podg like ''109%'')
  44195.             and S.Sifra_Dok in (1,3,6,11,13,16,81,83) 
  44196.             and S.Sifra_Oe <> 901' 
  44197.         If @PoKojDatum = 'D'
  44198.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44199.         Else 
  44200.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44201.     Insert Into #Tab Exec(@SSQL)
  44202.     Set @SSQL = ' Select 103, ''Meso sve`o '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44203.             From Stavr S
  44204.             Inner Join Dokr D On D.DokrId = S.DokrId
  44205.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44206.             Where (K.Sifra_Podg like ''101%'' or K.Sifra_Podg like ''103%'' or K.Sifra_Podg like ''105%'') 
  44207.             and S.Sifra_Dok in (1,3,6,11,13,16,81,83) 
  44208.             and S.Sifra_Oe <> 901'
  44209.         If @PoKojDatum = 'D'
  44210.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44211.         Else 
  44212.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44213.     Insert Into #Tab Exec(@SSQL)
  44214.     Set @SSQL = ' Select 104, ''Riba '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44215.             From Stavr S
  44216.             Inner Join Dokr D On D.DokrId = S.DokrId
  44217.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44218.             Where (K.Sifra_Podg like ''13%'') 
  44219.             and S.Sifra_Dok in (1,3,6,11,13,16,81,83,85,86) 
  44220.             and S.Sifra_Oe <> 901'
  44221.         If @PoKojDatum = 'D'
  44222.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44223.         Else 
  44224.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44225.     Insert Into #Tab Exec(@SSQL)
  44226.     Set @SSQL = ' Select 105, ''Suvomesnati proizvodi '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44227.             From Stavr S
  44228.             Inner Join Dokr D On D.DokrId = S.DokrId
  44229.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44230.             Where (K.Sifra_Podg like ''11%'') 
  44231.             and S.Sifra_Dok in (1,3,6,11,13,16,81,83,85,86) 
  44232.             and S.Sifra_Oe <> 901'
  44233.         If @PoKojDatum = 'D'
  44234.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44235.         Else 
  44236.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44237.     Insert Into #Tab Exec(@SSQL)
  44238.     Set @SSQL = ' Select 106, ''Zamrznat zelen~uk i sladoled '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44239.             From Stavr S
  44240.             Inner Join Dokr D On D.DokrId = S.DokrId
  44241.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44242.             Where (K.Sifra_Podg like ''421%'' or K.Sifra_Podg like ''522%'' or K.Sifra_Podg like ''40%'' or K.Sifra_Podg like ''411%'') 
  44243.             And S.Sifra_Dok in (1,3,6,11,13,16,81,83,85,86)
  44244.             And S.Sifra_Oe <> 901 '
  44245.         If @PoKojDatum = 'D'
  44246.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44247.         Else 
  44248.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44249.     Insert Into #Tab Exec(@SSQL)
  44250.     Set @SSQL = ' Select 107, ''Diskont - Prodavnica '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44251.             From Stavr S
  44252.             Inner Join Dokr D On D.DokrId = S.DokrId
  44253.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44254.             Where S.Sifra_Dok in (100,101)
  44255.             And S.Sifra_Oe = 107 '
  44256.         If @PoKojDatum = 'D'
  44257.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44258.         Else 
  44259.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44260.     Insert Into #Tab Exec(@SSQL)
  44261.     Set @SSQL = ' Select 111, ''Diskont - Mleko i mle~ni proizvodi i konditorija  '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44262.             From Stavr S
  44263.             Inner Join Dokr D On D.DokrId = S.DokrId
  44264.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  44265.             Where S.Sifra_Oe In (3, 6) and S.Sifra_Dok in (71,73) And K.Sifra_Podg Not Like ''11%'' 
  44266.             and S.Sifra_Oe <> 901'
  44267.         If @PoKojDatum = 'D'
  44268.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44269.         Else 
  44270.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44271.     Insert Into #Tab Exec(@SSQL)
  44272.     Set @SSQL = ' Select 112, ''Diskont - Meso zamrznato '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44273.             From Stavr S
  44274.             Inner Join Dokr D On D.DokrId = S.DokrId
  44275.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44276.             Where (K.Sifra_Podg like ''100%'' or K.Sifra_Podg like ''102%'' or K.Sifra_Podg like ''104%'' or K.Sifra_Podg like ''106%'' or K.Sifra_Podg like ''109%'')
  44277.             and S.Sifra_Dok in (71,73,82,84) 
  44278.             and S.Sifra_Oe <> 901'
  44279.         If @PoKojDatum = 'D'
  44280.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44281.         Else 
  44282.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44283.     Insert Into #Tab Exec(@SSQL)
  44284.     Set @SSQL = ' Select 113, ''Diskont - Meso sve`o '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44285.             From Stavr S
  44286.             Inner Join Dokr D On D.DokrId = S.DokrId
  44287.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44288.             Where (K.Sifra_Podg like ''101%'' or K.Sifra_Podg like ''103%'' or K.Sifra_Podg like ''105%'')
  44289.             and S.Sifra_Dok in (71,73,82,84) 
  44290.             and S.Sifra_Oe <> 901'
  44291.         If @PoKojDatum = 'D'
  44292.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44293.         Else 
  44294.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44295.     Insert Into #Tab Exec(@SSQL)
  44296.     Set @SSQL = ' Select 114, ''Diskont - Riba '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44297.             From Stavr S
  44298.             Inner Join Dokr D On D.DokrId = S.DokrId
  44299.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44300.             Where (K.Sifra_Podg like ''13%'')
  44301.             and S.Sifra_Dok in (71,73,82,84) 
  44302.             and S.Sifra_Oe <> 901'
  44303.         If @PoKojDatum = 'D'
  44304.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44305.         Else 
  44306.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44307.     Insert Into #Tab Exec(@SSQL)
  44308.     Set @SSQL = ' Select 115, ''Diskont - Suvomesnati proizvodi '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44309.             From Stavr S
  44310.             Inner Join Dokr D On D.DokrId = S.DokrId
  44311.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44312.             Where (K.Sifra_Podg like ''11%'')
  44313.             and S.Sifra_Dok in (71,73,82,84) 
  44314.             and S.Sifra_Oe <> 901'
  44315.         If @PoKojDatum = 'D'
  44316.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44317.         Else 
  44318.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44319.     Insert Into #Tab Exec(@SSQL)
  44320.     Set @SSQL = ' Select 116, ''Diskont - Zamrznat zelen~uk i sladoled '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)),4)
  44321.             From Stavr S
  44322.             Inner Join Dokr D On D.DokrId = S.DokrId
  44323.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44324.             Where (K.Sifra_Podg like ''421%'' or K.Sifra_Podg like ''522%'' or K.Sifra_Podg like ''40%'' or K.Sifra_Podg like ''411%'') 
  44325.             and S.Sifra_Dok in (71,73,82,84) 
  44326.             and S.Sifra_Oe <> 901'
  44327.         If @PoKojDatum = 'D'
  44328.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44329.         Else 
  44330.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44331.     Insert Into #Tab Exec(@SSQL)
  44332.     Set @SSQL = ' Select ''119'', ''Vkupno proda`ba '', Round(sum(Iznos),4)
  44333.             From #Tab 
  44334.             Where Sifra Like ''1%'' '
  44335.     Insert Into #Tab Exec(@SSQL)
  44336. -----------------------------------------------------------------------------------------N A B A V K A --------------------------------------------------------------------------------------------------------
  44337.     Insert Into #Tab(Sifra, Opis) Select 2, 'Nabavka:'
  44338.     Set @SSQL = ' Select 201, ''Mleko i mle~ni proizvodi i konditorija '', Round(sum(dbo.fn_Vr_Osnov(S.Kolic,S.MagCena, S.DanMagCena, S.Posn)),4)
  44339.             From Stavr S
  44340.             Inner Join Dokr D On D.DokrId = S.DokrId
  44341.             Where S.Sifra_Oe = 6 and S.Sifra_Dok in (132,2,22,23,102) '
  44342.         If @PoKojDatum = 'D'
  44343.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44344.         Else 
  44345.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44346.     Insert Into #Tab Exec(@SSQL)
  44347.     Set @SSQL = ' Select 202, ''Meso zamrznato '', Round(sum(dbo.fn_Vr_Osnov(S.Kolic,S.MagCena, S.DanMagCena, S.Posn)),4)
  44348.             From Stavr S
  44349.             Inner Join Dokr D On D.DokrId = S.DokrId
  44350.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44351.             Where (K.Sifra_Podg like ''100%'' or K.Sifra_Podg like ''102%'' or K.Sifra_Podg like ''104%'' or K.Sifra_Podg like ''106%'' or K.Sifra_Podg like ''109%'')
  44352.             and S.Sifra_Dok in (132,2,22,23,102) 
  44353.             and S.Sifra_Oe <> 901'        If @PoKojDatum = 'D'
  44354.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44355.         Else 
  44356.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44357.     Insert Into #Tab Exec(@SSQL)
  44358.     Set @SSQL = ' Select 203, ''Meso sve`o '', Round(sum(dbo.fn_Vr_Osnov(S.Kolic,S.MagCena, S.DanMagCena, S.Posn)),4)
  44359.             From Stavr S
  44360.             Inner Join Dokr D On D.DokrId = S.DokrId
  44361.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44362.             Where (K.Sifra_Podg like ''101%'' or K.Sifra_Podg like ''103%'' or K.Sifra_Podg like ''105%'')
  44363.             and S.Sifra_Dok in (132,2,22,23,102) 
  44364.             and S.Sifra_Oe <> 901'        If @PoKojDatum = 'D'
  44365.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44366.         Else 
  44367.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44368.     Insert Into #Tab Exec(@SSQL)
  44369.     Set @SSQL = ' Select 204, ''Riba '', Round(sum(dbo.fn_Vr_Osnov(S.Kolic,S.MagCena, S.DanMagCena, S.Posn)),4)
  44370.             From Stavr S
  44371.             Inner Join Dokr D On D.DokrId = S.DokrId
  44372.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44373.             Where (K.Sifra_Podg like ''13%'')
  44374.             and S.Sifra_Dok in (132,2,22,23,102) 
  44375.             and S.Sifra_Oe <> 901'        If @PoKojDatum = 'D'
  44376.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44377.         Else 
  44378.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44379.     Insert Into #Tab Exec(@SSQL)
  44380.     Set @SSQL = ' Select 205, ''Suvomesnati proizvodi '', Round(sum(dbo.fn_Vr_Osnov(S.Kolic,S.MagCena, S.DanMagCena, S.Posn)),4)
  44381.             From Stavr S
  44382.             Inner Join Dokr D On D.DokrId = S.DokrId
  44383.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44384.             Where (K.Sifra_Podg like ''11%'')
  44385.             and S.Sifra_Dok in (132,2,22,23,102) 
  44386.             and S.Sifra_Oe <> 901'        If @PoKojDatum = 'D'
  44387.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44388.         Else 
  44389.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44390.     Insert Into #Tab Exec(@SSQL)
  44391.     Set @SSQL = ' Select 206, ''Zamrznat zelen~uk i sladoled'', sum(dbo.fn_Vr_Osnov(S.Kolic,S.MagCena, S.DanMagCena, S.Posn))
  44392.             From Stavr S
  44393.             Inner Join Dokr D On D.DokrId = S.DokrId
  44394.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44395.             Where (K.Sifra_Podg like ''421%'' or K.Sifra_Podg like ''522%'' or K.Sifra_Podg like ''40%'' or K.Sifra_Podg like ''411%'') 
  44396.             and S.Sifra_Dok in (132,2,22,23,102) 
  44397.             and S.Sifra_Oe <> 901'
  44398.         If @PoKojDatum = 'D'
  44399.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44400.         Else 
  44401.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44402.     Insert Into #Tab Exec(@SSQL)
  44403.     Set @SSQL = ' Select 207, ''Od proizvodstvo'', Round(sum(dbo.fn_Vr_Osnov(S.Kolic,S.MagCena, S.DanMagCena, S.Posn)),4)
  44404.             From Stavr S
  44405.             Inner Join Dokr D On D.DokrId = S.DokrId
  44406.             Where S.Sifra_Oe = 3 and S.Sifra_Dok in (42,43) '
  44407.         If @PoKojDatum = 'D'
  44408.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44409.         Else 
  44410.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44411.     Insert Into #Tab Exec(@SSQL)
  44412.     Set @SSQL = ' Select ''209'', ''Vkupno nabavka '', sum(Iznos)
  44413.             From #Tab 
  44414.             Where Sifra Like ''2%'' '
  44415.     Insert Into #Tab Exec(@SSQL)
  44416. -------------------------------------------------------------------------------------- R A Z L I K A    V O     C E N I ----------------------------------------------------------------------------------------------------------------
  44417.     Insert Into #Tab(Sifra, Opis) Select 3, 'Razlika vo cena:'
  44418.     Set @SSQL = ' Select 301, ''Mleko i mle~ni proizvodi i konditorija '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  44419.                                 -S.Kolic*S.NabCena),4)
  44420.             From Stavr S
  44421.             Inner Join Dokr D On D.DokrId = S.DokrId
  44422.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44423.             Where S.Sifra_Oe in (3, 6) 
  44424.             and S.VlIzl = ''I'' and D.Sifra_Za = 1
  44425.             and S.Sifra_Dok in (1,3,6,11,13,16,71,73,81,82,83,84,85,86) And K.Sifra_Podg Not Like ''11%'' '
  44426. --            and S.Sifra_Dok Not In (51,52) '
  44427.         If @PoKojDatum = 'D'
  44428.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44429.         Else 
  44430.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44431.     Insert Into #Tab Exec(@SSQL)
  44432.     Set @SSQL = ' Select 302, ''Meso zamrznato '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  44433.                                 -S.Kolic*S.NabCena),4)
  44434.             From Stavr S
  44435.             Inner Join Dokr D On D.DokrId = S.DokrId
  44436.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44437.             Where (K.Sifra_Podg like ''100%'' or K.Sifra_Podg like ''102%'' or K.Sifra_Podg like ''104%'' or K.Sifra_Podg like ''106%'' or K.Sifra_Podg like ''109%'')
  44438.             and S.VlIzl = ''I'' and D.Sifra_Za = 1
  44439.             and S.Sifra_Dok in (1,3,6,11,13,16,71,73,81,82,83,84,85,86) 
  44440.             and S.Sifra_Oe <> 901'
  44441. --            and S.Sifra_Dok Not In (51,52) '
  44442.         If @PoKojDatum = 'D'
  44443.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44444.         Else 
  44445.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44446.     Insert Into #Tab Exec(@SSQL)
  44447.     Set @SSQL = ' Select 303, ''Meso svezo '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  44448.                                 -S.Kolic*S.NabCena),4)
  44449.             From Stavr S
  44450.             Inner Join Dokr D On D.DokrId = S.DokrId
  44451.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44452.             Where (K.Sifra_Podg like ''101%'' or K.Sifra_Podg like ''103%'' or K.Sifra_Podg like ''105%'')
  44453.             and S.VlIzl = ''I'' and D.Sifra_Za = 1
  44454.             and S.Sifra_Dok in (1,3,6,11,13,16,71,73,81,82,83,84,85,86) 
  44455.             and S.Sifra_Oe <> 901'
  44456. --            and S.Sifra_Dok Not In (51,52) '
  44457.         If @PoKojDatum = 'D'
  44458.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44459.         Else 
  44460.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44461.     Insert Into #Tab Exec(@SSQL)
  44462.     Set @SSQL = ' Select 304, ''Riba '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  44463.                                 -S.Kolic*S.NabCena),4)
  44464.             From Stavr S
  44465.             Inner Join Dokr D On D.DokrId = S.DokrId
  44466.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44467.             Where (K.Sifra_Podg like ''13%'')
  44468.             and S.VlIzl = ''I'' and D.Sifra_Za = 1
  44469.             and S.Sifra_Dok in (1,3,6,11,13,16,71,73,81,82,83,84,85,86) 
  44470.             and S.Sifra_Oe <> 901'
  44471. --            and S.Sifra_Dok Not In (51,52) '
  44472.         If @PoKojDatum = 'D'
  44473.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44474.         Else 
  44475.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44476.     Insert Into #Tab Exec(@SSQL)
  44477.     Set @SSQL = ' Select 305, ''Suvomesnati proizvodi '', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  44478.                                 -S.Kolic*S.NabCena),4)
  44479.             From Stavr S
  44480.             Inner Join Dokr D On D.DokrId = S.DokrId
  44481.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44482.             Where (K.Sifra_Podg like ''11%'')
  44483.             and S.VlIzl = ''I'' and D.Sifra_Za = 1
  44484.             and S.Sifra_Dok in (1,3,6,11,13,16,71,73,81,82,83,84,85,86) 
  44485.             and S.Sifra_Oe <> 901'
  44486. --            and S.Sifra_Dok Not In (51,52) '
  44487.         If @PoKojDatum = 'D'
  44488.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44489.         Else 
  44490.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44491.     Insert Into #Tab Exec(@SSQL)
  44492.     Set @SSQL = ' Select 306, ''Zamrznat zelen~uk i sladoled'', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  44493.                                 - S.Kolic*S.NabCena),4)
  44494.             From Stavr S
  44495.             Inner Join Dokr D On D.DokrId = S.DokrId
  44496.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44497.             Where (K.Sifra_Podg like ''421%'' or K.Sifra_Podg like ''522%'' or K.Sifra_Podg like ''40%'' or K.Sifra_Podg like ''411%'') 
  44498.             and S.Sifra_Dok in (1,3,6,11,13,16,71,73,81,82,83,84,85,86) 
  44499.             and S.VlIzl = ''I'' and D.Sifra_Za = 1 
  44500.             and S.Sifra_Oe <> 901'
  44501. --            and S.Sifra_Dok Not In (51,52) '
  44502.         If @PoKojDatum = 'D'
  44503.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44504.         Else 
  44505.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44506.     Insert Into #Tab Exec(@SSQL)
  44507.     Set @SSQL = ' Select 307, ''Diskont - Prodavnica'', Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  44508.                                 - S.Kolic*S.NabCena),4)
  44509.             From Stavr S
  44510.             Inner Join Dokr D On D.DokrId = S.DokrId
  44511.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  44512.             Where S.Sifra_Dok in (100,101) 
  44513.             and S.Sifra_Oe = 107 '
  44514.         If @PoKojDatum = 'D'
  44515.             Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  44516.         Else 
  44517.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Vnes < ''' + cast(@Datum_Dok_Do + 1 as varchar(30)) + ''' '
  44518.     Insert Into #Tab Exec(@SSQL)
  44519.     Set @SSQL = ' Select ''309'', ''Vkupno ostvarena razlika vo cena '', Round(sum(Iznos),4)
  44520.             From #Tab 
  44521.             Where Sifra Like ''3%'' '
  44522.     Insert Into #Tab Exec(@SSQL)
  44523. --    Set @EUR = (Select top 1 KursPazaren from KrsVaznost Where Datum <= cast(@Datum_Dok as varchar(30)) and SImeVal = 003)
  44524. --    Set @USD = (Select top 1 KursPazaren from KrsVaznost Where Datum <= cast(@Datum_Dok as varchar(30)) and SImeVal = 002)
  44525. select * from #Tab
  44526.  
  44527. Go
  44528. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dob_toplista]'))
  44529. drop procedure [dbo].[sp_dob_toplista]
  44530.  
  44531. Go
  44532.  
  44533.  
  44534.  
  44535.  
  44536. CREATE             PROCEDURE sp_Dob_TopLista
  44537.     @Sifra_OE Smallint = Null, 
  44538.     @KoiOE Varchar(300) = Null,
  44539.     @Pod1 Smallint = Null,
  44540.     @Pod2 Smallint = Null,
  44541.     @Pod3 Smallint = Null,
  44542.     @Pod4 Smallint = Null,
  44543.     @Pod5 Smallint = Null,
  44544.     @Pod6 Smallint = Null,
  44545.     @Pod7 Smallint = Null,
  44546.     @KFPod1 char(1) = Null,
  44547.     @KFPod2 char(1) = Null,
  44548.     @KFPod3 char(1) = Null,
  44549.     @KFPod4 char(1) = Null,
  44550.     @KFPod5 char(1) = Null,
  44551.     @KFPod6 char(1) = Null,
  44552.     @KFPod7 char(1) = Null,
  44553.     @Sifra_Tip Smallint = Null,
  44554.     @Datum_Od Smalldatetime = Null,
  44555.     @Datum_Do Smalldatetime = Null,
  44556.     @Sifra_Art_Od Varchar(20) = Null,
  44557.     @Sifra_Art_Do Varchar(20) = Null,
  44558.     @Sifra_Brand Smallint = Null,
  44559.     @Sifra_ZBrand Smallint = Null,
  44560.     @Sifra_Kup_Od Char(6) = Null,
  44561.     @Sifra_Kup_Do Char(6) = Null,
  44562.     @Podred Char(1) = Null,
  44563.     @Kolku Int = Null,
  44564.     @Kto Char(6) = Null,
  44565.     @Sifra_Gr Char(3) = Null,
  44566.     @Sifra_Podg Char(6) = Null,
  44567.     @Lokacija Varchar(10) = Null,
  44568.     @TipKup VarChar(300) = Null,
  44569.     @Komint_KObj Char(1) = 'K',
  44570.     @RazbijSostav Char(1) = 'N',
  44571.     @Koi_Gradovi    varchar(200) = NULL,
  44572.     @Sifra_Pat    varchar(300) = Null,
  44573.     @TipDokNab    varchar(200) = Null,
  44574.     @Koi_Regioni    varchar(200) = Null,
  44575.     @ProcPoArtikli char(1) = 'N',
  44576.     @KomercKako    char(1) = 'I',               -- I -  Istoriski od Dokr,       T - Tekovno od Komint    
  44577.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  44578.     @Drugo1    smallint = Null,
  44579.     @Drugo2    smallint = Null,
  44580.     @Drugo3    smallint = Null,
  44581.     @Drugo4    smallint = Null,
  44582.     @Drugo5    smallint = Null,
  44583.     @Drugo6    smallint = Null,
  44584.     @Drugo7    smallint = Null,
  44585.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N      (Povrzano e so @Sifra_Podg)
  44586.     @Sifra_Nivo    char(2) = Null,
  44587.     @KojaCena    char(1) = Null,
  44588.     @ImeArtDel    varchar(20) = Null,
  44589.     @Sifra_Div    smallint = Null,
  44590.     @GrKup varchar(500)= null,
  44591.     @GrArt varchar(500)= null
  44592. AS
  44593.     If @PoKojDatum = 'V'
  44594.             If @Datum_Do Is Not Null
  44595.         Set @Datum_Do = @Datum_Do + 1
  44596.     Set Nocount On
  44597.     Declare @SSQL Varchar(8000)
  44598.     CREATE    Table #tSostav
  44599.     (    Sifra_Art Varchar(20),
  44600.         Sifra_Sur Varchar(20),
  44601.         Ima_Kolic Decimal(18,6),
  44602.         Cena Decimal(18,6),
  44603.         VkCena Decimal(18,6)
  44604.     )
  44605.     If @RazbijSostav = 'D'
  44606.         Begin
  44607.             Set @SSQL = 'Insert #tSostav
  44608.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  44609.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  44610.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  44611.             Exec(@SSQL)
  44612.         End
  44613.     Set @SSQL = 'Insert #tSostav
  44614.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  44615.         From Katart K '
  44616.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  44617.     If @RazbijSostav = 'D'
  44618.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  44619.     Exec(@SSQL)
  44620. --select * from #tsostav
  44621. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  44622. --------------------------------------------------------------
  44623.         Declare @VkArt  integer
  44624.         Set @VkArt = 0
  44625. --    If @ProcPoArtikli = 'D'
  44626. --        Set @VkArt = (Select Count(Distinct Sifra_art) from Stavr Where Datum_Dok>=@Datum_Od and Datum_Dok<@Datum_Do )
  44627.     If @ProcPoArtikli = 'D'
  44628.         Begin
  44629.             Create Table #Tab
  44630.             (Sifra_art varchar(20))
  44631.         Set @SSQL = ' Select Distinct Sifra_art From Stavr Where 1=1 '
  44632.             If @Datum_Od Is Not NULL
  44633.                 Set @SSQL = @SSQL + ' And Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  44634.             If @Datum_Do Is Not NULL
  44635.                 Set @SSQL = @SSQL + ' And Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  44636.         Insert Into #Tab Exec (@SSQL)
  44637.         Set @VkArt = (Select Count (Distinct Sifra_art) from #Tab)
  44638.         End
  44639.     If @Kolku Is Not NULL
  44640.         Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(6)) + ' '
  44641.     Else
  44642.         Set @SSQL = 'Select '
  44643.     Set @SSQL =    @SSQL + 'D.Sifra_Kup, '
  44644.     If @Komint_KObj = 'K'
  44645.         Set @SSQL = @SSQL + 'Null as Sifra_Obj, '
  44646.     Else If @Komint_KObj = 'O'
  44647.         Set @SSQL = @SSQL + 'D.Sifra_Obj, '
  44648.     Set @SSQL = @SSQL + 'KUP.ImeKup, KUP.ImeKup2,
  44649.         KUP.Adresa, KUP.Adresa2, KUP.SMesto, KUP.Posta, KUP.Zemja,
  44650.         Round(Sum(TS.Ima_Kolic*S.Kolic), 4) As Kolicina, 
  44651.         Round(Sum(TS.Ima_Kolic*S.Kolic*K.KolkuDrg), 4) As BrendKolicina, 
  44652.         Round(Sum(TS.Ima_Kolic*S.Kolic*K.Tezina/1000),4) As Tezina,
  44653.         Round(Sum(TS.Ima_Kolic*S.Kolic*K.Tezina/100000), 4) As Hektolitri,
  44654.         Count(S.Sifra_Art) As Izlezi,
  44655.         Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as DVr_Osnov, 
  44656.         Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_SoRabat,
  44657.         Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_Krajna,
  44658.         Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn)), 4) as MVr_Osnov, 
  44659.         Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0,0)), 4) as MVr_SoRabat,
  44660.         Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0, 0)), 4) as MVr_Krajna,
  44661.         Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) Vk_NPS, Count(Distinct S.DokrID) As Fakturi,
  44662.         Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV, '
  44663.     If @ProcPoArtikli = 'D'
  44664.         Set @SSQL=@SSQL + ' (Count(Distinct S.Sifra_art)/ ' + cast(@VkArt as Varchar(10)) + ')*100 as ProcentPoArt '
  44665.     Else
  44666.         Set @SSQL=@SSQL + ' 0 as ProcentPoArt '
  44667.     Set @SSQL=@SSQL+ '     From #tSostav TS
  44668.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  44669.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  44670.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=2 
  44671.         Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  44672.         Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  44673.     If @Sifra_Gr Is Not Null
  44674.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  44675.     If @Sifra_ZBrand Is Not Null
  44676.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  44677.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  44678.     If @Sifra_Brand Is Not Null
  44679.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_BRand As Varchar(6)) + ' '
  44680.     If @Sifra_ZBrand Is Not Null
  44681.         Set @SSQL = @SSQL + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  44682.     If @Lokacija Is Not NULL
  44683.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  44684.     If @Koi_Gradovi Is Not NULL    
  44685.         Begin
  44686.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  44687.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  44688.         End
  44689.     If @Koi_Regioni Is Not NULL    
  44690.         Begin
  44691.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  44692.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  44693.         End
  44694.     If @Kto Is Not NULL
  44695.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  44696.     If @Sifra_Podg Is Not Null
  44697.         If @PocnuvaSo ='D'
  44698.             Set @SSQL=@SSQL+'AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  44699.         Else
  44700.             Set @SSQL=@SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  44701.     If @Sifra_Gr Is Not NULL
  44702.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  44703.     If @PoKojDatum = 'V'
  44704.           Begin
  44705.         If @Datum_Od Is Not NULL
  44706.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  44707.         If @Datum_Do Is Not NULL
  44708.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  44709.           End
  44710.     Else 
  44711.           Begin
  44712.         If @Datum_Od Is Not NULL
  44713.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  44714.         If @Datum_Do Is Not NULL
  44715.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  44716.            End
  44717.     If @Sifra_Kup_Od Is Not NULL
  44718.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  44719.     If @Sifra_Kup_Do Is Not NULL
  44720.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  44721.        If @GrKup Is Not Null
  44722.         Set @SSQL = @SSQL + ' And D.Sifra_Kup In (Select Distinct Sifra_Kup From SGrKup Where Sif_GrKup In ( ' + @GrKup + ' )) '
  44723.     If @Pod1 Is Not NULL
  44724.         If @KFPod1 = 'D'
  44725.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  44726.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  44727.         Else
  44728.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  44729.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  44730.     If @Pod2 Is Not NULL
  44731.         If @KFPod2 = 'D'
  44732.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  44733.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  44734.         Else
  44735.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  44736.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  44737.     If @Pod3 Is Not NULL
  44738.         If @KFPod3 = 'D'
  44739.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  44740.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  44741.         Else
  44742.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  44743.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  44744.     If @Pod4 Is Not NULL
  44745.         If @KFPod4 = 'D'
  44746.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  44747.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  44748.         Else
  44749.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  44750.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  44751.     If @Pod5 Is Not NULL
  44752.         If @KFPod5 = 'D'
  44753.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  44754.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  44755.         Else
  44756.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  44757.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  44758.     If @Pod6 Is Not NULL
  44759.         If @KFPod6 = 'D'
  44760.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  44761.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  44762.         Else
  44763.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  44764.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  44765.     If @Pod7 Is Not NULL
  44766.         If @KFPod7 = 'D'
  44767.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  44768.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  44769.         Else
  44770.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  44771.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  44772. /*
  44773.     If @Pod1 Is Not NULL
  44774.            Begin
  44775.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  44776.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  44777.            End
  44778.     If @Pod2 Is Not NULL
  44779.            Begin
  44780.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  44781.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  44782.        End
  44783.     If @Pod3 Is Not NULL
  44784.            Begin
  44785.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  44786.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  44787.            End
  44788.     If @Pod4 Is Not NULL
  44789.            Begin
  44790.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  44791.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  44792.            End
  44793.     If @Pod5 Is Not NULL
  44794.            Begin
  44795.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  44796.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  44797.            End
  44798. */
  44799.     If @Sifra_Tip Is Not Null
  44800.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  44801.     If @Sifra_Nivo Is Not NULL
  44802.         Set @SSQL = @SSQL + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  44803.     If @KojaCena Is Not NULL
  44804.         Set @SSQL = @SSQL + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  44805.        If @KomercKako = 'I'
  44806.         If @Sifra_Pat IS NOT NULL
  44807.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  44808.        If @KomercKako = 'T'
  44809.         If @Sifra_Pat IS NOT NULL
  44810.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  44811.                         OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  44812.     If @Sifra_Art_Od Is Not NULL
  44813.         Set @SSQL = @SSQL + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  44814.     If @Sifra_Art_Do Is Not NULL
  44815.         Set @SSQL = @SSQL + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  44816.     If @TipKup Is Not NULL
  44817.         Set @SSQL = @SSQL + ' And KUP.TipKup In (' + @TipKup + ') '
  44818.     If @Sifra_OE Is Not NULL    
  44819.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  44820.     If @KoiOE Is Not NULL
  44821.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  44822.     If @TipDokNab IS NOT NULL
  44823.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokNab + ') '
  44824.     If @Drugo1 Is Not NULL
  44825.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  44826.     If @Drugo2 Is Not NULL
  44827.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  44828.     If @Drugo3 Is Not NULL
  44829.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  44830.     If @Drugo4 Is Not NULL
  44831.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  44832.     If @Drugo5 Is Not NULL
  44833.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  44834.     If @Sifra_Div Is Not NULL
  44835.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  44836.        If @ImeArtDel IS NOT NULL 
  44837.         If IsNumeric(@ImeArtDel)=1
  44838.             Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  44839.         Else
  44840.             Set @SSQL = @SSQL + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  44841.     If @Komint_KObj = 'K'
  44842.         Set @SSQL = @SSQL + 'Group By D.Sifra_Kup,  KUP.ImeKup, KUP.ImeKup2,
  44843.                                 KUP.Adresa, KUP.Adresa2, KUP.SMesto, KUP.Posta, KUP.Zemja '
  44844.     Else If @Komint_KObj = 'O'
  44845.         Set @SSQL = @SSQL + 'Group By D.Sifra_Kup, D.Sifra_Obj, KUP.ImeKup, KUP.ImeKup2,
  44846.                                 KUP.Adresa, KUP.Adresa2, KUP.SMesto, KUP.Posta, KUP.Zemja '
  44847.     If @Podred = 'S'
  44848.         Set @SSQL = @SSQL + 'Order By D.Sifra_Kup '
  44849.     Else If @Podred = 'A'
  44850.         Set @SSQL = @SSQL + 'Order By KUP.ImeKup ' 
  44851.     Else If @Podred = '1'
  44852.         Set @SSQL = @SSQL + 'Order By Izlezi Desc ' 
  44853.     Else If @Podred = '2'
  44854.         Set @SSQL = @SSQL + 'Order By Kolicina Desc ' 
  44855.     Else If @Podred = '3'
  44856.         Set @SSQL = @SSQL + 'Order By MVr_Krajna Desc, DVr_Krajna Desc'
  44857.     Else If @Podred = '4'
  44858.         Set @SSQL = @SSQL + 'Order By Vk_NPS DESC'
  44859. print @SSQl
  44860.     Exec(@SSQL)
  44861.     Set Nocount Off
  44862.     Return @@ERROR
  44863.  
  44864.  
  44865.  
  44866.  
  44867.  
  44868. Go
  44869. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dodajdeklart]'))
  44870. drop procedure [dbo].[sp_dodajdeklart]
  44871.  
  44872. Go
  44873.  
  44874. CREATE   PROCEDURE sp_DodajDeklArt
  44875.     @Sifra_Art varchar(20),
  44876.     @Ozn as varchar(20),
  44877.     @Sifra_Art_Od varchar(20),
  44878.     @Sifra_Art_Do varchar(20),
  44879.     @OznProm as varchar(20)
  44880. AS
  44881.     -- JA NEMAM ISPROBANO, PRVO NAPRAJ BACKUP
  44882.     --set @Sifra_Art = '004800'      -- od koj artikal od deklArt da zema FileTmp
  44883.     --set @Ozn = 'mk'            -- Ozn na artiklot
  44884.     --set @Sifra_Art_Od = '004800'    -- Artikal od za insertiranje
  44885.     --set @Sifra_Art_Do = '004850'    -- Artikal do za insertiranje
  44886.     --set @OznProm = 'mk'        -- Oznaka koja kke se inseretira
  44887.     If @Sifra_Art Is Not null And @Ozn Is Not Null And @Sifra_Art_Od Is Not Null And @Sifra_Art_Do Is Not Null And @OznProm Is Not Null
  44888.     Begin
  44889.         delete from deklart 
  44890.         where sifra_Art >= @Sifra_Art_Od and sifra_Art <= @Sifra_Art_Do And Ozn = @OznProm and Sifra_Art<>@Sifra_Art
  44891.         Insert Into DeklArt(Sifra_Art, Ozn, FileTmp, PrinterName, PageSize)
  44892.         Select K.Sifra_Art, @OznProm Ozn, D.FileTmp, D.PrinterName, D.PageSize
  44893.         From Katart K
  44894.         Inner Join DeklArt D On D.Sifra_Art=@Sifra_Art And D.Ozn=@Ozn
  44895.         Where K.Sifra_Art>=@Sifra_Art_Od And K.Sifra_Art<=@Sifra_Art_Do and K.Sifra_Art<>@Sifra_Art
  44896.     End
  44897.  
  44898.  
  44899.  
  44900. Go
  44901. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dodajpombrdok]'))
  44902. drop procedure [dbo].[sp_dodajpombrdok]
  44903.  
  44904. Go
  44905.  
  44906. CREATE  PROCEDURE sp_DodajPomBrDok
  44907.  
  44908.     @KodObr        varchar(50),
  44909.     @KodOperator    varchar(50),
  44910.     @Sifra_Oe    smallint = null,
  44911.     @Sifra_Dok    smallint = null,
  44912.     @Broj_Dok    int = null
  44913.  
  44914. AS
  44915.  
  44916.     Insert Into PomBrojDok 
  44917.                  (KodObr, KodOperator, Sifra_Oe, Sifra_Dok, Broj_Dok)
  44918.     Values   (@KodObr, @KodOperator, @Sifra_Oe, @Sifra_Dok, @Broj_Dok)
  44919.  
  44920.  
  44921.  
  44922.  
  44923. Go
  44924. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dokrid]'))
  44925. drop procedure [dbo].[sp_dokrid]
  44926.  
  44927. Go
  44928.  
  44929. CREATE     PROCEDURE sp_DokrID
  44930.     @Sifra_OE Smallint,
  44931.     @Sifra_Dok Smallint,
  44932.     @Broj_Dok Int,
  44933.     @Sifra_Prim smallint,
  44934.     @ImaDodatna Char(1),
  44935.     @DokrID Int OUTPUT,
  44936.     @Broj_Nal Int OUTPUT
  44937. AS
  44938.     Select @DokrID=DokrID, @Broj_Nal=Broj_Nal From Dokr
  44939.         Where Sifra_OE=@Sifra_OE And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok And Sifra_Prim=@Sifra_Prim And ImaDodatna=@ImaDodatna
  44940.  
  44941.  
  44942.  
  44943. Go
  44944. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dokrpecdok]'))
  44945. drop procedure [dbo].[sp_dokrpecdok]
  44946.  
  44947. Go
  44948.  
  44949. CREATE PROCEDURE sp_DokrPecDok
  44950.    @Sifra_OE smallint,
  44951.    @Sifra_Dok smallint,
  44952.    @Broj_Dok int,
  44953.     @Pec_Dok smallint OUTPUT
  44954. AS
  44955.     SELECT @Pec_Dok=Pec_Dok
  44956.    FROM Dokr
  44957.    WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  44958.  
  44959.  
  44960.  
  44961. Go
  44962. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dokrpecdoknv]'))
  44963. drop procedure [dbo].[sp_dokrpecdoknv]
  44964.  
  44965. Go
  44966.  
  44967. CREATE PROCEDURE sp_DokrPecDokNV
  44968.    @Sifra_OE smallint,
  44969.    @Sifra_Dok smallint,
  44970.    @Broj_Dok int,
  44971.     @Pec_Dok smallint
  44972. AS
  44973.     UPDATE Dokr
  44974.         Set Pec_Dok=@Pec_Dok
  44975.    WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  44976.  
  44977.  
  44978.  
  44979. Go
  44980. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dokrpecfisc]'))
  44981. drop procedure [dbo].[sp_dokrpecfisc]
  44982.  
  44983. Go
  44984.  
  44985. CREATE PROCEDURE sp_DokrPecFisc
  44986.    @Sifra_OE smallint,
  44987.    @Sifra_Dok smallint,
  44988.    @Broj_Dok int,
  44989.     @Pec_Fisc smallint OUTPUT
  44990. AS
  44991.     SELECT @Pec_Fisc=Pec_Fisc
  44992.    FROM Dokr
  44993.    WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  44994.  
  44995.  
  44996.  
  44997. Go
  44998. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dokrpecfiscnv]'))
  44999. drop procedure [dbo].[sp_dokrpecfiscnv]
  45000.  
  45001. Go
  45002. CREATE PROCEDURE sp_DokrPecFiscNV
  45003.    @Sifra_OE smallint,
  45004.    @Sifra_Dok smallint,
  45005.    @Broj_Dok int,
  45006.     @Pec_Fisc smallint
  45007. AS
  45008.     UPDATE Dokr
  45009.         Set Pec_Fisc=@Pec_Fisc, Dat_Pec_Fisc = GETDATE()
  45010.    WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  45011.  
  45012.  
  45013.  
  45014. Go
  45015. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dokzanalozi]'))
  45016. drop procedure [dbo].[sp_dokzanalozi]
  45017.  
  45018. Go
  45019.  
  45020. CREATE        PROCEDURE sp_DokZaNalozi
  45021.     @Sifra_OE Smallint,
  45022.     @Sifra_dok smallint,
  45023.     @Broj_Dok_Od int,
  45024.     @Broj_Dok_Do int,
  45025.     @Datum_Od Smalldatetime,
  45026.     @Datum_Do Smalldatetime,
  45027.     @Sifra_Nivo  varchar(2),
  45028.     @BankaOd char(1) = 'K'        -- K - Komint,      B - KBanki
  45029. AS
  45030.     Declare @SSQL Varchar(4000)
  45031.     Declare @SSQLUsl  Varchar(4000)
  45032.  
  45033.     Set @SSQLUsl = ' '
  45034.  
  45035.     If @Datum_Od Is NOT Null
  45036.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  45037.     If @Datum_Do Is NOT Null
  45038.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  45039.     If @Broj_Dok_Od Is NOT Null
  45040.         SET @SSQLUsl = @SSQLUsl + 'AND A.Broj_Dok >=''' + Cast(@Broj_Dok_Od As Varchar(8)) + ''' '
  45041.     If @Broj_Dok_Do Is NOT Null
  45042.         SET @SSQLUsl = @SSQLUsl + 'AND A.Broj_Dok <=''' + Cast(@Broj_Dok_Do As Varchar(8)) + ''' '
  45043.     If @Sifra_Nivo Is NOT Null
  45044.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  45045.  
  45046.     If @BankaOd = 'B'
  45047.     Begin
  45048.         Create Table #KomBanka
  45049.         (
  45050.             Sifra_Kup    char(6),
  45051.             Banka        varchar(40),
  45052.             Ziro        varchar(20)
  45053.         )
  45054.  
  45055.         Set @SSQL = ' Select Distinct A.Sifra_Kup 
  45056.                 From AnFinDok A
  45057.                          WHERE A.Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + 
  45058.                 ' AND A.Sifra_Dok = '  + Cast(@Sifra_Dok as varchar(6)) + ' '
  45059.  
  45060.         Insert Into #KomBanka (Sifra_Kup)  Exec(@SSQL+@SSQLUsl)
  45061.  
  45062.         Update #KomBanka 
  45063.         Set Banka = B.ImeBanka, Ziro = KB.ZiroSka
  45064.         From KBanki KB
  45065.         Inner Join Banki B On B.Sifra_Ban=KB.Sifra_Ban
  45066.         Where KB.Sifra_Kup=#KomBanka.Sifra_Kup
  45067.     End
  45068.  
  45069.  
  45070.  
  45071.     Set @SSQL = 'SELECT A.BrojDok, A.Datum_Dok, A.Rok, A.Dolzi+A.Pobaruva As Iznos, A.Sifra_Kup, A.Broj_Dok, Kup.ImeKup, '
  45072.     If @BankaOd = 'B'
  45073.         SET @SSQL = @SSQL + ' KB.Banka, KB.Ziro '
  45074.     Else
  45075.         SET @SSQL = @SSQL + ' Kup.Banka, Kup.Ziro '
  45076.     SET @SSQL = @SSQL + ' FROM AnFinDok A
  45077.                  Inner Join Komint Kup On A.Sifra_Kup=Kup.Sifra_Kup '
  45078.     If @BankaOd = 'B'
  45079.         SET @SSQL = @SSQL + ' Left Outer Join #KomBanka KB On KB.Sifra_Kup=A.Sifra_Kup '
  45080.     SET @SSQL = @SSQL + ' WHERE A.Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + 
  45081.                   ' AND A.Sifra_Dok = '  + Cast(@Sifra_Dok as varchar(6)) + ' '
  45082.     Exec(@SSQL+@SSQLUsl)
  45083.  
  45084. Go
  45085. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dozvolenart]'))
  45086. drop procedure [dbo].[sp_dozvolenart]
  45087.  
  45088. Go
  45089. CREATE PROCEDURE sp_DozvolenArt
  45090.     @Sifra_OE        smallint,
  45091.     @Sifra_Art        varchar(20),
  45092.     @Tip_DozvOrgArt    varchar(10),
  45093.     @Dozvolen        char(1) = 'N' OUTPUT
  45094. AS
  45095. SET @Dozvolen = 'N'
  45096. Declare @KlkZapisi int
  45097. SET @KlkZapisi = 0
  45098. Declare @Sif_GrOrg char(6)
  45099. SET @Sif_GrOrg = ''
  45100. SELECT @Sif_GrOrg = Sif_GrOrg FROM GrOrg WHERE Edinstvena='D' AND 
  45101. Sif_GrOrg IN (SELECT Sif_GrOrg FROM SGrOrg WHERE Sifra_OE = @Sifra_OE)
  45102. IF @Tip_DozvOrgArt = 'PODG'
  45103. Begin
  45104.     SELECT @KlkZapisi = COUNT(*) FROM KatArt WHERE Sifra_Podg IN
  45105.     (SELECT Sifra_Podg FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg) 
  45106.     AND Sifra_Art = @Sifra_Art
  45107. End
  45108. ELSE IF @Tip_DozvOrgArt = 'GR'
  45109. Begin
  45110.     SELECT @KlkZapisi = COUNT(*) FROM KatArt WHERE Sifra_Podg IN
  45111.     (SELECT Sifra_Podg FROM Grupi WHERE Sifra_Gr IN 
  45112.     (SELECT Sifra_Gr FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg))
  45113.     AND Sifra_Art = @Sifra_Art
  45114. End
  45115. ELSE IF @Tip_DozvOrgArt ='DR1'
  45116. Begin
  45117.     SELECT @KlkZapisi = COUNT(*) FROM KatArt WHERE Drugo1 IN
  45118.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg)
  45119.     AND Sifra_Art = @Sifra_Art
  45120. End
  45121. ELSE IF @Tip_DozvOrgArt ='DR2'
  45122. Begin
  45123.     SELECT @KlkZapisi = COUNT(*) FROM KatArt WHERE Drugo2 IN
  45124.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg)
  45125.     AND Sifra_Art = @Sifra_Art
  45126. End
  45127. ELSE IF @Tip_DozvOrgArt ='DR3'
  45128. Begin
  45129.     SELECT @KlkZapisi = COUNT(*) FROM KatArt WHERE Drugo3 IN
  45130.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg)
  45131.     AND Sifra_Art = @Sifra_Art
  45132. End
  45133. ELSE IF @Tip_DozvOrgArt ='DR4'
  45134. Begin
  45135.     SELECT @KlkZapisi = COUNT(*) FROM KatArt WHERE Drugo4 IN
  45136.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg  = @Sif_GrOrg)
  45137.     AND Sifra_Art = @Sifra_Art
  45138. End
  45139. ELSE IF @Tip_DozvOrgArt ='DR5'
  45140. Begin
  45141.     SELECT @KlkZapisi = COUNT(*) FROM KatArt WHERE Drugo5 IN
  45142.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg  = @Sif_GrOrg)
  45143.     AND Sifra_Art = @Sifra_Art
  45144. End
  45145. ELSE IF @Tip_DozvOrgArt = 'SIF'
  45146. Begin
  45147.     Declare @ArtOd varchar(20)
  45148.     Declare @ArtDo varchar(20)
  45149.     Declare DozvArtOdDo1 Cursor Fast_Forward For
  45150.         Select  Sifra_Od, Sifra_Do From DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg
  45151.     Open DozvArtOdDo1
  45152.     Fetch Next From DozvArtOdDo1 Into @ArtOd, @ArtDo
  45153.     While @@Fetch_Status = 0
  45154.     Begin            
  45155.         IF @KlkZapisi=0
  45156.         SELECT @KlkZapisi = COUNT(*) FROM KatArt 
  45157.         WHERE Sifra_Art >= @ArtOd AND Sifra_Art <= @ArtDo AND Sifra_Art =@Sifra_Art
  45158.         Fetch Next From DozvArtOdDo1 Into  @ArtOd, @ArtDo
  45159.     End
  45160.     Close DozvArtOdDo1
  45161.     Deallocate DozvArtOdDo1
  45162. End
  45163. IF @KlkZapisi > 0 SET @Dozvolen='D'
  45164.  
  45165.  
  45166.  
  45167. Go
  45168. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_dupli]'))
  45169. drop procedure [dbo].[sp_dupli]
  45170.  
  45171. Go
  45172.  
  45173. CREATE Procedure sp_Dupli
  45174. As
  45175.     Declare @Sifra_OE Smallint
  45176.     Declare @Sifra_Art Varchar(20)
  45177.     Set Nocount On
  45178.     Declare Tabela Cursor Fast_Forward For
  45179.         Select Distinct Sifra_OE, Sifra_Art From Soart
  45180.     Open Tabela
  45181.     Fetch Next From Tabela Into @Sifra_OE, @Sifra_Art
  45182.     While @@Fetch_Status = 0
  45183.     Begin
  45184.         If Not Exists (Select * From Soart1 Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art)
  45185.             INSERT INTO [Soart1] ([Sifra_OE], [Sifra_Art], [Vlez], [Izlez], [Prof_Rez], [Cena], [DanCena], [POsn], [NabCena], [DokCena], [Uces])
  45186.             SELECT Top 1 [Sifra_OE], [Sifra_Art], [Vlez], [Izlez], [Prof_Rez], [Cena], [DanCena], [POsn], [NabCena], [DokCena], [Uces] FROM [Soart] Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  45187.         Fetch Next From Tabela Into @Sifra_OE, @Sifra_Art
  45188.     End
  45189.     Close Tabela
  45190.     Deallocate Tabela
  45191.     Set Nocount Off
  45192.  
  45193.  
  45194.  
  45195. Go
  45196. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_duplirazlceni]'))
  45197. drop procedure [dbo].[sp_duplirazlceni]
  45198.  
  45199. Go
  45200. CREATE    PROCEDURE sp_DupliRazlCeni
  45201.     @Datum_Od    smalldatetime,
  45202.     @Datum_Do    smalldatetime,
  45203.     @Sifra_OEZa    smallint,
  45204.     @VkZaBrisenje    int = 0 OUTPUT
  45205. AS 
  45206. Declare @RazlID    int
  45207. Declare @Sifra_OE    smallint
  45208. Declare @Sifra_Razl    smallint
  45209. Declare @Datum_Dok    smalldatetime
  45210. Declare @Sifra_Art    varchar(20)
  45211. Declare @Kolic        decimal(18,6)
  45212. Declare @PocCena    decimal(18,6)
  45213. Declare @KrCena    decimal(18,6)
  45214. Declare @POsn        decimal(6,2)
  45215. Declare @PTar        char(3)
  45216. Declare @DanPocCena    char(1)
  45217. Declare @DanKrCena    char(1)
  45218. Declare @RazlID1    int
  45219. Declare @Sifra_OE1    smallint
  45220. Declare @Sifra_Razl1    smallint
  45221. Declare @Datum_Dok1    smalldatetime
  45222. Declare @Sifra_Art1    varchar(20)
  45223. Declare @Kolic1    decimal(18,6)
  45224. Declare @PocCena1    decimal(18,6)
  45225. Declare @KrCena1    decimal(18,6)
  45226. Declare @POsn1    decimal(6,2)
  45227. Declare @PTar1    char(3)
  45228. Declare @DanPocCena1 char(1)
  45229. Declare @DanKrCena1    char(1)
  45230. Declare @RDokIDPom    int
  45231. SET @RazlID    = 0
  45232. SET @Sifra_OE    = 0
  45233. SET @Sifra_Razl = 0
  45234. SET @Datum_Dok = '2000-01-01'    
  45235. SET @Sifra_Art    = ''
  45236. SET @Kolic    = 0
  45237. SET @PocCena    = 0
  45238. SET @KrCena    = 0
  45239. SET @POsn    = 0
  45240. SET @PTar    = ''
  45241. SET @DanPocCena = ''
  45242. SET @DanKrCena = ''
  45243.     CREATE TABLE ##TmpRazlCeni
  45244. (    RDokID    int
  45245. )
  45246. DECLARE Stavki CURSOR FAST_FORWARD FOR 
  45247. SELECT RDokID, Sifra_OE, Sifra_Razl, Datum_Dok, Sifra_Art, Kolic, PocCena,KrCena, POsn, PTar, DanPocCena, DanKrCena 
  45248. FROM RazlCeni WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do AND Sifra_OE = @Sifra_OEZa 
  45249. ORDER BY Sifra_Razl, Datum_Dok, Sifra_Art, RDokID
  45250. OPEN Stavki
  45251. FETCH NEXT FROM Stavki INTO @RazlID, @Sifra_OE, @Sifra_Razl, @Datum_Dok, @Sifra_Art, @Kolic, 
  45252.     @PocCena,@KrCena, @POsn, @PTar, @DanPocCena, @DanKrCena 
  45253. WHILE @@FETCH_STATUS = 0
  45254.    Begin
  45255.     SET @RDokIDPom = null
  45256.     SELECT @RDokIDPom = RDokID FROM ##TmpRazlCeni WHERE RDokID = @RazlID1
  45257.     IF @RDokIDPom IS NULL
  45258.     Begin
  45259.         If @Sifra_Razl = @Sifra_Razl1 AND @Sifra_Art = @Sifra_Art1 AND 
  45260.            @Datum_Dok1 = @Datum_Dok AND @DanPocCena = @DanPocCena1 AND
  45261.            @DanKrCena = @DanKrCena1 AND @PTar = @PTar1 AND @POsn=@POsn1
  45262.         Begin
  45263.             IF Abs(@Kolic*(@KrCena-@PocCena) + @Kolic1*(@KrCena1-@PocCena1)) <= 0.05
  45264.             BEGIN 
  45265.                 INSERT INTO ##TmpRazlCeni (RDokID) VALUES  (@RazlID)
  45266.                 INSERT INTO ##TmpRazlCeni (RDokID) VALUES  (@RazlID1)
  45267.             END
  45268.         End
  45269.     End
  45270.     Set @RazlID1        = @RazlID
  45271.     Set @Sifra_Razl1    = @Sifra_Razl
  45272.     Set @Sifra_Art1         = @Sifra_Art
  45273.     Set @Datum_Dok1    = @Datum_Dok
  45274.     Set @DanPocCena1     = @DanPocCena
  45275.     Set @DanKrCena1     = @DanKrCena
  45276.     Set @PocCena1     = @PocCena
  45277.     Set @KrCena1         = @KrCena
  45278.     Set @Kolic1        = @Kolic
  45279.     Set @PTar1        = @PTar
  45280.     Set @Posn1        = @POsn
  45281.     FETCH NEXT FROM Stavki INTO @RazlID, @Sifra_OE, @Sifra_Razl, @Datum_Dok, @Sifra_Art, @Kolic, 
  45282.     @PocCena,@KrCena, @POsn, @PTar, @DanPocCena, @DanKrCena 
  45283.    End
  45284. CLOSE Stavki
  45285. DEALLOCATE Stavki
  45286.     SELECT @VkZaBrisenje = COUNT(RDokID) FROM ##TmpRazlCeni
  45287.  
  45288.  
  45289.  
  45290. Go
  45291. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_duplovneseni_seriskibr]'))
  45292. drop procedure [dbo].[sp_duplovneseni_seriskibr]
  45293.  
  45294. Go
  45295.  
  45296.  
  45297. CREATE      PROCEDURE sp_DuploVneseni_SeriskiBr
  45298.     @Sifra_Oe    smallint = Null,
  45299.     @Koi_Oe    varchar(10) = Null,
  45300.     @Sifra_Art_Od    varchar(20) = Null,
  45301.     @Sifra_Art_Do    varchar(20) = Null,
  45302.     @Datum_Od    smalldatetime = Null,
  45303.     @Datum_Do    smalldatetime = Null,
  45304.     @Sifra_kup    char(6) = Null,
  45305.     @SeriskiBrOd    varchar(15) = Null,
  45306.     @SeriskiBrDo    varchar(15) = Null
  45307.  AS
  45308.     Declare @SSQL as varchar(8000)
  45309.     Create Table #Tab
  45310.     (
  45311.      Sifra_Art     varchar(20),
  45312.      SeriskiBr    varchar(15),
  45313.      Izlezi        decimal(18,6),
  45314.      Grupa        int
  45315.     )
  45316.     Set @SSQL = ' Select S.Sifra_Art, B.SeriskiBr, 
  45317.             Sum((Case When S.Kolic >= 0  Then 1 Else  -1  End))
  45318.             From BrStavr B
  45319.             Inner Join Stavr S On S.DokID=B.DokID
  45320.             Inner Join Dokr D On D.DokrID=S.DokrID
  45321.             Where D.Sifra_Za = ''1'' '
  45322.     If @Sifra_Oe Is not Null
  45323.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  45324.     If @Koi_OE Is Not Null
  45325.         SET @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  45326.        If @Sifra_Art_Od IS NOT NULL 
  45327.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  45328.        If @Sifra_Art_Do IS NOT NULL 
  45329.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  45330.     If @SeriskiBrOd Is not Null
  45331.         Set @SSQL = @SSQL + ' And B.SeriskiBr >= ' + @SeriskiBrOd + ' '
  45332.     If @SeriskiBrDo Is not Null
  45333.         Set @SSQL = @SSQL + ' And B.SeriskiBr <= ' + @SeriskiBrDo + ' '
  45334.     If @Datum_Od Is Not Null
  45335.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  45336.     If @Datum_Do Is Not Null
  45337.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  45338.     If @Sifra_Kup Is not Null
  45339.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ' + @Sifra_Kup + ' '
  45340.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art, B.SeriskiBr '
  45341.     Set @SSQL = @SSQL + ' Order By S.Sifra_Art, B.SeriskiBr '
  45342.     Insert Into #Tab(Sifra_Art, SeriskiBr, Izlezi) Exec(@SSQL)
  45343.     Set @SSQL = ' Select  T.Sifra_Art, K.ImeArt, T.SeriskiBr, T.Izlezi
  45344.             From #Tab T
  45345.             Inner Join Katart K On K.Sifra_Art=T.Sifra_Art
  45346.             Where Izlezi > 1 '
  45347.     Set @SSQL=@SSQL+'ORDER BY T.Sifra_Art, T.SeriskiBr '
  45348.     Exec(@SSQL)
  45349.  
  45350.  
  45351.  
  45352. Go
  45353. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ekviv_art_dali_se]'))
  45354. drop procedure [dbo].[sp_ekviv_art_dali_se]
  45355.  
  45356. Go
  45357.  
  45358. create Procedure sp_Ekviv_Art_Dali_se
  45359.       @Sifra_Art1 Varchar(20),
  45360.       @Sifra_Art2 varchaR(20),
  45361.       @Faktor decimal (18, 6) = 0 OUTPUT
  45362.  
  45363.   As
  45364.  
  45365.     create Table #tEkv1
  45366.     (    Sifra_Art     Varchar(20),
  45367.         IdEkviv        varchar(50),
  45368.         Za_Kolku     Decimal(18,6)
  45369.     )
  45370.  
  45371.     insert into #tEkv1
  45372.     (Sifra_ARt, IdEkviv, Za_Kolku)
  45373.     select Sifra_Art, IdEkviv, Za_Kolku
  45374.     from EkvivARt
  45375.     where SifrA_Art = @Sifra_Art1
  45376.  
  45377.     --
  45378.     create Table #tEkv2
  45379.     (    Sifra_Art     Varchar(20),
  45380.         IdEkviv        varchar(50),
  45381.         Za_Kolku     Decimal(18,6)
  45382.     )
  45383.  
  45384.     insert into #tEkv2
  45385.     (Sifra_ARt, IdEkviv, Za_Kolku)
  45386.     select Sifra_Art, IdEkviv, Za_Kolku
  45387.     from EkvivARt
  45388.     where SifrA_Art = @Sifra_Art2
  45389.  
  45390.     select top 1 @Faktor = case when A.Za_Kolku = 0 or B.Za_Kolku = 0 then 1 else B.Za_Kolku / A.Za_Kolku end
  45391.     from #tEkv1 A
  45392.     inner join #tEkv2 B
  45393.     on A.IdEkviv = B.IdEkviv
  45394.  
  45395.     drop table #tEkv1
  45396.     drop table #tEkv2
  45397.  
  45398. --print @Faktor
  45399.  
  45400.  
  45401.  
  45402. Go
  45403. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_etiketi_artikli]'))
  45404. drop procedure [dbo].[sp_etiketi_artikli]
  45405.  
  45406. Go
  45407. CREATE PROCEDURE sp_Etiketi_Artikli 
  45408.     @Sifra_Art_Od    varchar(20),
  45409.     @Sifra_Art_Do    varchar(20)
  45410. AS
  45411.     Select * From Katart Where Sifra_Art >= @Sifra_Art_Od And Sifra_Art <= @Sifra_Art_Do
  45412.  
  45413.  
  45414. Go
  45415. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_etiketiart]'))
  45416. drop procedure [dbo].[sp_etiketiart]
  45417.  
  45418. Go
  45419.  
  45420.  
  45421. CREATE   PROCEDURE sp_EtiketiArt
  45422.     @Sifra_Oe     smallint,
  45423.     @Sifra_Art     varchar(20)
  45424.  AS
  45425.     Select S.Sifra_Art, K.ImeArt, K.ImeArt2, K.Nom, S.Cena, S.DanCena, K.ImaKomerc, T.ProcOsn, S.NabCena, S.NNabCena, S.DokCena,
  45426.         K.GotCena, K.SpeCena, K.MalCena, K.DogCena, K.Cena as ACena, K.Sifra_Tar
  45427.     From Soart S 
  45428.     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art
  45429.        INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar 
  45430.     Where S.Sifra_Oe=@Sifra_Oe and S.Sifra_art = @Sifra_Art
  45431.  
  45432.  
  45433.  
  45434. Go
  45435. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_etu]'))
  45436. drop procedure [dbo].[sp_etu]
  45437.  
  45438. Go
  45439. CREATE PROCEDURE sp_ETU
  45440.     @Sifra_Oe    smallint,
  45441.     @Datum_Od    smalldatetime,
  45442.     @Datum_Do    smalldatetime
  45443. AS
  45444.     Declare @SSQL as varchar(8000)
  45445.     Set @SSQL = 'Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, Kup.ImeKup, 
  45446.                 S.Sifra_Art, K.ImeArt, S.DokCena as Iznos, (S.DokCena*S.Posn/100) DDV
  45447.             From Dokr D
  45448.             Inner Join Stavr S On S.DokrID=D.DokrID 
  45449.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  45450.             Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  45451.             Where K.SMatUsl = ''U'' '
  45452.     If @Sifra_Oe Is Not Null
  45453.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  45454.     If @Datum_Od Is Not Null
  45455.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  45456.     If @Datum_Do Is Not Null
  45457.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  45458.     Set @SSQL = @SSQL + ' Order By  D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok '
  45459.     Exec (@SSQL)
  45460.  
  45461.  
  45462. Go
  45463. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exp_specif]'))
  45464. drop procedure [dbo].[sp_exp_specif]
  45465.  
  45466. Go
  45467.  
  45468. CREATE     PROCEDURE [dbo].[sp_Exp_Specif]
  45469.     @Godina        smallint,
  45470.     @Mesec        smallint
  45471. AS
  45472.                 -- rangiran treba da se dopolni 3 za lekovi specifika,   2 za lekovi so referentna cena
  45473.     Select S.Godina_Fra, S.Faktura_Br, '2' as Rangiran, S.Specif_Br, S.Sifra_Apteka, S.NabVr_BezDDV, S.Iznos_Marza, S.Osnovica_DDV, S.Iznos_DDV, 
  45474.         S.Vk_Iznos, S.Vk_Partic, S.Vk_ZaNaplata, S.Vk_PresmParticip, S.BezPartic, S.spc_podr, S.spc_specif, S.Poc_Broj_Recept, S.Kr_Broj_Recept, S.Kolku_Recepti, 
  45475.         F.Sifra_PodrSluzba_Fakt, F.Mesec_Fra, P.PocCifriKniska, S.SpecLek 
  45476.     From Specifikacii S
  45477.     Inner Join Faktura F on S.Godina_Fra = F.Godina_Fra and S.Faktura_Br = F.Faktura_Br
  45478.     Left Outer Join PodracniSluzbi P on F.Sifra_PodrSluzba_Fakt = P.Sifra_PodrSluzba
  45479.     Where S.Godina_Fra = @Godina and F.Mesec_Fra = @Mesec
  45480.     Order By S.Godina_Fra, S.Specif_Br, S.Rangiran
  45481.  
  45482.  
  45483.  
  45484.  
  45485. Go
  45486. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exp_specif_recepti]'))
  45487. drop procedure [dbo].[sp_exp_specif_recepti]
  45488.  
  45489. Go
  45490.  
  45491. CREATE  PROCEDURE [dbo].[sp_Exp_Specif_Recepti]
  45492.     @Godina        smallint,
  45493.     @Mesec        smallint
  45494. AS
  45495.                                             -- rangiran treba da se dopolni 3 za lekovi specifika,   2 za lekovi so referentna cena
  45496.     Select R.Broj_Recept, R.Sifra_Apteka, R.Sifra_Nasa_Firma, R.Sifra_Kompanija, R.EMBG, R.Broj_Kniska, R.Sifra_OsnovOsig, R.Sifra_Lekar, R.Sifra_Lekar_Spec, 
  45497.         R.Datum_Recept, R.Sifra_Dijagn, R.Sifra_Art, R.Datum_Izdav, R.Sifra_Farmacevt, R.Vid_Marza, R.Proc_Marza, R.Kolku_Pakuv, R.Kolku_Kolic, '2' as Rangiran, 
  45498.         R.Cena_Tender, R.Iznos_Tender, R.Iznos_Marza, R.Osnov_DDV, R.ProcDDV, R.Iznos_Na_DDV, R.Iznos_So_DDV, R.Sifra_Oslobod, R.Iznos_Partic, 
  45499.         R.Naplat_Partic, R.Broj_Priem, R.Sifra_ATC, R.Faktura_Br, R.Godina_Fra, R.Mesec_Fra, R.Specif_Br, R.Rbr_Vo_Specif, R.Godina_Priem, R.BezPartic, 
  45500.         R.Sifra_Oslob_Nov, R.spc_podr, R.spc_specif, R.spc_recept, R.Specif_Fiz, R.Rbr_Fiz, L.SOdrziEd Br_Vo_Pakuv,
  45501.         L.Alt_Ime, R.SpecLek, L.VoPDa
  45502.     From Recepti R
  45503.     Inner Join Specifikacii S on R.Godina_Fra = S.Godina_Fra and R.Specif_Br = S.Specif_Br
  45504.     Inner Join Faktura F on S.Godina_Fra = F.Godina_Fra and S.Faktura_Br = F.Faktura_Br
  45505.     Left Outer Join Katart L on R.Sifra_Art = L.Sifra_Art
  45506.     Where R.Godina_Fra = @Godina and F.Mesec_Fra = @Mesec
  45507.     Order by R.Godina_Fra, R.Specif_Br, R.Rbr_Vo_Specif
  45508.  
  45509.  
  45510.  
  45511.  
  45512.  
  45513.  
  45514.  
  45515. Go
  45516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_expkonvaga]'))
  45517. drop procedure [dbo].[sp_expkonvaga]
  45518.  
  45519. Go
  45520.  
  45521.  
  45522. CREATE   PROCEDURE sp_ExpKonVaga
  45523.     @Sifra_OE    smallint,
  45524.     @Lokacija    varchar(10)
  45525. AS
  45526. CREATE TABLE #Vaga
  45527. (ImeArt        nchar(26),
  45528. Sifra_Art    varchar(20),
  45529. Cena        decimal(18,2))
  45530. INSERT INTO #Vaga (ImeArt, Sifra_Art, Cena)
  45531. SELECT Substring(A.ImeArt,1,26), A.Sifra_Art, S.Cena FROM KatArt A 
  45532. INNER JOIN SoArt S ON A.Sifra_Art=S.Sifra_Art
  45533. WHERE A.Lokacija=@Lokacija AND S.Sifra_OE=@Sifra_OE
  45534. CREATE TABLE ##TmpVaga
  45535. (Zapis    nvarchar(26))
  45536. Declare @ImeArt nchar(26)
  45537. Declare @Sifra_Art varchar(20)
  45538. Declare @Cena decimal(18,2)
  45539.     Declare TabVaga Cursor Fast_Forward For  Select * From #Vaga ORDER BY Sifra_Art
  45540.     Open TabVaga
  45541.     Fetch Next From TabVaga Into @ImeArt, @Sifra_Art, @Cena
  45542.     While @@Fetch_Status = 0
  45543.     Begin
  45544.         INSERT INTO ##TmpVaga VALUES (@ImeArt)
  45545.         INSERT INTO ##TmpVaga VALUES (' '+cast(cast(@Sifra_Art as int) as varchar(6)))
  45546.         INSERT INTO ##TmpVaga VALUES (' '+cast(cast(@Cena*100 as int) as varchar(10)))
  45547.         INSERT INTO ##TmpVaga VALUES (' 2'+@Sifra_Art)
  45548.         INSERT INTO ##TmpVaga VALUES (' 5')
  45549.         INSERT INTO ##TmpVaga VALUES (' 12')
  45550.         Fetch Next From TabVaga Into @ImeArt, @Sifra_Art, @Cena
  45551.     End
  45552.     Close TabVaga
  45553.     Deallocate TabVaga
  45554.  
  45555.  
  45556.  
  45557.  
  45558. Go
  45559. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_expkonvaga_read]'))
  45560. drop procedure [dbo].[sp_expkonvaga_read]
  45561.  
  45562. Go
  45563.  
  45564.  
  45565.  
  45566. Create   PROCEDURE sp_ExpKonVaga_Read
  45567.     @Sifra_OE    smallint,
  45568.     @Lokacija    varchar(10)
  45569. AS
  45570.     CREATE TABLE #Vaga
  45571.     (ImeArt        nchar(26),
  45572.     Sifra_Art    varchar(20),
  45573.     Cena        decimal(18,2))
  45574.  
  45575.     INSERT INTO #Vaga (ImeArt, Sifra_Art, Cena)
  45576.     SELECT Substring(A.ImeArt,1,26), A.Sifra_Art, S.Cena FROM KatArt A 
  45577.     INNER JOIN SoArt S ON A.Sifra_Art=S.Sifra_Art
  45578.     WHERE A.Lokacija=@Lokacija AND S.Sifra_OE=@Sifra_OE
  45579.  
  45580.     CREATE TABLE #TmpVaga
  45581.     (
  45582.      IdPopis    int Identity(1,1),
  45583.      Zapis        nvarchar(26)
  45584.     )
  45585.  
  45586.     Declare @ImeArt nchar(26)
  45587.     Declare @Sifra_Art varchar(20)
  45588.     Declare @Cena decimal(18,2)
  45589.  
  45590.     Declare TabVaga Cursor Fast_Forward For  Select * From #Vaga ORDER BY Sifra_Art
  45591.     Open TabVaga
  45592.     Fetch Next From TabVaga Into @ImeArt, @Sifra_Art, @Cena
  45593.     While @@Fetch_Status = 0
  45594.     Begin
  45595.         INSERT INTO #TmpVaga VALUES (@ImeArt)
  45596.         INSERT INTO #TmpVaga VALUES (' '+cast(cast(@Sifra_Art as int) as varchar(6)))
  45597.         INSERT INTO #TmpVaga VALUES (' '+cast(cast(@Cena*100 as int) as varchar(10)))
  45598.         INSERT INTO #TmpVaga VALUES (' 2'+@Sifra_Art)
  45599.         INSERT INTO #TmpVaga VALUES (' 5')
  45600.         INSERT INTO #TmpVaga VALUES (' 12')
  45601.         Fetch Next From TabVaga Into @ImeArt, @Sifra_Art, @Cena
  45602.     End
  45603.     Close TabVaga
  45604.     Deallocate TabVaga
  45605.  
  45606.     Select * From #TmpVaga Order By IDPopis
  45607.  
  45608.  
  45609.  
  45610.  
  45611.  
  45612. Go
  45613. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportartplivaxml]'))
  45614. drop procedure [dbo].[sp_exportartplivaxml]
  45615.  
  45616. Go
  45617.  
  45618.  
  45619. CREATE   procedure sp_ExportArtPlivaXml
  45620.  
  45621.     @Sifra_Oe smallint= null
  45622.  
  45623. As
  45624.  
  45625.     Declare @SSQL as varchar(5000)
  45626.  
  45627.     Set @SSQL ='SELECT A.Sifra_Art, A.ImeArt, A.Sifra_Tar, T.ProcOsn
  45628.         FROM KatArt A 
  45629.         INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar '
  45630.  
  45631.     if @SifrA_Oe is not null
  45632.     set @SSQL = @SSQL + ' inner join Soart S on S.SifrA_Art = A.SIfra_Art 
  45633.                     and S.Sifra_Oe = ' + cast(@Sifra_Oe as varchaR(5))
  45634.  
  45635.     exec(@SSQL)
  45636.  
  45637.  
  45638.  
  45639.  
  45640.  
  45641. Go
  45642. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportdeta_nabavka]'))
  45643. drop procedure [dbo].[sp_exportdeta_nabavka]
  45644.  
  45645. Go
  45646.  
  45647.  
  45648.  
  45649.  
  45650. CREATE              procedure sp_ExportDeta_Nabavka
  45651.     @Sifra_OE smallint = Null, 
  45652.     @Datum_Od smalldatetime,
  45653.     @Datum_Do smalldatetime,
  45654.     @TipDok varchar(100)
  45655. As
  45656.  
  45657.     Declare @SSQL as varchar(8000)
  45658.  
  45659.     CREATE TABLE ##TmpExport
  45660.     (  Sifra_Kup    char(9),
  45661.        Datum_Dok    char(10),
  45662.        Broj_Dok        int,
  45663.        NR            char(1),
  45664.        Sifra_Art    char(20),
  45665.        Nom             char(20),
  45666.        Sifra_Oe        char(4),
  45667.        Kolic        decimal(18,4),
  45668.        Cena         decimal(18,4),
  45669.        DDV            decimal(6, 2),
  45670.        Uces         decimal(6,2),
  45671.        Rabat        decimal(2,2),
  45672.        Sifra_Podg    varchar(20),
  45673.        ProcessKode    varchar(20),
  45674.        Expl            varchar(20),
  45675.        VlIzl        char(1),
  45676.        Nula            char(9),
  45677.        Godina        char(10),
  45678.        Tip            char(1),       
  45679.     ) --dbo.fn_LevoNuliStr(D.Sifra_Kup, 9)
  45680.  
  45681.  
  45682.     Set @SSQL =' Select dbo.fn_levonuli(D.sifra_kup,9) Sifra_kup, dbo.fn_VratiDatumString2(D.Datum_Dok) Datum_Dok, D.Broj_Dok, 
  45683.                 (case when S.Kolic>0 then ''N'' else ''R'' end), S.Sifra_Art, A.Nom, dbo.fn_LevoNuliStr(cast(S.Sifra_Oe as varchar(5)), 4) Sifra_Oe, 
  45684.                 Round(S.Kolic,4),Round(S.DokCena, 4),Round(S.POsn, 0),Round(S.Uces,2), ''0'' Rabat, '''' Sifra_podg, '''' ProcessKode, 
  45685.                 '''' Expl, ''G'' VlIzl, ''0'' Nula, ''01/01/1900'' Godina, ''P'' Tip
  45686.                 From Stavr S
  45687.                 Inner join Dokr D ON S.DokrID= D.DokrID
  45688.                 Inner join KatArt A ON S.Sifra_Art=A.Sifra_Art
  45689.                   Where S.VlIzl=''V''  '
  45690.  
  45691.     If @Sifra_OE Is Not Null
  45692.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_OE as Varchar(5)) + ' '
  45693.     If @Datum_Od Is Not Null
  45694.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  45695.     If @Datum_Do Is Not Null
  45696.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  45697.     If @TipDok is not null
  45698.         set @SSQL = @SSQL + ' and S.Sifra_Dok in (' + @TipDok + ') '
  45699.     set @SSQL = @SSQL + ' Order by S.Datum_Dok, S.Sifra_Oe, S.Sifra_Dok '
  45700.     print @ssql  
  45701.     
  45702.     INSERT INTO ##TmpExport 
  45703.     EXEC (@SSQL) 
  45704.     SELECT * FROM ##TmpExport 
  45705.  
  45706.  
  45707.  
  45708.  
  45709.  
  45710.  
  45711.  
  45712.  
  45713.  
  45714.  
  45715.  
  45716.  
  45717.  
  45718.  
  45719. Go
  45720. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportdeta_prodazba]'))
  45721. drop procedure [dbo].[sp_exportdeta_prodazba]
  45722.  
  45723. Go
  45724.  
  45725.  
  45726.  
  45727.  
  45728.  
  45729. CREATE                procedure sp_ExportDeta_Prodazba
  45730.     @Sifra_OE smallint = Null, 
  45731.     @Datum_Od smalldatetime,
  45732.     @Datum_Do smalldatetime,
  45733.     @TipDok varchar(100)= null
  45734. As
  45735.  
  45736.     Declare @SSQL as varchar(8000)
  45737.  
  45738.     CREATE TABLE ##TmpExport
  45739.     (  Sifra_Kup    char(9),
  45740.        Datum_Dok    char(10),
  45741.        Broj_Dok        int,
  45742.        NR            char(1),
  45743.        Sifra_Art    char(20),
  45744.        Nom             char(20),
  45745.        Sifra_Oe        char(4),
  45746.        Kolic        decimal(18,4),
  45747.        Cena         decimal(18,4),
  45748.        DDV            decimal(6,2),
  45749.        Uces         decimal(6,2),
  45750.        Rabat        decimal(2,2),
  45751.        Ime_Oper        char(4),
  45752.        Sifra_Oper    char(4),
  45753.        BrKasa        char(4),
  45754.        NacPlak        char(4),
  45755.        Tip            char(2),       
  45756.     ) --dbo.fn_LevoNuliStr(D.Sifra_Kup, 9)
  45757.  
  45758.    Set @SSQL = 'Select  ''999999999'' Sifra_kup, dbo.fn_VratiDatumString2(P.Datum_Evid) Datum_Dok, P.Broj_Ska, 
  45759.                 (case when S.Kolic>0 then ''N'' else ''R'' end) NR, S.Sifra_Art, A.Nom, dbo.fn_LevoNuliStr(cast(S.Sifra_Oe as varchar(5)), 4) Sifra_Oe, Round(S.Kolic,4),Round(S.Cena,4),Round(S.Proc_Osn, 0), 
  45760.                 Round(S.Popust,2), ''0'' Rabat, cast(O.Ime_Oper as char(4)) Ime_Oper, cast(P.Sifra_Oper as char(4)) Sifra_Oper, cast(S.BrKasa as char(4)) BrKasa, 
  45761.                 (Case when PL.Sifra_Nac=1 then ''1''  else ''2'' end) NacPLak, ''P'' Tip
  45762.                 From SPromet S
  45763.                 Inner join Promet P ON S.Sifra_Oe=P.Sifra_Oe and S.Grp_Kasa=P.Grp_Kasa and S.BrKasa=P.BrKasa and S.Broj_Ska=P.Broj_Ska
  45764.                 Inner Join PlkProm PL on S.Sifra_Oe=PL.Sifra_Oe and S.Grp_Kasa=PL.Grp_Kasa and S.BrKasa=PL.BrKasa and S.Broj_Ska=PL.Broj_Ska
  45765.                 Left Outer Join Operatori O on P.Sifra_Oper=O.Sifra_Oper
  45766.                 Left Outer Join KatArt A on A.Sifra_Art=S.Sifra_Art
  45767.                 Where 1=1 '
  45768.     If @Sifra_OE Is Not Null
  45769.         Set @SSQL = @SSQL + ' And P.Sifra_Oe = ' + cast(@Sifra_OE as Varchar(5)) + ' '
  45770.     If @Datum_Od Is Not Null
  45771.         Set @SSQL = @SSQL + ' And P.Datum_Evid >= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  45772.     If @Datum_Do Is Not Null
  45773.         Set @SSQL = @SSQL + ' And P.Datum_Evid <= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  45774.     set @SSQL = @SSQL + ' Order by P.Datum_Evid, P.Sifra_Oe'
  45775.     Print @ssql  
  45776.     INSERT INTO ##TmpExport 
  45777.     EXEC (@SSQL) 
  45778.     SELECT * FROM ##TmpExport 
  45779.  
  45780.  
  45781.  
  45782.  
  45783.  
  45784.  
  45785.  
  45786.  
  45787.  
  45788.  
  45789.  
  45790.  
  45791.  
  45792.  
  45793.  
  45794. Go
  45795. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportdnevenprometvind]'))
  45796. drop procedure [dbo].[sp_exportdnevenprometvind]
  45797.  
  45798. Go
  45799.  
  45800.  
  45801. CREATE           PROCEDURE sp_ExportDnevenPrometVind
  45802.     @Datum_Od SMALLDATETIME,
  45803.     @Datum_Do SMALLDATETIME,
  45804.     @Sif_GrOrg char(6)
  45805. AS                    --CASE WHEN K.EdMera like 'kg%' THEN round(S.Kolic,2) ELSE round(S.Kolic*K.Tezina/1000,2) END
  45806.     SELECT S.Sifra_Oe, D.Sifra_Pat, S.Datum_Dok, S.Sifra_Dok, T.ImeDok, S.Sifra_Art, Sum(S.Kolic) Kolic, SUM(S.Kolic*K.Tezina/1000) Kgr
  45807.     FROM Stavr S
  45808.     INNER JOIN Dokr D ON D.DokrID = S.DokrID
  45809.     LEFT OUTER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art
  45810.     INNER JOIN TipDok T ON S.Sifra_Dok=T.Sifra_Dok
  45811.     WHERE S.Datum_Dok>=@Datum_Od And S.Datum_Dok<=@Datum_Do And D.VlIzl='I' 
  45812.     And D.Sifra_Za='1' And D.Sifra_Kup IS NOT NULL  And S.Sifra_Oe IN 
  45813.     (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrg)
  45814.     GROUP BY S.Sifra_Oe, D.Sifra_Pat, S.Datum_Dok, S.Sifra_Dok, T.ImeDok, S.Sifra_Art
  45815.     ORDER BY S.SIfra_Oe, D.Sifra_Pat, S.Datum_Dok, S.Sifra_Dok, S.Sifra_Art
  45816.  
  45817.  
  45818.  
  45819. Go
  45820. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportdokr_sap]'))
  45821. drop procedure [dbo].[sp_exportdokr_sap]
  45822.  
  45823. Go
  45824.  
  45825.  
  45826.  
  45827. CREATE   PROCEDURE sp_ExportDokr_SAP
  45828.     @DatumOd smalldatetime,
  45829.     @DatumDo smalldatetime
  45830. AS
  45831.     IF EXISTS ( SELECT * FROM tempdb..sysobjects WHERE name='##TmpDokrSAP') 
  45832.         DROP TABLE ##TmpDokrSAP
  45833.     CREATE TABLE ##TmpDokrSAP (
  45834.         DOC_NO CHAR(20),
  45835.         ORDI_DATE CHAR(8),
  45836.         REQ_DATE CHAR(8),
  45837.         RC_TIME_TO CHAR(4),
  45838.         CUST_CODE CHAR(12),
  45839.         POS_CODE CHAR(6),
  45840.         PERSON_CODE CHAR(6),
  45841.         RC_SALES_ORG_CODE CHAR(4),
  45842.         RC_DISTR_CHANNEL_CODE CHAR(2),
  45843.         RC_SECTOR_CODE CHAR(2),
  45844.         RC_SALES_OFFICE_CODE CHAR(4),
  45845.         STOCK_CODE CHAR(8),
  45846.         RABAT1 DECIMAL(16,2),
  45847.         RABAT2 DECIMAL(16,2),
  45848.         ORDI_NOTE CHAR(255)
  45849.     )
  45850. CREATE TABLE #TmpDok
  45851. (Sifra_Oe    smallint,
  45852. Sifra_Dok    smallint,
  45853. Broj_Dok    int,
  45854. UcesOsn        decimal(16,2),
  45855. UcesKol        decimal(16,2))
  45856. INSERT INTO #TmpDok (Sifra_OE, Sifra_Dok, Broj_Dok, UcesOSn, UcesKol)
  45857. SELECT Sifra_Oe, Sifra_Dok, Broj_Dok, 0,0 FROM Dokr WHERE Datum_Dok>=@DatumOd AND Datum_Dok<=@DatumDo
  45858. UPDATE #TmpDok SET UcesOsn=S.UcesOsn/100, UcesKol=S.UcesKol/100 FROM Stavr S 
  45859. WHERE #TmpDok.Sifra_OE=S.Sifra_OE AND #TmpDok.Sifra_Dok=S.Sifra_Dok AND #TmpDok.Broj_Dok=S.Broj_Dok
  45860.     INSERT INTO ##TmpDokrSAP (DOC_NO, ORDI_DATE, REQ_DATE, RC_TIME_TO, CUST_CODE, POS_CODE, PERSON_CODE,
  45861.                               RC_SALES_ORG_CODE, RC_DISTR_CHANNEL_CODE, RC_SECTOR_CODE, RC_SALES_OFFICE_CODE,
  45862.                               STOCK_CODE,    RABAT1, RABAT2,    ORDI_NOTE)
  45863.     SELECT CAST(D.Sifra_OE AS CHAR(3)) + '-' + CAST(D.Sifra_Dok AS CHAR(3)) + '/' + CAST(D.Broj_Dok AS CHAR(6)), 
  45864.            dbo.fn_VratiGodMesDenBas(D.Datum_Dok), dbo.fn_VratiGodMesDenBas(D.Datum_Dok), '1200', 
  45865.            D.Sifra_Kup + (CASE WHEN D.Sifra_Pat IS NULL Then '' ELSE KO.Star_Kup END), (CASE WHEN D.Sifra_Pat IS NULL Then '' ELSE KO.Star_Kup END),
  45866.            P.Sifra_Pat_SAP, O.Sifra_OE_SAP, 'BR', '01', 'MK01',P.Sifra_Pat_SAP, S.UcesOsn, S.UcesKol,D.Identif_Br 
  45867.     FROM Dokr D LEFT OUTER JOIN KObjekti KO ON D.Sifra_Kup=KO.Sifra_Kup AND D.Sifra_Obj=KO.Sifra_Obj
  45868.     LEFT OUTER JOIN Patnici P ON D.Sifra_Pat=P.Sifra_Pat 
  45869.     INNER JOIN #TmpDok S ON S.Sifra_OE=D.Sifra_OE AND S.Sifra_Dok=D.Sifra_Dok AND S.Broj_Dok=D.Broj_Dok
  45870.     INNER JOIN OrgEd O ON D.Sifra_OE=O.Sifra_OE WHERE D.Datum_Dok>=@DatumOd AND D.Datum_Dok<=@DatumDo
  45871.     SELECT * FROM ##TmpDokrSAP
  45872.  
  45873.  
  45874.  
  45875.  
  45876.  
  45877. Go
  45878. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportdokrnaracimp]'))
  45879. drop procedure [dbo].[sp_exportdokrnaracimp]
  45880.  
  45881. Go
  45882.  
  45883.  
  45884. CREATE        PROCEDURE sp_ExportDokrNaracIMP
  45885.     @DatumOd SMALLDATETIME,
  45886.     @DatumDo SMALLDATETIME,
  45887.     @PratiSiteDok CHAR(1) = 'N'
  45888. AS
  45889.  
  45890. IF EXISTS (SELECT * FROM tempdb..sysobjects WHERE name='##TmpHdr') DROP TABLE ##TmpHDR
  45891.  
  45892. CREATE TABLE ##tmpHDR
  45893. (
  45894.     DokrID INT,
  45895.     TipDok VARCHAR(3),
  45896.     Broj_Dok SMALLINT,
  45897.     Firma SMALLINT,
  45898.     Sifra_Oe SMALLINT,
  45899.     Datum_Dok VARCHAR(20),
  45900.     Vreme_Dok VARCHAR(20),
  45901.     Rok SMALLINT,
  45902.     Sifra_Pat SMALLINT,
  45903.     Komint VARCHAR(20),
  45904.     Sifra_Obj SMALLINT,
  45905.     Toc200 DECIMAL(18,4),
  45906.     Prenesen CHAR(1),
  45907.     Identif_Br VARCHAR(25)
  45908. )
  45909.  
  45910. INSERT INTO ##tmpHDR (DokrID, TipDok, Broj_Dok, Firma, Sifra_Oe, Datum_Dok, Vreme_Dok, 
  45911.                       Rok, Sifra_Pat, Komint, Sifra_Obj, Toc200, Prenesen, Identif_Br)
  45912. SELECT D.DokrID, ( CASE WHEN D.Sifra_Dok=81 THEN 'FD0'
  45913.                          WHEN D.Sifra_Dok=82 THEN 'FM0'
  45914.                          WHEN D.SIfra_Dok=83 THEN 'FD1'
  45915.                          WHEN D.Sifra_Dok=84 THEN 'FM1'
  45916.                          WHEN D.Sifra_Dok=86 THEN 'FD2'
  45917.                          WHEN D.SIfra_Dok=87 THEN 'FD3'
  45918.                          WHEN D.Sifra_Dok=88 THEN 'FM2'
  45919.                  END) AS TipDok, D.Broj_Dok, 114 AS Firma, D.Sifra_Oe, CAST(YEAR(D.Datum_Dok) AS VARCHAR(4)) + '-'
  45920.        + ( CASE WHEN MONTH(D.Datum_Dok) < 10 THEN '0' ELSE '' END ) + CAST (MONTH(D.Datum_Dok) AS VARCHAR(2)) + '-' 
  45921.        + ( CASE WHEN DAY(D.Datum_Dok) < 10 THEN '0' ELSE '' END ) + CAST (DAY(D.Datum_Dok) AS VARCHAR(2)) AS Datum_Dok,
  45922.        (CASE WHEN DATEPART(HH, D.Datum_Vnes) < 10 THEN '0' ELSE '' END ) + CAST(DATEPART(HH, D.Datum_Vnes) AS 
  45923. Varchar(2)) + '-' +
  45924.        (CASE WHEN DATEPART(MM, D.Datum_Vnes) < 10 THEN '0' ELSE '' END ) + CAST(DATEPART(MM, D.Datum_Vnes) AS 
  45925. Varchar(2)) + '-' +
  45926.        (CASE WHEN DATEPART(SS, D.Datum_Vnes) < 10 THEN '0' ELSE '' END ) + CAST(DATEPART(SS, D.Datum_Vnes) AS 
  45927. Varchar(2))
  45928.     AS Vreme_Dok, D.Rok, D.Sifra_Pat, K.Alt_ImeKup AS Komint, D.Sifra_Obj, D.Toc200, D.Prenesen, D.Identif_Br
  45929. FROM Dokr D
  45930. LEFT OUTER JOIN Komint K ON D.Sifra_Kup = K.Sifra_Kup
  45931. WHERE D.Datum_Dok>=@DatumOd AND D.Datum_Dok<=@DatumDo
  45932.  
  45933. IF @PratiSiteDok <> 'D'
  45934.     DELETE FROM ##tmpHdr WHERE Prenesen IS NOT NULL AND Prenesen = 'D'
  45935.  
  45936. SELECT DokrID, TipDok, Broj_Dok, Firma, Sifra_Oe, Datum_Dok, 
  45937.        Vreme_Dok, Rok, Sifra_Pat, Komint, Sifra_Obj, Toc200, Identif_Br FROM ##tmpHDR
  45938.  
  45939.  
  45940.  
  45941.  
  45942. Go
  45943. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportfaktplivaxml]'))
  45944. drop procedure [dbo].[sp_exportfaktplivaxml]
  45945.  
  45946. Go
  45947.  
  45948. CREATE  procedure sp_ExportFaktPlivaXml
  45949.     @Sifra_Kup varchar(6),
  45950.     @Sifra_Oe smallint= null,
  45951.     @Sifra_Dok smallint= null,
  45952.     @BrDokOd int= null,
  45953.     @BrDokDo int= null,
  45954.     @Datum_Od smalldatetime= null,
  45955.     @Datum_Do smalldatetime= null
  45956.  
  45957. As 
  45958.  
  45959.     Declare @SSQL as varchar(5000)
  45960.     Set @SSQL=' SELECT Sifra_Art,
  45961.         Case WHEN DanDokCena=''D'' Then DokCena Else Round(DokCena*(1+Posn/100),6) End Cena,
  45962.         Kolic, Uces, Sifra_Oe, Sifra_Dok, Broj_Dok, Rbr, Datum_Dok,
  45963.         Case WHEN DanDokCena=''D'' Then DokCena*(1-Uces/100)/(1+POsn/100)*POsn/100 Else DokCena*(1-uces/100) * POsn/100 End ddv, 
  45964.                 case when KOntrSer is null then '''' else substring(KontrSer, 7, 2)+''-''+substring(KontrSer, 4, 2)+''-''+substring(KontrSer, 12, 2) end KontrSer
  45965.                 FROM Stavr 
  45966.                 WHERE DokrID IN (SELECT DokrID FROM Dokr WHERE Sifra_Kup='''+ @SifRA_Kup +''' AND VlIzl=''I'' '
  45967.     If @Sifra_Oe is not null
  45968.         Set @SSQL=@SSQL+ ' AND Sifra_OE=' +cast(@Sifra_Oe as varchar(3))+ ' '
  45969.     If @Sifra_Dok is not null
  45970.         Set @SSQL=@SSQL+ ' AND Sifra_Dok=' +cast(@Sifra_Dok as varchar(3))+ ' '
  45971.     If @BrDokOd is not null
  45972.         Set @SSQL=@SSQL+ ' AND Broj_Dok>=' +cast(@BrDokOd as varchar(10))+ ' '  
  45973.     If @BrDokDo is not null
  45974.         Set @SSQL=@SSQL+ ' AND Broj_Dok<=' +cast(@BrDokDo as varchar(10))+ ' '         
  45975.     If @Datum_Od Is Not Null
  45976.         Set @SSQL = @SSQL + ' And Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  45977.     If @Datum_Do Is Not Null
  45978.         Set @SSQL = @SSQL + ' And Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  45979.  
  45980.     set @SSQL  = @SSQL + ' )'
  45981.  
  45982.     exec(@SSQL)
  45983.  
  45984.  
  45985.  
  45986.  
  45987. Go
  45988. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportirajzaliha]'))
  45989. drop procedure [dbo].[sp_exportirajzaliha]
  45990.  
  45991. Go
  45992. CREATE procedure sp_ExportirajZaliha
  45993.     @Sifra_oe smallint = null,
  45994.     @Datum smalldatetime = null
  45995. As
  45996.     Create table ##TmpExpZal
  45997.     (Opis varchar(50))
  45998.  
  45999.  
  46000.     Insert Into ##TmpExpZal (Opis)
  46001.     Select case when (K.Nom is not null or K.Nom='') then cast (K.Nom as char(17)) else cast(dbo.fn_Nom(S.Sifra_Art) as char(17)) end 
  46002.     + cast(cast(round(sum(S.Vlez-S.Izlez), 0)as integer) as varchar(20))
  46003.     From Soart S
  46004.     Inner Join KatArt K on S.Sifra_Art=K.Sifra_Art
  46005.     Where (K.Nom is not null or K.Nom='')and S.Sifra_Oe=@Sifra_Oe and S.Vlez-S.Izlez>0 and dbo.fn_Nom(S.Sifra_Art)<>''
  46006.     Group by K.Nom, S.Sifra_Art
  46007.  
  46008.     Select * from ##TmpExpZal
  46009.  
  46010.  
  46011. Go
  46012. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportmaticnivind]'))
  46013. drop procedure [dbo].[sp_exportmaticnivind]
  46014.  
  46015. Go
  46016. CREATE procedure sp_ExportMaticniVind
  46017.     @Patnici as char(2)=null,
  46018.     @KatArt as char(2)=null,
  46019.     @TipDok as char(2)=null,
  46020.     @Orged as char(2)=null
  46021. as
  46022.  
  46023.     if @Patnici is not null
  46024.         select cast(dbo.fn_LevoNuli(Sifra_Pat, 4) as char(4)), cast(ImePat as char(30)) from Patnici
  46025.     if @KatArt is not null
  46026.         select substring(Sifra_Art,2,5),  cast(ImeArt as char(30)) from KatArt
  46027.     if @TipDok is not null
  46028.         select cast(dbo.fn_LevoNuli(Sifra_Dok, 3) as char(3)), cast(ImeDok as char(30)) from TipDok
  46029.     if @Orged is not null
  46030.         select cast(dbo.fn_LevoNuli(Sifra_Oe, 3) as char(3)), cast(ImeOrg as char(30))  from Orged
  46031.     
  46032.  
  46033.  
  46034. Go
  46035. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportpliva]'))
  46036. drop procedure [dbo].[sp_exportpliva]
  46037.  
  46038. Go
  46039.  
  46040. CREATE      procedure sp_ExportPliva
  46041.  
  46042.     @Sifra_OE smallint = Null, 
  46043.     @Datum_Od smalldatetime,
  46044.     @Datum_Do smalldatetime,
  46045.     @Kurs decimal(18, 2) = 1,
  46046.     @TipDok_Mat varchar(100) = Null,
  46047.     @TipDok_Fin varchar(100) = Null
  46048.  
  46049. As
  46050.  
  46051.     Declare @SSQL as varchar(8000)
  46052.  
  46053.     CREATE TABLE #LinFakt
  46054.     (  BrDokCel varchar(20),
  46055.        Rbr      smallint,
  46056.        DatSpec  varchar(20),
  46057.        PVJ        varchar(10),
  46058.        KodFirma varchar(10),
  46059.        Sifra_Art varchar(20),
  46060.        Zemja    varchar(10),
  46061.        Sifra_Kup char(6),
  46062.        ImeKup    varchar(100),
  46063.        Kolic    decimal (18, 6),
  46064.        Valuta   chaR(3),
  46065.            Vr_Pred_Rabat_Bez_DDV decimal(18, 4),
  46066.            Vr_Rabat_Bez_DDV decimal(18, 4),
  46067.            Vr_Pred_Rabat_Bez_DDV_Val decimal(18, 4),
  46068.            Vr_Rabat_Bez_DDV_Val decimal(18, 4)
  46069.     )
  46070.  
  46071. --------------------------------materijalni dokumenti-----------------------------------------------------
  46072.  
  46073.     Set @SSQL = 'Select cast(D.Sifra_Oe as varchar(5)) + ''-'' + cast(D.SIfra_DOk as varchar(5)) +
  46074.             ''/'' + cast(D.Broj_Dok as varchar(9)) as BrDokCel, 
  46075.         S.Rbr, dbo.fn_VratiDatumStringObratnoPoc(S.Datum_Dok) DatSpec, ''PVJ'' as PVJ, ''758'' as KodFirma,
  46076.         dbo.fn_LevoNuliStr(S.Sifra_Art, 18), 
  46077.         ''MK'' as Zemja, D.Sifra_Kup, K.ImeKup, S.Kolic, ''MKD'' Valuta, 
  46078.         Round(dbo.fn_vr_osnov(S.Kolic, S.DokCena, S.DanDokCena, S.POsn), 2) as Vr_Pred_Rabat_Bez_DDV, 
  46079.         (Round(dbo.fn_VratiRabatBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces), 2)*-1) as Vr_Rabat_Bez_DDV, 
  46080.         Round(dbo.fn_vr_osnov(S.Kolic, S.DokCena, S.DanDokCena, S.POsn) / ' + cast (@Kurs as varchar(30)) + ', 2) as Vr_Pred_Rabat_Bez_DDV_Val, 
  46081.         (Round(dbo.fn_VratiRabatBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces) / ' + cast (@Kurs as varchar(30)) + ', 2)*-1) as Vr_Rabat_Bez_DDV_Val
  46082.         From Stavr S
  46083.         Inner join Dokr D ON S.DokrID= D.DokrID
  46084.         Left outer join Komint K on  D.Sifra_Kup= K.Sifra_Kup
  46085.         Where 1 = 1 '
  46086.  
  46087.     if @TipDok_Mat is not null
  46088.         set @SSQL = @SSQL + ' and S.Sifra_Dok in (' + @TipDok_Mat + ') '
  46089.  
  46090.     If @Sifra_OE Is Not Null
  46091.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_OE as Varchar(5)) + ' '
  46092.     If @Datum_Od Is Not Null
  46093.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  46094.     If @Datum_Do Is Not Null
  46095.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  46096.  
  46097. -------------------------------------------finansiski dokumenti---------------------------------------------
  46098.     Set @SSQL = @SSQL + ' UNION '
  46099.  
  46100.     Set @SSQL = @SSQL + ' Select cast(A.Sifra_Oe as varchar(5)) + ''-'' + cast(A.SIfra_DOk as varchar(5)) +
  46101.             ''/'' + cast(A.Broj_Dok as varchar(9)) as BrDokCel, 
  46102.         1, dbo.fn_VratiDatumStringObratnoPoc(A.Datum_Dok) DatSpec, ''PVJ'' as PVJ, ''758'' as KodFirma, '''' as Sifra_Art, 
  46103.             ''MK'' as Zemja, A.Sifra_Kup, K.ImeKup, 1, ''MKD'' Valuta, 
  46104.             (case when A.Dolzi <> 0 then A.Dolzi - A.Danok1 - A.Danok2 else - (A.Pobaruva - A.Danok1 - A.Danok2) end) as Vr_Pred_Rabat_Bez_DDV, 
  46105.         0 as Vr_Rabat_Bez_DDV, 
  46106.         Round((case when A.Dolzi <> 0 then A.Dolzi - A.Danok1 - A.Danok2 else - (A.Pobaruva - A.Danok1 - A.Danok2) end)
  46107.              / ' + cast (@Kurs as varchar(30)) + ', 2) as Vr_Pred_Rabat_Bez_DDV_Val,
  46108.         0 as Vr_Rabat_Bez_DDV_Val
  46109.         FROM AnFinDok A 
  46110.             Left outer join Komint K on  A.Sifra_Kup= K.Sifra_Kup
  46111.             Where 1 = 1 '
  46112.  
  46113.     if @TipDok_Fin is not null
  46114.         set @SSQL = @SSQL + ' and A.Sifra_Dok in (' + @TipDok_Fin + ') '
  46115.  
  46116.     If @Sifra_OE Is Not Null
  46117.         Set @SSQL = @SSQL + ' And A.Sifra_Oe = ' + cast(@Sifra_OE as Varchar(5)) + ' '
  46118.     If @Datum_Od Is Not Null
  46119.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  46120.     If @Datum_Do Is Not Null
  46121.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  46122.  
  46123. print @ssql  
  46124.     Insert into #LinFakt Exec (@SSQL) 
  46125.  
  46126.     select *
  46127.     from #LinFakt
  46128.  
  46129. Go
  46130. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportstavr_sap]'))
  46131. drop procedure [dbo].[sp_exportstavr_sap]
  46132.  
  46133. Go
  46134.  
  46135. CREATE  PROCEDURE sp_ExportStavr_SAP
  46136.     @DatumOd smalldatetime,
  46137.     @DatumDo smalldatetime
  46138. AS
  46139.         SELECT CAST(S.Sifra_OE AS CHAR(3)) + '-' + CAST(S.Sifra_Dok AS CHAR(3)) + '/' + CAST(S.Broj_Dok AS CHAR(6)) AS DOC_NO,
  46140.                 S.Sifra_Art AS ASSORT_CODE, K.EdMera AS UM_CODE, S.Kolic AS AMOUNT FROM Stavr S
  46141.                 INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art
  46142.     WHERE Datum_Dok>=@DatumOd AND Datum_Dok<=@DatumDo
  46143.  
  46144.  
  46145.  
  46146. Go
  46147. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportstavrstanaracimp]'))
  46148. drop procedure [dbo].[sp_exportstavrstanaracimp]
  46149.  
  46150. Go
  46151.  
  46152. CREATE    PROCEDURE sp_ExportStavrStaNaracIMP
  46153.     @DatumOd SMALLDATETIME,
  46154.     @DatumDo SMALLDATETIME,
  46155.     @PratiSiteDok CHAR(1) = 'N'
  46156. AS
  46157.     IF EXISTS (SELECT * FROM tempdb..sysobjects WHERE name='##TmpStavki') DROP TABLE ##TmpStavki
  46158.     
  46159.     CREATE TABLE ##tmpStavki
  46160.     (
  46161.         DokrID INT,
  46162.         TipDok VARCHAR(3),
  46163.         Broj_Dok SMALLINT,
  46164.         Firma SMALLINT,
  46165.         Sifra_Oe SMALLINT,
  46166.         Sifra_Art VARCHAR(20),
  46167.         Kolic DECIMAL(18,6),
  46168.         Znak CHAR(1),
  46169.         Cena DECIMAL(18, 6),
  46170.         DDV DECIMAL(6, 2),
  46171.         Rabat DECIMAL(6, 2),
  46172.         Prenesen CHAR(1)
  46173.     )
  46174.  
  46175.     INSERT INTO ##tmpStavki (DokrID, TipDok, Broj_Dok, Firma, Sifra_Oe, Sifra_Art, Kolic, Znak, Cena, DDV, Rabat, Prenesen)
  46176.     SELECT S.DokrID, ( CASE WHEN S.Sifra_Dok=81 THEN 'FD0'
  46177.                             WHEN S.Sifra_Dok=82 THEN 'FM0'
  46178.                             WHEN S.SIfra_Dok=83 THEN 'FD1'
  46179.                             WHEN S.Sifra_Dok=84 THEN 'FM1'
  46180.                             WHEN D.Sifra_Dok=86 THEN 'FD2'
  46181.                             WHEN D.SIfra_Dok=87 THEN 'FD3'
  46182.                             WHEN D.Sifra_Dok=88 THEN 'FM2'
  46183.                      END) AS TipDok, S.Broj_Dok, 114 AS Firma, S.Sifra_Oe, S.Sifra_Art, S.Kolic, 1 AS Znak,
  46184.           (CASE WHEN S.DanDokCena='D' THEN S.DokCena ELSE ROUND((S.DokCena)/((1 + S.POsn)/100), 2) END) AS Cena,
  46185.           S.Posn AS DDV, S.Uces AS Rabat, D.Prenesen
  46186.     FROM Stavr S
  46187.     INNER JOIN Dokr D ON D.DokrID = S.DokrID
  46188.     WHERE D.Datum_Dok>=@DatumOd AND D.Datum_Dok<=@DatumDo
  46189.  
  46190.     IF @PratiSiteDok <> 'D'
  46191.         DELETE FROM ##tmpStavki WHERE Prenesen IS NOT NULL AND Prenesen = 'D'
  46192.  
  46193.     SELECT DokrID, TipDok, Broj_Dok, Firma, Sifra_Oe, Sifra_Art, 
  46194.            Kolic, Znak, Cena, DDV, Rabat
  46195.     FROM ##tmpStavki
  46196.  
  46197.  
  46198.  
  46199. Go
  46200. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportstavrstanaracsap]'))
  46201. drop procedure [dbo].[sp_exportstavrstanaracsap]
  46202.  
  46203. Go
  46204.  
  46205.  
  46206.  
  46207.  
  46208.  
  46209. CREATE      PROCEDURE sp_ExportStavrStaNaracSAP
  46210.     @DatumOd SMALLDATETIME,
  46211.     @DatumDo SMALLDATETIME,
  46212.     @ImaHeader AS CHAR(1) = 'D',
  46213.     @PratiSiteDok CHAR(1) = 'N'
  46214. AS
  46215.     IF EXISTS (SELECT * FROM tempdb..sysobjects WHERE name='##TmpItmSAP') DROP TABLE ##TmpItmSAP
  46216.     
  46217.     CREATE TABLE ##TmpItmSAP (
  46218.         BROJ_DOK     VARCHAR(50), 
  46219.         ARTIKL         VARCHAR(20),
  46220.         JM         VARCHAR(20),
  46221.         KOLICINA    VARCHAR(20),
  46222.         BRUTO_CENA    VARCHAR(20),
  46223.         PLAC_RABAT    VARCHAR(20),
  46224.         KOL_RABAT    VARCHAR(20),
  46225.         UGOVOR        VARCHAR(20),
  46226.         AKCIJA        VARCHAR(20),
  46227.         NETO_CENA    VARCHAR(20),
  46228.         KASA        VARCHAR(20),
  46229.         DDV        VARCHAR(20),
  46230.         SINH        CHAR(1)
  46231.     )
  46232.  
  46233. -- HEADER-----------------------------------------------------------------------------------------------------
  46234. IF @ImaHeader = 'D' 
  46235. INSERT INTO ##TmpItmSAP (BROJ_DOK, ARTIKL, JM, KOLICINA, BRUTO_CENA, PLAC_RABAT, 
  46236.              KOL_RABAT, UGOVOR, AKCIJA, NETO_CENA, KASA, DDV)
  46237. VALUES ('BROJ_DOK', 'ARTIKL', 'JM', 'KOLICINA', 'BRUTO_CENA', 'PLAC_RABAT', 
  46238.     'KOL_RABAT', 'UGOVOR', 'AKCIJA', 'NETO_CENA', 'KASA', 'DDV')
  46239.  
  46240. -- STAVR -----------------------------------------------------------------------------------------------------
  46241. INSERT INTO ##TmpItmSAP (BROJ_DOK, ARTIKL, JM, KOLICINA, BRUTO_CENA, PLAC_RABAT, 
  46242.              KOL_RABAT, UGOVOR, AKCIJA, NETO_CENA, KASA, DDV, SINH)
  46243.  
  46244. SELECT   P.Sifra_Pat_SAP + '/' + (CASE WHEN S.Sifra_Dok=81 THEN 'A' WHEN S.Sifra_Dok=82 THEN 'G' END) 
  46245.     +CAST(S.Sifra_Oe AS VARCHAR(10))+'-'+ CAST(S.Sifra_Dok AS VARCHAR(10))+'/'+ CAST(S.Broj_Dok AS VARCHAR(10)) AS BROJ_DOK,
  46246.     S.Sifra_Art AS ARTIKL,
  46247.     K.EdMera AS JM,
  46248.     CAST(CAST(ROUND(S.Kolic, 3) AS NUMERIC(10,3)) AS VARCHAR(20)) AS KOLICINA,
  46249.     CAST(CAST(ROUND(S.DokCena, 2) AS NUMERIC(8,2)) AS VARCHAR(20)) AS BRUTO_CENA,
  46250.     CAST(CAST(ROUND(S.UcesOsn/100, 2) AS NUMERIC(5,2)) AS VARCHAR(20)) AS PLAC_RABAT,
  46251.     CAST(CAST(ROUND(S.UcesKol/100, 2) AS NUMERIC(5,2)) AS VARCHAR(20)) AS KOL_RABAT,
  46252.     '' AS UGOVOR,
  46253.     CAST(CAST(ROUND(S.UcesDod/100, 2) AS NUMERIC(5,2)) AS VARCHAR(20)) AS AKCIJA,
  46254.     CAST(CAST(ROUND((S.DokCena/(1+(S.POsn/100))*(1-(S.Uces/100))), 2) AS NUMERIC(8,2)) AS VARCHAR(20)) AS NETO_CENA,
  46255.     '' AS KASA,
  46256.     S.POsn AS DDV,
  46257.     D.Prenesen AS SINH
  46258. FROM Stavr S
  46259. INNER JOIN Dokr D ON D.DokrID = S.DokrID
  46260. LEFT OUTER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art
  46261. LEFT OUTER JOIN Patnici P ON P.Sifra_Pat = D.Sifra_Pat
  46262. WHERE S.Datum_Dok>=@DatumOd AND S.Datum_Dok<=@DatumDo
  46263.  
  46264. -- STANARAC -----------------------------------------------------------------------------------------------------
  46265. INSERT INTO ##TmpItmSAP (BROJ_DOK, ARTIKL, JM, KOLICINA, BRUTO_CENA, PLAC_RABAT, 
  46266.              KOL_RABAT, UGOVOR, AKCIJA, NETO_CENA, KASA, DDV, SINH)
  46267.  
  46268. SELECT  P.Sifra_Pat_SAP + '/' + 'N' + CAST(S.Sifra_Oe AS VARCHAR(10)) + '-' + CAST(S.Sifra_Nar AS VARCHAR(10)) + '/' + CAST(S.Broj_Nar AS VARCHAR(10)) AS BROJ_DOK,
  46269.     S.Sifra_Art AS ARTIKL,
  46270.     K.EdMera AS JM,
  46271.     CAST(CAST(ROUND(S.Kolic, 3) AS NUMERIC(10,3)) AS VARCHAR(20)) AS KOLICINA,
  46272.     CAST(CAST(ROUND(S.DokCena, 2) AS NUMERIC(8,2)) AS VARCHAR(20)) AS BRUTO_CENA,
  46273.     CAST(CAST(ROUND(S.UcesOsn/100, 2) AS NUMERIC(5,2)) AS VARCHAR(20)) AS PLAC_RABAT,
  46274.     CAST(CAST(ROUND(S.UcesKol/100, 2) AS NUMERIC(5,2)) AS VARCHAR(20)) AS KOL_RABAT,
  46275.     '' AS UGOVOR,
  46276.     CAST(CAST(ROUND(S.UcesDod/100, 2) AS NUMERIC(5,2)) AS VARCHAR(20)) AS AKCIJA,
  46277.     CAST(CAST(ROUND((S.DokCena/(1+(S.POsn/100))*(1-(S.Uces/100))), 2) AS NUMERIC(8,2)) AS VARCHAR(20)) AS NETO_CENA,
  46278.     '' AS KASA,
  46279.     S.POsn AS DDV,
  46280.     N.Prenesen AS SINH
  46281. FROM StaNarac S
  46282. INNER JOIN Naracki N ON S.NarID = N.NarID
  46283. LEFT OUTER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art
  46284. LEFT OUTER JOIN Patnici P ON N.Sifra_Pat = P.Sifra_Pat
  46285. WHERE N.Datum_Nar>=@DatumOd AND N.Datum_Nar<=@DatumDo
  46286.  
  46287. IF @PratiSiteDok <> 'D'
  46288.     DELETE FROM ##TmpItmSAP WHERE SINH IS NOT NULL AND SINH = 'D'
  46289.  
  46290. DELETE FROM ##TmpItmSap WHERE BROJ_DOK IS NULL OR BROJ_DOK = ''
  46291.  
  46292. SELECT BROJ_DOK, ARTIKL, JM, KOLICINA, BRUTO_CENA, PLAC_RABAT, 
  46293.     KOL_RABAT, UGOVOR, AKCIJA, NETO_CENA, KASA, DDV FROM ##TmpItmSAP
  46294.  
  46295.  
  46296.  
  46297.  
  46298.  
  46299.  
  46300.  
  46301. Go
  46302. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_exportstavrstanaracvind]'))
  46303. drop procedure [dbo].[sp_exportstavrstanaracvind]
  46304.  
  46305. Go
  46306.  
  46307. CREATE       PROCEDURE sp_ExportStavrStaNaracVind
  46308.     @DatumOd SMALLDATETIME,
  46309.     @DatumDo SMALLDATETIME,
  46310.     @ImaHeader AS CHAR(1) = 'N',
  46311.     @SIfra_Oe smallint
  46312. AS
  46313.     IF EXISTS (SELECT * FROM tempdb..sysobjects WHERE name='##TmpItmVIND') DROP TABLE ##TmpItmVIND
  46314.     
  46315.     CREATE TABLE ##TmpItmVIND (
  46316.         DATD  varchar(8) ,
  46317.         DRZ varchar(2),
  46318.         KP varchar(3),
  46319.         OJ char(3),
  46320.         REL char(4),
  46321.         SIFF char(5),
  46322.         PROD char(3),
  46323.         VS char(3),
  46324.         O char(1),
  46325.         VKL char(3),
  46326.         IDENT char(5),
  46327.         KG char(11),
  46328.         KOL char(11)
  46329.     )                                                                  
  46330.  
  46331.  --HEADER-----------------------------------------------------------------------------------------------------
  46332. IF @ImaHeader = 'D' 
  46333. INSERT INTO ##TmpItmVIND (DATD, DRZ, KP, OJ, REL, SIFF, PROD, VS, O, VKL, IDENT, KG, KOL)
  46334. VALUES ('DATD', 'DRZ', 'KP', 'OJ', 'REL', 'SIFF', 'PROD', 'VS', 'O', 'VKL', 'IDENT', 'KG', 'KOL')
  46335.  
  46336. -- STAVR -----------------------------------------------------------------------------------------------------
  46337. INSERT INTO ##TmpItmVIND (DATD, DRZ, KP, OJ, REL, SIFF, PROD,  VS, O, VKL, IDENT, KG, KOL)
  46338. SELECT  dbo.fn_VratiDatumStringObratno(S.Datum_Dok),'04', '000', cast(S.Sifra_Oe as varchar(3)),cast(P.Sifra_Pat as char(4)),
  46339.     substring(D.Sifra_Kup,2,5), dbo.fn_LevoNuli(D.Sifra_Obj, 3),dbo.fn_LevoNuli(S.Sifra_Dok,3) ,'0','000',
  46340.     substring(S.Sifra_Art,2,5), 
  46341.     cast(cast((CASE WHEN K.EdMera like 'kg%' THEN round(S.Kolic,2) 
  46342.     ELSE round(S.Kolic*K.Tezina/1000,2) END) as decimal(8,2)) as char(11)),
  46343.     cast(cast(round(S.Kolic,2) as decimal(8,2)) as char(11))
  46344. FROM Stavr S
  46345. INNER JOIN Dokr D ON D.DokrID = S.DokrID
  46346. LEFT OUTER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art
  46347. LEFT OUTER JOIN Komint P ON P.Sifra_Kup = D.Sifra_Kup
  46348. WHERE S.Datum_Dok>=@DatumOd AND S.Datum_Dok<=@DatumDo and S.Sifra_Oe=@SIfra_Oe and D.VlIzl='I' and D.Sifra_Za='1' AND D.Sifra_Kup IS NOT NULL
  46349.  
  46350. update ##TmpItmVIND set OJ= dbo.fn_LevoNuli(OJ,3)
  46351. update ##TmpItmVIND set REL= dbo.fn_LevoNuli(REL,4)
  46352. update ##TmpItmVIND set KG= replace(KG, '.', ',') 
  46353. update ##TmpItmVIND set KOL= replace(KOL, '.', ',') 
  46354. update ##TmpItmVIND set KG= dbo.fn_LevoNuliStr(KG, 11) 
  46355. update ##TmpItmVIND set KOL= dbo.fn_LevoNuliStr(KOL, 11) 
  46356. update ##TmpItmVIND set PROD=(case when Prod is not null then Prod else '000'end)
  46357. update ##TmpItmVIND set SIFF=(case when SIFF is not null then SIFF else '00000'end)
  46358. update ##TmpItmVIND set REL=(case when REL is not null then REL else '0000'end)
  46359.  
  46360. SELECT distinct KP,OJ FROM ##TmpItmVIND
  46361. SELECT DATD, DRZ, KP, OJ, REL, SIFF, PROD, VS, O, VKL, IDENT, KG, KOL FROM ##TmpItmVIND
  46362.  
  46363.  
  46364.  
  46365.  
  46366. Go
  46367. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_expprodazbaneilsen]'))
  46368. drop procedure [dbo].[sp_expprodazbaneilsen]
  46369.  
  46370. Go
  46371.  
  46372.  
  46373.  
  46374.  
  46375.  
  46376. CREATE            PROCEDURE [dbo].[sp_ExpProdazbaNeilsen]
  46377.     @KoiOE    Varchar(800) = Null,
  46378.     @Datum_Od    Smalldatetime = Null,
  46379.     @Datum_Do    Smalldatetime = Null
  46380. AS
  46381.     Declare @SSQL       varchar(8000)
  46382.     Declare @StartDate char(8)
  46383.     Declare @EndDate   char(8)
  46384.     SET @StartDate = dbo.fn_VratiGodMesDenBas(@Datum_Od) 
  46385.     SET @EndDate = dbo.fn_VratiGodMesDenBas(@Datum_Do) 
  46386.     CREATE TABLE #TmpOE
  46387. (    Sifra_Oe    smallint)
  46388. SET @SSQL = 'SELECT Sifra_Oe FROM OrgEd WHERE Sifra_Oe IN (' + @KoiOE + ') '
  46389. INSERT INTO #TmpOE EXEC (@SSQL)
  46390.     CREATE      TABLE ##Prodazba        
  46391. (    ChainCode    varchar(30),
  46392.     ShopCode    smallint,
  46393.     GrpCode        varchar(6),
  46394.     GrpName        varchar(40),
  46395.     BarCode        varchar(50),
  46396.     InCode        varchar(20),
  46397.     BarName        varchar(40),
  46398.     SalesItem    decimal(10,2),
  46399.     Price        decimal(13,2),
  46400.     SalesAmount    decimal(13,2),
  46401.     StartDate    char(8),
  46402.     EndDate        char(8))
  46403.     CREATE TABLE #SiteBarKod
  46404. (    ABarBroj    int,
  46405.     Sifra_Art    varchar(20),
  46406.     Nom            varchar(50),
  46407.     Ind            char(1))
  46408.     CREATE TABLE #TmpABar
  46409. (    ABarBroj    int,
  46410.     Sifra_Art    varchar(20),
  46411.     Nom            varchar(50))
  46412.     INSERT INTO #SiteBarKod (ABarBroj, Sifra_Art, Nom, Ind)
  46413.     SELECT ABarBroj, Sifra_Art, Nom, '' FROM ABarKod WHERE upper(substring(Nom,1,1)) <> 'X' AND len(ltrim(rtrim(Nom)))>=8 AND len(ltrim(rtrim(Nom)))<=13
  46414.     DELETE FROM #SiteBarKod WHERE PATINDEX ('%?%', Nom)>0
  46415.     DELETE FROM #SiteBarKod WHERE PATINDEX ('%/%', Nom)>0
  46416.     DELETE FROM #SiteBarKod WHERE PATINDEX ('%+%', Nom)>0
  46417.     DELETE FROM #SiteBarKod WHERE PATINDEX ('%*%', Nom)>0
  46418.     DELETE FROM #SiteBarKod WHERE PATINDEX ('%-%', Nom)>0
  46419.     DELETE FROM #SiteBarKod WHERE PATINDEX ('%.%', Nom)>0
  46420. -------------------------------------------------------------
  46421.     INSERT INTO ##Prodazba (ShopCode, InCode, SalesItem, SalesAmount, StartDate, EndDate, BarCode)
  46422.     SELECT Sifra_Oe, Sifra_Art, Round(SUM(Kolic),2), Round(SUM(Kolic * DokCena * (1-Uces/100)),2), @StartDate, @EndDate, ''
  46423.     From  Stavr 
  46424.     WHERE Sifra_OE IN (SELECT Sifra_OE FROM #TmpOE) AND Datum_Dok>=@Datum_Od AND Datum_Dok<=@Datum_Do AND VlIzl='I' AND Sifra_Prim IS NULL
  46425.     Group By Sifra_Oe, Sifra_Art ORDER BY Sifra_Oe, Sifra_Art
  46426.     
  46427.     UPDATE ##Prodazba SET ChainCode = substring(Replace(O.ImeOrg, ';', ','),1,30) FROM Orged O WHERE ##Prodazba.ShopCode=O.Sifra_OE
  46428.     UPDATE ##Prodazba SET ChainCode = Replace(ChainCode, '"', '') 
  46429.     UPDATE ##Prodazba SET GrpCode = A.Sifra_Podg FROM KatArt A WHERE ##Prodazba.InCode=A.Sifra_Art
  46430.     UPDATE ##Prodazba SET GrpName = P.Ime_Podg FROM Podgrupi P WHERE ##Prodazba.GrpCode=P.Sifra_Podg
  46431.     UPDATE ##Prodazba SET GrpName = Replace(GrpName, ';', ',') 
  46432.     UPDATE ##Prodazba SET GrpName = Replace(GrpName, '"', '') 
  46433.     UPDATE ##Prodazba SET BarCode = Case WHEN upper(substring(A.Nom,1,1))='X' THEN '' ELSE A.Nom END, BarName = A.ImeArt FROM KatArt A WHERE ##Prodazba.InCode=A.Sifra_Art
  46434.     UPDATE ##Prodazba SET BarName = Replace(BarName, ';', ',') 
  46435.     UPDATE ##Prodazba SET BarName = Replace(BarName, '"', '') 
  46436.     UPDATE ##Prodazba SET Price=Round(SalesAmount / SalesItem, 2) WHERE SalesItem<>0
  46437.      UPDATE ##Prodazba SET BarCode = '' WHERE len(ltrim(rtrim(BarCode)))<8 OR len(ltrim(rtrim(BarCode)))>13
  46438.     UPDATE ##Prodazba SET BarCode = '' WHERE PATINDEX ('%?%', BarCode)>0
  46439.     UPDATE ##Prodazba SET BarCode = '' WHERE PATINDEX ('%/%', BarCode)>0
  46440.     UPDATE ##Prodazba SET BarCode = '' WHERE PATINDEX ('%+%', BarCode)>0
  46441.     UPDATE ##Prodazba SET BarCode = '' WHERE PATINDEX ('%*%', BarCode)>0
  46442.     UPDATE ##Prodazba SET BarCode = '' WHERE PATINDEX ('%-%', BarCode)>0
  46443.     UPDATE ##Prodazba SET BarCode = '' WHERE PATINDEX ('%.%', BarCode)>0
  46444.  
  46445.     INSERT INTO #TmpABar (ABarBroj, Sifra_Art) SELECT Max(ABarBroj), Sifra_Art FROM #SiteBarKod WHERE Sifra_Art IN
  46446.     (SELECT DISTINCT InCode FROM ##Prodazba WHERE BarCode='') GROUP BY Sifra_Art
  46447.     UPDATE #TmpABar SET Nom =A.Nom FROM #SiteBarKod A WHERE #TmpABar.ABarBroj=A.ABarBroj
  46448.     UPDATE #SiteBarKod SET Ind='D' FROM #TmpABar A WHERE #SiteBarKod.ABarBroj = A.ABarBroj
  46449.     UPDATE ##Prodazba SET BarCode = A.Nom FROM #TmpABar A WHERE ##Prodazba.InCode=A.Sifra_Art AND ##Prodazba.BarCode='' 
  46450.     UPDATE ##Prodazba SET BarCode=InCode WHERE BarCode IS NULL OR BarCode=''
  46451.      CREATE TABLE ##BarKod
  46452. (    Sifra_Art    varchar(20),
  46453.     Nom            varchar(50))
  46454.     INSERT INTO ##BarKod (Sifra_art, Nom) SELECT Sifra_Art, Nom FROM #SiteBarKod WHERE Ind<>'D'
  46455.     SELECT * FROM  ##Prodazba
  46456.  
  46457.  
  46458.  
  46459.  
  46460.  
  46461.  
  46462.  
  46463. Go
  46464. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_expvirkom]'))
  46465. drop procedure [dbo].[sp_expvirkom]
  46466.  
  46467. Go
  46468.  
  46469.  
  46470.  
  46471. CREATE      PROCEDURE sp_ExpVirKom
  46472.     @Datum_Od    smalldatetime,
  46473.     @Datum_Do    smalldatetime,
  46474.     @ZbirnoPoKom    char(1)='D'
  46475. As
  46476. Declare @ii as smallint
  46477. Declare @DatumStr as varchar(8)
  46478. SET @DatumStr = cast(year(GetDate()) as char(4))
  46479. if month(GetDate())<10
  46480.     SET @DatumStr=@DatumStr+'0'+cast(month(GetDate()) as char(1))
  46481. else
  46482.     SET @DatumStr=@DatumStr+cast(month(GetDate()) as char(2))
  46483. if day(GetDate())<10
  46484.     SET @DatumStr=@DatumStr+'0'+cast(day(GetDate()) as char(1))
  46485. else
  46486.     SET @DatumStr=@DatumStr+cast(day(GetDate()) as char(2))
  46487. CREATE TABLE ##TmpKOM
  46488. (Zapis    char(303))
  46489. CREATE TABLE #TmpSm
  46490. (VirID    int,
  46491. Ska_Nal    char(18),
  46492. Ska_Prim char(18))
  46493. INSERT INTO #TmpSm SELECT VirID, Ska_Nal, Ska_Prim FROM VirmanIzv WHERE Dat_Pec>=@Datum_Od AND Dat_Pec<=@Datum_Do AND Banka_Nal LIKE 'KOMERC%'
  46494. SET @ii = 1
  46495. While @ii < 10
  46496. Begin
  46497.     UPDATE #TmpSm SET Ska_Nal='0'+RTrim(Ska_Nal) WHERE Len(RTrim(Ska_Nal))<18
  46498.     UPDATE #TmpSm SET Ska_Prim='0'+RTrim(Ska_Prim) WHERE Len(RTrim(Ska_Prim))<18
  46499.     SET @ii = @ii +1
  46500. End
  46501.  
  46502. IF @ZbirnoPoKom ='D'
  46503.     INSERT INTO ##TmpKOM
  46504.     SELECT cast(VV.Ska_Nal as char(18))+cast(K.ImeKup as char(70))+cast(VV.Ska_Prim as char(18))+'+'+
  46505.     cast(cast(SUM(V.Iznos) as decimal(18,2)) as char(17)) +@DatumStr+
  46506.     cast(V.Cel as char(70)) +
  46507.     CASE WHEN V.Sifra_Virman='PP50' THEN '09' ELSE  '01'  END
  46508.     + cast(V.Sifra as char(3)) + cast(V.Pov_Prim as char(24)) +  cast(V.Pov_Nal as char(24)) + cast(V.Nacin as char(1))+
  46509.     CASE WHEN V.Sifra_Virman='PP50' THEN 
  46510.     cast(V.Uplatna as char(11))+
  46511.     Cast(V.Budzet as char(15))+
  46512.     Cast(V.Prihodna as Char(8)) ELSE space(32) END
  46513.     + cast(K.Danocen as char(13))
  46514.     FROM VirmanIzv V LEFT OUTER JOIN Komint K ON V.Sifra_Prim=K.Sifra_Kup
  46515.     INNER JOIN #TmpSm VV ON V.VirID=VV.VirID
  46516.     WHERE V.Dat_Pec>=@Datum_Od AND V.Dat_Pec<=@Datum_Do AND V.Banka_Nal LIKE 'KOMERC%'
  46517.     GROUP BY VV.Ska_Nal, K.ImeKup, VV.Ska_Prim, V.Cel, V.Sifra_Virman, V.Sifra, V.Pov_Prim, V.Pov_Nal, V.Nacin,V.Uplatna, V.Budzet, V.Prihodna, K.Danocen
  46518. ELSE
  46519.     INSERT INTO ##TmpKOM
  46520.     SELECT cast(VV.Ska_Nal as char(18))+cast(K.ImeKup as char(70))+cast(VV.Ska_Prim as char(18))+'+'+
  46521.     cast(cast(V.Iznos as decimal(18,2)) as char(17)) +@DatumStr+
  46522.     cast(V.Cel as char(70)) +
  46523.     CASE WHEN V.Sifra_Virman='PP50' THEN '09' ELSE  '01'  END
  46524.     + cast(V.Sifra as char(3)) + cast(V.Pov_Prim as char(24)) +  cast(V.Pov_Nal as char(24)) + cast(V.Nacin as char(1))+
  46525.     CASE WHEN V.Sifra_Virman='PP50' THEN 
  46526.     cast(V.Uplatna as char(11))+
  46527.     Cast(V.Budzet as char(15))+
  46528.     Cast(V.Prihodna as Char(8)) ELSE space(32) END
  46529.     + cast(K.Danocen as char(13))
  46530.     FROM VirmanIzv V LEFT OUTER JOIN Komint K ON V.Sifra_Prim=K.Sifra_Kup
  46531.     INNER JOIN #TmpSm VV ON V.VirID=VV.VirID
  46532.     WHERE V.Dat_Pec>=@Datum_Od AND V.Dat_Pec<=@Datum_Do AND V.Banka_Nal LIKE 'KOMERC%'
  46533.  
  46534.  
  46535.  
  46536.  
  46537. Go
  46538. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_expvirsto]'))
  46539. drop procedure [dbo].[sp_expvirsto]
  46540.  
  46541. Go
  46542.  
  46543.  
  46544.  
  46545.  
  46546. CREATE           PROCEDURE sp_ExpVirSto
  46547.     @Datum_Od    smalldatetime,
  46548.     @Datum_Do    smalldatetime, 
  46549.     @ZbirnoPoKom char(1) ='D'
  46550. As
  46551.  
  46552. Declare @DatumVal as varchar(8)
  46553. Declare @Dat as varchar(8)
  46554. if day(getdate())<10
  46555.     SET @DatumVal='0'+cast(day(getdate()) as char(1))
  46556. else
  46557.     SET @DatumVal=cast(day(getdate()) as char(2))
  46558. if month(getdate())<10
  46559.     SET @DatumVal=@DatumVal+'0'+cast(month(getdate()) as char(1))
  46560. else
  46561.     SET @DatumVal=@DatumVal+cast(month(getdate()) as char(2))
  46562. SET @DatumVal =@DatumVal+cast(year(getdate()) as char(4))
  46563.  
  46564.  
  46565. CREATE TABLE #TmpStopanska
  46566. (  Rbr  int identity(1,1),
  46567. Zapis    varchar(220))
  46568.  
  46569. if @ZbirnoPoKom ='D'
  46570.         INSERT INTO #TmpStopanska
  46571.         SELECT '!'+
  46572.         rtrim(cast(V.Ska_Nal as char(15)))+'!'+
  46573.         cast(dbo.fn_LevoNuliStr(cast(Sum(V.Iznos) as decimal(18,2)), 12) as char(12))+'!'+
  46574.         rtrim(case when V.Ska_Prim Is Null Then '' Else cast(V.Ska_Prim as char(15)) End)+'!'+
  46575.         rtrim(case when K.ImeKUp is null then '' else cast(K.ImeKup as char(70))End)+'!'+
  46576.         rtrim(case when V.Sifra is null then  '' else cast(V.Sifra as char(3))end)+'!'+
  46577.         rtrim(case when V.Cel is null then '' else cast(V.Cel as char(70))end)+'!'+
  46578.         rtrim(case when V.Pov_Nal is null then '' else cast(V.Pov_Nal as char(24))end)+'!'+
  46579.         case when V.Sifra_Virman='PP50'then 
  46580.         (case when V.budzet is null or rtrim(V.Budzet)='' then V.Uplatna+'    '+V.Prihodna else V.Budzet+V.Prihodna end)else 
  46581.         rtrim(case when V.Pov_prim is null then '' else cast(V.Pov_Prim as char(24))end)End +'!'+
  46582.         cast(dbo.fn_VratiDatumBezCrtiObratno(V.Dat_Val) as varchar(10))+'!'+--case when @DatumVal is null then '' else 
  46583.         cast(dbo.fn_VratiDatumBezCrtiObratno(V.Dat_Val) as varchar(10))+'!'+-- case when @DatumPec is null then '' else 
  46584.         rtrim(case when V.Nacin is null then '' else cast(V.Nacin as char(1))end)+'!'+
  46585.         rtrim(case when V.Prioritet is null then '' else cast(V.Prioritet as varchar(2))end)+'!'+ 
  46586.         CASE WHEN V.Sifra_Virman='PP30' THEN '0!' ELSE  '1!'  END 
  46587.         FROM VirmanIzv V 
  46588.         LEFT OUTER JOIN Komint K ON V.Sifra_Prim=K.Sifra_Kup
  46589.         WHERE  V.Dat_Pec>=@Datum_Od AND V.Dat_Pec<=@Datum_Do AND  V.Banka_Nal LIKE 'STOP%'
  46590.         GROUP BY V.Prioritet, V.Ska_Nal,V.Pov_Nal, V.Cel, V.Sifra, V.Ska_Prim, K.ImeKup,V.Uplatna, V.Budzet, V.Prihodna, V.Pov_Prim,
  46591.                 K.Danocen, V.Sifra_Virman, V.Nacin, V.Dat_Val
  46592.         --CREATE TABLE ##TmpSto
  46593.         --(Zapis varchar(300))
  46594.         
  46595.     --    INSERT INTO ##TmpSto SELECT Cast(rbr as varchar(5))+Zapis from #TmpStopanska
  46596. else
  46597.         INSERT INTO #TmpStopanska
  46598.         SELECT '!'+
  46599.         rtrim(cast(V.Ska_Nal as char(15)))+'!'+
  46600.         cast(dbo.fn_LevoNuliStr(cast(V.Iznos as decimal(18,2)), 12) as char(12))+'!'+
  46601.         rtrim(case when V.Ska_Prim Is Null Then '' Else cast(V.Ska_Prim as char(15)) End)+'!'+
  46602.         rtrim(case when K.ImeKUp is null then '' else cast(K.ImeKup as char(70))End)+'!'+
  46603.         rtrim(case when V.Sifra is null then  '' else cast(V.Sifra as char(3))end)+'!'+
  46604.         rtrim(case when V.Cel is null then '' else cast(V.Cel as char(70))end)+'!'+
  46605.         rtrim(case when V.Pov_Nal is null then '' else cast(V.Pov_Nal as char(24))end)+'!'+
  46606.         case when V.Sifra_Virman='PP50'then 
  46607.         (case when V.budzet is null or rtrim(V.Budzet)='' then V.Uplatna+'    '+V.Prihodna else V.Budzet+V.Prihodna end)else 
  46608.         rtrim(case when V.Pov_prim is null then '' else cast(V.Pov_Prim as char(24))end)End +'!'+
  46609.         cast(dbo.fn_VratiDatumBezCrtiObratno(V.Dat_Val) as varchar(10))+'!'+--case when @DatumVal is null then '' else 
  46610.         cast(dbo.fn_VratiDatumBezCrtiObratno(V.Dat_Val) as varchar(10))+'!'+-- bese samo @DatumVal case when @DatumPec is null then '' else 
  46611.         rtrim(case when V.Nacin is null then '' else cast(V.Nacin as char(1))end)+'!'+
  46612.         rtrim(case when V.Prioritet is null then '' else cast(V.Prioritet as varchar(2))end)+'!'+ 
  46613.         CASE WHEN V.Sifra_Virman='PP30' THEN '0!' ELSE  '1!'  END 
  46614.         FROM VirmanIzv V 
  46615.         LEFT OUTER JOIN Komint K ON V.Sifra_Prim=K.Sifra_Kup
  46616.         WHERE  V.Dat_Pec>=@Datum_Od AND V.Dat_Pec<=@Datum_Do AND  V.Banka_Nal LIKE 'STOP%'
  46617.         
  46618.         CREATE TABLE ##TmpSto
  46619.         (Zapis varchar(300))
  46620.         
  46621.         INSERT INTO ##TmpSto SELECT Cast(rbr as varchar(5))+Zapis from #TmpStopanska    
  46622.     
  46623.  
  46624.  
  46625.  
  46626.  
  46627. Go
  46628. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_expvirtut]'))
  46629. drop procedure [dbo].[sp_expvirtut]
  46630.  
  46631. Go
  46632.  
  46633. CREATE      PROCEDURE sp_ExpVirTut
  46634.     @Datum_Od    smalldatetime,
  46635.     @Datum_Do    smalldatetime,
  46636.     @ZbirnoPoKom    char(1)='D'    
  46637. As
  46638. Declare @DatumStr as varchar(10)
  46639. Declare @DatumVal as varchar(10)
  46640.  
  46641.  
  46642. SET @DatumStr = cast(year(GetDate()) as char(4))+'.'
  46643. if month(GetDate())<10
  46644.     SET @DatumStr=@DatumStr+'0'+cast(month(GetDate()) as char(1))+'.'
  46645. else
  46646.     SET @DatumStr=@DatumStr+cast(month(GetDate()) as char(2))+'.'
  46647. if day(GetDate())<10
  46648.     SET @DatumStr=@DatumStr+'0'+cast(day(GetDate()) as char(1))
  46649. else
  46650.     SET @DatumStr=@DatumStr+cast(day(GetDate()) as char(2))
  46651.  
  46652. CREATE TABLE ##TmpTUT
  46653. (Zapis    char(277))
  46654.  
  46655.  
  46656. IF @ZbirnoPoKom ='D'
  46657.     INSERT INTO ##TmpTUT
  46658.     SELECT cast(V.Prioritet as char(2))+cast(V.Ska_Nal as char(18))+cast(V.Pov_Nal as char(24))+
  46659.     cast(V.Cel as char(70))+cast(V.Sifra as char(6))+
  46660.     cast(replace(cast(cast(Sum(V.Iznos) as decimal(18,2)) as char(19)),'.','') as char(19))+
  46661.     cast(V.Ska_Prim as char(18))+cast(K.ImeKup as char(70))+
  46662.     CASE WHEN V.Sifra_Virman='PP50' THEN Cast(V.Uplatna+V.Budzet+V.Prihodna as char(24))+'50' ELSE cast(V.Pov_Prim as char(24))+'30' End +
  46663.     cast(K.Danocen as char(13))+@DatumStr+V.Nacin
  46664.     FROM VirmanIzv V LEFT OUTER JOIN Komint K ON V.Sifra_Prim=K.Sifra_Kup
  46665.     WHERE V.Dat_Pec>=@Datum_Od AND V.Dat_Pec<=@Datum_Do AND V.Banka_Nal LIKE '%TUTUN%'
  46666.     GROUP BY V.Prioritet, V.Ska_Nal,V.Pov_Nal, V.Cel, V.Sifra, V.Ska_Prim, K.ImeKup,V.Uplatna, V.Budzet, V.Prihodna, V.Pov_Prim,
  46667.             K.Danocen, V.Sifra_Virman, V.Nacin
  46668. else
  46669.     INSERT INTO ##TmpTUT
  46670.     SELECT cast(V.Prioritet as char(2))+cast(V.Ska_Nal as char(18))+cast(V.Pov_Nal as char(24))+
  46671.     cast(V.Cel as char(70))+cast(V.Sifra as char(6))+
  46672.     cast(replace(cast(cast(V.Iznos as decimal(18,2)) as char(19)),'.','') as char(19))+
  46673.     cast(V.Ska_Prim as char(18))+cast(K.ImeKup as char(70))+
  46674.     CASE WHEN V.Sifra_Virman='PP50' THEN Cast(V.Uplatna+V.Budzet+V.Prihodna as char(24))+'50' ELSE cast(V.Pov_Prim as char(24))+'30' End +
  46675.     cast(K.Danocen as char(13))+@DatumStr+V.Nacin
  46676.     FROM VirmanIzv V LEFT OUTER JOIN Komint K ON V.Sifra_Prim=K.Sifra_Kup
  46677.     WHERE V.Dat_Pec>=@Datum_Od AND V.Dat_Pec<=@Datum_Do AND V.Banka_Nal LIKE '%TUTUN%'
  46678.     
  46679.  
  46680.  
  46681.  
  46682. Go
  46683. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_fakt_ortop]'))
  46684. drop procedure [dbo].[sp_fakt_ortop]
  46685.  
  46686. Go
  46687.  
  46688.  
  46689. CREATE     PROCEDURE sp_Fakt_Ortop
  46690.     @Datum_Od    smalldatetime = Null,
  46691.     @Datum_Do    smalldatetime = Null
  46692. AS
  46693.     Declare @SSQL as varchar(8000)
  46694.  
  46695.     Set @SSQL = ' Select  R.Sifra_Art, sum(R.Kolku_Pakuv) Kolku_Pakuv, R.Cena_Tender, R.PRocDDV,
  46696.             L.ImeArt, P.ImePacient, P.Broj_Kniska, P.EMBG
  46697.     From Recepti_P R 
  46698.     Left Outer Join Katart L on R.Sifra_Art = L.Sifra_Art
  46699.     Left Outer Join Pacienti P ON R.EMBG=P.EMBG
  46700.     Where 1=1 '
  46701.         Set @SSQL = @SSQL + ' And R.Datum_Izdav >= ''' + Cast(@Datum_Od as Varchar(30)) + ''' '
  46702.     Set @SSQL = @SSQL + ' And R.Datum_Izdav <= ''' + Cast(@Datum_Do as Varchar(30)) + ''' '
  46703.         Set @SSQL = @SSQL + ' Group By P.EMBG, R.Sifra_Art, R.Cena_Tender, R.ProcDDV,
  46704.                      L.ImeArt, P.ImePacient, P.Broj_Kniska, P.EMBG '
  46705.         Exec(@SSQL)
  46706.  
  46707.  
  46708.  
  46709.  
  46710. Go
  46711. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_fakturi_zapecatenje]'))
  46712. drop procedure [dbo].[sp_fakturi_zapecatenje]
  46713.  
  46714. Go
  46715. CREATE     PROCEDURE sp_Fakturi_ZaPecatenje
  46716.     @Datum    smalldatetime,
  46717.     @Sifra_Dok    varchar(200),
  46718.     @Sifra_OE    varchar(200)=Null,
  46719.     @Pec_Dok    smallint = Null,
  46720.     @VlIzl        char(1)=Null,
  46721.     @OdMagStavr    char(1) = 'N'
  46722. AS
  46723.     Declare @SSQL as varchar(4000)
  46724.     Set @SSQL = ' Select Distinct D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Br_Kopii
  46725.             From Dokr D '
  46726.     If @OdMagStavr='D'
  46727.         Set @SSQL = @SSQL + ' Inner Join MagStavr M On M.DokrID=D.DokrID '
  46728.     Set @SSQL = @SSQL + ' Where 1=1
  46729.             And D.Datum_Dok >= ''' + cast(@Datum as varchar(30)) + ''' 
  46730.             And D.Sifra_Dok In ( ' + @Sifra_Dok + ') '
  46731.     If @Sifra_OE IS NOT NULL
  46732.         Set @SSQL = @SSQL + ' And D.Sifra_OE In ( ' + @Sifra_OE + ') ' 
  46733.     If @Pec_Dok Is Not Null
  46734.         Set @SSQL = @SSQL + ' And D.Pec_Dok= ' + Cast(@Pec_Dok as varchar(6)) + ' '
  46735.     Else If @Pec_Dok Is Null
  46736.         Set @SSQL = @SSQL + ' And D.Pec_Dok Is Null '
  46737.     If @VlIzl IS NOT NULL
  46738.         Set @SSQL = @SSQL + ' And D.VlIzl= ''' + @VlIzl + ''' '
  46739.     Exec(@SSQL)
  46740.  
  46741.  
  46742. Go
  46743. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_fiizvestai]'))
  46744. drop procedure [dbo].[sp_fiizvestai]
  46745.  
  46746. Go
  46747. CREATE PROCEDURE sp_FiIzvestai
  46748.     @FiID        smallint,
  46749.     @Datum_Od    smalldatetime,
  46750.     @Datum_Do    smalldatetime
  46751. AS
  46752.  
  46753.  
  46754.  
  46755. Go
  46756. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_finsost_po_podelba6]'))
  46757. drop procedure [dbo].[sp_finsost_po_podelba6]
  46758.  
  46759. Go
  46760.  
  46761.  
  46762. CREATE   PROCEDURE sp_FinSost_Po_Podelba6
  46763.  
  46764.     @Sifra_Oe    smallint = Null,
  46765.     @Koi_Oe    varchar(6) = Null,
  46766.     @Datum_Od    smalldatetime,
  46767.     @Datum_Do    smalldatetime,
  46768.     @Sifra_Kup_Od    char(6) = Null,
  46769.     @Sifra_Kup_Do    char(6) = Null,
  46770.     @Kto_Anal    varchar(11) = Null
  46771. AS
  46772.     Declare @SSQL as varchar(8000)
  46773.  
  46774.     Set @SSQL = ' Select Kup.KDrugo6, KD6.Ime_6K, 
  46775.                 (Case When Kup.KDrugo6 < 100 Then ''0'' When (Kup.KDrugo6 Is Not Null And Kup.KDrugo6 >= 100) Then Substring(Cast(Kup.KDrugo6 as varchar(3)),1,1) Else Kup.KDrugo6 End) Grupa,
  46776.                 Sum(Case When A.Datum_Dok < ''' + Cast(@Datum_Od as varchar(30)) + ''' Then (A.Dolzi - A.Pobaruva) Else 0 End) PrethSaldo,
  46777.                 Sum(Case When A.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' Then A.Dolzi Else 0 End) Dolzi, 
  46778.                 Sum(Case When A.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' Then A.Pobaruva Else 0 End) Pobaruva,
  46779.                 Sum(A.Dolzi - A.Pobaruva) Saldo,
  46780.                 Sum((Case When (DateAdd(Day, Rok, A.Datum_Dok) <= ''' + Cast(@Datum_Do as varchar(30)) + ''') Then A.Dolzi Else 0 End) - 
  46781.                         (Case When (A.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''') Then A.Pobaruva Else 0 End)) Dospeani, 
  46782.                 Sum(Case When (A.Dolzi<>A.Plateno_Dolzi) And (DateAdd(Day, Rok, A.Datum_Dok) > ''' + Cast(@Datum_Do as varchar(30)) + ''') Then (A.Dolzi-A.Plateno_Dolzi) Else 0 End) NeDospeani
  46783.             From AnfinDok A
  46784.             Inner Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  46785.             Left Outer Join KDrugo6 KD6 On KD6.Sifra_6K=Kup.Kdrugo6
  46786.             Where A.Sifra_Za = ''1'' 
  46787.             And A.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' 
  46788.             And (KDrugo6 < 900 Or KDrugo6 Is Null) '
  46789.     If @Sifra_Oe Is Not Null
  46790.         Set @SSQL = @SSQL + ' And A.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  46791.     If @Koi_Oe Is Not Null
  46792.         Set @SSQL = @SSQL + ' And A.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  46793.     If @Sifra_Kup_Od Is Not Null
  46794.         Set @SSQL = @SSQL + ' And A.Sifra_Kup >= ' + @Sifra_Kup_Od + ' '
  46795.     If @Sifra_Kup_Do Is Not Null
  46796.         Set @SSQL = @SSQL + ' And A.Sifra_Kup <= ' + @Sifra_Kup_Do + ' '
  46797.     If @Kto_Anal Is Not Null
  46798.         Set @SSQL = @SSQL + ' And A.Kto = ''' + @Kto_Anal + ''' '
  46799.     Set @SSQL = @SSQL + ' Group By Kup.KDrugo6, KD6.Ime_6K
  46800.                   Order By Kup.KDrugo6 '
  46801.     print @SSQL
  46802.     Exec(@SSQL)
  46803.  
  46804.  
  46805. Go
  46806. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_fipodsuma]'))
  46807. drop procedure [dbo].[sp_fipodsuma]
  46808.  
  46809. Go
  46810.  
  46811. CREATE      PROCEDURE sp_FiPodSuma
  46812.     @RbrFi            smallint,
  46813.     @OdKadeSakam    char(1),
  46814.     @Iznos            decimal(18,6) OUTPUT
  46815. AS
  46816.     Declare @SSQL     varchar(1000)
  46817.     Declare @OdKade char(1)
  46818.     Declare @IznOdStav    decimal(18,6)
  46819.     SET @Iznos = 0
  46820.     Declare Tabela3 Cursor Fast_Forward For
  46821.         Select OdKade, Iznos
  46822.         From ##TmpTab WHERE RbrFi < @RbrFi Order by RbrFi DESC
  46823.     Open Tabela3
  46824.     Fetch Next From Tabela3 Into @OdKade, @IznOdStav
  46825.     While @@Fetch_Status = 0
  46826.     Begin            
  46827.         If @OdKade = @OdKadeSakam 
  46828.         Begin
  46829.             Close Tabela3
  46830.             Deallocate Tabela3
  46831.             RETURN
  46832.         End
  46833.         If @OdKade <> 'P' 
  46834.             Set @Iznos = @Iznos + @IznOdStav
  46835.         Fetch Next From Tabela3 Into @OdKade, @IznOdStav
  46836.     End
  46837.     Close Tabela3
  46838.     Deallocate Tabela3
  46839.  
  46840.  
  46841.  
  46842. Go
  46843. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_fix_dajcenazadatum]'))
  46844. drop procedure [dbo].[sp_fix_dajcenazadatum]
  46845.  
  46846. Go
  46847.  
  46848.  
  46849.  
  46850.  
  46851. CREATE           PROCEDURE sp_fix_DajCenaZaDatum
  46852.     @VlIzl            char(1) = Null,
  46853.     @Tip_Sif_Kup        char(1) = Null,
  46854.     @Sif_Kup_Gen        varchar(11) = Null,
  46855.     @Tip_Sif_Art        char(1) = Null,
  46856.     @Sif_Art_Gen        varchar(20),
  46857.     @Datum        smalldatetime
  46858. AS
  46859.     SELECT *
  46860.     FROM dbo.fix_DajCenaZaDatum(@VlIzl, @Tip_Sif_Kup, @Sif_Kup_Gen, @Tip_Sif_Art, @Sif_Art_Gen, @Datum)
  46861.  
  46862.  
  46863.  
  46864. Go
  46865. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_fix_dajrabatodcenpopodgr]'))
  46866. drop procedure [dbo].[sp_fix_dajrabatodcenpopodgr]
  46867.  
  46868. Go
  46869.  
  46870.  
  46871. create  PROCEDURE sp_fix_DajRabatOdCenPoPodgr
  46872.     @Sifra_Kup    varchar(6),
  46873.     @Sifra_Art    varchar(20),
  46874.         @Uces         decimal (9, 2) = 0 OUTPUT
  46875. AS
  46876.     Declare @Sifra_Podg as varchar(10)
  46877.     Declare @Sifra_Gr as varchar(10)
  46878.     Declare @Sifra_7 as smallint
  46879.     Declare @Sifra_7_char as varchar(6)
  46880.     SELECT @Sifra_Podg = Sifra_Podg, @Sifra_7 = Drugo7
  46881.     from Katart
  46882.     where Sifra_Art = @Sifra_Art
  46883.     select @Sifra_Gr = Sifra_Gr
  46884.     from Podgrupi
  46885.     where Sifra_Podg = @Sifra_Podg
  46886.     if @Sifra_7 is not null and @Sifra_7 > 0
  46887.       begin
  46888.         set @Sifra_7_char = cast (@Sifra_7 as varchar(6))
  46889.         select @Uces = Uces
  46890.         From CenPoPodgr
  46891.         where Tip_Podelba = 'A' and TipKup = @Sifra_Kup and Sifra_Podelba = @Sifra_7_char
  46892.         if @Uces is not null and @Uces > 0
  46893.         return
  46894.       end
  46895.     if @Sifra_Podg is not null
  46896.       begin
  46897.         select @Uces = Uces
  46898.         From CenPoPodgr
  46899.         where Tip_Podelba = 'B' and TipKup = @Sifra_Kup and Sifra_Podelba = @Sifra_Podg
  46900.         if @Uces is not null and @Uces > 0
  46901.         return
  46902.       end
  46903.     if @Sifra_Gr is not null
  46904.       begin
  46905.         select @Uces = Uces
  46906.         From CenPoPodgr
  46907.         where Tip_Podelba = 'C' and TipKup = @Sifra_Kup and Sifra_Podelba = @Sifra_Gr
  46908.         if @Uces is not null and @Uces > 0
  46909.         return
  46910.       end
  46911.     set @Uces = 0
  46912.  
  46913.  
  46914.  
  46915. Go
  46916. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_fix_imatocniuslovikomintart]'))
  46917. drop procedure [dbo].[sp_fix_imatocniuslovikomintart]
  46918.  
  46919. Go
  46920.  
  46921.  
  46922. create  PROCEDURE sp_fix_ImaTocniUsloviKomintArt
  46923.     @VlIzl            char(1),
  46924.     @Tip_Sif_Kup        char(1),
  46925.     @Sif_Kup_Gen        varchar(11),
  46926.     @Tip_Sif_Art        char(1),
  46927.     @Sif_Art_Gen        varchar(20),
  46928.     @ImaUslovi        char (1) = null OUTPUT,
  46929.     @Uces            decimal (9, 2) = null OUTPUT
  46930. AS
  46931.   Declare @Temp_Sif_Kup_Gen varchar (11)
  46932.   SELECT TOP 1 @Temp_Sif_Kup_Gen = Sif_Kup_Gen, @Uces = Uces
  46933.   From Usl_Komerc_Per
  46934.   WHERE VlIzl=@VlIzl and Tip_Sif_Kup=@Tip_Sif_Kup and Sif_Kup_Gen=@Sif_Kup_Gen 
  46935.         and Tip_Sif_Art=@Tip_Sif_Art and Sif_Art_Gen = @Sif_Art_Gen
  46936.   ORDER BY Datum_Od DESC
  46937.   if @Temp_Sif_Kup_Gen is null
  46938.     set @ImaUslovi = 'N'
  46939.   else
  46940.     set @ImaUslovi = 'D'
  46941.  
  46942.  
  46943.  
  46944. Go
  46945. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_generirajnizadatumi]'))
  46946. drop procedure [dbo].[sp_generirajnizadatumi]
  46947.  
  46948. Go
  46949.  
  46950.  
  46951.  
  46952. CREATE   PROCEDURE sp_GenerirajNizaDatumi
  46953.     @Datum_Od datetime=null,
  46954.         @Datum_Do datetime=null 
  46955. as
  46956.  
  46957. DECLARE @LowDate DATEtime
  46958. SET @LowDate = @Datum_Od
  46959.  
  46960. DECLARE @HighDate DATEtime
  46961. SET @HighDate =  @Datum_Do
  46962.  
  46963. SELECT DISTINCT DATEADD(dd, Days.Row, DATEADD(mm, Months.Row, DATEADD(yy, Years.Row, @LowDate))) AS Date
  46964. FROM
  46965. (SELECT 0 AS Row UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4
  46966.  UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9
  46967.  UNION ALL SELECT 10 UNION ALL SELECT 11 UNION ALL SELECT 12 UNION ALL SELECT 13 UNION ALL SELECT 14
  46968.  UNION ALL SELECT 15 UNION ALL SELECT 16 UNION ALL SELECT 17 UNION ALL SELECT 18 UNION ALL SELECT 19
  46969.  UNION ALL SELECT 20 -- add more years here...
  46970. ) AS Years
  46971. INNER JOIN
  46972. (SELECT 0 AS Row UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4
  46973.  UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9
  46974.  UNION ALL SELECT 10 UNION ALL SELECT 11
  46975. ) AS Months
  46976. ON DATEADD(mm, Months.Row,  DATEADD(yy, Years.Row, @LowDate)) <= @HighDate 
  46977. INNER JOIN
  46978. (SELECT 0 AS Row UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3 UNION ALL SELECT 4
  46979.  UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7 UNION ALL SELECT 8 UNION ALL SELECT 9
  46980.  UNION ALL SELECT 10 UNION ALL SELECT 11 UNION ALL SELECT 12 UNION ALL SELECT 13 UNION ALL SELECT 14
  46981.  UNION ALL SELECT 15 UNION ALL SELECT 16 UNION ALL SELECT 17 UNION ALL SELECT 18 UNION ALL SELECT 19
  46982.  UNION ALL SELECT 20 UNION ALL SELECT 21 UNION ALL SELECT 22 UNION ALL SELECT 23 UNION ALL SELECT 24
  46983.  UNION ALL SELECT 25 UNION ALL SELECT 26 UNION ALL SELECT 27 UNION ALL SELECT 28 UNION ALL SELECT 29
  46984.  UNION ALL SELECT 30
  46985. ) AS Days
  46986. ON DATEADD(dd, Days.Row, DATEADD(mm, Months.Row,  DATEADD(yy, Years.Row, @LowDate))) <= @HighDate
  46987. WHERE DATEADD(yy, Years.Row, @LowDate) <= @HighDate
  46988. ORDER BY 1
  46989.  
  46990.  
  46991.  
  46992. Go
  46993. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_generrazl]'))
  46994. drop procedure [dbo].[sp_generrazl]
  46995.  
  46996. Go
  46997.  
  46998. CREATE         PROCEDURE sp_GenerRazl
  46999.     @Sifra_OE        smallint = NULL,
  47000.     @KoiOE        Varchar(6) = NULL,
  47001.     @Sifra_Art_Od        varchar(20) = NULL,
  47002.     @Sifra_Art_Do        varchar(20) = NULL,
  47003.     @Datum_Nal_Od     Smalldatetime = NULL,
  47004.     @Datum_Nal_Do     Smalldatetime = NULL,
  47005.     @Datum_Dok_Od     Smalldatetime = NULL,
  47006.     @Datum_Dok_Do     Smalldatetime = NULL,
  47007.     @SoDDV        char(1) = 'D',         -- D/N
  47008.     @Sifra_Kup        varchar(8) = NULL,
  47009.     @Sifra_Gr        char(3) = NULL,
  47010.     @Sifra_Podg        char(6) = NULL,
  47011.     @Lokacija        varchar(10) = NULL,
  47012.     @SamoRazliki        char(1) = 'D'
  47013. AS
  47014.     Declare @SSQL  As Varchar(4000)
  47015.     Declare @SSQL1 As varchar(500)
  47016.     CREATE TABLE #Promet_Artikli
  47017.     ( Sifra_OE Smallint,
  47018.       Sifra_Art Varchar(20),
  47019.       VlIzl Char(1),
  47020.       Kolic Numeric(18, 4),
  47021.       MagCena Numeric(18, 4),
  47022.       DanMagCena Char(1),
  47023.       ProcOsn Numeric(6, 2),
  47024.       DokCena Numeric(18, 4),
  47025.       DanDokCena Char(1),
  47026.       Uces Numeric(18, 6),
  47027.       Kasa Numeric(6, 2)
  47028.     )
  47029.     CREATE TABLE #Promet
  47030.     ( Sifra_OE    Smallint,
  47031.       Sifra_Art    Varchar(20),
  47032.       TVlez        Numeric(18, 4),
  47033.       TIzlez    Numeric(18, 4),
  47034.       TVr_Vlez    Numeric(18, 4),
  47035.       TVr_Izlez    Numeric(18, 4),
  47036.       Vr_RazlC    Numeric(18,4)
  47037.     )
  47038. Set Nocount On
  47039.     ---------------------------------------
  47040.     -- Tekoven Promet
  47041.     ---------------------------------------
  47042.     SET @SSQL =    'SELECT S.Sifra_OE, S.Sifra_Art, S.VlIzl, S.Kolic, S.MagCena, S.DanMagCena, 
  47043.             S.POsn, S.DokCena, S.DanDokCena, S.Uces, D.Kasa
  47044.             FROM Stavr S
  47045.             INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art 
  47046.             INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  47047.     If @Sifra_Gr IS NOT NULL 
  47048.         Begin
  47049.             Set @SSQL=@SSQL+'INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  47050.             Set @SSQL=@SSQL+'INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  47051.         End
  47052.     SET @SSQL = @SSQL + 'WHERE 1=1 '
  47053.     If @Sifra_OE Is Not Null
  47054.         SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  47055.     If @KoiOE Is Not Null
  47056.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  47057.     If @Sifra_Kup Is NOT NULL
  47058.         SET @SSQL = @SSQL + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  47059.     If @Sifra_Art_Od Is NOT Null
  47060.         SET @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  47061.     If @Sifra_Art_Do Is NOT Null
  47062.          SET @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  47063.     If @Datum_Dok_Od Is NOT Null
  47064.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  47065.     If @Datum_Dok_Do Is NOT Null
  47066.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  47067.     If @Sifra_Gr IS NOT NULL
  47068.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  47069.     If @Sifra_Podg IS NOT NULL
  47070.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  47071.     If @Lokacija IS NOT NULL
  47072.         Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  47073.     INSERT #Promet_Artikli EXEC(@SSQL)
  47074.     DECLARE Stavki CURSOR FAST_FORWARD FOR SELECT * FROM #Promet_Artikli
  47075.     Declare @KojaOE Smallint
  47076.     Declare @Sifra_Art Varchar(20)
  47077.     Declare @VlIzl char(1)
  47078.     Declare @Kolic decimal(18,6)
  47079.     Declare @MagCena decimal(18,6)
  47080.     Declare @DanMagCena char(1)
  47081.     Declare @DokCena decimal(18,6)
  47082.     Declare @DanDokCena char(1)
  47083.     Declare @Uces decimal(18,6)    
  47084.     Declare @Kasa decimal(6,2)
  47085.     Declare @POsn decimal(6,2)
  47086.     Declare @Vlez decimal(18,6)
  47087.     Declare @Izlez decimal(18,6)
  47088.     Declare @Vr_Vlez decimal(18,6)
  47089.     Declare @Vr_Izlez decimal(18,6)
  47090.     OPEN Stavki
  47091.     FETCH NEXT FROM Stavki INTO @KojaOE, @Sifra_Art, @VlIzl, @Kolic, @MagCena, @DanMagCena,
  47092.         @POsn, @DokCena, @DanDokCena, @Uces, @Kasa
  47093.     WHILE @@FETCH_STATUS = 0
  47094.     Begin
  47095.     set @Vlez=0
  47096.     set @Izlez=0
  47097.     set @Vr_Vlez=0
  47098.     set @Vr_Izlez=0
  47099.     If @VlIzl='V'
  47100.         Begin
  47101.         Set @Vlez=@Vlez+@Kolic
  47102.         If @SoDDV='N'
  47103.             Begin
  47104. --                 Print 'Bez DDV 1'
  47105.                 If @DanMagCena='D'
  47106.                 Set @MagCena=@MagCena/(1+@POsn)
  47107.             End
  47108.         Else If @SoDDV='D'
  47109.             Begin
  47110. --              Print 'Bez DDV 2'
  47111.                 If @DanMagCena='N'
  47112.                 Set @MagCena=@MagCena*(1+@POsn/100)
  47113.             End
  47114.         Set @Vr_Vlez=@Vr_Vlez+@Kolic*@MagCena
  47115.         End
  47116.     Else If @VlIzl='I'
  47117.         Begin
  47118.         Set @Izlez=@Izlez+@Kolic
  47119.         If @SoDDV='N'
  47120.             Begin
  47121. --              Print 'Bez DDV 3'
  47122.                 If @DanDokCena='D'
  47123.                 Set @DokCena=@DokCena/(1+@POsn/100)
  47124.             End
  47125.         Else If @SoDDV='D'
  47126.             Begin
  47127. --              Print 'So DDV 4'
  47128.                 If @DanDokCena='N'
  47129.                 Set @DokCena=@DokCena*(1+@POsn/100)
  47130.             End
  47131.     Set @DokCena = @DokCena * (1- @Uces/100) * (1- @Kasa/100)
  47132.     Set @Vr_Izlez=@Vr_Izlez+@Kolic*@DokCena
  47133.         End
  47134.         INSERT #Promet (Sifra_OE, Sifra_Art, TVlez, TIzlez, TVr_Vlez, TVr_Izlez, Vr_RazlC)
  47135.         VALUES (@KojaOE, @Sifra_Art, @Vlez, @Izlez, @Vr_Vlez, @Vr_Izlez, 0)
  47136.         FETCH NEXT FROM Stavki INTO @KojaOE, @Sifra_Art, @VlIzl, @Kolic, @MagCena, 
  47137.             @DanMagCena, @POsn, @DokCena, @DanDokCena, @Uces, @Kasa
  47138.     End
  47139.     CLOSE Stavki
  47140.     DEALLOCATE Stavki
  47141. Set Nocount Off
  47142.     CREATE TABLE TmpRazl
  47143.     ( Sifra_OE    Smallint,
  47144.       Sifra_Art    Varchar(20),
  47145.       PTar        Char(3),
  47146.       POsn        Numeric(6, 2),      
  47147.       Tek_Vr_Vlez    Numeric(18, 4),
  47148.       Tek_Vr_Izlez    Numeric(18, 4),
  47149.       Vr_RazlC    Numeric(18, 4),
  47150.       PocCena    Numeric(18, 6),
  47151.       KrCena    Numeric(18, 6),
  47152.       Kolic        Numeric(18, 6)
  47153.     )
  47154.     -------------------
  47155.     -- Razliki vo ceni
  47156.     -------------------
  47157.     SET @SSQL = 'SELECT R.Sifra_OE, R.Sifra_Art, 
  47158.     SUM((dbo.fn_VratiCena(R.KrCena,R.POsn,R.DanKrCena,'''+@SoDDV+''')-dbo.fn_VratiCena(R.PocCena,R.POsn,R.DanPocCena,'''+@SoDDV+'''))*R.Kolic) As Vr_RazlC
  47159.     FROM RazlCeni R
  47160.     INNER JOIN Katart K ON R.Sifra_Art = K.Sifra_Art  And K.SMatUsl=''M'' '
  47161.     If @Sifra_Gr IS NOT NULL 
  47162.         Begin
  47163.             Set @SSQL=@SSQL+'INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  47164.             Set @SSQL=@SSQL+'INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  47165.         End
  47166.     SET @SSQL = @SSQL + 'WHERE 1=1 '
  47167.     If @Sifra_OE Is Not Null
  47168.         SET @SSQL = @SSQL + 'AND R.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  47169.     If @KoiOE Is Not Null
  47170.         Set @SSQL = @SSQL + 'And R.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  47171.     If @Sifra_Kup Is NOT NULL
  47172.         SET @SSQL = @SSQL + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  47173.     If @Sifra_Art_Od Is NOT Null
  47174.         SET @SSQL = @SSQL + 'AND R.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  47175.     If @Sifra_Art_Do Is NOT Null
  47176.          SET @SSQL = @SSQL + 'AND R.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  47177.     If @Datum_Dok_Od Is NOT Null
  47178.         SET @SSQL = @SSQL + 'AND R.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  47179.     If @Datum_Dok_Do Is NOT Null
  47180.          SET @SSQL = @SSQL + 'AND R.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  47181.     If @Sifra_Gr IS NOT NULL
  47182.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  47183.     If @Sifra_Podg IS NOT NULL
  47184.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  47185.     If @Lokacija IS NOT NULL
  47186.         Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  47187.     Set @SSQL = @SSQL + ' GROUP BY R.Sifra_OE, R.Sifra_Art'
  47188.     INSERT #Promet (Sifra_OE, Sifra_Art, Vr_RazlC) EXEC(@SSQL)
  47189.     UPDATE #Promet
  47190.     SET TVr_Vlez = 0 WHERE TVr_Vlez IS NULL
  47191.     UPDATE #Promet
  47192.     SET TVr_Izlez = 0 WHERE TVr_Izlez IS NULL
  47193.     INSERT INTO TmpRazl (Sifra_Oe, Sifra_Art, Tek_Vr_Vlez, Tek_Vr_Izlez, Vr_RazlC)
  47194.     SELECT Sifra_OE, Sifra_Art,
  47195.     Sum(TVr_Vlez) As Tek_Vr_Vlez, Sum(TVr_Izlez) As Tek_Vr_Izlez, 
  47196.     Sum(Vr_RazlC) As Vr_RazlC
  47197.     FROM #Promet
  47198.     GROUP BY Sifra_OE, Sifra_Art
  47199.     DELETE FROM TmpRazl 
  47200.     WHERE Abs(Tek_Vr_Vlez-Tek_Vr_Izlez+Vr_RazlC) < 0.01            --PAZI, OVA VAZI ZA SLUCAI KADE TEK.ZALIHA=0
  47201.     UPDATE TmpRazl
  47202.     SET    PocCena = SoArt.Cena
  47203.     FROM SoArt
  47204.     WHERE TmpRazl.Sifra_Art = SoArt.Sifra_Art AND TmpRazl.Sifra_OE = SoArt.Sifra_OE
  47205.     UPDATE TmpRazl
  47206.     SET    POsn = Tarifi.ProcOsn, PTar = KatArt.Sifra_Tar
  47207.     FROM KatArt, Tarifi
  47208.     WHERE TmpRazl.Sifra_Art = KatArt.Sifra_Art AND KatArt.Sifra_Tar = Tarifi.Sifra_Tar
  47209.     UPDATE TmpRazl
  47210.     SET KrCena = PocCena * 0.91
  47211.     WHERE Tek_Vr_Vlez-Tek_Vr_Izlez+Vr_RazlC  > 0
  47212.     UPDATE TmpRazl
  47213.     SET KrCena = PocCena * 1.06
  47214.     WHERE Tek_Vr_Vlez-Tek_Vr_Izlez+Vr_RazlC  < 0
  47215.     UPDATE TmpRazl
  47216.     SET Kolic = Round(-1 * (Tek_Vr_Vlez-Tek_Vr_Izlez+Vr_RazlC) / (KrCena - PocCena), 0)  
  47217.     WHERE KrCena - PocCena <> 0
  47218.     UPDATE TmpRazl
  47219.     SET Kolic = 1
  47220.     WHERE Kolic = 0
  47221.     UPDATE TmpRazl
  47222.     SET KrCena = -1 * (Tek_Vr_Vlez-Tek_Vr_Izlez+Vr_RazlC) / Kolic + PocCena
  47223.  
  47224.  
  47225.  
  47226. Go
  47227. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_genlot]'))
  47228. drop procedure [dbo].[sp_genlot]
  47229.  
  47230. Go
  47231.  
  47232. CREATE  PROCEDURE sp_GenLot
  47233.     @KoiOE        varchar(100)=NULL,
  47234.     @SurGotov    char(1)='S',    --S-surovini,G-gotov pr.
  47235.     @Sifra_Dob    char(6)=NULL,    --treba samo za surovini
  47236.     @Datum        smalldatetime,
  47237.     @KojDatum    char(1)='D',        --D-dat.dok,V-dat.vnes
  47238.     @Lot        varchar(30)='' OUTPUT
  47239. AS
  47240. DECLARE @SSQL varchar(3000)
  47241. DECLARE @OznDob as varchar(10)
  47242. Declare @Br as smallint
  47243. Declare @dmy as varchar(6)
  47244. IF Day(@Datum) < 10 
  47245.     SET @dmy = '0' + ltrim(CAST(Day(@Datum) as char(1)))
  47246. ELSE
  47247.     SET @dmy = ltrim(CAST(Day(@Datum) as char(2)))
  47248. IF Month(@Datum) < 10 
  47249.     SET @dmy = @dmy + '0' + ltrim(CAST(MONTH(@Datum) as char(1)))
  47250. ELSE
  47251.     SET @dmy = @dmy + ltrim(CAST(MONTH(@Datum) as char(2)))
  47252. SET @dmy = @dmy + Substring(CAST(YEAR(@Datum) as char(4)),3,2)
  47253. CREATE TABLE #TmpBr
  47254. (Broj    smallint)
  47255. SET @SSQL = 'SELECT COUNT(DISTINCT S.Sifra_Art) FROM Stavr S 
  47256. INNER JOIN Dokr D ON S.DokrID=D.DokrID WHERE S.VlIzl=''V'' AND D.Sifra_Za=''2'' AND '
  47257. IF @KojDatum='V'
  47258.     SET @SSQL = @SSQL + 'db.fn_VratiDatum(D.Datum_Vnes)='''+cast(@Datum as varchar(35))+''' '
  47259. Else
  47260.     SET @SSQL = @SSQL + 'S.Datum_Dok='''+cast(@Datum as varchar(35))+''' '
  47261. IF @SurGotov='S'
  47262.     SET @SSQL = @SSQL + 'AND D.Sifra_Kup='+ @Sifra_Dob
  47263. INSERT INTO #TmpBr EXEC (@SSQL)
  47264. SELECT @Br=Broj FROM #TmpBr
  47265. IF @Br IS NULL SET @Br = 0
  47266. if @Br > 98 SET @Br = 98
  47267. SET @Br = @Br + 1
  47268. IF @SurGotov='S'
  47269. Begin
  47270.     SELECT @OznDob = SkrOznaka FROM Komint WHERE Sifra_Kup=@Sifra_Dob
  47271.     IF @OznDob IS NULL SET @OznDob='XX'
  47272.     IF Len(@OznDob)=0 SET  @OznDob='XX'
  47273.     IF Len(@OznDob)=1 SET  @OznDob=@OznDob+'X'
  47274.     SET @Lot = @dmy +Substring(@OznDob,1,2)
  47275.     IF @Br<=9 
  47276.         SET @Lot = @Lot + '0' + cast(@Br as char(1))
  47277.     ELSE
  47278.         SET @Lot = @Lot + cast(@Br as char(2))
  47279. End
  47280. ELSE
  47281. Begin
  47282.     SET @Lot = @dmy 
  47283.     IF @Br<=9 
  47284.         SET @Lot = @Lot + '0' + cast(@Br as char(1))
  47285.     ELSE
  47286.         SET @Lot = @Lot + cast(@Br as char(2))
  47287. End
  47288.  
  47289.  
  47290.  
  47291. Go
  47292. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_genodobrenija]'))
  47293. drop procedure [dbo].[sp_genodobrenija]
  47294.  
  47295. Go
  47296.  
  47297. CREATE         PROCEDURE sp_GenOdobrenija
  47298.     @ProcOdob    decimal(6,2),
  47299.     @PocDatFak    smalldatetime,
  47300.     @Sifra_Nal_Upl    smallint,
  47301.     @Dat_Upl_Od    smalldatetime,
  47302.     @Dat_Upl_Do    smalldatetime,
  47303.     @Sifra_Kup    char(6) = NULL,
  47304.     @Kto        char(10),
  47305.     @TolerRazlUpl    decimal(10,2),
  47306.     @GrpOdobKup    char(1)='D',
  47307.     @KoiCeniKup    varchar(30) = NULL,
  47308.     @DaliIAneks1    char(1)='N',
  47309.     @TolerDenaDocni smallint = NULL,
  47310.     @PoUplati    char(1) = 'D'
  47311. AS
  47312. IF @TolerDenaDocni IS NULL SET @TolerDenaDocni = 0
  47313. Declare @SSQL varchar(3000)
  47314. CREATE TABLE #TmpFin
  47315. (AnID_Upl    int,
  47316.  AnID_Fak    int,
  47317.  Sifra_OEF    smallint,
  47318.  Sifra_DokF    smallint,
  47319.  Broj_DokF    int,
  47320.  Datum_Upl    smalldatetime,
  47321.  Datum_Fak    smalldatetime,
  47322.  Rok        smallint,
  47323.  Sifra_Kup     char(6),
  47324.  Iznos_Fak    decimal(18,4),
  47325.  Izn_Plat    decimal(18,4),
  47326.  POsn1        decimal(6,2),
  47327.  POsn2        decimal(6,2),
  47328.  Osn1        decimal(18,6),
  47329.  Osn2        decimal(18,6),    --ovde dodaj pole sifra_pat ako treba
  47330.  ObrabDDV    char(1))
  47331. IF @PoUplati='D'
  47332. Begin
  47333.     CREATE TABLE #TmpUpl
  47334.     (AnID_Upl    int,
  47335.      Datum_Upl    smalldatetime)
  47336.     SET @SSQL = 'SELECT AnID, Datum_Dok FROM AnFinDok WHERE Kto=''' + @Kto  +''' AND Datum_Dok >=''' + Cast(@Dat_Upl_Od as varchar(35)) +
  47337.     ''' AND Datum_Dok <=''' + Cast(@Dat_Upl_Do as varchar(35)) + ''' AND Pobaruva>0 '
  47338.     IF @Sifra_Kup IS NOT NULL
  47339.         SET @SSQL = @SSQL + ' AND Sifra_Kup=' + @Sifra_Kup
  47340.     IF @Sifra_Nal_Upl IS NOT NULL
  47341.         SET @SSQL = @SSQL + ' AND Sifra_Nal=' + cast(@Sifra_Nal_Upl as varchar(6))   -- ovde bese gresska @Sifra_Kup
  47342.     IF @DaliIAneks1='D' OR @KoiCeniKup IS NOT NULL
  47343.     Begin
  47344.         SET @SSQL = @SSQL + ' AND Sifra_Kup IN (SELECT Sifra_Kup FROM Komint WHERE 1=1 '
  47345.         IF @DaliIAneks1='D'
  47346.             SET @SSQL = @SSQL + ' AND Aneks1 IS Not NULL AND Aneks1<>'''' '
  47347.         IF  @KoiCeniKup IS NOT NULL 
  47348.             SET @SSQL = @SSQL + ' AND KojaCena IN (' + @KoiCeniKup + ') '
  47349.         SET @SSQL = @SSQL + ') '
  47350.     End
  47351.     INSERT INTO #TmpUpl EXEC (@SSQL)
  47352.     Declare @AnIDUpl int
  47353.     Declare @DatUpl smalldatetime
  47354.     Declare TabUpl Cursor Fast_Forward For    Select  AnID_Upl, Datum_Upl From #TmpUpl 
  47355.     Open TabUpl
  47356.     Fetch Next From TabUpl Into @AnIDUpl, @DatUpl
  47357.     While @@Fetch_Status = 0
  47358.     Begin            
  47359.         SET @SSQL = 'SELECT '+cast(@AnIDUpl as varchar(10))+ ', A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, A.Rok, A.Sifra_Kup, A.Dolzi, A.Plateno_Dolzi FROM AnFinDok A 
  47360.             INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDUpl as varchar(10))+ ') OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDUpl  as varchar(10))+ 
  47361.             ')  WHERE A.Dolzi > 0 AND A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' AND A.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr)
  47362.             AND A.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) AND A.Dolzi * (1-'+ cast(@ProcOdob as varchar(10)) + '/100) - A.Plateno_Dolzi <= ' +
  47363.             cast(@TolerRazlUpl as varchar(15)) + ' AND A.Datum_Dok + A.Rok' + '+'+cast(@TolerDenaDocni as varchar(5)) + '>=''' + cast(@DatUpl as varchar(35)) + ''' '
  47364.         INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak, Izn_Plat) EXEC (@SSQL)
  47365.         Fetch Next From TabUpl Into  @AnIDUpl, @DatUpl
  47366.     End
  47367.     Close TabUpl
  47368.     Deallocate TabUpl
  47369.  
  47370.     ------- Brisi gi site stavki fakturi koi imaat nekoja uplata po rokot
  47371.     CREATE TABLE #Tmp1
  47372.     (Kolku int)
  47373.     Declare @AnIDFak int
  47374.     Declare @DatFak smalldatetime
  47375.     Declare @Rok integer
  47376.     Declare @IznFak as decimal
  47377.     Declare @Klk as integer
  47378.     Declare TabFak Cursor Fast_Forward For    Select  AnID_Fak, Datum_Fak, Rok, Iznos_Fak From #TmpFin ORDER BY AnID_Fak
  47379.     Open TabFak
  47380.     Fetch Next From TabFak Into @AnIDFak, @DatFak, @Rok, @IznFak
  47381.     While @@Fetch_Status = 0
  47382.     Begin            
  47383.         DELETE FROM #Tmp1
  47384.         SET @SSQL = 'SELECT Count(*) FROM AnFinDok A 
  47385.             INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDFak as varchar(10))+ ') OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDFak  as varchar(10))+ 
  47386.             ')  WHERE A.Pobaruva > 0 AND A.Datum_Dok >''' + cast(@DatFak+@Rok + @TolerDenaDocni as varchar(35)) + ''' AND Z.Iznos >' +
  47387.             Cast(@IznFak * @ProcOdob /100 +@TolerRazlUpl as varchar(15))
  47388.         INSERT INTO #Tmp1 EXEC (@SSQL)
  47389.         SELECT @Klk = Kolku FROM #Tmp1
  47390.         IF @Klk IS NOT NULL AND @Klk > 0    UPDATE #TmpFin SET AnID_Upl= -1 WHERE AnID_Fak=@AnIDFak
  47391.         Fetch Next From TabFak Into  @AnIDFak, @DatFak, @Rok, @IznFak
  47392.     End
  47393.     Close TabFak
  47394.     Deallocate TabFak
  47395.     DELETE FROM #TmpFin WHERE AnID_Upl = -1
  47396.  
  47397.  
  47398. End
  47399. ELSE
  47400. Begin
  47401.     SET @SSQL = 'SELECT F.AnID, F.Sifra_OE, F.Sifra_Dok, F.Broj_Dok, F.Datum_Dok, F.Rok, F.Sifra_kup, F.Dolzi 
  47402.     FROM AnFinDok F  INNER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup
  47403.     WHERE F.Dolzi > 0 AND F.Datum_Dok >=''' + cast(@PocDatFak as varchar(35)) + ''' AND F.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr) 
  47404.     AND K.Spec_Rabat IS NOT NULL  AND K.Spec_Rabat > 0 '
  47405.     IF @Sifra_Kup IS NOT NULL
  47406.         SET @SSQL = @SSQL + ' AND F.Sifra_Kup = ' + @Sifra_Kup 
  47407.     IF @Kto IS NOT NULL
  47408.         SET @SSQL = @SSQL + ' AND F.Kto = ' + @Kto 
  47409.     INSERT INTO #TmpFin (AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak) EXEC (@SSQL)
  47410. End
  47411. ---------
  47412. CREATE TABLE #TmpFak
  47413. (Sifra_Oe    smallint,
  47414.  Sifra_Dok    smallint,
  47415.  Broj_Dok    int,
  47416.  POsn        decimal(6,2),
  47417.  Osn        decimal(18,6),
  47418.  Spec_Forma_Pec varchar(10))
  47419. INSERT INTO #TmpFak (Sifra_Oe, Sifra_Dok, Broj_Dok, POsn, Osn, Spec_Forma_Pec) 
  47420. SELECT S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, 'D')), D.Spec_Forma_Pec
  47421. FROM Stavr S INNER JOIN #TmpFin F ON S.Sifra_OE=F.Sifra_OEF AND S.Sifra_Dok=F.Sifra_DokF AND S.Broj_Dok=F.Broj_DokF
  47422. INNER JOIN Dokr D ON S.Sifra_OE=D.Sifra_OE AND S.Sifra_Dok=D.Sifra_Dok AND S.Broj_Dok=D.Broj_Dok 
  47423. GROUP BY S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, D.Spec_Forma_Pec
  47424.  
  47425. UPDATE #TmpFin SET POsn1=F.POsn, Osn1=round(F.Osn,2), ObrabDDV='D' FROM #TmpFak F WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND 
  47426. #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn>=15
  47427. UPDATE #TmpFin SET POsn2=F.POsn, Osn2=round(F.Osn,2), ObrabDDV='D' FROM #TmpFak F WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND 
  47428. #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn<15
  47429. UPDATE #TmpFin SET ObrabDDV='X' FROM #TmpFak F WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND 
  47430. #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N'            ---dod.13.04.06
  47431. UPDATE #TmpFin SET ObrabDDV='X' FROM DokrZb F WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND 
  47432. #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N'    --dod.15.09.06
  47433. DELETE FROM #TmpFin WHERE ObrabDDV='X'                        ---dod.13.04.06
  47434. UPDATE #TmpFin SET POsn1=S.Stapka1, POsn2=S.Stapka2, Osn1=Round(F.Danok1 + F.Danok1/(S.Stapka1/100),2), 
  47435. Osn2=Round(F.Danok2 + F.Danok2/(S.Stapka2/100),2), ObrabDDV='D' FROM AnFinDok F, DDVStapki S 
  47436. WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND 
  47437. #TmpFin.ObrabDDV IS NULL AND F.Datum_Dok >= S.Datum_Od And F.Datum_Dok <= S.Datum_Do AND (F.Danok1 > 0 OR F.Danok2 >0)
  47438. UPDATE #TmpFin SET POsn2=5, Osn2=Iznos_Fak WHERE ObrabDDV IS NULL 
  47439. SELECT T.*, K.Spec_Rabat FROM #TmpFin T INNER JOIN Komint K ON T.Sifra_Kup=K.Sifra_Kup
  47440. ORDER BY K.Sifra_Reg, T.Sifra_Kup, T.AnID_Fak        --dodaj vo order na sredina, sifra_pat ako treba
  47441. /*CREATE TABLE #TmpSpremna
  47442. (AnID_Upl    int,
  47443.  AnID_Fak    int,
  47444.  Sifra_OEF    smallint,
  47445.  Sifra_DokF    smallint,
  47446.  Broj_DokF    int,
  47447.  Datum_Upl    smalldatetime,
  47448.  Datum_Fak    smalldatetime,
  47449.  Rok        smallint,
  47450.  Sifra_Kup     char(6),
  47451.  Iznos_Fak    decimal(18,4),
  47452.  POsn        decimal(6,2),
  47453.  IznDDV    decimal(18,6),
  47454.  ObrabDDV    char(1))
  47455. INSERT INTO #TmpSpremna (AnID_Upl, AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Upl, Datum_Fak, Rok, Sifra_Kup, Iznos_Fak, POsn, IznDDV)
  47456. SELECT F.AnID_Upl,F.AnID_Fak, F.Sifra_OEF, F.Sifra_DokF, F.Broj_DokF, F.Datum_Upl, F.Datum_Fak, F.Rok, F.Sifra_Kup, F.Iznos_Fak, S.POsn, S.Osn
  47457. FROM     #TmpFin F LEFT OUTER JOIN #TmpFak S ON F.Sifra_OEF=S.Sifa_OE AND F.Sifra_DokF=S.Sifra_Dok AND F.Broj_DokF=S.Broj_Dok
  47458. UPDATE #TmpFin SET POsn1=S.Stapka1, POsn2=S.Stapka2, Osn1=Round(F.Danok1 + F.Danok1/(S.Stapka1/100),2), 
  47459. Osn2=Round(F.Danok2 + F.Danok2/(S.Stapka2/100),2), ObrabDDV='D' FROM AnFinDok F, DDVStapki S 
  47460. WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND 
  47461. #TmpFin.ObrabDDV IS NULL AND F.Datum_Dok >= S.Datum_Od And F.Datum_Dok <= S.Datum_Do AND (F.Danok1 > 0 OR F.Danok2 >0)
  47462. UPDATE #TmpFin SET POsn2=5, Osn2=Iznos_Fak WHERE ObrabDDV IS NULL 
  47463. */
  47464.  
  47465.  
  47466. Go
  47467. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_genodobrenija_dva_rabati]'))
  47468. drop procedure [dbo].[sp_genodobrenija_dva_rabati]
  47469.  
  47470. Go
  47471.  
  47472.  
  47473. CREATE          PROCEDURE sp_GenOdobrenija_Dva_Rabati
  47474.     @DenoviOdob1    smallint = 7,
  47475.     @PocDatFak    smalldatetime,
  47476.     @Sifra_Nal_Upl    smallint,
  47477.     @Dat_Upl_Od    smalldatetime,
  47478.     @Dat_Upl_Do    smalldatetime,
  47479.     @Sifra_Kup    char(6) = NULL,
  47480.     @Kto        char(10),
  47481.     @TolerRazlUpl    decimal(10,2),
  47482.     @GrpOdobKup    char(1)='D',
  47483.     @KoiCeniKup    varchar(30) = NULL,
  47484.     @DaliIAneks1    char(1)='N',
  47485.     @TolerDenaDocni smallint = NULL,
  47486.     @PoUplati    char(1) = 'D',    -- 
  47487.     @DodRabat    smallint = Null,
  47488.     @DenaMaxRabPlakOdOrg char(1)='N',
  47489.     @Odobr2Rabati char(1)='D'
  47490. AS
  47491.     IF @TolerDenaDocni IS NULL SET @TolerDenaDocni = 0
  47492.     Declare @ProcDodRab as smallint
  47493.     Set @ProcDodRab = 1
  47494.     If @DodRabat IS NOT NULL AND @DodRabat > 1 Set @ProcDodRab = @DodRabat
  47495.  
  47496.     Declare @SSQL varchar(3000)
  47497.     CREATE TABLE #TmpFin
  47498.     (
  47499.      AnID_Upl    int,
  47500.      AnID_Fak    int,
  47501.      Sifra_OEF    smallint,
  47502.      Sifra_DokF    smallint,
  47503.      Broj_DokF    int,
  47504.      Datum_Upl    smalldatetime,
  47505.      Datum_Fak    smalldatetime,
  47506.      Rok        smallint,
  47507.      Sifra_Kup     char(6),
  47508.      Iznos_Fak    decimal(18,4),
  47509.      Izn_Plat    decimal(18,4),
  47510.      POsn1        decimal(6,2),
  47511.      POsn2        decimal(6,2),
  47512.      Osn1        decimal(18,6),
  47513.      Osn2        decimal(18,6),    --ovde dodaj pole sifra_pat ako treba
  47514.      ObrabDDV    char(1),
  47515.      ProcOdobr    decimal(6,2)
  47516.     )
  47517.  
  47518.     IF @PoUplati='D'
  47519.     Begin
  47520.         CREATE TABLE #TmpUpl
  47521.         ( 
  47522.          AnID_Upl    int,
  47523.          Datum_Upl    smalldatetime
  47524.         )
  47525.  
  47526.         SET @SSQL = 'SELECT AnID, Datum_Dok 
  47527.                 FROM AnFinDok 
  47528.                 WHERE Kto=''' + @Kto  +''' AND Datum_Dok >=''' + Cast(@Dat_Upl_Od as varchar(35)) +
  47529.                 ''' AND Datum_Dok <=''' + Cast(@Dat_Upl_Do as varchar(35)) + ''' AND Pobaruva > 0 '
  47530.         IF @Sifra_Kup IS NOT NULL
  47531.             SET @SSQL = @SSQL + ' AND Sifra_Kup=' + @Sifra_Kup
  47532.         IF @Sifra_Nal_Upl IS NOT NULL
  47533.             SET @SSQL = @SSQL + ' AND Sifra_Nal=' + cast(@Sifra_Nal_Upl as varchar(6))
  47534.         IF @DaliIAneks1='D' OR @KoiCeniKup IS NOT NULL
  47535.         Begin
  47536.             SET @SSQL = @SSQL + ' AND Sifra_Kup IN (SELECT Sifra_Kup FROM Komint WHERE 1=1 '
  47537.             IF @DaliIAneks1='D'
  47538.                 SET @SSQL = @SSQL + ' AND Aneks1 IS Not NULL AND Aneks1<>'''' '
  47539.             IF  @KoiCeniKup IS NOT NULL 
  47540.                 SET @SSQL = @SSQL + ' AND KojaCena IN (' + @KoiCeniKup + ') '
  47541.             SET @SSQL = @SSQL + ') '
  47542.         End
  47543.         INSERT INTO #TmpUpl EXEC (@SSQL)
  47544.  
  47545.         Declare @AnIDUpl int
  47546.         Declare @DatUpl smalldatetime
  47547.         Declare TabUpl Cursor Fast_Forward For    Select  AnID_Upl, Datum_Upl From #TmpUpl 
  47548.         Open TabUpl
  47549.         Fetch Next From TabUpl Into @AnIDUpl, @DatUpl
  47550.         While @@Fetch_Status = 0
  47551.         Begin
  47552.             -- Platenite fakturi predvreme do @DenovoOdob1
  47553.             IF @Odobr2Rabati='D'        --da iskoristime proc.i za onie koi imaat eden rabat
  47554.             Begin
  47555.             SET @SSQL = 'SELECT ' + Cast(@AnIDUpl as varchar(10))+ ', A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, A.Rok, 
  47556.                           A.Sifra_Kup, A.Dolzi, A.Plateno_Dolzi, 
  47557.                 (Case WHEN Spec_Forma_Pec LIKE ''P%'' THEN Cast(Replace(Spec_Forma_Pec, ''P'', '''') as decimal(6,2)) + ' + Cast(@ProcDodRab as varchar(5)) + ' ELSE 0 END) ProcRabat 
  47558.                 FROM AnFinDok A 
  47559.                 INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDUpl as varchar(10))+ ') 
  47560.                             OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDUpl  as varchar(10))+ ')  
  47561.                 INNER JOIN Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  47562.                 INNER JOIN Dokr D ON A.Sifra_OE=D.Sifra_OE AND A.Sifra_Dok=D.Sifra_Dok AND A.Broj_Dok=D.Broj_Dok
  47563.                 INNER JOIN OrgEd O ON D.Sifra_Oe=O.Sifra_Oe
  47564.                 WHERE A.Dolzi > 0 AND A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' 
  47565.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr)
  47566.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) 
  47567.                 AND A.Dolzi * (1-((Case WHEN Spec_Forma_Pec LIKE ''P%'' THEN Cast(Replace(Spec_Forma_Pec, ''P'', '''') as decimal(6,2)) ELSE 0 END) + ' + Cast(@ProcDodRab as varchar(5)) + ')/100) - A.Plateno_Dolzi <= ' + Cast(@TolerRazlUpl as varchar(15)) + ' 
  47568.                 AND A.Datum_Dok + ' 
  47569.                 IF @DenaMaxRabPlakOdOrg='D'
  47570.                     SET @SSQL = @SSQL+'O.DenaMaxRabPlak ' 
  47571.                 Else
  47572.                     SET @SSQL = @SSQL+ Cast(@DenoviOdob1 as varchar(3)) 
  47573.                 SET @SSQL = @SSQL+ '>=''' + cast(@DatUpl as varchar(35)) + ''' AND D.Spec_Forma_Pec IS NOT NULL AND D.Spec_Forma_Pec LIKE ''P%'' 
  47574.                 AND Substring(D.Spec_Forma_Pec,3,6)<>''D00V00'' '    --ovie se dok.za koi nema 2 rokovi
  47575.                 --print @SSQL
  47576.             INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak, Izn_Plat, ProcOdobr) EXEC (@SSQL)
  47577.             End
  47578.  
  47579.             SET @SSQL = 'SELECT ' + Cast(@AnIDUpl as varchar(10))+ ', A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, A.Rok, 
  47580.                         A.Sifra_Kup, A.Dolzi, A.Plateno_Dolzi, (Case WHEN Spec_Forma_Pec LIKE ''P%'' THEN Cast(Replace(Spec_Forma_Pec, ''P'', '''') as decimal(6,2)) ELSE 0 END)
  47581.                 FROM AnFinDok A 
  47582.                 INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDUpl as varchar(10))+ ') 
  47583.                             OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDUpl  as varchar(10))+ ')  
  47584.                 INNER JOIN Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  47585.                 INNER JOIN Dokr D ON A.Sifra_OE=D.Sifra_OE AND A.Sifra_Dok=D.Sifra_Dok AND A.Broj_Dok=D.Broj_Dok
  47586.                 INNER JOIN OrgEd O ON D.Sifra_Oe=O.Sifra_Oe
  47587.                 WHERE A.Dolzi > 0 AND A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' 
  47588.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr)
  47589.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) 
  47590.                 AND A.Dolzi * (1- (Case WHEN Spec_Forma_Pec LIKE ''P%'' THEN Cast(Replace(Spec_Forma_Pec, ''P'', '''') as decimal(6,2)) ELSE 0 END)/100) - A.Plateno_Dolzi <= ' + Cast(@TolerRazlUpl as varchar(15)) + ' 
  47591.                 AND A.Datum_Dok + '
  47592.                 IF @DenaMaxRabPlakOdOrg='D'
  47593.                     SET @SSQL = @SSQL+'O.DenaRabPlak' 
  47594.                 Else
  47595.                     SET @SSQL = @SSQL+'A.Rok'  
  47596.                 SET @SSQL = @SSQL+'+'+cast(@TolerDenaDocni as varchar(5)) + '>=''' + cast(@DatUpl as varchar(35)) + ''' 
  47597.                 AND D.Spec_Forma_Pec IS NOT NULL AND D.Spec_Forma_Pec LIKE ''P%'' '
  47598.             INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak, Izn_Plat, ProcOdobr) EXEC (@SSQL)
  47599.  
  47600.             Fetch Next From TabUpl Into  @AnIDUpl, @DatUpl
  47601.         End
  47602.         Close TabUpl
  47603.         Deallocate TabUpl
  47604.  
  47605.         ------- Brisi gi site stavki fakturi koi imaat nekoja uplata po rokot
  47606.         CREATE TABLE #Tmp1
  47607.         (
  47608.          Kolku int
  47609.         )
  47610.         Declare @AnIDFak int
  47611.         Declare @DatFak smalldatetime
  47612.         Declare @Rok integer
  47613.         Declare @IznFak as decimal
  47614.         Declare @Klk as integer
  47615.         Declare @ProcOdobrFin as decimal(6,2)
  47616.     
  47617.         Declare TabFak Cursor Fast_Forward For    Select  AnID_Fak, Datum_Fak, Rok, Iznos_Fak, ProcOdobr From #TmpFin ORDER BY AnID_Fak
  47618.         Open TabFak
  47619.         Fetch Next From TabFak Into @AnIDFak, @DatFak, @Rok, @IznFak, @ProcOdobrFin
  47620.         While @@Fetch_Status = 0
  47621.         Begin            
  47622.             DELETE FROM #Tmp1
  47623.             SET @SSQL = 'SELECT Count(*) FROM AnFinDok A 
  47624.                 INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDFak as varchar(10))+ ') OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDFak  as varchar(10))+ ')  
  47625.                 WHERE A.Pobaruva > 0 AND A.Datum_Dok >''' + cast(@DatFak + @Rok + @TolerDenaDocni as varchar(35)) + ''' 
  47626.                 AND Z.Iznos >' + Cast(@IznFak * @ProcOdobrFin /100 + @TolerRazlUpl as varchar(15))
  47627.             INSERT INTO #Tmp1 EXEC (@SSQL)
  47628.  
  47629.             SELECT @Klk = Kolku FROM #Tmp1
  47630.  
  47631.             IF @Klk IS NOT NULL AND @Klk > 0    
  47632.                 UPDATE #TmpFin SET AnID_Upl= -1 WHERE AnID_Fak=@AnIDFak
  47633.  
  47634.             Fetch Next From TabFak Into  @AnIDFak, @DatFak, @Rok, @IznFak, @ProcOdobrFin
  47635.         End
  47636.         Close TabFak
  47637.         Deallocate TabFak
  47638.  
  47639.         DELETE FROM #TmpFin WHERE AnID_Upl = -1
  47640.     End
  47641.     ELSE -- ne funkcionira ako ne e po Uplati
  47642.     Begin
  47643.         SET @SSQL = 'SELECT F.AnID, F.Sifra_OE, F.Sifra_Dok, F.Broj_Dok, F.Datum_Dok, F.Rok, F.Sifra_kup, F.Dolzi 
  47644.             FROM AnFinDok F  
  47645.             INNER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup
  47646.             WHERE F.Dolzi > 0 AND F.Datum_Dok >=''' + cast(@PocDatFak as varchar(35)) + ''' AND F.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr) 
  47647.             AND K.Spec_Rabat IS NOT NULL  AND K.Spec_Rabat > 0 '
  47648.         IF @Sifra_Kup IS NOT NULL
  47649.             SET @SSQL = @SSQL + ' AND F.Sifra_Kup = ' + @Sifra_Kup 
  47650.         IF @Kto IS NOT NULL
  47651.             SET @SSQL = @SSQL + ' AND F.Kto = ' + @Kto 
  47652.         INSERT INTO #TmpFin (AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak) EXEC (@SSQL)
  47653.     End
  47654.     ---------
  47655.  
  47656.     CREATE TABLE #TmpFak
  47657.     (
  47658.      Sifra_Oe    smallint,
  47659.      Sifra_Dok    smallint,
  47660.      Broj_Dok    int,
  47661.      POsn        decimal(6,2),
  47662.      Osn        decimal(18,6),
  47663.      Spec_Forma_Pec varchar(10)
  47664.     )
  47665.         
  47666.     INSERT INTO #TmpFak (Sifra_Oe, Sifra_Dok, Broj_Dok, POsn, Osn, Spec_Forma_Pec) 
  47667.     SELECT S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, 'D')), D.Spec_Forma_Pec
  47668.     FROM Stavr S 
  47669.     INNER JOIN #TmpFin F ON S.Sifra_OE=F.Sifra_OEF AND S.Sifra_Dok=F.Sifra_DokF AND S.Broj_Dok=F.Broj_DokF
  47670.     INNER JOIN Dokr D ON S.Sifra_OE=D.Sifra_OE AND S.Sifra_Dok=D.Sifra_Dok AND S.Broj_Dok=D.Broj_Dok 
  47671.     GROUP BY S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, D.Spec_Forma_Pec
  47672.  
  47673.     UPDATE #TmpFin 
  47674.     SET POsn1=F.POsn, Osn1=round(F.Osn,2), ObrabDDV='D' 
  47675.     FROM #TmpFak F 
  47676.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn>=15
  47677.  
  47678.     UPDATE #TmpFin 
  47679.     SET POsn2=F.POsn, Osn2=round(F.Osn,2), ObrabDDV='D' 
  47680.     FROM #TmpFak F 
  47681.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn<15
  47682.  
  47683.     UPDATE #TmpFin 
  47684.     SET ObrabDDV='X' 
  47685.     FROM #TmpFak F 
  47686.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N' ---dod.13.04.06
  47687.  
  47688.     UPDATE #TmpFin 
  47689.     SET ObrabDDV='X' 
  47690.     FROM DokrZb F 
  47691.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N'    --dod.15.09.06
  47692.  
  47693.     DELETE FROM #TmpFin WHERE ObrabDDV='X'                        ---dod.13.04.06
  47694.  
  47695.     UPDATE #TmpFin 
  47696.     SET POsn1=S.Stapka1, POsn2=S.Stapka2, Osn1=Round(F.Danok1 + F.Danok1/(S.Stapka1/100),2), 
  47697.         Osn2=Round(F.Danok2 + F.Danok2/(S.Stapka2/100),2), ObrabDDV='D' 
  47698.     FROM AnFinDok F, DDVStapki S 
  47699.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND 
  47700.     #TmpFin.ObrabDDV IS NULL AND F.Datum_Dok >= S.Datum_Od And F.Datum_Dok <= S.Datum_Do AND (F.Danok1 > 0 OR F.Danok2 >0)
  47701.  
  47702.     UPDATE #TmpFin 
  47703.     SET POsn2=5, Osn2=Iznos_Fak 
  47704.     WHERE ObrabDDV IS NULL 
  47705.  
  47706.     SELECT T.*, K.Spec_Rabat 
  47707.     FROM #TmpFin T 
  47708.     INNER JOIN Komint K ON T.Sifra_Kup=K.Sifra_Kup
  47709.     ORDER BY K.Sifra_Reg, T.Sifra_Kup, T.AnID_Fak        --dodaj vo order na sredina, sifra_pat ako treba
  47710.  
  47711.  
  47712. Go
  47713. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_genodobrenija_dva_rabatisp]'))
  47714. drop procedure [dbo].[sp_genodobrenija_dva_rabatisp]
  47715.  
  47716. Go
  47717.  
  47718.  
  47719.  
  47720. CREATE        PROCEDURE sp_GenOdobrenija_Dva_RabatiSP
  47721.     @DenoviOdob1    smallint = 2,
  47722.     @PocDatFak    smalldatetime,
  47723.     @Sifra_Nal_Upl    smallint,
  47724.     @Dat_Upl_Od    smalldatetime,
  47725.     @Dat_Upl_Do    smalldatetime,
  47726.     @Sifra_Kup    char(6) = NULL,
  47727.     @Kto        char(10),
  47728.     @TolerRazlUpl    decimal(10,2),
  47729.     @GrpOdobKup    char(1)='D',
  47730.     @KoiCeniKup    varchar(30) = NULL,
  47731.     @DaliIAneks1    char(1)='N',
  47732.     @TolerDenaDocni smallint = NULL,
  47733.     @PoUplati    char(1) = 'D',    -- 
  47734.     @DodRabat    smallint = Null,
  47735.     @DenaMaxRabPlakOdOrg char(1)='N',
  47736.     @Odobr2Rabati char(1)='D'
  47737. AS
  47738.     IF @TolerDenaDocni IS NULL SET @TolerDenaDocni = 0
  47739.     Declare @ProcDodRab as smallint
  47740.     Set @ProcDodRab = 2
  47741.     If @DodRabat IS NOT NULL  Set @ProcDodRab = @DodRabat
  47742.  
  47743.     Declare @SSQL varchar(3000)
  47744.     CREATE TABLE #TmpFin
  47745.     (
  47746.      AnID_Upl    int,
  47747.      AnID_Fak    int,
  47748.      Sifra_OEF    smallint,
  47749.      Sifra_DokF    smallint,
  47750.      Broj_DokF    int,
  47751.      Datum_Upl    smalldatetime,
  47752.      Datum_Fak    smalldatetime,
  47753.      Rok        smallint,
  47754.      Sifra_Kup     char(6),
  47755.      Iznos_Fak    decimal(18,4),
  47756.      Izn_Plat    decimal(18,4),
  47757.      POsn1        decimal(6,2),
  47758.      POsn2        decimal(6,2),
  47759.      Osn1        decimal(18,6),
  47760.      Osn2        decimal(18,6),    --ovde dodaj pole sifra_pat ako treba
  47761.      ObrabDDV    char(1),
  47762.      ProcOdobr    decimal(6,2)
  47763.     )
  47764.  
  47765.     IF @PoUplati='D'
  47766.     Begin
  47767.         CREATE TABLE #TmpUpl
  47768.         ( 
  47769.          AnID_Upl    int,
  47770.          Datum_Upl    smalldatetime
  47771.         )
  47772.  
  47773.         SET @SSQL = 'SELECT AnID, Datum_Dok 
  47774.                 FROM AnFinDok 
  47775.                 WHERE Kto=''' + @Kto  +''' AND Datum_Dok >=''' + Cast(@Dat_Upl_Od as varchar(35)) +
  47776.                 ''' AND Datum_Dok <=''' + Cast(@Dat_Upl_Do as varchar(35)) + ''' AND Pobaruva > 0 '
  47777.         IF @Sifra_Kup IS NOT NULL
  47778.             SET @SSQL = @SSQL + ' AND Sifra_Kup=' + @Sifra_Kup
  47779.         IF @Sifra_Nal_Upl IS NOT NULL
  47780.             SET @SSQL = @SSQL + ' AND Sifra_Nal=' + cast(@Sifra_Nal_Upl as varchar(6))
  47781.         IF @DaliIAneks1='D' OR @KoiCeniKup IS NOT NULL
  47782.         Begin
  47783.             SET @SSQL = @SSQL + ' AND Sifra_Kup IN (SELECT Sifra_Kup FROM Komint WHERE 1=1 '
  47784.             IF @DaliIAneks1='D'
  47785.                 SET @SSQL = @SSQL + ' AND Aneks1 IS Not NULL AND Aneks1<>'''' '
  47786.             IF  @KoiCeniKup IS NOT NULL 
  47787.                 SET @SSQL = @SSQL + ' AND KojaCena IN (' + @KoiCeniKup + ') '
  47788.             SET @SSQL = @SSQL + ') '
  47789.         End
  47790.         INSERT INTO #TmpUpl EXEC (@SSQL)
  47791.  
  47792.         Declare @AnIDUpl int
  47793.         Declare @DatUpl smalldatetime
  47794.         Declare TabUpl Cursor Fast_Forward For    Select  AnID_Upl, Datum_Upl From #TmpUpl 
  47795.         Open TabUpl
  47796.         Fetch Next From TabUpl Into @AnIDUpl, @DatUpl
  47797.         While @@Fetch_Status = 0
  47798.         Begin
  47799.             -- Platenite fakturi predvreme do @DenovoOdob1
  47800.             IF @Odobr2Rabati='D'        --da iskoristime proc.i za onie koi imaat eden rabat
  47801.             Begin
  47802.             SET @SSQL = 'SELECT ' + Cast(@AnIDUpl as varchar(10))+ ', A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, Kup.TolerDena_Dosp+ dbo.fn_VratiDenaBezVikend(A.Datum_Dok)+'+Cast(@DenoviOdob1 as varchar(3))+', 
  47803.                           A.Sifra_Kup, A.Dolzi, A.Plateno_Dolzi, 5 ProcRabat 
  47804.                 FROM AnFinDok A 
  47805.                 INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDUpl as varchar(10))+ ') 
  47806.                             OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDUpl  as varchar(10))+ ')  
  47807.                 INNER JOIN Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  47808.                 INNER JOIN OrgEd O ON A.Sifra_Oe=O.Sifra_Oe
  47809.                 WHERE A.Dolzi > 0 AND A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' 
  47810.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr)
  47811.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) 
  47812.                 AND A.Dolzi * (1- 5/100) - A.Plateno_Dolzi <= ' + Cast(@TolerRazlUpl as varchar(15)) + ' 
  47813.                 AND A.Datum_Dok + Kup.TolerDena_Dosp+ dbo.fn_VratiDenaBezVikend(A.Datum_Dok) +'
  47814.                 IF @DenaMaxRabPlakOdOrg='D'
  47815.                     SET @SSQL = @SSQL+'O.DenaMaxRabPlak ' 
  47816.                 Else
  47817.                     SET @SSQL = @SSQL+ Cast(@DenoviOdob1 as varchar(3)) 
  47818.                 SET @SSQL = @SSQL+ '>=''' + cast(@DatUpl as varchar(35)) + ''' '    
  47819.                 --print @SSQL
  47820.             INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak, Izn_Plat, ProcOdobr) EXEC (@SSQL)
  47821.             End
  47822.  
  47823.             SET @SSQL = 'SELECT ' + Cast(@AnIDUpl as varchar(10))+ ', A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, 30, 
  47824.                         A.Sifra_Kup, A.Dolzi, A.Plateno_Dolzi, 3 
  47825.                 FROM AnFinDok A 
  47826.                 INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDUpl as varchar(10))+ ') 
  47827.                             OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDUpl  as varchar(10))+ ')  
  47828.                 INNER JOIN Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  47829.                 INNER JOIN OrgEd O ON A.Sifra_Oe=O.Sifra_Oe
  47830.                 WHERE A.Dolzi > 0 AND A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' 
  47831.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr)
  47832.                 AND A.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) 
  47833.                 AND A.Dolzi * (1- 3/100) - A.Plateno_Dolzi <= ' + Cast(@TolerRazlUpl as varchar(15)) + ' 
  47834.                 AND A.Datum_Dok + '
  47835.                 IF @DenaMaxRabPlakOdOrg='D'
  47836.                     SET @SSQL = @SSQL+'O.DenaRabPlak' 
  47837.                 Else
  47838.                     SET @SSQL = @SSQL+'30'  
  47839.                 SET @SSQL = @SSQL+'+'+cast(@TolerDenaDocni as varchar(5)) + '>=''' + cast(@DatUpl as varchar(35)) + ''' '
  47840.             INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak, Izn_Plat, ProcOdobr) EXEC (@SSQL)
  47841.  
  47842.             Fetch Next From TabUpl Into  @AnIDUpl, @DatUpl
  47843.         End
  47844.         Close TabUpl
  47845.         Deallocate TabUpl
  47846.  
  47847.         ------- Brisi gi site stavki fakturi koi imaat nekoja uplata po rokot
  47848.         CREATE TABLE #Tmp1
  47849.         (
  47850.          Kolku int
  47851.         )
  47852.         Declare @AnIDFak int
  47853.         Declare @DatFak smalldatetime
  47854.         Declare @Rok integer
  47855.         Declare @IznFak as decimal
  47856.         Declare @Klk as integer
  47857.         Declare @ProcOdobrFin as decimal(6,2)
  47858.     
  47859.         Declare TabFak Cursor Fast_Forward For    Select  AnID_Fak, Datum_Fak, Rok, Iznos_Fak, ProcOdobr From #TmpFin ORDER BY AnID_Fak
  47860.         Open TabFak
  47861.         Fetch Next From TabFak Into @AnIDFak, @DatFak, @Rok, @IznFak, @ProcOdobrFin
  47862.         While @@Fetch_Status = 0
  47863.         Begin            
  47864.             DELETE FROM #Tmp1
  47865.             SET @SSQL = 'SELECT Count(*) FROM AnFinDok A 
  47866.                 INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDFak as varchar(10))+ ') OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDFak  as varchar(10))+ ')  
  47867.                 WHERE A.Pobaruva > 0 AND A.Datum_Dok >''' + cast(@DatFak + @Rok + @TolerDenaDocni as varchar(35)) + ''' 
  47868.                 AND Z.Iznos >' + Cast(@IznFak * @ProcOdobrFin /100 + @TolerRazlUpl as varchar(15))
  47869.             INSERT INTO #Tmp1 EXEC (@SSQL)
  47870.  
  47871.             SELECT @Klk = Kolku FROM #Tmp1
  47872.  
  47873.             IF @Klk IS NOT NULL AND @Klk > 0    
  47874.                 UPDATE #TmpFin SET AnID_Upl= -1 WHERE AnID_Fak=@AnIDFak
  47875.  
  47876.             Fetch Next From TabFak Into  @AnIDFak, @DatFak, @Rok, @IznFak, @ProcOdobrFin
  47877.         End
  47878.         Close TabFak
  47879.         Deallocate TabFak
  47880.  
  47881.         DELETE FROM #TmpFin WHERE AnID_Upl = -1
  47882.     End
  47883.     ELSE -- ne funkcionira ako ne e po Uplati
  47884.     Begin
  47885.         SET @SSQL = 'SELECT F.AnID, F.Sifra_OE, F.Sifra_Dok, F.Broj_Dok, F.Datum_Dok, F.Rok, F.Sifra_kup, F.Dolzi 
  47886.             FROM AnFinDok F  
  47887.             INNER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup
  47888.             WHERE F.Dolzi > 0 AND F.Datum_Dok >=''' + cast(@PocDatFak as varchar(35)) + ''' AND F.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr) 
  47889.             AND K.Spec_Rabat IS NOT NULL  AND K.Spec_Rabat > 0 '
  47890.         IF @Sifra_Kup IS NOT NULL
  47891.             SET @SSQL = @SSQL + ' AND F.Sifra_Kup = ' + @Sifra_Kup 
  47892.         IF @Kto IS NOT NULL
  47893.             SET @SSQL = @SSQL + ' AND F.Kto = ' + @Kto 
  47894.         INSERT INTO #TmpFin (AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak) EXEC (@SSQL)
  47895.     End
  47896.     ---------
  47897.  
  47898.     CREATE TABLE #TmpFak
  47899.     (
  47900.      Sifra_Oe    smallint,
  47901.      Sifra_Dok    smallint,
  47902.      Broj_Dok    int,
  47903.      POsn        decimal(6,2),
  47904.      Osn        decimal(18,6),
  47905.      Spec_Forma_Pec varchar(10)
  47906.     )
  47907.         
  47908.     INSERT INTO #TmpFak (Sifra_Oe, Sifra_Dok, Broj_Dok, POsn, Osn, Spec_Forma_Pec) 
  47909.     SELECT S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, 'D')), D.Spec_Forma_Pec
  47910.     FROM Stavr S 
  47911.     INNER JOIN #TmpFin F ON S.Sifra_OE=F.Sifra_OEF AND S.Sifra_Dok=F.Sifra_DokF AND S.Broj_Dok=F.Broj_DokF
  47912.     INNER JOIN Dokr D ON S.Sifra_OE=D.Sifra_OE AND S.Sifra_Dok=D.Sifra_Dok AND S.Broj_Dok=D.Broj_Dok 
  47913.     GROUP BY S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, D.Spec_Forma_Pec
  47914.  
  47915.     UPDATE #TmpFin 
  47916.     SET POsn1=F.POsn, Osn1=round(F.Osn,2), ObrabDDV='D' 
  47917.     FROM #TmpFak F 
  47918.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn>=15
  47919.  
  47920.     UPDATE #TmpFin 
  47921.     SET POsn2=F.POsn, Osn2=round(F.Osn,2), ObrabDDV='D' 
  47922.     FROM #TmpFak F 
  47923.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn<15
  47924.  
  47925.     UPDATE #TmpFin 
  47926.     SET ObrabDDV='X' 
  47927.     FROM #TmpFak F 
  47928.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N' ---dod.13.04.06
  47929.  
  47930.     UPDATE #TmpFin 
  47931.     SET ObrabDDV='X' 
  47932.     FROM DokrZb F 
  47933.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N'    --dod.15.09.06
  47934.  
  47935.     DELETE FROM #TmpFin WHERE ObrabDDV='X'                        ---dod.13.04.06
  47936.  
  47937.     UPDATE #TmpFin 
  47938.     SET POsn1=S.Stapka1, POsn2=S.Stapka2, Osn1=Round(F.Danok1 + F.Danok1/(S.Stapka1/100),2), 
  47939.         Osn2=Round(F.Danok2 + F.Danok2/(S.Stapka2/100),2), ObrabDDV='D' 
  47940.     FROM AnFinDok F, DDVStapki S 
  47941.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND 
  47942.     #TmpFin.ObrabDDV IS NULL AND F.Datum_Dok >= S.Datum_Od And F.Datum_Dok <= S.Datum_Do AND (F.Danok1 > 0 OR F.Danok2 >0)
  47943.  
  47944.     UPDATE #TmpFin 
  47945.     SET POsn2=5, Osn2=Iznos_Fak 
  47946.     WHERE ObrabDDV IS NULL 
  47947.  
  47948.     SELECT T.*, K.Spec_Rabat 
  47949.     FROM #TmpFin T 
  47950.     INNER JOIN Komint K ON T.Sifra_Kup=K.Sifra_Kup
  47951.     ORDER BY K.Sifra_Reg, T.Sifra_Kup, T.AnID_Fak        --dodaj vo order na sredina, sifra_pat ako treba
  47952.  
  47953.  
  47954.  
  47955. Go
  47956. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_genodobrenija_rabatodkomint]'))
  47957. drop procedure [dbo].[sp_genodobrenija_rabatodkomint]
  47958.  
  47959. Go
  47960.  
  47961. CREATE               PROCEDURE sp_GenOdobrenija_RabatOdKomint
  47962.     @ProcOdob    decimal(6,2),
  47963.     @PocDatFak    smalldatetime,
  47964.     @Sifra_Nal_Upl    smallint,
  47965.     @Dat_Upl_Od    smalldatetime,
  47966.     @Dat_Upl_Do    smalldatetime,
  47967.     @Sifra_Kup    char(6) = NULL,
  47968.     @Kto        char(10),
  47969.     @TolerRazlUpl    decimal(10,2),
  47970.     @GrpOdobKup    char(1)='D',
  47971.     @KoiCeniKup    varchar(30) = NULL,
  47972.     @DaliIAneks1    char(1)='N',
  47973.     @TolerDenaDocni smallint = NULL,
  47974.     @PoUplati    char(1) = 'D',        -- D - po Uplati,     F - po Fakturi i Uplati    N - Samo po napraveni Fakturi (ne mora da se plateni)
  47975.     @RabatOdKomint char(1) = 'D',
  47976. --    @PoFri_i_Upl    char(1) = 'U',
  47977.     @Koi_Oe_Fri    varchar(300) = Null,
  47978.     @KoiDokStornoNeOdobr varchar(100) = Null -- '3,11' - Fiksno za Swiss Lion          -- Koi dokumenti se koristat za storno fakturi za neisporacana ili vratena roba za da ne vleguvaat vo odobrenijata
  47979. AS
  47980.     IF @TolerDenaDocni IS NULL SET @TolerDenaDocni = 0
  47981.     Declare @SSQL varchar(8000)
  47982.     Declare @SSQLUsl varchar(8000)
  47983.     Set @SSQLUsl = ' '
  47984.     CREATE TABLE #TmpFin
  47985.     (
  47986.      AnID_Upl    int,
  47987.      AnID_Fak    int,
  47988.      Sifra_OEF    smallint,
  47989.      Sifra_DokF    smallint,
  47990.      Broj_DokF    int,
  47991.      Datum_Upl    smalldatetime,
  47992.      Datum_Fak    smalldatetime,
  47993.      Rok        smallint,
  47994.      Sifra_Kup     char(6),
  47995.      Iznos_Fak    decimal(18,4),
  47996.      Izn_Plat    decimal(18,4),
  47997.      POsn1        decimal(6,2),
  47998.      POsn2        decimal(6,2),
  47999.      Osn1        decimal(18,6),
  48000.      Osn2        decimal(18,6),    --ovde dodaj pole sifra_pat ako treba
  48001.      ObrabDDV    char(1),
  48002.      Spec_Rabat    decimal(18,6)
  48003.     )
  48004.     IF @PoUplati In ('D', 'F')
  48005.     Begin
  48006.         -- Uslovi po komintenti
  48007.         --IF @Sifra_Oe IS NOT NULL
  48008.         --    SET @SSQLUsl = @SSQLUsl + ' AND Sifra_Oe=' + Cast(@Sifra_Oe as varchar(6)) + ' '
  48009.         IF @Sifra_Kup IS NOT NULL
  48010.             SET @SSQLUsl = @SSQLUsl + ' AND Sifra_Kup=' + @Sifra_Kup
  48011.         IF @Sifra_Nal_Upl IS NOT NULL
  48012.             SET @SSQLUsl = @SSQLUsl + ' AND Sifra_Nal=' + cast(@Sifra_Nal_Upl as varchar(6))
  48013.         IF @DaliIAneks1='D' OR @KoiCeniKup IS NOT NULL OR @RabatOdKomint = 'D'
  48014.         Begin
  48015.             SET @SSQLUsl = @SSQLUsl + ' AND Sifra_Kup IN (SELECT Sifra_Kup FROM Komint WHERE 1=1 '
  48016.             IF @DaliIAneks1='D'
  48017.                 SET @SSQLUsl = @SSQLUsl + ' AND Aneks1 IS Not NULL AND Aneks1<>'''' '
  48018.             IF  @KoiCeniKup IS NOT NULL 
  48019.                 SET @SSQLUsl = @SSQLUsl + ' AND KojaCena IN (' + @KoiCeniKup + ') '
  48020.             IF @RabatOdKomint='D'
  48021.                 SET @SSQLUsl = @SSQLUsl + ' AND Spec_Rabat > 0  '
  48022.             SET @SSQLUsl = @SSQLUsl + ') '
  48023.         End
  48024.         If @PoUplati = 'F'
  48025.         Begin
  48026.             -- Site fakturi vo periodot
  48027.             CREATE TABLE #TmpFri
  48028.             (
  48029.              AnID_Fra    int,
  48030.              Datum_Fra    smalldatetime,
  48031.              Rok        smallint
  48032.             )
  48033.             SET @SSQL = 'SELECT AnID, Datum_Dok, Rok
  48034.                     FROM AnFinDok 
  48035.                     WHERE Kto=''' + @Kto  +''' AND Datum_Dok >=''' + Cast(@Dat_Upl_Od as varchar(35)) + ''' AND Datum_Dok <=''' + Cast(@Dat_Upl_Do as varchar(35)) + ''' AND Dolzi>0 
  48036.                     AND AnID NOT IN (SELECT AnID_Fak FROM StaOdobr) '
  48037.             If @Koi_Oe_Fri Is Not Null
  48038.                 Set @SSQL = @SSQL + ' And Sifra_Oe In (' + @Koi_Oe_Fri + ') '
  48039.             INSERT INTO #TmpFri EXEC (@SSQL+@SSQLUsl)        -- po datuna na faktura posto gledame po fakturi
  48040.         End
  48041.         Else If @PoUplati = 'D'
  48042.         Begin
  48043.             -- Site uplati vo periodot
  48044.             CREATE TABLE #TmpUpl
  48045.             (
  48046.              AnID_Upl    int,
  48047.              Datum_Upl    smalldatetime
  48048.             )
  48049.             SET @SSQL = 'SELECT AnID, Datum_Dok Datum_Upl
  48050.                     FROM AnFinDok 
  48051.                     WHERE Kto=''' + @Kto  +''' AND Datum_Dok >=''' + Cast(@Dat_Upl_Od as varchar(35)) + ''' AND Datum_Dok <=''' + Cast(@Dat_Upl_Do as varchar(35)) + ''' AND Pobaruva>0 '
  48052.             INSERT INTO #TmpUpl EXEC (@SSQL+@SSQLUsl)
  48053.         End
  48054.         -- Da gi najdeme dokumentite za koi treba da dadene rabat
  48055.         If @PoUplati = 'F' -- po Fakturi i po uplati
  48056.         Begin
  48057.             Declare @AnIDFra int
  48058.             Declare @DatFra smalldatetime
  48059.             Declare @RokFra as smallint
  48060.             Declare TabFri Cursor Fast_Forward For Select  AnID_Fra, Datum_Fra, Rok From #TmpFri
  48061.             Open TabFri
  48062.             Fetch Next From TabFri Into @AnIDFra, @DatFra, @RokFra
  48063.             While @@Fetch_Status = 0
  48064.             Begin            
  48065.                 SET @SSQL = 'SELECT Max(A.AnID), ' + cast(@AnIDFra as varchar(10))+ ',  '
  48066.                 IF @RabatOdKomint='D'
  48067.                     Set @SSQL = @SSQL + ' Kup.Spec_Rabat '
  48068.                 Else
  48069.                     Set @SSQL = @SSQL + ' ' + Cast(@ProcOdob as varchar(10)) + ' '
  48070.                 Set @SSQL = @SSQL + ' FROM AnFinDok A 
  48071.                             INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDFra as varchar(10))+ ')   
  48072.                             INNER JOIN AnFinDok F On F.AnID = Z.AnID2
  48073.                             INNER JOIN Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  48074.                             WHERE A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' 
  48075.                             AND F.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr) 
  48076.                             AND F.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) '   --And A.Pobaruva > 0 
  48077.                 IF @RabatOdKomint='D'
  48078.                     Set @SSQL = @SSQL + ' AND F.Dolzi * (1-Kup.Spec_Rabat/100) - F.Plateno_Dolzi <= ' + cast(@TolerRazlUpl as varchar(15)) + ' '
  48079.                 Else
  48080.                     Set @SSQL = @SSQL + ' AND F.Dolzi * (1-'+ cast(@ProcOdob as varchar(10)) + '/100) - F.Plateno_Dolzi <= ' + cast(@TolerRazlUpl as varchar(15)) + ' '
  48081.                 Set @SSQL = @SSQL + ' AND A.Datum_Dok <= ''' + cast((@DatFra + @RokFra + @TolerDenaDocni) as varchar(35)) + ''' '   --      '+ A.Rok' + '+'+cast(@TolerDenaDocni as varchar(5)) + '>=''' + cast(@DatUpl as varchar(35)) + ''' '
  48082.                 INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Spec_Rabat) EXEC (@SSQL+' Group By Kup.Spec_Rabat')
  48083. --select * from #tmpfin
  48084.  
  48085.                 SET @SSQL = 'SELECT Max(A.AnID), ' + cast(@AnIDFra as varchar(10))+ ',  '
  48086.                 IF @RabatOdKomint='D'
  48087.                     Set @SSQL = @SSQL + ' Kup.Spec_Rabat '
  48088.                 Else
  48089.                     Set @SSQL = @SSQL + ' ' + Cast(@ProcOdob as varchar(10)) + ' '
  48090.                 Set @SSQL = @SSQL + ' FROM AnFinDok A 
  48091.                             INNER JOIN AnZatv Z ON (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDFra  as varchar(10))+ ')  
  48092.                             INNER JOIN AnFinDok F On F.AnID = Z.AnID1
  48093.                             INNER JOIN Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  48094.                             WHERE A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' 
  48095.                             AND F.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr) 
  48096.                             AND F.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) '   --A.Pobaruva > 0 
  48097.                 IF @RabatOdKomint='D'
  48098.                     Set @SSQL = @SSQL + ' AND F.Dolzi * (1-Kup.Spec_Rabat/100) - F.Plateno_Dolzi <= ' + cast(@TolerRazlUpl as varchar(15)) + ' '
  48099.                 Else
  48100.                     Set @SSQL = @SSQL + ' AND F.Dolzi * (1-'+ cast(@ProcOdob as varchar(10)) + '/100) - F.Plateno_Dolzi <= ' + cast(@TolerRazlUpl as varchar(15)) + ' '
  48101.                 Set @SSQL = @SSQL + ' AND A.Datum_Dok <= ''' + cast((@DatFra + @RokFra + @TolerDenaDocni) as varchar(35)) + ''' '   --      '+ A.Rok' + '+'+cast(@TolerDenaDocni as varchar(5)) + '>=''' + cast(@DatUpl as varchar(35)) + ''' '
  48102.                 INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Spec_Rabat) EXEC (@SSQL+' Group By Kup.Spec_Rabat')
  48103. --select * from #tmpfin
  48104.  
  48105.                 Update #TmpFin 
  48106.                 Set Sifra_OEF=F.Sifra_OE, Sifra_DokF=F.Sifra_Dok, Broj_DokF=F.Broj_Dok, Datum_Fak=F.Datum_Dok, 
  48107.                     Rok=F.Rok, Sifra_kup=F.Sifra_Kup, Iznos_Fak=F.Dolzi, Izn_Plat=F.Plateno_Dolzi
  48108.                 From AnFinDok F
  48109.                 Where AnID_Fak=F.AnID
  48110.                 And F.AnID=@AnIDFra
  48111.                 Fetch Next From TabFri Into  @AnIDFra, @DatFra, @RokFra
  48112.             End
  48113.             Close TabFri
  48114.             Deallocate TabFri
  48115. --select * from #tmpfin
  48116.         End
  48117.         Else If @PoUplati = 'D' -- po Uplati
  48118.         Begin
  48119.             Declare @AnIDUpl int
  48120.             Declare @DatUpl smalldatetime
  48121.             Declare TabUpl Cursor Fast_Forward For    Select  AnID_Upl, Datum_Upl From #TmpUpl 
  48122.             Open TabUpl
  48123.             Fetch Next From TabUpl Into @AnIDUpl, @DatUpl
  48124.             While @@Fetch_Status = 0
  48125.             Begin            
  48126.                 SET @SSQL = 'SELECT ' + cast(@AnIDUpl as varchar(10))+ ', A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, A.Rok, A.Sifra_Kup, A.Dolzi, A.Plateno_Dolzi, '
  48127.                 IF @RabatOdKomint='D'
  48128.                     Set @SSQL = @SSQL + ' Kup.Spec_Rabat '
  48129.                 Else
  48130.                     Set @SSQL = @SSQL + ' ' + Cast(@ProcOdob as varchar(10)) + ' '
  48131.                 Set @SSQL = @SSQL + ' FROM AnFinDok A 
  48132.                             INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDUpl as varchar(10))+ ') OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDUpl  as varchar(10))+ ')  
  48133.                             INNER JOIN Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  48134.                             WHERE A.Dolzi > 0 AND A.Datum_Dok>=''' + cast(@PocDatFak as varchar(35)) + ''' 
  48135.                             AND A.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr)
  48136.                             AND A.AnID NOT IN (SELECT AnID_Fak FROM #TmpFin) '
  48137.                 IF @RabatOdKomint='D'
  48138.                     Set @SSQL = @SSQL + ' AND A.Dolzi * (1-Kup.Spec_Rabat/100) - A.Plateno_Dolzi <= ' + cast(@TolerRazlUpl as varchar(15)) + ' '
  48139.                 Else
  48140.                     Set @SSQL = @SSQL + ' AND A.Dolzi * (1-'+ cast(@ProcOdob as varchar(10)) + '/100) - A.Plateno_Dolzi <= ' + cast(@TolerRazlUpl as varchar(15)) + ' '
  48141.                 Set @SSQL = @SSQL + ' AND A.Datum_Dok + A.Rok' + '+'+cast(@TolerDenaDocni as varchar(5)) + '>=''' + cast(@DatUpl as varchar(35)) + ''' '
  48142.                 INSERT INTO #TmpFin (AnID_Upl, AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak, Izn_Plat, Spec_Rabat) EXEC (@SSQL)
  48143.                 Fetch Next From TabUpl Into  @AnIDUpl, @DatUpl
  48144.             End
  48145.             Close TabUpl
  48146.             Deallocate TabUpl
  48147.         End
  48148.         ------- Brisi gi site stavki fakturi koi imaat nekoja uplata po rokot
  48149.         CREATE TABLE #Tmp1
  48150.         (Kolku int)
  48151.         Declare @AnIDFak int
  48152.         Declare @DatFak smalldatetime
  48153.         Declare @Rok integer
  48154.         Declare @IznFak as decimal
  48155.         Declare @Klk as integer
  48156.         Declare @Spec_Rabat as decimal
  48157.         Declare TabFak Cursor Fast_Forward For    Select  AnID_Fak, Datum_Fak, Rok, Iznos_Fak, Spec_Rabat From #TmpFin ORDER BY AnID_Fak
  48158.         Open TabFak
  48159.         Fetch Next From TabFak Into @AnIDFak, @DatFak, @Rok, @IznFak, @Spec_Rabat   -- vo @Spec_Rabat sega e procentot na odobrenie i ako se raboti so rabat od komintent ili so fiksen rabat (@Proc_Odobr)
  48160.         While @@Fetch_Status = 0
  48161.         Begin            
  48162.             DELETE FROM #Tmp1
  48163.             SET @SSQL = 'SELECT Count(*) 
  48164.                     FROM AnFinDok A 
  48165.                     INNER JOIN AnZatv Z ON (A.AnID=Z.AnID1 AND Z.AnID2=' + cast(@AnIDFak as varchar(10))+ ') OR (A.AnID=Z.AnID2 AND Z.AnID1=' + cast(@AnIDFak  as varchar(10))+ ')  
  48166.                     INNER JOIN Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  48167.                     WHERE A.Pobaruva > 0 AND A.Datum_Dok >''' + cast(@DatFak+@Rok + @TolerDenaDocni as varchar(35)) + ''' 
  48168.                     AND Z.Iznos >' + Cast(@IznFak * @Spec_Rabat /100 +@TolerRazlUpl as varchar(15))
  48169.             INSERT INTO #Tmp1 EXEC (@SSQL)
  48170.             SELECT @Klk = Kolku FROM #Tmp1
  48171.             IF @Klk IS NOT NULL AND @Klk > 0    
  48172.                 UPDATE #TmpFin SET AnID_Upl= -1 WHERE AnID_Fak=@AnIDFak
  48173.             Fetch Next From TabFak Into  @AnIDFak, @DatFak, @Rok, @IznFak, @Spec_Rabat
  48174.         End
  48175.         Close TabFak
  48176.         Deallocate TabFak
  48177.         DELETE FROM #TmpFin WHERE AnID_Upl = -1
  48178.     End
  48179.     ELSE -- If @PoUplati = N t.e. Not In ('D', 'F')
  48180.     Begin
  48181.         SET @SSQL = 'SELECT F.AnID, F.Sifra_OE, F.Sifra_Dok, F.Broj_Dok, F.Datum_Dok, F.Rok, F.Sifra_kup, F.Dolzi, '
  48182.         IF @RabatOdKomint='D'
  48183.             Set @SSQL = @SSQL + ' K.Spec_Rabat '
  48184.         Else
  48185.             Set @SSQL = @SSQL + ' ' + Cast(@ProcOdob as varchar(10)) + ' '
  48186.         Set @SSQL = @SSQL + ' FROM AnFinDok F  
  48187.                 INNER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup
  48188.                 WHERE F.Dolzi > 0 AND F.Datum_Dok >=''' + cast(@PocDatFak as varchar(35)) + ''' AND F.AnID NOT IN (SELECT AnID_Fak FROM StaOdobr) 
  48189.                 AND K.Spec_Rabat IS NOT NULL  AND K.Spec_Rabat > 0 '
  48190.         IF @Sifra_Kup IS NOT NULL
  48191.             SET @SSQL = @SSQL + ' AND F.Sifra_Kup = ' + @Sifra_Kup 
  48192.         IF @Kto IS NOT NULL
  48193.             SET @SSQL = @SSQL + ' AND F.Kto = ' + @Kto 
  48194.         INSERT INTO #TmpFin (AnID_Fak, Sifra_OEF, Sifra_DokF, Broj_DokF, Datum_Fak, Rok, Sifra_kup, Iznos_Fak, Spec_Rabat) EXEC (@SSQL)
  48195.     End
  48196.  
  48197.     --------- DO OVDE GI SELEKTIRAVME SITE DOKUMENTI ZA KOI TREBA DA SE DADAT ODOBRENIJA
  48198.     CREATE TABLE #TmpFak
  48199.     (
  48200.      Sifra_Oe    smallint,
  48201.      Sifra_Dok    smallint,
  48202.      Broj_Dok    int,
  48203.      POsn        decimal(6,2),
  48204.      Osn        decimal(18,6),
  48205.      Spec_Forma_Pec varchar(10)
  48206.     )
  48207.     -- go delime prometot po fakturi po osnovici
  48208.     INSERT INTO #TmpFak (Sifra_Oe, Sifra_Dok, Broj_Dok, POsn, Osn, Spec_Forma_Pec) 
  48209.     SELECT S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, 'D')), D.Spec_Forma_Pec
  48210.     FROM Stavr S 
  48211.     INNER JOIN #TmpFin F ON S.Sifra_OE=F.Sifra_OEF AND S.Sifra_Dok=F.Sifra_DokF AND S.Broj_Dok=F.Broj_DokF
  48212.     INNER JOIN Dokr D ON S.Sifra_OE=D.Sifra_OE AND S.Sifra_Dok=D.Sifra_Dok AND S.Broj_Dok=D.Broj_Dok 
  48213.     GROUP BY S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.POsn, D.Spec_Forma_Pec
  48214.  
  48215.     UPDATE #TmpFin 
  48216.     SET POsn1=F.POsn, Osn1=round(F.Osn,2), ObrabDDV='D' 
  48217.     FROM #TmpFak F 
  48218.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn>=15
  48219.     UPDATE #TmpFin 
  48220.     SET POsn2=F.POsn, Osn2=round(F.Osn,2), ObrabDDV='D' 
  48221.     FROM #TmpFak F 
  48222.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND F.Posn<15
  48223.  
  48224.     -- Gi naogame i  gi brissime dokumentite kade Spec_Forma_Pec = 'N'
  48225.     UPDATE #TmpFin 
  48226.     SET ObrabDDV='X' 
  48227.     FROM #TmpFak F 
  48228.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N'    ---dod.13.04.06
  48229.  
  48230.     UPDATE #TmpFin 
  48231.     SET ObrabDDV='X' 
  48232.     FROM DokrZb F 
  48233.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND Spec_Forma_Pec='N'    --dod.15.09.06
  48234.  
  48235.     DELETE FROM #TmpFin WHERE ObrabDDV='X'                        ---dod.13.04.06
  48236.     UPDATE #TmpFin 
  48237.     SET POsn1=S.Stapka1, POsn2=S.Stapka2, Osn1=Round(F.Danok1 + F.Danok1/(S.Stapka1/100),2), 
  48238.         Osn2=Round(F.Danok2 + F.Danok2/(S.Stapka2/100),2), ObrabDDV='D' 
  48239.     FROM AnFinDok F, DDVStapki S 
  48240.     WHERE #TmpFin.Sifra_OEF=F.Sifra_OE AND #TmpFin.Sifra_DokF=F.Sifra_Dok AND #TmpFin.Broj_DokF=F.Broj_Dok AND 
  48241.         #TmpFin.ObrabDDV IS NULL AND F.Datum_Dok >= S.Datum_Od And F.Datum_Dok <= S.Datum_Do AND (F.Danok1 > 0 OR F.Danok2 >0)
  48242.  
  48243.     UPDATE #TmpFin 
  48244.     SET POsn2=5, Osn2=Iznos_Fak 
  48245.     WHERE ObrabDDV IS NULL 
  48246.  
  48247.     If @PoUplati = 'F'
  48248.     Begin
  48249.         -- Da go namalime iznosot na fakturata za plateniot del so odobrenija (Storno dokumenti)
  48250.         If @KoiDokStornoNeOdobr Is Not Null
  48251.         Begin
  48252.             Create Table #TmpOdob
  48253.             (
  48254.              AnID1        int,
  48255.              AnID2        int,
  48256.              Iznos        decimal(18,4)
  48257.             )
  48258.  
  48259.             Set @SSQL = ' Select AnID1, AnID2, Abs(Iznos)
  48260.                     From AnFinDok U 
  48261.                     Inner Join AnZatv Z On Z.AnID1=U.AnID   
  48262.                     Inner Join AnFinDok F On F.AnID=Z.AnID2
  48263.                     Where F.AnID In (Select AnID_Fak From #TmpFin)
  48264.                     And U.Dolzi < 0
  48265.                     And U.Sifra_Dok In (' + @KoiDokStornoNeOdobr + ') '
  48266.             Insert Into #TmpOdob Exec(@SSQL)
  48267.  
  48268.             Set @SSQL = ' Select AnID1, AnID2, Abs(Iznos)
  48269.                     From AnFinDok U 
  48270.                     Inner Join AnZatv Z On Z.AnID2=U.AnID   
  48271.                     Inner Join AnFinDok F On F.AnID=Z.AnID1
  48272.                     Where F.AnID In (Select AnID_Fak From #TmpFin)
  48273.                     And U.Dolzi < 0
  48274.                     And U.Sifra_Dok In (' + @KoiDokStornoNeOdobr + ') '
  48275.             Insert Into #TmpOdob Exec(@SSQL)
  48276.  
  48277.             Declare @AnID1 as int
  48278.             Declare @AnID2 as int
  48279.             Declare @IznosOdobr as decimal(18,4)
  48280.     
  48281.             Declare Odobr Cursor 
  48282.             Fast_Forward For Select AnID1, AnID2, Iznos From #TmpOdob
  48283.             Open Odobr
  48284.             Fetch Next From Odobr Into @AnID1, @AnID2, @IznosOdobr
  48285.             While @@Fetch_Status = 0
  48286.             Begin
  48287.                 Update #TmpFin 
  48288.                 Set --Izn_Plat = Izn_Plat - @IznosOdobr, Iznos_Fak = Iznos_Fak - @IznosOdobr,   -- @IznosOdobr e sekogass < 0
  48289.                     Osn1 = (Case When Osn1 Is Null Then Null 
  48290.                                  When Osn1 Is Not Null And Osn2 Is Null Then Osn1 - @IznosOdobr
  48291.                                  When Osn1 Is Not Null And Osn2 Is Not Null Then Osn1 - (Osn1 * @IznosOdobr / (Osn1 + Osn2)) End),
  48292.                     Osn2 = (Case When Osn2 Is Null Then Null 
  48293.                                  When Osn2 Is Not Null And Osn1 Is Null Then Osn2 - @IznosOdobr
  48294.                                  When Osn2 Is Not Null And Osn1 Is Not Null Then Osn2 - (Osn2 * @IznosOdobr / (Osn1 + Osn2)) End)
  48295.                 Where AnID_Fak In (@AnID1, @AnID2)
  48296.     
  48297.                 Fetch Next From Odobr Into @AnID1, @AnID2, @IznosOdobr
  48298.             End
  48299.             Close Odobr
  48300.             Deallocate Odobr
  48301.         End
  48302.         ----------------------------------------------------------------------------------------------------------------
  48303.  
  48304.         Create Table #DupliDok
  48305.         (
  48306.          AnID_Fak    int,
  48307.          KolkuPati    smallint
  48308.         )
  48309.         Insert Into #DupliDok Select AnID_Fak, Count(*) From #TmpFin Group By AnID_Fak Having Count(*) > 1
  48310.         Create Table #DupliDok2
  48311.         (
  48312.          AnID_Fak    int,
  48313.          AnId_Upl    int
  48314.         )
  48315.         Insert Into #DupliDok2 Select AnID_Fak, AnId_Upl From #TmpFin Where AnID_Fak In (Select AnID_Fak From #DupliDok)
  48316.         Create Table #DokZaBris
  48317.         (
  48318.          AnID_Fak    int,
  48319.          AnId_Upl    int
  48320.         )
  48321.         Insert Into #DokZaBris Select AnID_Fak, Min(AnId_Upl) From #DupliDok2 Group By AnID_Fak
  48322.         Delete From #TmpFin 
  48323.         Where Cast(AnID_Fak as char(10)) + Cast(AnID_Upl as char(10)) In (Select Cast(AnID_Fak as char(10)) + Cast(AnID_Upl as char(10)) From #DokZaBris)
  48324.     End
  48325.  
  48326.     SELECT T.AnID_Upl, T.AnID_Fak, T.Sifra_OEF, T.Sifra_DokF, T.Broj_DokF, T.Datum_Upl, T.Datum_Fak, T.Rok, T.Sifra_Kup, 
  48327.          T.Iznos_Fak, T.Izn_Plat, T.POsn1, T.POsn2, T.Osn1, T.Osn2, T.ObrabDDV, T.Spec_Rabat
  48328.     FROM #TmpFin T 
  48329.     INNER JOIN Komint K ON T.Sifra_Kup=K.Sifra_Kup
  48330.     ORDER BY K.Sifra_Reg, T.Sifra_Kup, T.AnID_Fak        --dodaj vo order na sredina, sifra_pat ako treba
  48331.  
  48332. Go
  48333. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_grupnadok]'))
  48334. drop procedure [dbo].[sp_grupnadok]
  48335.  
  48336. Go
  48337. CREATE     PROCEDURE sp_GrupNaDok
  48338.     @Datum_Od    smalldatetime,
  48339.     @Datum_Do    smalldatetime,
  48340.     @Broj_DokOd    int,
  48341.     @Broj_DokDo    int,
  48342.     @Komint    char(6),
  48343.     @Sifra_Dok1    smallint,
  48344.     @Sifra_Dok2    smallint,
  48345.     @Sifra_Obj    smallint
  48346.  AS
  48347.     Declare @SSQLPoc as Varchar(2000)
  48348.     Declare @SSQLUsl as Varchar(2000)
  48349.     Declare @SSQL as Varchar(2000)
  48350.     Declare @Art_Od    varchar(7)    
  48351.     Declare @Art_Do    varchar(7)
  48352.     Declare @Shift        int
  48353.     Declare @LenShift    int
  48354.     SELECT @Shift = Ladno_Shift FROM Konfig
  48355.     if @Shift IS NULL
  48356.         Begin
  48357.             SET @Art_Od = '001000'    
  48358.             SET @Art_Do = '002000'
  48359.         End
  48360.     Else
  48361.         Begin
  48362.             SET @LenShift = Len(cast(@Shift as varchar(7)))
  48363.                 IF @LenShift > 6 
  48364.                     Begin
  48365.                     SET @Art_Od    = cast(@Shift as varchar(7))
  48366.                     SET @Art_Do    = cast(@Shift*2 as varchar(7))
  48367.                     End
  48368.                 Else
  48369.                     Begin
  48370.                     SET @Art_Od    = Replicate('0', 6-@LenShift) + cast(@Shift as varchar(6))
  48371.                     SET @Art_Do    = Replicate('0', 6-@LenShift) + cast(@Shift*2 as varchar(6))
  48372.                     End
  48373.         End
  48374. CREATE TABLE #TmpStav
  48375. (    Sifra_art    varchar(20), 
  48376.     imeart        char(40),
  48377.     Broj_Dok    int, 
  48378.     Sifra_Kup    char(6), 
  48379.     ImeKup        varchar(40), 
  48380.     Sifra_Oe    smallint, 
  48381.     Datum_Dok    smalldatetime, 
  48382.     Kolic        decimal(18,6), 
  48383.     Vrateno        decimal(18,6)
  48384. )
  48385.     Set @SSQLPoc = ', K.imeart, S.Broj_Dok, D.Sifra_Kup, KUP.ImeKup, D.Sifra_Oe, S.Datum_Dok, '
  48386.     SET @SSQLUsl = ' From Stavr S
  48387.             Inner Join Dokr D On S.DokrID=D.DokrID  
  48388.             Inner Join Katart K On S.Sifra_art = K.Sifra_art
  48389.             Inner Join Komint KUP On D.Sifra_Kup = KUP.Sifra_Kup
  48390.             Where 1=1 '
  48391.     If @Broj_DokOd Is NOT Null
  48392.         SET @SSQLUsl = @SSQLUsl + 'AND S.Broj_Dok >=''' + Cast(@Broj_DokOd As Varchar(10)) + ''' '
  48393.        If @Broj_DokDo Is NOT Null
  48394.          SET @SSQLUsl = @SSQLUsl + 'AND S.Broj_Dok <=''' + Cast(@Broj_DokDo As Varchar(10)) + ''' '
  48395.     If @Datum_Od Is NOT Null
  48396.         SET @SSQLUsl = @SSQLUsl + 'AND S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  48397.        If @Datum_Do Is NOT Null
  48398.          SET @SSQLUsl = @SSQLUsl + 'AND S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  48399.     If @Komint Is NOT Null
  48400.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Kup = ' + @Komint + ' '
  48401.     If @Sifra_Obj Is NOT NULL
  48402.         SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_Obj=''' + Cast(@Sifra_Obj As Varchar(10)) + ''' '
  48403.     SET @SSQL = 'Select K.Sifra_art' + @SSQlPoc + ' Kolic, 0 as Vrateno ' + @SSQLUsl + 
  48404.     ' AND D.Sifra_Dok=' + (Cast(@Sifra_Dok1 As Varchar(10))) + ' '
  48405.     INSERT INTO #TmpStav Exec(@SSQL)
  48406.     SET @SSQL = 'Select '
  48407.     IF @LenShift > 6 
  48408.         SET @SSQL = @SSQL + ' substring(K.Sifra_art, 2,6) AS Sifra_Art' 
  48409.     Else
  48410.         SET @SSQL = @SSQL + '''000'' + substring(K.Sifra_art, 4,3) AS Sifra_Art' 
  48411.     SET @SSQL = @SSQL + @SSQlPoc + ' 0, Abs(Kolic) as Vrateno ' + @SSQLUsl + 
  48412.     ' AND D.Sifra_Dok=' + (Cast(@Sifra_Dok2 As Varchar(10))) + ' '
  48413.     INSERT INTO #TmpStav Exec(@SSQL)
  48414.     UPDATE #TmpStav SET ImeArt = KatArt.ImeArt
  48415.     FROM KatArt WHERE #TmpStav.Sifra_Art = KatArt.Sifra_Art
  48416.     SELECT Sifra_Kup, ImeKup, Datum_Dok, Sifra_Oe, Broj_Dok, Sifra_art, imeart,  
  48417.     SUM(Kolic) As kolic, SUM(Vrateno) as Vrateno From #TmpStav
  48418.     GROUP BY Sifra_Kup, ImeKup, Datum_Dok, Sifra_Oe, Broj_Dok, Sifra_art, imeart
  48419.     ORDER BY Sifra_Kup, ImeKup, Datum_Dok, Sifra_Oe, Broj_Dok, Sifra_art
  48420.  
  48421.  
  48422. Go
  48423. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ima_li_vozilo]'))
  48424. drop procedure [dbo].[sp_ima_li_vozilo]
  48425.  
  48426. Go
  48427.  
  48428.  
  48429. create   PROCEDURE sp_Ima_Li_Vozilo
  48430.     @Sifra_Art    varchar(20),
  48431.     @KolkuGiIma    integer OUTPUT
  48432.  
  48433. AS
  48434.  
  48435.     select @KolkuGiIma = 
  48436.         count (*) 
  48437.         from Vozila 
  48438.         where sifra_art = @Sifra_art
  48439.  
  48440.  
  48441.  
  48442.  
  48443.  
  48444. Go
  48445. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_imablokirani]'))
  48446. drop procedure [dbo].[sp_imablokirani]
  48447.  
  48448. Go
  48449.  
  48450. CREATE     PROCEDURE sp_ImaBlokirani
  48451.     @KoiOE        varchar(200), 
  48452.     @KoiTipDok    varchar(100),
  48453.     @Datum_Do    smalldatetime,
  48454.     @Komint_Od    char(6) = NULL,
  48455.     @Komint_Do    char(6) = NULL
  48456. AS
  48457.     Declare @SSQL        varchar(4000)
  48458.     SET @SSQL = 'SELECT Count(S.DokID) AS BrDok FROM Stavr S
  48459.     INNER JOIN Dokr D ON S.DokrID = D.DokrID
  48460.     WHERE S.Sifra_OE in (' + @KoiOE + ') AND S.Sifra_Dok in (' + @KoiTipDok + 
  48461.     ') AND S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(35)) + 
  48462.     ''' AND D.Blokiran = ''T'' ' 
  48463.     IF @Komint_Od IS NOT NULL
  48464.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup >= ' + @Komint_Od
  48465.     IF @Komint_Do IS NOT NULL
  48466.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup <= ' + @Komint_Do
  48467.     EXEC(@SSQL)
  48468.  
  48469.  
  48470.  
  48471.  
  48472. Go
  48473. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_imacenzakom]'))
  48474. drop procedure [dbo].[sp_imacenzakom]
  48475.  
  48476. Go
  48477.  
  48478. create  PROCEDURE sp_ImaCenZaKom
  48479.     @Sifra_kup    char(6),
  48480.     @KolkuCeni    integer OUTPUT
  48481. AS
  48482.     select @KolkuCeni = count (*) from cenovnik where sifra_kup = @Sifra_kup
  48483.  
  48484.  
  48485.  
  48486. Go
  48487. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_imalimitpodiv]'))
  48488. drop procedure [dbo].[sp_imalimitpodiv]
  48489.  
  48490. Go
  48491. CREATE PROCEDURE sp_ImaLimitPoDiv
  48492.     @Sifra_Kup    char(6),
  48493.     @KlkRazlDiv    smallint =0 OUTPUT
  48494. AS
  48495. SELECT @KlkRazlDiv = COUNT(*) FROM KomLimitDiv WHERE Sifra_Kup=@Sifra_Kup
  48496.  
  48497.  
  48498. Go
  48499. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_impgen_dajstavki]'))
  48500. drop procedure [dbo].[sp_impgen_dajstavki]
  48501.  
  48502. Go
  48503.  
  48504. create PROCEDURE sp_ImpGen_DajStavki
  48505.     @ImeTabela varchaR(100)
  48506.  
  48507. AS
  48508.     Declare @SSQL varchaR(300)
  48509.     
  48510.     set @SSQL = 'Select * from ' + @ImeTabela + 
  48511.             ' order by sifra_oe, sifra_dok, broj_dok, rbr '
  48512.     
  48513.     Exec (@SSQL)
  48514.  
  48515.     --select S.*, D.Identif_Br, D.Rok, D.SIfrA_Kup
  48516.     --from Stavr S
  48517.     --inner join Dokr D
  48518.     --on S.DOkrId = D.DokrId
  48519.     --where S.sifrA_oe = 32
  48520.  
  48521.  
  48522.  
  48523. Go
  48524. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_input_lc]'))
  48525. drop procedure [dbo].[sp_input_lc]
  48526.  
  48527. Go
  48528. CREATE             PROCEDURE sp_Input_LC
  48529.     @Datum_Dok_Od Smalldatetime,
  48530.     @Datum_Dok_Do Smalldatetime,
  48531.     @TipDok_Vlez        varchar(100)='132,33',
  48532.     @Sifra_Art_Od        varchar(20)=Null,
  48533.     @Sifra_Art_Do        varchar(20)='009000',
  48534.     @Sif_GrOrg        char(6)='9'
  48535. AS
  48536.     Declare @SSQL Varchar(2000)
  48537.     SET @SSQL='SELECT S.Sifra_OE, S.Sifra_Dok, S.Broj_Dok, S.Datum_Dok, 
  48538.     dbo.fn_ULKod(S.Sifra_Art, A.Alt_sifra) AS Item_Code, S.Kolic
  48539.     FROM Stavr S
  48540.     INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  48541.     WHERE A.Iskluci <> ''D''  '
  48542.     IF @TipDok_Vlez IS NOT NULL
  48543.         SET @SSQL = @SSQL + ' AND S.Sifra_dok IN (' + @TipDok_Vlez +') '
  48544.     IF @Sifra_Art_Od IS NOT NULL 
  48545.         SET @SSQL = @SSQL + ' AND S.Sifra_Art>=''' + @Sifra_Art_Od +''' '
  48546.     IF @Sifra_Art_Do IS NOT NULL 
  48547.         SET @SSQL = @SSQL + ' AND S.Sifra_Art<=''' + @Sifra_Art_Do +''' '
  48548.     If @Sif_GrOrg IS NOT NULL    
  48549.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg = '''+@Sif_GrOrg +''') '
  48550.     If @Datum_Dok_Od Is NOT Null
  48551.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  48552.     If @Datum_Dok_Do Is NOT Null
  48553.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  48554.   EXEC(@SSQL)
  48555.  
  48556.  
  48557. Go
  48558. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_inventor]'))
  48559. drop procedure [dbo].[sp_inventor]
  48560.  
  48561. Go
  48562.  
  48563. CREATE            PROCEDURE sp_Inventor
  48564.     @Datum  smalldatetime,
  48565.     @Sifra_Art_Od        varchar(20)=Null,
  48566.     @Sifra_Art_Do        varchar(20)='009000',
  48567.     @Sif_GrOrg        char(6)='9'
  48568. AS
  48569.     Set Nocount On
  48570.     Declare @SSQL varchar(4000)
  48571. --test
  48572.     SET @SSQL = 'SELECT dbo.fn_ULKod(S.Sifra_Art, K.Alt_Sifra) Sifra_Art, 
  48573.         Vlez=Sum(CASE 
  48574.             WHEN S.VlIzl = ''V'' THEN S.Kolic 
  48575.             ELSE  0
  48576.         END),                     
  48577.          Izlez=Sum(CASE 
  48578.             WHEN S.VlIzl = ''I'' THEN S.Kolic 
  48579.             ELSE  0
  48580.         END),
  48581.          PHYSICAL=Sum(CASE 
  48582.             WHEN S.Sifra_Dok=990 THEN S.Kolic
  48583.             ELSE  0
  48584.         END)
  48585.     FROM Stavr S
  48586.     INNER JOIN KatArt K On S.Sifra_Art=K.Sifra_Art
  48587.     WHERE K.Iskluci <> ''D'' '
  48588.     IF @Sifra_Art_Od IS NOT NULL 
  48589.         SET @SSQL = @SSQL + ' AND S.Sifra_Art>=''' + @Sifra_Art_Od +''' '
  48590.     IF @Sifra_Art_Do IS NOT NULL 
  48591.         SET @SSQL = @SSQL + ' AND S.Sifra_Art<=''' + @Sifra_Art_Do +''' '
  48592.      SET @SSQL=@SSQL+ 'And S.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  48593.     If @Sif_GrOrg IS NOT NULL    
  48594.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg = '''+@Sif_GrOrg +''') '
  48595.     SET @SSQL=@SSQL+ 'AND S.Datum_Dok<=''' + Cast(@Datum As Varchar(35)) + '''
  48596.     Group By S.Sifra_Art, K.Alt_Sifra '
  48597.     CREATE TABLE #PrometArt
  48598.     ( Sifra_Art  varchar(20),
  48599.       Vlez Numeric(18,4),
  48600.       Izlez Numeric(18,4),
  48601.       PHYSICAL Decimal(15,4)    
  48602.     )
  48603.     INSERT #PrometArt EXEC(@SSQL)
  48604.     SELECT 'MKMA' DB_CODE,
  48605.         Sifra_Art ITEM_CODE,
  48606.         Vlez - Izlez QUANTITY,
  48607.         PHYSICAL PHYSICAL,
  48608.         @Datum TRANS_DATE
  48609.     FROM #PrometArt
  48610.     Set Nocount Off
  48611.  
  48612.  
  48613.  
  48614. Go
  48615. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ios_od_do]'))
  48616. drop procedure [dbo].[sp_ios_od_do]
  48617.  
  48618. Go
  48619.  
  48620. CREATE    PROCEDURE sp_IOS_Od_Do
  48621.     @Sifra_Za    Char(1) = '1',
  48622.     @Sifra_KupOd    Char(6),
  48623.     @Sifra_KupDo    Char(6),
  48624.        @Kto        varChar(100) = Null,
  48625.      @Sifra_OE    Smallint=Null,        -- OVA KORISTI KAKO PATNIK
  48626.     @Sifra_Grad    smallint = NULL,
  48627.     @Sifra_Reg    smallint = NULL,
  48628.     @IOSOdEdnaOE char(1) = 'N',
  48629.     @Sirok        char(1) = 'N',      --N za mob.uredi, D-za notebook
  48630.     @Kartica    char(1) = 'N',        --D-cela kartica
  48631.     @KoiOE        varchar(100)=NULL,    --04.04.08
  48632.     @PoKomintPat    char(1) = 'N'
  48633. AS
  48634.     Declare @SSQL Varchar(2000)
  48635.     CREATE TABLE #TmpKup
  48636. (    Sifra_Kup    char(6)
  48637. )
  48638. IF @PoKomintPat='D'
  48639. Begin
  48640.     SET @SSQL = 'SELECT DISTINCT P.Sifra_Kup FROM KomintPat P WHERE P.Sifra_Pat = ' + Cast(@Sifra_OE as varchar(5))
  48641.     IF @Sifra_Grad IS NOT NULL OR @Sifra_Reg IS NOT NULL
  48642.         SET @SSQL = @SSQL + ' INNER JOIN Komint K ON P.Sifra_Kup=K.Sifra_Kup '
  48643.     If @Sifra_KupOd Is NOT Null
  48644.         SET @SSQL = @SSQL + ' AND P.Sifra_Kup>=''' + @Sifra_KupOd + ''' ' 
  48645.     If @Sifra_KupDo Is NOT Null
  48646.         SET @SSQL = @SSQL + ' AND P.Sifra_Kup<=''' + @Sifra_KupDo + ''' ' 
  48647.     If @Sifra_Grad Is Not Null
  48648.         SET @SSQL = @SSQL + ' AND K.Sifra_Grad ='+ cast(@Sifra_Grad as varchar(6))  
  48649.     If @Sifra_Reg IS NOT NULL
  48650.         SET @SSQL = @SSQL + ' AND K.Sifra_Reg ='+ cast(@Sifra_Reg as varchar(6))  
  48651.     INSERT INTO #TmpKup EXEC (@SSQL)
  48652. End
  48653. Else
  48654. Begin
  48655.     SET @SSQL = 'SELECT Sifra_Kup FROM Komint WHERE 1=1 '
  48656.     If @Sifra_OE Is Not Null
  48657.         Set @SSQL = @SSQL + ' AND (Sifra_pat = '+cast(@Sifra_OE as varchar(4))+' OR Sifra_Pat2 = '+cast(@Sifra_OE as varchar(4)) + ') '
  48658.     If @Sifra_KupOd Is NOT Null
  48659.         SET @SSQL = @SSQL + ' AND Sifra_Kup>=''' + @Sifra_KupOd + ''' ' 
  48660.     If @Sifra_KupDo Is NOT Null
  48661.         SET @SSQL = @SSQL + ' AND Sifra_Kup<=''' + @Sifra_KupDo + ''' ' 
  48662.     If @Sifra_Grad Is Not Null
  48663.         SET @SSQL = @SSQL + ' AND Sifra_Grad ='+ cast(@Sifra_Grad as varchar(6))  
  48664.     If @Sifra_Reg IS NOT NULL
  48665.         SET @SSQL = @SSQL + ' AND Sifra_Reg ='+ cast(@Sifra_Reg as varchar(6))  
  48666.     --If (@IOSOdEdnaOE = 'D' AND @Sifra_OE Is Not Null) OR @Sifra_KupOd Is NOT Null OR @Sifra_KupDo Is NOT Null   OR @Sifra_Grad IS NOT NULL  OR @Sifra_Reg IS NOT NULL
  48667.     If @Sifra_OE Is Not Null OR @Sifra_KupOd Is NOT Null OR @Sifra_KupDo Is NOT Null   OR @Sifra_Grad IS NOT NULL  OR @Sifra_Reg IS NOT NULL
  48668.     Begin
  48669.         SET @SSQL = @SSQL + ' UNION SELECT DISTINCT Sifra_Kup FROM KObjekti WHERE 1=1 '
  48670.         If  @Sifra_OE Is Not Null  --AND @IOSOdEdnaOE = 'D' 
  48671.             Set @SSQL = @SSQL + ' AND (Sifra_pat = '+cast(@Sifra_OE as varchar(4))+' OR Sifra_Pat2 = '+cast(@Sifra_OE as varchar(4)) + ') '
  48672.         If @Sifra_KupOd Is NOT Null
  48673.             SET @SSQL = @SSQL + ' AND Sifra_Kup>=''' + @Sifra_KupOd + ''' ' 
  48674.         If @Sifra_KupDo Is NOT Null
  48675.             SET @SSQL = @SSQL + ' AND Sifra_Kup<=''' + @Sifra_KupDo + ''' ' 
  48676.         If @Sifra_Grad Is Not Null
  48677.             SET @SSQL = @SSQL + ' AND Sifra_Grad ='+ cast(@Sifra_Grad as varchar(6))  
  48678.         If @Sifra_Reg IS NOT NULL
  48679.             SET @SSQL = @SSQL + ' AND Sifra_Reg ='+ cast(@Sifra_Reg as varchar(6))  
  48680.     End
  48681.     INSERT INTO #TmpKup EXEC(@SSQL)
  48682. End
  48683.     SET @SSQL = 'SELECT Sifra_OE OE, Sifra_Dok SifDok, Broj_Dok BrDok , Sifra_kup Kup,
  48684.             Datum_Dok Dat, Rok, Dolzi Dol, Pobaruva Pob, Plateno_Dolzi PDol, Plateno_Pobar PPob'
  48685.     IF @Sirok='D'
  48686.         SET @SSQL = @SSQL + ', Sifra_za SifZa, Kto, BrojDok'
  48687.     SET @SSQL = @SSQL + ' FROM AnFinDok WHERE Sifra_kup IN (SELECT Sifra_Kup FROM #TmpKup) '
  48688.     IF @KoiOE IS NOT NULL
  48689.         SET @SSQL = @SSQL + ' and Sifra_OE IN (' + @KoiOE + ') '
  48690.     IF @Kartica IS NULL OR @Kartica<>'D'    
  48691.         SET @SSQL = @SSQL + ' AND (Dolzi<>Plateno_Dolzi OR Pobaruva<>Plateno_Pobar) '
  48692.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  48693.         Set @SSQL = @SSQL + 'AND Sifra_Za=' + @Sifra_Za + ' '
  48694.     If @Kto Is NOT Null 
  48695.         SET @SSQL = @SSQL + ' AND Kto IN (' + @Kto + ') '
  48696.     If @IOSOdEdnaOE = 'D' AND @Sifra_OE Is NOT Null                
  48697.         SET @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  48698.     If @IOSOdEdnaOE = 'P' AND @Sifra_OE Is NOT Null                
  48699.         SET @SSQL = @SSQL + 'AND Sifra_Pat=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  48700.     Set @SSQL = @SSQL + ' Order By Sifra_Kup, Datum_Dok'
  48701.     EXEC(@SSQL)
  48702.  
  48703.  
  48704.  
  48705. Go
  48706. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ios_zatv]'))
  48707. drop procedure [dbo].[sp_ios_zatv]
  48708.  
  48709. Go
  48710.  
  48711.  
  48712.  
  48713. CREATE              PROCEDURE sp_IOS_Zatv
  48714. --@Sifra_Kup Zadolzitelno
  48715. --@Sifra_Za Zadolzitelno, 1 ili 2 za kupuvaci ili dobav. soodvetno
  48716. --@Sifra_OE Zadolzitelno
  48717. --@TipDok Zadolzitelno, Tipot na dokum. koj bara zatvoranje
  48718. --@Kto Zadolzitelno, kontoto so koe zatvorame
  48719. --@KoiFri 'O' - Samo otvoreni, 'S' - Vekje zatvoreni + Otvoreni
  48720. --@KojAnid, Null ili Anid na dokumentot za koj gi barame zatvaranjata,
  48721. --          vazi samo so @KojFri='S'
  48722.     @Sifra_Kup Char(6),
  48723.     @Sifra_Za Char(1),
  48724.     @TipDok Char(1),
  48725.     @Kto Char(6),
  48726.     @KoiFri Char(1),        --S-Site(stari zatv+kandidati), O-samo kandidati, Z-Samo stari zatvoranja (Z-dod.21.04.09)
  48727.     @KojAnid Int, 
  48728.     @Znak smallint, 
  48729.     @Dev char(1),
  48730.     @Podred    char(1)='D'        --D-dat.dosp.,V-Dat.dok.
  48731. AS
  48732.     Declare @SSQL Varchar(2000)
  48733.     CREATE TABLE #IOS
  48734.     (    Anid Int,
  48735.         Sifra_OE smallint, 
  48736.         Sifra_Dok Smallint,
  48737.         Broj_Dok Int,
  48738.         BrojDok Varchar(30),
  48739.         Datum_Dok Smalldatetime,
  48740.         Rok Smallint,
  48741.         Iznos Numeric(18, 4),
  48742.         Iznos_Dev Numeric(18,4),
  48743.         Dolzi Numeric(18,4),
  48744.         Pobaruva Numeric(18,4),
  48745.         Plateno_Dolzi Numeric(18,4),
  48746.         Plateno_Pobar Numeric(18,4),
  48747.         Dev_Dolzi Numeric(18,4),
  48748.         Dev_Pobaruva Numeric(18,4),
  48749.         Dev_Plat_Dolzi Numeric(18,4),
  48750.         Dev_Plat_Pobar Numeric(18,4),
  48751.         Sifra_Pat Smallint,
  48752.         KojaVal  char(3),
  48753.         Sifra_nal    smallint,
  48754.         Broj_Nal    int,
  48755.         Sifra_Div    smallint
  48756.     )
  48757.     -- Prvo gi naogjame dokumentite zatvoreni so ovoj dokument
  48758.     -- (vo slucaj da vrsime izmena na vekje knizen dokument)
  48759.    If (@KoiFri IN ('S','Z')) And (@KojAnid Is Not Null)
  48760.         INSERT INTO #IOS
  48761.         SELECT A.Anid, A.Sifra_OE, A.Sifra_Dok, A. Broj_Dok, A.BrojDok,
  48762.             A.Datum_Dok, A.Rok, AZ.Iznos, AZ.Iznos_Dev,
  48763.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar,
  48764.             A.Dev_Dolzi, A.Dev_Pobaruva, A.Dev_Plat_Dolzi, A.Dev_Plat_Pobar,
  48765.             A.Sifra_Pat, A.KojaVal, A.Sifra_Nal, A.Broj_Nal, A.Sifra_Div
  48766.         FROM AnZatv AZ
  48767.         INNER JOIN AnFinDok A ON (AZ.Anid1=A.Anid OR AZ.Anid2=A.Anid) AND 
  48768.          A.Sifra_Kup = @Sifra_Kup  
  48769.         WHERE (AZ.Anid1=@KojAnid OR AZ.Anid2=@KojAnid) AND A.Anid<>@KojAnid 
  48770.     -- Sega gi naogjame otvorenite dokumenti
  48771. IF @KoiFri <> 'Z'
  48772. Begin
  48773.    SET @SSQL = 'SELECT A.Anid, A.Sifra_OE, A.Sifra_Dok, A. Broj_Dok, A.BrojDok,
  48774.             A.Datum_Dok, A.Rok, 0, 0, 
  48775.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar,
  48776.             A.Dev_Dolzi, A.Dev_Pobaruva, A.Dev_Plat_Dolzi, A.Dev_Plat_Pobar,
  48777.             A.Sifra_Pat, A.KojaVal, A.Sifra_Nal, A.Broj_Nal, A.Sifra_Div
  48778.             FROM AnFinDok A
  48779.             WHERE Sifra_Kup=''' + @Sifra_Kup + ''' 
  48780.             AND Sifra_Za=''' + @Sifra_Za + ''' AND Kto=''' + @Kto + ''' '
  48781.     IF (@Sifra_Za='1' AND @TipDok='1') OR (@Sifra_Za='2' AND @TipDok='2')
  48782.         Begin    
  48783.             If @Znak > 0        
  48784.                 SET @SSQL = @SSQL + 'AND (Dolzi+Dev_Dolzi<0 OR Pobaruva+Dev_Pobaruva>0) '
  48785.             Else
  48786.                 SET @SSQL = @SSQL + 'AND (Dolzi+Dev_Dolzi>0 OR Pobaruva+Dev_Pobaruva<0) '        
  48787.         End
  48788.     ELSE IF (@Sifra_Za='1' AND @TipDok='2') OR (@Sifra_Za='2' AND @TipDok='1')
  48789.         Begin
  48790.             If @Znak > 0            
  48791.                 SET @SSQL = @SSQL + 'AND (Dolzi+Dev_Dolzi>0 OR Pobaruva+Dev_Pobaruva<0) '
  48792.             Else
  48793.                 SET @SSQL = @SSQL + 'AND (Dolzi+Dev_Dolzi<0 OR Pobaruva+Dev_Pobaruva>0) '        
  48794.         End
  48795.     If @Dev = 'D'
  48796.         SET @SSQL = @SSQL + ' AND (A.Dev_Dolzi<>A.Dev_Plat_Dolzi OR A.Dev_Pobaruva<>A.Dev_Plat_Pobar) '
  48797.     Else
  48798.         SET @SSQL = @SSQL + ' AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  48799.     SET @SSQL = @SSQL + ' AND A.Anid NOT IN (SELECT DISTINCT Anid FROM #IOS) '
  48800.     If @KojAnid IS NOT NULL
  48801.         Set @SSQL = @SSQL + ' AND A.Anid <> ' + Cast(@KojAnid as varchar(9)) + ' '   
  48802.     INSERT INTO #IOS EXEC(@SSQL)
  48803. End
  48804. IF @Podred='V'
  48805.     SELECT DISTINCT Anid, DateADD(day, Rok, Datum_Dok) DatDosp,
  48806.         Sifra_OE, Sifra_Dok, Broj_Dok, BrojDok, Datum_Dok, Rok, Iznos, Iznos_Dev,
  48807.         Dolzi, Pobaruva, Plateno_Dolzi, Plateno_Pobar,
  48808.         Dev_Dolzi, Dev_Pobaruva, Dev_Plat_Dolzi, Dev_Plat_Pobar,
  48809.         Sifra_Pat, KojaVal, Sifra_Nal, Broj_Nal, Sifra_Div
  48810.     FROM #IOS
  48811.     ORDER BY Datum_Dok
  48812. ELSE
  48813.     SELECT DISTINCT Anid, DateADD(day, Rok, Datum_Dok) DatDosp,
  48814.         Sifra_OE, Sifra_Dok, Broj_Dok, BrojDok, Datum_Dok, Rok, Iznos, Iznos_Dev,
  48815.         Dolzi, Pobaruva, Plateno_Dolzi, Plateno_Pobar,
  48816.         Dev_Dolzi, Dev_Pobaruva, Dev_Plat_Dolzi, Dev_Plat_Pobar,
  48817.         Sifra_Pat, KojaVal, Sifra_Nal, Broj_Nal, Sifra_Div
  48818.     FROM #IOS
  48819.     ORDER BY DatDosp            --Anid smeneto 04.02.04
  48820.  
  48821.  
  48822.  
  48823.  
  48824. Go
  48825. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ispllistaotkup]'))
  48826. drop procedure [dbo].[sp_ispllistaotkup]
  48827.  
  48828. Go
  48829.  
  48830.  
  48831.  
  48832.  
  48833.  
  48834.  
  48835. CREATE       PROCEDURE sp_IsplListaOtkup
  48836.     @Datum_Presm    smalldatetime,
  48837.     @Sifra_Dok    smallint,
  48838.     @Sifra_Oe    smallint,
  48839.     @KDrugo1    smallint=NULL,
  48840.         @KSifra_Dok    smallint=null
  48841. AS
  48842. Declare @Dat_DospOd    smalldatetime
  48843. SET @Dat_DospOd = dbo.fn_VratiDatumOd(Year(@Datum_Presm), Month(@Datum_Presm))
  48844.  
  48845. CREATE TABLE #Fakt
  48846. (Sifra_Kup    char(6),
  48847. Izn_Izlez    decimal(18,2))
  48848.  
  48849. CREATE TABLE #IL
  48850. (Sifra_Kup    char(6),
  48851. Izn_Priem    decimal(18,2),
  48852. Izn_PerDan    decimal(18,2))
  48853.  
  48854. IF @KDrugo1 IS NOT NULL
  48855.     INSERT INTO #IL (Sifra_Kup, Izn_Priem, Izn_PerDan)
  48856.     SELECT D.Sifra_Kup, SUM(D.Toc200), SUM(D.Plat_PerDan) FROM Dokr D
  48857.     INNER Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  48858.     WHERE D.Datum_Dok=@Datum_Presm AND D.Sifra_OE=@Sifra_Oe AND D.Sifra_Dok=@Sifra_Dok AND K.KDrugo1=@KDrugo1 GROUP BY D.Sifra_Kup
  48859. ELSE
  48860.     INSERT INTO #IL (Sifra_Kup, Izn_Priem, Izn_PerDan)
  48861.     SELECT Sifra_Kup, SUM(Toc200), SUM(Plat_PerDan) FROM Dokr 
  48862.     WHERE Datum_Dok=@Datum_Presm AND Sifra_OE=@Sifra_Oe AND Sifra_Dok=@Sifra_Dok GROUP BY Sifra_Kup
  48863.  
  48864. if  @KSifra_Dok is not null
  48865.    INSERT INTO #Fakt (Sifra_Kup, Izn_Izlez) SELECT Sifra_Kup, SUM(Toc200) FROM Dokr 
  48866.     WHERE Sifra_Kup IN (SELECT Sifra_Kup FROM #IL) AND Sifra_Za=1 AND VlIzl='I' AND 
  48867.     DateAdd(day, Rok, Datum_dok)>=@Dat_DospOd AND DateAdd(day, Rok, Datum_dok)<=@Datum_Presm 
  48868.     and Sifra_dok <>  @KSifra_Dok  
  48869.     GROUP BY Sifra_Kup 
  48870. else
  48871.     INSERT INTO #Fakt (Sifra_Kup, Izn_Izlez) SELECT Sifra_Kup, SUM(Toc200) FROM Dokr 
  48872.     WHERE Sifra_Kup IN (SELECT Sifra_Kup FROM #IL) AND Sifra_Za=1 AND VlIzl='I' AND 
  48873.     DateAdd(day, Rok, Datum_dok)>=@Dat_DospOd AND DateAdd(day, Rok, Datum_dok)<=@Datum_Presm GROUP BY Sifra_Kup
  48874.  
  48875. /*SELECT I.*, F.Izn_Izlez, K.ImeKup, K.Adresa, K.SMesto, -- B.ImeBanka Banka, KB.ZiroSka Ziro,  (vaka besse)
  48876.     K.Banka, K.Ziro, K.Danocen, K.Sopstvenik                    -- prom GK 14.10.08 za da gi gleda bankite i ziro od komint a ne od Banki/KBanki
  48877. FROM #IL I 
  48878. LEFT OUTER JOIN #Fakt F ON I.Sifra_Kup=F.Sifra_Kup
  48879. INNER JOIN Komint K ON I.Sifra_Kup=K.Sifra_Kup 
  48880. --LEFT OUTER JOIN KBanki KB ON K.Sifra_Kup=KB.Sifra_Kup 
  48881. --LEFT OUTER JOIN Banki B ON KB.Sifra_Ban=B.Sifra_Ban  */
  48882.  
  48883. CREATE TABLE #TmpBnk
  48884. (Sifra_Kup    char(6),
  48885. Ziro        varchar(20),
  48886. ImeBanka    varchar(30))
  48887.  
  48888. INSERT INTO #TmpBnk (Sifra_Kup) SELECT Sifra_Kup FROM #IL
  48889. UPDATE #TmpBnk SET Ziro=KB.ZiroSka, ImeBanka=B.ImeBanka
  48890. FROM KBanki KB, Banki B WHERE #TmpBnk.Sifra_Kup=KB.Sifra_Kup AND KB.Sifra_Ban=B.Sifra_Ban
  48891.  
  48892. SELECT I.*, F.Izn_Izlez, K.ImeKup, K.Adresa, K.SMesto, B.ImeBanka Banka, B.Ziro, K.Danocen, K.Sopstvenik, K.Ziro2, K.Ziro Ziro1    
  48893. FROM #IL I 
  48894. LEFT OUTER JOIN #Fakt F ON I.Sifra_Kup=F.Sifra_Kup
  48895. INNER JOIN Komint K ON I.Sifra_Kup=K.Sifra_Kup 
  48896. LEFT OUTER JOIN #TmpBnk B ON K.Sifra_Kup=B.Sifra_Kup 
  48897.  
  48898.  
  48899.  
  48900.  
  48901.  
  48902.  
  48903. Go
  48904. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ispllistaotkup_poart]'))
  48905. drop procedure [dbo].[sp_ispllistaotkup_poart]
  48906.  
  48907. Go
  48908.  
  48909.  
  48910.  
  48911.  
  48912. CREATE         PROCEDURE sp_IsplListaOtkup_PoArt
  48913.     @Datum_Od    smalldatetime,
  48914.     @DAtum_Do    smalldatetime,
  48915.     @Sifra_Dok    smallint,
  48916.     @Sifra_Oe    smallint,
  48917.     @KDrugo1    smallint=NULL, 
  48918.     @Priv_Lice char(1)= null,
  48919.         @KSifra_Dok    smallint=null
  48920. AS
  48921.     Declare @SSQl as varchar(5000)
  48922.  
  48923. CREATE TABLE #IL
  48924.     (Sifra_Kup    char(6),
  48925.     Izn_Priem    decimal(18,2),
  48926.     Izn_PerDan    decimal(18,2),
  48927.     Kolic    decimal(18,2),
  48928.     Cena decimal(18,2),
  48929.     Sifra_Art varchar(20))
  48930.  
  48931.     SET @ssql='    INSERT INTO #IL (Sifra_Kup, Izn_Priem, Izn_PerDan, Kolic, Cena, Sifra_Art)
  48932.         SELECT D.Sifra_Kup, Round(SUM(S.Kolic*(CASE S.DanDokCena WHEN ''N'' THEN S.DokCena *(1+S.PosnPren/100) ELSE S.DokCena END)*(1-S.Uces/100)),0), SUM(D.Plat_PerDan), SUM(S.Kolic), 0, S.Sifra_Art 
  48933.                 FROM Dokr D
  48934.         INNER Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  48935.         Inner Join Stavr S on D.DokrID=S.DokrID
  48936.         WHERE D.Datum_Dok>= '''+cast(@Datum_Od as varchar(35))+''' and D.Datum_Dok<= '''+cast(@Datum_Do as varchar(35))+''''
  48937.     If @Sifra_oe is not null
  48938.         SET @ssql=@ssql+' AND D.Sifra_OE='+ cast(@Sifra_Oe as varchar(3))+' '
  48939.     If @Sifra_Dok is not null
  48940.         SET @ssql=@ssql+' AND D.Sifra_Dok=' +cast(@Sifra_Dok as varchar(5)) +' '
  48941.     If @KDrugo1 is not null
  48942.         SET @ssql=@ssql+' AND K.KDrugo1='+ cast(@KDrugo1 as varchar(5))+ ' '
  48943.     If @Priv_Lice is not null
  48944.         SET @ssql=@ssql+' AND K.Priv_Lice='+ cast(@Priv_Lice as varchar(5))+ ' '
  48945.     If @KSifra_Dok Is NOT NULL
  48946.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok<>' + Cast(@KSifra_Dok As Varchar(10)) + ' '
  48947.         SET @ssql=@ssql+'GROUP BY K.Priv_Lice, S.Sifra_Art, D.Sifra_Kup ORDER BY  D.Sifra_Kup' 
  48948.     exec (@ssql)
  48949.  
  48950. CREATE TABLE #TmpBnk
  48951.     (Sifra_Kup    char(6),
  48952.     Ziro        varchar(20),
  48953.     ImeBanka    varchar(30))
  48954.  
  48955.     INSERT INTO #TmpBnk (Sifra_Kup) SELECT DISTINCT Sifra_Kup FROM #IL
  48956.     UPDATE #TmpBnk SET Ziro=KB.ZiroSka, ImeBanka=B.ImeBanka
  48957.     FROM KBanki KB, Banki B WHERE #TmpBnk.Sifra_Kup=KB.Sifra_Kup AND KB.Sifra_Ban=B.Sifra_Ban AND RbrBan=1
  48958.     
  48959.     SELECT I.*, K.ImeKup, K.Adresa, K.SMesto, B.Ziro, K.Danocen, K.Sopstvenik, B.ImeBanka Banka, K.Priv_Lice, A.ImeArt,
  48960.     (CASE K.Priv_Lice WHEN '1' THEN '1 Kooperanti ' WHEN '2' THEN '2 Kooperanti so pers.danok' WHEN '3' THEN '3 Firmi koi ne se DDV obvrznici' WHEN '4' THEN '4 Firmi koi se DDV obvrznici'  END) as OpisPL
  48961.     FROM #IL I 
  48962.     INNER JOIN Komint K ON I.Sifra_Kup=K.Sifra_Kup 
  48963.     INNER JOIN KatArt A ON I.Sifra_Art=A.Sifra_Art
  48964.     LEFT OUTER JOIN #TmpBnk B ON K.Sifra_Kup=B.Sifra_Kup 
  48965.     ORDER BY I.Sifra_Kup, I.Sifra_Art
  48966.  
  48967.  
  48968.  
  48969.  
  48970.  
  48971.  
  48972.  
  48973.  
  48974. Go
  48975. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ispllistotkupsr]'))
  48976. drop procedure [dbo].[sp_ispllistotkupsr]
  48977.  
  48978. Go
  48979. CREATE         PROCEDURE sp_IsplListOtkupSR
  48980.     @Sifra_OE    smallint,
  48981.     @Sifra_Dok    smallint,
  48982.     @Broj_Dok    int,
  48983.     @Sifra_Kup    char(6)=NULL OUTPUT,
  48984.     @ImeKup        varchar(40)=NULL OUTPUT,
  48985.     @Adresa        varchar(40)=NULL OUTPUT,
  48986.     @Smesto        varchar(20)=NULL OUTPUT,
  48987.     @Danocen    varchar(15)=NULL OUTPUT,
  48988.     @BrojResenie    varchar(15)=NULL OUTPUT,
  48989.     @ZiroSka    varchar(30)=NULL OUTPUT,
  48990.     @Datum_Dok    smalldatetime=NULL OUTPUT
  48991. AS
  48992. SELECT @Datum_Dok=D.Datum_Dok, @Sifra_Kup=D.Sifra_Kup, @ImeKup=K.ImeKup, @Adresa=K.Adresa, @Smesto=K.Smesto, @Danocen=K.Danocen, @BrojResenie=K.Garancija
  48993. FROM Dokr D 
  48994. INNER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup 
  48995. WHERE D.Sifra_OE=@Sifra_OE AND D.Sifra_Dok=@Sifra_Dok AND D.Broj_Dok=@Broj_Dok
  48996. SELECT @ZiroSka = ZiroSka FROM KBanki WHERE Sifra_Kup=@Sifra_Kup
  48997.  
  48998. SELECT S.Datum_Dok, S.Sifra_Art, K.ImeArt, K.EdMera, S.Kolic, dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena,'N') DokCena,
  48999.        S.POsn 
  49000. FROM Stavr S 
  49001.     INNER JOIN DokrVoZbirni Z ON S.DokrID=Z.DokrID_Orig
  49002.     INNER JOIN Dokr D ON Z.DokrID_Zb=D.DOkrID 
  49003.     INNER JOIN KatArt K ON S.Sifra_Art=K.Sifra_Art
  49004.     WHERE D.Sifra_OE=@Sifra_OE AND D.Sifra_Dok=@Sifra_Dok AND D.Broj_Dok=@Broj_Dok
  49005. ORDER BY S.Datum_Dok
  49006.  
  49007.  
  49008.  
  49009.  
  49010.  
  49011.  
  49012. Go
  49013. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_items]'))
  49014. drop procedure [dbo].[sp_items]
  49015.  
  49016. Go
  49017.  
  49018.  
  49019. CREATE                        PROCEDURE sp_Items
  49020.     @Datum_Dok_Od Smalldatetime,
  49021.     @Datum_Dok_Do Smalldatetime,    
  49022.     @DokOdFinDok  varchar(100)   = '1,10, 16',
  49023.     @Sifra_Art_Od        varchar(20)=Null,
  49024.     @Sifra_Art_Do        varchar(20)='009000',
  49025.     @Sif_GrOrg        char(6)='9'
  49026. AS
  49027.     Declare @SSQL Varchar(2000)
  49028.     CREATE        Table #tSostav
  49029.     (    Sifra_Art Varchar(20),
  49030.         Sifra_Sur Varchar(20),
  49031.         Ima_Kolic Decimal(18,6),
  49032.         Cena Decimal(18,6),
  49033.         VkCena Decimal(18,6)
  49034.     )
  49035.     CREATE        Table #tItems
  49036.     (    DB_CODE Char(5),
  49037.         TRANS_DATE Smalldatetime,
  49038.         CST_CODE Char(6),
  49039.         ITEM_CODE Char(5),
  49040.         SIFRA_SOSTAV Char(6),
  49041.         QUANTITY Decimal(15,4),
  49042.         VALUE Decimal(15,4),
  49043.         DISCOUNT Decimal(15,4),
  49044.         DOC_NO Char(13),
  49045.         PROM_CODE Char(20),
  49046.         VAN_PRESEL Char(1),
  49047.         AGENT    Char(5),
  49048.         LOCALCODE Char(5),
  49049.         DESCR_PROM Char(20)
  49050.     )
  49051.     Set @SSQL = 'Insert #tSostav
  49052.             Select TS.Sifra_Art, TS.Sifra_Sur, TS.Ima_Kolic, TS.Cena, TS.VkCena From Sostav TS 
  49053.             Inner Join Katart K On TS.Sifra_Art=K.Sifra_Art '
  49054.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  49055.     IF @Sifra_Art_Od IS NOT NULL 
  49056.         SET @SSQL = @SSQL + ' AND K.Sifra_Art>=''' + @Sifra_Art_Od +''' '
  49057.     IF @Sifra_Art_Do IS NOT NULL 
  49058.         SET @SSQL = @SSQL + ' AND K.Sifra_Art<=''' + @Sifra_Art_Do +''' '
  49059.     Set @SSQL = @SSQL +  ' Order By TS.Sifra_Art '
  49060.     Exec(@SSQL)
  49061.     Set @SSQL = 'Insert #tSostav
  49062.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  49063.         From Katart K '
  49064.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  49065.     IF @Sifra_Art_Od IS NOT NULL 
  49066.         SET @SSQL = @SSQL + ' AND K.Sifra_Art>=''' + @Sifra_Art_Od +''' '
  49067.     IF @Sifra_Art_Do IS NOT NULL 
  49068.         SET @SSQL = @SSQL + ' AND K.Sifra_Art<=''' + @Sifra_Art_Do +''' '
  49069.     Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) Order By K.Sifra_Art'
  49070.     Exec(@SSQL)
  49071.     SET @SSQL='SELECT
  49072.         ''MKMA''                            DB_CODE,
  49073.         S.Datum_Dok                            TRANS_DATE,
  49074.         D.Sifra_Kup                            CST_CODE,
  49075.         dbo.fn_ULKod(TS.Sifra_Sur, K.Alt_Sifra)    ITEM_CODE,
  49076.         Case
  49077.             When TS.Sifra_Art<>TS.Sifra_Sur Then TS.Sifra_Art
  49078.             Else Null
  49079.         End                                SIFRA_SOSTAV,
  49080.         S.Kolic*TS.Ima_Kolic                        QUANTITY,
  49081.         dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)*(S.Kolic*TS.Ima_Kolic) VALUE,
  49082.         dbo.fn_VratiRabatSoDDV(S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)*(S.Kolic*TS.Ima_Kolic)                    DISCOUNT,
  49083.         Cast(S.Sifra_OE As Varchar(6)) + ''-'' + Cast(S.Sifra_Dok As Varchar(6)) + ''/'' + Cast(S.Broj_Dok As Varchar(12))  DOC_NO,
  49084.         Null                                                    PROM_CODE,
  49085.         Case S.Sifra_OE
  49086.             When 1 Then ''D''
  49087.             Else Null
  49088.         End                                                    VAN_PRESEL,
  49089.         S.Sifra_OE AGENT,
  49090.         Null                                                    LOCALCODE,
  49091.         Null                                                    DESCR_PROM
  49092.     FROM #tSostav TS
  49093.     Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  49094.     INNER JOIN KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  49095.     INNER JOIN Dokr D ON S.DokrID=D.DokrID
  49096.     WHERE S.Sifra_Dok IN (' +@DokOdFinDok + ') AND K.Iskluci<>''D'' '
  49097.     If @Sif_GrOrg IS NOT NULL    
  49098.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg = '''+@Sif_GrOrg +''') ' 
  49099.     If @Datum_Dok_Od Is NOT Null
  49100.         SET @SSQL = @SSQL + ' AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  49101.     If @Datum_Dok_Do Is NOT Null
  49102.          SET @SSQL = @SSQL + ' AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  49103.     Set @SSQL = @SSQL + 'Order by SIFRA_SOSTAV Desc '
  49104.     Insert #tItems Exec(@SSQL)
  49105.     Update #tItems
  49106.         Set LOCALCODE=(Select dbo.fn_ULKod(Sifra_Art, Alt_Sifra) From Katart
  49107.                                 Where #tItems.SIFRA_SOSTAV=Katart.Sifra_Art),
  49108.              DESCR_PROM=(Select Substring(ImeArt, 1, 20) From Katart
  49109.                                 Where #tItems.SIFRA_SOSTAV=Katart.Sifra_Art)
  49110.     Where SIFRA_SOSTAV Is Not Null
  49111.     Select DB_CODE, TRANS_DATE, CST_CODE, ITEM_CODE, QUANTITY, VALUE,
  49112.              DISCOUNT, DOC_NO, PROM_CODE, VAN_PRESEL, AGENT,
  49113.              LOCALCODE, DESCR_PROM
  49114.     From #tItems
  49115.     Order By TRANS_DATE
  49116.  
  49117.  
  49118.  
  49119. Go
  49120. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izbrisitmsim_opcusl]'))
  49121. drop procedure [dbo].[sp_izbrisitmsim_opcusl]
  49122.  
  49123. Go
  49124. CREATE    PROCEDURE sp_IzbrisiTmSim_OpcUsl
  49125.     @Sifra_OE     smallint,
  49126.     @BrojBaranje    int,
  49127.     @BrojPrilog    int
  49128. AS
  49129.     DELETE FROM TmSim_OpcUsl 
  49130.     Where Sifra_OE=@Sifra_Oe And BrojBaranje=@BrojBaranje And BrojPrilog=@BrojPrilog
  49131.  
  49132.  
  49133.  
  49134. Go
  49135. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izlezi_pooe]'))
  49136. drop procedure [dbo].[sp_izlezi_pooe]
  49137.  
  49138. Go
  49139.  
  49140.  
  49141. CREATE                     PROCEDURE sp_Izlezi_PoOE
  49142.     @Sifra_OE Smallint,
  49143.     @KoiOE Varchar(1000),
  49144.     @Pod1 Smallint,
  49145.     @Pod2 Smallint,
  49146.     @Pod3 Smallint = Null,
  49147.     @Pod4 Smallint = Null,
  49148.     @Pod5 Smallint = Null,
  49149.     @Pod6 Smallint = Null,
  49150.     @Pod7 Smallint = Null,
  49151.     @Sifra_Tip Smallint = Null,
  49152.     @Datum_Od Smalldatetime,
  49153.     @Datum_Do Smalldatetime,
  49154.     @Sifra_Art_Od Varchar(20),
  49155.     @Sifra_Art_Do Varchar(20),
  49156.     @Sifra_Kup_Od Char(6),
  49157.     @Sifra_Kup_Do Char(6),
  49158.     @Podred Char(1),
  49159.     @Kto Char(6),
  49160.     @Sifra_Gr Char(3),
  49161.     @Sifra_Podg Char(6),
  49162.     @Lokacija Varchar(10),
  49163.     @TipKup Char(11),
  49164.     @Sifra_Brand Smallint,
  49165.     @RazbijSostav Char(1),
  49166.     @Koi_Gradovi varchar(200) = Null,
  49167.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  49168.     @Drugo1    smallint = Null,
  49169.     @Drugo2    smallint = Null,
  49170.     @Drugo3    smallint = Null,
  49171.     @Drugo4    smallint = Null,
  49172.     @Drugo5    smallint = Null,
  49173.     @Drugo6    smallint = Null,
  49174.     @Drugo7    smallint = Null
  49175. AS
  49176.     If @PoKojDatum = 'V'
  49177.             If @Datum_Do Is Not Null
  49178.         Set @Datum_Do = @Datum_Do + 1
  49179.     Set Nocount On
  49180.     Declare @SSQL Varchar(8000)
  49181.     CREATE    Table #tSostav
  49182.     (    Sifra_Art Varchar(20),
  49183.         Sifra_Sur Varchar(20),
  49184.         Ima_Kolic Decimal(18,6),
  49185.         Cena Decimal(18,6),
  49186.         VkCena Decimal(18,6)
  49187.     )
  49188.     CREATE  INDEX IX_Sostav ON #tSostav(Sifra_Art)
  49189.     If @RazbijSostav = 'D'
  49190.         Begin
  49191.             Set @SSQL = 'Insert #tSostav
  49192.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  49193.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  49194.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  49195.             Exec(@SSQL)
  49196.         End
  49197.     Set @SSQL = 'Insert #tSostav
  49198.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  49199.         From Katart K '
  49200.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  49201.     If @RazbijSostav = 'D'
  49202.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  49203.     Exec(@SSQL)
  49204. --select * from #tsostav
  49205. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  49206. --------------------------------------------------------------
  49207.     Set @SSQL = 'Select
  49208.             Month(S.Datum_Dok) As Mesec,
  49209.             Year(S.Datum_Dok) As Godina,
  49210.             Count(Distinct(S.DokrID)) As Br_Fri,
  49211.             Count(Distinct(S.DokID)) As Br_Stavki,
  49212.             Count(Distinct(D.Sifra_Kup)) As Br_Komint,
  49213.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  49214.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  49215.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna,
  49216.             Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) Vk_NPS,
  49217.             S.Sifra_OE, O.ImeOrg
  49218.         From #tSostav TS
  49219.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  49220.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  49221.         Inner Join Dokr D On S.DokrID=D.DokrID
  49222.         Inner Join Orged O On D.Sifra_OE=O.Sifra_OE '
  49223.     If @Sifra_Gr Is Not Null
  49224.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  49225.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) 
  49226.             Or (@Pod6 Is Not Null) Or (@Pod7 Is Not Null) Or (@Sifra_Tip Is Not Null)
  49227.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  49228.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  49229.     Set @SSQL = @SSQL + 'Where D.VlIzl=''I'' And D.Sifra_Za=1 And K.Iskluci <> ''D'' '
  49230.     If @Sifra_Brand Is Not Null
  49231.         Set @SSQL  = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(5)) + ' '
  49232.     If @Lokacija Is Not NULL
  49233.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + ''' '
  49234.     If @Kto Is Not NULL
  49235.         Set @SSQL = @SSQL + 'And K.Kto=' + @Kto + ' '
  49236.     If @Sifra_Podg Is Not NULL
  49237.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  49238.     If @Sifra_Gr Is Not NULL
  49239.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  49240.     If @PoKojDatum = 'V'
  49241.           Begin
  49242.         If @Datum_Od Is Not NULL
  49243.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  49244.         If @Datum_Do Is Not NULL
  49245.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  49246.       End
  49247.     Else 
  49248.           Begin
  49249.         If @Datum_Od Is Not NULL
  49250.             Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  49251.         If @Datum_Do Is Not NULL
  49252.             Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  49253.            End
  49254.     If @Sifra_OE Is Not Null
  49255.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  49256.     If @KoiOE Is Not Null
  49257.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (' + @KoiOE + ') '
  49258. ---------------------------------------------------------------  19.07.2004  -------------------------------------------------------------------------------------------------------------------------
  49259.     If @Pod1 Is Not NULL
  49260.            Begin
  49261.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  49262.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  49263.            End
  49264.     If @Pod2 Is Not NULL
  49265.            Begin
  49266.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  49267.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  49268.            End
  49269.     If @Pod3 Is Not NULL
  49270.            Begin
  49271.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  49272.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  49273.            End
  49274.     If @Pod4 Is Not NULL
  49275.            Begin
  49276.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  49277.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  49278.            End
  49279.     If @Pod5 Is Not NULL
  49280.            Begin
  49281.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  49282.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  49283.            End
  49284.     If @Pod6 Is Not NULL
  49285.            Begin
  49286.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  49287.                       Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  49288.            End
  49289.     If @Pod7 Is Not NULL
  49290.            Begin
  49291.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  49292.                       Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  49293.            End
  49294. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  49295.     If @Sifra_Tip Is Not Null
  49296.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  49297.     If @Sifra_Kup_Od Is Not NULL
  49298.         Set @SSQL = @SSQL + 'And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  49299.     If @Sifra_Kup_Do Is Not NULL
  49300.         Set @SSQL = @SSQL + 'And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  49301.     If @Sifra_Art_Od Is Not NULL
  49302.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  49303.     If @Sifra_Art_Do Is Not NULL
  49304.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  49305.     If @TipKup Is Not NULL
  49306.         Set @SSQL = @SSQL + 'And KUP.TipKup=''' + @TipKup + ''' '
  49307.     If @Koi_Gradovi Is Not NULL    
  49308.         Begin
  49309.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  49310.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  49311.         End
  49312.     If @Drugo1 Is Not NULL
  49313.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  49314.     If @Drugo2 Is Not NULL
  49315.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  49316.     If @Drugo3 Is Not NULL
  49317.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  49318.     If @Drugo4 Is Not NULL
  49319.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  49320.     If @Drugo5 Is Not NULL
  49321.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  49322.     If @Drugo6 Is Not NULL
  49323.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  49324.     If @Drugo7 Is Not NULL
  49325.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  49326.     Set @SSQL = @SSQL + 'Group By Month(S.Datum_Dok), Year(S.Datum_Dok), S.Sifra_OE, O.ImeOrg '
  49327.     Exec(@SSQL)
  49328.     Set Nocount Off
  49329.  
  49330.  
  49331.  
  49332. Go
  49333. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izlozenostart]'))
  49334. drop procedure [dbo].[sp_izlozenostart]
  49335.  
  49336. Go
  49337.  
  49338. CREATE             Procedure sp_IzlozenostArt
  49339.     @Sifra_Oe        smallint = Null,
  49340.     @Koi_Oe        varchar(10) = Null,
  49341.     @Datum_Dok_Od    smalldatetime = Null,
  49342.     @Datum_Dok_Do    smalldatetime = Null,
  49343.     @Sifra_Pat        Smallint = Null,
  49344.     @GrPat        char(6) = null,
  49345.     @Sifra_Kup        char(6) = Null,
  49346.     @KPod1        smallint = Null,
  49347.     @KPod2        smallint = Null,
  49348.     @KPod3        smallint = Null,
  49349.     @KPod4        smallint = Null,
  49350.     @KPod5        smallint = Null,
  49351.     @KPod6        smallint = Null,
  49352.     @KPod7        smallint = Null,
  49353.     @Sifra_Art_Od        varchar(20) = Null,
  49354.     @Sifra_Art_Do        varchar(20) = Null
  49355. As
  49356.     Declare @SSQL as Varchar(8000)
  49357.     Declare @SSQLUsl as Varchar(8000)
  49358. -----------------------------uslovi----------------------------------------------------------------------------------------------------------
  49359.     Set @SSQLUsl=''
  49360.     If @Sifra_Oe Is Not Null
  49361.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  49362.     If @Koi_Oe Is Not Null
  49363.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  49364.     If @Sifra_Pat Is Not Null
  49365.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(10)) + ' '-- ili D
  49366.     If @GrPat Is Not Null
  49367.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Pat In (Select Sifra_PAt From SGrPAt Where Sif_GrPat = ''' + @GrPat + ''') '
  49368.     If @KPod1 Is Not Null
  49369.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo1=' + Cast(@KPod1 As Varchar(10)) + ' '
  49370.     If @KPod2 Is Not Null
  49371.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo2=' + Cast(@KPod2 As Varchar(10)) + ' '
  49372.     If @KPod3 Is Not Null
  49373.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo3=' + Cast(@KPod3 As Varchar(10)) + ' '
  49374.     If @KPod4 Is Not Null
  49375.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo4=' + Cast(@KPod4 As Varchar(10)) + ' '
  49376.     If @KPod5 Is Not Null
  49377.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo5=' + Cast(@KPod5 As Varchar(10)) + ' '
  49378.     If @KPod6 Is Not Null
  49379.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo6=' + Cast(@KPod6 As Varchar(10)) + ' '
  49380.     If @KPod7 Is Not Null
  49381.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo7=' + Cast(@KPod7 As Varchar(10)) + ' '
  49382.     If @Datum_Dok_Od Is Not Null
  49383.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  49384.     If @Datum_Dok_Do Is Not Null
  49385.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  49386.     If @Sifra_Art_Od Is Not Null
  49387.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  49388.     If @Sifra_Art_Do Is Not Null
  49389.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  49390.     If @Sifra_Kup Is Not Null
  49391.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  49392. CREATE TABLE #Tmp1
  49393. (Sifra_Art    varchar(20),
  49394. Sifra_Kup    char(6),
  49395. Sifra_Obj    smallint,
  49396. Sifra_Pat      smallint,   
  49397. DokID        int)
  49398. Set @SSQL='Select S.Sifra_Art, D.Sifra_Kup, D.Sifra_Obj,D.Sifra_Pat, MAX(DokID) FROM Stavr S 
  49399. INNER JOIN Dokr D ON S.DokrID=D.DOkrID
  49400. Left outer Join Komint K on D.Sifra_Kup=K.Sifra_kup
  49401. WHERE D.Sifra_Za=1 AND D.VlIzl=''I'' AND S.Kolic>=0 ' + @SSQLUSL + ' GROUP BY S.Sifra_Art, D.Sifra_Kup, D.Sifra_Obj, D.Sifra_Pat  '
  49402. INSERT INTO #Tmp1 EXEC(@SSQL)
  49403. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  49404. Set @SSQL='Select D.Sifra_Kup+'' ''+(Case WHEN D.Sifra_Obj IS NULL THEN '''' ELSE Cast(D.Sifra_Obj as varchar(3)) END) As Sif_PM, D.Sifra_Kup, K.ImeKup,
  49405.         D.Sifra_Obj, O.ImeObj, D.Sifra_Pat, P.ImePat, K4.Ime_4K, D.Datum_Dok, (S.Sifra_Art+''-''+ A.ImeArt) SifArt, S.Alt_KOlic,(case when D.Sifra_Obj is null then K.VidStalazi else O.VidStalazi end) Stalazi  
  49406.         From #Tmp1 T
  49407.         INNER JOIN Stavr S ON S.DokID=T.DokID
  49408.         Inner Join Dokr D on S.DokrID=D.DokrID
  49409.         Left outer Join Komint K on D.Sifra_Kup=K.Sifra_kup
  49410.         Left outer Join KObjekti O on D.Sifra_Kup=O.Sifra_kup AND D.Sifra_Obj=O.Sifra_Obj
  49411.         Left outer Join Patnici P on D.Sifra_Pat = P.Sifra_Pat
  49412.         left outer Join KDrugo4 K4 on K.KDrugo4 = K4.Sifra_4K
  49413.         Inner Join KatArt A on S.Sifra_Art=A.Sifra_Art 
  49414.         Where D.Sifra_Za=1 AND D.VlIzl=''I'' AND S.Kolic>=0 AND A.Aktiven=''D'' '
  49415. Set @SSQL = @SSQL + @SSQLUSL
  49416. --Set @SSQL = @SSQL + ' Group By D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, O.ImeObj, D.Datum_Dok,S.Sifra_Art, A.ImeArt, S.Alt_KOlic, K.VidStalazi, O.VidStalazi '
  49417. Set @SSQL = @SSQL + 'Order by K.ImeKup, D.Sifra_Kup, O.ImeObj, D.Sifra_Obj, P.ImePat, D.Datum_Dok, A.ImeArt, S.Sifra_Art'
  49418. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  49419. exec (@SSQL)
  49420. print @SSQL
  49421.  
  49422.  
  49423.  
  49424.  
  49425.  
  49426.  
  49427.  
  49428. Go
  49429. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniadrtaggy]'))
  49430. drop procedure [dbo].[sp_izmeniadrtaggy]
  49431.  
  49432. Go
  49433. CREATE   PROCEDURE sp_IzmeniAdrTaggy
  49434.     @Sifra_OE    Smallint,
  49435.     @Sifra_Art    VarChar(20),
  49436.     @AdrTaggy    VarChar(20),
  49437.     @TipTaggy    Smallint
  49438. AS
  49439.     UPDATE AdrTaggy  SET  AdrTaggy = @AdrTaggy, TipTaggy = @TipTaggy
  49440.     WHERE Sifra_OE = @Sifra_OE AND  @Sifra_Art = Sifra_Art
  49441. RETURN @@ERROR
  49442.  
  49443.  
  49444.  
  49445. Go
  49446. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniakcija]'))
  49447. drop procedure [dbo].[sp_izmeniakcija]
  49448.  
  49449. Go
  49450.  
  49451. CREATE   PROCEDURE sp_IzmeniAkcija
  49452.     @Sifra_OE    Smallint,
  49453.     @Sifra_Kup    Char(6),
  49454.     @DatumVreme    DateTime,
  49455.     @Aktivnost    Char(1),
  49456.     @Sifra_Obj    smallint= NULL,
  49457.     @SoBarKod    char(1) = NULL    
  49458. AS
  49459.     UPDATE Akcija  SET  Aktivnost = @Aktivnost, Sifra_Obj = @Sifra_Obj, SoBarKod = @SoBarKod
  49460.     WHERE Sifra_OE = @Sifra_OE AND  @Sifra_Kup = Sifra_Kup AND DatumVreme = @DatumVreme
  49461. RETURN @@ERROR
  49462.  
  49463.  
  49464.  
  49465. Go
  49466. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniakcijapromo]'))
  49467. drop procedure [dbo].[sp_izmeniakcijapromo]
  49468.  
  49469. Go
  49470.  
  49471.  
  49472.  
  49473.  
  49474.  
  49475.  
  49476. CREATE       PROCEDURE sp_IzmeniAkcijaPromo
  49477.     @Ozn_Akcija    char(10),
  49478.     @Opis_Akcija    nvarchar(80)=null,    
  49479.     @Aktivna        char(1)='D',    
  49480.     @Datum_Poc    datetime,
  49481.     @Datum_Kr    datetime,
  49482.     @Sif_GrPat        char(6)=null,
  49483.     @Sifra_Podelba varchar(20)=null    
  49484. AS
  49485. UPDATE AkciiPromo  SET  Opis_Akcija=@Opis_Akcija, Aktivna=@Aktivna, 
  49486.                         Datum_Poc=@Datum_Poc, Datum_Kr=@Datum_Kr, Sif_GrPat=@Sif_GrPat, Sifra_Podelba=@Sifra_Podelba WHERE Ozn_Akcija=@Ozn_Akcija
  49487. RETURN @@ERROR
  49488.  
  49489.  
  49490.  
  49491.  
  49492.  
  49493. Go
  49494. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniamorgrp]'))
  49495. drop procedure [dbo].[sp_izmeniamorgrp]
  49496.  
  49497. Go
  49498. CREATE PROCEDURE sp_IzmeniAmorGrp 
  49499.     @Sifra_Amor    Char(3),
  49500.     @Ime        nvarchar(30),
  49501.     @Ime2        nvarchar(30),
  49502.     @Ime3        nvarchar(30),
  49503.     @Ime4        nvarchar(30),
  49504.     @Ime5        nvarchar(30),
  49505.     @Stapka    Decimal(9,3),
  49506.     @Stara_Grp    Varchar(50) = Null,
  49507.     @Kto_Anal    char(10) = Null
  49508. AS
  49509.     Update AmorGrp
  49510.     Set Ime=@Ime, Ime2=@Ime2, Ime3=@Ime3, Ime4=@Ime4, Ime5=@Ime5, Stapka=@Stapka, Stara_Grp=@Stara_Grp, Kto_Anal=@Kto_Anal
  49511.     Where Sifra_Amor=@Sifra_Amor
  49512.     Return @@ERROR
  49513.  
  49514.  
  49515. Go
  49516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenianal]'))
  49517. drop procedure [dbo].[sp_izmenianal]
  49518.  
  49519. Go
  49520.  
  49521.  
  49522.  
  49523. CREATE         PROCEDURE sp_IzmeniAnal
  49524.     @Kto_Anal    varChar(10),
  49525.     @ImeAnal    varChar(40),
  49526.     @ImeAnal2    varchar(40),
  49527.     @SImeAnal    varChar(40),
  49528.     @SImeAnal2    varchar(40),
  49529.     @DaliOrg    char(1),
  49530.     @DaliKupuv    char(1),
  49531.     @DaliDev    char(1),
  49532.     @OtvPrenos    char(1),
  49533.     @MozeTrans    char(1),
  49534.     @Prenos_PoOE char(1)=NULL,
  49535.     @DanMaskGlk    char(1)=NULL,
  49536.     @Sufiks_Avt    char(6)=NULL,
  49537.     @DetalDiv    char(1)=NULL,
  49538.     @VoDDVPrijava     smallint=NULL,
  49539.     @SoTrosok      char(1) = NULL,
  49540.     @DaliVidTros    char(1) = Null,
  49541.     @DaliRazniTros    char(1) = Null,
  49542.         @Str_Kto    varchar(10)= null
  49543.  
  49544. AS
  49545.  
  49546.     Declare @Klas    char(3)
  49547.     SELECT @Klas = Kto_Klas FROM Klas WHERE Kto_Klas = Substring(@Kto_Anal,1,1)
  49548.     If @Klas IS NULL
  49549.          INSERT INTO Klas (Kto_Klas, ImeKlasa) VALUES (Substring(@Kto_Anal,1,1), 'Klasa')
  49550.  
  49551.     Declare @Sint    char(3)
  49552.     SELECT @Sint = Kto_Sint FROM Sint WHERE Kto_Sint = Substring(@Kto_Anal,1,3)
  49553.  
  49554.     If @Sint IS NULL
  49555.          INSERT INTO Sint (Kto_Sint, ImeSint) VALUES (Substring(@Kto_Anal,1,3), @ImeAnal)
  49556.  
  49557.     UPDATE [Anal]
  49558.     SET [ImeAnal]=@ImeAnal, [ImeAnal2]=@ImeAnal2, [SImeAnal]=@SImeAnal, [SImeAnal2]=@SImeAnal2,
  49559.         DaliOrg=@DaliOrg, DaliKupuv=@DaliKupuv, DaliDev=@DaliDev, OtvPrenos=@OtvPrenos, MozeTrans=@MozeTrans,
  49560.         Kto_Sint=Substring(@Kto_Anal, 1,3), Prenos_PoOE = @Prenos_PoOE, DanMaskGlk=@DanMaskGlk, 
  49561.         Propagiraj='D', Sufiks_Avt=@Sufiks_Avt, DetalDiv=@DetalDiv, VoDDVPrijava=@VoDDVPrijava, 
  49562.         SoTrosok = @SoTrosok, DaliVidTros = @DaliVidTros, DaliRazniTros = @DaliRazniTros,
  49563.                 Str_Kto = @Str_Kto
  49564.     WHERE [Kto_Anal]=@Kto_Anal
  49565.  
  49566.     RETURN @@ERROR
  49567.  
  49568.  
  49569.  
  49570.  
  49571. Go
  49572. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenianfindok]'))
  49573. drop procedure [dbo].[sp_izmenianfindok]
  49574.  
  49575. Go
  49576.  
  49577.  
  49578.  
  49579. CREATE     PROCEDURE sp_IzmeniANFINDOK
  49580.     @ANID int,
  49581.     @Sifra_OE smallint,
  49582.     @Sifra_Dok smallint,
  49583.     @Broj_Dok int,
  49584.     @BrojDok varchar(25),
  49585.     @Sifra_Nal smallint,
  49586.     @Broj_Nal int,
  49587.     @Datum_Nal smalldatetime,
  49588.     @Kto char(10),
  49589.     @Sifra_Za char(1),
  49590.     @Sifra_Kup char(6),
  49591.     @Dolzi decimal(18,4),
  49592.     @Pobaruva decimal(18,4),
  49593.     @Plateno_Dolzi decimal(18,4),
  49594.     @Plateno_Pobar decimal(18,4),
  49595.     @Dev_Dolzi decimal(18,4),
  49596.     @Dev_Pobaruva decimal(18,4),
  49597.     @Dev_Plat_Dolzi decimal(18,4),
  49598.     @Dev_Plat_Pobar decimal(18,4),
  49599.     @Kurs decimal(18,8),
  49600.     @KojaVal char(3),
  49601.     @Sifra_Pat smallint,
  49602.     @Datum_Dok smalldatetime,
  49603.     @Rok smallint,
  49604.     @Sifra_Oper smallint,
  49605.     @Sifra_OpIz smallint,
  49606.     @Danok1 decimal(18,4),
  49607.     @Danok2 decimal(18,4),
  49608.     @Opis varchar(40),
  49609.     @Broj_Kalk int,
  49610.     @OdNadvor  char(1),
  49611.     @TipDevKalk char(1),
  49612.     @Sifra_Nivo varchar(2),
  49613.     @SlobText nvarchar(500) = Null,
  49614.     @Kto_Kontra char(10) = Null,
  49615.     @Sifra_Div smallint = Null,
  49616.     @Sifra_DokDK smallint=NULL
  49617. AS
  49618.    UPDATE AnFinDok
  49619.    SET Sifra_OE=@Sifra_OE, Sifra_Dok=@Sifra_Dok, Broj_Dok=@Broj_Dok, BrojDok=@BrojDok, Sifra_Nal=@Sifra_Nal, Broj_Nal=@Broj_Nal, 
  49620.     Datum_Nal=@Datum_Nal, Kto=@Kto, Sifra_Za=@Sifra_Za, Sifra_Kup=@Sifra_Kup, Dolzi=@Dolzi, Pobaruva=@Pobaruva, 
  49621.     Plateno_Dolzi=@Plateno_Dolzi, Plateno_Pobar=@Plateno_Pobar, Dev_Dolzi=@Dev_Dolzi, Dev_Pobaruva=@Dev_Pobaruva, 
  49622.     Dev_Plat_Dolzi=@Dev_Plat_Dolzi, Dev_Plat_Pobar=@Dev_Plat_Pobar, Kurs=@Kurs, KojaVal=@KojaVal, Sifra_Pat=@Sifra_Pat, 
  49623.     Datum_Dok=@Datum_Dok, Datum_Izm=getutcdate(), Rok=@Rok, Sifra_Oper=@Sifra_Oper, Sifra_OpIz=@Sifra_OpIz, 
  49624.     Danok1=@Danok1, Danok2=@Danok2, Opis=@Opis, Broj_kalk=@Broj_kalk, Odnadvor=@Odnadvor, TipDevKalk=@TipDevKalk,
  49625.     Sifra_Nivo=@Sifra_Nivo, SlobText=@SlobText, Kto_Kontra=@Kto_Kontra, Prenesen='', Sifra_Div=@Sifra_Div, Sifra_DokDK=@Sifra_DokDK
  49626.    WHERE ANID=@ANID
  49627. RETURN @@ERROR
  49628.  
  49629.  
  49630.  
  49631.  
  49632. Go
  49633. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenianfindokskr]'))
  49634. drop procedure [dbo].[sp_izmenianfindokskr]
  49635.  
  49636. Go
  49637. CREATE   PROCEDURE sp_IzmeniAnFinDokSKR
  49638.    @ANID int,
  49639.    @Sifra_OE smallint,
  49640.    @Sifra_Dok smallint,
  49641.    @Broj_Dok int,
  49642.    @Plateno_Dolzi decimal(18,4),
  49643.    @Plateno_Pobar decimal(18,4),
  49644.    @Dev_Plat_Dolzi decimal(18,4),
  49645.    @Dev_Plat_Pobar decimal(18,4),
  49646.    @Sifra_OpIz smallint
  49647. AS
  49648.    UPDATE [AnFinDok]
  49649.    SET [Sifra_OE]=@Sifra_OE, [Sifra_Dok]=@Sifra_Dok, [Broj_Dok]=@Broj_Dok, 
  49650.     [Plateno_Dolzi]=@Plateno_Dolzi, [Plateno_Pobar]=@Plateno_Pobar, 
  49651.     [Dev_Plat_Dolzi]=@Dev_Plat_Dolzi, [Dev_Plat_Pobar]=@Dev_Plat_Pobar, 
  49652.     [Datum_Izm]=getutcdate(), [Sifra_OpIz]=@Sifra_OpIz,  Prenesen=''
  49653.    WHERE [ANID]=@ANID
  49654. RETURN @@ERROR
  49655.  
  49656.  
  49657. Go
  49658. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniapteka]'))
  49659. drop procedure [dbo].[sp_izmeniapteka]
  49660.  
  49661. Go
  49662.  
  49663. CREATE PROCEDURE sp_IzmeniApteka
  49664.  
  49665.     @Sifra_Apteka    char(2),
  49666.     @ImeApteka    nchar(40)
  49667. AS
  49668.     Update Apteka 
  49669.     Set ImeApteka=@ImeApteka
  49670.     Where Sifra_Apteka=@Sifra_Apteka
  49671.     Return @@ERROR
  49672.  
  49673.  
  49674. Go
  49675. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniartikl]'))
  49676. drop procedure [dbo].[sp_izmeniartikl]
  49677.  
  49678. Go
  49679.  
  49680.  
  49681.  
  49682.  
  49683. CREATE                      PROCEDURE sp_IzmeniArtikl
  49684.     @Sifra_Art Varchar(20),
  49685.     @ImeArt nchar(40),
  49686.     @ImeArt2 nchar(40),
  49687.     @EdMera nchar(5),
  49688.     @Alt_Ime nchar(50),        --ostavi nchar e vo nekoi firmi
  49689.     @Alt_Ime2 char(40),
  49690.     @Alt_EdMera char(5),
  49691.     @Sifra_Podg char(6),
  49692.     @Sifra_Tar char(3),
  49693.     @Kto char(6),
  49694.     @Cena numeric(12, 2),
  49695.     @Sostojba numeric(12, 4),
  49696.     @CarBroj char(10),
  49697.     @SMatUsl char(1),
  49698.     @Sifra_Drg smallint,
  49699.     @KolkuDrg float,
  49700.     @Drugo1 smallint,
  49701.     @Drugo2 smallint,
  49702.     @Drugo3 smallint,
  49703.     @Drugo4 smallint,
  49704.     @Drugo5 smallint,
  49705.     @DaliSurov char(1),
  49706.     @Uces numeric(6, 2),
  49707.     @Datum_Cena smalldatetime,
  49708.     @Fakturna numeric(12, 4),
  49709.     @Nabavna numeric(12, 4),
  49710.     @DogCena numeric(12, 4),
  49711.     @MalCena numeric(12, 4),
  49712.     @GotCena numeric(12, 4),
  49713.     @SpeCena numeric(12, 4),
  49714.     @PCena4 numeric(12, 4),
  49715.     @PCena5 numeric(12, 4),
  49716.     @PCena6 numeric(12, 4),
  49717.     @Proc_Marza numeric(6, 0),
  49718.     @Nom char(50),
  49719.     @SMin_Sost numeric(12, 4),
  49720.     @SMax_Sost numeric(12, 4),
  49721.     @SOpt_Sost numeric(12, 4),
  49722.     @Lokacija varchar(10),
  49723.     @Popust numeric(6, 2),
  49724.     @ImaBroevi int,
  49725.     @ImaKomerc int,
  49726.     @Tezina float,
  49727.     @PopusMar char(1),
  49728.     @Iskluci char(1),
  49729.     @AltSifra varchar(15),
  49730.     @SpecRabat    decimal(6,2) = NULL,
  49731.     @SpecRabatOd    smalldatetime = NULL,
  49732.     @SpecRabatDo    smalldatetime = NULL,
  49733.     @BTezina numeric (18, 6),
  49734.      @Volumen decimal(18,6) = NULL,
  49735.     @Rabat_Dali char (1)= Null,
  49736.     @SodrziEd numeric(16, 8) = NULL,
  49737.     @ProcAlk decimal(9,6) = Null,
  49738.     @RokKontrDali char(1) = Null,
  49739.     @Aktiven char(1) = Null,
  49740.     @Sifra_Amb char(6) = Null,
  49741.     @Prenesen char(5) = Null,
  49742.     @Rok_Tra smalldatetime = Null,
  49743.     @ImaPaleta decimal(9,3) = Null,
  49744.     @RokTraDen smallint = Null,
  49745.     @PDA_Ime    nvarchar(40) = NULL,
  49746.     @Sifra_Div    smallint = Null,
  49747.     @Sif_Depoz_Amb char(1) = Null,
  49748.     @Sifra_Khier nvarchar(20) = Null,
  49749.     @Kto_Anal   varchar (10) = Null,
  49750.     @DeklArt    nvarchar (400) = Null,
  49751.     @Koef    decimal(9,4)=Null,
  49752.     @Drugo6 smallint=Null,
  49753.     @Drugo7 smallint=Null,
  49754.     @ProcKalo decimal(6,2)=Null,
  49755.     @VoPDA char(1)=NULL,
  49756.         @MKProiz char(1)=null,
  49757.     @Sifra_ATC char(10) = Null
  49758. AS
  49759.     Declare @Propagiraj as char(1)
  49760.     Set @Propagiraj='D'
  49761.     UPDATE [KatArt]
  49762.     SET     [ImeArt]=@ImeArt, [ImeArt2]=@ImeArt2, [EdMera]=@EdMera, [Alt_Ime]=@Alt_Ime, [Alt_Ime2]=@Alt_Ime2,
  49763.         [Alt_EdMera]=@Alt_EdMera,  [Sifra_Podg]=@Sifra_Podg, [Sifra_Tar]=@Sifra_Tar, [Kto]=@Kto, [Cena]=@Cena,
  49764.         [Sostojba]=@Sostojba, [CarBroj]=@CarBroj, [SMatUsl]=@SMatUsl, [Sifra_Drg]=@Sifra_Drg, [KolkuDrg]=@KolkuDrg,
  49765.         [Drugo1]=@Drugo1, [Drugo2]=@Drugo2,     [Drugo3]=@Drugo3, [Drugo4]=@Drugo4,     [Drugo5]=@Drugo5,
  49766.         [DaliSurov]=@DaliSurov, [Uces]=@Uces, [Datum_Cena]=@Datum_Cena, [Fakturna]=@Fakturna,
  49767.         [Nabavna]=@Nabavna, [DogCena]=@DogCena, [MalCena]=@MalCena, [GotCena]=@GotCena,
  49768.         [SpeCena]=@SpeCena, [PCena4]=@PCena4, [PCena5]=@PCena5, [PCena6]=@PCena6,
  49769.         [Proc_Marza]=@Proc_Marza, [Nom]=@Nom, [SMin_Sost]=@SMin_Sost, [SMax_Sost]=@SMax_Sost, [SOpt_Sost]=@SOpt_Sost,
  49770.         [Lokacija]=@Lokacija, [Popust]=@Popust, [ImaBroevi]=@ImaBroevi, [ImaKomerc]=@ImaKomerc, [Tezina]=@Tezina,
  49771.         [PopusMar]=@PopusMar, [IzmenetNa]=GetDate(), [IzmenetOd]=SUser_SName(), 
  49772.         [BTezina]=@BTezina, [Iskluci]=@Iskluci, [Alt_Sifra]=@AltSifra,
  49773.         SpecRabat=@SpecRabat, SpecRabatOd=@SpecRabatOd, SpecRabatDo=@SpecRabatDo, Volumen=@Volumen, Rabat_Dali=@Rabat_Dali,
  49774.                     SodrziEd = @SodrziEd, Propagiraj=@Propagiraj, ProcAlk=@ProcAlk, RokKontrDali=@RokKontrDali, Aktiven=@Aktiven, Sifra_Amb=@Sifra_Amb, 
  49775.         Prenesen=@Prenesen, Rok_Tra=@Rok_Tra, ImaPaleta=@ImaPaleta, RokTraDen=@RokTraDen, PDA_Ime = @PDA_Ime, Sifra_Div=@Sifra_Div,
  49776.         Sif_Depoz_Amb=@Sif_Depoz_Amb, Sifra_KHier=@Sifra_KHier, Kto_Anal=@Kto_Anal, DeklArt=@DeklArt, Koef=@Koef, Drugo6=@Drugo6,
  49777.         Drugo7=@Drugo7, ProcKalo=@ProcKalo, VoPDA=@VoPDA, MKProiz=@MKProiz, Sifra_ATC=@Sifra_ATC
  49778.     WHERE [Sifra_Art]=@Sifra_Art
  49779.     RETURN @@ERROR
  49780.  
  49781.  
  49782.  
  49783.  
  49784.  
  49785. Go
  49786. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniartikl_kratok]'))
  49787. drop procedure [dbo].[sp_izmeniartikl_kratok]
  49788.  
  49789. Go
  49790. CREATE  PROCEDURE sp_IzmeniArtikl_Kratok
  49791.     @Sifra_Art Varchar(20),
  49792.     @ImeArt varchar(40),
  49793.     @EdMera char(5),
  49794.     @Sifra_Podg char(6),
  49795.     @Sifra_Tar char(3),
  49796.     @Lokacija char(10),
  49797.     @Kto char(6),
  49798.     @SMatUsl char(1),
  49799.     @Proc_Marza numeric(6, 2),
  49800.     @Nom char(50),
  49801.    @SMin_Sost numeric(12, 4),
  49802.    @SMax_Sost numeric(12, 4),
  49803.    @SOpt_Sost numeric(12, 4),
  49804.    @PopusMar char(1)
  49805. AS
  49806.     SET NOCOUNT ON
  49807.     UPDATE [KatArt]
  49808.     SET     
  49809.         [ImeArt]=@ImeArt,
  49810.         [EdMera]=@EdMera,
  49811.         [Sifra_Podg]=@Sifra_Podg,
  49812.         [Sifra_Tar]=@Sifra_Tar,
  49813.         [Lokacija]=@Lokacija,
  49814.         [Kto]=@Kto,
  49815.         [SMatUsl]=@SMatUsl,
  49816.         [Proc_Marza]=@Proc_Marza,
  49817.         [Nom]=@Nom,
  49818.         [SMin_Sost]=@SMin_Sost,
  49819.         [SMax_Sost]=@SMax_Sost,
  49820.         [SOpt_Sost]=@SOpt_Sost,
  49821.         [PopusMar]=@PopusMar
  49822.     WHERE [Sifra_Art]=@Sifra_Art
  49823.     RETURN @@ERROR
  49824.  
  49825.  
  49826.  
  49827. Go
  49828. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniatckodovi]'))
  49829. drop procedure [dbo].[sp_izmeniatckodovi]
  49830.  
  49831. Go
  49832.  
  49833. CREATE PROCEDURE sp_IzmeniATCKodovi
  49834.  
  49835.     @Sifra_ATC    char(10),
  49836.     @ImeATC    nchar(40)
  49837. AS
  49838.     Update ATCKodovi 
  49839.     Set ImeATC=@ImeATC
  49840.     Where Sifra_ATC=@Sifra_ATC
  49841.     Return @@ERROR
  49842.  
  49843.  
  49844. Go
  49845. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniavtvrski]'))
  49846. drop procedure [dbo].[sp_izmeniavtvrski]
  49847.  
  49848. Go
  49849.  
  49850. CREATE        PROCEDURE  sp_IzmeniAvtVrski
  49851.     @GStID        int,
  49852.     @AnID            int,
  49853.     @DokrID        int,
  49854.     @RbrNalog        int,
  49855.     @Dolzi            decimal(18,4),
  49856.     @Pobaruva        decimal(18,4),
  49857.     @Dev_Dolzi        decimal(18,4),
  49858.     @Dev_Pobaruva    decimal(18,4),
  49859.     @Bazna_Dolzi        decimal(18,4),
  49860.     @Bazna_Pobaruva    decimal(18,4)
  49861. AS
  49862.     UPDATE FAvtVrski SET
  49863.     Dolzi = @Dolzi, Pobaruva=@Pobaruva, Dev_Dolzi=@Dev_Dolzi, Dev_Pobaruva=@Dev_Pobaruva, 
  49864.     Bazna_Dolzi =  @Bazna_Dolzi, Bazna_Pobaruva=@Bazna_Pobaruva
  49865.     WHERE GStID = @GStID AND RbrNalog = @RbrNalog                         --AnID = @AnID AND DokrID = @DokrID
  49866. RETURN @@ERROR
  49867.  
  49868.  
  49869.  
  49870. Go
  49871. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenibanki]'))
  49872. drop procedure [dbo].[sp_izmenibanki]
  49873.  
  49874. Go
  49875. CREATE  PROCEDURE sp_IzmeniBanki
  49876.     @Sifra_Ban    char(6),
  49877.     @ImeBanka    varchar(30),
  49878.     @ZiroSkaNBRM varchar(20),
  49879.     @Zabeleska    varchar(30),
  49880.     @DanocenBr    varchar(15) = Null,
  49881.     @Oznaka    char(3)=Null
  49882.  AS
  49883.     Declare @Propagiraj char(1)
  49884.     Set @Propagiraj='D'
  49885.     Update Banki 
  49886.     Set  ImeBanka=@ImeBanka, ZiroSkaNBRM=@ZiroSkaNBRM, Zabeleska=@Zabeleska, Propagiraj=@Propagiraj, DanocenBr=@DanocenBr, Oznaka=@Oznaka
  49887.     Where Sifra_Ban=@Sifra_Ban
  49888.     Return @@Error
  49889.  
  49890.  
  49891.  
  49892.  
  49893. Go
  49894. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenibanksmetki]'))
  49895. drop procedure [dbo].[sp_izmenibanksmetki]
  49896.  
  49897. Go
  49898. CREATE      PROCEDURE sp_IzmeniBankSmetki
  49899.     @KojaSmetka Char(1),
  49900.     @Banka varChar(40),
  49901.     @Smetka varChar(40),
  49902.     @Swift    varchar(15),
  49903.     @IBAN    varchar(30)
  49904. AS
  49905.     UPDATE BankSmetki
  49906.     SET Banka = @Banka, Smetka = @Smetka, Swift = @Swift, IBAN=@IBAN
  49907.     WHERE KojaSmetka = @KojaSmetka
  49908. RETURN @@ERROR
  49909.  
  49910.  
  49911. Go
  49912. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniboja]'))
  49913. drop procedure [dbo].[sp_izmeniboja]
  49914.  
  49915. Go
  49916.  
  49917.  
  49918.  
  49919. CREATE       PROCEDURE sp_IzmeniBoja
  49920.     @Sifra_Boja Smallint,
  49921.     @ImeBoja nVarchar(40),
  49922.     @SkrImeBoja nvarchar(10),
  49923.     @OpcStandard varchar(20)=Null
  49924.  
  49925. AS
  49926.     UPDATE [Boja]
  49927.     SET [ImeBoja]=@ImeBoja, [SkrImeBoja]=@SkrImeBoja, OpcStandard = @OpcStandard
  49928.         
  49929.     WHERE [Sifra_Boja]=@Sifra_Boja
  49930.  
  49931. RETURN @@ERROR
  49932.  
  49933.  
  49934.  
  49935.  
  49936.  
  49937.  
  49938.  
  49939. Go
  49940. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenibrand]'))
  49941. drop procedure [dbo].[sp_izmenibrand]
  49942.  
  49943. Go
  49944.  
  49945. CREATE    PROCEDURE sp_IzmeniBrand
  49946.     @Sifra_Brand Smallint,
  49947.     @Ime_Brand varchar(30),
  49948.     @Sifra_ZBrand smallint,
  49949.     @MinSuma    decimal(18,6) = Null,
  49950.     @Uces        decimal(6,2) = Null
  49951. AS
  49952.     Declare @Propagiraj as char(1)
  49953.     Set @Propagiraj='D'
  49954.     UPDATE [DrgPodel]
  49955.     SET [Ime]=@Ime_Brand, [Sifra_drg1]=@Sifra_ZBrand, [IzmenetNa]=GetDate(), [IzmenetOd]=SUser_SName(), [Propagiraj]=@Propagiraj, [MinSuma]=@MinSuma, [Uces]=@Uces
  49956.     WHERE [Sifra_Drg]=@Sifra_Brand
  49957. RETURN @@ERROR
  49958.  
  49959.  
  49960.  
  49961.  
  49962. Go
  49963. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicb]'))
  49964. drop procedure [dbo].[sp_izmenicb]
  49965.  
  49966. Go
  49967. CREATE PROCEDURE sp_IzmeniCB
  49968.         @CarBroj Char(10),
  49969.         @Ime VarChar(50),
  49970.         @Ime2 VarChar(50),
  49971.         @Stapka Decimal(6,2),
  49972.         @SpecProc decimal(9,3) = Null
  49973. AS
  49974.     SET NOCOUNT ON
  49975.     UPDATE [CBroevi]
  49976.     SET [Ime]=@Ime, [Ime2]=@Ime2, [Stapka]=@Stapka, SpecProc=@SpecProc
  49977.     WHERE [CarBroj]=@CarBroj
  49978. RETURN @@ERROR
  49979.  
  49980.  
  49981. Go
  49982. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicekovi]'))
  49983. drop procedure [dbo].[sp_izmenicekovi]
  49984.  
  49985. Go
  49986. CREATE PROCEDURE sp_IzmeniCekovi
  49987.     @Datum_Vnes    smalldatetime, 
  49988.     @KojaSmetka    char(1), 
  49989.     @Iznos        decimal(    18,6) = Null, 
  49990.     @Dat_Dosp    smalldatetime = Null, 
  49991.     @Br_Cek    char(13) = Null,
  49992.     @Br_Tekovna    char(10) = Null,
  49993.     @Sifra_Ban    char(6) = Null,
  49994.     @Opis        varchar(20) = Null
  49995. AS
  49996.     Update Cekovi
  49997.     Set Iznos=@Iznos, Dat_Dosp=@Dat_Dosp, Br_Cek=@Br_Cek, Br_Tekovna=@Br_Tekovna, Sifra_Ban=@Sifra_Ban, Opis=@Opis
  49998.     Where Datum_Vnes=@Datum_Vnes and KojaSmetka=@KojaSmetka
  49999.     Return @@ERROR
  50000.  
  50001.  
  50002. Go
  50003. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicendog]'))
  50004. drop procedure [dbo].[sp_izmenicendog]
  50005.  
  50006. Go
  50007.  
  50008.  
  50009.  
  50010.  
  50011.  
  50012. CREATE      PROCEDURE sp_IzmeniCenDog
  50013.  
  50014.     @Sifra_Kup    char(6), 
  50015.     @TipKup    varchar(11),
  50016.     @DogBr    char(10),
  50017.     @Tip_Cenovnik    char(1),
  50018.     @PocDatum    smalldatetime,
  50019.     @KrajDatum    smalldatetime, 
  50020.     @Rok_Dosp    smallint, 
  50021.     @Prioritet    smallint,
  50022.     @Aktiven    char(1), 
  50023.     @NaslovDok    nvarchar(100),
  50024.     @OpisDog    nvarchar(1000)= Null,
  50025.     @Sifra_Pat    smallint
  50026. AS
  50027.     Declare @SSQL as nvarchar(4000)
  50028.     
  50029.     Update CenDog 
  50030.     Set Tip_Cenovnik= @Tip_Cenovnik, PocDatum= @PocDatum, KrajDatum=@KrajDatum, 
  50031.             Rok_Dosp=@Rok_Dosp, Prioritet=@Prioritet, Aktiven=@Aktiven, NaslovDok=@NaslovDok, 
  50032.             OpisDog=@OpisDog, Sifra_Pat=@Sifra_Pat
  50033.     Where DogBr = @DogBr AND  Sifra_Kup=@Sifra_Kup AND TipKup=@TipKup
  50034. /*    If @Sifra_Kup Is Not Null
  50035.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''' + @Sifra_Kup + ''' '
  50036.     Else 
  50037.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''999000'' '
  50038.     If @TipKup Is Not Null
  50039.         Set @SSQL = @SSQL + ' And TipKup = ''' + @TipKup + ''' '
  50040.     Else
  50041.         Set @SSQL = @SSQL + ' And TipKup =''ALL '' '
  50042.     Exec (@SSQL)  */
  50043.     Return @@ERROR
  50044.  
  50045.  
  50046.  
  50047.  
  50048. Go
  50049. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicengrorg_ispr]'))
  50050. drop procedure [dbo].[sp_izmenicengrorg_ispr]
  50051.  
  50052. Go
  50053.  
  50054. CREATE PROCEDURE sp_IzmeniCenGrOrg_Ispr
  50055.     @Sif_GrOrg char(6),
  50056.     @Sifra_Art varchar(20),
  50057.     @Ispraten varchar(120)
  50058.  AS
  50059.     UPDATE CenGrOrg SET Ispraten = @Ispraten
  50060.     WHERE Sif_GrOrg=@Sif_GrOrg AND  Sifra_Art=@Sifra_Art
  50061. RETURN @@ERROR
  50062.  
  50063.  
  50064.  
  50065. Go
  50066. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicenpoart]'))
  50067. drop procedure [dbo].[sp_izmenicenpoart]
  50068.  
  50069. Go
  50070. CREATE PROCEDURE sp_IzmeniCenPoArt
  50071.     @Tip_Cena    smallint, 
  50072.     @Sifra_Art    varchar(20),
  50073.     @Opis_Cena    varchar(30),
  50074.     @Cena        decimal(18,4),
  50075.     @Popust    decimal(6,2),
  50076.     @SpeCena    decimal(18,4),
  50077.     @SpePopust    decimal(6,2),
  50078.     @PocDatum    smalldatetime,
  50079.     @KrajDatum    smalldatetime
  50080. AS
  50081.     Update CenPoArt
  50082.     Set Opis_Cena=@Opis_Cena, Cena=@Cena, Popust=@Popust, SpeCena=@SpeCena, SpePopust=@SpePopust, PocDatum=@PocDatum, KrajDatum=@KrajDatum
  50083.     Where Tip_Cena=@Tip_Cena And Sifra_Art=@Sifra_Art
  50084.     Return @@ERROR
  50085.  
  50086.  
  50087. Go
  50088. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicenpopodgr]'))
  50089. drop procedure [dbo].[sp_izmenicenpopodgr]
  50090.  
  50091. Go
  50092. CREATE PROCEDURE sp_IzmeniCenPoPodgr
  50093.     @Tip_Podelba    char(1),
  50094.     @TipKup    varchar(11),
  50095.     @Sifra_Podelba    varchar(20),
  50096.     @Uces        decimal(6, 2),
  50097.     @Cena        decimal(18,6),
  50098.     @Uces2    decimal(6, 2),
  50099.     @Uces3    decimal(6, 2)
  50100.  AS
  50101.     UPDATE CenPoPodgr SET Uces=@Uces, Cena=@Cena, Uces2=@Uces2, Uces3=@Uces3
  50102.     WHERE Tip_Podelba=@Tip_Podelba AND TipKup=@TipKup AND Sifra_Podelba=@Sifra_Podelba
  50103. RETURN @@ERROR
  50104.  
  50105.  
  50106.  
  50107. Go
  50108. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicenvidvozila]'))
  50109. drop procedure [dbo].[sp_izmenicenvidvozila]
  50110.  
  50111. Go
  50112. CREATE PROCEDURE sp_IzmeniCenVidVozila
  50113.     @Sifra_Vid_Voz    varchar(20), 
  50114.     @KM        int, 
  50115.     @Cena        decimal(18,6)
  50116.  AS
  50117.     Update CenVidVozila
  50118.     Set Cena=@Cena
  50119.     Where Sifra_Vid_Voz=@Sifra_Vid_Voz And KM=@KM
  50120.     Return @@ERROR
  50121.  
  50122.  
  50123. Go
  50124. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenicrrkodovi]'))
  50125. drop procedure [dbo].[sp_izmenicrrkodovi]
  50126.  
  50127. Go
  50128. CREATE   PROCEDURE sp_IzmeniCRRKodovi
  50129.  
  50130.     @Sifra_Crr        tinyint,
  50131.     @ImeCrr        varchar(200),
  50132.     @Tip_Crr        char(20)= null,
  50133.     @Nivo_Crr        char(20)=null
  50134.     
  50135. AS
  50136.     Update CRRKodovi 
  50137.     Set ImeCrr=@ImeCrr, Tip_Crr=@Tip_Crr, Nivo_Crr=@Nivo_Crr 
  50138.         Where Sifra_Crr=@Sifra_Crr
  50139.     Return @@ERROR
  50140.  
  50141.  
  50142.  
  50143. Go
  50144. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidatumisporaka]'))
  50145. drop procedure [dbo].[sp_izmenidatumisporaka]
  50146.  
  50147. Go
  50148. create procedure sp_IzmeniDatumIsporaka
  50149.     @Dat_Isporaka smalldatetime,
  50150.     @Sifra_Oe smallint,
  50151.     @Sifra_Nar smallint,
  50152.     @Broj_Nar int
  50153. As
  50154.     Update Naracki set Dat_Isporaka=@Dat_Isporaka
  50155.     Where Sifra_OE=@Sifra_oe AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  50156.  
  50157.  
  50158. Go
  50159. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenideklart]'))
  50160. drop procedure [dbo].[sp_izmenideklart]
  50161.  
  50162. Go
  50163.  
  50164.  
  50165. CREATE      PROCEDURE sp_IzmeniDeklArt
  50166.     @Sifra_Art    varchar(20),
  50167.     @Ozn        varchar(20),
  50168.     @FileTmp    image = NULL,
  50169.     @PrinterName    varchar(50) = NULL,
  50170.     @PageSize    varchar(20) = NULL,
  50171.     @DeklTekst    nvarchar(2000) = NULL
  50172. As
  50173.     Update DeklArt set FileTmp=@FileTmp , PrinterName=@PrinterName ,PageSize=@PageSize, DeklTekst = @DeklTekst where Sifra_Art=@Sifra_Art and Ozn=@Ozn
  50174.     Return @@ERROR
  50175.  
  50176.  
  50177.  
  50178.  
  50179. Go
  50180. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidevfra]'))
  50181. drop procedure [dbo].[sp_izmenidevfra]
  50182.  
  50183. Go
  50184.  
  50185.  
  50186. CREATE                      PROCEDURE sp_IzmeniDevFra
  50187.     @Sifra_OE    smallint,
  50188.     @Sifra_Dok       smallint,
  50189.     @Broj_DevF    int,
  50190.     @Storno    char(1),
  50191.     @Datum_Dok    smalldatetime,
  50192.     @ECD        varchar(50),
  50193.     @Opis        varchar(50),
  50194.     @Kurs        decimal(18,8),
  50195.     @KojaVal    char(3),
  50196.     @Sifra_Nal    Smallint,
  50197.     @Broj_Nal    int,
  50198.     @Ekst_Br    varchar(25),
  50199.     @Ispratnica    varchar(25),
  50200.     @Broj_Dok    int,
  50201.     @Sifra_Kup    char(6),
  50202.     @Rok_Dosp    smallint,
  50203.     @Kto        char(6) = NULL,
  50204.     @TekstPosle    varchar(1500),
  50205.     @KojaSmetka    char (1),
  50206.     @Swift        varchar(20),
  50207.     @Banka    varchar(50),
  50208.     @Vozilo        varchar(50),
  50209.     @Koleti        decimal(18,6),
  50210.     @Bruto        decimal(18,6),
  50211.     @Neto        decimal(18,6),
  50212.     @DevIznos    decimal(18,6),
  50213.     @Paleti        decimal(18,6),
  50214.     @TekstPred      nvarchar(1500) = null,
  50215.     @Usluzna    char(1) = Null,
  50216.     @DenLogo    char(1) = Null,
  50217.     @Paritet    varchar(30)=Null,
  50218.     @Izn_Prevoz    decimal(18,2) = Null,
  50219.     @Sifra_Pat    smallint = Null,
  50220.     @Sifra_Nar    smallint = Null,
  50221.     @Sifra_OeNar    smallint = Null,
  50222.     @Broj_Nar    int = Null,
  50223.         @Sifra_Obj Smallint
  50224. AS
  50225.     UPDATE DevFra SET Storno=@Storno, Datum_Dok=@Datum_Dok, ECD=@ECD, Opis=@Opis, Kurs=@Kurs,
  50226.     KojaVal=@KojaVal, Sifra_Nal=@Sifra_Nal, Broj_Nal = @Broj_Nal, identif_Br=@Ekst_br, Ispratnica=@Ispratnica, 
  50227.     Broj_Dok=@Broj_Dok, Sifra_Kup=@Sifra_Kup, Rok_Dosp=@Rok_Dosp, Kto=@Kto, TekstPosle=@TekstPosle, 
  50228.     KojaSmetka=@KojaSmetka, Swift=@Swift, Banka=@Banka, Vozilo=@Vozilo, Koleti=@Koleti, Bruto=@Bruto, 
  50229.     Neto=@Neto, Datum_Izm= GETDATE(), Sifra_OpIz=SUSER_SNAME(), DevIznos=@DevIznos, Paleti=@Paleti, 
  50230.     TekstPred=@TekstPred, Usluzna=@Usluzna, DenLogo=@DenLogo, Paritet=@Paritet, 
  50231.     Sifra_Nar=@Sifra_Nar, Sifra_OeNar=@Sifra_OeNar, Broj_Nar=@Broj_Nar,
  50232.         Sifra_Pat=@Sifra_Pat, Izn_Prevoz=@Izn_Prevoz, Sifra_Obj=@Sifra_Obj
  50233.     WHERE Sifra_OE = @Sifra_OE AND Broj_DevF=@Broj_DevF AND Sifra_Dok=@Sifra_dok
  50234.     RETURN @@ERROR
  50235.  
  50236.  
  50237.  
  50238.  
  50239. Go
  50240. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidevkalk]'))
  50241. drop procedure [dbo].[sp_izmenidevkalk]
  50242.  
  50243. Go
  50244.  
  50245.  
  50246. CREATE     PROCEDURE sp_IzmeniDevKalk
  50247.     @Sifra_OE Smallint,
  50248.     @Broj_Kalk Integer,
  50249.     @Storno Char(1),
  50250.     @Datum_Dok smalldatetime,
  50251.     @ECD Varchar(50),
  50252.     @Opis Varchar(50),
  50253.     @KojaVal Char(3),
  50254.     @Kurs Decimal(18,8),
  50255.     @Sifra_Nal Smallint,
  50256.     @Broj_Nal Integer,
  50257.     @Sifra_Dok Smallint,
  50258.     @Broj_Dok Integer,
  50259.     @TrosVoMatFak Decimal (18,4),
  50260.     @NeFaktTros Decimal (18,4), 
  50261.     @NeFaktDanok1 Decimal (18,4),
  50262.     @NeFaktDanok2  Decimal (18,4),
  50263.     @Prevoz decimal(18,6)=null,
  50264.     @Spedicija decimal(18,6)=null,
  50265.     @BProvizija decimal(18,6)=null,
  50266.     @Carina decimal(18,6)=null,
  50267.     @Drugo decimal(18,6)=null,
  50268.     @Osiguruv decimal(18,6)=null,
  50269.     @Prelevman decimal(18,6)=null,
  50270.     @PrevozPoTez char(1)=null,
  50271.     @Kalo decimal(18,6)=null,
  50272.     @Danok1Opc decimal(18,6)=null,
  50273.     @Danok2Opc decimal(18,6)=null,
  50274.     @Kasa decimal(6,2)=null,
  50275.     @Akciza    decimal(18,6)=0
  50276. AS
  50277.     Update DevKalk
  50278.     Set    Storno=@Storno, Datum_Dok=@Datum_Dok, ECD=@ECD, Opis=@Opis, KojaVal=@KojaVal, Kurs=@Kurs,
  50279.         Sifra_Nal=@Sifra_Nal, Broj_Nal=@Broj_Nal, Broj_Dok=@Broj_Dok, TrosVoMatFak=@TrosVoMatFak,
  50280.         NeFaktTros = @NeFaktTros, NeFaktDanok1=@NeFaktDanok1, NeFaktDanok2=@NeFaktDanok2,     Prevoz=@Prevoz,
  50281.         Spedicija=@Spedicija, BProvizija=@BProvizija, Carina=@Carina, Drugo=@Drugo, Osiguruv=@Osiguruv, Prelevman=@Prelevman,
  50282.         PrevozPoTez=@PrevozPoTez, Kalo=@Kalo, Danok1Opc=@Danok1Opc, Danok2Opc=@Danok2Opc, Kasa=@Kasa, Datum_Izm=GetDate(), Akciza=@Akciza
  50283.     Where Sifra_OE=@Sifra_OE And Broj_Kalk=@Broj_Kalk AND Sifra_Dok=@Sifra_Dok
  50284.     Return @@ERROR
  50285.  
  50286.  
  50287.  
  50288.  
  50289. Go
  50290. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidevkons]'))
  50291. drop procedure [dbo].[sp_izmenidevkons]
  50292.  
  50293. Go
  50294. CREATE     PROCEDURE sp_IzmeniDevKons 
  50295.     @Sifra_OE    smallint,
  50296.     @Sifra_dok    smallint,
  50297.     @Broj_Kons    int,
  50298.     @Storno        char(1),
  50299.     @Datum_Dok    smalldatetime,
  50300.     @Datum_mag    smalldatetime,
  50301.     @Sifra_kup    char(6),
  50302.     @Kto        char(10),
  50303.     @ECD        varchar(20),
  50304.     @Opis        varchar(50),
  50305.     @Carozn    varchar(8),
  50306.     @Evcarbroj    varchar(15),
  50307.     @Paritet    varchar(20),
  50308.     @RezimUvoz    char(3),
  50309.     @Poteklo    varchar(20),
  50310.     @KojaVal    char(3),
  50311.     @Kurs        decimal(18,8),
  50312.     @Sifra_Nal    Smallint,
  50313.     @Broj_Nal    int,
  50314.     @Rok_Dosp    smallint,
  50315.     @Swift        varchar(20),
  50316.     @Banka    varchar(50),
  50317.     @Vozilo        varchar(50),
  50318.     @Koleti        decimal(18,6),
  50319.     @Bruto        decimal(18,6),
  50320.     @Neto        decimal(18,6),
  50321.     @Paleti        decimal(18,6),
  50322.     @KojaSmetka    char (1),
  50323.     @TekstPosle    varchar(1500),
  50324.     @Identif_br    varchar(25),
  50325.     @Ispratnica    varchar(25),
  50326.     @Deviznos    decimal(18,6),
  50327.     @VlIzl        Char(1),
  50328.     @TekstPred    nvarchar(1500) = Null,
  50329.         @ZBroj        varchar (20) = Null,
  50330.         @SBroj         varchar (20) = Null,
  50331.     @TipECD    varchar(10) = Null
  50332. AS
  50333.     UPDATE DevKons SET Sifra_OE=@Sifra_OE, Sifra_Dok=@Sifra_dok, Broj_kons=@Broj_Kons, Storno=@Storno, Datum_Dok=@Datum_Dok, Datum_mag=@Datum_mag,
  50334.     Sifra_kup=@Sifra_kup, Kto=@Kto, ECD=@ECD, Opis=@Opis, Carozn=@Carozn, EvCarbroj=@EvCarbroj, Paritet=@Paritet, RezimUvoz=@RezimUvoz,
  50335.     Poteklo=@Poteklo, KojaVal=@KojaVal, Kurs=@Kurs, Sifra_Nal=@Sifra_Nal, Broj_Nal=@Broj_Nal, Datum_izm=Getdate(),
  50336.     Rok_dosp=@Rok_dosp, Swift=@Swift, Banka=@Banka, Vozilo=@Vozilo, Koleti=@Koleti, Bruto=@Bruto, Neto=@Neto, Paleti=@Paleti, 
  50337.     KojaSmetka=@KojaSmetka, TekstPosle=@TekstPosle, Sifra_opiz=SUSER_SNAME() , Identif_br=@Identif_Br, Ispratnica=@Ispratnica, DevIznos=@DevIznos,
  50338.     VlIzl=@VlIzl, TekstPred=@TekstPred, ZBroj=@ZBroj, SBroj=@SBroj, TipECD=@TipECD
  50339.     WHERE Sifra_OE = @Sifra_OE AND sifrA_dok = @sifra_dok and Broj_Kons=@Broj_Kons    
  50340. RETURN @@ERROR
  50341.  
  50342.  
  50343. Go
  50344. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidevnar]'))
  50345. drop procedure [dbo].[sp_izmenidevnar]
  50346.  
  50347. Go
  50348. CREATE    PROCEDURE sp_IzmeniDevNar
  50349.     @Sifra_OE    smallint, 
  50350.     @Broj_DevN    int,
  50351.     @Storno    char(1)=Null,
  50352.     @Datum_Nar    smalldatetime,
  50353.     @Sifra_Kup    char(6),
  50354.     @Kto    char(10)=Null,
  50355.     @ECD    varchar(50)=Null,
  50356.     @Opis    varchar(50)=Null,
  50357.     @KojaVal    char(3)=Null,
  50358.     @Kurs    decimal(18,6)=Null,
  50359.     @Sifra_Nal    smallint=Null,
  50360.     @Broj_Nal    int=Null,
  50361.     @Rok_Dosp    smallint=Null,
  50362.     @Swift    varchar(20)=Null,
  50363.     @Banka    varchar(50)=Null,
  50364.     @Vozilo    varchar(50)=Null,
  50365.     @Koleti    decimal(18,6)=Null,
  50366.     @Bruto    decimal(18,6)=Null,
  50367.     @Neto    decimal(18,6)=Null,
  50368.     @KojaSmetka    char(1)=Null,
  50369.     @TekstPosle    varchar(1500)=Null,
  50370.     @Identif_Br    varchar(25)=Null,
  50371.     @Ispratnica    varchar(50)=Null,
  50372.     @Sifra_Nar    smallint=Null,
  50373.     @Broj_Nar    int=Null,
  50374.     @DevIznos    decimal(18,6)=Null,
  50375.     @Paleti    decimal(18,6)=Null,
  50376.     @TekstPred    nvarchar(1500)=Null,
  50377.     @Usluzna    char(1)=Null,
  50378.     @Sifra_Pat    smallint=NULL,
  50379.     @Paritet    varchar(30) = Null, 
  50380.     @Izn_Prevoz    decimal(18,2) = Null, 
  50381.     @Usl_Plakanje    varchar(30) = Null
  50382. AS
  50383.     UPDATE DevNar SET 
  50384.     Storno=@Storno, Datum_Nar=@Datum_Nar, Sifra_Kup=@Sifra_Kup, Kto=@Kto, ECD=@ECD, 
  50385.     Opis=@Opis, KojaVal=@KojaVal, Kurs=@Kurs, Sifra_Nal=@Sifra_Nal, Broj_Nal=@Broj_Nal, 
  50386.     Datum_Izm=GetDate(), Rok_Dosp=@Rok_Dosp, Swift=@Swift, Banka=@Banka, Vozilo=@Vozilo, 
  50387.     Koleti=@Koleti, Bruto=@Bruto, Neto=@Neto, KojaSmetka=@KojaSmetka, TekstPosle=@TekstPosle, 
  50388.     Sifra_OpIz=SUSER_SNAME(), Identif_Br=@Identif_Br, Ispratnica=@Ispratnica, Broj_Nar=@Broj_Nar, 
  50389.     DevIznos=@DevIznos, Paleti=@Paleti, TekstPred=@TekstPred, Usluzna=@Usluzna,Sifra_Pat=@Sifra_Pat,
  50390.     Paritet=@Paritet, Izn_Prevoz=@Izn_Prevoz, Usl_Plakanje=@Usl_Plakanje
  50391.     WHERE Sifra_OE = @Sifra_OE AND Broj_DevN=@Broj_DevN AND Sifra_Nar=@Sifra_Nar
  50392.     RETURN @@ERROR
  50393.  
  50394.  
  50395. Go
  50396. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidijagnozi]'))
  50397. drop procedure [dbo].[sp_izmenidijagnozi]
  50398.  
  50399. Go
  50400.  
  50401. CREATE PROCEDURE sp_IzmeniDijagnozi
  50402.  
  50403.     @Sifra_Dijagn    char(5),
  50404.     @ImeDijagn    nvarchar(80),
  50405.     @Osloboden    char(1) = Null
  50406. AS
  50407.     Update Dijagnozi 
  50408.     Set ImeDijagn=@ImeDijagn , Osloboden=@Osloboden
  50409.     Where Sifra_Dijagn=@Sifra_Dijagn
  50410.     Return @@ERROR
  50411.  
  50412.  
  50413. Go
  50414. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidivizii]'))
  50415. drop procedure [dbo].[sp_izmenidivizii]
  50416.  
  50417. Go
  50418.  
  50419. CREATE  PROCEDURE sp_IzmeniDivizii
  50420.     @Sifra_Div    smallint,
  50421.     @ImeDiv    char(30),
  50422.         @Sif_Prik varchar(10)=null,
  50423.         @ImeStr varchar(50)=null,
  50424.         @Gr_Div varchar(10)=null,
  50425.         @imeGrDiv varchar(50)=null  
  50426. AS
  50427.     Update Divizii 
  50428.     Set ImeDiv=@ImeDiv, Sif_Prik=@Sif_Prik, ImeStr=@ImeStr, Gr_Div=@Gr_Div, ImeGrDiv=@ImeGrDiv 
  50429.     Where Sifra_Div=@Sifra_Div
  50430.     Return @@ERROR
  50431.  
  50432.  
  50433.  
  50434. Go
  50435. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidnevnik]'))
  50436. drop procedure [dbo].[sp_izmenidnevnik]
  50437.  
  50438. Go
  50439.  
  50440.  
  50441. CREATE   PROCEDURE sp_IzmeniDnevnik
  50442.     @IdDnevnik    int,    
  50443.     @Sifra_Kup    char(6),
  50444.     @Datum_Akt    smalldatetime = Null,
  50445.     @Opis_Akt    nvarchar(1000) = Null,
  50446.     @Tip_Akt        char(5) = Null,
  50447.     @Datum_SlAkt    smalldatetime = Null,
  50448.     @Opis_SlAkt    nvarchar(1000) = Null,
  50449.     @Tip_SlAkt    char(5) = Null
  50450.  AS
  50451.     Update Dnevnik
  50452.     Set Sifra_Kup=@Sifra_Kup, Datum_Akt=@Datum_Akt, Opis_Akt=@Opis_Akt, Tip_Akt=@Tip_Akt, 
  50453.     Datum_SlAkt=@Datum_SlAkt, Opis_SlAkt=@Opis_SlAkt, Tip_SlAkt=@Tip_SlAkt,
  50454.     IzmenetNa=GetDate(), IzmenetOd=SUser_SName()
  50455.     Where IdDnevnik=@IdDnevnik
  50456.     Return @@ERROR
  50457.  
  50458.  
  50459.  
  50460.  
  50461.  
  50462. Go
  50463. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidnizvskr]'))
  50464. drop procedure [dbo].[sp_izmenidnizvskr]
  50465.  
  50466. Go
  50467. CREATE PROCEDURE sp_IzmeniDnIzvSkr
  50468.     @Sema_DnIzvSkr    smallint, 
  50469.     @Sifra_Dok        smallint = Null, 
  50470.     @VlIzlPari        char(1) = Null, 
  50471.     @DokrFin        char(1) = Null
  50472.  AS
  50473.     Update DnIzvSkr
  50474.     Set Sifra_Dok=@Sifra_Dok, VlIzlPari=@VlIzlPari, DokrFin=@DokrFin
  50475.     Where Sema_DnIzvSkr=@Sema_DnIzvSkr
  50476.     Return @@ERROR
  50477.  
  50478.  
  50479.  
  50480. Go
  50481. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidogcena]'))
  50482. drop procedure [dbo].[sp_izmenidogcena]
  50483.  
  50484. Go
  50485.  
  50486.  
  50487.  
  50488.  
  50489. CREATE   PROCEDURE sp_IzmeniDogCena
  50490.     @Sifra_Art Varchar(20),
  50491.     @DogCena Decimal(18, 4)
  50492. AS
  50493.     Update Katart
  50494.     Set DogCena=@DogCena
  50495.     Where Sifra_Art=@Sifra_Art
  50496.     If @@ROWCOUNT = 1
  50497.         RETURN 0
  50498.     Else
  50499.         RETURN 77000
  50500.  
  50501.  
  50502.  
  50503. Go
  50504. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidogtmobile]'))
  50505. drop procedure [dbo].[sp_izmenidogtmobile]
  50506.  
  50507. Go
  50508. CREATE      PROCEDURE sp_IzmeniDogTmobile
  50509.     @SifraKomint    char(6), 
  50510.     @ImeKomint    nvarchar(50), 
  50511.     @EdbEmb        char(13), 
  50512.     @Tel        char(15),
  50513.     @TempID        varchar(20)
  50514. AS
  50515.     Update DogTmobile 
  50516.     set 
  50517.         SifraKomint = @SifraKomint, 
  50518.         ImeKomint = @ImeKomint, 
  50519.         EdbEmb = @EdbEmb, 
  50520.         Tel = @Tel, 
  50521.         TempID = @TempID
  50522.     where
  50523.         SifraKomint = @SifraKomint
  50524.  
  50525.  
  50526.  
  50527. Go
  50528. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidokcenasoart]'))
  50529. drop procedure [dbo].[sp_izmenidokcenasoart]
  50530.  
  50531. Go
  50532.  
  50533.  
  50534.  
  50535. CREATE   PROCEDURE sp_IzmeniDokCenaSoart
  50536.     @Sifra_Oe    smallint,
  50537.     @Sifra_Art    varchar(20), 
  50538.     @DokCena    decimal(18,6)
  50539. AS
  50540.     Update Soart Set DokCena= @DokCena Where Sifra_oe=@Sifra_oe and Sifra_art = @Sifra_art
  50541.  
  50542. If @@RowCount < 1 
  50543.     Insert Soart (Sifra_OE, Sifra_Art, Vlez, Izlez, Cena, DanCena, POsn, NabCena, DokCena, Uces)
  50544.     SELECT @Sifra_OE, A.Sifra_Art, 0, 0, 0, 'D', T.ProcOsn, ROUND(@DokCena/(1+T.ProcOsn/100),6), @DokCena, 0 
  50545.     FROM KatArt A INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar WHERE A.Sifra_Art=@Sifra_Art
  50546.  
  50547.  
  50548.  
  50549.  
  50550.  
  50551.  
  50552. Go
  50553. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidokosnsred]'))
  50554. drop procedure [dbo].[sp_izmenidokosnsred]
  50555.  
  50556. Go
  50557.  
  50558.  
  50559. CREATE   PROCEDURE sp_IzmeniDokOsnSred
  50560.     @Sifra_Oe    smallint, 
  50561.     @Sifra_Dok    smallint, 
  50562.     @Broj_Dok    int, 
  50563.     @Datum_Dok    smalldatetime = Null,
  50564.     @Identif_Br    varchar(25) = Null,
  50565.     @Sifra_Kup    char(6) = Null,
  50566.     @Tip_StaOsn    char(1) = Null,
  50567.     @Sifra_Nal    smallint = Null,
  50568.     @Broj_Nal    int = Null,
  50569.     @Toc200    decimal(18,2) = Null,
  50570.     @VlIzl        char(1) = Null,
  50571.     @Danok1    decimal(18,2) = Null,
  50572.     @Danok2    decimal(18,2) = Null,
  50573.     @Kolic        decimal(9,2) = Null,
  50574.     @Poc_Inv_Broj    char(10) = Null,
  50575.     @Osn_Amor    decimal(18,2) = Null,
  50576.     @Otpis_Pret    decimal(18,2) = Null,
  50577.     @Orig_Nab_Vr        decimal(18,2) = Null,
  50578.     @Valuta        char(3) = Null,
  50579.     @Orig_Nab_Vr_Val    decimal(18,2) = Null,
  50580.     @Delov_God        smallint = Null,
  50581.     @Sifra_MikLok        char(10) = Null,
  50582.     @Sifra_MikLok_Od    char(10) = Null,
  50583.         @Opis       nvarchar(250) = Null,
  50584.         @Sifra_Div        smallint = Null,
  50585.         @Sifra_TrosM        smallint = Null,
  50586.         @Sifra_TrosV        smallint = Null,
  50587.         @Sifra_Div_Od        smallint = Null,
  50588.         @Sifra_TrosM_Od        smallint = Null,
  50589.         @Sifra_TrosV_Od        smallint = Null  
  50590. AS
  50591.     Update DokOsnSred
  50592.     Set Datum_Dok=@Datum_Dok, Identif_Br=@Identif_Br, Sifra_Kup=@Sifra_Kup, Tip_StaOsn=@Tip_StaOsn, Sifra_Nal=@Sifra_Nal, Broj_Nal=@Broj_Nal, 
  50593.         Toc200=@Toc200, VlIzl=@VlIzl, Danok1=@Danok1, Danok2=@Danok2, Kolic=@Kolic, Poc_Inv_Broj=@Poc_Inv_Broj, Osn_Amor=@Osn_Amor, 
  50594.         Otpis_Pret=@Otpis_Pret, Orig_Nab_Vr=@Orig_Nab_Vr, Valuta=@Valuta, Orig_Nab_Vr_Val=@Orig_Nab_Vr_Val, Delov_God=@Delov_God,
  50595.         Sifra_MikLok=@Sifra_MikLok, Sifra_MikLok_Od=@Sifra_MikLok_Od, Opis=@Opis,
  50596.              Sifra_Div=@Sifra_Div, Sifra_TrosM=@Sifra_TrosM, Sifra_TrosV=@Sifra_TrosV,
  50597.                 Sifra_Div_Od=@Sifra_Div_Od, Sifra_TrosM_Od=@Sifra_TrosM_Od, Sifra_TrosV_Od=@Sifra_TrosV_Od   
  50598.     Where Sifra_Oe=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok
  50599.     Return @@ERROR
  50600.  
  50601.  
  50602.  
  50603.  
  50604. Go
  50605. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidokr]'))
  50606. drop procedure [dbo].[sp_izmenidokr]
  50607.  
  50608. Go
  50609.  
  50610.  
  50611. CREATE                                 PROCEDURE sp_IzmeniDokr
  50612.    @Sifra_OE smallint,
  50613.    @Sifra_Dok smallint,
  50614.    @Broj_Dok int,
  50615.    @Sifra_Prim smallint,
  50616.    @ImaDodatna char(1),
  50617. -- Ednoznacen Kluc
  50618.     @NovPrima Smallint,
  50619.     @NovDava Smallint,
  50620.    @VlIzl char(1),
  50621.     @Sifra_Za char(1),
  50622.     @Sifra_Nal Smallint,
  50623.    @Broj_Nal int,
  50624.    @Identif_Br nvarchar(25),
  50625.    @Ispratnica varchar(25),
  50626.    @Opis varchar(50),
  50627.    @Sifra_Kup char(6),
  50628.     @Sifra_Obj Smallint,
  50629.    @Datum_Dok smalldatetime,
  50630.    @Uces decimal(6,2),
  50631.    @Kasa decimal(6,2),
  50632.    @Rok smallint,
  50633.    @Sifra_Pat smallint,
  50634.    @SerBr varchar(10),
  50635.    @Kto char(6),
  50636.    @Kurs decimal(18,8),
  50637.    @KojaVal char(3),
  50638.    @Toc200 decimal(18,4),
  50639.     @MagVr decimal(18,4),
  50640.     @MagVrDan decimal(18,4),
  50641.    @Marza decimal(18,4),
  50642.    @Danok1 decimal(18,4),
  50643.    @Danok2 decimal(18,4),
  50644.     @PDanok1 decimal(18,4),
  50645.    @PDanok2 decimal(18,4),
  50646.    @PTrosok decimal(18,4),
  50647.    @DanDokCena char(1),
  50648.    @DanMagCena char(1),
  50649.    @CenaIznos char(1),
  50650.    @ProcMarza decimal(6,2),
  50651.    @Kod_Danok char(1),
  50652.    @TekstPosle nvarchar(1500),
  50653.    @Sifra_Nivo varchar(2),
  50654.    @KojaSmetka char (1),
  50655.    @Blokiran char(1)=Null,
  50656.     @KasaPoDDV    decimal(6,2) = 0,
  50657.     @Spremil    varchar(5) = Null,
  50658.     @Sifra_Nar    smallint = Null,
  50659.     @Broj_Nar    int = Null,
  50660.     @Sifra_OeNar     smallint = Null,
  50661.     @Usluzna    char(1) = Null,
  50662.     @TekstPred nvarchar (1500) = Null,
  50663.     @Sifra_Mest int = Null,
  50664.     @Izrab_Nar varchar (20) = Null,
  50665.     @Sifra_Prev    char(6)=Null,
  50666.     @Spec_Forma_Pec varchar(10) = Null,
  50667.     @Sifra_Div smallint = Null,
  50668.     @Likvid char(1)=Null,
  50669.     @DodadenNa smalldatetime = NULL,     --ovoj ne treba, ama ostavi go
  50670.     @Plat_PerDan decimal(18,2) = Null,
  50671.     @Proc_PerDan decimal(6,2) = Null,
  50672.     @DogBr    varchar(10) = Null,
  50673.     @Sifra_Kor    varchar(20) = Null,
  50674.     @Broj_Proekt    int = Null
  50675.  
  50676. AS
  50677.  
  50678. if dbo.fix_DokrIzmMoze(GetDate(), @Datum_Dok, @Sifra_Oe, @Sifra_Dok, @Broj_Dok, @ImaDodatna, @Sifra_Prim) = 'N'
  50679.     Return 57902        -- Custom code za NEDOZVOLENA IZMENA - DOKR
  50680.  
  50681. Declare @SSQL nVarchar(4000)
  50682. Set @SSQL = 'UPDATE [Dokr] SET '
  50683. If @NovDava Is Not NULL
  50684.     Set @SSQL = @SSQL + '[Sifra_OE]=' + Cast(@NovDava As Varchar(5)) + ', '
  50685. If @NovPrima Is Not NULL
  50686.     Set @SSQL = @SSQL + '[SIfra_Prim]=' + Cast(@NovPrima As Varchar(5)) + ', '
  50687. Else
  50688.     Set @SSQL = @SSQL + '[SIfra_Prim]=Null, '
  50689. Set @SSQL = @SSQL + '[VlIzl]=''' + @VlIzl + ''',
  50690.           [Sifra_Za]=' + Cast(@Sifra_Za As Varchar(5)) +  ',
  50691.          [Sifra_Nal]=' + Cast(@Sifra_Nal As Varchar(5)) + ', '
  50692. If @Broj_Nal Is Not NULL
  50693.     Set @SSQL = @SSQL + '[Broj_Nal]=' + Cast(@Broj_Nal As Varchar(8)) + ' ,'
  50694. Else
  50695.     Set @SSQL = @SSQL + '[Broj_Nal]=Null, '
  50696. If @Identif_Br Is Not NULL
  50697.     Set @SSQL = @SSQL + '[Identif_Br]=N''' + @Identif_Br + ''', '
  50698. Else
  50699.     Set @SSQL = @SSQL + '[Identif_Br]=Null, '
  50700. If @Ispratnica Is Not NULL
  50701.     Set @SSQL = @SSQL + '[Ispratnica]=''' + @Ispratnica + ''', '
  50702. Else
  50703.     Set @SSQL = @SSQL + '[Ispratnica]=Null, '
  50704. If @Opis Is Not NULL
  50705.     Set @SSQL = @SSQL + '[Opis]=''' + @Opis + ''', '
  50706. Else
  50707.     Set @SSQL = @SSQL + '[Opis]=Null, '
  50708. If @Sifra_Kup Is Not NULL
  50709.     Set @SSQL = @SSQL + '[Sifra_Kup]=''' + @Sifra_Kup + ''', '
  50710. Else
  50711.     Set @SSQL = @SSQL + '[Sifra_Kup]=Null, '
  50712. If @Sifra_Obj Is Not NULL
  50713.     Set @SSQL = @SSQL + '[Sifra_Obj]=' + Cast(@Sifra_Obj As Varchar(6)) + ', '
  50714. Else
  50715.     Set @SSQL = @SSQL + '[Sifra_Obj]=Null, '
  50716. If @Datum_Dok Is Not NULL
  50717.     Set @SSQL = @SSQL + '[Datum_Dok]=''' + Cast(@Datum_Dok As Varchar(25)) + ''', '
  50718. Else
  50719.     Set @SSQL = @SSQL + '[Datum_Dok]=Null, '
  50720. Set @SSQL = @SSQL + '[Datum_Izm]=''' + Cast(GETDATE() As Varchar(25)) + ''', '
  50721. If @Uces Is Not NULL
  50722.     Set @SSQL = @SSQL + '[Uces]=' + Cast(@Uces As varchar(8)) + ', '
  50723. Else
  50724.     Set @SSQL = @SSQL + '[Uces]=Null, '
  50725. If @Kasa Is Not NULL
  50726.     Set @SSQL = @SSQL + '[Kasa]=' + Cast(@Kasa As Varchar(8)) + ', '
  50727. Else
  50728.     Set @SSQL = @SSQL + '[Kasa]=Null, '
  50729. If @Rok Is Not NULL
  50730.     Set @SSQL = @SSQL + '[Rok]=' + Cast(@Rok as varchar(3)) + ', '
  50731. Else
  50732.     Set @SSQL = @SSQL + '[Rok]=Null, '
  50733. If @Sifra_Pat Is Not NULL
  50734.     Set @SSQL = @SSQL + '[Sifra_Pat]=' + Cast(@Sifra_Pat As Varchar(5))+ ', '
  50735. Else
  50736.     Set @SSQL = @SSQL + '[Sifra_Pat]=Null, '
  50737. Set @SSQL = @SSQL + '[Sifra_OpIz]=''' + SUSER_SNAME() + ''', '
  50738. If @SerBr Is Not NULL
  50739.     Set @SSQL = @SSQL + '[SerBr]=''' + @SerBr + ''', '
  50740. Else
  50741.     Set @SSQL = @SSQL + '[SerBr]=Null, '
  50742. If @Kto Is Not NULL
  50743.     Set @SSQL = @SSQL + '[Kto]=''' + @Kto + ''', '
  50744. Else
  50745.     Set @SSQL = @SSQL + '[Kto]=Null, '
  50746. If @Kurs Is Not NULL
  50747.     Set @SSQL = @SSQL + '[Kurs]=' + Cast(@Kurs As Varchar(20)) + ', '
  50748. Else
  50749.     Set @SSQL = @SSQL + '[Kurs]=Null, '
  50750. If @KojaVal Is Not NULL
  50751.     Set @SSQL = @SSQL + '[KojaVal]=''' + @KojaVal + ''', '
  50752. Else
  50753.     Set @SSQL = @SSQL + '[KojaVal]=Null, '
  50754. If @Toc200 Is Not NULL
  50755.     Set @SSQL = @SSQL + '[Toc200]=' + Cast(@Toc200 as Varchar(25)) + ', '
  50756. Else
  50757.     Set @SSQL = @SSQL + '[Toc200]=Null, '
  50758. If @MagVr Is Not NULL
  50759.     Set @SSQL = @SSQL + '[MagVr]=' + Cast(@MagVr As Varchar(25)) + ', '
  50760. Else
  50761.     Set @SSQL = @SSQL + '[MagVr]=Null, '
  50762. If @MagVrDan Is Not NULL
  50763.     Set @SSQL = @SSQL + '[MagVrDan]=' + Cast(@MagVrDan As Varchar(25)) + ', '
  50764. Else
  50765.     Set @SSQL = @SSQL + '[MagVrDan]=Null, '
  50766. If @Marza Is Not NULL
  50767.     Set @SSQL = @SSQL + '[Marza]=' + Cast(@Marza As Varchar(25)) + ', '
  50768. Else
  50769.     Set @SSQL = @SSQL + '[Marza]=Null, '
  50770. If @Danok1 Is Not NULL
  50771.     Set @SSQL = @SSQL + '[Danok1]=' + Cast(@Danok1 As Varchar(25)) + ', '
  50772. Else
  50773.     Set @SSQL = @SSQL + '[Danok1]=Null, '
  50774. If @Danok2 Is Not NULL
  50775.     Set @SSQL = @SSQL + '[Danok2]=' + Cast(@Danok2 As Varchar(25)) + ', '
  50776. Else
  50777.     Set @SSQL = @SSQL + '[Danok2]=Null, '
  50778. If @PDanok1 Is Not NULL
  50779.     Set @SSQL = @SSQL + '[PDanok1]=' + Cast(@PDanok1 As Varchar(25)) + ', '
  50780. Else
  50781.     Set @SSQL = @SSQL + '[PDanok1]=Null, '
  50782. If @PDanok2 Is Not NULL
  50783.     Set @SSQL = @SSQL + '[PDanok2]=' + Cast(@PDanok2 As Varchar(25)) + ', '
  50784. Else
  50785.     Set @SSQL = @SSQL + '[PDanok2]=Null, '
  50786. If @PTrosok Is Not NULL
  50787.     Set @SSQL = @SSQL + '[PTrosok]=' + Cast(@PTrosok As Varchar(25)) + ', '
  50788. Else
  50789.     Set @SSQL = @SSQL + '[PTrosok]=Null, '
  50790. If @DanDokCena Is Not NULL
  50791.     Set @SSQL = @SSQL + '[DanDokCena]=''' + @DanDokCena + ''', '
  50792. Else
  50793.     Set @SSQL = @SSQL + '[DanDokCena]=Null, '
  50794. If @DanMagCena Is Not NULL
  50795.     Set @SSQL = @SSQL + '[DanMagCena]=''' + @DanMagCena + ''', '
  50796. Else
  50797.     Set @SSQL = @SSQL + '[DanMagCena]=Null, '
  50798. If @CenaIznos Is Not NULL
  50799.     Set @SSQL = @SSQL + '[CenaIznos]=''' + @CenaIznos +  ''', '
  50800. Else
  50801.     Set @SSQL = @SSQL + '[CenaIznos]=Null, '
  50802. If @ProcMarza Is Not NULL
  50803.     Set @SSQL = @SSQL + '[ProcMarza]=' + Cast(@ProcMarza As Varchar(8)) + ', '
  50804. Else
  50805.     Set @SSQL = @SSQL + '[ProcMarza]=Null, '
  50806. If @Kod_Danok Is Not NULL
  50807.     Set @SSQL = @SSQL + '[Kod_Danok]=''' + @Kod_Danok + ''', '
  50808. Else
  50809.     Set @SSQL = @SSQL + '[Kod_Danok]=Null, '
  50810. If @Sifra_Nivo Is Not NULL
  50811.     Set @SSQL = @SSQL + '[Sifra_Nivo]=''' + @Sifra_Nivo + ''', '
  50812. Else
  50813.     Set @SSQL = @SSQL + '[Sifra_Nivo]=Null, '
  50814. If @Blokiran Is Not NULL
  50815.     Set @SSQL = @SSQL + '[Blokiran]=''' + @Blokiran + ''', '
  50816. Else
  50817.     Set @SSQL = @SSQL + '[Blokiran]=Null, '
  50818. If @Likvid Is Not NULL
  50819.     Set @SSQL = @SSQL + '[Likvid]=''' + @Likvid + ''', '
  50820. Else
  50821.     Set @SSQL = @SSQL + '[Likvid]=Null, '
  50822. If @DogBr Is Not NULL
  50823.     Set @SSQL = @SSQL + '[DogBr]=''' + @DogBr + ''', '
  50824. Else
  50825.     Set @SSQL = @SSQL + '[DogBr]=Null, '
  50826. If @Spremil Is Not Null
  50827.     Set @SSQL=@SSQL + '[Spremil] = ''' + @Spremil + ''', '
  50828. Else
  50829.     Set @SSQL=@SSQL + '[Spremil] = Null, '
  50830. If @Usluzna Is Not Null
  50831.     Set @SSQL=@SSQL + '[Usluzna] = ''' + @Usluzna + ''', '
  50832. If @Sifra_Nar Is Not Null
  50833.     Set @SSQL=@SSQL + '[Sifra_Nar] = ''' + cast(@Sifra_Nar as Varchar(6)) + ''', '
  50834. Else
  50835.     Set @SSQL=@SSQL + '[Sifra_Nar] = Null, '
  50836. If @Broj_Nar Is Not Null
  50837.     Set @SSQL=@SSQL + '[Broj_Nar] = ''' + cast(@Broj_Nar as Varchar(8)) + ''', '
  50838. Else
  50839.     Set @SSQL=@SSQL + '[Broj_Nar] = Null, '
  50840. If @Sifra_Mest Is Not Null
  50841.     Set @SSQL=@SSQL + '[Sifra_Mest] = ''' + cast(@Sifra_Mest as Varchar(8)) + ''', '
  50842. Else
  50843.     Set @SSQL=@SSQL + '[Sifra_Mest] = Null, '
  50844. If @Sifra_OeNar Is Not Null
  50845.     Set @SSQL=@SSQL + '[Sifra_OeNar] = ''' + cast(@Sifra_OeNar as Varchar(6))+ ''', '
  50846. Else
  50847.     Set @SSQL=@SSQL + '[Sifra_OeNar] = Null, '
  50848. If @Izrab_Nar Is Not Null
  50849.     Set @SSQL=@SSQL + '[Izrab_Nar] = ''' + cast(@Izrab_Nar as Varchar(6))+ ''', '
  50850. Else
  50851.     Set @SSQL=@SSQL + '[Izrab_Nar] = Null, '
  50852. If @KojaSmetka  Is Not NULL
  50853.     Set @SSQL = @SSQL + '[KojaSmetka]=''' + @KojaSmetka + ''', '
  50854. Else
  50855.     Set @SSQL = @SSQL + '[KojaSmetka]=Null, '
  50856. Set @SSQL = @SSQL + ' KasaPoDDV = ' + Cast(@KasaPoDDV As varchar(10)) + ', '
  50857. If @Spec_Forma_Pec Is Not Null
  50858.     Set @SSQL = @SSQL + '[Spec_Forma_Pec]=''' + @Spec_Forma_Pec + ''', '
  50859. Else
  50860.     Set @SSQL = @SSQL + '[Spec_Forma_Pec]=Null, '
  50861. If @Sifra_Prev  Is Not NULL
  50862.     Set @SSQL = @SSQL + '[Sifra_Prev]=''' + @Sifra_Prev + ''', '
  50863. Else
  50864.     Set @SSQL = @SSQL + '[Sifra_Prev]=Null, '
  50865. If @Sifra_Div Is Not Null
  50866.     Set @SSQL = @SSQL + '[Sifra_Div] = ' + cast(@Sifra_Div as Varchar(6))+ ', '
  50867. Else
  50868.     Set @SSQL = @SSQL + '[Sifra_Div] = Null, '
  50869. If @Plat_PerDan Is Not Null
  50870.     Set @SSQL = @SSQL + ' Plat_PerDan=' + Cast(@Plat_PerDan As Varchar(30)) + ', '
  50871. Else
  50872.     Set @SSQL = @SSQL + ' Plat_PerDan=0, '
  50873. If @Proc_PerDan Is Not Null
  50874.     Set @SSQL = @SSQL + ' Proc_PerDan=' + Cast(@Proc_PerDan As Varchar(30)) + ', '
  50875. Else
  50876.     Set @SSQL = @SSQL + ' Proc_PerDan=0, '
  50877. If @Sifra_Kor Is Not NULL
  50878.     Set @SSQL = @SSQL + '[Sifra_Kor]=''' + @Sifra_Kor + ''', '
  50879. Else
  50880.     Set @SSQL = @SSQL + '[Sifra_Kor]=Null, '
  50881.  
  50882. If @Broj_Proekt Is Not Null
  50883.     Set @SSQL = @SSQL + ' Broj_Proekt=' + Cast(@Broj_Proekt As Varchar(10)) + ', '
  50884. Else
  50885.     Set @SSQL = @SSQL + ' Broj_Proekt=null, '
  50886.  
  50887.  
  50888. ----  KOGA SE DODAVAAT NOVI POLINJA DODAVAJ GI OVDE GORE....
  50889. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  50890. If @TekstPred Is Not Null And @TekstPred <> ' ' And @TekstPosle Is Not Null And @TekstPosle <> ' '    ---------
  50891. Begin                                                    ---------
  50892.     While Len(@SSQL) + Len(@TekstPred) + Len(@TekstPosle) > 3900                ---------
  50893.     Begin                                                ---------
  50894.         If Len(@TekstPred) > 100                                ---------
  50895.             Set @TekstPred = Substring(@TekstPred, 1, Len(@TekstPred) - 100)        ---------
  50896.         If Len(@TekstPosle) > 100                                ---------
  50897.             Set @TekstPosle = Substring(@TekstPosle, 1, Len(@TekstPosle) - 100)        ---------
  50898.                                                     ---------
  50899.         If Len(@SSQL) + Len(@TekstPred) + Len(@TekstPosle) <= 3900                ---------
  50900.         Begin                                            ---------
  50901.             Set @TekstPred = @TekstPred + '...'                        ---------
  50902.             Set @TekstPosle = @TekstPosle + '...'                         ---------
  50903.         End                                            ---------
  50904.     End                                                ---------
  50905. End                                                    ---------
  50906. If @TekstPred Is Not NULL                                        ---------
  50907.     Set @SSQL = @SSQL + '[TekstPred]=N''' + @TekstPred + ''', '                    ---------
  50908. Else                                                    ---------
  50909.     Set @SSQL = @SSQL + '[TekstPred]=Null, '                            ---------
  50910. If @TekstPosle Is Not NULL                                        ---------
  50911.     Set @SSQL = @SSQL + '[TekstPosle]=N''' + @TekstPosle + ''' '                    ---------
  50912. Else                                                    ---------
  50913.     Set @SSQL = @SSQL + '[TekstPosle]=Null '                            ---------
  50914. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  50915. ----  ... A <<<<<< NE >>>>>>> OVDE
  50916.  
  50917. ----------------------------------------- OVA E USLOVOT - NE CEPKAJ ----------------------------------------------------------------------------------------
  50918. If @Sifra_OE Is Not NULL                                        ---------
  50919.     Set @SSQL = @SSQL + 'WHERE [Sifra_OE]=' + Cast(@Sifra_OE As Varchar(5)) + ' '        ---------
  50920. If @Sifra_Dok Is Not NULL                                        ---------
  50921.     Set @SSQL = @SSQL + '  AND [Sifra_Dok]=' + Cast(@Sifra_Dok As Varchar(5)) + ' '            ---------
  50922. If @Broj_Dok Is Not NULL                                        ---------
  50923.     Set @SSQL = @SSQL + '  AND [Broj_Dok]=' + Cast(@Broj_Dok As Varchar(10)) + ' '            ---------
  50924. If @Sifra_Prim Is Not Null                                            ---------
  50925.     Set @SSQL = @SSQL + 'AND Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + ' '            ---------
  50926. If @ImaDodatna Is Not Null                                        ---------
  50927.     Set @SSQL = @SSQL + 'AND ImaDodatna=''' + @ImaDodatna + ''' '                ---------
  50928. Exec(@SSQL)                                                ---------
  50929. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  50930. Return @@ERROR
  50931.  
  50932.  
  50933.  
  50934. Go
  50935. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidokrabnal]'))
  50936. drop procedure [dbo].[sp_izmenidokrabnal]
  50937.  
  50938. Go
  50939.  
  50940. CREATE    PROCEDURE [dbo].[sp_IzmeniDokRabNal]
  50941.     @DokrID        int,
  50942.     @RabNalID        Int,
  50943.     @Tip_RabStav        Char(1),
  50944.     @Grupa_DokRab    smallint,
  50945.     @Opis            Varchar(50),
  50946.     @Sifra_rab        int,
  50947.     @Sifra_mas        char(15),
  50948.     @Sifra_OE        smallint,
  50949.     @Datum_Dok        smalldatetime, 
  50950.     @KaloProc        decimal(6,2) = Null,
  50951.     @Sifra_Otkr        smallint = Null,
  50952.     @Sifra_Smena        int = Null,
  50953.     @Kolic_Topli    decimal(18,4)=NULL,
  50954.     @PoluprDali        char(1) = Null
  50955.  
  50956. AS
  50957.  
  50958.     UPDATE DokRabNal
  50959.     SET RabNalID=@RabNalID, Tip_RabStav=@Tip_RabStav, Grupa_DokRab=@Grupa_DokRab, DokrID=@DokrID, Opis=@Opis,
  50960.         Sifra_rab=@Sifra_rab, Sifra_mas=@Sifra_mas, Sifra_OE=@Sifra_OE, Datum_Dok=@Datum_Dok, KaloProc=@KaloProc, Sifra_Otkr=@Sifra_Otkr,
  50961.         Sifra_Smena=@Sifra_Smena, Kolic_Topli=@Kolic_Topli, PoluprDali = @PoluprDali
  50962.     WHERE DokrID=@DokrID
  50963.  
  50964.  
  50965.  
  50966. Go
  50967. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidokrzb]'))
  50968. drop procedure [dbo].[sp_izmenidokrzb]
  50969.  
  50970. Go
  50971. CREATE   PROCEDURE sp_IzmeniDokrZb
  50972.     @DokrZbID int,
  50973.     @Sifra_OE smallint,
  50974.     @Sifra_Dok smallint,
  50975.     @Broj_Dok int,
  50976.     @Sifra_Nal Smallint,
  50977.     @Broj_Nal int,
  50978.     @Identif_Br varchar(25),
  50979.     @Opis varchar(50),
  50980.     @Sifra_Kup char(6),
  50981.     @Sifra_Obj Smallint,
  50982.     @Datum_Dok smalldatetime,
  50983.     @Rok smallint,
  50984.     @Kasa decimal(6,2),
  50985.     @Sifra_Pat smallint,
  50986.     @Kto char(6),
  50987.     @Toc200 decimal(18,4),
  50988.     @Danok1 decimal(18,4),
  50989.     @Danok2 decimal(18,4),
  50990.     @KojaSmetka char (1),
  50991.     @Spec_Forma_Pec varchar(10) = Null,
  50992.     @Sifra_Prev    char(6) = Null
  50993. AS
  50994.     UPDATE DokrZb SET  Sifra_Nal=@Sifra_Nal, Broj_Nal=@Broj_Nal, 
  50995.     Identif_Br=@Identif_Br, Opis=@Opis, Sifra_Kup=@Sifra_Kup, Sifra_Obj=@Sifra_Obj, 
  50996.     Datum_Dok=@Datum_Dok, Kasa=@Kasa, Rok=@Rok, Sifra_Pat=@Sifra_Pat, 
  50997.     Kto=@Kto, Toc200=@Toc200, Danok1=@Danok1, Danok2=@Danok2, 
  50998.     KojaSmetka=@KojaSmetka, Spec_Forma_Pec=@Spec_Forma_Pec, Sifra_Prev=@Sifra_Prev
  50999.     WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  51000. Return @@ERROR
  51001.  
  51002.  
  51003. Go
  51004. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidokrzb_prevoznik]'))
  51005. drop procedure [dbo].[sp_izmenidokrzb_prevoznik]
  51006.  
  51007. Go
  51008.  
  51009. CREATE  PROCEDURE sp_IzmeniDokrZB_Prevoznik
  51010.     @Sifra_Oe    smallint,
  51011.     @Sifra_Dok    smallint,
  51012.     @Broj_Dok    int,
  51013.     @Sifra_Prev    char(6)
  51014. AS
  51015.     Update DokrZB 
  51016.     Set Sifra_Prev=@Sifra_Prev
  51017.     Where Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_Dok = @Broj_Dok
  51018.  
  51019.  
  51020.  
  51021. Go
  51022. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidoznaki]'))
  51023. drop procedure [dbo].[sp_izmenidoznaki]
  51024.  
  51025. Go
  51026.  
  51027.  
  51028.  
  51029.  
  51030.  
  51031.  
  51032. CREATE         PROCEDURE sp_IzmeniDoznaki
  51033.         @Broj_Doznaka            int,
  51034.                 @Sif_Nalogodav       char(6),
  51035.         @Sif_Banka           char(6),
  51036.         @Nalog_Opis       varchar(50) = null,
  51037.         @Nalog_Broj       varchar(15) = null,                
  51038.         @Nac_Plak         varchar(50) = null,
  51039.         @Nac_Plak_Sifra   varchar(15) = null,
  51040.         @Vo_Korist        varchar(120) = null,
  51041.         @Vo_Korist_Sifra        char(3) = null,
  51042.         @Koja_Banka        varchar(120) = null,
  51043.         @Koja_Banka_Sifra   varchar(10) = null,
  51044.         @KojaVal               char(3) = null,
  51045.                 @Dat_Dosp        smalldatetime = null,
  51046.                 @Sif_Osn1               char(5) = null,
  51047.         @Sif_Osn2               char(5) = null,
  51048.         @Sif_Osn3               char(5) = null,
  51049.         @Sif_Osn4               char(5) = null,
  51050.         @Sif_Osn5               char(5) = null,
  51051.         @Br_Dok1               char(6) = null,
  51052.         @Br_Dok2               char(6) = null,
  51053.         @Br_Dok3               char(6) = null,
  51054.         @Br_Dok4               char(6) = null,
  51055.         @Br_Dok5               char(6) = null,
  51056.         @Opis_Tr1          varchar(50) = null,
  51057.         @Opis_Tr2          varchar(50) = null,
  51058.         @Opis_Tr3          varchar(50) = null,
  51059.         @Opis_Tr4          varchar(50) = null,
  51060.         @Opis_Tr5          varchar(50) = null,
  51061.         @Izn_Val1    decimal(18,6) = Null,
  51062.         @Izn_Val2    decimal(18,6) = Null,
  51063.         @Izn_Val3    decimal(18,6) = Null,
  51064.         @Izn_Val4    decimal(18,6) = Null,
  51065.         @Izn_Val5    decimal(18,6) = Null,
  51066.         @Zabeleska       varchar(120) = null,
  51067.         @Pod_Firma       char(17) = null,
  51068.         @Mesto       char(10) = null,
  51069.         @Br_Akr       char(10) = null,
  51070.         @Datum       smalldatetime = null,
  51071.         @Vo       char(20) = null,
  51072.         @NeOtpAkr       char(1) = null,
  51073.         @OtpAkr       char(1) = null,
  51074.         @PrenAkr       char(1) = null,
  51075.         @NePrenAkr       char(1) = null,
  51076.         @KonfAkr       char(1) = null,
  51077.         @NeKonfAkr       char(1) = null,
  51078.         @StrBanka       varchar(200) = null,
  51079.         @ImeKor       varchar(150) = null,
  51080.         @So_Sto       char(1) = null,
  51081.         @MestoTov       char(41) = null,
  51082.         @NajkasnoDo       smalldatetime = null,
  51083.         @Prevoz_Do       varchar(20) = null,
  51084.         @Delumno       char(1) = null,
  51085.         @Pretovar       char(1) = null,
  51086.         @NacPlak       char(1) = null,
  51087.         @Prez_Dok       varchar(250) = null,
  51088.         @StrJaz       varchar(150) = null,
  51089.         @FOB       varchar(10) = null,
  51090.         @C_F       varchar(10) = null,
  51091.         @CIF       varchar(10) = null,
  51092.         @Dena_Rok       int = null,
  51093.         @Proviz_Tr_Str       char(1) = null,
  51094.         @Rok_Do       smalldatetime = null,
  51095.         @Pos_Zabel       varchar(50) = null
  51096. AS
  51097.     UPDATE [Doznaki]
  51098.     SET [Sif_Nalogodav]=@Sif_Nalogodav, [Sif_Banka]=@Sif_Banka, [Nalog_Opis]=@Nalog_Opis, [Nalog_Broj]=@Nalog_Broj,
  51099.             [Nac_Plak]=@Nac_Plak, [Nac_Plak_Sifra]=@Nac_Plak_Sifra, [Vo_Korist]=@Vo_Korist, [Vo_Korist_Sifra]=@Vo_Korist_Sifra,
  51100.         [Koja_Banka]=@Koja_Banka, [Koja_Banka_Sifra]=@Koja_Banka_Sifra, [KojaVal]=@KojaVal,          
  51101.             [Dat_Dosp]=@Dat_Dosp, [Sif_Osn1]=@Sif_Osn1, [Sif_Osn2]=@Sif_Osn2, [Sif_Osn3]=@Sif_Osn3, [Sif_Osn4]=@Sif_Osn4, [Sif_Osn5]=@Sif_Osn5,    
  51102.         [Br_Dok1]=@Br_Dok1, [Br_Dok2]=@Br_Dok2, [Br_Dok3]=@Br_Dok3, [Br_Dok4]=@Br_Dok4, [Br_Dok5]=@Br_Dok5,
  51103.         [Opis_Tr1]=@Opis_Tr1, [Opis_Tr2]=@Opis_Tr2, [Opis_Tr3]=@Opis_Tr3, [Opis_Tr4]=@Opis_Tr4, [Opis_Tr5]=@Opis_Tr5,
  51104.             [Izn_Val1]=@Izn_Val1, [Izn_Val2]=@Izn_Val2, [Izn_Val3]=@Izn_Val3, [Izn_Val4]=@Izn_Val4, [Izn_Val5]=@Izn_Val5,   
  51105.             [Zabeleska]=@Zabeleska, [Dat_Vnes]=getdate(), [Pod_Firma]=@Pod_Firma, [Mesto]=@Mesto,
  51106.         [Br_Akr]=@Br_Akr, [Datum]=@Datum, [Vo]=@Vo, [NeOtpAkr]=@NeOtpAkr, [OtpAkr]=@OtpAkr, [PrenAkr]=@PrenAkr,
  51107.             [NePrenAkr]=@NePrenAkr, [KonfAkr]=@KonfAkr, [NeKonfAkr]=@NeKonfAkr, [StrBanka]=@StrBanka, [imekor]=@ImeKor, 
  51108.             [So_Sto]=@So_Sto, [MestoTov]=@MestoTov, [NajkasnoDo]=@NajkasnoDo, [Prevoz_Do]=@Prevoz_Do, [Delumno]=@Delumno,
  51109.             [Pretovar]=@Pretovar, [NacPlak]=@NacPlak, [Prez_Dok]=@Prez_Dok, [StrJaz]=@StrJaz, [FOB]=@FOB, [C_F]=@C_F, [CIF]=@CIF,
  51110.             [Dena_Rok]=@Dena_Rok, [Proviz_Tr_Str]=@Proviz_Tr_Str, [Rok_Do]=@Rok_Do, [Pos_Zabel]=@Pos_Zabel  
  51111.        WHERE [Broj_Doznaka]=@Broj_Doznaka
  51112. RETURN @@ERROR
  51113.  
  51114.  
  51115.  
  51116. Go
  51117. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidrugo1]'))
  51118. drop procedure [dbo].[sp_izmenidrugo1]
  51119.  
  51120. Go
  51121.  
  51122.  
  51123. CREATE      PROCEDURE sp_IzmeniDrugo1
  51124.     @Sifra Smallint,
  51125.     @Ime varchar(30),
  51126.     @CenaParam decimal(18, 6) = 0,
  51127.     @CenaParam2 decimal(18, 6) = 0,
  51128.     @Kompr char(1) = Null
  51129.  
  51130. AS
  51131.  
  51132.     Declare @Propagiraj as char(1)
  51133.     Set @Propagiraj = 'D'
  51134.     UPDATE [Drugo1]
  51135.     SET [Ime_1]=@Ime, [Propagiraj]=@Propagiraj,
  51136.         CenaParam = @CenaParam,
  51137.         CenaParam2 = @CenaParam2,
  51138.         Kompr = @Kompr
  51139.     WHERE [Sifra_1]=@Sifra
  51140.  
  51141. RETURN @@ERROR
  51142.  
  51143.  
  51144.  
  51145.  
  51146.  
  51147.  
  51148. Go
  51149. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidrugo2]'))
  51150. drop procedure [dbo].[sp_izmenidrugo2]
  51151.  
  51152. Go
  51153.  
  51154. CREATE     PROCEDURE sp_IzmeniDrugo2
  51155.     @Sifra Smallint,
  51156.     @Ime varchar(30),
  51157.     @Sirina    decimal(9,3) = Null,
  51158.     @Visina    decimal(9,3) = Null,
  51159.     @DodOzn2 varchar (30) = Null
  51160. AS
  51161.     Declare @Propagiraj as char(1)
  51162.     Set @Propagiraj = 'D'
  51163.     UPDATE [Drugo2]
  51164.     SET [Ime_2]=@Ime, [Propagiraj]=@Propagiraj, 
  51165.             Sirina=@Sirina, Visina=@Visina, DodOzn2=@DodOzn2
  51166.     WHERE [Sifra_2]=@Sifra
  51167. RETURN @@ERROR
  51168.  
  51169.  
  51170.  
  51171. Go
  51172. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidrugo3]'))
  51173. drop procedure [dbo].[sp_izmenidrugo3]
  51174.  
  51175. Go
  51176. CREATE    PROCEDURE sp_IzmeniDrugo3
  51177.     @Sifra Smallint,
  51178.     @Ime varchar(30),
  51179.     @Tezina decimal(9,3) = Null
  51180. AS
  51181.     Declare @Propagiraj as char(1)
  51182.     Set @Propagiraj = 'D'
  51183.     UPDATE [Drugo3]
  51184.     SET [Ime_3]=@Ime, [Propagiraj]=@Propagiraj, Tezina=@Tezina
  51185.     WHERE [Sifra_3]=@Sifra
  51186. RETURN @@ERROR
  51187.  
  51188.  
  51189. Go
  51190. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidrugo4]'))
  51191. drop procedure [dbo].[sp_izmenidrugo4]
  51192.  
  51193. Go
  51194.  
  51195.  
  51196. CREATE     PROCEDURE sp_IzmeniDrugo4
  51197.     @Sifra Smallint,
  51198.     @Ime varchar(30),
  51199.     @Poraka nvarchar(500) = Null
  51200. AS
  51201.     Declare @Propagiraj as char(1)
  51202.     Set @Propagiraj = 'D'
  51203.     UPDATE [Drugo4]
  51204.     SET [Ime_4]=@Ime, [Propagiraj]=@Propagiraj, Poraka=@Poraka
  51205.     WHERE [Sifra_4]=@Sifra
  51206. RETURN @@ERROR
  51207.  
  51208.  
  51209.  
  51210. Go
  51211. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidrugo5]'))
  51212. drop procedure [dbo].[sp_izmenidrugo5]
  51213.  
  51214. Go
  51215. CREATE    PROCEDURE sp_IzmeniDrugo5
  51216.     @Sifra Smallint,
  51217.     @Ime varchar(30)
  51218. AS
  51219.     Declare @Propagiraj as char(1)
  51220.     Set @Propagiraj = 'D'
  51221.     UPDATE [Drugo5]
  51222.     SET [Ime_5]=@Ime, [Propagiraj]=@Propagiraj
  51223.     WHERE [Sifra_5]=@Sifra
  51224. RETURN @@ERROR
  51225.  
  51226.  
  51227.  
  51228. Go
  51229. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidrugo6]'))
  51230. drop procedure [dbo].[sp_izmenidrugo6]
  51231.  
  51232. Go
  51233.  
  51234. CREATE     PROCEDURE sp_IzmeniDrugo6
  51235.     @Sifra Smallint,
  51236.     @Ime varchar(30)
  51237. AS
  51238.     Declare @Propagiraj as char(1)
  51239.     Set @Propagiraj = 'D'
  51240.     UPDATE [Drugo6]
  51241.     SET [Ime_6]=@Ime, [Propagiraj]=@Propagiraj
  51242.     WHERE [Sifra_6]=@Sifra
  51243. RETURN @@ERROR
  51244.  
  51245.  
  51246.  
  51247. Go
  51248. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenidrugo7]'))
  51249. drop procedure [dbo].[sp_izmenidrugo7]
  51250.  
  51251. Go
  51252.  
  51253.  
  51254. CREATE      PROCEDURE sp_IzmeniDrugo7
  51255.     @Sifra Smallint,
  51256.     @Ime varchar(30),
  51257.     @FormulaP varchar(500) = Null
  51258.  
  51259. AS
  51260.  
  51261.     Declare @Propagiraj as char(1)
  51262.     Set @Propagiraj = 'D'
  51263.  
  51264.     UPDATE [Drugo7]
  51265.     SET [Ime_7]=@Ime, 
  51266.         [Propagiraj]=@Propagiraj,
  51267.         FormulaP = @FormulaP
  51268.     WHERE [Sifra_7]=@Sifra
  51269.  
  51270.  
  51271.     RETURN @@ERROR
  51272.  
  51273.  
  51274.  
  51275.  
  51276.  
  51277. Go
  51278. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenievdekl]'))
  51279. drop procedure [dbo].[sp_izmenievdekl]
  51280.  
  51281. Go
  51282.  
  51283.  
  51284. CREATE   procedure SP_IzmeniEvDekl
  51285.     @Godina smallint,
  51286.     @Rbr int,
  51287.     @Datum_dok smalldatetime,
  51288.     @Cas char(5),
  51289.     @Sifra_Oe smallint,
  51290.     @Sifra_Dok smallint,
  51291.     @Broj_Dok smallint,
  51292.     @Br_Paketi int,
  51293.     @BrojDok varchar(20),
  51294.     @Reg_Vozilo varchar(20),
  51295.     @R_Broj varchar(20),
  51296.     @A_Broj varchar(20),
  51297.     @Sifra_kup varchar(20),
  51298.     @Gran_premin varchar(20),
  51299.     @W_Broj varchar(20),
  51300.     @R_Broj_Dop varchar(20)
  51301. As
  51302.     Update EvDekl
  51303.     set Datum_dok=@Datum_dok,Cas=@Cas ,Br_Paketi=@Br_Paketi ,BrojDok=@BrojDok ,
  51304.     Reg_Vozilo=@Reg_Vozilo ,R_Broj=@R_Broj,A_Broj=@A_Broj,Sifra_kup=@Sifra_kup,
  51305.     Gran_premin=@Gran_premin,W_Broj=@W_Broj ,R_Broj_Dop=@R_Broj_Dop
  51306.     where Godina=@Godina  and Rbr=@Rbr
  51307.     return @@error
  51308.  
  51309.  
  51310.  
  51311.  
  51312. Go
  51313. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenifarmacevt]'))
  51314. drop procedure [dbo].[sp_izmenifarmacevt]
  51315.  
  51316. Go
  51317.  
  51318. CREATE PROCEDURE sp_IzmeniFarmacevt
  51319.  
  51320.     @Sifra_Farmacevt    char(6),
  51321.     @ImeFarmacevt        nchar(40)
  51322. AS
  51323.     Update Farmacevt 
  51324.     Set ImeFarmacevt=@ImeFarmacevt
  51325.     Where Sifra_Farmacevt=@Sifra_Farmacevt 
  51326.     Return @@ERROR
  51327.  
  51328.  
  51329. Go
  51330. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenifazi]'))
  51331. drop procedure [dbo].[sp_izmenifazi]
  51332.  
  51333. Go
  51334.  
  51335.  
  51336. CREATE    PROCEDURE sp_IzmeniFazi
  51337.         @Sifra_Faza smallint,
  51338.         @Ime_Faza Varchar(50),
  51339.         @Sifra_oe int= null
  51340. AS
  51341.     UPDATE Fazi
  51342.     SET Ime_Faza=@Ime_Faza, Sifra_oe=@Sifra_oe
  51343.     WHERE Sifra_Faza=@Sifra_Faza
  51344. RETURN @@ERROR
  51345.  
  51346.  
  51347.  
  51348.  
  51349. Go
  51350. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenifiskprom]'))
  51351. drop procedure [dbo].[sp_izmenifiskprom]
  51352.  
  51353. Go
  51354.  
  51355. CREATE   PROCEDURE sp_IzmeniFiskProm
  51356.     @Sifra_Oe    smallint,
  51357.     @Datum_Dok    smalldatetime,
  51358.     @BrKasa    smallint,
  51359.     @Tar1        decimal(18,4),
  51360.     @Tar2        decimal(18,4),
  51361.     @Tar0        decimal(18,4),
  51362.     @Gotovina    decimal(18,4),
  51363.     @Cek        decimal(18,4),
  51364.     @Kredit        decimal(18,4),
  51365.     @Posn1    decimal(6,2),
  51366.     @Posn2    decimal(6,2),
  51367.     @Br_Smetki     int = 0,
  51368.     @Linii         int = 0,
  51369.     @Promet    decimal(18,6),
  51370.     @Predadeno    decimal(18,6),
  51371.     @Pocetno    decimal(18,6),
  51372.     @OstVoKasa    decimal(18,6),
  51373.     @Dr_Izlezi    decimal(18,6),
  51374.     @Danok1    decimal(18,6) = Null,
  51375.     @Danok2    decimal(18,6) = Null,
  51376.     @Prenesen char(1)= null
  51377. AS
  51378.     Update FiskProm
  51379.     Set Tar1=@Tar1, Tar2=@Tar2, Tar0=@Tar0, Gotovina=@Gotovina, Cek=@Cek, Kredit=@Kredit, Posn1=@Posn1, Posn2=@posn2,
  51380.         Br_Smetki = @Br_Smetki, Linii = @Linii, Promet=@Promet, Predadeno=@Predadeno, Pocetno=@Pocetno, OstVoKasa=@OstVoKasa, Dr_Izlezi=@Dr_Izlezi,
  51381.         Danok1=@Danok1, Danok2=@Danok2, Prenesen=@Prenesen
  51382.     Where Sifra_Oe=@Sifra_Oe and Datum_Dok=@Datum_Dok and BrKasa = @BrKasa
  51383.     Return @@Error
  51384.  
  51385.  
  51386. Go
  51387. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenifistavki]'))
  51388. drop procedure [dbo].[sp_izmenifistavki]
  51389.  
  51390. Go
  51391. CREATE PROCEDURE sp_IzmeniFiStavki
  51392.     @FiID        smallint,
  51393.     @RbrFi        smallint,
  51394.     @Opis        nvarchar(200),
  51395.     @Sifra_Oe    smallint,
  51396.     @Sifra_GrOrg    char(6),
  51397.     @OdKade    char(10),
  51398.     @Znak        char(1),
  51399.     @Sifra        varchar(20)
  51400. AS
  51401.     Update FiStavki
  51402.     Set Opis=@Opis, Sifra_Oe=@Sifra_Oe, Sifra_GrOrg=@Sifra_GrOrg, OdKade=@OdKade, Znak=@Znak, Sifra=@Sifra
  51403.     Where FiID=@FiID and RbrFi=@RbrFi
  51404.     Return @@Error
  51405.  
  51406.  
  51407. Go
  51408. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenifitabela]'))
  51409. drop procedure [dbo].[sp_izmenifitabela]
  51410.  
  51411. Go
  51412. CREATE  PROCEDURE sp_IzmeniFiTabela
  51413.     @FiID            smallint,
  51414.     @Ime            nvarchar(40),
  51415.     @Ime2            nvarchar(40) = Null,
  51416.     @Kto_Anal_Raspr    char(10) = Null,
  51417.     @Kto_Anal        char(10) = Null,
  51418.     @Egzaktno_KtoRaspr    char(1) = 'N'
  51419. AS
  51420.     Update FiTabela
  51421.     Set Ime=@Ime, Ime2=@Ime2, Kto_Anal_Raspr=@Kto_Anal_Raspr, Kto_Anal=@Kto_Anal, Egzaktno_KtoRaspr=@Egzaktno_KtoRaspr
  51422.     Where FiID=@FiID
  51423.     Return @@ERROR
  51424.  
  51425.  
  51426.  
  51427. Go
  51428. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenifixtekst]'))
  51429. drop procedure [dbo].[sp_izmenifixtekst]
  51430.  
  51431. Go
  51432.  
  51433.  
  51434. CREATE     PROCEDURE sp_IzmeniFixTekst
  51435.     @Sifra_FixTekst Smallint,
  51436.     @Ime_FixTekst char(30),
  51437.     @Fix_Tekst nvarchar(1500)
  51438. AS
  51439.     UPDATE FixTekst
  51440.     SET Ime_FixTekst = @Ime_FixTekst, Fix_Tekst = @Fix_Tekst
  51441.     WHERE Sifra_FixTekst = @Sifra_FixTekst
  51442. RETURN @@ERROR
  51443.  
  51444.  
  51445.  
  51446. Go
  51447. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenifixtekstn]'))
  51448. drop procedure [dbo].[sp_izmenifixtekstn]
  51449.  
  51450. Go
  51451.  
  51452.  
  51453.  
  51454. CREATE      PROCEDURE sp_IzmeniFixTekstN
  51455.     @Sifra_FixTekst Smallint,
  51456.     @Ime_FixTekst char(30),
  51457.     @Fix_Tekst nvarchar(1500)
  51458. AS
  51459.     UPDATE FixTekstN
  51460.     SET Ime_FixTekst = @Ime_FixTekst, Fix_Tekst = @Fix_Tekst
  51461.     WHERE Sifra_FixTekst = @Sifra_FixTekst
  51462. RETURN @@ERROR
  51463.  
  51464.  
  51465.  
  51466. Go
  51467. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniformuladef]'))
  51468. drop procedure [dbo].[sp_izmeniformuladef]
  51469.  
  51470. Go
  51471.  
  51472. CREATE  procedure sp_IzmeniFormulaDef
  51473.     @Sifra_Formula varchar(20),
  51474.     @Ime_formula varchar(40),
  51475.     @Formula1 varchar(500),
  51476.     @DaliZaok char(1),
  51477.     @BrDecimali smallint
  51478. as 
  51479.     update FormulaDef
  51480.     Set Ime_Formula=@Ime_Formula, Formula1=@Formula1, DaliZaok=@DaliZaok, BrDecimali=@BrDecimali
  51481.     where Sifra_Formula=@Sifra_Formula
  51482. return @@error
  51483.  
  51484.  
  51485.  
  51486. Go
  51487. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniforsk]'))
  51488. drop procedure [dbo].[sp_izmeniforsk]
  51489.  
  51490. Go
  51491. CREATE procedure sp_IzmeniForsK
  51492. As
  51493.     Declare @ssql as varchar(300)
  51494.     Set @ssql='Update konfig Set forsk=Forsk+1 '
  51495.     exec(@ssql) 
  51496.  
  51497.  
  51498. Go
  51499. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrad]'))
  51500. drop procedure [dbo].[sp_izmenigrad]
  51501.  
  51502. Go
  51503. CREATE  PROCEDURE sp_IzmeniGrad
  51504.     @Sifra_Grad Smallint,
  51505.     @ImeGrad varchar(20),
  51506.     @Oddalecenost decimal(9,2) = Null,
  51507.     @BrZiteli int = Null
  51508. AS
  51509.     Declare @Propagiraj as char(1)
  51510.     Set @Propagiraj='D'
  51511.     UPDATE [Grad]
  51512.     SET [ImeGrad]=@ImeGrad, [Propagiraj]=@Propagiraj, [Oddalecenost]=@Oddalecenost, BrZiteli=@BrZiteli
  51513.     WHERE [Sifra_Grad]=@Sifra_Grad
  51514.     RETURN @@ERROR
  51515.  
  51516.  
  51517. Go
  51518. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigranal]'))
  51519. drop procedure [dbo].[sp_izmenigranal]
  51520.  
  51521. Go
  51522.  
  51523. CREATE PROCEDURE sp_IzmeniGrAnal
  51524.     @Kto_GrAn    Char(2),
  51525.     @ImeGrAn    varChar(40),
  51526.     @ImeGrAn2    varchar(40),
  51527.     @SImeGrAn    varChar(40),
  51528.     @SImeGrAn2    varchar(40)
  51529. AS
  51530.     Declare @Klas    char(3)
  51531.     SELECT @Klas = Kto_Klas FROM Klas WHERE Kto_Klas = Substring(@Kto_GrAn,1,1)
  51532.     If @Klas IS NULL
  51533.          INSERT INTO Klas (Kto_Klas, ImeKlasa) VALUES (Substring(@Kto_GrAn,1,1), 'Klasa')
  51534.     UPDATE [GrAnal]
  51535.     SET [ImeGrAn]=@ImeGrAn, [ImeGrAn2]=@ImeGrAn2, [SImeGrAn]=@SImeGrAn, [SImeGrAn2]=@SImeGrAn2,
  51536.     Kto_Klas = Substring(@Kto_GrAn,1,1)
  51537.     WHERE [Kto_GrAn]=@Kto_GrAn
  51538. RETURN @@ERROR
  51539.  
  51540.  
  51541.  
  51542. Go
  51543. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrart]'))
  51544. drop procedure [dbo].[sp_izmenigrart]
  51545.  
  51546. Go
  51547. create     PROCEDURE sp_IzmeniGrArt
  51548.     @Sif_GrArt char(6),
  51549.     @Ime_GrArt Char(30), 
  51550.     @Aktivna   char(1)
  51551.     
  51552. AS
  51553. UPDATE GrArt  SET  Ime_GrArt=@Ime_GrArt, Aktivna=@Aktivna 
  51554. WHERE Sif_GrArt=@Sif_GrArt
  51555. RETURN @@ERROR
  51556.  
  51557.  
  51558.  
  51559.  
  51560.  
  51561. Go
  51562. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigregion]'))
  51563. drop procedure [dbo].[sp_izmenigregion]
  51564.  
  51565. Go
  51566. CREATE  PROCEDURE sp_IzmeniGRegion
  51567.     @Sifra_Reg Smallint,
  51568.     @ImeRegion Varchar(40)
  51569. AS
  51570.     Declare @Propagiraj as char(1)
  51571.     Set @Propagiraj = 'D'
  51572.     UPDATE [GRegion]
  51573.     SET [ImeRegion]=@ImeRegion, [Propagiraj]=@Propagiraj
  51574.     WHERE [Sifra_Reg]=@Sifra_Reg
  51575. RETURN @@ERROR
  51576.  
  51577.  
  51578.  
  51579. Go
  51580. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrkup]'))
  51581. drop procedure [dbo].[sp_izmenigrkup]
  51582.  
  51583. Go
  51584.  
  51585.  
  51586.  
  51587.  
  51588. CREATE     PROCEDURE sp_IzmeniGrKup
  51589.     @Sif_GrKup char(6),
  51590.     @Ime_GrKup Char(30), 
  51591.     @Aktivna   char(1)
  51592.     
  51593. AS
  51594. UPDATE GrKup  SET  Ime_GrKup=@Ime_GrKup, Aktivna=@Aktivna 
  51595. WHERE Sif_GrKup=@Sif_GrKup
  51596. RETURN @@ERROR
  51597.  
  51598.  
  51599.  
  51600.  
  51601. Go
  51602. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrnar]'))
  51603. drop procedure [dbo].[sp_izmenigrnar]
  51604.  
  51605. Go
  51606.  
  51607.  
  51608. CREATE   PROCEDURE sp_IzmeniGrNar
  51609.     @Sifra_GrNar    smallint,
  51610.     @ImeGrNar    char(30),
  51611.         @VlIzlNar       char(1),
  51612.         @SifNarZatv     smallint
  51613. AS
  51614.     Update GrNar
  51615.     Set  ImeGrNar=@ImeGrNar, VlIzlNar=@VlIzlNar, SifNarZatv=@SifNarZatv
  51616.     Where Sifra_GrNar=@Sifra_GrNar
  51617.     Return @@Error
  51618.  
  51619.  
  51620.  
  51621. Go
  51622. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrorg]'))
  51623. drop procedure [dbo].[sp_izmenigrorg]
  51624.  
  51625. Go
  51626.  
  51627.  
  51628.  
  51629.  
  51630.  
  51631. CREATE      PROCEDURE sp_IzmeniGrOrg
  51632.     @Sif_GrOrg char(6),
  51633.     @Ime_GrOrg Char(30), 
  51634.     @Edinstvena char(1),
  51635.     @Aktivna   char(1),
  51636.     @GotovPro char(1)=NULL, 
  51637.     @ZaedPlanCeni char(1)= NULL,
  51638.     @DaliPogon char(1)=NULL,
  51639.     @Oznaka varchar(10)=NULL
  51640. AS
  51641. UPDATE GrOrg  SET  Ime_GrOrg=@Ime_GrOrg, Edinstvena=@Edinstvena, Aktivna=@Aktivna, 
  51642. GotovPro=@GotovPro, ZaedPlanCeni=@ZaedPlanCeni, DaliPogon=@DaliPogon, Oznaka = @Oznaka WHERE Sif_GrOrg=@Sif_GrOrg
  51643. RETURN @@ERROR
  51644.  
  51645.  
  51646.  
  51647.  
  51648.  
  51649. Go
  51650. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrpat]'))
  51651. drop procedure [dbo].[sp_izmenigrpat]
  51652.  
  51653. Go
  51654. CREATE    PROCEDURE sp_IzmeniGrPat
  51655.     @Sif_GrPat char(6),
  51656.     @Ime_GrPat Char(30)
  51657. AS
  51658.     UPDATE GrPat  
  51659.     SET  Ime_GrPat=@Ime_GrPat
  51660.     WHERE Sif_GrPat=@Sif_GrPat
  51661.     RETURN @@ERROR
  51662.  
  51663.  
  51664. Go
  51665. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrupa]'))
  51666. drop procedure [dbo].[sp_izmenigrupa]
  51667.  
  51668. Go
  51669. CREATE   PROCEDURE sp_IzmeniGrupa
  51670.         @Sifra_Gr Char(3),
  51671.         @Ime_Gr Char(25)
  51672. AS
  51673.     SET NOCOUNT ON
  51674.     Declare @Propagiraj as char(1)
  51675.     Set @Propagiraj = 'D'
  51676.     UPDATE [Grupi]
  51677.     SET [Ime_Gr]=@Ime_Gr, [Propagiraj]=@Propagiraj
  51678.     WHERE [Sifra_Gr]=@Sifra_Gr
  51679. RETURN @@ERROR
  51680.  
  51681.  
  51682.  
  51683. Go
  51684. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigrupaweb]'))
  51685. drop procedure [dbo].[sp_izmenigrupaweb]
  51686.  
  51687. Go
  51688. CREATE PROCEDURE sp_IzmeniGrupaWeb
  51689.     @Sifra_GrWeb    smallint,
  51690.     @Ime_GrWeb    nvarchar(40)
  51691. AS
  51692.     Update GrupaWeb 
  51693.     Set Ime_GrWeb=@Ime_GrWeb
  51694.     Where Sifra_GrWeb=@Sifra_GrWeb
  51695.     Return @@ERROR
  51696.  
  51697.  
  51698. Go
  51699. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigstav]'))
  51700. drop procedure [dbo].[sp_izmenigstav]
  51701.  
  51702. Go
  51703. CREATE   PROCEDURE sp_IzmeniGStav
  51704.     @GStID     int,
  51705.     @Sifra_Nal    smallint,
  51706.     @Broj_Nal    int,
  51707.     @Datum_Nal    smalldatetime,
  51708.     @Datum_Dok    smalldatetime,
  51709.     @Sifra_OE    smallint,
  51710.     @FDrugo1    smallint,
  51711.     @FDrugo2    smallint,
  51712.     @FDrugo3    smallint,
  51713.     @Kto_Anal    char(10),
  51714.     @Dolzi        decimal(18,4),
  51715.     @Pobaruva    decimal(18,4),
  51716.     @Dev_Dolzi    decimal(18,4),
  51717.     @Dev_Pobaruva decimal(18,4),
  51718.     @Kurs        decimal(18,4),
  51719.     @KojaVal    char(3),
  51720.     @Str_Kto    varchar(10),
  51721.     @Bazna_Dolzi    decimal(18,4),
  51722.     @Bazna_Pobaruva    Decimal(18,4),
  51723.     @OdKade    char(1),
  51724.     @Sts_Kniz    char(1),
  51725.     @KolkuVrski    int,
  51726.     @RbrNalog    smallint,
  51727.     @Opis        varchar(40),
  51728.     @Opis2        varchar(40) = Null,
  51729.     @Sifra_Div    smallint = Null
  51730. AS
  51731.     UPDATE  GStav SET
  51732.     Sifra_Nal = @Sifra_Nal, Broj_Nal = @Broj_Nal, Datum_Nal = @Datum_Nal,     Datum_Dok = @Datum_Dok, 
  51733.     Sifra_OE = @Sifra_OE, FDrugo1 = @FDrugo1, FDrugo2 = @FDrugo2, FDrugo3 = @FDrugo3, 
  51734.     Kto_Anal = @Kto_Anal, Dolzi = @Dolzi, Pobaruva = @Pobaruva, Dev_Dolzi = @Dev_Dolzi, 
  51735.     Dev_Pobaruva = @Dev_Pobaruva, Kurs = @Kurs, KojaVal = @KojaVal, Str_Kto = @Str_Kto, 
  51736.     Bazna_Dolzi = @Bazna_Dolzi, Bazna_Pobaruva = @Bazna_Pobaruva, OdKade = @OdKade, 
  51737.     Sts_Kniz = @Sts_Kniz, KolkuVrski = @KolkuVrski,    RbrNalog = @RbrNalog,     Opis = @Opis, Opis2=@Opis2, 
  51738.     Datum_Izm = GetDate(), Sifra_OpIz = SUser_SName(), Sifra_Div=@Sifra_Div
  51739.     WHERE GStID = @GStID
  51740. RETURN @@ERROR
  51741.  
  51742.  
  51743. Go
  51744. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigstavotvkniz]'))
  51745. drop procedure [dbo].[sp_izmenigstavotvkniz]
  51746.  
  51747. Go
  51748.  
  51749. CREATE       PROCEDURE sp_IzmeniGstavOtvKniz
  51750.     @GStID             int,
  51751.     @VrsDolzi        decimal(18,4),
  51752.     @VrsPobar        decimal(18,4),
  51753.     @VrsDevDolzi    decimal(18,4),
  51754.     @VrsDevPobar    decimal(18,4) 
  51755. AS
  51756.     UPDATE GStav SET 
  51757.     Dolzi = Dolzi - @VrsDolzi ,
  51758.     Pobaruva = Pobaruva - @VrsPobar ,
  51759.     Dev_Dolzi = Dev_Dolzi - @VrsDevDolzi ,
  51760.     Dev_Pobaruva = Dev_Pobaruva - @VrsDevPobar ,
  51761.     KolkuVrski = KolkuVrski - 1
  51762.     WHERE GStID = @GStId
  51763.  
  51764. RETURN @@ERROR
  51765.  
  51766.  
  51767.  
  51768. Go
  51769. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigstavskr]'))
  51770. drop procedure [dbo].[sp_izmenigstavskr]
  51771.  
  51772. Go
  51773.  
  51774. CREATE   PROCEDURE sp_IzmeniGStavSkr
  51775.     @GStID     int,
  51776.     @Dolzi        decimal(18,4),
  51777.     @Pobaruva    decimal(18,4),
  51778.     @Dev_Dolzi    decimal(18,4),
  51779.     @Dev_Pobaruva decimal(18,4)
  51780. AS
  51781.     UPDATE  GStav SET
  51782.     Dolzi = Dolzi+@Dolzi, Pobaruva = Pobaruva+@Pobaruva, Dev_Dolzi = Dev_Dolzi+@Dev_Dolzi, Dev_Pobaruva = Dev_Pobaruva+@Dev_Pobaruva
  51783.     WHERE GStID = @GStID
  51784. RETURN @@ERROR
  51785.  
  51786.  
  51787.  
  51788. Go
  51789. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigstavsovrska]'))
  51790. drop procedure [dbo].[sp_izmenigstavsovrska]
  51791.  
  51792. Go
  51793. CREATE    PROCEDURE  sp_IzmeniGStavSoVrska
  51794.     @GStID    Int,
  51795.     @DP        char(1),
  51796.     @DokrID    int,
  51797.     @Iznos        decimal(18,2)
  51798. AS
  51799.     Declare @IznosSt  decimal(18,2)
  51800.     IF @DP = 'D'
  51801.         SELECT @IznosSt = Dolzi FROM FAvtVrski WHERE GStID = @GStID AND DokrID = @DokrID AND Dolzi <> 0
  51802.     ELSE
  51803.         SELECT @IznosSt = Pobaruva FROM FAvtVrski WHERE GStID = @GStID AND DokrID = @DokrID AND Pobaruva <> 0
  51804.     IF @DP = 'D'
  51805.     Begin
  51806.         UPDATE GStav SET Dolzi = Dolzi - @IznosSt + @Iznos WHERE GStID = @GStID
  51807.         UPDATE FAvtVrski SET Dolzi = @Iznos WHERE GStID = @GStID AND DokrID = @DokrID AND Dolzi <> 0
  51808.     End
  51809.     ELSE
  51810.     Begin
  51811.         UPDATE GStav SET Pobaruva = Pobaruva - @IznosSt + @Iznos WHERE GStID = @GStID
  51812.         UPDATE FAvtVrski SET Pobaruva = @Iznos WHERE GStID = @GStID AND DokrID = @DokrID AND Pobaruva <> 0
  51813.     End
  51814.     RETURN @@ERROR
  51815.  
  51816.  
  51817. Go
  51818. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenigtipkup]'))
  51819. drop procedure [dbo].[sp_izmenigtipkup]
  51820.  
  51821. Go
  51822. CREATE  PROCEDURE sp_IzmeniGTipKup
  51823.     @TipKup Varchar(11),
  51824.     @ImeTipKup Varchar(40)
  51825. AS
  51826.     Declare @Propagiraj as char(1)
  51827.     Set @Propagiraj='D'
  51828.     UPDATE [GTipKup]
  51829.     SET [ImeTipKup]=@ImeTipKup, [Propagiraj]=@Propagiraj
  51830.     WHERE [TipKup]=@TipKup
  51831. RETURN @@ERROR
  51832.  
  51833.  
  51834.  
  51835. Go
  51836. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenihilzni]'))
  51837. drop procedure [dbo].[sp_izmenihilzni]
  51838.  
  51839. Go
  51840.  
  51841. CREATE   PROCEDURE sp_IzmeniHilzni
  51842.         @Sifra_Hilzna smallint,
  51843.         @Ime_Hilzna Varchar(50),
  51844.         @Tezina_Hilzna decimal(18,6),
  51845.         @Sirina_Hilzna decimal(18,6),
  51846.         @Precnik_Hilzna decimal(18,6),
  51847.         @Aktivna char(1)
  51848. AS
  51849.     UPDATE Hilzni
  51850.     SET Ime_Hilzna=@Ime_Hilzna, Tezina_Hilzna=@Tezina_Hilzna, Sirina_Hilzna=@Sirina_Hilzna,  Precnik_Hilzna = @Precnik_Hilzna,  Aktivna=@Aktivna
  51851.     WHERE Sifra_Hilzna=@Sifra_Hilzna
  51852. RETURN @@ERROR
  51853.  
  51854.  
  51855.  
  51856. Go
  51857. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikarakterist]'))
  51858. drop procedure [dbo].[sp_izmenikarakterist]
  51859.  
  51860. Go
  51861.  
  51862.  
  51863.  
  51864. CREATE     PROCEDURE sp_IzmeniKarakterist
  51865.     @Sifra_Karakt    SMALLINT,
  51866.     @ImeKarakt    NVARCHAR(40),
  51867.     @SkrOzn        varchar (30) = Null,
  51868.     @MaxDec        smallint = Null,
  51869.     @DefVredn    decimal (18, 6) = 0
  51870.  
  51871. AS
  51872.  
  51873.     UPDATE Karakterist 
  51874.     SET ImeKarakt = @ImeKarakt, 
  51875.         SkrOzn = @SkrOzn, 
  51876.         MaxDec = @MaxDec,
  51877.         DefVredn = @DefVredn
  51878.     WHERE Sifra_Karakt = @Sifra_Karakt
  51879.  
  51880.  
  51881.  
  51882.  
  51883.  
  51884.  
  51885.  
  51886. Go
  51887. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikartdepoz]'))
  51888. drop procedure [dbo].[sp_izmenikartdepoz]
  51889.  
  51890. Go
  51891.  
  51892. CREATE  PROCEDURE sp_IzmeniKartDepoz
  51893.     @Broj_Depoz        int,
  51894.     @Sifra_Kup char(6),
  51895.     @Sifra_Kor varchar(20),
  51896.     @Datum smalldatetime,
  51897.     @Primen_Izn decimal(18, 2),
  51898.     @Vraten_Izn decimal(18, 2)
  51899. AS
  51900.     Update KartDepoz
  51901.     Set
  51902.         Sifra_Kup = @Sifra_Kup,
  51903.         Sifra_Kor = @Sifra_Kor,
  51904.         Datum = @Datum,
  51905.         Primen_Izn = @Primen_Izn,
  51906.         Vraten_Izn = @Vraten_Izn
  51907.     Where Broj_Depoz = @Broj_Depoz
  51908.     Return @@ERROR
  51909.  
  51910.  
  51911.  
  51912. Go
  51913. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikartkor]'))
  51914. drop procedure [dbo].[sp_izmenikartkor]
  51915.  
  51916. Go
  51917.  
  51918.  
  51919. CREATE         PROCEDURE sp_IzmeniKartKor
  51920.     @Sifra_Oe    smallint,
  51921.     @Sifra_Kor    varchar(20),    
  51922.     @ImeKor    varchar(40),    
  51923.     @SMesto    char(20),
  51924.     @Adresa    char(30),
  51925.     @Posta        char(5),    
  51926.     @Telefon    char(12),
  51927.     @LK        char(15),
  51928.     @Aktiven    char(1),    
  51929.     @Nov_Limit    decimal(18,6),    
  51930.     @Sifra_Kup    char(6),
  51931.     @Sifra_TipKartKor    smallint = Null,
  51932.     @Poc_Popust    decimal(6,2) = Null,
  51933.     @ImeKor2    varchar(40) = Null,
  51934.     @MaticenBr2    varchar(15) = Null,
  51935.     @ImeKor3    varchar(40) = Null,
  51936.     @MaticenBr3    varchar(15) = Null,
  51937.     @RegBrLK    varchar(10) = Null,
  51938.         @RegBrKor2    varchar(10) = Null,
  51939.         @RegBrKor3    varchar(10) = Null,
  51940.     --cosmo
  51941.     @Ime           varchar(40) = Null,
  51942.     @Sredno_Ime    varchar(20) = Null,
  51943.     @Prezime       varchar(40) = Null,
  51944.     @Datum_Rag     smalldatetime = Null,
  51945.     @Email         varchar(50) = Null,
  51946.     @Pol           char(1) = Null,
  51947.     @Profesija     varchar(50) = Null,
  51948.     @BracenStatus  char(1) = Null,
  51949.     @Sifra_Kor_Osn varchar(20) = Null,
  51950.     @Tel2           varchar(20) = Null,
  51951.     @TelMobil      varchar(20) = Null,
  51952.     @ZabelKart     varchar(50) = Null,
  51953.     @Sifra_Oe_POdigni smallint = null
  51954. AS
  51955.  
  51956.     Update KartKor 
  51957.     Set  ImeKor=@ImeKor, SMesto=@SMesto, Adresa=@Adresa, Posta=@Posta, Telefon=@telefon, LK=@LK, Aktiven=@Aktiven, 
  51958.     Novi_Limi=@Nov_Limit, Sifra_Kup=@Sifra_Kup, IzmenetNa=GetDate(), IzmenetOd=SUser_SName(), Sifra_TipKartKor = @Sifra_TipKartKor,
  51959.     Poc_Popust = @Poc_Popust, ImeKor2=@ImeKor2, MaticenBr2=@MaticenBr2, ImeKor3=@ImeKor3, MaticenBr3=@MaticenBr3, 
  51960.     RegBrLK=@RegBrLK, RegBrKor2=@RegBrKor2, RegBrKor3=@RegBrKor3, Ime=@Ime, Sredno_Ime = @Sredno_Ime, Prezime = @Prezime,
  51961.     Datum_Rag = @Datum_Rag, Email = @Email, Pol = @Pol, Profesija = @Profesija, BracenStatus= @BracenStatus, 
  51962.     Sifra_Kor_Osn = @Sifra_Kor_Osn, Tel2 = @Tel2, TelMobil = @TelMobil, ZabelKart = @ZabelKart, Sifra_Oe_POdigni=@Sifra_Oe_POdigni
  51963.     Where Sifra_Oe=@Sifra_Oe and Sifra_Kor=@Sifra_Kor
  51964.  
  51965.     Return @@ERROR
  51966.  
  51967.  
  51968.  
  51969.  
  51970.  
  51971.  
  51972.  
  51973.  
  51974. Go
  51975. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikartprom]'))
  51976. drop procedure [dbo].[sp_izmenikartprom]
  51977.  
  51978. Go
  51979. CREATE  PROCEDURE sp_IzmeniKartProm
  51980.     @Sifra_Mark    smallint,
  51981.     @Sifra_Oe    smallint,
  51982.     @Broj_ska    int,
  51983.     @Sifra_Kor    varchar(20),
  51984.     @Sifra_Nac    smallint,
  51985.     @Datum_Ska    smalldatetime,
  51986.     @Dolzi        decimal(18,6),
  51987.     @Pobaruva    decimal(18,6),
  51988.     @FraUpl    char(1),
  51989.     @Sifra_Kup    char(6) = Null,
  51990.     @KlubDolzi    decimal(18,6) = Null
  51991.  AS
  51992.     Update KartProm 
  51993.     Set Dolzi=@Dolzi, Pobaruva=@Pobaruva, FraUpl=@FraUpl, Sifra_Kup=@Sifra_Kup, KlubDolzi=@KlubDolzi
  51994.     Where Sifra_Mark=@Sifra_Mark and Sifra_Oe=@Sifra_Oe and Broj_ska=@Broj_Ska and Sifra_Kor=@Sifra_Kor and Sifra_Nac=@Sifra_Nac and Datum_Ska=@Datum_Ska
  51995.     Return @@ERROR
  51996.  
  51997.  
  51998. Go
  51999. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikasdnevn]'))
  52000. drop procedure [dbo].[sp_izmenikasdnevn]
  52001.  
  52002. Go
  52003. CREATE PROCEDURE sp_IzmeniKasDnevn
  52004.     @DnID        int,
  52005.     @Sifra_Nal    smallint,
  52006.     @Broj_Nal    int,
  52007.     @Datum_Nal    smalldatetime,
  52008.     @Datum_Vnes    smalldatetime,
  52009.     @Datum_Knz    smalldatetime,
  52010.     @Sts_Kniz    char(1),
  52011.     @Sifra_Oper    char(2)=null,
  52012.     @MaxObidi    Smallint = 20
  52013. AS
  52014.     UPDATE KasDnevn 
  52015.     SET Sifra_Nal=@Sifra_Nal, Broj_Nal=@Broj_Nal, Datum_Nal=@Datum_Nal, Datum_Vnes=@Datum_Vnes,
  52016.           Datum_Knz=@Datum_Knz, Sts_Kniz=@Sts_Kniz, Sifra_Oper=@Sifra_Oper WHERE DnID=@DnID
  52017.     RETURN @@Error
  52018.  
  52019.  
  52020. Go
  52021. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikasstav]'))
  52022. drop procedure [dbo].[sp_izmenikasstav]
  52023.  
  52024. Go
  52025.  
  52026.  
  52027.  
  52028.  
  52029. CREATE     PROCEDURE sp_IzmeniKasStav
  52030.     @Broj_dok    int,
  52031.     @Sifra_Nal    smallint,
  52032.     @Broj_Nal    int,
  52033.     @Dod_Datum    smalldatetime,
  52034.     @P_I        char(1),
  52035.     @Kto_Anal    char(10),
  52036.     @Dolzi        decimal(18,4),
  52037.     @Pobaruva    decimal(18,4),
  52038.     @Lice        char(30),
  52039.     @SMesto    char(20),
  52040.     @Opis        char(30),
  52041.     @Opis2        char(30),
  52042.     @Sifra_Kup    char(6),
  52043.     @KojaVal    char(3),
  52044.     @Kurs        decimal(18,8),
  52045.     @Dev_Dolzi    decimal(18,4),
  52046.     @Dev_Pobar    decimal(18,4),
  52047. --    @Sifra_Oper    char(2) = null,
  52048.     @USG        char (1),
  52049.     @KasaGrupa    varchar(10),
  52050.     @Posn        decimal(6,2),
  52051.     @Sifra_Oe    smallint = Null,
  52052.     @Sifra_Div    smallint = Null,
  52053.         @DokrId        int = Null,
  52054.     @Sifra_Nac    smallint = Null,
  52055.         @Danok1            decimal(18,4)=null,
  52056.         @Danok2            decimal(18,4)=null,
  52057.         @Kto_Osnovica        char(10)=null
  52058. AS
  52059.     Update KasStav
  52060.     Set   Broj_Nal=@Broj_Nal, Dod_Datum=@Dod_Datum,
  52061.         Kto_Anal=@Kto_Anal, Dolzi=@Dolzi, Pobaruva=@Pobaruva, Lice=@Lice, SMesto=@SMesto, Opis=@Opis, Opis2=@Opis2,
  52062.         Sifra_Kup=@Sifra_Kup, KojaVal=@KojaVal, Kurs=@Kurs, Dev_Dolzi=@Dev_Dolzi, Dev_Pobar=@Dev_Pobar,
  52063.         USG=@USG, KasaGrupa=@KasaGrupa, Datum_Izm=getdate(), Sifra_OpIz=SUser_SName(), AnID=NULL, Posn=@Posn, 
  52064.         Sifra_Oe=@Sifra_Oe, Sifra_Div=@Sifra_Div, DokrId=@DokrId, Proknizen=Null, Sifra_Nac=@Sifra_Nac,
  52065.                 Danok1=@Danok1, Danok2=@Danok2, Kto_Osnovica=@Kto_Osnovica 
  52066.     Where Sifra_Nal=@Sifra_Nal and Broj_Dok=@Broj_Dok and P_I=@P_I 
  52067.     RETURN @@ERROR
  52068.  
  52069.  
  52070.  
  52071.  
  52072. Go
  52073. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikasstav4]'))
  52074. drop procedure [dbo].[sp_izmenikasstav4]
  52075.  
  52076. Go
  52077.  
  52078.  
  52079.  
  52080.  
  52081. CREATE    PROCEDURE sp_IzmeniKasStav4
  52082.     @Broj_dok    int,
  52083.     @Sifra_Nal    smallint,
  52084.     @Broj_Nal    int,
  52085.     @Dod_Datum    smalldatetime,
  52086.     @P_I        char(1),
  52087.     @Kto_Anal    char(10),
  52088.     @Dolzi        decimal(18,4),
  52089.     @Pobaruva    decimal(18,4),
  52090.     @Lice        char(30),
  52091.     @SMesto    char(20),
  52092.     @Opis        char(30),
  52093.     @Opis2        char(30),
  52094.     @Sifra_Kup    char(6),
  52095.     @KojaVal    char(3),
  52096.     @Kurs        decimal(18,8),
  52097.     @Dev_Dolzi    decimal(18,4),
  52098.     @Dev_Pobar    decimal(18,4),
  52099. --    @Sifra_Oper    char(2) = null,
  52100.     @USG        char (1),
  52101.     @KasaGrupa    varchar(10),
  52102.     @Posn        decimal(6,2),
  52103.     @Sifra_Oe    smallint = Null,
  52104.     @Sifra_Div    smallint = Null,
  52105.     @DokrId        int = Null,
  52106.     @Sifra_Nac    smallint = Null,
  52107.     @TipBlag    char(3)
  52108. AS
  52109.     Update KasStav
  52110.     Set   Broj_Nal=@Broj_Nal, Dod_Datum=@Dod_Datum,
  52111.         Kto_Anal=@Kto_Anal, Dolzi=@Dolzi, Pobaruva=@Pobaruva, Lice=@Lice, SMesto=@SMesto, Opis=@Opis, Opis2=@Opis2,
  52112.         Sifra_Kup=@Sifra_Kup, KojaVal=@KojaVal, Kurs=@Kurs, Dev_Dolzi=@Dev_Dolzi, Dev_Pobar=@Dev_Pobar,
  52113.         USG=@USG, KasaGrupa=@KasaGrupa, Datum_Izm=getdate(), Sifra_OpIz=SUser_SName(), AnID=NULL, Posn=@Posn, 
  52114.         Sifra_Oe=@Sifra_Oe, Sifra_Div=@Sifra_Div, DokrId=@DokrId, Proknizen=Null, Sifra_Nac=@Sifra_Nac
  52115.     Where Sifra_Nal=@Sifra_Nal and Broj_Dok=@Broj_Dok and P_I=@P_I AND TipBlag=@TipBlag
  52116.     RETURN @@ERROR
  52117.  
  52118.  
  52119.  
  52120. Go
  52121. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatamb]'))
  52122. drop procedure [dbo].[sp_izmenikatamb]
  52123.  
  52124. Go
  52125.  
  52126. CREATE   PROCEDURE sp_IzmeniKatAmb
  52127.     @Sifra_Amb    char(6),
  52128.     @ImeAmb    char(30),
  52129.     @SodrziArt    decimal(12,4),
  52130.     @Sifra_GAmb    char(6),
  52131.     @VoGAmb    decimal(12,4),
  52132.     @Povratna    char(1) = Null,
  52133.     @DaliPlastika    char(1) = Null,
  52134.     @Tezina_Amb    decimal(9,3) = Null
  52135. AS
  52136.     Declare @Propagiraj as char(1)
  52137.     Set @Propagiraj='D'
  52138.     Update KatAmb
  52139.     Set ImeAmb=@ImeAmb, SodrziArt=@SodrziArt, Sifra_GAmb=@Sifra_GAmb, IzmenetNa=GetDate(), IzmenetOd=SUser_SName(), 
  52140.         VoGAmb=@VoGAmb, Propagiraj=@Propagiraj, Povratna=@Povratna, DaliPlastika=@DaliPlastika, Tezina_Amb=@Tezina_Amb
  52141.     Where Sifra_Amb=@Sifra_Amb 
  52142.     Return @@ERROR
  52143.  
  52144.  
  52145. Go
  52146. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatgamb]'))
  52147. drop procedure [dbo].[sp_izmenikatgamb]
  52148.  
  52149. Go
  52150.  
  52151. CREATE  PROCEDURE sp_IzmeniKatGAmb
  52152.     @Sifra_GAmb    char(6),
  52153.     @ImeGAmb    char(30),
  52154.     @SodrziAmb    decimal(12,4)
  52155.  AS
  52156.     Declare @Propagiraj as char(1)
  52157.     Set @Propagiraj='D'
  52158.     Update KatGAmb
  52159.     Set ImeGAmb=@ImeGAmb, SodrziAmb=@SodrziAmb, IzmenetNa=GetDate(), IzmenetOd=SUser_SName(), Propagiraj=@Propagiraj
  52160.     Where Sifra_GAmb=@Sifra_GAmb
  52161.     Return @@Error
  52162.  
  52163.  
  52164.  
  52165. Go
  52166. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikathier]'))
  52167. drop procedure [dbo].[sp_izmenikathier]
  52168.  
  52169. Go
  52170.  
  52171. create PROCEDURE sp_IzmeniKatHier
  52172.     @Sifra_KHier nvarChar(20),
  52173.     @Ime_KHier nvarChar(50),
  52174.     @Alt_ImeKHier nvarChar(50),
  52175.     @Sifra_KHier_Hier nvarChar(20)
  52176. AS
  52177.     SET NOCOUNT ON
  52178.     UPDATE [KatHier]
  52179.     SET Ime_KHier=@Ime_KHier, Alt_ImeKHier=@Alt_ImeKHier, Sifra_KHier_Hier=@Sifra_KHier_Hier
  52180.     WHERE Sifra_KHier=@Sifra_KHier
  52181. RETURN @@ERROR
  52182.  
  52183.  
  52184.  
  52185. Go
  52186. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatkarakt]'))
  52187. drop procedure [dbo].[sp_izmenikatkarakt]
  52188.  
  52189. Go
  52190. CREATE PROCEDURE sp_IzmeniKatKarakt
  52191.     @Sifra_Art        VARCHAR(20),
  52192.     @Rbr            SMALLINT,
  52193.     @Sifra_Karakt    SMALLINT,
  52194.     @Karakt            NVARCHAR(200)=  NULL
  52195. AS
  52196.     UPDATE KatKarakt SET
  52197.         Sifra_Karakt = @Sifra_Karakt,
  52198.         Karakt = @Karakt
  52199.     WHERE Sifra_Art=@Sifra_Art AND Rbr=@Rbr
  52200.  
  52201.  
  52202.  
  52203. Go
  52204. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatpakuv]'))
  52205. drop procedure [dbo].[sp_izmenikatpakuv]
  52206.  
  52207. Go
  52208.  
  52209.  
  52210. CREATE   PROCEDURE sp_IzmeniKatPakuv
  52211.     @Sifra_Art        varchar(    20),
  52212.     @Sifra_KatPak        smallint,
  52213.     @ImeKatPak        varchar(30),
  52214.     @Sodrzi_Kolic        decimal(18,6),
  52215.     @Sifra_KatPak_Pomalo    smallint,
  52216.     @Nom_Pakuv        varchar(50) = Null,
  52217.     @Nom_Pomalo        varchar(50) = Null
  52218.  AS
  52219.     Update KatPakuv 
  52220.     Set ImeKatPak=@ImeKatPak, Sodrzi_Kolic=@Sodrzi_Kolic, Sifra_KatPak_Pomalo=@Sifra_KatPak_Pomalo,
  52221.             Nom_Pakuv=@Nom_Pakuv, Nom_Pomalo=@Nom_Pomalo
  52222.     Where Sifra_Art=@Sifra_Art And Sifra_KatPak=@Sifra_KatPak
  52223.     Return @@ERROR
  52224.  
  52225.  
  52226.  
  52227. Go
  52228. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatserbr]'))
  52229. drop procedure [dbo].[sp_izmenikatserbr]
  52230.  
  52231. Go
  52232. CREATE   PROCEDURE sp_IzmeniKatSerBr
  52233.     @KontrSer    varchar(25),
  52234.     @Sifra_Art    varchar(20),
  52235.     @Dolzina_Proiz    int, 
  52236.     @Tezina_Dara    decimal(18,4),
  52237.     @Tezina_Bruto    decimal(18,4),
  52238.     @Tezina_Neto    decimal(18,4),
  52239.     @Precnik_Proiz    decimal(9,4),
  52240.     @Sifra_Boja    smallint,
  52241.     @Broj_Prekini    int,
  52242.     @Vreme_Pocetok    smalldatetime,
  52243.     @Vreme_Kraj    smalldatetime,
  52244.     @Sirina_Proiz    decimal(18,4),
  52245.     @Precnik_Amb    decimal(18,4),
  52246.     @Kolku_Edinici    decimal(9,0),
  52247.     @Kolic    int,
  52248.     @OznPodBr    varchar(20) = Null,
  52249.     @Sifra_Hilzna    int = Null,
  52250.     @Sifra_OeRab     smallint = Null,
  52251.     @Broj_RabN     int = Null,
  52252.     @Kvalitet    varchar(10) = Null
  52253. AS
  52254.     Update KatSerBr
  52255.     Set Sifra_Art=@Sifra_Art, Dolzina_Proiz=@Dolzina_Proiz, Tezina_Dara=@Tezina_Dara, Tezina_Bruto=@Tezina_Bruto, Tezina_Neto=@Tezina_Neto, 
  52256.         Precnik_Proiz=@Precnik_Proiz, Sifra_Boja=@Sifra_Boja, Broj_Prekini=@Broj_Prekini, Vreme_Pocetok=@Vreme_Pocetok, Vreme_Kraj=@Vreme_Kraj, 
  52257.         Sirina_Proiz=@Sirina_Proiz, Precnik_Amb=@Precnik_Amb, Kolku_Edinici=@Kolku_Edinici, Kolic=@Kolic, OznPodBr=@OznPodBr, Sifra_Hilzna=@Sifra_Hilzna,
  52258.         Sifra_OeRab=@Sifra_OeRab, Broj_RabN = @Broj_RabN, Kvalitet=@Kvalitet
  52259.     Where KontrSer=@KontrSer 
  52260.     Return @@ERROR
  52261.  
  52262.  
  52263. Go
  52264. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatserbranaliza]'))
  52265. drop procedure [dbo].[sp_izmenikatserbranaliza]
  52266.  
  52267. Go
  52268. CREATE PROCEDURE sp_IzmeniKatSerBrAnaliza
  52269.     @KontrSer    varchar(25),
  52270.     @Tez1        decimal(9,4) = Null, 
  52271.     @Tez2        decimal(9,4) = Null, 
  52272.     @Tez3        decimal(9,4) = Null, 
  52273.     @Tez4        decimal(9,4) = Null, 
  52274.     @Tez5        decimal(9,4) = Null, 
  52275.     @Tez6        decimal(9,4) = Null, 
  52276.     @Tez7        decimal(9,4) = Null, 
  52277.     @Tez8        decimal(9,4) = Null, 
  52278.     @Tez9        decimal(9,4) = Null, 
  52279.     @Tez10    decimal(9,4) = Null, 
  52280.     @Vlaga1    decimal(9,4) = Null, 
  52281.     @Pepel1    decimal(9,4) = Null, 
  52282.     @Izdolz1    decimal(9,4) = Null, 
  52283.     @Kinenje1    decimal(9,4) = Null, 
  52284.     @COBB1    decimal(9,4) = Null, 
  52285.     @Satinaza1    decimal(9,4) = Null, 
  52286.     @Belina1    decimal(9,4) = Null, 
  52287.     @Kleenje1    decimal(9,4) = Null, 
  52288.     @Vlaga2    decimal(9,4) = Null, 
  52289.     @Pepel2    decimal(9,4) = Null, 
  52290.     @Izdolz2    decimal(9,4) = Null, 
  52291.     @Kinenje2    decimal(9,4) = Null, 
  52292.     @COBB2    decimal(9,4) = Null, 
  52293.     @Satinaza2    decimal(9,4) = Null, 
  52294.     @Belina2    decimal(9,4) = Null, 
  52295.     @Kleenje2    decimal(9,4) = Null, 
  52296.     @Kvalitet    char(1) = Null
  52297. AS
  52298.     Update KatSerBrAnaliza 
  52299.     Set Tez1=@Tez1, Tez2=@Tez2, Tez3=@Tez3, Tez4=@Tez4, Tez5=@Tez5, 
  52300.         Tez6=@Tez6, Tez7=@Tez7, Tez8=@Tez8, Tez9=@Tez9, Tez10=@Tez10, Vlaga1=@Vlaga1, 
  52301.         Pepel1=@Pepel1, Izdolz1=@Izdolz1, Kinenje1=@Kinenje1, COBB1=@COBB1, Satinaza1=@Satinaza1, 
  52302.         Belina1=@Belina1, Kleenje1=@Kleenje1, Vlaga2=@Vlaga2, Pepel2=@Pepel2, Izdolz2=@Izdolz2, 
  52303.         Kinenje2=@Kinenje2, COBB2=@COBB2, Satinaza2=@Satinaza2, Belina2=@Belina2, Kleenje2=@Kleenje2, 
  52304.         Kvalitet=@Kvalitet
  52305.     Where KontrSer=@KontrSer
  52306.     Return @@ERROR
  52307.  
  52308.  
  52309.  
  52310. Go
  52311. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatserklas]'))
  52312. drop procedure [dbo].[sp_izmenikatserklas]
  52313.  
  52314. Go
  52315.  
  52316.  
  52317.  
  52318.  
  52319. CREATE     PROCEDURE sp_IzmeniKatSerKlas
  52320.     @Sifra_Art    varchar(20),
  52321.     @KontrSer    varchar(30),
  52322.     @KontrSerExt    varchar(30),
  52323.     @AltKontrSer    varchar(30) = Null,
  52324.     @GodProiz    smallint = Null,
  52325.     @Opis        nvarchar(300) = Null,
  52326.     @Sifra_3    smallint = Null,
  52327.     @Masa_Kgr    decimal(9,3) = Null,
  52328.     @Sila_KW    decimal(9,3) = Null
  52329.  
  52330. AS
  52331.  
  52332.     Update KatSerKlas
  52333.     Set KontrSerExt = @KontrSerExt,
  52334.         AltKontrSer = @AltKontrSer, GodProiz = @GodProiz, Opis = @Opis,
  52335.         Sifra_3 = @Sifra_3, Masa_Kgr = @Masa_Kgr, Sila_KW = @Sila_KW
  52336.     Where Sifra_Art = @Sifra_Art and KontrSer = @KontrSer 
  52337.  
  52338.     Return @@ERROR
  52339.  
  52340.  
  52341.  
  52342.  
  52343.  
  52344.  
  52345.  
  52346.  
  52347.  
  52348. Go
  52349. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatsliki]'))
  52350. drop procedure [dbo].[sp_izmenikatsliki]
  52351.  
  52352. Go
  52353.  
  52354.  
  52355. CREATE   PROCEDURE sp_IzmeniKatSliki
  52356.     @Sifra_Art    varchar(    20),
  52357.     @SlikaArt    image, 
  52358.     @ImeFile    varchar(100) = Null
  52359. AS
  52360.     Update KatSliki 
  52361.     Set SlikaArt=@SlikaArt, ImeFile=@ImeFile
  52362.     Where Sifra_Art=@Sifra_Art 
  52363.     Return @@ERROR
  52364.  
  52365.  
  52366.  
  52367. Go
  52368. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatspectipmat]'))
  52369. drop procedure [dbo].[sp_izmenikatspectipmat]
  52370.  
  52371. Go
  52372.  
  52373.  
  52374. create     PROCEDURE sp_IzmeniKatSpecTipMat
  52375.     @Sifra_TipMat Smallint,
  52376.     @ImeTipMat    nvarchar(50),
  52377.     @Aktiven char(1) = "D",
  52378.     @Povratna char(1)="N",
  52379.         @Tip char(1),
  52380.         @Param1 decimal(18,6),
  52381.         @Param2 decimal(18,6) 
  52382. AS
  52383.     UPDATE [KatSpecTipMat]
  52384.     SET [ImeTipMat] = @ImeTipMat, 
  52385.         [Aktiven] = @Aktiven,
  52386.             [Tip] = @Tip,
  52387.         [Povratna] = @Povratna,
  52388.             [Param1] = @Param1,
  52389.             [Param2] = @Param2 
  52390.     WHERE [Sifra_TipMat]=@Sifra_TipMat
  52391.  
  52392. RETURN @@ERROR
  52393.  
  52394.  
  52395. Go
  52396. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikatstatus]'))
  52397. drop procedure [dbo].[sp_izmenikatstatus]
  52398.  
  52399. Go
  52400. CREATE PROCEDURE sp_IzmeniKatStatus
  52401.     @Sifra_KatStatus     smallint,
  52402.     @ImeKatStatus         varchar(30),
  52403.     @MozeProdazba     char(1),
  52404.     @Nivo_Cena         smallint
  52405. AS
  52406.     Update KatStatus 
  52407.     Set ImeKatStatus=@ImeKatStatus, MozeProdazba=@MozeProdazba, Nivo_Cena=@Nivo_Cena
  52408.     Where Sifra_KatStatus=@Sifra_KatStatus
  52409.     Return @@ERROR
  52410.  
  52411.  
  52412.  
  52413. Go
  52414. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikbanki]'))
  52415. drop procedure [dbo].[sp_izmenikbanki]
  52416.  
  52417. Go
  52418. CREATE PROCEDURE sp_IzmeniKbanki 
  52419.     @Sifra_Kup    char(6),
  52420.     @RbrBan    Smallint,
  52421.     @ZiroSka    varchar(20),
  52422.     @Sifra_Ban    char(6),
  52423.     @ImeKor    varchar(30) = Null
  52424. AS
  52425.     Declare @Propagiraj char(1)
  52426.     Set @Propagiraj='D'
  52427.     Update Kbanki 
  52428.     Set ZiroSka=@ZiroSka, Sifra_Ban=@Sifra_Ban, ImeKor=@ImeKor, Propagiraj=@Propagiraj
  52429.     Where Sifra_Kup=@Sifra_Kup and RbrBan=@RbrBan
  52430.     Return @@ERROR
  52431.  
  52432.  
  52433.  
  52434. Go
  52435. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikdrugo1]'))
  52436. drop procedure [dbo].[sp_izmenikdrugo1]
  52437.  
  52438. Go
  52439.  
  52440. CREATE    PROCEDURE sp_IzmeniKDrugo1
  52441.     @Sifra Smallint,
  52442.     @Ime varchar(30),
  52443.     @Kompr char(1) = Null,
  52444.     @Cena decimal(12,2)=Null
  52445.  
  52446. AS
  52447.  
  52448.     Declare @Propagiraj as char(1)
  52449.     Set @Propagiraj = 'D'
  52450.     UPDATE [KDrugo1]
  52451.     SET [Ime_1k] = @Ime, 
  52452.         [Propagiraj] = @Propagiraj,
  52453.         Kompr = @Kompr,
  52454.         Cena = @Cena
  52455.     WHERE [Sifra_1k]=@Sifra
  52456.  
  52457. RETURN @@ERROR
  52458.  
  52459. Go
  52460. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikdrugo2]'))
  52461. drop procedure [dbo].[sp_izmenikdrugo2]
  52462.  
  52463. Go
  52464.  
  52465. CREATE    PROCEDURE sp_IzmeniKDrugo2
  52466.     @Sifra Smallint,
  52467.     @Ime varchar(30),
  52468.     @SlobRabat chaR(1)
  52469.  
  52470. AS
  52471.  
  52472.     Declare @Propagiraj as char(1)
  52473.     Set @Propagiraj = 'D'
  52474.  
  52475.     UPDATE [KDrugo2]
  52476.     SET [Ime_2k]=@Ime, [Propagiraj]=@Propagiraj,
  52477.         SlobRabat = @SlobRabat
  52478.     WHERE [Sifra_2k]=@Sifra
  52479.  
  52480. RETURN @@ERROR
  52481.  
  52482.  
  52483.  
  52484.  
  52485.  
  52486. Go
  52487. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikdrugo3]'))
  52488. drop procedure [dbo].[sp_izmenikdrugo3]
  52489.  
  52490. Go
  52491. CREATE   PROCEDURE sp_IzmeniKDrugo3
  52492.     @Sifra Smallint,
  52493.     @Ime varchar(30)
  52494. AS
  52495.     Declare @Propagiraj as char(1)
  52496.     Set @Propagiraj = 'D'
  52497.     UPDATE [KDrugo3]
  52498.     SET [Ime_3k]=@Ime, [Propagiraj]=@Propagiraj
  52499.     WHERE [Sifra_3k]=@Sifra
  52500. RETURN @@ERROR
  52501.  
  52502.  
  52503.  
  52504. Go
  52505. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikdrugo4]'))
  52506. drop procedure [dbo].[sp_izmenikdrugo4]
  52507.  
  52508. Go
  52509. CREATE   PROCEDURE sp_IzmeniKDrugo4
  52510.     @Sifra Smallint,
  52511.     @Ime varchar(30),
  52512.     @Denovi smallint = Null, 
  52513.     @Uces    decimal(6,2) = Null
  52514. AS
  52515.     Declare @Propagiraj as char(1)
  52516.     Set @Propagiraj='D'
  52517.     UPDATE [KDrugo4]
  52518.     SET [Ime_4k]=@Ime, [Propagiraj]=@Propagiraj, [Denovi]=@Denovi, [Uces]=@Uces    
  52519.     WHERE [Sifra_4k]=@Sifra
  52520. RETURN @@ERROR
  52521.  
  52522.  
  52523.  
  52524. Go
  52525. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikdrugo5]'))
  52526. drop procedure [dbo].[sp_izmenikdrugo5]
  52527.  
  52528. Go
  52529. CREATE   PROCEDURE sp_IzmeniKDrugo5
  52530.     @Sifra Smallint,
  52531.     @Ime varchar(30)
  52532. AS
  52533.     Declare @Propagiraj as char(1)
  52534.     Set @Propagiraj='D'
  52535.     UPDATE [KDrugo5]
  52536.     SET [Ime_5k]=@Ime, [Propagiraj]=@Propagiraj
  52537.     WHERE [Sifra_5k]=@Sifra
  52538. RETURN @@ERROR
  52539.  
  52540.  
  52541.  
  52542. Go
  52543. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikdrugo6]'))
  52544. drop procedure [dbo].[sp_izmenikdrugo6]
  52545.  
  52546. Go
  52547.  
  52548. create    PROCEDURE sp_IzmeniKDrugo6
  52549.     @Sifra Smallint,
  52550.     @Ime varchar(30)
  52551. AS
  52552.     Declare @Propagiraj as char(1)
  52553.     Set @Propagiraj='D'
  52554.     UPDATE [KDrugo6]
  52555.     SET [Ime_6k]=@Ime, [Propagiraj]=@Propagiraj
  52556.     WHERE [Sifra_6k]=@Sifra
  52557. RETURN @@ERROR
  52558.  
  52559.  
  52560.  
  52561. Go
  52562. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikdrugo7]'))
  52563. drop procedure [dbo].[sp_izmenikdrugo7]
  52564.  
  52565. Go
  52566.  
  52567. create    PROCEDURE sp_IzmeniKDrugo7
  52568.     @Sifra Smallint,
  52569.     @Ime varchar(30)
  52570. AS
  52571.     Declare @Propagiraj as char(1)
  52572.     Set @Propagiraj='D'
  52573.     UPDATE [KDrugo7]
  52574.     SET [Ime_7k]=@Ime, [Propagiraj]=@Propagiraj
  52575.     WHERE [Sifra_7k]=@Sifra
  52576. RETURN @@ERROR
  52577.  
  52578.  
  52579.  
  52580. Go
  52581. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniklas]'))
  52582. drop procedure [dbo].[sp_izmeniklas]
  52583.  
  52584. Go
  52585.  
  52586.  
  52587. CREATE  PROCEDURE sp_IzmeniKlas
  52588.     @Kto_Klas    Char(1),
  52589.     @ImeKlasa    varChar(40),
  52590.     @ImeKlasa2    varchar(40),
  52591.     @SImeKlasa    varChar(40),
  52592.     @SImeKlasa2    varchar(40),
  52593.         @Str_Kto    varchar(1) 
  52594. AS
  52595.     UPDATE [Klas]
  52596.     SET [ImeKlasa]=@ImeKlasa, [ImeKlasa2]=@ImeKlasa2, [SImeKlasa]=@SImeKlasa, [SImeKlasa2]=@SImeKlasa2, [Str_Kto] = @Str_Kto
  52597.     WHERE [Kto_Klas]=@Kto_Klas
  52598. RETURN @@ERROR
  52599.  
  52600.  
  52601.  
  52602.  
  52603. Go
  52604. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniklista]'))
  52605. drop procedure [dbo].[sp_izmeniklista]
  52606.  
  52607. Go
  52608. CREATE PROCEDURE sp_IzmeniKlista
  52609.     @Broj        int,
  52610.     @Datum_Kam    smalldatetime,
  52611.     @Iznos        decimal(18,6),
  52612.     @Datum_Fakt    smalldatetime,
  52613.     @Rok_Dosp    smallint,
  52614.     @Identif_Br    varchar(15),
  52615.     @Ekster    varchar(25)
  52616. AS
  52617.     Update Klista
  52618.     Set Datum_Kam=@Datum_Kam, Iznos=@Iznos, Datum_Fakt=@Datum_Fakt, Rok_Dosp=@Rok_Dosp, Identif_Br=@Identif_Br, Ekster=@Ekster
  52619.     Where Broj=@Broj
  52620.     Return @@ERROR
  52621.  
  52622.  
  52623.  
  52624. Go
  52625. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniklistad]'))
  52626. drop procedure [dbo].[sp_izmeniklistad]
  52627.  
  52628. Go
  52629.  
  52630. CREATE  PROCEDURE sp_IzmeniKlistaD
  52631.     @Broj        int,
  52632.     @Sifra_Kup    char(6),
  52633.     @Opis        varchar(50),
  52634.     @Datum_Kli    smalldatetime
  52635. AS
  52636.     UPDATE KlistaD
  52637.     Set Sifra_Kup=@Sifra_Kup, Opis=@Opis, Datum_Kli=@Datum_Kli, Datum_Izm=GetDate(), Oper_Izm=Suser_sname()
  52638.     Where Broj=@Broj 
  52639.     RETURN @@ERROR
  52640.  
  52641.  
  52642.  
  52643.  
  52644. Go
  52645. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniknigatrg]'))
  52646. drop procedure [dbo].[sp_izmeniknigatrg]
  52647.  
  52648. Go
  52649. CREATE PROCEDURE sp_IzmeniKnigaTrg
  52650.     @InterenBr int,
  52651.     @Datum_Dok smalldatetime,
  52652.     @Datum_Knz smalldatetime,
  52653.     @Broj  varchar(15),
  52654.     @Opis varchar(50),
  52655.     @ProdVredn   decimal(18,6),
  52656.     @VkalkDan    decimal(18,6),
  52657.     @ObvrskaDan  decimal(18,6),
  52658.     @VrednProd   decimal(18,6),
  52659.     @Sifra_OE  smallint, 
  52660.     @NabVred decimal(18,6)
  52661.  AS
  52662.     UPDATE KnigaTrg SET  
  52663.         Datum_Dok  =   @Datum_Dok,
  52664.         Datum_Knz   =   @Datum_Knz, 
  52665.         Broj                =     @Broj,  
  52666.         Opis               =    @Opis, 
  52667.         ProdVredn     =   @ProdVredn,   
  52668.         VkalkDan      =   @VkalkDan,    
  52669.         ObvrskaDan  =   @ObvrskaDan,  
  52670.         VrednProd     =   @VrednProd,
  52671.         Sifra_OE        =   @Sifra_OE,
  52672.         NabVred       =    @NabVred 
  52673.     WHERE InterenBr      =   @InterenBr
  52674. RETURN @@ERROR
  52675.  
  52676.  
  52677. Go
  52678. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikobj]'))
  52679. drop procedure [dbo].[sp_izmenikobj]
  52680.  
  52681. Go
  52682.  
  52683.  
  52684.  
  52685.  
  52686.  
  52687. CREATE           PROCEDURE sp_IzmeniKObj
  52688.     @Sifra_Kup char(6),
  52689.     @Sifra_Obj Smallint,
  52690.     @Star_Kup varChar(7),
  52691.     @ImeObj nvarchar(40),
  52692.     @ImeObj2 nvarchar(40),
  52693.     @Adresa nvarchar(40),
  52694.     @Adresa2 nvarchar(40),
  52695.     @SMesto nvarchar(20),
  52696.     @Posta nchar(10),
  52697.     @Zemja nvarchar(20),
  52698.     @Telefon varchar(20),
  52699.     @Tel1 varchar(20),
  52700.     @Tel2 varchar(20),
  52701.     @TelMobil varchar(20),
  52702.     @Fax varchar(20),
  52703.     @Telex varchar(20),
  52704.     @EMail varchar(40),
  52705.     @Kontakt varchar(30),
  52706.     @Sifra_Pat smallint,
  52707.     @Sifra_Grad smallint,
  52708.     @TipKup varchar(11),
  52709.     @Sifra_Reg smallint,
  52710.     @Sifra_Nivo char(2),
  52711.     @Sifra_Tip smallint,
  52712.     @Zabeleska varchar(30)=Null,
  52713.     @Aktiven char(1)=Null,
  52714.     @BrProdMesta smallint=Null,
  52715.     @BrAktProdMesta smallint=Null,
  52716.     @KDrugo4    smallint = Null,
  52717.     @KDrugo3    smallint = Null,
  52718.     @KDrugo2    smallint = Null,
  52719.     @KDrugo1    smallint = Null,
  52720.     @Sifra_Pat2    smallint = Null,
  52721.     @KDrugo5    smallint = Null,
  52722.     @Prenesen    char(5) = Null,
  52723.     @BrPoseti    smallint = Null,
  52724.     @m2        smallint = Null,
  52725.     @Sifra_VPJ    smallint = Null,
  52726.     @KDrugo6    smallint = Null,
  52727.     @KDrugo7    smallint = Null,
  52728.         @EMail2            varchar(40)= null,  
  52729.         @EMail3        varchar(40)= null  
  52730. AS
  52731.     Declare @Propagiraj char(1)
  52732.     Set @Propagiraj = 'D'
  52733.     UPDATE [KObjekti]
  52734.    SET [ImeObj]=@ImeObj, [ImeObj2]=@ImeObj2, [Star_Kup]=@Star_Kup,
  52735.        [Adresa]=@Adresa, [Adresa2]=@Adresa2, [SMesto]=@SMesto, [Posta]=@Posta, [Zemja]=@Zemja, 
  52736.        [Telefon]=@Telefon, [Tel1]=@Tel1, [Tel2]=@Tel2, [TelMobil]=@TelMobil, [Fax]=@Fax, [Telex]=@Telex, 
  52737.        [EMail]=@EMail, [Kontakt]=@Kontakt, [Sifra_Pat]=@Sifra_Pat, [Sifra_Grad]=@Sifra_Grad, [TipKup]=@TipKup, 
  52738.        [Sifra_Reg]=@Sifra_Reg, [Sifra_Nivo]=@Sifra_Nivo, [Sifra_Tip]=@Sifra_Tip, [Zabeleska]=@Zabeleska, 
  52739.        [Aktiven]=@Aktiven, [BrProdMesta]=@BrProdMesta, [BrAktProdMesta]=@BrAktProdMesta,  
  52740.        Kdrugo4=@KDrugo4, KDrugo3=@KDrugo3, Kdrugo2=@KDrugo2, KDrugo1=@KDrugo1, Propagiraj=@Propagiraj, 
  52741.        Sifra_Pat2=@Sifra_Pat2, KDrugo5=@KDrugo5, Prenesen = @Prenesen, BrPoseti=@BrPoseti, m2=@m2, Sifra_VPJ=@Sifra_VPJ,
  52742.        KDrugo6=@KDrugo6, KDrugo7=@KDrugo7, [EMail2]=@EMail2, [EMail3]=@EMail3
  52743.    WHERE [Sifra_Obj]=@Sifra_Obj And [Sifra_Kup]=@Sifra_Kup
  52744. RETURN @@ERROR
  52745.  
  52746.  
  52747.  
  52748.  
  52749.  
  52750.  
  52751.  
  52752. Go
  52753. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikobjstal]'))
  52754. drop procedure [dbo].[sp_izmenikobjstal]
  52755.  
  52756. Go
  52757. CREATE PROCEDURE sp_IzmeniKObjStal
  52758.     @Sifra_Kup    char(6),
  52759.     @Sifra_Obj    smallint,
  52760.     @VidStalazi    char(1)
  52761. AS
  52762. UPDATE KObjekti SET VidStalazi=@VidStalazi WHERE Sifra_Kup=@Sifra_Kup AND Sifra_Obj=@Sifra_Obj
  52763.  
  52764.  
  52765. Go
  52766. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikomint]'))
  52767. drop procedure [dbo].[sp_izmenikomint]
  52768.  
  52769. Go
  52770.  
  52771.  
  52772.  
  52773.  
  52774.  
  52775. CREATE     PROCEDURE sp_IzmeniKomint
  52776.     @Sifra_Kup char(6),
  52777.     @ImeKup nvarchar(40),
  52778.     @ImeKup2 nvarchar(60),        --namerno 
  52779.     @Adresa nvarchar(40),
  52780.     @Adresa2 nvarchar(40),
  52781.     @SMesto nvarchar(20),
  52782.     @Posta nchar(10),
  52783.     @Zemja nvarchar(20),
  52784.     @IspAdresa varchar(40),
  52785.     @IspAdresa2 varchar(40),
  52786.     @IspMesto varchar(20),
  52787.     @IspPosta char(5),
  52788.     @IspZemja varchar(20),
  52789.     @Telefon varchar(20),
  52790.     @Tel1 varchar(20),
  52791.     @Tel2 varchar(20),
  52792.     @TelMobil varchar(20),
  52793.     @Fax varchar(20),
  52794.     @Telex varchar(20),
  52795.     @EMail varchar(40),
  52796.     @AdrWeb varchar(30),
  52797.     @Sopstvenik varchar(30),
  52798.     @LK varchar(13),
  52799.     @Sopst_Mat varchar(13),
  52800.     @Danocen char(15),
  52801.     @Ziro varchar(35),
  52802.     @Ziro2 varchar(35),
  52803.     @Banka varchar(30),
  52804.     @Banka2 varchar(30),
  52805.     @Sifra_Ban char(6),
  52806.     @Sifra_Ban2 char(6),
  52807.     @BRIZJAVA varchar(100),
  52808.     @KONTAKT varchar(30),
  52809.     @Sifra_Pat smallint,
  52810.     @Sifra_Grad smallint,
  52811.     @TipKup varchar(11),
  52812.     @Sifra_reg smallint,
  52813.     @Sifra_Nivo char(2),
  52814.     @Sifra_Tip smallint,
  52815.     @KDrugo1 smallint,
  52816.     @KDrugo2 smallint,
  52817.     @KDrugo3 smallint,
  52818.     @KDrugo4 smallint,
  52819.     @KDrugo5 smallint,
  52820.     @Uces Decimal(6,2),
  52821.     @KojaSmetka char(1),
  52822.     @Rok_Dosp smallint,
  52823.     @Kasa Decimal(6,2),
  52824.     @KojaCenaKom char(1),
  52825.     @BrPoseti    smallint = Null,
  52826.     @DirDistr    char(1) = Null,
  52827.     @ZemaOd    varchar(15) = Null,
  52828.     @Zabeleska varchar(30)=Null,
  52829.     @Aktiven char(1)=Null,
  52830.     @BrProdMesta smallint=Null,
  52831.     @BrAktProdMesta smallint=Null,
  52832.     @ImaBanka char(1)=Null,
  52833.     @AltImeKup nvarchar(40)=null,
  52834.     @AltAdresa nvarchar(40)=null,
  52835.     @DogovorBroj varchar(15) = Null,
  52836.     @MozeIsporaka char(1) = Null,
  52837.     @Garancija varchar(30) = Null,
  52838.     @MatBr varchar(20) = Null,
  52839.     @Sifra_Pat2 smallint  = Null,
  52840.     @Sopst_Adr varchar(40) = Null,
  52841.     @Sopst_Mesto varchar(20) = Null,
  52842.     @Prenesen char(5) = Null,
  52843.     @ForsUces char(1) = Null,
  52844.     @Limit_Dolzi decimal(9,0) = Null,
  52845.     @Prioritet smallint=Null,
  52846.     @Aneks1 varchar(100) = Null,
  52847.     @Aneks2 varchar(100) = Null,
  52848.     @God_Rabat    decimal(6,2)=Null,
  52849.     @Spec_Rabat    decimal(6,2)=Null,
  52850.     @m2    smallint = Null,
  52851.     @Sifra_VPJ  smallint = Null,
  52852.     @Rok_Dobav  smallint = Null,
  52853.     @Uces_Kol    decimal(6,2) = Null,
  52854.     @SkrOznaka    varchar(10) = Null,
  52855.     @KDrugo6 smallint = Null,
  52856.     @KDrugo7 smallint = Null,
  52857.         @MemoKup nvarchar (4000) = Null,
  52858.     @Priv_Lice char(1) = Null,
  52859.         @TolerDena_dosp smallint= null,
  52860.     @Kto_Anal    char(10)=NULL,
  52861.         @EMail2 varchar(40)= null,
  52862.         @EMail3 varchar(40)= null   
  52863. AS
  52864.     SET NOCOUNT ON
  52865.     Declare @Propagiraj char(1)
  52866.     Set @Propagiraj='D'
  52867.    UPDATE Komint
  52868.    SET Sifra_Kup=@Sifra_Kup, ImeKup=@ImeKup, ImeKup2=@ImeKup2, 
  52869.        Adresa=@Adresa, Adresa2=@Adresa2, SMesto=@SMesto, Posta=@Posta, Zemja=@Zemja, 
  52870.        IspAdresa=@IspAdresa, IspAdresa2=@IspAdresa2, IspMesto=@IspMesto, IspPosta=@IspPosta, IspZemja=@IspZemja, 
  52871.        Telefon=@Telefon, Tel1=@Tel1, Tel2=@Tel2, TelMobil=@TelMobil, Fax=@Fax, Telex=@Telex, 
  52872.        EMail=@EMail, AdrWeb=@AdrWeb, Sopstvenik=@Sopstvenik, LK=@LK, Sopst_Mat=@Sopst_Mat, 
  52873.        Danocen=@Danocen, Ziro=@Ziro, Ziro2=@Ziro2, Banka=@Banka, Banka2=@Banka2, 
  52874.        Sifra_Ban=@Sifra_Ban, Sifra_Ban2=@Sifra_Ban2, BrIzjava=@BrIzjava, Kontakt=@Kontakt, 
  52875.        Sifra_Pat=@Sifra_Pat, Sifra_Grad=@Sifra_Grad, TipKup=@TipKup, 
  52876.        Sifra_reg=@Sifra_reg, Sifra_Nivo=@Sifra_Nivo, 
  52877.        KDrugo1=@KDrugo1, KDrugo2=@KDrugo2, KDrugo3=@KDrugo3, KDrugo4=@KDrugo4, KDrugo5=@KDrugo5, 
  52878.     Uces=@Uces, KojaSmetka = @KojaSmetka, Rok_Dosp=@Rok_Dosp, Kasa=@Kasa,
  52879.         KojaCena=@KojaCenaKom, BrPoseti=@BrPoseti, DirDistr=@DirDistr, ZemaOd=@ZemaOd,
  52880.        Zabeleska=@Zabeleska, Aktiven=@Aktiven, BrProdMesta=@BrProdMesta, 
  52881.        BrAktProdMesta=@BrAktProdMesta, ImaBanka=@ImaBanka, Alt_ImeKup=@AltImeKup,
  52882.        Alt_Adresa=@AltAdresa, DogovorBroj=@DogovorBroj, MozeIsporaka=@MozeIsporaka,
  52883.        Garancija=@Garancija, Propagiraj=@Propagiraj, MatBr=@MatBr, Sifra_Pat2=@Sifra_Pat2, Prioritet=@Prioritet,
  52884.        Sopst_Adr=@Sopst_Adr, Sopst_Mesto=@Sopst_Mesto, Prenesen=@Prenesen, ForsUces=@ForsUces, Limit_Dolzi=@Limit_Dolzi,
  52885.        Aneks1=@Aneks1, Aneks2=@Aneks2, God_Rabat=@God_Rabat, Spec_Rabat=@Spec_Rabat, m2=@m2,SkrOznaka=@SkrOznaka, Sifra_VPJ=@Sifra_VPJ,Rok_Dobav=@Rok_Dobav,
  52886.        Uces_Kol = (Case When @Uces_Kol Is Not Null Then @Uces_Kol Else Uces_Kol End),
  52887.        Sifra_Tip = (Case When @Sifra_Tip Is Not Null Then @Sifra_Tip Else Sifra_Tip End),
  52888.        KDrugo6=@KDrugo6, KDrugo7=@KDrugo7, MemoKup=@MemoKup,
  52889.        Priv_Lice = @Priv_Lice, TolerDena_dosp=@TolerDena_dosp, IzmenetNa=GetDate(), IzmenetOd=SUser_SName(), Kto_Anal=@Kto_Anal,
  52890.        EMail2=@EMail2, EMail3=@EMail3  
  52891.    WHERE Sifra_Kup=@Sifra_Kup
  52892. /*   if @Uces_Kol is not Null
  52893.    begin
  52894.        UPDATE Komint
  52895.        set Uces_Kol=@Uces_Kol
  52896.            WHERE Sifra_Kup=@Sifra_Kup
  52897.    end
  52898.     IF @Sifra_Tip IS NOT NULL
  52899.         UPDATE Komint SET Sifra_Tip=@Sifra_Tip WHERE Sifra_Kup=@Sifra_Kup
  52900. */
  52901. RETURN @@ERROR
  52902.  
  52903.  
  52904.  
  52905.  
  52906.  
  52907.  
  52908.  
  52909. Go
  52910. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikomintmobsrv]'))
  52911. drop procedure [dbo].[sp_izmenikomintmobsrv]
  52912.  
  52913. Go
  52914.  
  52915.  
  52916.  
  52917. CREATE              PROCEDURE sp_IzmeniKomintMobSrv
  52918.     @Sifra_Kup char(6),
  52919.     @Aktiven char(1)=Null,
  52920.     @TipKup varchar(11),
  52921.     @Sifra_Grad smallint,
  52922.     @KDrugo1 smallint,
  52923.     @KDrugo2 smallint,
  52924.     @KDrugo3 smallint,
  52925.     @BrProdMesta smallint=Null,
  52926.     @BrAktProdMesta smallint=Null,
  52927.     @DirDistr    char(1) = Null,
  52928.     @ZemaOd    varchar(15) = Null,
  52929.     @Rok_Dosp smallint,
  52930.     @Telefon varchar(20),
  52931.     @m2    smallint = Null,
  52932.     @Sifra_VPJ  smallint = Null,
  52933.     @Sifra_Tip smallint,
  52934.     @Adresa    varchar(40),
  52935.     @IzmenetOd varchar(30)=NULL
  52936. AS
  52937.     IF @IzmenetOd IS NULL SET @IzmenetOd=SUser_SName()
  52938.     SET NOCOUNT ON
  52939.     Declare @Propagiraj char(1)
  52940.     Set @Propagiraj='D'
  52941.  
  52942.     UPDATE Komint
  52943.     SET Aktiven=@Aktiven, TipKup=@TipKup, Sifra_grad=@Sifra_grad, KDrugo1=@KDrugo1, KDrugo2=@KDrugo2, KDrugo3=@KDrugo3, 
  52944.     BrProdMesta=@BrProdMesta, BrAktProdMesta=@BrAktProdMesta, DirDistr=@DirDistr, ZemaOd=@ZemaOd, Rok_Dosp=@Rok_Dosp, 
  52945.     Telefon=@Telefon, m2=@m2, adresa=@adresa, Sifra_Tip=@Sifra_Tip, Sifra_Vpj=@Sifra_Vpj, IzmenetNa=GetDate(), IzmenetOd=@IzmenetOd
  52946.     WHERE Sifra_Kup=@Sifra_Kup
  52947.  
  52948. RETURN @@ERROR
  52949.  
  52950. Go
  52951. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikomintstal]'))
  52952. drop procedure [dbo].[sp_izmenikomintstal]
  52953.  
  52954. Go
  52955. CREATE PROCEDURE sp_IzmeniKomintStal
  52956.     @Sifra_Kup    char(6),
  52957.     @VidStalazi    char(1)
  52958. AS
  52959. UPDATE Komint SET VidStalazi=@VidStalazi WHERE Sifra_Kup=@Sifra_Kup
  52960.  
  52961.  
  52962. Go
  52963. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikomlimitdiv]'))
  52964. drop procedure [dbo].[sp_izmenikomlimitdiv]
  52965.  
  52966. Go
  52967. CREATE procedure SP_IzmeniKomLimitDiv
  52968.     @Sifra_Kup char(6)
  52969. --    @Sifra_Div smallint,
  52970.  --   @Iznos decimal(18,2)
  52971. AS
  52972.     Update KomLimitDiv 
  52973.     Set Iznos=0 --Sifra_Div=@Sifra_Div, Iznos=@Iznos
  52974.     Where Sifra_Kup=@Sifra_Kup
  52975.  
  52976.  
  52977. Go
  52978. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikompenz]'))
  52979. drop procedure [dbo].[sp_izmenikompenz]
  52980.  
  52981. Go
  52982.  
  52983. CREATE   PROCEDURE sp_IzmeniKompenz
  52984.     @Broj_Komp Int,
  52985.     @Datum_Komp Smalldatetime,
  52986.     @Sifra_Kup Varchar(10),
  52987.     @Opis Varchar(50),
  52988.     @Datum_Do Smalldatetime,
  52989.     @KtoKup Varchar(10),
  52990.     @KtoDob Varchar(10)
  52991. AS
  52992.     UPDATE [Kompenz]
  52993.     SET [Datum_Komp]=@Datum_Komp, [Sifra_Kup]=@Sifra_Kup, [Opis]=@Opis, [Datum_Do]=@Datum_Do, [KtoKup]=@KtoKup, [KtoDob]=@KtoDob, [Datum_Izm]=GetDate(), [OpIz]=SUSER_SNAME()
  52994.     WHERE [Broj_Komp]=@Broj_Komp
  52995.  
  52996. Go
  52997. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikonfceni]'))
  52998. drop procedure [dbo].[sp_izmenikonfceni]
  52999.  
  53000. Go
  53001.  
  53002. CREATE  PROCEDURE sp_IzmeniKonfCeni
  53003.     @Sifra_Dok    Smallint,
  53004.     @Sifra_OE    Smallint,
  53005.     @Sifra_Prim    Smallint,
  53006.     @DaliMoze    char(1),
  53007.     @KojaCena    varchar(20),
  53008.     @KojaCenaM    varchar(20),
  53009.              @VleziCena        char(1),
  53010.              @VleziCena1      char(1)
  53011. AS
  53012.     UPDATE KonfCeni
  53013.     SET DaliMoze = @DaliMoze, KojaCena = @KojaCena, KojaCenaM = @KojaCenaM, VleziCena = @VleziCena, VleziCena1 = @VleziCena1
  53014.     WHERE Sifra_Dok = @Sifra_Dok  AND Sifra_OE = @Sifra_OE AND Sifra_Prim = @Sifra_Prim
  53015. RETURN @@ERROR
  53016.  
  53017.  
  53018.  
  53019. Go
  53020. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikredit]'))
  53021. drop procedure [dbo].[sp_izmenikredit]
  53022.  
  53023. Go
  53024.  
  53025. CREATE  procedure sp_IzmeniKredit
  53026.     @Sifra_oe as smallint, 
  53027.     @Broj_kredit as int, 
  53028.     @Sifra_kor as varchar(20) ,
  53029.     @Datum_kredit as smalldatetime ,
  53030.     @DatumPoc_Kredit as smalldatetime ,
  53031.     @Broj_rati as smallint ,
  53032.     @VkupenProcKam as decimal(9, 2) ,
  53033.     @Nacin_Presm as smallint,
  53034.     @VkupnaGlavnica as decimal(18, 4) ,
  53035.     @VkupnaKamata as decimal(18, 4),
  53036.     @PlatenoVednas as decimal(18, 4), 
  53037.     @Kurs as decimal(18, 6) ,
  53038.     @OpisKredit as nvarchar(1000)= NULL,
  53039.     @Status_kredit as smallint= NULL,
  53040.     @Datum_sud as smalldatetime= NULL,
  53041.     @Tip_posl_Opomena as smallint = null,
  53042.     @Datum_Odzemeno as smalldatetime =NULL,
  53043.     @ProcKam as decimal(9,2)
  53044.  
  53045. As
  53046.  
  53047.     Declare @BeseTipPoslOpomena int
  53048.     Declare @BeseStatusKredit int
  53049.     Declare @BeseDatumPoslOpomena smalldatetime
  53050.     Declare @BeseDatumStatus smalldatetime
  53051.  
  53052.     select @BeseTipPoslOpomena = Tip_Posl_Opomena, 
  53053.        @BeseStatusKredit = Status_Kredit,
  53054.        @BeseDatumPoslOpomena = Datum_Posl_Opomena,
  53055.        @BeseDatumStatus = Datum_Status
  53056.     from Kredit
  53057.     Where Sifra_oe=@Sifra_oe and Broj_kredit=@Broj_kredit
  53058.  
  53059.     Declare @Datum_Posl_opomena smalldatetime
  53060.     set @Datum_Posl_Opomena = @BeseDatumPoslOpomena
  53061.     if @Tip_Posl_Opomena is not null and @BeseTipPoslOpomena is null
  53062.     or @Tip_Posl_Opomena is null and @BeseTipPoslOpomena is not null
  53063.     or @Tip_Posl_Opomena <> @BeseTipPoslOpomena
  53064.         set @Datum_Posl_Opomena = dbo.fn_VratiDatum (GetDate())
  53065.     
  53066.     Declare @Datum_Status smalldatetime
  53067.     set @Datum_Status = @BeseDatumStatus
  53068.     if @Status_Kredit is not null and @BeseStatusKredit is null
  53069.     or @Status_Kredit is null and @BeseStatusKRedit is not null
  53070.     or @Status_Kredit <> @BeseStatusKRedit
  53071.         set @Datum_Status = dbo.fn_VratiDatum (GetDate())
  53072.  
  53073.     Update Kredit 
  53074.     Set  Sifra_kor=@Sifra_kor, Datum_kredit=@Datum_kredit,
  53075.         DatumPoc_Kredit=@DatumPoc_Kredit,Broj_rati=@Broj_rati,VkupenProcKam=@VkupenProcKam, Nacin_Presm=@Nacin_Presm, 
  53076.         VkupnaGlavnica=@VkupnaGlavnica, VkupnaKamata=@VkupnaKamata, PlatenoVednas=@PlatenoVednas,
  53077.         Kurs=@Kurs,OpisKredit=@OpisKredit, Status_kredit=@Status_kredit, Datum_sud=@Datum_sud,
  53078.         Tip_posl_Opomena=@Tip_posl_Opomena, Datum_Odzemeno=@Datum_Odzemeno, ProcKam = @ProcKam,
  53079.         Datum_Status = @Datum_Status, Datum_Posl_Opomena = @Datum_POsl_Opomena
  53080.     Where Sifra_oe=@Sifra_oe and Broj_kredit=@Broj_kredit
  53081.  
  53082.     Return @@ERROR
  53083.  
  53084.  
  53085.  
  53086.  
  53087. Go
  53088. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikreditopomena]'))
  53089. drop procedure [dbo].[sp_izmenikreditopomena]
  53090.  
  53091. Go
  53092.  
  53093. CREATE  procedure sp_IzmeniKreditOpomena
  53094.     @Sifra_Oe smallint,
  53095.     @Broj_kredit int ,
  53096.     @Broj_Opomena int,
  53097.     @Datum_Opomena smalldatetime, 
  53098.     @Tip_Opomena smallint ,
  53099.     @Kratok_Opis_Opomena nvarchar(50) =NULL,
  53100.     @OpisOpomena nvarchar(1000)= NULL
  53101. As
  53102.     Update KreditOpomena
  53103.     Set Datum_opomena=@Datum_opomena, Tip_opomena=@Tip_opomena,
  53104.      Kratok_opis_opomena=@Kratok_opis_opomena, OpisOpomena=@OpisOpomena
  53105.     Where Sifra_Oe=@Sifra_Oe and Broj_kredit=@Broj_kredit and Broj_Opomena=@Broj_Opomena
  53106. return @@error
  53107.  
  53108.  
  53109.  
  53110. Go
  53111. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikreditstatus]'))
  53112. drop procedure [dbo].[sp_izmenikreditstatus]
  53113.  
  53114. Go
  53115.  
  53116. CREATE  procedure sp_IzmeniKreditStatus
  53117.     @Status_kredit  smallint,
  53118.     @ImeStatuskredit  nvarchar(40),
  53119.     @DaliZatvoren  char(1)
  53120.  
  53121. As 
  53122.  
  53123.     update KreditStatus
  53124.     set ImestatusKredit= @ImestatusKredit, Dalizatvoren=@Dalizatvoren
  53125.     where Status_Kredit = @Status_Kredit
  53126.  
  53127.     return @@error
  53128.  
  53129.  
  53130.  
  53131.  
  53132. Go
  53133. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikreditstavki]'))
  53134. drop procedure [dbo].[sp_izmenikreditstavki]
  53135.  
  53136. Go
  53137. CREATE procedure sp_IzmeniKreditStavki
  53138.     @Sifra_Oe smallint ,
  53139.     @Broj_kredit int ,
  53140.     @Rbr_KredArt int ,
  53141.     @Sifra_Art varchar(20) ,
  53142.     @Kolic decimal(18, 6) ,
  53143.     @DokCena decimal(18, 6) ,
  53144.     @POsnPren decimal(9, 2) ,
  53145.     @Sifra_oe_dokr smallint =NULL,
  53146.     @Sifra_Dok_Dokr smallint= NULL,
  53147.     @Broj_Dok_Dokr int= NULL
  53148. As
  53149.     Update KreditStavki
  53150.     Set  sifra_art=@sifra_art,
  53151.     kolic=@kolic, dokcena=@dokcena, POsnPren=@POsnPren,Sifra_Oe_dokr=@Sifra_Oe_dokr, 
  53152.     Sifra_Dok_Dokr=@Sifra_Dok_Dokr, Broj_Dok_Dokr=@Broj_Dok_Dokr
  53153.     where Sifra_oe=@Sifra_oe and broj_kredit=@broj_kredit and rbr_kredart=@rbr_kredart
  53154. return @@error 
  53155.  
  53156.  
  53157. Go
  53158. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikredittipopomena]'))
  53159. drop procedure [dbo].[sp_izmenikredittipopomena]
  53160.  
  53161. Go
  53162.  
  53163. CREATE  procedure sp_IzmeniKreditTipOpomena
  53164.     @Tip_Opomena smallint,
  53165.     @ImeTipOpomena nvarchar(40)
  53166. As
  53167.    Update KreditTipOpomena
  53168.    Set ImeTipOpomena=@ImeTipOpomena
  53169.     Where Tip_opomena=@Tip_opomena
  53170.  
  53171.  
  53172.  
  53173.  
  53174. Go
  53175. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikredittransakc]'))
  53176. drop procedure [dbo].[sp_izmenikredittransakc]
  53177.  
  53178. Go
  53179.  
  53180. CREATE  procedure sp_IzmeniKreditTransakc
  53181.     @Sifra_Oe smallint,
  53182.     @Broj_kredit int,
  53183.     @Rbr_KreditTrans int,
  53184.     @Dolzi decimal(18, 4),
  53185.     @Pobaruva decimal(18, 4),
  53186.     @Kurs decimal(19, 6),
  53187.     @Datum_dosp smalldatetime
  53188.     ---@Datum_Kontra smalldatetime=nuLL,
  53189.     ---@Plateno_dolzi decimal(18, 4),
  53190.     ---@Plateno_Pobaruva decimal(18, 4)
  53191.  
  53192. As 
  53193.  
  53194.     update kredittransakc
  53195.     Set  dolzi=@dolzi, pobaruva=@pobaruva, kurs=@kurs, datum_dosp=@datum_dosp
  53196.     Where sifra_oe=@sifra_oe and broj_kredit=@broj_kredit and rbr_kredittrans= @rbr_kredittrans
  53197.  
  53198.  
  53199.  
  53200.  
  53201. Go
  53202. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikreditvrskazatv]'))
  53203. drop procedure [dbo].[sp_izmenikreditvrskazatv]
  53204.  
  53205. Go
  53206. CREATE procedure sp_IzmeniKreditVrskaZatv
  53207.        @Sifra_oe_1 smallint ,
  53208.     @Broj_Kredit_1 int ,
  53209.     @Rbr_kreditTrans_1 int ,
  53210.     @Sifra_Oe_2 smallint ,
  53211.     @Broj_kredit_2 int ,
  53212.     @Rbr_kreditTrans2 int ,
  53213.     @Iznos decimal(18, 4) ,
  53214.     @Datum_zatv smalldatetime= NULL
  53215. As    
  53216.     update KreditVrskaZatv
  53217.     Set sifra_oe_1=@sifra_oe_1, Broj_kredit_1=@Broj_kredit_1, rbr_kredittrans_1=@rbr_kredittrans_1, 
  53218.     sifra_oe_2=@sifra_oe_2, Broj_kredit_2=@Broj_kredit_2, Rbr_kreditTrans2=@Rbr_kreditTrans2, 
  53219.     iznos=@iznos, datum_zatv=@datum_zatv
  53220.  
  53221.  
  53222. Go
  53223. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikrslista]'))
  53224. drop procedure [dbo].[sp_izmenikrslista]
  53225.  
  53226. Go
  53227.  
  53228.  
  53229. CREATE   PROCEDURE sp_IzmeniKrsLista
  53230.         @SImeVal Char(3),
  53231.         @ImeVal Char(20),
  53232.         @BankKod Char(3),
  53233.         @Zemja Char(20),
  53234.                 @Faktor integer
  53235. AS
  53236.     SET NOCOUNT ON
  53237.     UPDATE [KrsLista]
  53238.     SET [SImeVal]=@SImeVal, [ImeVal]=@ImeVal, [BankKod]=@BankKod, [Zemja]=@Zemja, [Faktor]=@Faktor 
  53239.     WHERE [SImeVal]=@SImeVal
  53240. RETURN @@ERROR
  53241.  
  53242.  
  53243.  
  53244. Go
  53245. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikrsvaznost]'))
  53246. drop procedure [dbo].[sp_izmenikrsvaznost]
  53247.  
  53248. Go
  53249. CREATE PROCEDURE sp_IzmeniKrsVaznost
  53250.     @Datum Smalldatetime,
  53251.     @SImeVal Char(3),
  53252.     @KursKupoven decimal(12,6),
  53253.     @KursProdazen decimal(12,6),
  53254.     @KursSreden decimal(12,6),
  53255.     @KursPazaren decimal(12,6)
  53256. AS
  53257.     UPDATE [KrsVaznost]
  53258.     SET [KursKupoven]=@KursKupoven, [KursProdazen]=@KursProdazen, [KursSreden]=@KursSreden, [KursPazaren]=@KursPazaren
  53259.     WHERE [Datum]=@Datum and [SImeVal]=@SImeVal
  53260. RETURN @@ERROR
  53261.  
  53262.  
  53263. Go
  53264. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniksprometrkolic]'))
  53265. drop procedure [dbo].[sp_izmeniksprometrkolic]
  53266.  
  53267. Go
  53268.  
  53269.  
  53270. CREATE   PROCEDURE sp_IzmeniKSPrometRKolic
  53271.     @Sifra_OE    smallint,
  53272.     @Datum    smalldatetime,
  53273.     @Sifra_ArtNemaRaskn varchar(1000) = NULL
  53274. AS
  53275.     Declare @SSQL            varchar(2000)
  53276.     SET @SSQL = 'UPDATE KSPromet SET RKolic=Kolic 
  53277.     FROM KPromet P WHERE P.Sifra_OE=KSPromet.Sifra_OE AND P.Grp_Kasa=KSPromet.Grp_Kasa AND 
  53278.     P.BrKasa=KSPromet.BrKasa AND P.Broj_Ska=KSPromet.Broj_Ska AND P.Datum_evid='''+cast(@Datum as varchar(35))+
  53279.     ''' AND KSPromet.Sifra_OE = ' + cast(@Sifra_OE as varchar(5)) + 'AND KSPromet.Kolic <> KSPromet.RKolic '    
  53280.     IF @Sifra_ArtNemaRaskn IS NOT NULL 
  53281.         SET @SSQL = @SSQL + ' AND Sifra_Art NOT IN (' +@Sifra_ArtNemaRaskn +')'
  53282.     exec (@SSQL)
  53283.  
  53284.  
  53285.  
  53286. Go
  53287. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenikstapki]'))
  53288. drop procedure [dbo].[sp_izmenikstapki]
  53289.  
  53290. Go
  53291. CREATE PROCEDURE sp_IzmeniKStapki
  53292.     @Datum_Od        smalldatetime,
  53293.     @God_Real_St        decimal(9,4),
  53294.     @God_Reval_St    decimal(9,4),
  53295.     @Vaz_Metod        char(1) = Null,
  53296.     @God_Mes        char(1) = Null
  53297.  AS
  53298.     Update KStapki
  53299.     Set God_Real_St=@God_Real_St, God_Reval_St=@God_Reval_St, Vaz_Metod=@Vaz_Metod, God_Mes=@God_Mes
  53300.     Where Datum_Od=@Datum_Od
  53301.     Return @@ERROR
  53302.  
  53303.  
  53304.  
  53305. Go
  53306. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenilekari]'))
  53307. drop procedure [dbo].[sp_izmenilekari]
  53308.  
  53309. Go
  53310.  
  53311. Create  PROCEDURE sp_IzmeniLekari
  53312.  
  53313.     @Sifra_Lekar    char(6),
  53314.     @ImeLekar    nchar(40)
  53315. AS
  53316.     Update Lekari 
  53317.     Set ImeLekar=@ImeLekar
  53318.     Where Sifra_Lekar=@Sifra_Lekar
  53319.     Return @@ERROR
  53320.  
  53321.  
  53322. Go
  53323. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenilogo]'))
  53324. drop procedure [dbo].[sp_izmenilogo]
  53325.  
  53326. Go
  53327.  
  53328.  
  53329.  
  53330.  
  53331.  
  53332.  
  53333.  
  53334.  
  53335.  
  53336.  
  53337. CREATE                                 PROCEDURE sp_IzmeniLogo
  53338.     @TipObr         varchar(2),    
  53339.     @Sifra_OE    Smallint,
  53340.     @Sifra_Dok    Smallint,
  53341.         @ImeFile        varchar(255),
  53342.     @Picture        image,
  53343.     @SirinaLogo     int,
  53344.     @VisinaLogo     int,
  53345.         @LeftLogo       int,
  53346.     @TopLogo        int,
  53347.     @Telefon        varchar(130),
  53348.     @ImePret        varchar(130),
  53349.     @Banka          varchar(130),
  53350.     @Mesto          varchar(130),
  53351.     @Adresa         varchar(130),
  53352.     @Ziro           varchar(130),
  53353.     @DDVBroj        varchar(130),
  53354.     @EMail          varchar(130),
  53355.         @TextDolu1      varchar(260),
  53356.         @TextDolu2      varchar(1000),
  53357.     @TextDolu3      varchar(500),
  53358.            @SpecFormaTekst nvarchar(1000),
  53359.      @TextDolu4      varchar(260),    
  53360.     @TextDolu5      varchar(260),
  53361.     @TextDolu6      varchar(260),
  53362.         @TextDolu7      varchar(260),
  53363.     @FontI_ImePret  varchar(50),
  53364.     @FontSi_ImePret Smallint,
  53365.     @FontSt_ImePret varchar(50),
  53366.       @FontI_Nsl      varchar(50),
  53367.     @FontSi_Nsl     Smallint,
  53368.     @FontSt_Nsl     varchar(50),
  53369.         @FontI_EMail    varchar(50),
  53370.     @FontSi_EMail   Smallint,
  53371.     @FontSt_EMail   varchar(50),
  53372.     @FontI_Komint   varchar(50),
  53373.     @FontSi_Komint  Smallint,
  53374.     @FontSt_Komint  varchar(50),
  53375.     @TopKomint      Smallint,
  53376.     @LeftKomint     Smallint,
  53377.     @SirinaKomint   Smallint,
  53378.     @VisinaKomint   Smallint,
  53379.     @FontI_SlTekst  varchar(50),
  53380.     @FontSi_SlTekst Smallint,
  53381.     @FontSt_SlTekst varchar(50),      
  53382.     @TopSlTekst     Smallint,
  53383.     @LeftSlTekst    Smallint,
  53384.     @SirinaSlTekst  Smallint,
  53385.     @VisinaSlTekst  Smallint,
  53386.     @FontI_Dospeva  varchar(50),
  53387.     @FontSi_Dospeva Smallint,
  53388.     @FontSt_Dospeva varchar(50),  
  53389.     @FontI_Dolu1    varchar(50),
  53390.     @FontSi_Dolu1   Smallint,
  53391.     @FontSt_Dolu1   varchar(50),  
  53392.     @FontI_Dolu2    varchar(50),
  53393.     @FontSi_Dolu2   Smallint,
  53394.     @FontSt_Dolu2   varchar(50),
  53395.         @PrikPakuv      char(1),
  53396.         @PrikKomint     char(1),
  53397.         @AltSifArt      char(1),
  53398.         @AltImeArt      char(1),
  53399.         @DecKolic       Smallint,
  53400.         @DecCena        Smallint,
  53401.         @LeftOff        int,
  53402.         @Kasa           varchar(50),
  53403.     @IznSoBukvi     varchar(1),
  53404.         @LeftDolu4    int,
  53405.         @TopDolu4       int,
  53406.         @LeftDolu5    int,
  53407.         @TopDolu5       int,    
  53408.         @LeftDolu6    int,
  53409.         @TopDolu6       int,
  53410.         @LeftDolu7    int,
  53411.         @TopDolu7       int,
  53412.         @PatnikDaNe     varchar(1),
  53413. --        @PrikSerBr      varchar(1),
  53414.         @PrikVremePec   char(1),
  53415.         @PrikTezina     char(1),  
  53416.         @MemoGore       varchar(1),  
  53417.         @VisMemoGore    int,
  53418.         @MemoDolu       varchar(1),  
  53419.         @VisMemoDolu    int,
  53420. --        @PrikFaktFooter varchar(1)                       
  53421.     @PrikBarKod    char(1) = Null,
  53422.         @PrikSubPoTarifi    char(1) = Null,
  53423.     @PresmPak    char(2) = Null,
  53424.     @PrikNeispArt    char(1) = Null,
  53425.     @PrikKontrBr    char(1) = Null,
  53426.         @DopTekst    nvarchar(500) = Null,
  53427.         @LeftDopTxt    int,
  53428.         @TopDopTxt      int,
  53429.         @Podr            char(1) = Null,
  53430.         @PrikAltImeKup            char(1) = 'N',
  53431.         @PaperSize           varchar(20)   = null           
  53432. AS
  53433.     UPDATE Logo
  53434.     SET ImeFile=@ImeFile, Picture=@Picture, SirinaLogo=@SirinaLogo, VisinaLogo=@VisinaLogo,LeftLogo=@LeftLogo, TopLogo=@TopLogo, 
  53435.             Telefon=@Telefon, ImePret=@ImePret, Banka=@Banka, Mesto=@Mesto, Adresa=@Adresa, Ziro=@Ziro, DDVBroj=@DDVBroj, EMail=@EMail,
  53436.             TextDolu1=@TextDolu1, TextDolu2=@TextDolu2, TextDolu3=@TextDolu3, TextDolu4=@TextDolu4, TextDolu5=@TextDolu5, TextDolu6=@TextDolu6, TextDolu7=@TextDolu7,      
  53437.             FontI_ImePret=@FontI_ImePret, FontSi_ImePret=@FontSi_ImePret, FontSt_ImePret=@FontSt_ImePret,
  53438.             FontI_Nsl=@FontI_Nsl, FontSi_Nsl=@FontSi_Nsl, FontSt_Nsl=@FontSt_Nsl, 
  53439.             FontI_Komint=@FontI_Komint, FontSi_Komint=@FontSi_Komint, FontSt_Komint=@FontSt_Komint, 
  53440.             TopKomint=@TopKomint, LeftKomint=@LeftKomint, SirinaKomint=@SirinaKomint, VisinaKomint=@VisinaKomint, 
  53441.             FontI_SlTekst=@FontI_SlTekst, FontSi_SlTekst=@FontSi_SlTekst, FontSt_SlTekst=@FontSt_SlTekst,
  53442.         FontI_Dospeva=@FontI_Dospeva, FontSi_Dospeva=@FontSi_Dospeva, FontSt_Dospeva=@FontSt_Dospeva,                                   
  53443.         FontI_Dolu1=@FontI_Dolu1, FontSi_Dolu1=@FontSi_Dolu1, FontSt_Dolu1=@FontSt_Dolu1,     
  53444.             FontI_Dolu2=@FontI_Dolu2, FontSi_Dolu2=@FontSi_Dolu2, FontSt_Dolu2=@FontSt_Dolu2,
  53445.         FontI_EMail=@FontI_EMail, FontSi_EMail=@FontSi_EMail, FontSt_EMail=@FontSt_EMail,
  53446.             PrikPakuv=@PrikPakuv, PrikKomint=@PrikKomint, LeftOff=@LeftOff, AltSifArt=@AltSifArt, AltImeArt=@AltImeArt,
  53447.             DecKolic=@DecKolic, DecCena=@DecCena, Kasa=@Kasa, IznSoBukvi=@IznSoBukvi,
  53448.             LeftDolu4=@LeftDolu4, TopDolu4=@TopDolu4, LeftDolu5=@LeftDolu5, TopDolu5=@TopDolu5,
  53449.             LeftDolu6=@LeftDolu6, TopDolu6=@TopDolu6, LeftDolu7=@LeftDolu7, TopDolu7=@TopDolu7,
  53450.             PatnikDaNe=@PatnikDaNe, LeftSlTekst=@LeftSlTekst, TopSlTekst=@TopSlTekst, SirinaSlTekst=@SirinaSlTekst,
  53451.             PrikBarKod=@PrikBarKod, PrikSubPoTarifi=@PrikSubPoTarifi,
  53452.             MemoGore=@MemoGore, VisMemoGore=@VisMemoGore, MemoDolu=@MemoDolu, VisMemoDolu=@VisMemoDolu,
  53453.         PresmPak=@PresmPak, PrikNeispArt=@PrikNeispArt, PrikKontrBr=@PrikKontrBr, PrikVremePec=@PrikVremePec, PrikTezina=@PrikTezina,
  53454.             DopTekst=@DopTekst, LeftDopTxt=@LeftDopTxt, TopDopTxt=@TopDopTxt, SpecFormaTekst=@SpecFormaTekst, Podr=@Podr, PrikAltImeKup=@PrikAltImeKup,
  53455.             PaperSize=@PaperSize  
  53456. --            PrikSerBr=@PrikSerBr, 
  53457. --            PrikFaktFooter=@PrikFaktFooter                       
  53458.         WHERE TipObr = @TipObr  AND Sifra_OE = @Sifra_OE AND Sifra_Dok = @Sifra_Dok
  53459. RETURN @@ERROR
  53460.  
  53461.  
  53462.  
  53463.  
  53464.  
  53465.  
  53466.  
  53467.  
  53468. Go
  53469. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenilokacija]'))
  53470. drop procedure [dbo].[sp_izmenilokacija]
  53471.  
  53472. Go
  53473.  
  53474. CREATE  PROCEDURE sp_IzmeniLokacija
  53475.     @Sifra_Lok    char(3),
  53476.     @ImeLok    nvarchar(40),
  53477.     @Nivo_Lok    smallint = Null, 
  53478.     @Sifra_Oe_Kniz smallint = null
  53479. AS
  53480.     Update Lokacija 
  53481.     Set  ImeLok=@ImeLok, Nivo_Lok=@Nivo_Lok, Sifra_Oe_Kniz=@Sifra_Oe_Kniz
  53482.     Where Sifra_Lok=@Sifra_Lok
  53483.     Return @@ERROR
  53484.  
  53485.  
  53486.  
  53487. Go
  53488. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenilpopis]'))
  53489. drop procedure [dbo].[sp_izmenilpopis]
  53490.  
  53491. Go
  53492.  
  53493. CREATE PROCEDURE sp_IzmeniLPopis
  53494.     @IDPopis int,
  53495.     @Broj int,
  53496.     @IDLPopis int,
  53497.     @Sifra_Art Varchar(20),
  53498.     @Popis decimal (18,6)
  53499.  AS
  53500.     UPDATE LPopis SET 
  53501.         Sifra_Art = @Sifra_Art, 
  53502.         Popis = @Popis
  53503.     WHERE IDPopis = @IDPopis and Broj = @Broj and IDLPopis = @IDLPopis
  53504. RETURN @@ERROR
  53505.  
  53506.  
  53507.  
  53508. Go
  53509. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimakrolok]'))
  53510. drop procedure [dbo].[sp_izmenimakrolok]
  53511.  
  53512. Go
  53513.  
  53514. CREATE  PROCEDURE sp_IzmeniMakroLok
  53515.     @Sifra_MakLok    char(10),
  53516.     @Ime_MakLok    nvarchar(40),
  53517.     @Sifra_Lok    char(3),
  53518.     @Sifra_Oe_Kniz smallint= null
  53519.  AS
  53520.     Update MakroLok 
  53521.     Set Ime_MakLok=@Ime_MakLok, Sifra_Lok=@Sifra_Lok, Sifra_oe_Kniz=@Sifra_Oe_Kniz
  53522.     Where Sifra_MakLok=@Sifra_MakLok
  53523.     Return @@ERROR
  53524.  
  53525.  
  53526.  
  53527. Go
  53528. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimark]'))
  53529. drop procedure [dbo].[sp_izmenimark]
  53530.  
  53531. Go
  53532. CREATE  PROCEDURE sp_IzmeniMark
  53533.     @Sifra_Mark smallint,
  53534.     @ImeMark Varchar(40),
  53535.     @ID_Server  varchar(30),
  53536.     @Ime_Baza  varchar(15),
  53537.     @Br_Vraboteni    smallint = Null,
  53538.     @Metri_Kvadr    smallint = Null
  53539. AS
  53540.     UPDATE Marketi
  53541.     SET [ImeMark]=@ImeMark, [ID_Server] = @ID_Server, [Ime_Baza] = @Ime_Baza, Br_Vraboteni=@Br_Vraboteni, Metri_Kvadr=@Metri_Kvadr
  53542.     WHERE [Sifra_Mark]=@Sifra_Mark
  53543. RETURN @@ERROR
  53544.  
  53545.  
  53546.  
  53547. Go
  53548. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimarza]'))
  53549. drop procedure [dbo].[sp_izmenimarza]
  53550.  
  53551. Go
  53552.  
  53553.  
  53554. CREATE  PROCEDURE sp_IzmeniMarza
  53555.     @Sifra_Art Varchar(20),
  53556.     @Proc_Marza Decimal(6, 0)
  53557. AS
  53558.     Update Katart Set Proc_Marza=@Proc_Marza Where Sifra_Art=@Sifra_Art
  53559.     If @@ROWCOUNT = 1
  53560.         RETURN 0
  53561.     Else
  53562.         RETURN 77000
  53563.  
  53564.  
  53565.  
  53566. Go
  53567. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimasini]'))
  53568. drop procedure [dbo].[sp_izmenimasini]
  53569.  
  53570. Go
  53571. CREATE PROCEDURE sp_IzmeniMasini
  53572.     @Sifra_Mas    varchar(15),
  53573.     @ImeMas    char(40)
  53574. AS
  53575.     Update Masini 
  53576.     Set ImeMas=@ImeMas
  53577.     Where Sifra_Mas=@Sifra_Mas
  53578.  
  53579.  
  53580. Go
  53581. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimckatpoz]'))
  53582. drop procedure [dbo].[sp_izmenimckatpoz]
  53583.  
  53584. Go
  53585.  
  53586. create          PROCEDURE [dbo].[sp_IzmeniMCKatPoz]
  53587.     @Sif_MCPozicija int,
  53588.     @ImeMCPozicija nvarchar(50),
  53589.     @SkrImeMCPozicija nvarchar(10),
  53590.     @Tip char(1),
  53591.     @DozvVredC  nvarchar(300),
  53592.     @DozvVredNOd decimal(18,6),
  53593.     @DozvVredNDo decimal(18,6)
  53594. AS
  53595.     UPDATE    MCKatPozicija
  53596.     SET        ImeMCPozicija = @ImeMCPozicija,
  53597.             SkrImeMCPozicija = @SkrImeMCPozicija,
  53598.             Tip = @Tip,
  53599.             DozvVredC = @DozvVredC,
  53600.             DozvVredNOd = @DozvVredNOd,
  53601.             DozvVredNDo = @DozvVredNDo
  53602.     WHERE    Sif_MCPozicija = @Sif_MCPozicija
  53603.  
  53604.  
  53605.  
  53606.  
  53607.  
  53608. Go
  53609. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimclista]'))
  53610. drop procedure [dbo].[sp_izmenimclista]
  53611.  
  53612. Go
  53613. create  PROCEDURE [dbo].[sp_IzmeniMCLista]
  53614.     @Br_MCLista    smallint,
  53615.     @Sif_MCPozicija    smallint,
  53616.     @ImeMCLista    nvarchar(50),
  53617.     @SkrImeMCLista    nvarchar(10),
  53618.     @Rbr    smallint,
  53619.     @Aktiven    char(1)
  53620.  AS
  53621.  
  53622.     UPDATE    MCLista
  53623.     SET        ImeMCLista = @ImeMCLista, 
  53624.             SkrImeMCLista = @SkrImeMCLista, 
  53625.             Rbr = @Rbr, 
  53626.             Aktiven = @Aktiven
  53627.     WHERE    Br_MCLista = @Br_MCLista AND Sif_MCPozicija = @Sif_MCPozicija
  53628.     Return @@Error
  53629.  
  53630.  
  53631.  
  53632. Go
  53633. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimerenjazaart]'))
  53634. drop procedure [dbo].[sp_izmenimerenjazaart]
  53635.  
  53636. Go
  53637. CREATE   PROCEDURE sp_IzmeniMerenjaZaArt
  53638.     @Sifra_Kup    char(6),
  53639.     @Datum        smalldatetime,
  53640.     @Sifra_Art    varchar(20),
  53641.     @Vrednost    decimal(18,6),
  53642.     @Proteini decimal(18,6)= null
  53643. AS
  53644.     Update  MerenjaZaArt
  53645.     Set Vrednost=@Vrednost, Proteini=@Proteini
  53646.     WHERE Sifra_Kup = @Sifra_Kup and Datum=@Datum and Sifra_Art=@Sifra_Art
  53647.     Return @@ERROR
  53648.  
  53649.  
  53650.  
  53651.  
  53652.  
  53653. Go
  53654. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenimikrolok]'))
  53655. drop procedure [dbo].[sp_izmenimikrolok]
  53656.  
  53657. Go
  53658.  
  53659. CREATE  PROCEDURE sp_IzmeniMikroLok
  53660.     @Sifra_MikLok    char(10),
  53661.     @Ime_MikLok    nvarchar(40),
  53662.     @Sifra_MakLok    char(10),
  53663.     @Sifra_Oe_Kniz smallint = null
  53664.  AS
  53665.     Update MikroLok 
  53666.     Set Ime_MikLok=@Ime_MikLok, Sifra_MakLok=@Sifra_MakLok, Sifra_oe_kniz=@Sifra_oe_Kniz
  53667.     Where Sifra_MikLok=@Sifra_MikLok
  53668.     Return @@ERROR
  53669.  
  53670.  
  53671.  
  53672. Go
  53673. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninabavnakatart]'))
  53674. drop procedure [dbo].[sp_izmeninabavnakatart]
  53675.  
  53676. Go
  53677.  
  53678.  
  53679.  
  53680.  
  53681.  
  53682.  
  53683.  
  53684.  
  53685. CREATE    PROCEDURE sp_IzmeniNabavnaKatart
  53686.  
  53687.     @Sifra_Art    varchar(20), 
  53688.     @Nabavna    decimal(12,4)
  53689. AS
  53690.     Update Katart 
  53691.     Set Nabavna= @Nabavna
  53692.     Where Sifra_art = @Sifra_art
  53693.     Return @@ERROR
  53694.  
  53695.  
  53696.  
  53697.  
  53698.  
  53699. Go
  53700. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninadvkor]'))
  53701. drop procedure [dbo].[sp_izmeninadvkor]
  53702.  
  53703. Go
  53704.  
  53705. CREATE  PROCEDURE [dbo].[sp_IzmeniNadvKor]
  53706.     @KorIme    varchar(15),
  53707.     @Sifra_Kup    char(6)=Null,
  53708.     @Lozinka    varchar(15)=Null,
  53709.     @Aktiven    char(1)=Null,
  53710.     @Aktiven_Od    smalldatetime=Null,
  53711.     @Aktiven_Do    smalldatetime=Null,
  53712.     @Jazik        char(3)=Null,
  53713.     @LokAdm     char(1)=Null,
  53714.     @email     varchar(50),
  53715.     @IzmenetOd varchar(30)
  53716.  AS
  53717.     Declare @IzmenetNa smalldatetime;
  53718.     Set @IzmenetNa = Getdate();
  53719.     if(@Lozinka IS NOT Null)
  53720.     Update NadvKor    
  53721.     Set Sifra_Kup=@Sifra_Kup, Lozinka=cast(@Lozinka as varbinary(100)), Aktiven=@Aktiven, Aktiven_Od=@Aktiven_Od, Aktiven_Do=@Aktiven_Do, Jazik=@Jazik,LokAdm=@LokAdm,email=@email,IzmenetOd=@IzmenetOd,IzmenetNa=@IzmenetNa
  53722.     Where KorIme=@KorIme
  53723.     else
  53724.     Update NadvKor
  53725.     Set Sifra_Kup=@Sifra_Kup,Aktiven=@Aktiven, Aktiven_Od=@Aktiven_Od, Aktiven_Do=@Aktiven_Do, Jazik=@Jazik,LokAdm=@LokAdm,email=@email,IzmenetOd=@IzmenetOd,IzmenetNa=@IzmenetNa
  53726.     Where KorIme=@KorIme
  53727.     Return @@ERROR
  53728.  
  53729.  
  53730. Go
  53731. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninalog]'))
  53732. drop procedure [dbo].[sp_izmeninalog]
  53733.  
  53734. Go
  53735. CREATE     PROCEDURE sp_IzmeniNalog
  53736.     @Sifra_Nal smallint,
  53737.     @ImeNal Char(40),
  53738.     @Knizi char(1) ,
  53739.     @SvojNal char(1),
  53740.     @MoraSubAn char(1) = Null,
  53741.     @PrasDanok char(1) = Null,
  53742.     @PrasDanokDev char(1) = Null,
  53743.     @PredlDatNaDok char(1) = Null,
  53744.     @VoDDV_Knig    char(1)=NULL,
  53745.     @Kto_Blag    char(10)=NULL,
  53746.     @Predl_Nar_Nal char(1) = Null
  53747. AS
  53748.     SET NOCOUNT ON
  53749.     UPDATE TipNal
  53750.     SET ImeNal=@ImeNal, Knizi=@Knizi,  SvojNal=@SvojNal, MoraSubAn = @MoraSubAn,
  53751.     PrasDanok = @PrasDanok, PrasDanokDev = @PrasDanokDev, PredlDatNaDok = @PredlDatNaDok,
  53752.     VoDDV_Knig=@VoDDV_Knig, Kto_Blag=@Kto_Blag, Predl_Nar_Nal=@Predl_Nar_Nal
  53753.     WHERE Sifra_Nal=@Sifra_Nal
  53754. RETURN @@ERROR
  53755.  
  53756.  
  53757. Go
  53758. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninalozi]'))
  53759. drop procedure [dbo].[sp_izmeninalozi]
  53760.  
  53761. Go
  53762. CREATE  PROCEDURE sp_IzmeniNalozi
  53763.     @Sifra_Nal smallint,
  53764.     @Broj_Nal int,
  53765.     @Datum_Nal smalldatetime,
  53766.     @Sts_Kniz char(1),
  53767.     @VleguvaVoRekap char(1) = 'D'
  53768. AS
  53769.    UPDATE [Nalozi]
  53770.    SET [Datum_Nal]=@Datum_Nal, [Sts_kniz]=@Sts_kniz, VleguvaVoRekap = @VleguvaVoRekap
  53771.    WHERE [Sifra_nal]=@Sifra_Nal AND [broj_Nal] = @Broj_Nal
  53772. RETURN @@ERROR
  53773.  
  53774.  
  53775. Go
  53776. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninaloziprenosnici]'))
  53777. drop procedure [dbo].[sp_izmeninaloziprenosnici]
  53778.  
  53779. Go
  53780. CREATE     PROCEDURE sp_IzmeniNaloziPrenosnici
  53781.     @OdPrimaDava    char(1) = 'P',        -- P - Prima    D - Dava
  53782.     @NaPrimaDava    char(1) = 'D',    -- P - Prima    D - Dava
  53783.     @Datum_Od    smalldatetime = Null,
  53784.     @Datum_Do    smalldatetime = Null
  53785. AS
  53786.     Declare @SSQL as varchar(2000)
  53787.     Create Table #Dokr
  53788.     (
  53789.      Sifra_Oe smallint,
  53790.      Sifra_Dok smallint,
  53791.      Broj_Dok int,
  53792.      Sifra_Prim smallint,
  53793.      ImaDodatna char(1),
  53794.      Sifra_Nal smallint,
  53795.      Broj_Nal int
  53796.     )
  53797.     Set @SSQL = ' Select Sifra_Oe, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna,
  53798.             Sifra_Nal, Broj_Nal
  53799.             From Dokr
  53800.             Where ImaDodatna = ''' + @OdPrimaDava + ''' 
  53801.             And Sifra_Nal Is Not Null '
  53802.     If @Datum_Od Is Not Null
  53803.         Set @SSQL = @SSQL + ' and Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  53804.     If @Datum_Do Is Not Null
  53805.         Set @SSQL = @SSQL + ' and Datum_Dok <= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  53806. print @SSQL
  53807.     Insert Into #Dokr Exec(@SSQL)
  53808.     Select * from #Dokr
  53809.     Update Dokr 
  53810.     Set Dokr.Sifra_Nal=#Dokr.Sifra_Nal, Dokr.Broj_Nal=#Dokr.Broj_Nal 
  53811.     From #Dokr
  53812.     Where Dokr.Sifra_Oe=#Dokr.Sifra_Prim
  53813.     and Dokr.Sifra_Dok=#Dokr.Sifra_Dok
  53814.     and Dokr.Broj_Dok=#Dokr.Broj_Dok
  53815.     and Dokr.Sifra_Prim=#Dokr.Sifra_Oe
  53816.     and Dokr.ImaDodatna=@NaPrimaDava
  53817.     Set @SSQL = ' Select Sifra_Oe, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna,
  53818.             Sifra_Nal, Broj_Nal
  53819.             From Dokr
  53820.             Where ImaDodatna = ''' + @NaPrimaDava + ''' 
  53821.             And Sifra_Nal Is Not Null '
  53822.     If @Datum_Od Is Not Null
  53823.         Set @SSQL = @SSQL + ' and Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  53824.     If @Datum_Do Is Not Null
  53825.         Set @SSQL = @SSQL + ' and Datum_Dok <= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  53826.     Exec(@SSQL)
  53827.  
  53828.  
  53829. Go
  53830. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninaplata]'))
  53831. drop procedure [dbo].[sp_izmeninaplata]
  53832.  
  53833. Go
  53834. CREATE PROCEDURE sp_IzmeniNaplata
  53835.     @Sifra_OE    smallint = Null,
  53836.     @Sifra_Dok    smallint = Null,
  53837.     @Broj_Dok    int = Null,
  53838.     @Sifra_Kup    char(6) = Null,
  53839.     @Pobaruva    decimal(18,6) = Null,
  53840.     @Datum_Dok    smalldatetime = Null
  53841. AS
  53842.     Update Naplata 
  53843.     Set Sifra_Kup=Sifra_Kup, Pobaruva=@Pobaruva, Datum_Dok=@Datum_Dok
  53844.     Where Sifra_OE=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok
  53845.     Return @@ERROR
  53846.  
  53847.  
  53848.  
  53849. Go
  53850. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninaracki]'))
  53851. drop procedure [dbo].[sp_izmeninaracki]
  53852.  
  53853. Go
  53854.  
  53855.  
  53856.  
  53857. CREATE         PROCEDURE sp_IzmeniNaracki
  53858.     @Sifra_OE Smallint,
  53859.     @Sifra_Nar Smallint,
  53860.     @Broj_Nar Int,
  53861.     @Identif_Br nVarchar(40),
  53862.     @Sifra_Kup Char(6),
  53863.     @Sifra_Obj Smallint,
  53864.     @Datum_Nar Smalldatetime,
  53865.     @Uces Decimal(6,2),
  53866.     @Rok Smallint,
  53867.     @Sifra_Pat Smallint,
  53868.     @Toc200 Decimal(18,6),
  53869.     @KojaVal Char(3),
  53870.     @Kurs Decimal(18,8),
  53871.     @DanDokCena Char(1),
  53872.     @DanMagCena Char(1),
  53873.     @CenaIznos Char(1),
  53874.     @TekstPosle nVarchar(1500),
  53875.     @Kasa Decimal(6,2),
  53876.     @Sifra_Nivo char(2),
  53877.     @Spremil varchar(5) = Null,
  53878.     @SiteTros decimal(18,6) = Null,
  53879.     @Prevoz Decimal(18,6) = Null,
  53880.     @Osiguruv Decimal(18,6) = Null,
  53881.     @Carina Decimal(18,6) = Null,
  53882.     @Spedicija Decimal(18,6) = Null,
  53883.     @Smena Char(1) = Null,
  53884.     @KojaSmetka Char(1) = Null,
  53885.     @IzmenetPoslePec Char(1) = Null,
  53886.     @PlakOpis    char(4) = Null,
  53887.     @Dat_Ocek    smalldatetime=Null,
  53888.     @Dat_Pristig    smalldatetime=Null,
  53889.     @Dat_Utov    smalldatetime=Null,
  53890.     @Vet_Broj    varchar(20)=Null,
  53891.     @Dat_Vet_Vazn smalldatetime=Null,
  53892.     @Vozilo_Kont    varchar(20)=Null,
  53893.     @Stat_Nar    char(1) = Null,
  53894.     @Broj_Proekt    int = Null,
  53895.     @TekstPred    nvarchar(1500) = Null
  53896.  
  53897. AS
  53898.  
  53899. UPDATE [Naracki]
  53900. SET [Identif_Br]=@Identif_Br, [Sifra_Kup]=@Sifra_Kup, [Sifra_Obj]=@Sifra_Obj, [Datum_Nar]=@Datum_Nar, [Datum_Izm]=GetDate(), [Uces]=@Uces, [Rok]=@Rok,
  53901.     [Sifra_Pat]=@Sifra_Pat, [Toc200]=@Toc200, [KojaVal]=@KojaVal, [Kurs]=@Kurs, [DanDokCena]=@DanDokCena, [DanMagCena]=@DanMagCena,
  53902.     [CenaIznos]=@CenaIznos, [TekstPosle]=@TekstPosle, [Kasa]=@Kasa, [Sifra_Nivo]=@Sifra_Nivo, [Spremil]=@Spremil, [SiteTros]=@SiteTros, Prevoz=@Prevoz, 
  53903.     Osiguruv=@Osiguruv, Carina=@Carina, Spedicija=@Spedicija, Sifra_OpIz = SUSER_SNAME(), Smena=@Smena, KojaSmetka=@KojaSmetka, IzmenetPoslePec=@IzmenetPoslePec,
  53904.     PlakOpis=@PlakOpis, Dat_Ocek=@Dat_Ocek, Dat_Pristig=@Dat_Pristig, Dat_Utov=@Dat_Utov, Vet_Broj=@Vet_Broj, Dat_Vet_Vazn=@Dat_Vet_Vazn, Vozilo_Kont=@Vozilo_Kont,
  53905.     Stat_Nar=@Stat_Nar, Broj_Proekt = @Broj_Proekt, TekstPred = @TekstPred
  53906. WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  53907.  
  53908.  
  53909.  
  53910.  
  53911.  
  53912. Go
  53913. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninaracki_popec]'))
  53914. drop procedure [dbo].[sp_izmeninaracki_popec]
  53915.  
  53916. Go
  53917. CREATE PROCEDURE sp_IzmeniNaracki_PoPec
  53918.     @Sifra_Oe        smallint,
  53919.     @Sifra_Nar        smallint,
  53920.     @Broj_Nar        int
  53921. --    @Ispecaten        smallint,
  53922. --    @IzmenetPoslePec    char(1)
  53923.  AS
  53924.     Declare @Ispecaten smallint
  53925.     Select @Ispecaten = Ispecaten 
  53926.     From Naracki
  53927.     Where Sifra_Oe=@Sifra_Oe and Sifra_Nar=@Sifra_Nar and Broj_Nar=@Broj_Nar
  53928.     If @Ispecaten Is Null
  53929.         Set @Ispecaten = 0
  53930.     Set @Ispecaten = @Ispecaten + 1
  53931.     Update Naracki 
  53932.     Set Ispecaten = @Ispecaten, IzmenetPoslePec = 'N'
  53933.     Where Sifra_Oe=@Sifra_Oe and Sifra_Nar=@Sifra_Nar and Broj_Nar=@Broj_Nar
  53934.  
  53935.  
  53936. Go
  53937. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeningbillcodes]'))
  53938. drop procedure [dbo].[sp_izmeningbillcodes]
  53939.  
  53940. Go
  53941.  
  53942.  
  53943. CREATE   PROCEDURE sp_IzmeniNGBillCodes
  53944.     @Sifra_BillCode    char(10),
  53945.     @ImeBillCode    nvarchar(50),
  53946.     @DefIznos    decimal(18,2),
  53947.     @BrojRati    smallint,
  53948.     @DenoviVoGod    smallint,
  53949.     @DP         char(1) = NULL,
  53950.     @Tip_BillCode     char(1) = NULL,
  53951.     @DefProcent     decimal(6, 2) = NULL,
  53952.     @PoDatumi    char (1) = Null,
  53953.     @Datum1        smalldatetime = Null,
  53954.     @Datum2        smalldatetime = Null,
  53955.     @Datum3        smalldatetime = Null,
  53956.     @Datum4        smalldatetime = Null,
  53957.     @Datum5        smalldatetime = Null,
  53958.     @Datum6        smalldatetime = Null,
  53959.     @Datum7        smalldatetime = Null,
  53960.     @Datum8        smalldatetime = Null,
  53961.     @Datum9        smalldatetime = Null,
  53962.     @Datum10    smalldatetime = Null,
  53963.     @Datum11    smalldatetime = Null,
  53964.     @Datum12    smalldatetime = Null,
  53965.     @Opis_Fakt    nvarchar (40) = Null,
  53966.     @DniDospDef    smallint = 0
  53967.  
  53968. AS
  53969.  
  53970.     Update NGBillCodes 
  53971.     Set ImeBillCode=@ImeBillCode, DefIznos=@DefIznos, BrojRati=@BrojRati, DenoviVoGod=@DenoviVoGod, DP=@DP, Tip_BillCode=@Tip_BillCode, DefProcent=@DefProcent,
  53972.     PoDatumi = @PoDatumi,
  53973.     Datum1    = @Datum1,
  53974.     Datum2    = @Datum2,
  53975.     Datum3    = @Datum3,
  53976.     Datum4    = @Datum4,
  53977.     Datum5    = @Datum5,
  53978.     Datum6    = @Datum6,
  53979.     Datum7    = @Datum7,
  53980.     Datum8    = @Datum8,
  53981.     Datum9    = @Datum9,
  53982.     Datum10    = @Datum10,
  53983.     Datum11    = @Datum11,
  53984.     Datum12    = @Datum12,
  53985.         Opis_Fakt = @Opis_Fakt,
  53986.         DniDospDef = @DniDospDef
  53987.  
  53988.     Where Sifra_BillCode=@Sifra_BillCode
  53989.     Return @@ERROR
  53990.  
  53991.  
  53992.  
  53993.  
  53994.  
  53995. Go
  53996. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeningcoursetype]'))
  53997. drop procedure [dbo].[sp_izmeningcoursetype]
  53998.  
  53999. Go
  54000. CREATE PROCEDURE sp_IzmeniNGCourseType
  54001.     @Sifra_CourseType    char(10), 
  54002.     @ImeCourseType    nvarchar(40), 
  54003.     @NivoCourseType    smallint
  54004. AS
  54005.     Update NGCourseType 
  54006.     Set ImeCourseType=@ImeCourseType, NivoCourseType=@NivoCourseType
  54007.     Where Sifra_CourseType=@Sifra_CourseType
  54008.     Return @@ERROR
  54009.  
  54010.  
  54011. Go
  54012. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeningfamilija]'))
  54013. drop procedure [dbo].[sp_izmeningfamilija]
  54014.  
  54015. Go
  54016. CREATE PROCEDURE sp_IzmeniNGFamilija
  54017.     @Sifra_Famil    char(20),
  54018.     @ImeFamil    nvarchar(50)
  54019. AS
  54020.     Update NGFamilija 
  54021.     Set ImeFamil=@ImeFamil
  54022.     Where Sifra_Famil=@Sifra_Famil
  54023.     Return @@ERROR
  54024.  
  54025.  
  54026. Go
  54027. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninginvoice]'))
  54028. drop procedure [dbo].[sp_izmeninginvoice]
  54029.  
  54030. Go
  54031. CREATE PROCEDURE sp_IzmeniNGInvoice
  54032.     @Sifra_Oe    smallint,
  54033.     @Broj_Inv    int,
  54034.     @FiscPeriod    char(10), 
  54035.     @Sifra_Student    char(6), 
  54036.     @Datum_Inv    smalldatetime, 
  54037.     @Opis_Invoice    nvarchar(40), 
  54038.     @SlobTekst    nvarchar(1000),
  54039.     @MaxObidi    Smallint = 20
  54040. AS
  54041.     Update NGInvoice 
  54042.     Set FiscPeriod=@FiscPeriod, Sifra_Student=@Sifra_Student, Datum_Inv=@Datum_Inv , Opis_Invoice=@Opis_Invoice, SlobTekst=@SlobTekst
  54043.     Where Sifra_Oe=@Sifra_Oe And @Broj_Inv=Broj_Inv
  54044.     Return @@ERROR
  54045.  
  54046.  
  54047.  
  54048. Go
  54049. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninginvoicestastavka]'))
  54050. drop procedure [dbo].[sp_izmeninginvoicestastavka]
  54051.  
  54052. Go
  54053. CREATE PROCEDURE sp_IzmeniNGInvoiceStaStavka
  54054.     @Sifra_Oe        smallint, 
  54055.     @Broj_Inv        int, 
  54056.     @RbrStavka        smallint, 
  54057.     @Datum_Stavka    smalldatetime, 
  54058.     @Datum_Dosp_Stavka    smalldatetime, 
  54059.     @Sifra_BillCode        char(10), 
  54060.     @Sifra_OtherCode    char(1), 
  54061.     @Iznos_Stavka        decimal(18,2), 
  54062.     @Opis_Stavka        nvarchar
  54063. AS
  54064.     Update NGInvoiceSta 
  54065.     Set Datum_Stavka=@Datum_Stavka, Datum_Dosp_Stavka=@Datum_Dosp_Stavka, Sifra_BillCode=@Sifra_BillCode, 
  54066.         Sifra_OtherCode=@Sifra_OtherCode, Iznos_Stavka=@Iznos_Stavka, Opis_Stavka=@Opis_Stavka
  54067.     Where Sifra_Oe=@Sifra_Oe And Broj_Inv=@Broj_Inv And RbrStavka=@RbrStavka
  54068.     Return @@ERROR
  54069.  
  54070.  
  54071. Go
  54072. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeningschoolyear]'))
  54073. drop procedure [dbo].[sp_izmeningschoolyear]
  54074.  
  54075. Go
  54076.  
  54077. create  PROCEDURE sp_IzmeniNGSchoolYear
  54078.     @Sifra_SchoolYear    char(10), 
  54079.     @ImeSchoolYear        nvarchar(40)
  54080.  
  54081. AS
  54082.  
  54083.     Update NGSchoolYear
  54084.     Set ImeSchoolYear = @ImeSchoolYear
  54085.     Where Sifra_SchoolYear = @Sifra_SchoolYear
  54086.  
  54087.     Return @@ERROR
  54088.  
  54089.  
  54090.  
  54091. Go
  54092. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeningstudents]'))
  54093. drop procedure [dbo].[sp_izmeningstudents]
  54094.  
  54095. Go
  54096.  
  54097.  
  54098. CREATE   PROCEDURE sp_IzmeniNGStudents
  54099.     @Sifra_Student    char(6), 
  54100.     @ImeStudent    nvarchar(40), 
  54101.     @Adresa    nvarchar(80), 
  54102.     @Posta        char(10), 
  54103.     @SMesto    nvarchar(40), 
  54104.     @Telefon    nvarchar(50), 
  54105.     @Sifra_Famil    char(20), 
  54106.     @Sifra_CourseType    char(10), 
  54107.     @Godina    char(10),
  54108.     @Aktiven    char(1),
  54109.     @Adresa_Bill     nvarchar(80) = Null,
  54110.     @Posta_Bill     char(10) = Null,
  54111.     @SMesto_Bill     nvarchar(40) = Null,
  54112.     @ImeStudent_Bill    nvarchar(40) = Null,
  54113.     @TelMob          nvarchar(40) = Null,
  54114.     @eMailAdr        varchar(50) = Null,
  54115.     @Zemja          nvarchar(50) = Null
  54116.  
  54117. AS
  54118.  
  54119.     Update NGStudents 
  54120.     Set ImeStudent=@ImeStudent, Adresa=@Adresa, Posta=@Posta, SMesto=@SMesto, Telefon=@Telefon, 
  54121.         Sifra_Famil=@Sifra_Famil, Sifra_CourseType=@Sifra_CourseType, Godina=@Godina, Aktiven=@Aktiven,
  54122.         Adresa_Bill=@Adresa_Bill, Posta_Bill=@Posta_Bill, SMesto_Bill=@SMesto_Bill,
  54123.         ImeStudent_Bill=@ImeStudent_Bill,
  54124.         TelMob=@TelMob, eMailAdr=@eMailAdr, Zemja=@Zemja
  54125.     Where Sifra_Student=@Sifra_Student
  54126.     Return @@ERROR
  54127.  
  54128.  
  54129.  
  54130.  
  54131. Go
  54132. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninivo]'))
  54133. drop procedure [dbo].[sp_izmeninivo]
  54134.  
  54135. Go
  54136. CREATE     PROCEDURE sp_IzmeniNivo
  54137.     @Sifra_Nivo    Char(2),
  54138.     @ImeNivo    Char(40),
  54139.     @Prioritet    smallint,
  54140.     @Rok_Dosp    smallint,
  54141.     @Kasa        decimal(6,2),
  54142.     @Uces        decimal(6,2),
  54143.     @KojaCena    char(1) = NULL
  54144. AS
  54145.     SET NOCOUNT ON
  54146.     Declare @Propagiraj as char(1)
  54147.     Set @Propagiraj = 'D'
  54148.     UPDATE [Nivo]
  54149.     SET [ImeNivo]=@ImeNivo,  [Prioritet]=@Prioritet, Rok_Dosp = @Rok_Dosp, Kasa = @Kasa, Uces = @Uces, KojaCena = @KojaCena, Propagiraj=@Propagiraj
  54150.     WHERE [Sifra_Nivo]=@Sifra_Nivo
  54151. RETURN @@ERROR
  54152.  
  54153.  
  54154.  
  54155. Go
  54156. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeninivocenikartkor]'))
  54157. drop procedure [dbo].[sp_izmeninivocenikartkor]
  54158.  
  54159. Go
  54160. CREATE PROCEDURE sp_IzmeniNivoCeniKartKor
  54161.     @Sifra_CeniKartKor    smallint, 
  54162.     @ImeCeniKartKor    char(30)
  54163.  AS
  54164.     Update NivoCeniKartKor 
  54165.     Set ImeCeniKartKor = @ImeCeniKartKor
  54166.     Where Sifra_CeniKartKor=@Sifra_CeniKartKor
  54167.     Return @@ERROR
  54168.  
  54169.  
  54170.  
  54171. Go
  54172. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenioe]'))
  54173. drop procedure [dbo].[sp_izmenioe]
  54174.  
  54175. Go
  54176.  
  54177. CREATE             PROCEDURE [dbo].[sp_IzmeniOE]
  54178.     @Sifra_OE smallint,
  54179.     @ImeOrg char(40),
  54180.     @GolMal char(1),
  54181.     @SMatFin char(1),
  54182.     @CeniSoDanok Char(1),
  54183.     @SifMark smallint, 
  54184.     @OrgDaliFin char(1),
  54185.     @ProcSpecPopust  decimal(9,2),
  54186.     @DaliZbirenMag char(1),
  54187.     @DozvTipdok varchar(100),
  54188.     @ZabrTipdok varchar(100),
  54189.     @OePrva smallint,
  54190.     @OeVtora smallint,
  54191.     @NabFifo Char(1),
  54192.     @PosCena_Pri_Pren Char(1) = Null,
  54193.     @Predupr_Neg Char(1) = Null,
  54194.     @Nabavni char (1) = Null,
  54195.     @DaliRokKontr char(1) = Null,
  54196.     @DanDokMaska char(1) = Null,
  54197.     @Dozv_Konzum char(1) = Null,
  54198.     @TipMag char(1)= NULL,
  54199.     @TipD_Izlez_Redoven varchar(20)= NULL,
  54200.     @TipD_Vlez_Redoven varchar(20)= NULL,
  54201.     @Tip_Randeman char(1)=NULL,
  54202.         @Sifra_Kup char(6) = Null,
  54203.     @Vleci_PlanskaC char(1) = 'N',
  54204.     @Sifra_Oe_SAP varchar(10)=NULL,
  54205.     @MestoIsporaka varchar(20)= null,
  54206.     @OrgGrad varchar(30) = Null
  54207.  
  54208. AS
  54209.  
  54210.     UPDATE Orged
  54211.     SET     ImeOrg=@ImeOrg, GolMal=@GolMal, SMatFin=@SMatFin,CeniSoDanok=@CeniSoDanok,
  54212. Sifra_Mark=@SifMark, OrgDaliFin=@OrgDaliFin, ProcSpecPopust=@ProcSpecPopust,
  54213. DaliZbirenMag=@DaliZbirenMag, DozvTipdok=@DozvTipdok, ZabrTipdok=@ZabrTipdok,
  54214. OePrva=@OePrva, OeVtora=@OeVtora, NabFifo=@NabFifo, PosCena_Pri_Pren=@PosCena_Pri_Pren,
  54215. Predupr_Neg=@Predupr_Neg, Nabavni=@Nabavni,    DaliRokKontr=@DaliRokKontr,
  54216. DanDokMaska=@DanDokMaska, Dozv_Konzum=@Dozv_Konzum, 
  54217. TipMag=@TipMag, TipD_Izlez_Redoven=@TipD_Izlez_Redoven, TipD_Vlez_Redoven=@TipD_Vlez_Redoven, Tip_Randeman=@Tip_Randeman,
  54218. Sifra_Kup=@Sifra_Kup, Vleci_PlanskaC = @Vleci_PlanskaC, Sifra_Oe_SAP = @Sifra_Oe_SAP, MestoIsporaka= @MestoIsporaka,
  54219. OrgGrad = @OrgGrad
  54220.     WHERE Sifra_OE=@Sifra_OE
  54221.  
  54222.     RETURN @@ERROR
  54223.  
  54224.  
  54225.  
  54226.  
  54227.  
  54228.  
  54229. Go
  54230. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenioe_sap]'))
  54231. drop procedure [dbo].[sp_izmenioe_sap]
  54232.  
  54233. Go
  54234.  
  54235.  
  54236.  
  54237.  
  54238.  
  54239.  
  54240. CREATE  PROCEDURE sp_IzmeniOE_SAP
  54241.     @Sifra_Oe_SAP nchar(10),
  54242.     @ImeOrg char(40)
  54243. AS
  54244.     UPDATE Orged
  54245.     SET     ImeOrg=@ImeOrg
  54246.     WHERE Sifra_OE_SAP=@Sifra_Oe_SAP
  54247.     RETURN @@ERROR
  54248.  
  54249.  
  54250.  
  54251.  
  54252. Go
  54253. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenioperatori]'))
  54254. drop procedure [dbo].[sp_izmenioperatori]
  54255.  
  54256. Go
  54257.  
  54258. CREATE   PROCEDURE sp_IzmeniOperatori
  54259.     @Sifra_Oper    smallint,
  54260.     @Ime_Oper    varchar(50),
  54261.     @Lozinka    varchar(20) = Null,
  54262.     @Login_Ime    varchar(20) = Null,
  54263.     @Sifra_Oe    smallint = Null,
  54264.     @MaxPopust    decimal (6, 2) = Null,
  54265.     @Sifra_GrOper    char(20) = Null,
  54266.     @Sif_GrOrg    char(6) = Null,
  54267.     @Aktiven    char(1) = Null
  54268.  
  54269.  AS
  54270.     Update Operatori 
  54271.     Set Ime_Oper=@Ime_Oper, Lozinka=@Lozinka, Login_Ime=@Login_Ime, Sifra_Oe=@Sifra_Oe, 
  54272.         MaxPopust = @MaxPopust, Sifra_GrOper=@Sifra_GrOper, Sif_GrOrg = @Sif_GrOrg,
  54273.             Aktiven = @Aktiven
  54274.     Where Sifra_Oper=@Sifra_Oper
  54275.     Return @@ERROR
  54276.  
  54277.  
  54278.  
  54279. Go
  54280. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenioptzalpooe]'))
  54281. drop procedure [dbo].[sp_izmenioptzalpooe]
  54282.  
  54283. Go
  54284.  
  54285. CREATE PROCEDURE sp_IzmeniOptZalPoOe 
  54286.     @Sifra_Oe    Smallint,
  54287.     @Sifra_Art    varchar(20),
  54288.     @MinZal    Decimal(18,6) = Null,
  54289.     @MaxZal    Decimal(18,6) = Null,
  54290.     @OptZal    Decimal(18,6) = Null
  54291. AS
  54292.     Update OptZalPoOe 
  54293.     Set MinZal=@MinZal, MaxZal=@MaxZal, OptZal=@OptZal
  54294.     Where Sifra_Oe = @Sifra_Oe and Sifra_Art = @Sifra_Art
  54295.     Return @@ERROR
  54296.  
  54297.  
  54298.  
  54299. Go
  54300. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniosngrpodel]'))
  54301. drop procedure [dbo].[sp_izmeniosngrpodel]
  54302.  
  54303. Go
  54304.  
  54305.  
  54306.  
  54307. create    PROCEDURE sp_IzmeniOsnGrPodel
  54308.     @Sifra_OsnGrPodel   smallint,
  54309.     @ImeOsnGrPodel        nvarchar(25)
  54310. AS
  54311.     Update OsnGrPodel 
  54312.     Set ImeOsnGrPodel=@ImeOsnGrPodel Where Sifra_OsnGrPodel=@Sifra_OsnGrPodel
  54313.     Return @@ERROR
  54314.  
  54315.  
  54316.  
  54317.  
  54318. Go
  54319. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniosnovosig]'))
  54320. drop procedure [dbo].[sp_izmeniosnovosig]
  54321.  
  54322. Go
  54323.  
  54324.  
  54325. CREATE  PROCEDURE sp_IzmeniOsnovOsig
  54326.  
  54327.     @Sifra_OsnovOsig    char(2),
  54328.     @ImeOsnovOsig        nchar(120),
  54329.     @DolgoImeOsnovOsig        nchar(200)
  54330. AS
  54331.     Update OsnovOsig 
  54332.     Set ImeOsnovOsig=@ImeOsnovOsig, DolgoImeOsnovOsig=@DolgoImeOsnovOsig
  54333.     Where Sifra_OsnovOsig=@Sifra_OsnovOsig
  54334.     Return @@ERROR
  54335.  
  54336.  
  54337. Go
  54338. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniosnpodelbi]'))
  54339. drop procedure [dbo].[sp_izmeniosnpodelbi]
  54340.  
  54341. Go
  54342.  
  54343.  
  54344.  
  54345.  
  54346. CREATE  PROCEDURE sp_IzmeniOsnPodelbi
  54347.     @Sifra_OsnGrPodel smallint,
  54348.     @Sifra_OsnPodel smallint,
  54349.     @Vrednost nvarchar(25), 
  54350.     @DaliBrisi char(1) = 'N'
  54351.  AS
  54352.  
  54353. if exists (select * from OsnPodelbi O where O.Sifra_OsnGrPodel = @Sifra_OsnGrPodel and O.Sifra_OsnPodel = @Sifra_OsnPodel) and @DaliBrisi = 'N'
  54354.     update OsnPodelbi set Vrednost = @Vrednost where Sifra_OsnGrPodel = @Sifra_OsnGrPodel and Sifra_OsnPodel = @Sifra_OsnPodel 
  54355. else If exists (select * from OsnPodelbi O where O.Sifra_OsnGrPodel = @Sifra_OsnGrPodel and O.Sifra_OsnPodel = @Sifra_OsnPodel) and @DaliBrisi = 'D'    
  54356.     delete from OsnPodelbi where Sifra_OsnGrPodel = @Sifra_OsnGrPodel and Sifra_OsnPodel = @Sifra_OsnPodel 
  54357. else
  54358.     insert into OsnPodelbi (Sifra_OsnGrPodel, Sifra_OsnPodel, Vrednost)
  54359.     values (@Sifra_OsnGrPodel, @Sifra_OsnPodel, @Vrednost)
  54360.  
  54361. RETURN @@ERROR
  54362.  
  54363.  
  54364.  
  54365.  
  54366.  
  54367.  
  54368. Go
  54369. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniosnsred]'))
  54370. drop procedure [dbo].[sp_izmeniosnsred]
  54371.  
  54372. Go
  54373.  
  54374.  
  54375.  
  54376.  
  54377.  
  54378. CREATE      PROCEDURE sp_IzmeniOsnSred
  54379.     @Inv_Broj    char(10), 
  54380.     @Ime        nvarchar(100), 
  54381.     @Opis        nvarchar(250), 
  54382.     @Kto_Anal    char(10), 
  54383.     @Br_Smena    char(1), 
  54384.     @Sifra_Amor    char(3), 
  54385.     @BarKod    char(15) = Null,
  54386.     @Resen              char(1),
  54387.     @Oznaka    nvarchar(10) = Null,
  54388.     @Tip             char(2),
  54389.     @DatNab        smalldatetime = Null,
  54390.     @ImeStr        nvarchar(100) = Null,
  54391.     @Sifra_Div smallint= null,
  54392.     @Sifra_trosM smallint = null,
  54393.     @Sifra_TrosV smallint= null   
  54394.  AS
  54395.     Update OsnSred
  54396.     Set Ime=@Ime, Opis=@Opis, Kto_Anal=@Kto_Anal, Br_Smena=@Br_Smena, Sifra_Amor=@Sifra_Amor, BarKod=@BarKod, Resen=@Resen, 
  54397.     Oznaka=@Oznaka, Tip=@Tip, DatNab=@DatNab, ImeStr=@ImeStr, Sifra_Div=@Sifra_Div, Sifra_trosM=@Sifra_trosM, Sifra_TrosV=@Sifra_TrosV
  54398.     Where Inv_Broj=@Inv_Broj
  54399.     Return @@ERROR
  54400.  
  54401.  
  54402. Go
  54403. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniosnsredbarkod]'))
  54404. drop procedure [dbo].[sp_izmeniosnsredbarkod]
  54405.  
  54406. Go
  54407. CREATE PROCEDURE sp_IzmeniOsnSredBarKod
  54408.     @Inv_Broj    char(10),
  54409.     @BarKod        char(15)
  54410. AS
  54411.     UPDATE OsnSred SET BarKod=@BarKod WHERE Inv_Broj=@Inv_Broj
  54412.  
  54413.  
  54414.  
  54415. Go
  54416. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniotkrojsema]'))
  54417. drop procedure [dbo].[sp_izmeniotkrojsema]
  54418.  
  54419. Go
  54420. CREATE PROCEDURE sp_IzmeniOtkrojSema
  54421.     @Sifra_Otkr    smallint,
  54422.     @Proc1        decimal(6,2),        
  54423.     @Proc2        decimal(6,2),
  54424.     @Proc3        decimal(6,2),
  54425.     @Proc4        decimal(6,2),
  54426.     @Proc5        decimal(6,2)    
  54427.  AS
  54428.     Update OtkrojSema
  54429.     Set Proc1=@Proc1, Proc2=@Proc2, Proc3=@Proc3, Proc4=@Proc4, Proc5=@Proc5
  54430.     Where Sifra_Otkr=@Sifra_Otkr
  54431.     Return @@ERROR
  54432.  
  54433.  
  54434.  
  54435. Go
  54436. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipacienti]'))
  54437. drop procedure [dbo].[sp_izmenipacienti]
  54438.  
  54439. Go
  54440.  
  54441.  
  54442.  
  54443. CREATE   PROCEDURE sp_IzmeniPacienti
  54444.  
  54445.     @EMBG            char(13),
  54446.     @ImePacient        nchar(40),
  54447.     @Broj_Kniska        char(14),
  54448.     @Sifra_Kompanija    char(10),
  54449.     @Sifra_Lekar        char(6),
  54450.     @Sifra_OsnovOsig    char(2)
  54451. AS
  54452.     Update Pacienti 
  54453.     Set ImePacient=@ImePacient, Broj_Kniska=@Broj_Kniska, Sifra_Kompanija=@Sifra_Kompanija, Sifra_Lekar=@Sifra_Lekar, Sifra_OsnovOsig=@Sifra_OsnovOsig
  54454.     Where EMBG=@EMBG
  54455.     Return @@ERROR
  54456.  
  54457.  
  54458.  
  54459.  
  54460. Go
  54461. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipaklista]'))
  54462. drop procedure [dbo].[sp_izmenipaklista]
  54463.  
  54464. Go
  54465. CREATE  PROCEDURE sp_IzmeniPakLista
  54466.     @Sifra_OE    smallint,
  54467.     @Mesto_Pak    smallint, 
  54468.     @Sifra_Pak    smallint, 
  54469.     @Broj_Pak    int,
  54470.     @Datum    smalldatetime,
  54471.     @Sifra_kup    char(6),
  54472.     @Ext_Broj    varchar(20),
  54473.     @Vozilo        varchar(20),
  54474.     @Broj_RabN    int = Null
  54475. AS
  54476.     UPDATE PakLista SET Sifra_OE=@Sifra_OE, Broj_Pak=@Broj_Pak, Datum=@Datum, Sifra_Kup=@Sifra_Kup, Ext_Broj=@Ext_Broj, Vozilo=@Vozilo, Broj_RabN=@Broj_RabN
  54477.     WHERE Sifra_OE=@Sifra_OE and  Mesto_Pak=@Mesto_Pak and Sifra_Pak=@Sifra_Pak and Broj_Pak=@Broj_Pak 
  54478.     RETURN @@ERROR
  54479.  
  54480.  
  54481. Go
  54482. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipatnik]'))
  54483. drop procedure [dbo].[sp_izmenipatnik]
  54484.  
  54485. Go
  54486.  
  54487.  
  54488.  
  54489.  
  54490.  
  54491. CREATE      PROCEDURE sp_IzmeniPatnik
  54492.     @Sifra_Pat Smallint,
  54493.     @ImePat Varchar(30),
  54494.     @Adresa Varchar(40),
  54495.     @Adresa2 Varchar(40),
  54496.     @SMesto Varchar(20),
  54497.     @Posta Char(5),
  54498.     @Zemja Varchar(20),
  54499.     @Aktiven Char(1),
  54500.     @Telefon Varchar(20),
  54501.     @TelMobil Varchar(20),
  54502.     @Fax Varchar(20),
  54503.     @EMail Varchar(25),
  54504.     @LK Varchar(13),
  54505.     @Sopst_Mat Varchar(13),
  54506.     @ProcNagr    decimal(6,2)=Null,
  54507.     @OsnovnaPlata    decimal(18,2)=Null,
  54508.     @Sifra_Div smallint = Null,
  54509.     @Sifra_Pat_SAP nvarchar(10) = null,
  54510.     @Sifra_TrosM smallint = null,
  54511.     @OE_OS smallint= null,
  54512.     @OE_REK smallint= null,
  54513.     @OE_REP smallint= null
  54514.  
  54515. AS
  54516.     Declare @Propagiraj char(1)
  54517.     Set @Propagiraj='D'
  54518.     UPDATE [Patnici]
  54519.     SET [Sifra_Pat]=@Sifra_Pat, [ImePat]=@ImePat, [Adresa]=@Adresa, [Adresa2]=@Adresa2, [SMesto]=@SMesto, [Posta]=@Posta, 
  54520.         [Zemja]=@Zemja, [Aktiven]=@Aktiven, [Telefon]=@Telefon, [TelMobil]=@TelMobil, 
  54521.         [Fax]=@Fax, [EMail]=@EMail, [LK]=@LK, [Sopst_Mat]=@Sopst_Mat, [Propagiraj]=@Propagiraj, 
  54522.         ProcNagr=@ProcNagr, OsnovnaPlata=@OsnovnaPlata, Sifra_Div=@Sifra_Div, Sifra_Pat_SAP = @Sifra_Pat_SAP, 
  54523.         Sifra_TrosM = @Sifra_TrosM,OE_OS=@OE_OS, OE_REK=@OE_REK, OE_REP=@OE_REP
  54524.     WHERE Sifra_Pat=@Sifra_Pat
  54525. RETURN @@ERROR
  54526.  
  54527.  
  54528.  
  54529.  
  54530.  
  54531.  
  54532. Go
  54533. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniplanmes]'))
  54534. drop procedure [dbo].[sp_izmeniplanmes]
  54535.  
  54536. Go
  54537.  
  54538.  
  54539. CREATE   PROCEDURE sp_IzmeniPlanMes
  54540.     @Godina    smallint,
  54541.     @Mesec    smallint,
  54542.     @Sifra_Art    varchar(20),
  54543.     @Plan_Kol    decimal(18,6),
  54544.     @Plan_Proc    decimal(6,2),
  54545.     @Plan_Cena    decimal(12,4),
  54546.     @Sifra_Oe    smallint,
  54547.         @RbrVoPlan      smallint,
  54548.     @ImePlan    varchar(10)
  54549. AS
  54550.     Update PlanMes
  54551.     Set Plan_Kol=@Plan_Kol, Plan_Proc=@Plan_Proc, Plan_Cena=@Plan_Cena, Sifra_Oe=@Sifra_Oe,
  54552.             RbrVoPlan = @RbrVoPlan
  54553.     Where Sifra_Oe=@Sifra_oe and Godina=@Godina and Mesec=@Mesec and Sifra_art=@Sifra_art and ImePlan=@ImePlan
  54554.     Return @@Error
  54555.  
  54556.  
  54557.  
  54558. Go
  54559. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniplanpro]'))
  54560. drop procedure [dbo].[sp_izmeniplanpro]
  54561.  
  54562. Go
  54563. CREATE PROCEDURE sp_IzmeniPlanPro
  54564.     @Sif_GrOrg char(6),
  54565.     @Sifra_Nar smallint,
  54566.     @Broj_Plan char(10),
  54567.     @Datum_Plan smalldatetime,
  54568.     @Za_Datum_Od smalldatetime=NULL,
  54569.     @Za_Datum_Do smalldatetime=NULL,
  54570.     @Sifra_Pat smallint=NULL,
  54571.     @ZabelPlan varchar(40)=NULL,
  54572.     @Varij_Plan char(10)= NULL,
  54573.     @Status_Plan char(1)
  54574. AS
  54575. UPDATE PlanPro SET Datum_Plan=@Datum_Plan, Za_Datum_Od=@Za_Datum_Od, Za_Datum_Do=@Za_Datum_Do, 
  54576. Sifra_Pat=@Sifra_Pat, ZabelPlan=@ZabelPlan, Varij_Plan=@Varij_Plan, Status_Plan=@Status_Plan
  54577. WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_Nar=@Sifra_Nar AND Broj_Plan=@Broj_Plan
  54578. RETURN @@ERROR
  54579.  
  54580.  
  54581.  
  54582. Go
  54583. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipocnabceni]'))
  54584. drop procedure [dbo].[sp_izmenipocnabceni]
  54585.  
  54586. Go
  54587. CREATE PROCEDURE sp_IzmeniPocNabCeni
  54588.     @Sifra_Oe    smallint, 
  54589.     @Sifra_Art    varchar(20), 
  54590.     @NabCena    decimal(18,4), 
  54591.     @Datum_Dok    smalldatetime
  54592. AS
  54593.     Update PocNabCeni 
  54594.     Set NabCena=@NabCena, Datum_Dok=@Datum_Dok, Datum_Izm=GetDate()
  54595.     Where Sifra_Oe=@Sifra_Oe And Sifra_Art=@Sifra_Art
  54596.     Return @@ERROR
  54597.  
  54598.  
  54599. Go
  54600. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipocsostosn]'))
  54601. drop procedure [dbo].[sp_izmenipocsostosn]
  54602.  
  54603. Go
  54604. CREATE PROCEDURE sp_IzmeniPocSostOsn
  54605.     @Inv_Broj    char(10), 
  54606.     @Godina    smallint, 
  54607.     @Osn_Amor    decimal(18,2)=Null, 
  54608.     @Otpis_Pret    decimal(18,2)=Null, 
  54609.     @Sifra_MikLok    char(10)=Null, 
  54610.     @Sifra_Amor    char(3)=Null, 
  54611.     @Kto_Anal    char(10)=Null,
  54612.     @Sifra_Rab    int=Null
  54613. AS
  54614.     Update PocSostOsn
  54615.     Set Osn_Amor=@Osn_Amor, Otpis_Pret=@Otpis_Pret, Sifra_MikLok=@Sifra_MikLok, Sifra_Amor=@Sifra_Amor, Kto_Anal=@Kto_Anal, Sifra_Rab=@Sifra_Rab
  54616.     Where Inv_Broj=@Inv_Broj and Godina=@Godina
  54617.     Return @@ERROR
  54618.  
  54619.  
  54620. Go
  54621. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipodgrupa]'))
  54622. drop procedure [dbo].[sp_izmenipodgrupa]
  54623.  
  54624. Go
  54625.  
  54626.  
  54627. CREATE       PROCEDURE sp_IzmeniPodgrupa
  54628.     @Sifra_Podg Char(6),
  54629.     @Ime_Podg Char(30),
  54630.     @Ime_Podg2 Char(30),
  54631.     @Sifra_Gr Char(3),
  54632.     @Period_Nar smallint,
  54633.     @Period_Sigurno smallint,
  54634.     @Marza_Gol    decimal(6,2),
  54635.     @Marza_Mal    decimal(6,2),
  54636.     @Planska_Cena decimal(18,6) = Null,
  54637.     @Sifra_PodgrWeb smallint = Null,
  54638.         @Grupa_Marza smallint = null
  54639. AS
  54640.     SET NOCOUNT ON
  54641.     Declare @Propagiraj as char(1)
  54642.     Set @Propagiraj = 'D'
  54643.     UPDATE [Podgrupi]
  54644.     SET [Ime_Podg]=@Ime_Podg, [Ime_Podg2]=@Ime_Podg2, [Sifra_Gr]=@Sifra_Gr,
  54645.         [IzmenetNa]=GetDate(), [IzmenetOd]=SUser_SName(), Period_Nar=@Period_Nar, Period_Sigurno=@Period_Sigurno,
  54646.         Marza_Gol= @Marza_Gol, Marza_Mal= @Marza_Mal, Propagiraj=@Propagiraj, Planska_Cena=@Planska_Cena,
  54647.         Sifra_PodgrWeb=@Sifra_PodgrWeb, Grupa_Marza=@Grupa_Marza
  54648.     WHERE [Sifra_Podg]=@Sifra_Podg
  54649. RETURN @@ERROR
  54650.  
  54651.  
  54652.  
  54653.  
  54654. Go
  54655. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipodgrweb]'))
  54656. drop procedure [dbo].[sp_izmenipodgrweb]
  54657.  
  54658. Go
  54659. CREATE PROCEDURE sp_IzmeniPodgrWeb
  54660.     @Sifra_PodgrWeb    smallint,
  54661.     @Ime_PodgrWeb    nvarchar(40),
  54662.     @Sifra_GrWeb        smallint
  54663. AS
  54664.     Update PodgrWeb 
  54665.     Set Ime_PodgrWeb=@Ime_PodgrWeb, Sifra_GrWeb=@Sifra_GrWeb
  54666.     Where Sifra_PodgrWeb=@Sifra_PodgrWeb
  54667.     Return @@ERROR
  54668.  
  54669.  
  54670. Go
  54671. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipodracnisluzbi]'))
  54672. drop procedure [dbo].[sp_izmenipodracnisluzbi]
  54673.  
  54674. Go
  54675.  
  54676. CREATE PROCEDURE sp_IzmeniPodracniSluzbi
  54677.  
  54678.     @Sifra_PodrSluzba    char(4),
  54679.     @ImePodrSluzba    nchar(40),
  54680.     @PocCifriKniska        char(3),
  54681.     @Sifra_PodrSluzba_Fakt    char(4)
  54682. AS
  54683.     Update PodracniSluzbi 
  54684.     Set ImePodrSluzba=@ImePodrSluzba, PocCifriKniska=@PocCifriKniska, Sifra_PodrSluzba_Fakt=@Sifra_PodrSluzba_Fakt
  54685.     Where Sifra_PodrSluzba=@Sifra_PodrSluzba
  54686.     Return @@ERROR
  54687.  
  54688.  
  54689.  
  54690. Go
  54691. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopis]'))
  54692. drop procedure [dbo].[sp_izmenipopis]
  54693.  
  54694. Go
  54695. CREATE PROCEDURE sp_IzmeniPopis
  54696.     @Sifra_OE smallint,
  54697.     @Datum smalldatetime,
  54698.     @Opis varchar(40),
  54699.     @Celosen char(1),
  54700.     @Zatvoren char(1),
  54701.     @Sifra_DokK smallint,
  54702.     @Sifra_DokV smallint,
  54703.     @Broj_dok_k int,
  54704.     @Broj_dok_v int,
  54705.     @Izmenet char(1),
  54706.     @Sifra_Kup char(6)
  54707.  AS
  54708.     UPDATE Popis SET  
  54709.         Opis           = @Opis,
  54710.         Celosen      = @Celosen,
  54711.         Zatvoren    = @Zatvoren,
  54712.         Sifra_DokK = @Sifra_DokK,
  54713.         Sifra_DokV = @Sifra_DokV,
  54714.         Broj_dok_k = @Broj_dok_k,
  54715.         Broj_dok_v = @Broj_dok_v,
  54716.         Izmenet       = @Izmenet, Sifra_Kup = @Sifra_Kup
  54717.     WHERE Sifra_OE = @Sifra_OE AND Datum = @Datum
  54718. RETURN @@ERROR
  54719.  
  54720.  
  54721.  
  54722. Go
  54723. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopis1]'))
  54724. drop procedure [dbo].[sp_izmenipopis1]
  54725.  
  54726. Go
  54727.  
  54728. CREATE PROCEDURE sp_IzmeniPopis1
  54729.     @IDPopis int
  54730.  AS
  54731.     UPDATE Popis SET  
  54732.         Izmenet       = 'D'
  54733.     WHERE IDPopis = @IDPopis
  54734. RETURN @@ERROR
  54735.  
  54736.  
  54737.  
  54738. Go
  54739. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopis2]'))
  54740. drop procedure [dbo].[sp_izmenipopis2]
  54741.  
  54742. Go
  54743.  
  54744. CREATE PROCEDURE sp_IzmeniPopis2
  54745.     @IDPopis int,
  54746.     @DatZal smalldatetime
  54747.  AS
  54748.     UPDATE Popis SET  
  54749.         Izmenet  = 'N',  Datum_zaliha = @DatZal
  54750.     WHERE IDPopis = @IDPopis
  54751. RETURN @@ERROR
  54752.  
  54753.  
  54754.  
  54755. Go
  54756. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopis3]'))
  54757. drop procedure [dbo].[sp_izmenipopis3]
  54758.  
  54759. Go
  54760.  
  54761. CREATE PROCEDURE sp_IzmeniPopis3
  54762.     @IDPopis int,
  54763.     @Broj_dokK int,
  54764.     @Broj_dokV int
  54765.  AS
  54766.     Declare @SSQL Varchar(1000)
  54767.     Set @SSQL = 'UPDATE Popis SET  Zatvoren = ''D'' ' 
  54768.     If @Broj_dokK IS NOT NULL
  54769.         Set @SSQL = @SSQL + ',  Broj_dok_k = ' + Cast(@Broj_dokK as varchar(8))
  54770.     If @Broj_dokV IS NOT NULL
  54771.         Set @SSQL = @SSQL + ',  Broj_dok_v = ' + Cast(@Broj_dokV as varchar(8))
  54772.     Set @SSQL = @SSQL + '  WHERE IDPopis = ' + cast(@IDPopis as varchar(8))
  54773.     Exec (@SSQL)
  54774. RETURN @@ERROR
  54775.  
  54776.  
  54777.  
  54778. Go
  54779. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopis4]'))
  54780. drop procedure [dbo].[sp_izmenipopis4]
  54781.  
  54782. Go
  54783.  
  54784.  
  54785.  
  54786. CREATE   PROCEDURE sp_IzmeniPopis4
  54787.     @IDPopis int
  54788.  AS
  54789.     UPDATE Popis SET  
  54790.         Zatvoren  = 'X', Broj_dok_k = 0, Broj_dok_v = 0
  54791.     WHERE IDPopis = @IDPopis
  54792. RETURN @@ERROR
  54793.  
  54794.  
  54795.  
  54796. Go
  54797. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopisos]'))
  54798. drop procedure [dbo].[sp_izmenipopisos]
  54799.  
  54800. Go
  54801. CREATE  PROCEDURE sp_IzmeniPopisOS
  54802.     @Sifra_OE smallint,
  54803.     @Datum smalldatetime,
  54804.     @Opis varchar(40),
  54805.     @Zatvoren char(1)
  54806.  AS
  54807.     UPDATE Popis SET  Opis = @Opis, Zatvoren = @Zatvoren
  54808.     WHERE Sifra_OE = @Sifra_OE AND Datum = @Datum
  54809. RETURN @@ERROR
  54810.  
  54811.  
  54812.  
  54813. Go
  54814. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopisos_br]'))
  54815. drop procedure [dbo].[sp_izmenipopisos_br]
  54816.  
  54817. Go
  54818.  
  54819.  
  54820. CREATE   PROCEDURE sp_IzmeniPopisOS_Br
  54821.     @IDPopisOs smallint,
  54822.     @Broj_Lista smallint,
  54823.     @Sifra_OE smallint=1,
  54824.     @Datum smalldatetime,
  54825.     @Opis varchar(50),
  54826.     @Zatvoren char(1)='N',
  54827.     @Sifra_MikLok char(10),
  54828.     @Sifra_MakLok char(10),
  54829.     @Sifra_Rab int
  54830.  AS
  54831.     UPDATE PopisOs SET  
  54832.     Opis = @Opis,
  54833.     Zatvoren = @Zatvoren,
  54834.     Sifra_MikLok=@Sifra_MikLok ,
  54835.     Sifra_MakLok=@Sifra_MakLok ,
  54836.     Sifra_Rab=@Sifra_Rab 
  54837.     WHERE IDPopisOS = @IDPopisOS 
  54838. RETURN @@ERROR
  54839.  
  54840.  
  54841.  
  54842. Go
  54843. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenipopisos_os]'))
  54844. drop procedure [dbo].[sp_izmenipopisos_os]
  54845.  
  54846. Go
  54847.  
  54848. Create   PROCEDURE sp_IzmeniPopisOS_Os
  54849.     @Sifra_OE smallint,
  54850.     @Datum smalldatetime,
  54851.     @Opis varchar(50),
  54852.     @Zatvoren char(1),
  54853.     @Sifra_MikLok char(10),
  54854.     @Sifra_MakLok char(10),
  54855.     @Sifra_Rab int
  54856.  AS
  54857.     UPDATE PopisOs SET  
  54858.     Opis = @Opis,
  54859.     Zatvoren = @Zatvoren,
  54860.     Sifra_MikLok=@Sifra_MikLok ,
  54861.     Sifra_MakLok=@Sifra_MakLok ,
  54862.     Sifra_Rab=@Sifra_Rab 
  54863.     WHERE Sifra_OE = @Sifra_OE AND Datum = @Datum
  54864. RETURN @@ERROR
  54865.  
  54866.  
  54867.  
  54868. Go
  54869. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniporastcenist]'))
  54870. drop procedure [dbo].[sp_izmeniporastcenist]
  54871.  
  54872. Go
  54873. CREATE PROCEDURE sp_IzmeniPorastCeniSt
  54874.     @Mesec    smallint,
  54875.     @Godina    smallint,
  54876.     @Stapka    decimal(9,3)
  54877.  AS
  54878.     Update PorastCeniSt 
  54879.     Set Stapka = @Stapka
  54880.     Where Mesec=@Mesec and Godina=@Godina
  54881.     Return @@ERROR
  54882.  
  54883.  
  54884. Go
  54885. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniprevoznik]'))
  54886. drop procedure [dbo].[sp_izmeniprevoznik]
  54887.  
  54888. Go
  54889.  
  54890. CREATE  PROCEDURE sp_IzmeniPrevoznik
  54891.     @Sifra_Prev     char(6),
  54892.     @ImePrev     varchar(40),
  54893.     @Adresa     varchar(40)=NULL,
  54894.     @SMesto     varchar(20)=NULL,
  54895.     @Posta     varchar(10)=NULL,
  54896.     @Telefon     varchar(20)=NULL,
  54897.     @Sifra_Kup     char(6)=NULL,
  54898.     @Kto        char(10)=NULL,
  54899.     @Sifra_Nal    smallint=NULL,
  54900.     @Sifra_OE    smallint=NULL,
  54901.         @Vozilo     varchar(20)=NULL
  54902. AS
  54903.     Update Prevoznik
  54904.     Set ImePrev=@ImePrev, Adresa=@Adresa, SMesto=@SMesto, Posta=@Posta, Telefon=@Telefon, Sifra_Kup=@Sifra_Kup, Kto=@Kto, Sifra_Nal=@Sifra_Nal, Sifra_OE=@Sifra_OE,
  54905.             Vozilo=@Vozilo  
  54906.     Where Sifra_Prev=@Sifra_Prev
  54907.     Return @@Error
  54908.  
  54909.  
  54910.  
  54911. Go
  54912. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniprivkoncept]'))
  54913. drop procedure [dbo].[sp_izmeniprivkoncept]
  54914.  
  54915. Go
  54916.  
  54917. CREATE      PROCEDURE sp_IzmeniPrivKoncept
  54918.     @Sifra_GrKor  varchar (20),
  54919.     @NabavniCeni  char(1) = NUll,
  54920.     @PromCena  char(1) = NUll,
  54921.     @Promet  char(1) = NUll,
  54922.     @Maticni  char(1) = NUll,
  54923.     @GlkVnes  char(1) = NUll,
  54924.     @GlkPrg  char(1) = NUll,
  54925.     @KupDobVnes char(1) = NUll,
  54926.     @KupDobPrg  char(1) = NUll,
  54927.     @Zaliha  char(1) = NUll,
  54928.     @Komerc char(1) = NUll,
  54929.     @FiltPatnik char(1) = Null,
  54930.     @IzborKonto char(1) = Null,
  54931.     @KatCeniZal char(1) = Null,
  54932.         @GrOrgIzv char(6) = Null,
  54933.     @DozvoliDokCenaIzlez char(1) = Null,
  54934.     @DozvoliOtvZatvRabN char(1) = Null
  54935.  
  54936.  AS
  54937.  
  54938.     UPDATE PrivKoncept SET 
  54939.         NabavniCeni = @NabavniCeni, 
  54940.         PromCena = @PromCena,
  54941.                 Promet = @Promet,
  54942.                 Maticni = @Maticni,
  54943.                 GlkVnes = @GlkVnes,       
  54944.                 GlkPrg = @GlkPrg,
  54945.                 KupDobVnes = @KupDobVnes,
  54946.                 KupDobPrg = @KupDobPrg,
  54947.                 Zaliha = @Zaliha,
  54948.                 Komerc = @Komerc,
  54949.         FiltPatnik = @FiltPatnik,
  54950.         IzborKonto = @IzborKonto,
  54951.         KatCeniZal=@KatCeniZal,
  54952.             GrOrgIzv=@GrOrgIzv,
  54953.         DozvoliDokCenaIzlez = @DozvoliDokCenaIzlez,
  54954.         DozvoliOtvZatvRabN = @DozvoliOtvZatvRabN
  54955.     WHERE Sifra_GrKor = @Sifra_GrKor
  54956.  
  54957. RETURN @@ERROR
  54958.  
  54959.  
  54960.  
  54961.  
  54962.  
  54963.  
  54964.  
  54965. Go
  54966. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniprodmest]'))
  54967. drop procedure [dbo].[sp_izmeniprodmest]
  54968.  
  54969. Go
  54970.  
  54971.  
  54972.  
  54973.  
  54974. CREATE        PROCEDURE sp_IzmeniProdMest
  54975.     @Sifra_Mest    int,
  54976.     @Opis        varchar(50),
  54977.     @Opis2        varchar(50),    
  54978.     @Sifra_Kup    Char(6),
  54979.     @Sifra_Obj    smallint,
  54980.     @DaliAktiven    char(1) = Null,
  54981.     @Posrednik    char(6) = Null,
  54982.     @DaliSporen    char(1) = null,
  54983.     @BrMotor         varchar(50) = null,
  54984.     @BarKod          varchar(50) = null,
  54985.     @Litri           integer = null,
  54986.     @Sif_TipProdM    integer = null,
  54987.         @Proizv             Char(6),
  54988.         @Godina             smallint,
  54989.         @Dimenzii     nvarChar(20),
  54990.         @Led          Char(1),  
  54991.         @Zabel             nvarChar(100),
  54992.         @Sifra_Pat     smallint= null   
  54993. AS
  54994.         -- Nemoj nikako da gi azuriraj DaliAktiven i DaliSporen i Sifra_Kup
  54995.     Declare @Propagiraj Char(1)
  54996.     Set @Propagiraj='D'
  54997.     UPDATE ProdMest Set Opis=@Opis, Opis2=@Opis2, Sifra_Obj=@Sifra_Obj, Posrednik=@Posrednik, 
  54998.                Propagiraj=@Propagiraj, BarKod = @BarKod, BrMotor = @BrMotor, Litri = @Litri, 
  54999.                Sif_TipProdM = @Sif_TipProdM, Proizv=@Proizv, Godina=@Godina, Dimenzii=@Dimenzii,
  55000.                Led=@Led, Zabel=@Zabel, Sifra_Pat=@Sifra_Pat   --, Sifra_Kup=@Sifra_Kup
  55001.     WHERE Sifra_Mest=@Sifra_Mest
  55002.     RETURN @@ERROR
  55003.  
  55004.  
  55005.  
  55006.  
  55007.  
  55008.  
  55009.  
  55010. Go
  55011. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniproekt]'))
  55012. drop procedure [dbo].[sp_izmeniproekt]
  55013.  
  55014. Go
  55015. CREATE procedure sp_IzmeniProekt
  55016.     @Broj_Proekt int ,
  55017.     @ImeProekt nvarchar (50)= NULL ,
  55018.     @Sifra_Kup char (6)=NULL ,
  55019.     @ImePredmet nvarchar (50)=NULL ,
  55020.     @ImeKontakt nvarchar (50) =NULL ,
  55021.     @Datum_Otv smalldatetime =NULL ,
  55022.     @Datum_Ocek_Zatv smalldatetime =NULL ,
  55023.     @OpisPredmet nvarchar (2000)=NULL ,
  55024.     @Datum_Zavrseno smalldatetime =NULL ,
  55025.     @Zatvoreno char (1) =NULL ,
  55026.     @Sifra_Oe smallint =NULL ,
  55027.     @Sifra_Nar smallint= NULL ,
  55028.     @Broj_Nar int =NULL
  55029. As
  55030.     Update Proekt
  55031.     Set ImeProekt=@ImeProekt,Sifra_Kup=@Sifra_Kup,ImePredmet=@ImePredmet,ImeKontakt=@ImeKontakt,
  55032.         Datum_Otv=@Datum_Otv,Datum_Ocek_Zatv=@Datum_Ocek_Zatv,OpisPredmet=@OpisPredmet,Datum_Zavrseno=@Datum_Zavrseno,
  55033.         Zatvoreno=@Zatvoreno,Sifra_Oe=@Sifra_Oe,Sifra_Nar=@Sifra_Nar,Broj_Nar=@Broj_Nar
  55034.     Where Broj_Proekt=@Broj_Proekt
  55035.  
  55036.  
  55037. Go
  55038. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirabkalendar]'))
  55039. drop procedure [dbo].[sp_izmenirabkalendar]
  55040.  
  55041. Go
  55042.  
  55043. CREATE  procedure SP_IzmeniRabKalendar
  55044.     @Datum smalldatetime,
  55045.     @Sto char(1)
  55046. As     
  55047.     Update RabKalendar 
  55048.     set Sto=@Sto
  55049.     Where Datum=@Datum
  55050.     return @@error
  55051.  
  55052.  
  55053.  
  55054.  
  55055. Go
  55056. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirabnal]'))
  55057. drop procedure [dbo].[sp_izmenirabnal]
  55058.  
  55059. Go
  55060.  
  55061. CREATE                PROCEDURE [dbo].[sp_IzmeniRabNal] 
  55062.     @Sifra_OERab    smallint,
  55063.     @Broj_Rabn    int,
  55064.     @Sifra_OEPrim    smallint,
  55065.     @Alt_BrojRN    varchar(15),
  55066.     @Opis         varchar(50),
  55067.     @Datum_Otv    smalldatetime,
  55068.     @Datum_Zatv    smalldatetime,
  55069.     @Dogovor    varchar(20),
  55070.     @Sifra_kup    char(6),
  55071.     @Datum_Dog    smalldatetime,
  55072.     @Datum_Rok    smalldatetime,
  55073.     @Zabel        varchar(200),
  55074.     @Tip_RabNal    char(1)=Null,
  55075.     @Dat_Ocek_Zatv smalldatetime = Null,
  55076.     @Pomosen    char(1) = Null,
  55077.     @BrGotovi    smallint = 0,
  55078.     @Sema_Fix    smallint = Null,
  55079.     @Sema_Surov_Gotov    char(1) = Null,
  55080.     @MaxObidi    Smallint = 20,
  55081.     @Datum_Vnes    smalldatetime = Null, 
  55082.     @Datum_Poc_Proiz    smalldatetime = Null, 
  55083.     @Datum_Kr_Proiz    smalldatetime = Null, 
  55084.     @Stat_RabNal        char(1) = Null,
  55085.     @Opis_RabN        nvarchar(500) = Null,
  55086.     @Kolic_Energ_Aktuel    decimal(18,6) = Null,
  55087.     @Kolic_Energ_Alt_Aktuel    decimal(18,6) = Null,
  55088.     @Kolic_Skart_Aktuel    decimal(18,6) = Null,
  55089.     @Potros_EdVreme    decimal(18,6) = Null,
  55090.     @Proc_Skart_Plan    decimal(9,4) = Null,
  55091.     @Sifra_Rab    int = Null,
  55092.     @Garancija    char(1) = Null,
  55093.     @PonudaBr    varchar(20) = Null,
  55094.     @ImeKlient    varchar(40) = Null,
  55095.         @ImaDDV char (1) = Null,
  55096.     @FixTrosoci    decimal(18,2)=NULL,
  55097.     @Pom_km    int=NULL,
  55098.     @TekstPosle varchar(1500) = NULL,
  55099.     @Broj_Proekt int = Null,
  55100.     @Sifra_Kor    varchar(20)= Null,
  55101.     @Sifra_Proiz varchar(20)= null,
  55102.     @Datum_Poc_Serv smalldatetime = Null,
  55103.     @Datum_Izdav    smalldatetime = Null,
  55104.     @Sifra_Rab_2    int = Null,
  55105.     @Tip_Operacija char(1) = Null,
  55106.     @AltSerBr1 varchar(50) = Null,
  55107.     @AltSerBr2 varchar(50) = Null,
  55108.  
  55109.     @RNPpole1 varchaR(100) = Null,
  55110.     @RNPpole2 varchaR(100) = Null,
  55111.     @RNPpole3 varchaR(100) = Null,
  55112.     @RNPpole4 varchaR(100) = Null,
  55113.     @RNPpole5 varchaR(100) = Null,
  55114.     @RNPpole6 varchaR(100) = Null,
  55115.     @RNPpole7 varchaR(100) = Null,
  55116.     @RNPpole8 varchaR(100) = Null,
  55117.     @RNPpole9 varchaR(100) = Null,
  55118.     @RNPpole10 varchaR(100) = Null,
  55119.  
  55120.     @RNStikl1 char(1) = Null,
  55121.     @RNStikl2 char(1) = Null,
  55122.     @RNStikl3 char(1) = Null,
  55123.     @RNStikl4 char(1) = Null,
  55124.     @RNStikl5 char(1) = Null,
  55125.     @RNStikl6 char(1) = Null,
  55126.     @RNStikl7 char(1) = Null,
  55127.     @RNStikl8 char(1) = Null,
  55128.     @RNStikl9 char(1) = Null,
  55129.     @RNStikl10 char(1) = Null,
  55130.  
  55131.     @Sifra_OEPolu smallint = Null
  55132.  
  55133. AS
  55134.  
  55135.     UPDATE RabNal SET Sifra_OEPrim=@Sifra_OEPrim, Alt_BrojRN=@Alt_BrojRN, Opis=@Opis, Datum_Otv=@Datum_Otv, Datum_Zatv=@Datum_Zatv,
  55136.                 Dogovor=@Dogovor, Sifra_kup=@Sifra_kup, Datum_Dog=@Datum_Dog, Datum_Rok=@Datum_Rok, Zabel=@Zabel,
  55137.                 Tip_RabNal=@Tip_RabNal, Dat_Ocek_Zatv=@Dat_Ocek_Zatv, Pomosen=@Pomosen, BrGotovi=@BrGotovi,
  55138.                 Sema_Fix=@Sema_Fix, Sema_Surov_Gotov=@Sema_Surov_Gotov, Datum_Poc_Proiz=@Datum_Poc_Proiz, 
  55139.                 Datum_Kr_Proiz=@Datum_Kr_Proiz, Stat_RabNal=@Stat_RabNal, Opis_RabN=@Opis_RabN, Kolic_Energ_Aktuel=@Kolic_Energ_Aktuel, 
  55140.                 Kolic_Energ_Alt_Aktuel=@Kolic_Energ_Alt_Aktuel, Kolic_Skart_Aktuel=@Kolic_Skart_Aktuel, Potros_EdVreme=@Potros_EdVreme, 
  55141.                 Proc_Skart_Plan=@Proc_Skart_Plan, Sifra_Rab=@Sifra_Rab, Garancija=@Garancija, PonudaBr=@PonudaBr, ImeKlient=@ImeKlient,
  55142.                 ImaDDV=@ImaDDV, FixTrosoci=@FixTrosoci, Pom_km=@Pom_Km, TekstPosle = @TekstPosle,
  55143.                 Broj_Proekt = @Broj_Proekt, Sifra_Kor=@Sifra_Kor, Sifra_Proiz=@Sifra_Proiz,
  55144.                 Datum_Poc_Serv = @Datum_Poc_Serv, Datum_Izdav = @Datum_Izdav, Sifra_Rab_2 = @Sifra_Rab_2,
  55145.                 Tip_Operacija = @Tip_Operacija, AltSerBr1 = @AltSerBr1, AltSerBr2 = @AltSerBr2,
  55146.         RNPPole1 = @RNPPOle1, RNPPole2 = @RNPPOle2, RNPPole3 = @RNPPOle3, RNPPole4 = @RNPPOle4, RNPPole5 = @RNPPOle5,
  55147.         RNPPole6 = @RNPPOle6, RNPPole7 = @RNPPOle7, RNPPole8 = @RNPPOle8, RNPPole9 = @RNPPOle9, RNPPole10 = @RNPPOle10,
  55148.         RNStikl1 = @RNStikl1, RNStikl2 = @RNStikl2, RNStikl3 = @RNStikl3, RNStikl4 = @RNStikl4, RNStikl5 = @RNStikl5,
  55149.         RNStikl6 = @RNStikl6, RNStikl7 = @RNStikl7, RNStikl8 = @RNStikl8, RNStikl9 = @RNStikl9, RNStikl10 = @RNStikl10,
  55150.         Sifra_OePOLU = @Sifra_OePOLU
  55151.  
  55152.     WHERE Sifra_OERab=@Sifra_OERab and Broj_Rabn=@Broj_Rabn
  55153.  
  55154.     RETURN @@ERROR
  55155.  
  55156.  
  55157.  
  55158.  
  55159.  
  55160.  
  55161.  
  55162.  
  55163. Go
  55164. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirabotnik]'))
  55165. drop procedure [dbo].[sp_izmenirabotnik]
  55166.  
  55167. Go
  55168.  
  55169. CREATE   PROCEDURE sp_IzmeniRabotnik
  55170.     @Sifra_Rab        int,
  55171.     @ImeRab            char(30),
  55172.     @Sifra_Oe        smallint = Null, 
  55173.     @Sif_Opst_Rab        char(5) = Null, 
  55174.     @Sif_Opst_Zivee    char(5) = Null, 
  55175.     @Mat_Br            varchar(13) = Null, 
  55176.     @Reg_Br            varchar(10) = Null, 
  55177.     @Dali_Danok        char(1) = Null, 
  55178.     @Br_Boda        decimal(9,2) = Null, 
  55179.     @Koef_Sloz        decimal(9,2) = Null, 
  55180.     @RabMesto        varchar(15) = Null, 
  55181.     @Smeni_Rab        varchar(11) = Null, 
  55182.     @Staz_Vk        smallint = Null, 
  55183.     @Mes_Prom_Staz        smallint = Null, 
  55184.     @Nacin_Ispl        char(1) = Null, 
  55185.     @Sif_Banka        char(6) = Null, 
  55186.     @Rab_Smetka        varchar(25) = Null, 
  55187.     @Invalid        char(1) = Null,
  55188.     @Sifra_Firma        smallint = NULL,
  55189.     @Telefon        varchar(20) = Null
  55190.  
  55191. AS
  55192.  
  55193.     Update Rabotnik 
  55194.     Set ImeRab=@ImeRab, Sifra_Oe=@Sifra_Oe, Sif_Opst_Rab=@Sif_Opst_Rab, Sif_Opst_Zivee=@Sif_Opst_Zivee, Mat_Br=@Mat_Br, Reg_Br=@Reg_Br, 
  55195.         Dali_Danok=@Dali_Danok, Br_Boda=@Br_Boda, Koef_Sloz=@Koef_Sloz, RabMesto=@RabMesto, Smeni_Rab=@Smeni_Rab, Staz_Vk=@Staz_Vk, 
  55196.         Mes_Prom_Staz=@Mes_Prom_Staz, Nacin_Ispl=@Nacin_Ispl, Sif_Banka=@Sif_Banka, Rab_Smetka=@Rab_Smetka, Invalid=@Invalid, 
  55197.         Sifra_Firma=@Sifra_Firma, Telefon = @Telefon
  55198.     Where Sifra_Rab=@Sifra_Rab
  55199.  
  55200.     Return @@ERROR
  55201.  
  55202.  
  55203.  
  55204.  
  55205.  
  55206. Go
  55207. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirasporedispor]'))
  55208. drop procedure [dbo].[sp_izmenirasporedispor]
  55209.  
  55210. Go
  55211. CREATE                      PROCEDURE sp_IzmeniRasporedIspor
  55212.     @Sifra_Oe        smallint,
  55213.     @Sifra_Nar        smallint,
  55214.     @Broj_Raspored        int,
  55215.         @Broj_Nar        int,
  55216.     @Datum_Raspor        smalldatetime,
  55217.     @Broj_Nar_Lista        varchar (50) = Null,
  55218.     @Tip_Raspored            char(1) = Null,
  55219.     @ZaKadeRaspored        char(1) = Null
  55220. AS
  55221.     Update RasporedIspor
  55222.     Set Datum_Raspor = @Datum_Raspor, Broj_Nar = @Broj_Nar, Broj_Nar_Lista = @Broj_Nar_Lista, Tip_Raspored=@Tip_Raspored, ZaKadeRaspored=@ZaKadeRaspored
  55223.     Where Sifra_OE=@Sifra_OE and Sifra_Nar=@Sifra_Nar And Broj_Raspored=@Broj_Raspored
  55224.     Return @@ERROR
  55225.  
  55226.  
  55227. Go
  55228. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirecepti]'))
  55229. drop procedure [dbo].[sp_izmenirecepti]
  55230.  
  55231. Go
  55232.  
  55233.  
  55234.  
  55235.  
  55236. CREATE        PROCEDURE sp_IzmeniRecepti
  55237.     @Broj_Recept        int, 
  55238.     @Sifra_Apteka        char(2),
  55239.     @Sifra_Nasa_Firma    char(6),
  55240.     @Sifra_Kompanija    char(10),
  55241.     @EMBG            char(13),
  55242.     @Broj_Kniska        char(14),
  55243.     @Sifra_OsnovOsig    char(2),
  55244.     @Sifra_Lekar        char(6),
  55245.     @Sifra_Lekar_Spec    char(6),
  55246.     @Datum_Recept        smalldatetime,
  55247.     @Sifra_Dijagn        char(5),
  55248.     @Sifra_Art        varchar(20),
  55249.     @Datum_Izdav        smalldatetime,
  55250.     @Sifra_Farmacevt    char(6),
  55251.     @Vid_Marza        char(1),
  55252.     @Proc_Marza        decimal(9,3),
  55253.     @Kolku_Pakuv        decimal(9,3),
  55254.     @Kolku_Kolic        decimal(9,3),
  55255.     @Rangiran        char(1),
  55256.     @Cena_Tender        decimal(18,6),
  55257.     @Iznos_Tender        decimal(18,6),
  55258.     @Iznos_Marza        decimal(18,6),
  55259.     @Osnov_DDV        decimal(18,6),
  55260.     @ProcDDV        decimal(6,2),
  55261.     @Iznos_Na_DDV        decimal(18,6),
  55262.     @Iznos_So_DDV        decimal(18,6),
  55263.     @Sifra_Oslobod        char(1),
  55264.     @Iznos_Partic        decimal(18,6),
  55265.     @Naplat_Partic        decimal(18,6),
  55266.     @Broj_Priem        char(5),
  55267.     @Sifra_ATC        char(10),
  55268.     @Faktura_Br        char(6),
  55269.     @Godina_Fra        smallint,
  55270.     @Mesec_Fra        smallint,
  55271.     @Specif_Br        char(6),
  55272.     @Rbr_Vo_Specif        smallint,
  55273.     @BezPartic        char(1)=Null,
  55274.     @Sifra_Oslob_Nov    smallint=null,
  55275.     @Spc_Podr        char(4) = Null,
  55276.     @Spc_Specif        int = 0,
  55277.     @Spc_Recept        int = 0
  55278.  
  55279.  AS
  55280.  
  55281.     Update Recepti 
  55282.     Set Sifra_Nasa_Firma=@Sifra_Nasa_Firma, Sifra_Kompanija=@Sifra_Kompanija, EMBG=@EMBG, Broj_Kniska=@Broj_Kniska, Sifra_OsnovOsig=@Sifra_OsnovOsig, 
  55283.         Sifra_Lekar=@Sifra_Lekar, Sifra_Lekar_Spec=@Sifra_Lekar_Spec, Datum_Recept=@Datum_Recept, Sifra_Dijagn=@Sifra_Dijagn, Sifra_Art=@Sifra_Art, 
  55284.         Datum_Izdav=@Datum_Izdav, Sifra_Farmacevt=@Sifra_Farmacevt, Vid_Marza=@Vid_Marza, Proc_Marza=@Proc_Marza, 
  55285.         Kolku_Pakuv=@Kolku_Pakuv, Kolku_Kolic=@Kolku_Kolic, Rangiran=@Rangiran, Cena_Tender=@Cena_Tender, Iznos_Tender=@Iznos_Tender, 
  55286.         Iznos_Marza=@Iznos_Marza, Osnov_DDV=@Osnov_DDV, ProcDDV=@ProcDDV, Iznos_Na_DDV=@Iznos_Na_DDV, Iznos_So_DDV=@Iznos_So_DDV, 
  55287.         Sifra_Oslobod=@Sifra_Oslobod, Iznos_Partic=@Iznos_Partic, Naplat_Partic=@Naplat_Partic, Broj_Priem=@Broj_Priem, Sifra_ATC=@Sifra_ATC, 
  55288.         Faktura_Br=@Faktura_Br, Godina_Fra=@Godina_Fra, Mesec_Fra=@Mesec_Fra, Specif_Br=@Specif_Br, Rbr_Vo_Specif=@Rbr_Vo_Specif,BezPartic=@BezPartic,
  55289.         Sifra_Oslob_Nov=@Sifra_Oslob_Nov,
  55290.         Spc_Podr=@Spc_Podr, Spc_Specif=@Spc_Specif, Spc_Recept=@Spc_Recept
  55291.     Where Broj_Recept=@Broj_Recept And SifrA_apteka=@Sifra_Apteka
  55292.     Return @@ERROR
  55293.  
  55294.  
  55295.  
  55296.  
  55297.  
  55298.  
  55299.  
  55300.  
  55301.  
  55302. Go
  55303. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirecepti_p]'))
  55304. drop procedure [dbo].[sp_izmenirecepti_p]
  55305.  
  55306. Go
  55307.  
  55308.  
  55309. CREATE        PROCEDURE sp_IzmeniRecepti_P
  55310.     @Broj_Recept        int, 
  55311.     @Sifra_Apteka        char(2),
  55312.     @Sifra_Nasa_Firma    char(6),
  55313.     @Sifra_Kompanija    char(10),
  55314.     @EMBG            char(13),
  55315.     @Broj_Kniska        char(14),
  55316.     @Sifra_OsnovOsig    char(2),
  55317.     @Sifra_Lekar        char(6),
  55318.     @Sifra_Lekar_Spec    char(6),
  55319.     @Datum_Recept        smalldatetime,
  55320.     @Sifra_Dijagn        char(5),
  55321.     @Sifra_Art        varchar(20),
  55322.     @Datum_Izdav        smalldatetime,
  55323.     @Sifra_Farmacevt    char(6),
  55324.     @Vid_Marza        char(1),
  55325.     @Proc_Marza        decimal(9,3),
  55326.     @Kolku_Pakuv        decimal(9,3),
  55327.     @Kolku_Kolic        decimal(9,3),
  55328.     @Rangiran        char(1),
  55329.     @Cena_Tender        decimal(18,6),
  55330.     @Iznos_Tender        decimal(18,6),
  55331.     @Iznos_Marza        decimal(18,6),
  55332.     @Osnov_DDV        decimal(18,6),
  55333.     @ProcDDV        decimal(6,2),
  55334.     @Iznos_Na_DDV        decimal(18,6),
  55335.     @Iznos_So_DDV        decimal(18,6),
  55336.     @Sifra_Oslobod        char(1),
  55337.     @Iznos_Partic        decimal(18,6),
  55338.     @Naplat_Partic        decimal(18,6),
  55339.     @Broj_Priem        char(5),
  55340.     @Sifra_ATC        char(10),
  55341.     @Faktura_Br        char(6),
  55342.     @Godina_Fra        smallint,
  55343.     @Mesec_Fra        smallint,
  55344.     @Specif_Br        char(6),
  55345.     @Rbr_Vo_Specif        smallint,
  55346.     @BezPartic        char(1)=Null,
  55347.     @Sifra_Oslob_Nov    smallint=null,
  55348.     @Spc_Podr        char(4) = Null,
  55349.     @Spc_Specif        int = 0,
  55350.     @Spc_Recept        int = 0
  55351.  AS
  55352.  
  55353.     Update Recepti_P
  55354.     Set Sifra_Nasa_Firma=@Sifra_Nasa_Firma, Sifra_Kompanija=@Sifra_Kompanija, EMBG=@EMBG, Broj_Kniska=@Broj_Kniska, Sifra_OsnovOsig=@Sifra_OsnovOsig, 
  55355.         Sifra_Lekar=@Sifra_Lekar, Sifra_Lekar_Spec=@Sifra_Lekar_Spec, Datum_Recept=@Datum_Recept, Sifra_Dijagn=@Sifra_Dijagn, Sifra_Art=@Sifra_Art, 
  55356.         Datum_Izdav=@Datum_Izdav, Sifra_Farmacevt=@Sifra_Farmacevt, Vid_Marza=@Vid_Marza, Proc_Marza=@Proc_Marza, 
  55357.         Kolku_Pakuv=@Kolku_Pakuv, Kolku_Kolic=@Kolku_Kolic, Rangiran=@Rangiran, Cena_Tender=@Cena_Tender, Iznos_Tender=@Iznos_Tender, 
  55358.         Iznos_Marza=@Iznos_Marza, Osnov_DDV=@Osnov_DDV, ProcDDV=@ProcDDV, Iznos_Na_DDV=@Iznos_Na_DDV, Iznos_So_DDV=@Iznos_So_DDV, 
  55359.         Sifra_Oslobod=@Sifra_Oslobod, Iznos_Partic=@Iznos_Partic, Naplat_Partic=@Naplat_Partic, Broj_Priem=@Broj_Priem, Sifra_ATC=@Sifra_ATC, 
  55360.         Faktura_Br=@Faktura_Br, Godina_Fra=@Godina_Fra, Mesec_Fra=@Mesec_Fra, Specif_Br=@Specif_Br, Rbr_Vo_Specif=@Rbr_Vo_Specif,BezPartic=@BezPartic,
  55361.         Sifra_Oslob_Nov=@Sifra_Oslob_Nov,
  55362.         Spc_Podr=@Spc_Podr, Spc_Specif=@Spc_Specif, Spc_Recept=@Spc_Recept
  55363.     Where Broj_Recept=@Broj_Recept And SifrA_apteka=@Sifra_Apteka
  55364.     Return @@ERROR
  55365.  
  55366.  
  55367.  
  55368.  
  55369.  
  55370.  
  55371. Go
  55372. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirelacispor]'))
  55373. drop procedure [dbo].[sp_izmenirelacispor]
  55374.  
  55375. Go
  55376.  
  55377. CREATE  PROCEDURE sp_IzmeniRelacIspor
  55378.     @Sifra_RelIspor    smallint, 
  55379.     @Ime_RelIspor    char(30)
  55380. AS
  55381.     Update RelacIspor 
  55382.     Set Ime_RelIspor=@Ime_RelIspor
  55383.     Where Sifra_RelIspor=@Sifra_RelIspor
  55384.     Return @@ERROR
  55385.  
  55386.  
  55387.  
  55388. Go
  55389. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenirkasprivil]'))
  55390. drop procedure [dbo].[sp_izmenirkasprivil]
  55391.  
  55392. Go
  55393.  
  55394.  
  55395. CREATE    PROCEDURE sp_IzmeniRKasPrivil
  55396.     @Sifra_Oper     smallint,
  55397.     @Sifra_GrOper    char(20),
  55398.     @Sifra_Operac    char(20),
  55399.     @Gener_Moze        char(1),
  55400.     @Vnes            char(1),
  55401.     @Izmena            char(1),
  55402.     @Brisenje        char(1),
  55403.     @Pregled        char(1)
  55404. AS
  55405.     UPDATE RKasPrivil SET
  55406.     Gener_Moze=@Gener_Moze,
  55407.     Vnes=@Vnes,
  55408.     Izmena=@Izmena,
  55409.     Brisenje=@Brisenje,
  55410.     Pregled=@Pregled
  55411.     WHERE  Sifra_GrOper = @Sifra_GrOper And Sifra_Operac = @Sifra_Operac
  55412.  
  55413.  
  55414.  
  55415.  
  55416.  
  55417.  
  55418. Go
  55419. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenisams_statusuredi]'))
  55420. drop procedure [dbo].[sp_izmenisams_statusuredi]
  55421.  
  55422. Go
  55423.  
  55424.  
  55425. CREATE       PROCEDURE sp_IzmeniSams_StatusUredi
  55426.         @Sams_UredId varchar(20),
  55427.         @TekStatus varchar(10) = null, 
  55428.         @Polna_Baterija decimal(6,2) = null, 
  55429.         @Tek_Korisnik varchar(20) = null, 
  55430.         @Posl_Prozivanje_Koga datetime = null,
  55431.         @Komanda varchar(10) = null, 
  55432.         @Posl_Korisnik varchar(20) = null, 
  55433.         @Posl_Krevanje_Koga datetime = null, 
  55434.         @Posl_Parkiranje_Koga datetime = null, 
  55435.         @Posl_Smetka_Koga datetime = null,
  55436.         @Posl_Otkazi_Koga datetime = null,
  55437.         @Posl_Smetka_Korisnik varchar(20)= null, 
  55438.         @Posl_Sifra_Oe smallint = null, 
  55439.         @Posl_Grp_Kasa smallint = null, 
  55440.         @Posl_BrKasa smallint = null, 
  55441.         @Posl_Broj_Ska int = null, 
  55442.         @Posl_Iznos_Smetka decimal(18,4) = null, 
  55443.         @Posl_Broj_Stavki int = null 
  55444. AS
  55445.  
  55446.  
  55447.     Update Sams_StatusUredi set    Komanda = @Komanda where Sams_UredId = @Sams_UredId
  55448.     Update Sams_StatusUredi set TekStatus = @TekStatus where Sams_UredId = @Sams_UredId  
  55449.     Update Sams_StatusUredi set Polna_Baterija = @Polna_Baterija where Sams_UredId = @Sams_UredId 
  55450.  
  55451. If @Tek_Korisnik is not null    
  55452.     Update Sams_StatusUredi set    Tek_Korisnik = @Tek_Korisnik where Sams_UredId = @Sams_UredId
  55453.  
  55454. If @TekStatus = 'PARKIRAN'    
  55455.     Update Sams_StatusUredi set    Posl_Parkiranje_Koga = GETDATE(), Posl_Prozivanje_Koga = GETDATE() where Sams_UredId = @Sams_UredId
  55456. Else If @TekStatus = 'SAMSKEN'    
  55457.     Update Sams_StatusUredi set    Posl_Krevanje_Koga = GETDATE(), 
  55458.     Posl_Prozivanje_Koga = GETDATE(),
  55459.     Posl_Korisnik = @Posl_Korisnik
  55460.     where Sams_UredId = @Sams_UredId
  55461. Else If @TekStatus = 'CEKANJE'
  55462.     Update Sams_StatusUredi set Posl_Prozivanje_Koga = GETDATE() where Sams_UredId = @Sams_UredId
  55463. Else If @TekStatus = 'CEKANJE-ST'
  55464.     Update Sams_StatusUredi set Posl_Prozivanje_Koga = GETDATE() where Sams_UredId = @Sams_UredId
  55465. Else If @TekStatus = 'POTVRDA'
  55466.     Update Sams_StatusUredi set Posl_Smetka_Koga = GETDATE(), 
  55467.     Posl_Prozivanje_Koga = GETDATE(),
  55468.     Posl_Smetka_Korisnik = @Posl_Smetka_Korisnik, 
  55469.     Posl_Sifra_Oe = @Posl_Sifra_Oe,
  55470.     Posl_Grp_Kasa = @Posl_Grp_Kasa,
  55471.     Posl_BrKasa = @Posl_BrKasa,
  55472.     Posl_Broj_Ska = @Posl_Broj_Ska,
  55473.     Posl_Iznos_Smetka = @Posl_Iznos_Smetka,
  55474.     Posl_Broj_Stavki = @Posl_Broj_Stavki
  55475.     where Sams_UredId = @Sams_UredId
  55476. Else If @TekStatus = 'PONISTI'
  55477.     Update Sams_StatusUredi set Posl_Otkazi_Koga = GETDATE(),
  55478.     Posl_Prozivanje_Koga = GETDATE()
  55479.     where Sams_UredId = @Sams_UredId
  55480. Else If @TekStatus = 'SAMSKEN-P'
  55481.     Update Sams_StatusUredi set Posl_Prozivanje_Koga = GETDATE() where Sams_UredId = @Sams_UredId
  55482. Else If @TekStatus = 'PRED-SAMSKEN'
  55483.     Update Sams_StatusUredi set Posl_Prozivanje_Koga = GETDATE() where Sams_UredId = @Sams_UredId
  55484.  
  55485. RETURN @@ERROR
  55486.  
  55487.  
  55488.  
  55489.  
  55490.  
  55491.  
  55492.  
  55493.  
  55494.  
  55495. Go
  55496. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenisamstemp]'))
  55497. drop procedure [dbo].[sp_izmenisamstemp]
  55498.  
  55499. Go
  55500.  
  55501.  
  55502.  
  55503.  
  55504.  
  55505.  
  55506.  
  55507.  
  55508.  
  55509. CREATE  PROCEDURE sp_IzmeniSamsTemp    
  55510.             @Sifra_Kor varchar(20),            
  55511.             @Nom varchar(50),
  55512.             @Sifra_art varchar(20),
  55513.             @Kolic decimal(18, 2)
  55514.             
  55515. as
  55516. declare @Rbr as integer
  55517. select @Rbr = max(Rbr) from sams_temp S where S.Sifra_kor = @Sifra_Kor and S.Nom = @Nom and S.Sifra_Art = @Sifra_Art
  55518. update sams_temp set Kolic = @Kolic
  55519. where Nom = @Nom and Sifra_Art = @Sifra_Art and Sifra_Kor = @Sifra_Kor and Rbr = @Rbr
  55520.  
  55521.  
  55522.  
  55523.  
  55524.  
  55525.  
  55526.  
  55527.  
  55528.  
  55529.  
  55530.  
  55531.  
  55532.  
  55533.  
  55534.  
  55535.  
  55536.  
  55537.  
  55538. Go
  55539. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenisint]'))
  55540. drop procedure [dbo].[sp_izmenisint]
  55541.  
  55542. Go
  55543.  
  55544.  
  55545. CREATE  PROCEDURE sp_IzmeniSint
  55546.     @Kto_Sint    Char(3),
  55547.     @ImeSint    varChar(40),
  55548.     @ImeSint2    varchar(40),
  55549.     @SImeSint    varChar(40),
  55550.     @SImeSint2    varchar(40),
  55551.         @Str_Kto    varchar(6)
  55552. AS
  55553.     Declare @Klas    char(3)
  55554.     SELECT @Klas = Kto_Klas FROM Klas WHERE Kto_Klas = Substring(@Kto_Sint,1,1)
  55555.     If @Klas IS NULL
  55556.          INSERT INTO Klas (Kto_Klas, ImeKlasa) VALUES (Substring(@Kto_Sint,1,1), 'Klasa')
  55557.     UPDATE [Sint]
  55558.     SET [ImeSint]=@ImeSint, [ImeSint2]=@ImeSint2, [SImeSint]=@SImeSint, [SImeSint2]=@SImeSint2,
  55559.     Kto_Klas = Substring(@Kto_Sint,1,1), [Str_Kto]=@Str_Kto
  55560.     WHERE [Kto_Sint]=@Kto_Sint
  55561. RETURN @@ERROR
  55562.  
  55563.  
  55564.  
  55565.  
  55566. Go
  55567. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenismeni]'))
  55568. drop procedure [dbo].[sp_izmenismeni]
  55569.  
  55570. Go
  55571.  
  55572. CREATE   PROCEDURE sp_IzmeniSmeni
  55573.         @Sifra_Smena smallint,
  55574.         @Ime_Smena Varchar(50),
  55575.         @Aktivna char(1)
  55576. AS
  55577.     UPDATE Smeni
  55578.     SET Ime_Smena=@Ime_Smena, Aktivna=@Aktivna
  55579.     WHERE Sifra_Smena=@Sifra_Smena
  55580. RETURN @@ERROR
  55581.  
  55582.  
  55583.  
  55584. Go
  55585. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenisostav]'))
  55586. drop procedure [dbo].[sp_izmenisostav]
  55587.  
  55588. Go
  55589.  
  55590.  
  55591. CREATE  PROCEDURE sp_IzmeniSostav
  55592. AS
  55593.     UPDATE Sostav SET VkCena = 0 WHERE Sifra_Art = ' '
  55594. RETURN @@ERROR
  55595.  
  55596.  
  55597.  
  55598. Go
  55599. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenispremac]'))
  55600. drop procedure [dbo].[sp_izmenispremac]
  55601.  
  55602. Go
  55603.  
  55604. create PROCEDURE sp_IzmeniSpremac
  55605.     @Sif_Spremac varchar(5),
  55606.     @ImeSpremac    nvarchar(50)
  55607.  AS
  55608.     Update Spremac 
  55609.     Set ImeSpremac=@ImeSpremac
  55610.     Where Sif_Spremac=@Sif_Spremac
  55611.     Return @@ERROR
  55612.  
  55613.  
  55614.  
  55615. Go
  55616. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenistavosnsred]'))
  55617. drop procedure [dbo].[sp_izmenistavosnsred]
  55618.  
  55619. Go
  55620.  
  55621. CREATE   PROCEDURE sp_IzmeniStavOsnSred
  55622.     @StaOID            int, 
  55623.     @DokOID            int, 
  55624.     @Inv_Broj        char(10), 
  55625.     @Datum_Dok        smalldatetime=Null, 
  55626.     @Tip_StaOsn        char(1)=Null,
  55627.     @VlIzl            char(1)=Null,
  55628.     @Sifra_MikLok        char(10)=Null,
  55629.     @Osn_Amor        decimal(18,2)=Null,
  55630.     @Otpis_Pret        decimal(18,2)=Null,
  55631.     @Sifra_MikLok_Od    char(10)=Null,
  55632.     @Orig_Nab_Vr        decimal(18,2) = Null,
  55633.     @Valuta            char(3) = Null,
  55634.     @Orig_Nab_Vr_Val    decimal(18,2) = Null,
  55635.     @Delov_God        smallint = Null,
  55636.     @Sifra_Rab        int= Null,
  55637.     @Sifra_RabOd        int= Null,
  55638.         @Sifra_Div        smallint = Null,
  55639.         @Sifra_TrosM        smallint = Null,
  55640.         @Sifra_TrosV        smallint = Null,
  55641.         @Sifra_Div_Od        smallint = Null,
  55642.         @Sifra_TrosM_Od        smallint = Null,
  55643.         @Sifra_TrosV_Od        smallint = Null 
  55644.  AS
  55645.     Update StavOsnSred
  55646.     Set  DokOID=@DokOID, Inv_Broj=@Inv_Broj, Datum_Dok=@Datum_Dok, Tip_StaOsn=@Tip_StaOsn, VlIzl=@VlIzl, Sifra_MikLok=@Sifra_MikLok, Osn_Amor=@Osn_Amor, 
  55647.         Otpis_Pret=@Otpis_Pret, Sifra_MikLok_Od=@Sifra_MikLok_Od, Orig_Nab_Vr=@Orig_Nab_Vr, Valuta=@Valuta, Orig_Nab_Vr_Val=@Orig_Nab_Vr_Val, 
  55648.         Delov_God=@Delov_God, Sifra_Rab=@Sifra_Rab, Sifra_RabOd=@Sifra_RabOd, 
  55649.                 Sifra_Div=@Sifra_Div, Sifra_TrosM=@Sifra_TrosM, Sifra_TrosV=@Sifra_TrosV,
  55650.                 Sifra_Div_Od=@Sifra_Div_Od, Sifra_TrosM_Od=@Sifra_TrosM_Od, Sifra_TrosV_Od=@Sifra_TrosV_Od 
  55651.      Where StaOID=@StaOID
  55652.     Return @@ERROR
  55653.  
  55654.  
  55655.  
  55656. Go
  55657. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenistavr]'))
  55658. drop procedure [dbo].[sp_izmenistavr]
  55659.  
  55660. Go
  55661. CREATE  PROCEDURE sp_IzmeniStavr
  55662.    @DokID int,
  55663.    @Sifra_OE smallint,
  55664.    @Sifra_Dok smallint,
  55665.    @Broj_Dok int,
  55666.    @Sifra_Prim smallint,
  55667.    @ImaDodatna char(1),
  55668.    @RBr smallint,
  55669.    @VlIzl char(1),
  55670.    @Sifra_Art Varchar(20),
  55671.    @Kolic decimal(18,6),
  55672.    @DokCena decimal(18,6),
  55673.    @MagCena decimal(18,6),
  55674.    @NabCena decimal(18,6),
  55675.    @POsn decimal(6,2),
  55676.    @PTar char(3),
  55677.    @Uces decimal(6,2),
  55678.    @DanDokCena char(1),
  55679.    @DanMagCena char(1),
  55680.    @CenaIznos char(1),
  55681.    @Kod_Danok char(1),
  55682.    @Datum_Dok smalldatetime,
  55683.    @Tros varchar(20),
  55684.    @ImeMat varchar(200),
  55685.    @EdMera varchar(5)
  55686. AS
  55687. UPDATE [Stavr]
  55688. SET [Sifra_OE]=@Sifra_OE, [Sifra_Dok]=@Sifra_Dok, [Broj_Dok]=@Broj_Dok, [Sifra_Prim]=@Sifra_Prim, [ImaDodatna]=@ImaDodatna, [RBr]=@RBr, [VlIzl]=@VlIzl, 
  55689.     [Sifra_Art]=@Sifra_Art, [Kolic]=@Kolic, [DokCena]=@DokCena, [MagCena]=@MagCena, [NabCena]=@NabCena, [POsn]=@POsn, [PTar]=@PTar, 
  55690.     [Uces]=@Uces, [DanDokCena]=@DanDokCena, [DanMagCena]=@DanMagCena, [CenaIznos]=@CenaIznos, [Kod_Danok]=@Kod_Danok, 
  55691.     [Datum_Dok]=@Datum_Dok, [Tros]=@Tros, [ImeMat]=@ImeMat, [EdMera]=@EdMera
  55692. WHERE DokID=@DokID
  55693. RETURN @@ERROR
  55694.  
  55695.  
  55696. Go
  55697. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenistavrprocrand]'))
  55698. drop procedure [dbo].[sp_izmenistavrprocrand]
  55699.  
  55700. Go
  55701.  
  55702. CREATE  PROCEDURE sp_IzmeniStavrProcRand
  55703.     @Sifra_Art    varchar(20),
  55704.     @Sif_GrOrg    char(6),
  55705.     @Datum        smalldatetime,
  55706.     @Proc_Rand    smallint
  55707. AS
  55708. UPDATE Stavr SET Proc_Rand=@Proc_Rand WHERE Datum_Dok=@Datum AND VlIzl='V' AND Sifra_Art=@Sifra_Art
  55709. AND Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrg)   --Sifra_Dok=@Sifra_Dok
  55710.  
  55711.  
  55712.  
  55713. Go
  55714. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitarifa]'))
  55715. drop procedure [dbo].[sp_izmenitarifa]
  55716.  
  55717. Go
  55718. CREATE   PROCEDURE sp_IzmeniTarifa
  55719.         @Sifra_Tar Char(3),
  55720.         @ImeTar Char(25),
  55721.       @ProcOsn Decimal(6,2)
  55722. AS
  55723.     SET NOCOUNT ON
  55724.     Declare @Propagiraj as char(1)
  55725.     Set @Propagiraj = 'D'
  55726.     UPDATE [Tarifi]
  55727.     SET [ImeTar]=@ImeTar,
  55728.     [ProcOsn]=@ProcOsn ,
  55729.     [Propagiraj]=@Propagiraj
  55730.     WHERE [Sifra_Tar]=@Sifra_Tar
  55731. RETURN @@ERROR
  55732.  
  55733.  
  55734.  
  55735. Go
  55736. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitarmodel]'))
  55737. drop procedure [dbo].[sp_izmenitarmodel]
  55738.  
  55739. Go
  55740.  
  55741. CREATE   PROCEDURE sp_IzmeniTarModel
  55742.     @Sifra_TarModel nvarchar(20),
  55743.     @Ime_TarModel nVarchar(40)
  55744. AS
  55745.     UPDATE TarModel
  55746.     SET Ime_TarModel=@Ime_TarModel
  55747.     WHERE Sifra_TarModel=@Sifra_TarModel 
  55748. RETURN @@ERROR
  55749.  
  55750.  
  55751.  
  55752. Go
  55753. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitekstsmetki]'))
  55754. drop procedure [dbo].[sp_izmenitekstsmetki]
  55755.  
  55756. Go
  55757.  
  55758. create  PROCEDURE sp_IzmeniTekstSmetki
  55759. AS
  55760.  
  55761.     UPDATE TekstSmetki SET Tekst = '' WHERE Kade = ' '
  55762.  
  55763. RETURN @@ERROR
  55764.  
  55765.  
  55766.  
  55767. Go
  55768. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitipdok]'))
  55769. drop procedure [dbo].[sp_izmenitipdok]
  55770.  
  55771. Go
  55772.  
  55773. CREATE          PROCEDURE sp_IzmeniTipDok
  55774.     @Sifra_Dok    smallint,
  55775.     @ImeDok    char(40),
  55776.     @NaslovDok    varchar(40),
  55777.     @NaslovIspr    varchar(40),
  55778.     @NaslovPrIme    varchar(40),
  55779.     @NaslovObicPr    varchar(40),
  55780.     @Vl_Izl        char(1),
  55781.     @Sifra_Nal    smallint,
  55782.     @Sifra_Za    char(1),
  55783.     @TipDok    char(1),
  55784.     @Plus_Minus    char(1),
  55785.     @DaliMater     char(1),
  55786.     @Dev        char(1),
  55787.     @Anal_Prof    char(1),
  55788.     @DaliMarza    char(1),
  55789.     @ProTar    char(2),
  55790.     @DaliFin    char(1),
  55791.     @KoeKto    varchar(50),
  55792.     @VoTrg_Knig    char(2),
  55793.     @VoDDV_Knig    char(1),
  55794.     @AnalKupDob    char(1),
  55795.     @Sif_GrDok    char(3),
  55796.     @DaliFisc    char(1),
  55797.         @KoiFixText    varchar (50),
  55798.     @AmbDali    char(1) = Null,
  55799.     @MozeRasknKaf char(1) = Null,
  55800.     @ImaDanok    char(1) = Null,
  55801.     @Sifra_Dok_Raskn smallint=null,
  55802.     @Sifra_Dok_RasknNeg smallint=null,
  55803.     @Prov_Limit     char(1)=Null, 
  55804.     @Disk_Oe    smallint = Null,
  55805.     @DaliStorno    char(1) = Null,
  55806.     @NaslovKList    varchar(40) = Null,
  55807.         @Sifra_Kup_TipD    char(6) = Null,
  55808.         @Oznaka_Obrazec    varchar(40) = Null
  55809. AS
  55810.     SET NOCOUNT ON
  55811.     UPDATE [TipDok]
  55812.     SET    [ImeDok]=@ImeDok, [NaslovDok]=@NaslovDok, [NaslovIspr]=@NaslovIspr, [NaslovPrIme]=@NaslovPrIme, 
  55813.         [NaslovObicPr]=@NaslovObicPr, [Vl_Izl]=@Vl_Izl, [Sifra_Nal]=@Sifra_Nal, [Sifra_Za]=@Sifra_Za,
  55814.         [TipDok]=@TipDok, [Plus_Minus]=@Plus_Minus, [DaliMater]=@DaliMater, [Dev]=@Dev,
  55815.         [Anal_Prof]=@Anal_Prof, [DaliMarza]=@DaliMarza, [ProTar]=@ProTar, [DaliFin]=@DaliFin,
  55816.         [KoeKto]=@KoeKto, [VoTrg_Knig]=@VoTrg_Knig, [VODDV_Knig]=@VoDDV_Knig, [AnalKupDob]=@AnalKupDob,
  55817.         [Sif_GrDok]=@Sif_GrDok, DaliFisc = @DaliFisc, Koi_FixText = @KoiFixText, 
  55818.         AmbDali=@AmbDali, MozeRasknKaf = @MozeRasknKaf, ImaDanok=@ImaDanok, Prov_Limit=@Prov_Limit,
  55819.         Sifra_Dok_Raskn=@Sifra_Dok_Raskn, Sifra_Dok_RasknNeg=@Sifra_Dok_RasknNeg, 
  55820.         DaliStorno=@DaliStorno, NaslovKList=@NaslovKList, Sifra_Kup_TipD=@Sifra_Kup_TipD, Oznaka_Obrazec=@Oznaka_Obrazec
  55821.     WHERE [Sifra_Dok]=@Sifra_Dok               --Disk_Oe=@Disk_Oe, trgnato namerno
  55822.     RETURN @@ERROR
  55823.  
  55824.  
  55825.  
  55826. Go
  55827. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitipkarakt]'))
  55828. drop procedure [dbo].[sp_izmenitipkarakt]
  55829.  
  55830. Go
  55831. CREATE PROCEDURE sp_IzmeniTipKarakt
  55832.     @Sifra_7        SMALLINT,
  55833.     @Rbr            SMALLINT,
  55834.     @Sifra_Karakt    SMALLINT
  55835. AS
  55836.     UPDATE TipKarakt SET
  55837.         Rbr = @Rbr,
  55838.         Sifra_Karakt = @Sifra_Karakt
  55839.     WHERE Sifra_7=@Sifra_7
  55840.  
  55841.  
  55842.  
  55843. Go
  55844. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitipkartkor]'))
  55845. drop procedure [dbo].[sp_izmenitipkartkor]
  55846.  
  55847. Go
  55848.  
  55849. CREATE  PROCEDURE sp_IzmeniTipKartKor
  55850.     @Sifra_TipKartKor    smallint, 
  55851.     @ImeKartKor        char(30),
  55852.     @DaliKredit        char(1),
  55853.     @Sifra_CeniKartKor    smallint,
  55854.     @Fix_Popust        decimal(6,2) = Null, 
  55855.     @DaliPersDetali char(1) = Null,
  55856.     @PrefixKod varchar(4) = Null
  55857. AS
  55858.     Update TipKartKor 
  55859.     Set ImeKartKor=@ImeKartKor, 
  55860.         DaliKredit=@DaliKredit, 
  55861.         Sifra_CeniKartKor=@Sifra_CeniKartKor, 
  55862.         Fix_Popust=@Fix_Popust,
  55863.         DaliPersDetali = @DaliPersDetali,
  55864.         PrefixKod = @PrefixKod
  55865.     Where Sifra_TipKartKor = @Sifra_TipKartKor
  55866.     Return @@ERROR
  55867.  
  55868.  
  55869.  
  55870. Go
  55871. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitipkatpakuv]'))
  55872. drop procedure [dbo].[sp_izmenitipkatpakuv]
  55873.  
  55874. Go
  55875.  
  55876.  
  55877. CREATE     PROCEDURE SP_IzmeniTipKatPakuv
  55878.     @Sifra_KatPak Smallint,
  55879.     @ImeKatPak Char(30),
  55880.     @Sifra_Pak smallint
  55881. AS
  55882. UPDATE TipKatPakuv SET 
  55883.     ImeKatPak=@ImeKatPak ,
  55884.     Sifra_Pak=@Sifra_Pak
  55885.     WHERE Sifra_KatPak=@Sifra_KatPak
  55886. RETURN @@ERROR
  55887.  
  55888.  
  55889.  
  55890. Go
  55891. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitipkomint]'))
  55892. drop procedure [dbo].[sp_izmenitipkomint]
  55893.  
  55894. Go
  55895. CREATE PROCEDURE sp_IzmeniTipKomint
  55896.     @Sifra_Tip    smallint,
  55897.     @ImeTip    varchar(40),
  55898.     @Alt_ImeTip    varchar(50) = Null
  55899. AS
  55900.     Update TipKomint
  55901.     set ImeTip=@ImeTip, Alt_ImeTip=@Alt_ImeTip
  55902.     Where Sifra_Tip=@Sifra_Tip
  55903.     Return @@ERROR
  55904.  
  55905.  
  55906. Go
  55907. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitipnarac]'))
  55908. drop procedure [dbo].[sp_izmenitipnarac]
  55909.  
  55910. Go
  55911.  
  55912.  
  55913.  
  55914.  
  55915.  
  55916.  
  55917.  
  55918. CREATE         PROCEDURE sp_IzmeniTipNarac
  55919.     @Sifra_Nar    smallint,
  55920.     @ImeNar    varchar(25),
  55921.     @Naslov    varchar(50),
  55922.     @VlIzl        char(1),
  55923.     @Plus_Minus    char(1),
  55924.     @Sifra_GrNar    smallint = null,
  55925.     @NacinZatv    char(1) = null,
  55926.     @Obrazec    char(1) = Null,
  55927.     @DaliDev    char(1) = Null,
  55928.     @DaliVredn    char(1) = Null,
  55929.     @Dali_BO    char(1) = Null,
  55930.         @Oznaka_Obrazec    varchar(40) = Null,
  55931.         @Sifra_Nar_Otkaz smallint = Null,
  55932.         @DaliKOlic    char(1) = Null 
  55933. AS
  55934.     UPDATE [TipNarac]
  55935.     SET [ImeNar]=@ImeNar, [Naslov]=@Naslov, [VlIzl]=@VlIzl, [Plus_Minus]=@Plus_Minus, [Sifra_GrNar]=@Sifra_GrNar, NacinZatv=@NacinZatv, Obrazec=@Obrazec, DaliDev=@DaliDev,
  55936.         DaliVredn=@DaliVredn, Dali_BO=@Dali_BO, Oznaka_Obrazec= @Oznaka_Obrazec, Sifra_Nar_Otkaz = @Sifra_Nar_Otkaz, DaliKolic=@DaliKolic
  55937.     WHERE Sifra_nar=@Sifra_Nar
  55938.     Return @@Error
  55939.  
  55940.  
  55941.  
  55942.  
  55943.  
  55944.  
  55945. Go
  55946. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitippercenovnik]'))
  55947. drop procedure [dbo].[sp_izmenitippercenovnik]
  55948.  
  55949. Go
  55950.  
  55951. CREATE  PROCEDURE sp_IzmeniTipPerCenovnik
  55952.     @Sifra_TipC    Smallint,
  55953.     @ImeTipC    varchar(40),
  55954.     @Prioritet    smallint,
  55955.     @TipCen        char(1)
  55956. AS
  55957.     UPDATE TipPerCenovnik SET ImeTipC = @ImeTipC, Prioritet = @Prioritet, TipCen=@TipCen
  55958.     WHERE Sifra_TipC = @Sifra_TipC
  55959. RETURN @@ERROR
  55960.  
  55961.  
  55962.  
  55963.  
  55964. Go
  55965. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitipprodm]'))
  55966. drop procedure [dbo].[sp_izmenitipprodm]
  55967.  
  55968. Go
  55969.  
  55970.  
  55971. CREATE    PROCEDURE sp_IzmeniTipProdM
  55972.     @Sif_TipProdM Smallint,
  55973.     @ImeTipProdM varchar(30) = null
  55974.     
  55975. AS
  55976.     UPDATE [TipProdMesto]
  55977.     SET [ImeTipProdM]=@ImeTipProdM
  55978.     WHERE [Sif_TipProdM]=@Sif_TipProdM
  55979.     RETURN @@ERROR
  55980.  
  55981.  
  55982.  
  55983.  
  55984. Go
  55985. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitmaneks]'))
  55986. drop procedure [dbo].[sp_izmenitmaneks]
  55987.  
  55988. Go
  55989. CREATE         PROCEDURE sp_IzmeniTmAneks
  55990.     @Sifra_Oe    smallint,
  55991.     @BrojBaranje    int,
  55992.     @BrojPrilog    int,
  55993.     @Sifra_Aneks    int,
  55994.     @DatumAneks    smalldatetime,
  55995.     @Funkcija    nvarchar(50),
  55996.     @Sifra_Tel    int = Null,
  55997.     @Sifra_Art    varchar(20) = Null
  55998.     AS
  55999. UPDATE tmAneks
  56000. SET    DatumAneks = @DatumAneks,
  56001.     Sifra_Tel = @Sifra_Tel,
  56002.     Funkcija = @Funkcija,
  56003.     Sifra_Art = @Sifra_Art
  56004.     WHERE Sifra_Oe = @Sifra_Oe AND BrojBaranje = @BrojBaranje AND BrojPrilog = @BrojPrilog AND Sifra_Aneks = @Sifra_Aneks
  56005. RETURN @@ERROR
  56006.  
  56007.  
  56008. Go
  56009. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitmbaranje]'))
  56010. drop procedure [dbo].[sp_izmenitmbaranje]
  56011.  
  56012. Go
  56013. CREATE PROCEDURE sp_IzmeniTmBaranje
  56014.     @Sifra_OE         smallint,
  56015.     @BrojBaranje         int,
  56016.     @OpisBaranje         nvarchar(100),
  56017.     @BrojDogovor         nvarchar(50),
  56018.     @DatumBar         smalldatetime,
  56019.     @BrPretplatnik         nvarchar(20),
  56020.     @Naziv             nvarchar(50),
  56021.     @Dejnost         nvarchar(50),
  56022.     @VrabVoFirma         nvarchar(50),
  56023.     @Adresa_ZiroSmetka     nvarchar(100),
  56024.     @Osnovac         nvarchar(50),
  56025.     @PotpisnikNaDogovor     nvarchar(50),
  56026.     @BrLk             nvarchar(20),
  56027.     @EMBG             nvarchar(20),
  56028.     @BrZiroSmetka         nvarchar(20),
  56029.     @EDB             nvarchar(20),
  56030.     @DeponentBanka         nvarchar(50),
  56031.     @PostAdrUliBr         nvarchar(100),
  56032.     @PostAdrMestoDrzava     nvarchar(50),
  56033.     @DostAdrUliBr         nvarchar(100),
  56034.     @DostAdrMestoDrzava     nvarchar(50),
  56035.     @KontaktTelDoma     nvarchar(20),
  56036.     @KontaktTelRab         nvarchar(20),
  56037.     @KontaktFax         nvarchar(20),
  56038.     @KontaktEmail         nvarchar(50),
  56039.     @Lozinka         nvarchar(20),
  56040.     @SifraTarifModel     varchar(100),
  56041.     @SifraGrpTarifModel     smallint,
  56042.     @Prasanje1         char(1),
  56043.     @Prasanje2         char(1),
  56044.     @Potvrduvam         char(1),
  56045.     @KontrolaVraboten     nvarchar(50),
  56046.     @Obrazec        nvarchar(20),
  56047.     @Odobren        char(1),
  56048.     @Podatok        nvarchar(200) = Null,
  56049.     @NL_Ekstra        smallint = Null,
  56050.     @NL_Elita        smallint = Null,
  56051.     @Zabeleska        nvarchar(200) = Null
  56052. AS
  56053. UPDATE tmBaranje
  56054. SET
  56055.     OpisBaranje = @OpisBaranje,
  56056.     BrojDogovor = @BrojDogovor,
  56057.     DatumBar = @DatumBar,
  56058.     BrPretplatnik = @BrPretplatnik,
  56059.     Naziv = @Naziv,
  56060.     Dejnost = @Dejnost,
  56061.     VrabVoFirma = @VrabVoFirma,
  56062.     Adresa_ZiroSmetka = @Adresa_ZiroSmetka,
  56063.     Osnovac = @Osnovac,
  56064.     PotpisnikNaDogovor = @PotpisnikNaDogovor,
  56065.     BrLk = @BrLk,
  56066.     EMBG = @EMBG,
  56067.     BrZiroSmetka = @BrZiroSmetka,
  56068.     EDB = @EDB,
  56069.     DeponentBanka = @DeponentBanka,
  56070.     PostAdrUliBr = @PostAdrUliBr,
  56071.     PostAdrMestoDrzava = @PostAdrMestoDrzava,
  56072.     DostAdrUliBr = @DostAdrUliBr,
  56073.     DostAdrMestoDrzava = @DostAdrMestoDrzava,
  56074.     KontaktTelDoma = @KontaktTelDoma,
  56075.     KontaktTelRab = @KontaktTelRab,
  56076.     KontaktFax = @KontaktFax,
  56077.     KontaktEmail = @KontaktEmail,
  56078.     Lozinka = @Lozinka,
  56079.     SifraTarifModel = @SifraTarifModel,
  56080.     SifraGrpTarifModel = @SifraGrpTarifModel,
  56081.     Prasanje1 = @Prasanje1,
  56082.     Prasanje2 = @Prasanje2,
  56083.     Potvrduvam = @Potvrduvam,
  56084.     KontrolaVraboten = @KontrolaVraboten,
  56085.     Obrazec = @Obrazec,
  56086.     Odobren = @Odobren,
  56087.     Podatok = @Podatok,
  56088.     NL_Ekstra = @NL_Ekstra,
  56089.     NL_Elita = @NL_Elita,
  56090.     Zabeleska = @Zabeleska
  56091.     WHERE Sifra_OE = @Sifra_OE AND BrojBaranje = @BrojBaranje
  56092.  
  56093.  
  56094.  
  56095. Go
  56096. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitmsim]'))
  56097. drop procedure [dbo].[sp_izmenitmsim]
  56098.  
  56099. Go
  56100.  
  56101.  
  56102.  
  56103. CREATE      PROCEDURE sp_IzmeniTmSim
  56104.     @Sifra_OE     smallint,
  56105.     @BrojBaranje    int,
  56106.     @BrojPrilog    int,
  56107.     @DatumPrilog    smalldatetime ,
  56108.     @MSISDN     nvarchar (15) ,
  56109.     @BrojNaSim     nvarchar (30) ,
  56110.     @BrLk        nvarchar(20),
  56111.     @EMBG        nvarchar(20),
  56112.     @BrZiroSmetka    nvarchar(20),
  56113.     @EDB        nvarchar(20),
  56114.     @DeponentBanka    nvarchar(50),
  56115.     @ImeKorisnik     nvarchar (50),
  56116.     @AdrKorisnik1     nvarchar (50),
  56117.     @MestoKorisnik1 nvarchar (50) ,
  56118.     @AdrKorisnik2     nvarchar (50),
  56119.     @MestoKorisnik2 nvarchar (50),
  56120.     @TelDoma    nvarchar(20),
  56121.     @TelRab        nvarchar(20),
  56122.     @Fax        nvarchar(20),
  56123.     @Email        nvarchar(50),
  56124.     @Lozinka     nvarchar (40),
  56125.     @Prasanje1     char (1),
  56126.     @Prasanje2     char (1),
  56127.     @SifraTarifModel smallint ,
  56128.     @SifraGrpTarifModel smallint,
  56129.     @Obrazec    nvarchar(20),
  56130.     @IMEI        nvarchar(30)
  56131. AS
  56132. UPDATE TmSim
  56133. SET
  56134.     DatumPrilog=@DatumPrilog  ,
  56135.     MSISDN=@MSISDN ,
  56136.     BrojNaSim=@BrojNaSim  ,
  56137.     BrLk=@BrLk,
  56138.     EMBG=@EMBG,
  56139.     BrZiroSmetka=@BrZiroSmetka,
  56140.     EDB=@EDB,
  56141.     DeponentBanka=@DeponentBanka,
  56142.     ImeKorisnik=@ImeKorisnik ,
  56143.     AdrKorisnik1=@AdrKorisnik1 ,
  56144.     MestoKorisnik1=@MestoKorisnik1  ,
  56145.     AdrKorisnik2=@AdrKorisnik2 ,
  56146.     MestoKorisnik2=@MestoKorisnik2 ,
  56147.     TelDoma=@TelDoma,
  56148.     TelRab=@TelRab,
  56149.     Fax=@Fax,
  56150.     Email=@Email,
  56151.     Lozinka=@Lozinka ,
  56152.     Prasanje1=@Prasanje1,
  56153.     Prasanje2=@Prasanje2 ,
  56154.     SifraTarifModel=@SifraTarifModel,
  56155.     SifraGrpTarifModel=@SifraGrpTarifModel,
  56156.     Obrazec=@Obrazec,
  56157.     IMEI=@IMEI
  56158.     WHERE Sifra_OE = @Sifra_OE AND BrojBaranje = @BrojBaranje AND BrojPrilog = @BrojPrilog
  56159. RETURN @@ERROR
  56160.  
  56161.  
  56162.  
  56163. Go
  56164. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitmtarifmodel]'))
  56165. drop procedure [dbo].[sp_izmenitmtarifmodel]
  56166.  
  56167. Go
  56168. CREATE   PROCEDURE sp_IzmeniTmTarifModel
  56169.     @Sifra_TarifModel    smallint,
  56170.     @Ime            nvarchar(50)
  56171.     AS
  56172. UPDATE tmTarifModel
  56173. SET    Ime = @Ime
  56174.     WHERE Sifra_TarifModel = @Sifra_TarifModel
  56175. RETURN @@ERROR
  56176.  
  56177.  
  56178.  
  56179. Go
  56180. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitmtel]'))
  56181. drop procedure [dbo].[sp_izmenitmtel]
  56182.  
  56183. Go
  56184. CREATE  PROCEDURE sp_IzmeniTmTel
  56185.     @Sifra_Tel    int,
  56186.     @Tip        nvarchar(50),
  56187.     @IMEI        nvarchar(30),
  56188.     @CenaRed    int,
  56189.     @CenaPovl    int,
  56190.     @Zaliha        char(1)
  56191. AS
  56192.     UPDATE TmTel
  56193.     SET     Tip = @Tip,
  56194.         IMEI = @IMEI,
  56195.         CenaRed = @CenaRed,
  56196.         CenaPovl = @CenaPovl,
  56197.         Zaliha = @Zaliha
  56198.     Where Sifra_Tel=@Sifra_Tel
  56199.  
  56200.  
  56201.  
  56202. Go
  56203. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitmuslugi]'))
  56204. drop procedure [dbo].[sp_izmenitmuslugi]
  56205.  
  56206. Go
  56207.  
  56208. CREATE  PROCEDURE sp_IzmeniTmUslugi
  56209.     @Sifra_TmUsl    smallint,
  56210.     @Ime_TmUsl    nvarchar(50),
  56211.     @DefaultPole char
  56212. AS
  56213.     Update TmUslugi 
  56214.     Set Ime_TmUsl=@Ime_TmUsl, DefaultPole = @DefaultPole
  56215.     Where Sifra_TmUsl=@Sifra_TmUsl
  56216.  
  56217.  
  56218.  
  56219. Go
  56220. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitransnal]'))
  56221. drop procedure [dbo].[sp_izmenitransnal]
  56222.  
  56223. Go
  56224. CREATE PROCEDURE sp_IzmeniTransNal
  56225.     @Sifra_Oe    smallint, 
  56226.     @Broj_Trans    int, 
  56227.     @Sifra_Prev    char(6), 
  56228.     @Vozilo        varchar(40)=Null,
  56229.     @Vozac    varchar(40)=Null,
  56230.     @Krajna_Dest    varchar(40)=Null,
  56231.     @Oddalecenost    smallint=Null,
  56232.     @Datum_TransNal smalldatetime, 
  56233.     @Br_Istov_Mesta smallint=Null,
  56234.     @Sifra_Vid_Voz    varchar(20) = Null
  56235. AS
  56236.     Update TransNal
  56237.     Set Sifra_Prev=@Sifra_Prev, Vozilo=@Vozilo, Vozac=@Vozac, Krajna_Dest=@Krajna_Dest, 
  56238.         Oddalecenost=@Oddalecenost, Br_Istov_Mesta=@Br_Istov_Mesta, Datum_TransNal=@Datum_TransNal, Sifra_Vid_Voz=@Sifra_Vid_Voz
  56239.     Where Sifra_Oe=@Sifra_Oe and Broj_Trans=@Broj_Trans
  56240.  
  56241.  
  56242. Go
  56243. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitrosok4tip]'))
  56244. drop procedure [dbo].[sp_izmenitrosok4tip]
  56245.  
  56246. Go
  56247.  
  56248. create  PROCEDURE SP_IzmeniTrosok4Tip
  56249.     @Sifra_4Tros smallint,
  56250.     @Ime4Tros nvarchar(50)
  56251.  
  56252. AS
  56253.  
  56254. update Trosok4Tip
  56255. set Ime4Tros = @Ime4Tros
  56256. where Sifra_4Tros = @Sifra_4Tros
  56257.  
  56258. RETURN @@ERROR
  56259.  
  56260.  
  56261.  
  56262. Go
  56263. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitrosokmesto]'))
  56264. drop procedure [dbo].[sp_izmenitrosokmesto]
  56265.  
  56266. Go
  56267. CREATE   PROCEDURE SP_IzmeniTrosokMesto
  56268.         @Sifra_TrosM smallint,
  56269.         @ImeTrosM nvarchar(30)
  56270. AS
  56271. update trosokMesto
  56272. set ImeTrosM = @ImeTrosM
  56273. where Sifra_TrosM = @Sifra_TrosM
  56274.  
  56275. RETURN @@ERROR
  56276.  
  56277.  
  56278.  
  56279.  
  56280. Go
  56281. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenitrosokvid]'))
  56282. drop procedure [dbo].[sp_izmenitrosokvid]
  56283.  
  56284. Go
  56285. CREATE   PROCEDURE SP_IzmeniTrosokVid
  56286.         @Sifra_TrosV smallint,
  56287.         @ImeTrosV nvarchar(30)
  56288. AS
  56289. update trosokVid
  56290. set ImeTrosv = @ImeTrosV
  56291. where Sifra_TrosV = @Sifra_TrosV
  56292.  
  56293. RETURN @@ERROR
  56294.  
  56295.  
  56296.  
  56297.  
  56298. Go
  56299. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniucesdenovi]'))
  56300. drop procedure [dbo].[sp_izmeniucesdenovi]
  56301.  
  56302. Go
  56303. CREATE   PROCEDURE sp_IzmeniUcesDenovi
  56304.     @Denovi smallint,
  56305.     @Uces    decimal(6,2) = Null
  56306. AS
  56307.     UPDATE [UcesDenovi]
  56308.     SET [Uces]=@Uces    
  56309.     WHERE [Denovi]=@Denovi
  56310.     RETURN @@ERROR
  56311.  
  56312.  
  56313.  
  56314. Go
  56315. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniusl_komerc_opsti]'))
  56316. drop procedure [dbo].[sp_izmeniusl_komerc_opsti]
  56317.  
  56318. Go
  56319. CREATE PROCEDURE sp_IzmeniUsl_Komerc_Opsti
  56320.     @VlIzl        char(1), 
  56321.     @Tip_Sif_Kup    char(1), 
  56322.     @Sif_Kup_Gen    varchar(11),
  56323.     @Tip_Sif_Art    char(1),
  56324.     @Sif_Art_Gen    varchar(20),
  56325.     @Rok_Dosp    smallint,
  56326.     @Uces        decimal(6,2),
  56327.     @Cena        decimal(18,4)
  56328. AS
  56329.     Update Usl_Komerc_Opsti
  56330.     Set Rok_Dosp=@Rok_Dosp, Uces=@Uces, Cena=@Cena
  56331.     Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And Tip_Sif_Art=@Tip_Sif_Art And Sif_Art_Gen=@Sif_Art_Gen
  56332.     Return @@ERROR
  56333.  
  56334.  
  56335.  
  56336. Go
  56337. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniusl_komerc_per]'))
  56338. drop procedure [dbo].[sp_izmeniusl_komerc_per]
  56339.  
  56340. Go
  56341.  
  56342.  
  56343. CREATE   PROCEDURE sp_IzmeniUsl_Komerc_Per
  56344.     @VlIzl        char(1), 
  56345.     @Tip_Sif_Kup    char(1), 
  56346.     @Sif_Kup_Gen    varchar(11), 
  56347.     @Tip_Sif_Art    char(1), 
  56348.     @Sif_Art_Gen    varchar(20), 
  56349.     @Datum_Od    smalldatetime, 
  56350.     @Rok_Dosp    smallint, 
  56351.     @Datum_Do    smalldatetime, 
  56352.     @Uces        decimal(6,2), 
  56353.     @Dod_Uces    decimal(6,2), 
  56354.     @Cena        decimal(18,4),
  56355.     @MalCena    decimal(18,4),
  56356.     @DanCena    char(1),
  56357.     @DanMalCena    char(1)
  56358. AS
  56359. Update Usl_Komerc_Per
  56360. Set Rok_Dosp=@Rok_Dosp, Datum_Do=@Datum_Do, Uces=@Uces, Dod_Uces=@Dod_Uces, Cena=@Cena, MalCena=@MalCena, DanCena=@DanCena, DanMalCena=@DanMalCena
  56361. Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And Tip_Sif_Art=@Tip_Sif_Art 
  56362.         And Sif_Art_Gen=@Sif_Art_Gen And Datum_Od=@Datum_Od
  56363. Return @@ERROR
  56364.  
  56365.  
  56366.  
  56367. Go
  56368. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenivelicina]'))
  56369. drop procedure [dbo].[sp_izmenivelicina]
  56370.  
  56371. Go
  56372.  
  56373.  
  56374.  
  56375. create       PROCEDURE sp_IzmeniVelicina
  56376.     @Sifra_Velic Smallint,
  56377.     @ImeVelic nVarchar(40),
  56378.     @SkrImeVelic nvarchar(10),
  56379.     @OpcStandard varchar(20)=Null
  56380.  
  56381. AS
  56382.     UPDATE [Velicina]
  56383.     SET [ImeVelic]=@ImeVelic, [SkrImeVelic]=@SkrimeVelic, OpcStandard = @OpcStandard
  56384.         
  56385.     WHERE [Sifra_Velic]=@Sifra_Velic
  56386.  
  56387. RETURN @@ERROR
  56388.  
  56389.  
  56390.  
  56391.  
  56392.  
  56393.  
  56394.  
  56395. Go
  56396. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenivelicskala]'))
  56397. drop procedure [dbo].[sp_izmenivelicskala]
  56398.  
  56399. Go
  56400.  
  56401.  
  56402. CREATE  PROCEDURE sp_IzmeniVelicSkala
  56403.    @Sifra_VelSkala varchar(20),
  56404.    @Ime_VelSkala nvarchar(50)
  56405. AS
  56406.     UPDATE VelicSkala
  56407.     SET Ime_VelSkala=@Ime_VelSkala
  56408.     WHERE Sifra_VelSkala=@Sifra_VelSkala
  56409.         RETURN @@ERROR
  56410.  
  56411.  
  56412.  
  56413.  
  56414. Go
  56415. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniverntraenje]'))
  56416. drop procedure [dbo].[sp_izmeniverntraenje]
  56417.  
  56418. Go
  56419.  
  56420. CREATE   PROCEDURE sp_IzmeniVernTraenje
  56421.     @Sifra_Vernost smallint,
  56422.     @Ime_Vernost nVarchar(40)
  56423. AS
  56424.     UPDATE VernTraenje
  56425.     SET Ime_Vernost=@Ime_Vernost
  56426.     WHERE Sifra_Vernost=@Sifra_Vernost 
  56427. RETURN @@ERROR
  56428.  
  56429.  
  56430.  
  56431. Go
  56432. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenividdog]'))
  56433. drop procedure [dbo].[sp_izmenividdog]
  56434.  
  56435. Go
  56436.  
  56437. CREATE   PROCEDURE sp_IzmeniVidDog
  56438.     @Sifra_VidDog nvarchar(20),
  56439.     @Ime_VidDog nVarchar(40)
  56440. AS
  56441.     UPDATE VidDog
  56442.     SET Ime_VidDog=@Ime_VidDog
  56443.     WHERE Sifra_VidDog=@Sifra_VidDog 
  56444. RETURN @@ERROR
  56445.  
  56446.  
  56447.  
  56448. Go
  56449. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenividprodobj]'))
  56450. drop procedure [dbo].[sp_izmenividprodobj]
  56451.  
  56452. Go
  56453. CREATE PROCEDURE sp_IzmeniVidProdObj
  56454.     @Sifra_VPJ    smallint,
  56455.     @Ime_VPJ    varchar(40),
  56456.     @Alt_Ime_Vpj    varchar(50) = Null
  56457. AS
  56458.     Update VidProdObj 
  56459.     Set Ime_VPJ=@Ime_VPJ, Alt_Ime_Vpj=@Alt_Ime_Vpj
  56460.     Where Sifra_VPJ= @Sifra_VPJ
  56461.     Return @@ERROR
  56462.  
  56463.  
  56464. Go
  56465. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenividvozila]'))
  56466. drop procedure [dbo].[sp_izmenividvozila]
  56467.  
  56468. Go
  56469. CREATE   PROCEDURE sp_IzmeniVidVozila
  56470.     @Sifra_Vid_Voz Varchar(20),
  56471.     @Ime_Vid_Voz Varchar(40)
  56472. AS
  56473.     Update VidVozila 
  56474.     Set Ime_Vid_Voz=@Ime_Vid_Voz
  56475.     Where Sifra_Vid_Voz=@Sifra_Vid_Voz
  56476.     RETURN @@ERROR
  56477.  
  56478.  
  56479. Go
  56480. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenivirmani]'))
  56481. drop procedure [dbo].[sp_izmenivirmani]
  56482.  
  56483. Go
  56484.  
  56485. CREATE    PROCEDURE sp_IzmeniVirmani
  56486.     @VirID        int,
  56487.     @Sifra_Nal    varchar(6),
  56488.     @Sifra_Prim    varchar(50),
  56489.     @Pov_Nal    varchar(20),
  56490.     @Pov_Prim    varchar(20),
  56491.     @Banka_Nal    varchar(30),    
  56492.     @Banka_Prim    varchar(30),
  56493.     @Ska_Nal    varchar(20),
  56494.     @Ska_Prim    varchar(20),
  56495.     @Iznos        decimal(18,4),
  56496.     @Cel        varchar(50),
  56497.     @Sifra        varchar(3),
  56498.     @Nacin        varchar(1),
  56499.     @Dat_Pec    smalldatetime,
  56500.     @Dat_Val    smalldatetime,
  56501.     @Dat_Dok    smalldatetime,
  56502.     @Dat_Upl    smalldatetime,
  56503.     @Broj_Db_Lk    varchar(20),
  56504.     @Sifra_Oe    smallint,
  56505.     @Broj_Dok    int,
  56506.     @Sifra_Dok    smallint,
  56507.     @Sifra_Virman    varchar(10),
  56508.     @Budzet    varchar(20),
  56509.     @Uplatna    varchar(20),
  56510.     @Prihodna    varchar(20),
  56511.     @Sifra_Ban_Nal    char(6) = Null,
  56512.     @Sifra_Ban_Prim    char(6) = Null,
  56513.     @Prioritet    smallint = Null
  56514.  AS
  56515.     UPDATE VirmanIzv SET Sifra_Nal=@Sifra_Nal, Sifra_Prim=@Sifra_Prim, Pov_Nal=@Pov_Nal, Pov_Prim=@Pov_Prim, Banka_Nal=@Banka_Nal, 
  56516.     Banka_Prim=@Banka_Prim, Ska_Nal=@Ska_Nal, Ska_Prim=@Ska_Prim, Iznos=@Iznos, Cel=@Cel, Sifra=@Sifra, Nacin=@Nacin, Dat_Pec=@Dat_Pec, 
  56517.     Dat_Val=@Dat_Val, Dat_Dok=@Dat_Dok, Broj_Db_Lk=@Broj_Db_Lk, Sifra_Oe=@Sifra_Oe, Broj_Dok=@Broj_Dok, Sifra_Dok=@Sifra_Dok, 
  56518.     Sifra_Virman=@Sifra_Virman, Budzet=@Budzet, Uplatna=@Uplatna, Prihodna=@Prihodna, Dat_Upl=@Dat_Upl, Sifra_Ban_Nal=@Sifra_Ban_Nal,
  56519.     Sifra_Ban_Prim=@Sifra_Ban_Prim, Prioritet=@Prioritet
  56520.     WHERE VirID = @VirID
  56521.     Return @@Error
  56522.  
  56523.  
  56524.  
  56525. Go
  56526. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenivozila]'))
  56527. drop procedure [dbo].[sp_izmenivozila]
  56528.  
  56529. Go
  56530.  
  56531.  
  56532. CREATE            Procedure sp_IzmeniVozila
  56533.     @Sifra_Art varchar(20),
  56534.     @KomOznaka varchar(40)= null,
  56535.     @TehnOznaka varchar(40)= null,
  56536.     @VarijIzvedba varchar(40)= null,
  56537.     @Kateg_ESE varchar(20)= null,
  56538.     @Kateg_MKS varchar(20)= null,
  56539.     @BrSasija varchar(30)= null,
  56540.     @BrMotor varchar(30)= null,
  56541.     @GodProiz smallint= null,
  56542.     @GodModel smallint= null,
  56543.     @SilaMotor smallint= null,
  56544.     @KubiciMotor decimal(9,2)= null,
  56545.     @Nosivost decimal(9,2)= null,
  56546.     @MasaKgr decimal(9,2)= null,
  56547.     @Dolzina smallint= null,
  56548.     @Sirina smallint= null,
  56549.     @Visina smallint= null,
  56550.     @Rastoj_oski smallint= null,
  56551.     @Optovar_Oski1 smallint= null,
  56552.     @Optovar_Oski2 smallint= null,
  56553.     @BrojOskiPrikl smallint= null,
  56554.     @MaxMasaPrikl1 decimal(9,2)= null,
  56555.     @MaxMasaPrikl2 decimal(9,2)= null,
  56556.     @DozvPnevm1 decimal (9,2)= null,
  56557.     @DozvPnevm2 decimal(9,2)= null,
  56558.     @MestaSedenje smallint= null,
  56559.     @MestaStoenje smallint= null,
  56560.     @MestaLezenje smallint= null,
  56561.     @MaxBrzina smallint = null, 
  56562.     @REgistracija varchar(20)= null,
  56563.     @BrojVrati int = null,
  56564.     @Sopstvenik varchar(40) = null,
  56565.     @Adresa varchar(40) = null,
  56566.     @Telefon varchar(20) = null,
  56567.     @Datum_Garanc smalldatetime,
  56568.     @OznakaOdobr varchar(40),
  56569.     @PotvrdaSoobr varchar(40),
  56570.     @DozvPnevm varchar(40),
  56571.     @TipMOtor varchar(20),
  56572.     @VrteziMin int,
  56573.     @VrteziBucava int,
  56574.     @Bucava int,
  56575.     @Sila_Masa decimal(9, 4),
  56576.     @CO2 decimal(9,4),
  56577.     @Poc_KM varchar(10) = Null,
  56578.     @Poteklo varchar(30) = Null,
  56579.     @Sifra_Kup char(6) = Null
  56580.  
  56581. As
  56582.  
  56583.     Update Vozila
  56584.     Set KomOznaka=@KomOznaka,        -- Besse zaboravena KomOznaka vo prvata ver
  56585.     TehnOznaka=@TehnOznaka, VarijIzvedba=@VarijIzvedba, Kateg_Ese= @Kateg_ESE, Kateg_MKS=@Kateg_MKS, 
  56586.     BrSasija=@BrSasija, BrMotor=@BrMotor, GodProiz=@GodProiz, GodModel=@GodModel,SilaMotor=@SilaMotor, 
  56587.     KubiciMotor=@KubiciMotor,Nosivost=@Nosivost,MasaKgr=@MasaKgr,Dolzina=@Dolzina, Sirina=@Sirina,Visina=@Visina,
  56588.     Rastoj_oski=@Rastoj_oski,Optovar_Oski1=@Optovar_Oski1,Optovar_Oski2=@Optovar_Oski2, BrojOskiPrikl=@BrojOskiPrikl, 
  56589.     MaxMasaPrikl1=@MaxMasaPrikl1,MaxMasaPrikl2=@MaxMasaPrikl2, DozvPnevm1=@DozvPnevm1,DozvPnevm2=@DozvPnevm2,
  56590.     MestaSedenje=@MestaSedenje, MestaStoenje=@MestaStoenje, MestaLezenje=@MestaLezenje, MaxBrzina=@MaxBrzina, 
  56591.     Registracija=@Registracija, BrojVrati=@BrojVrati, Sopstvenik=@Sopstvenik, Adresa=@Adresa, Telefon=@Telefon,
  56592.     Datum_Garanc=@Datum_Garanc, OznakaOdobr = @OznakaOdobr, PotvrdaSoobr = @PotvrdaSoobr,
  56593.     DozvPnevm = @DozvPnevm, TipMotor = @TipMOtor, VrteziMIn = @VrteziMin, VrteziBucava = @VrteziBucava,
  56594.     Bucava = @Bucava, Sila_Masa = @Sila_Masa, CO2 = @CO2, Poc_KM = @Poc_KM, Poteklo = @Poteklo,
  56595.     Sifra_Kup = @Sifra_Kup
  56596.     Where Sifra_Art=@Sifra_Art
  56597.  
  56598.  
  56599. Go
  56600. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenivozizjava]'))
  56601. drop procedure [dbo].[sp_izmenivozizjava]
  56602.  
  56603. Go
  56604. CREATE procedure sp_IzmeniVozIzjava
  56605.     @Sifra_Oe smallint,
  56606.     @Broj_Izjava int,
  56607.     @Delovoden_br varchar(20),
  56608.     @Datum_izjava smalldatetime,
  56609.     @Odobr_br varchar(20),
  56610.     @Odobr_Datum smalldatetime,
  56611.     @Sifra_Art varchar(20)
  56612. As
  56613.     Update VozIzjava
  56614.     Set Delovoden_br=@Delovoden_br, Datum_izjava=@Datum_izjava,
  56615.      Odobr_br=@Odobr_br, Odobr_Datum=@Odobr_Datum, Sifra_Art=@Sifra_Art
  56616.     where Sifra_Oe=@Sifra_Oe and Broj_Izjava=@Broj_izjava 
  56617.  
  56618.  
  56619. Go
  56620. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwebnaracki]'))
  56621. drop procedure [dbo].[sp_izmeniwebnaracki]
  56622.  
  56623. Go
  56624.  
  56625.  
  56626. CREATE    PROCEDURE sp_IzmeniWEBNaracki
  56627.  
  56628.     @StaNarID    smallint = Null,
  56629.     @Odobren     char(1)=Null
  56630. AS
  56631.  
  56632. Update StaNarac set PrifPredlog=@Odobren where  StaNarID=@StaNarID 
  56633.  
  56634.  
  56635.  
  56636.  
  56637. Go
  56638. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmfxr]'))
  56639. drop procedure [dbo].[sp_izmeniwhmfxr]
  56640.  
  56641. Go
  56642. CREATE PROCEDURE sp_IzmeniWhmFXR
  56643.  
  56644.     @Sifra_Oe    smallint, 
  56645.     @FXR_ID    varchar(30), 
  56646.     @FXR_Ime    nvarchar(40), 
  56647.     @FXR_Opis    nvarchar(200) = Null,
  56648.     @Lokac_ID    varchar(30) = Null,
  56649.     @FXR_Barkod    varchar(30) = Null,
  56650.     @FXR_AKtiven    char(1) = Null
  56651. AS
  56652.  
  56653.     Update WhmFXR 
  56654.     Set FXR_Ime=@FXR_Ime, FXR_Opis=@FXR_Opis, Lokac_ID=@Lokac_ID, FXR_Barkod=@FXR_Barkod, 
  56655.         FXR_AKtiven=@FXR_AKtiven, FXR_IzmenetNa=GetDate(), FXR_IzmenetOd=SUser_SName()
  56656.     Where Sifra_Oe=@Sifra_Oe And FXR_ID=@FXR_ID
  56657.     Return @@ERROR
  56658.  
  56659. Go
  56660. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmlokacgrupi]'))
  56661. drop procedure [dbo].[sp_izmeniwhmlokacgrupi]
  56662.  
  56663. Go
  56664. CREATE procedure sp_IzmeniWhmLokacGrupi
  56665.     @Sifra_Oe smallint,
  56666.     @Lokac_ID varchar(30),
  56667.     @Sifra_Gr char(3),
  56668.     @Prioritet smallint
  56669. AS
  56670.     Update WhmLokacGrupi 
  56671.     set Prioritet=@Prioritet
  56672.     Where Sifra_Oe=@Sifra_Oe and Lokac_ID=@LOkac_ID and Sifra_Gr=@Sifra_Gr 
  56673.     return @@error
  56674.  
  56675.  
  56676. Go
  56677. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmlokacija]'))
  56678. drop procedure [dbo].[sp_izmeniwhmlokacija]
  56679.  
  56680. Go
  56681.  
  56682.  
  56683.  
  56684.  
  56685. CREATE     PROCEDURE sp_IzmeniWhmLokacija
  56686.  
  56687.     @Sifra_Oe        smallint,
  56688.     @Lokac_ID        varchar(30),
  56689.     @Lokac_Ime        nvarchar(40),
  56690.     @Lokac_Opis        nvarchar(200) = Null,
  56691.     @Sekc_ID        varchar(15) = Null,
  56692.     @Lokac_X        char(4) = Null,
  56693.     @Lokac_Y        char(4) = Null,
  56694.     @Lokac_Z        char(4) = Null,
  56695.     @Lokac_Barkod    varchar(30) = Null,
  56696.     @Lokac_Aktiven    char(1) = Null,
  56697. @Lokac_DaliPovekeArt    char(1) = Null,
  56698. @Lokac_DaliPovekeLot    char(1) = Null,
  56699. @Lokac_Pick     char(1)= null
  56700. AS
  56701.     Update WhmLokacija 
  56702.     Set Lokac_Ime=@Lokac_Ime,  Lokac_Opis=@Lokac_Opis, Sekc_ID=@Sekc_ID, Lokac_X=@Lokac_X, Lokac_Y=@Lokac_Y, Lokac_Z=@Lokac_Z, 
  56703.         Lokac_Barkod=@Lokac_Barkod, Lokac_Aktiven=@Lokac_Aktiven, Lokac_IzmenetNa=GetDate(), Lokac_IzmenetOd=Suser_SName(), 
  56704.         Lokac_DaliPovekeArt=@Lokac_DaliPovekeArt, Lokac_DaliPovekeLot=@Lokac_DaliPovekeLot, Lokac_Pick=@Lokac_Pick
  56705.     Where Sifra_Oe=@Sifra_Oe And Lokac_ID=@Lokac_ID
  56706.     Return @@ERROR
  56707.  
  56708.  
  56709.  
  56710.  
  56711.  
  56712.  
  56713. Go
  56714. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmlokacijasta]'))
  56715. drop procedure [dbo].[sp_izmeniwhmlokacijasta]
  56716.  
  56717. Go
  56718.  
  56719.  
  56720.  
  56721. CREATE    PROCEDURE sp_IzmeniWhmLokacijaSta
  56722.  
  56723.     @Sifra_Oe        smallint,
  56724.     @Lokac_ID        varchar(30),
  56725.     @Lokac_Ime        nvarchar(40),
  56726.     @Lokac_BarKod        varchar(30), 
  56727.     @Sekc_Id varchar(15)
  56728.     
  56729. AS
  56730.  
  56731.     Update WhmLokacija
  56732.     Set Lokac_Ime=@Lokac_Ime, Lokac_BarKod=@Lokac_BarKod, Sekc_Id = @Sekc_Id, 
  56733.          Lokac_IzmenetNa=GetDate(), Lokac_IzmenetOd=SUser_SName()
  56734.     Where Sifra_Oe=@Sifra_Oe And Lokac_ID=@Lokac_ID
  56735.     Return @@ERROR
  56736.  
  56737.  
  56738.  
  56739.  
  56740. Go
  56741. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmlokackarakterist]'))
  56742. drop procedure [dbo].[sp_izmeniwhmlokackarakterist]
  56743.  
  56744. Go
  56745. CREATE PROCEDURE sp_IzmeniWhmLokacKarakterist
  56746.  
  56747.     @Sifra_Oe    smallint,
  56748.     @Sekc_ID    varchar(15) = Null,
  56749.     @Lokac_X    char(4) = Null,
  56750.     @Lokac_Y    char(4) = Null,
  56751.     @Lokac_Z    char(4) = Null,
  56752.     @Lokac_ID    varchar(30) = Null,
  56753.     @FXR_ID    varchar(30) = Null, 
  56754.     @Sifra_Karakt    smallint, 
  56755.     @DodajKarakt    char(1)
  56756.  
  56757. AS
  56758.     Declare @SSQL as varchar(8000)
  56759.  
  56760.     Set @SSQL = ' Update WhmLokacKarakterist
  56761.             Set DodajKarakt = ''' + @DodajKarakt + '''
  56762.             Where Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' And Sifra_Karakt = ' + Cast(@Sifra_Karakt as varchar(6)) + ' '
  56763.  
  56764.     If @Sekc_ID Is Not Null
  56765.         Set @SSQL = @SSQL + ' And Sekc_ID = ' + @Sekc_ID + ' '
  56766.     Else 
  56767.         Set @SSQL = @SSQL + ' And Sekc_ID Is Null '
  56768.  
  56769.     If @Lokac_X Is Not Null
  56770.         Set @SSQL = @SSQL + ' And Lokac_X = ' + @Lokac_X + ' '
  56771.     Else 
  56772.         Set @SSQL = @SSQL + ' And Lokac_X Is Null '
  56773.  
  56774.     If @Lokac_Y Is Not Null
  56775.         Set @SSQL = @SSQL + ' And Lokac_Y = ' + @Lokac_Y + ' '
  56776.     Else 
  56777.         Set @SSQL = @SSQL + ' And Lokac_Y Is Null '
  56778.  
  56779.     If @Lokac_Z Is Not Null
  56780.         Set @SSQL = @SSQL + ' And Lokac_Z = ' + @Lokac_Z + ' '
  56781.     Else 
  56782.         Set @SSQL = @SSQL + ' And Lokac_Z Is Null '
  56783.  
  56784.     If @Lokac_ID Is Not Null
  56785.         Set @SSQL = @SSQL + ' And Lokac_ID = ' + @Lokac_ID + ' '
  56786.     Else 
  56787.         Set @SSQL = @SSQL + ' And Lokac_ID Is Null '
  56788.  
  56789.     If @FXR_ID Is Not Null
  56790.         Set @SSQL = @SSQL + ' And FXR_ID = ' + @FXR_ID + ' '
  56791.     Else 
  56792.         Set @SSQL = @SSQL + ' And FXR_ID Is Null '
  56793.     
  56794.     Exec(@SSQL)
  56795.  
  56796. Go
  56797. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmlokackatstatus]'))
  56798. drop procedure [dbo].[sp_izmeniwhmlokackatstatus]
  56799.  
  56800. Go
  56801. CREATE PROCEDURE sp_IzmeniWhmLokacKatStatus
  56802.  
  56803.     @Sifra_Oe        smallint, 
  56804.     @Sekc_ID        varchar(15) = Null,
  56805.     @Lokac_X        char(4) = Null,
  56806.     @Lokac_Y        char(4) = Null,
  56807.     @Lokac_Z        char(4) = Null,
  56808.     @Lokac_ID        varchar(30) = Null,
  56809.     @FXR_ID        varchar(30) = Null,
  56810.     @Sifra_KatStatus    smallint, 
  56811.     @DodajKatStatus    char(1)
  56812. AS
  56813.     Declare @SSQL as varchar(8000)
  56814.  
  56815.     Set @SSQL = ' Update WhmLokacKatStatus
  56816.             Set DodajKatStatus = ''' + @DodajKatStatus + '''
  56817.             Where Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' And Sifra_KatStatus = ' + Cast(@Sifra_KatStatus as varchar(6)) + ' '
  56818.  
  56819.     If @Sekc_ID Is Not Null
  56820.         Set @SSQL = @SSQL + ' And Sekc_ID = ' + @Sekc_ID + ' '
  56821.     Else 
  56822.         Set @SSQL = @SSQL + ' And Sekc_ID Is Null '
  56823.  
  56824.     If @Lokac_X Is Not Null
  56825.         Set @SSQL = @SSQL + ' And Lokac_X = ' + @Lokac_X + ' '
  56826.     Else 
  56827.         Set @SSQL = @SSQL + ' And Lokac_X Is Null '
  56828.  
  56829.     If @Lokac_Y Is Not Null
  56830.         Set @SSQL = @SSQL + ' And Lokac_Y = ' + @Lokac_Y + ' '
  56831.     Else 
  56832.         Set @SSQL = @SSQL + ' And Lokac_Y Is Null '
  56833.  
  56834.     If @Lokac_Z Is Not Null
  56835.         Set @SSQL = @SSQL + ' And Lokac_Z = ' + @Lokac_Z + ' '
  56836.     Else 
  56837.         Set @SSQL = @SSQL + ' And Lokac_Z Is Null '
  56838.  
  56839.     If @Lokac_ID Is Not Null
  56840.         Set @SSQL = @SSQL + ' And Lokac_ID = ' + @Lokac_ID + ' '
  56841.     Else 
  56842.         Set @SSQL = @SSQL + ' And Lokac_ID Is Null '
  56843.  
  56844.     If @FXR_ID Is Not Null
  56845.         Set @SSQL = @SSQL + ' And FXR_ID = ' + @FXR_ID + ' '
  56846.     Else 
  56847.         Set @SSQL = @SSQL + ' And FXR_ID Is Null '
  56848.     
  56849.     Exec(@SSQL)
  56850.  
  56851. Go
  56852. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmmvc]'))
  56853. drop procedure [dbo].[sp_izmeniwhmmvc]
  56854.  
  56855. Go
  56856. CREATE PROCEDURE sp_IzmeniWhmMVC
  56857.  
  56858.     @MVC_ID        int,
  56859.     @MVC_Ime        nvarchar(40),
  56860.     @MVC_Opis        nvarchar(200) = Null,
  56861.     @MVC_Barkod        varchar(    30) = Null,
  56862.     @MVC_OrigBarkod    varchar(    50) = Null,
  56863.     @Sifra_Oe        smallint = Null,
  56864.     @Lokac_ID        varchar(30) = Null,
  56865.     @FXR_ID        varchar(30) = Null,
  56866.     @MVC_AKtiven        char(1) = Null
  56867. AS
  56868.     Update WhmMVC 
  56869.     Set MVC_Opis=@MVC_Opis, MVC_Ime=@MVC_Ime, MVC_Barkod=@MVC_Barkod, MVC_OrigBarkod=@MVC_OrigBarkod, Sifra_Oe=@Sifra_Oe, 
  56870.         Lokac_ID=@Lokac_ID, FXR_ID=@FXR_ID, MVC_AKtiven=@MVC_AKtiven, MVC_IzmenetNa=GetDate(), MVC_IzmenetOd=SUser_SName()
  56871.     Where MVC_ID=@MVC_ID
  56872.     Return @@ERROR
  56873.  
  56874. Go
  56875. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmsekcija]'))
  56876. drop procedure [dbo].[sp_izmeniwhmsekcija]
  56877.  
  56878. Go
  56879.  
  56880.  
  56881. CREATE   PROCEDURE sp_IzmeniWhmSekcija
  56882.  
  56883.     @Sifra_Oe        smallint,
  56884.     @Sekc_ID        varchar(15),
  56885.     @Sekc_Ime        nvarchar(40),
  56886.     @Sekc_BarKod    varchar(30),
  56887.     @Sekc_Opis        nvarchar(200) = Null,
  56888.     @Sect_X_Min        char(4) = Null,
  56889.     @Sect_X_Max        char(4) = Null,
  56890.     @Sect_Y_Min        char(4) = Null,
  56891.     @Sect_Y_Max        char(4) = Null,
  56892.     @Sect_Z_Min        char(4) = Null,
  56893.     @Sect_Z_Max        char(4) = Null,
  56894.     @Sekc_Aktiven        char(1) = Null
  56895. AS
  56896.  
  56897.     Update WhmSekcija 
  56898.     Set Sekc_Ime=@Sekc_Ime, Sekc_Opis=@Sekc_Opis, Sekc_Barkod = @Sekc_BarKod,
  56899.         Sect_X_Min=@Sect_X_Min, Sect_X_Max=@Sect_X_Max, Sect_Y_Min=@Sect_Y_Min, Sect_Y_Max=@Sect_Y_Max, Sect_Z_Min=@Sect_Z_Min, Sect_Z_Max=@Sect_Z_Max, 
  56900.         Sekc_Aktiven=@Sekc_Aktiven, Sekc_IzmenetNa=GetDate(), Sekc_IzmenetOd=SUser_SName()
  56901.     Where Sifra_Oe=@Sifra_Oe And Sekc_ID=@Sekc_ID
  56902.     Return @@ERROR
  56903.  
  56904.  
  56905.  
  56906. Go
  56907. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmeniwhmsekcijasta]'))
  56908. drop procedure [dbo].[sp_izmeniwhmsekcijasta]
  56909.  
  56910. Go
  56911.  
  56912. create  PROCEDURE sp_IzmeniWhmSekcijaSta
  56913.  
  56914.     @Sifra_Oe        smallint,
  56915.     @Sekc_ID        varchar(15),
  56916.     @Sekc_Ime        nvarchar(40),
  56917.     @Sekc_BarKod        varchar(30) = Null
  56918.     
  56919. AS
  56920.  
  56921.     Update WhmSekcija 
  56922.     Set Sekc_Ime=@Sekc_Ime, Sekc_BarKod=@Sekc_BarKod, 
  56923.          Sekc_IzmenetNa=GetDate(), Sekc_IzmenetOd=SUser_SName()
  56924.     Where Sifra_Oe=@Sifra_Oe And Sekc_ID=@Sekc_ID
  56925.     Return @@ERROR
  56926.  
  56927.  
  56928. Go
  56929. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfaktnapraveno]'))
  56930. drop procedure [dbo].[sp_izmenixfaktnapraveno]
  56931.  
  56932. Go
  56933.  
  56934.  
  56935.  
  56936.  
  56937. CREATE     PROCEDURE sp_IzmeniXFAktNapraveno
  56938.     @Broj_Napraveno int,
  56939.     @Broj_Baranje int,
  56940.     @Broj_Predmet int = null,
  56941.     @Broj_Baranje_Orig int,
  56942.     @Sifra_Izvrs int,
  56943.     @Datum_Napraveno smalldatetime,
  56944.     @Sifra_Napraveno smallint = null,
  56945.     @OpisNapraveno nvarchar(4000) = null,
  56946.     @Sifra_Oe    smallint = Null,
  56947.     @Sifra_Nar    smallint = Null,
  56948.     @Broj_Nar    int = Null,
  56949.     @Sifra_Oblast    smallint = Null,
  56950.     @Sifra_Kup    char(6),
  56951.     @ImeKontakt    nvarchar(50) = Null
  56952. AS
  56953.     UPDATE XFAktNapraveno
  56954.     SET     Broj_Baranje = @Broj_Baranje,
  56955.         Broj_Predmet = @Broj_Predmet,
  56956.         Broj_Baranje_Orig = @Broj_Baranje_Orig,
  56957.         Sifra_Izvrs = @Sifra_Izvrs,
  56958.         Datum_Napraveno = @Datum_Napraveno,
  56959.         Sifra_Napraveno = @Sifra_Napraveno,
  56960.         OpisNapraveno = @OpisNapraveno,
  56961.         Sifra_Oe=@Sifra_Oe,
  56962.         Sifra_Nar=@Sifra_Nar,
  56963.         Broj_Nar=@Broj_Nar,
  56964.         Sifra_Oblast=@Sifra_Oblast,
  56965.         ImeKontakt=@ImeKontakt,
  56966.         Sifra_Kup=@Sifra_Kup
  56967.     WHERE Broj_Napraveno = @Broj_Napraveno
  56968.  
  56969.  
  56970.  
  56971. Go
  56972. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfbaranje]'))
  56973. drop procedure [dbo].[sp_izmenixfbaranje]
  56974.  
  56975. Go
  56976.  
  56977.  
  56978. CREATE   PROCEDURE sp_IzmeniXFBaranje
  56979.     @Broj_Baranje int,
  56980.     @Broj_Predmet int = null,
  56981.     @Broj_Baranje_Preth int = null,
  56982.     @Broj_Baranje_Orig int,
  56983.     @Sifra_VidBaranje smallint,
  56984.     @Datum_Baranje smalldatetime,
  56985.     @Datum_Ocek_Real smalldatetime = null,
  56986.     @Datum_Gledaj smalldatetime,
  56987.     @Sifra_StatusBaranje smallint,
  56988.     @OpisBaranje nvarchar(4000),
  56989.     @Datum_Zavrseno smalldatetime,
  56990.     @Zatvoreno char(1),
  56991.     @Sifra_Kup char(6) = null,
  56992.     @ImeKontakt nvarchar(50) = null,
  56993.     @Sifra_TipPredmet smallint = null,
  56994.     @Sifra_Oblast smallint = null,
  56995.     @Sifra_Izvrs int = null,
  56996.     @Sifra_Izvrs_Od int = null,
  56997.     @Sifra_Oe    smallint = Null,
  56998.     @Sifra_Nar    smallint = Null,
  56999.     @Broj_Nar    int = Null
  57000. AS
  57001.     UPDATE XFBaranje
  57002.     SET     Broj_Predmet = @Broj_Predmet,
  57003.         Broj_Baranje_Preth = @Broj_Baranje_Preth,
  57004.         Broj_Baranje_Orig = @Broj_Baranje_Orig,
  57005.         Sifra_VidBaranje = @Sifra_VidBaranje,
  57006.         Datum_Baranje = @Datum_Baranje,
  57007.         Datum_Ocek_Real = @Datum_Ocek_Real,
  57008.         Datum_Gledaj = @Datum_Gledaj,
  57009.         Sifra_StatusBaranje = @Sifra_StatusBaranje,
  57010.         OpisBaranje = @OpisBaranje,
  57011.         Datum_Zavrseno = @Datum_Zavrseno,
  57012.         Zatvoreno = @Zatvoreno,
  57013.         Sifra_Kup=@Sifra_Kup,
  57014.         ImeKontakt=@ImeKontakt,
  57015.         Sifra_TipPredmet=@Sifra_TipPredmet,
  57016.         Sifra_Oblast=@Sifra_Oblast,
  57017.         Sifra_Izvrs=@Sifra_Izvrs,
  57018.         Sifra_Izvrs_Od=@Sifra_Izvrs_Od,
  57019.         Sifra_Oe=@Sifra_Oe,
  57020.         Sifra_Nar=@Sifra_Nar,
  57021.         Broj_Nar=@Broj_Nar
  57022.     WHERE Broj_Baranje = @Broj_Baranje
  57023.  
  57024.  
  57025.  
  57026. Go
  57027. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfizvrsitel]'))
  57028. drop procedure [dbo].[sp_izmenixfizvrsitel]
  57029.  
  57030. Go
  57031.  
  57032. CREATE  PROCEDURE sp_IzmeniXFIzvrsitel
  57033.     @Sifra_Izvrs    int,
  57034.     @ImeIzvrs    nvarchar(40),
  57035.     @TipIzvrs    char(1),
  57036.     @Login_Izvrs    nvarchar (20)    
  57037. AS
  57038.     UPDATE XFIzvrsitel
  57039.     SET ImeIzvrs=@ImeIzvrs, TipIzvrs = @TipIzvrs, Login_Izvrs = @Login_Izvrs
  57040.     WHERE Sifra_Izvrs = @Sifra_Izvrs
  57041.  
  57042.  
  57043.  
  57044. Go
  57045. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfoblast]'))
  57046. drop procedure [dbo].[sp_izmenixfoblast]
  57047.  
  57048. Go
  57049. CREATE PROCEDURE sp_IzmeniXFOblast
  57050.     @Sifra_Oblast    smallint,
  57051.     @ImeOblast        nvarchar(40)
  57052. AS
  57053.     UPDATE XFOblast
  57054.     SET ImeOblast=@ImeOblast
  57055.     WHERE Sifra_Oblast = @Sifra_Oblast
  57056.  
  57057.  
  57058.  
  57059. Go
  57060. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfoddel]'))
  57061. drop procedure [dbo].[sp_izmenixfoddel]
  57062.  
  57063. Go
  57064. CREATE PROCEDURE sp_IzmeniXFOddel
  57065.     @Sifra_Oddel    smallint,
  57066.     @ImeOddel        nvarchar(40)
  57067. AS
  57068.     UPDATE XFOddel
  57069.     SET ImeOddel=@ImeOddel
  57070.     WHERE Sifra_Oddel = @Sifra_Oddel
  57071.  
  57072.  
  57073.  
  57074. Go
  57075. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfpredmet]'))
  57076. drop procedure [dbo].[sp_izmenixfpredmet]
  57077.  
  57078. Go
  57079. CREATE PROCEDURE sp_IzmeniXFPredmet
  57080.        @Broj_Predmet INT,
  57081.        @Sifra_Kup char(6),
  57082.        @ImeKontakt nvarchar(50) = null,
  57083.        @Sifra_TipPredmet smallint,
  57084.        @Sifra_Oblast smallint,
  57085.        @Datum_Otv smalldatetime,
  57086.        @Datum_Ocek_Zatv smalldatetime,
  57087.        @Sifra_Izvrs int,
  57088.        @Sifra_StatusPredmet smallint,
  57089.        @OpisPredmet nvarchar(4000) = null,
  57090.     @Datum_Zavrseno    smalldatetime = Null,
  57091.     @Zatvoreno        char(1) = Null,
  57092.     @Sifra_Oe    smallint = Null,
  57093.     @Sifra_Nar    smallint = Null,
  57094.     @Broj_Nar    int = Null,
  57095.     @ImePredmet    nvarchar(50) = Null
  57096. AS
  57097.     UPDATE XFPredmet
  57098.     SET Sifra_Kup = @Sifra_Kup,
  57099.         ImeKontakt = @ImeKontakt,
  57100.         Sifra_TipPredmet = @Sifra_TipPredmet,
  57101.         Sifra_Oblast = @Sifra_Oblast,
  57102.         Datum_Otv = @Datum_Otv,
  57103.         Datum_Ocek_Zatv = @Datum_Ocek_Zatv,
  57104.         Sifra_Izvrs = @Sifra_Izvrs,
  57105.         Sifra_StatusPredmet = @Sifra_StatusPredmet,
  57106.         OpisPredmet = @OpisPredmet,
  57107.         Datum_Zavrseno=@Datum_Zavrseno,
  57108.         Zatvoreno=@Zatvoreno,
  57109.         Sifra_Oe=@Sifra_Oe,
  57110.         Sifra_Nar=@Sifra_Nar,
  57111.         Broj_Nar=@Broj_Nar,
  57112.         ImePredmet=@ImePredmet
  57113.     WHERE Broj_Predmet = @Broj_Predmet
  57114.  
  57115.  
  57116. Go
  57117. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfstatusbaranje]'))
  57118. drop procedure [dbo].[sp_izmenixfstatusbaranje]
  57119.  
  57120. Go
  57121. CREATE PROCEDURE sp_IzmeniXFStatusBaranje
  57122.     @Sifra_StatusBaranje    smallint,
  57123.     @ImeStatusBaranje        nvarchar(40)
  57124. AS
  57125.     UPDATE XFStatusBaranje
  57126.     SET ImeStatusBaranje=@ImeStatusBaranje
  57127.     WHERE Sifra_StatusBaranje = @Sifra_StatusBaranje
  57128.  
  57129.  
  57130.  
  57131. Go
  57132. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfstatuspredmet]'))
  57133. drop procedure [dbo].[sp_izmenixfstatuspredmet]
  57134.  
  57135. Go
  57136. CREATE PROCEDURE sp_IzmeniXFStatusPredmet
  57137.     @Sifra_StatusPredmet    smallint,
  57138.     @ImeStatusPredmet        nvarchar(40)
  57139. AS
  57140.     UPDATE XFStatusPredmet
  57141.     SET ImeStatusPredmet=@ImeStatusPredmet
  57142.     WHERE Sifra_StatusPredmet = @Sifra_StatusPredmet
  57143.  
  57144.  
  57145.  
  57146. Go
  57147. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixftippredmet]'))
  57148. drop procedure [dbo].[sp_izmenixftippredmet]
  57149.  
  57150. Go
  57151. CREATE PROCEDURE sp_IzmeniXFTipPredmet
  57152.     @Sifra_TipPredmet    smallint,
  57153.     @ImeTipPredmet        nvarchar(40)
  57154. AS
  57155.     UPDATE XFTipPredmet
  57156.     SET ImeTipPredmet = @ImeTipPredmet
  57157.     WHERE Sifra_TipPredmet = @Sifra_TipPredmet
  57158.  
  57159.  
  57160.  
  57161. Go
  57162. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfvidbaranje]'))
  57163. drop procedure [dbo].[sp_izmenixfvidbaranje]
  57164.  
  57165. Go
  57166.  
  57167. CREATE  PROCEDURE sp_IzmeniXFVidBaranje
  57168.     @Sifra_VidBaranje    smallint,
  57169.     @ImeVidBaranje        nvarchar(40),
  57170.     @Nivo_VidBaranje    smallint,
  57171.     @Samo_Informacija    char(1),
  57172.     @SlikaGore        image = Null, 
  57173.     @SlikaDolu        image = Null, 
  57174.     @TekstGore        nvarchar(500) = Null, 
  57175.     @TekstDolu        nvarchar(500) = Null, 
  57176.     @SlikaGoreX        smallint = Null,
  57177.     @SlikaGoreY        smallint = Null,
  57178.     @SlikaDoluX        smallint = Null,
  57179.     @SlikaDoluY        smallint = Null,
  57180.     @TekstGoreX        smallint = Null,
  57181.     @TekstGoreY        smallint = Null,
  57182.     @TekstDoluX        smallint = Null,
  57183.     @TekstDoluY        smallint = Null,
  57184.     @SirSlikaGore        smallint = Null,
  57185.     @VisSlikaGore        smallint = Null,
  57186.     @SirSlikaDolu        smallint = Null,
  57187.     @VisSlikaDolu        smallint = Null,
  57188.         @NaslovVidBaranje    nvarchar(40)
  57189. AS
  57190.     UPDATE XFVidBaranje
  57191.     SET ImeVidBaranje = @ImeVidBaranje,
  57192.         Nivo_VidBaranje = @Nivo_VidBaranje,
  57193.         Samo_Informacija = @Samo_Informacija,
  57194.         SlikaGore=@SlikaGore, 
  57195.         SlikaDolu=@SlikaDolu, 
  57196.         TekstGore=@TekstGore, 
  57197.         TekstDolu=@TekstDolu, 
  57198.         SlikaGoreX=@SlikaGoreX, 
  57199.         SlikaGoreY=@SlikaGoreY, 
  57200.         SlikaDoluX=@SlikaDoluX, 
  57201.         SlikaDoluY=@SlikaDoluY, 
  57202.         TekstGoreX=@TekstGoreX, 
  57203.         TekstGoreY=@TekstGoreY, 
  57204.         TekstDoluX=@TekstDoluX, 
  57205.         TekstDoluY=@TekstDoluY, 
  57206.         SirSlikaGore=@SirSlikaGore, 
  57207.         VisSlikaGore=@VisSlikaGore, 
  57208.         SirSlikaDolu=@SirSlikaDolu, 
  57209.         VisSlikaDolu=@VisSlikaDolu,
  57210.                 NaslovVidBaranje = @NaslovVidBaranje
  57211.     WHERE Sifra_VidBaranje = @Sifra_VidBaranje
  57212.  
  57213.  
  57214.  
  57215. Go
  57216. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenixfvraboddel]'))
  57217. drop procedure [dbo].[sp_izmenixfvraboddel]
  57218.  
  57219. Go
  57220. CREATE PROCEDURE sp_IzmeniXFVrabOddel
  57221.     @Sifra_Izvrs    int,
  57222.     @Sifra_Oddel    smallint,
  57223.     @Nivo_Odgovoren    smallint
  57224. AS
  57225.     UPDATE XFVrabOddel
  57226.     SET Nivo_Odgovoren = @Nivo_Odgovoren
  57227.     WHERE Sifra_Izvrs = @Sifra_Izvrs AND Sifra_Oddel = @Sifra_Oddel
  57228.  
  57229.  
  57230.  
  57231. Go
  57232. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenizacuvajean_sap]'))
  57233. drop procedure [dbo].[sp_izmenizacuvajean_sap]
  57234.  
  57235. Go
  57236.  
  57237.  
  57238.  
  57239. CREATE    PROCEDURE sp_IzmeniZacuvajEAN_SAP
  57240.     @Sifra_Art    VARCHAR(20),
  57241.     @Nom        CHAR(50),
  57242.     @ImaKomerc    INT = NULL,
  57243.     @EdMera        CHAR(5) = NULL
  57244. AS
  57245. IF NOT EXISTS (SELECT Sifra_Art FROM ABarKod WHERE Sifra_Art = @Sifra_Art AND Nom = @Nom)
  57246.     INSERT INTO ABarKod (Sifra_Art, Nom) VALUES (@Sifra_Art, @Nom)
  57247.  
  57248.  
  57249.  
  57250.  
  57251.  
  57252.  
  57253.  
  57254. Go
  57255. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenizacuvajkolrab_sap]'))
  57256. drop procedure [dbo].[sp_izmenizacuvajkolrab_sap]
  57257.  
  57258. Go
  57259.  
  57260. CREATE   PROCEDURE sp_IzmeniZacuvajKolRab_SAP
  57261.     @Od_Kolic    DECIMAL(18,4),
  57262.     @Do_Kolic    DECIMAL(18,4),
  57263.     @Rabat        DECIMAL(6,2)
  57264. AS
  57265. INSERT INTO Usl_KolRab_Fra (Od_Kolic, Do_Kolic, Rabat)
  57266. VALUES (@Od_Kolic, @Do_Kolic, @Rabat)
  57267.  
  57268.  
  57269.  
  57270.  
  57271. Go
  57272. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenizacuvajoptzalpooe]'))
  57273. drop procedure [dbo].[sp_izmenizacuvajoptzalpooe]
  57274.  
  57275. Go
  57276.  
  57277. CREATE  PROCEDURE sp_IzmeniZacuvajOptZalPoOe
  57278.     @Sifra_Oe    Smallint,
  57279.     @Sifra_Art    varchar(20),
  57280.     @OptZal        Decimal(18,6) = Null 
  57281. AS
  57282. Declare @Dozvoleno    char(1)
  57283. IF @OptZal<0
  57284.     SET @Dozvoleno='N'
  57285. ELSE
  57286.     SET @Dozvoleno='D' 
  57287.  
  57288. IF EXISTS (SELECT * FROM OptZalPoOe WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art)    
  57289. Begin
  57290.     UPDATE OptZalPoOe SET OptZal=@OptZal, Dozvoleno=@Dozvoleno
  57291.     WHERE Sifra_Oe=@Sifra_Oe AND Sifra_Art=@Sifra_Art
  57292. End
  57293. ElSE
  57294.     Insert Into OptZalPoOe (Sifra_Oe, Sifra_Art, MinZal, MaxZal, OptZal, Dozvoleno)
  57295.     Values (@Sifra_Oe, @Sifra_Art, @OptZal, @OptZal, @OptZal, @Dozvoleno)
  57296.  
  57297.  
  57298.  
  57299. Go
  57300. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenizacuvajpat_sap]'))
  57301. drop procedure [dbo].[sp_izmenizacuvajpat_sap]
  57302.  
  57303. Go
  57304.  
  57305. CREATE  PROCEDURE sp_IzmeniZacuvajPat_SAP
  57306.     @Sifra_Pat_SAP    NVARCHAR(10),
  57307.     @ImePat            VARCHAR(30) = Null,
  57308.     @Prod_Ured        VARCHAR(4) = Null
  57309. AS
  57310.     DECLARE @Sifra_Pat AS SMALLINT
  57311.     SET @Sifra_Pat = NULL
  57312.     SET @Sifra_Pat = (SELECT TOP 1 Sifra_Pat FROM Patnici WHERE Sifra_Pat_SAP = @Sifra_Pat_SAP)
  57313.  
  57314.     IF LEN(@ImePat) > 30 SET @ImePat = SUBSTRING(@ImePat, 0, 30)
  57315.     
  57316.     IF @Sifra_Pat IS NOT NULL
  57317.         BEGIN
  57318.             UPDATE Patnici SET
  57319.                 Sifra_Pat_SAP = @Sifra_Pat_SAP,
  57320.                 ImePat = @ImePat,
  57321.                 Adresa2 = @Prod_Ured
  57322.             WHERE Sifra_Pat = @Sifra_Pat
  57323.         END
  57324.     ELSE
  57325.         BEGIN
  57326.             SET @Sifra_Pat = (SELECT COUNT (Sifra_Pat) FROM Patnici)
  57327.             SET @Sifra_Pat = @Sifra_Pat + 1
  57328.             INSERT INTO Patnici (Sifra_Pat, ImePat, Adresa2, Sifra_Pat_SAP)
  57329.             VALUES (@Sifra_Pat, @ImePat, @Prod_Ured, @Sifra_Pat_SAP)
  57330.         END
  57331.  
  57332.  
  57333.  
  57334.  
  57335. Go
  57336. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenizacuvajsifkupart_sap]'))
  57337. drop procedure [dbo].[sp_izmenizacuvajsifkupart_sap]
  57338.  
  57339. Go
  57340.  
  57341. CREATE  PROCEDURE sp_IzmeniZacuvajSifKupArt_SAP
  57342.     @Sifra_Kup        CHAR(6),
  57343.     @Sifra_Art        VARCHAR(20),
  57344.     @Sifra_Art_Kup    VARCHAR(20)
  57345. AS
  57346.  
  57347. IF EXISTS (SELECT Sifra_Kup FROM SifKupArt WHERE Sifra_Kup = @Sifra_Kup AND Sifra_Art = @Sifra_Art)
  57348.     UPDATE SifKupArt SET Sifra_Art_Kup = @Sifra_Art_Kup, Prik_Fakt = 'D'
  57349. ELSE
  57350.     INSERT INTO SifKupArt (Sifra_Kup, Sifra_Art, Sifra_Art_Kup)
  57351.     VALUES (@Sifra_Kup, @Sifra_Art, @Sifra_Art_Kup)
  57352.  
  57353.  
  57354.  
  57355.  
  57356.  
  57357. Go
  57358. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izmenizbirenbrand]'))
  57359. drop procedure [dbo].[sp_izmenizbirenbrand]
  57360.  
  57361. Go
  57362. CREATE   PROCEDURE sp_IzmeniZbirenBrand
  57363.     @Sifra_ZBrand Smallint,
  57364.     @Ime_Brand varchar(30)
  57365. AS
  57366.     Declare @Propagiraj as char(1)
  57367.     Set @Propagiraj='D'
  57368.     UPDATE [DrgPodel1]
  57369.     SET [Ime_Drg1]=@Ime_Brand, [Propagiraj]=@Propagiraj
  57370.     WHERE [Sifra_Drg1]=@Sifra_ZBrand
  57371. RETURN @@ERROR
  57372.  
  57373.  
  57374.  
  57375. Go
  57376. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_iznpocarbrzadevfra]'))
  57377. drop procedure [dbo].[sp_iznpocarbrzadevfra]
  57378.  
  57379. Go
  57380.  
  57381. CREATE  PROCEDURE sp_IznPoCarBrZaDevFra
  57382.     @Sifra_OE    smallint,
  57383.     @Sifra_dok    smallint,
  57384.     @Broj_Dok    int
  57385. AS
  57386. SELECT A.CarBroj, C.Ime, SUM(S.Kolic * A.BTezina/1000) BTezina, SUM(S.Kolic * A.Tezina/1000) NTezina, SUM(S.Kolic * S.DevCena) FaktVred
  57387. FROM DevFraStavk S INNER JOIN DevFra D ON D.DevFraID=S.DevFraID
  57388. INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art
  57389. LEFT OUTER JOIN CBroevi C ON A.CarBroj=C.CarBroj
  57390. WHERE D.Sifra_OE=@Sifra_OE AND D.Sifra_Dok=@Sifra_Dok AND D.Broj_DevF=@Broj_Dok
  57391. GROUP BY A.CarBroj, C.Ime
  57392.  
  57393.  
  57394.  
  57395. Go
  57396. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_iznpotarpodok]'))
  57397. drop procedure [dbo].[sp_iznpotarpodok]
  57398.  
  57399. Go
  57400.  
  57401.  
  57402.  
  57403.  
  57404.  
  57405. CREATE          PROCEDURE sp_IznPoTarPoDok
  57406.     @DokrID Int,
  57407.     @ImaDanok char(1)='D'
  57408. AS
  57409. Declare @SSQL Varchar(3000)
  57410. Declare @VlIzl Char(1)
  57411. Declare @Dev char(1)
  57412. Declare @SamoNivel char(1)
  57413. Select @VlIzl=VlIzl From Dokr Where DokrID=@DokrID
  57414. SELECT @Dev=T.Dev, @SamoNivel=T.SamoNivel FROM TipDok T INNER JOIN Dokr D ON T.Sifra_Dok=D.Sifra_Dok WHERE D.DokrID=@DokrID
  57415.  
  57416. IF @SamoNivel='D'
  57417. Begin
  57418.     Set @SSQL = 'Select S.POsn, 
  57419.     0 As Dok_NetoBezDDV, 0 As Mag_Nab, 0 As Dok_Rabat,0 As DokNeto_PredRabat, 0 As Dok_DDV,0 As DokDDV_Malo,
  57420.     Round(SUM(S.Alt_Kolic * (S.MagCena-S.DokCena)/(1+S.POsn/100)), 2) As Mag_Neto, 
  57421.     Round(Sum(S.Alt_Kolic * (S.MagCena-S.DokCena)), 2) As Mag_SoDDV, 
  57422.     Round(Sum(S.Alt_Kolic*(S.MagCena-S.DokCena) - S.Alt_Kolic*(S.MagCena-S.DokCena)/(1+S.POsn/100)), 2) As Mag_DDV
  57423.     From Stavr S, Dokr D, KatArt K  Where S.DokrID=' + Cast(@DokrID As varchar(10)) + '
  57424.     And D.DokrId = S.DokrID And S.Sifra_Art = K.Sifra_Art  Group By S.POsn '
  57425. ----
  57426. End
  57427. Else
  57428. Begin
  57429. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 26.07.08
  57430.     Set @SSQL = 'Select T.ProcOsn POsn, 
  57431.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_Neto,
  57432.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_SoDDV, '
  57433. ELSE
  57434.     Set @SSQL = 'Select S.POsn,     
  57435.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_Neto,
  57436.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_SoDDV, '
  57437. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) As Dok_NetoBezDDV, 
  57438.     Round(Sum(Case K.SMatUsl When ''M'' Then S.Kolic*S.NabCena Else 0 End), 2) As Mag_Nab, 
  57439.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0,0)*(S.POsn/100)), 2) As Mag_DDV,'
  57440. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic*S.Uces/100),2) As Dok_Rabat,
  57441.     Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic),2) As DokNeto_PredRabat, ' --dodadeno 06.04.05
  57442. If @VlIzl = 'V'
  57443.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa)*(S.POsnPren/100)), 2) As Dok_DDV '
  57444. Else If @VlIzl = 'I'
  57445.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)*(S.POsn/100)), 2) As Dok_DDV '
  57446. If @VlIzl = 'I' AND (@ImaDanok='N' OR @Dev='D')        --spec.za f-ri od prod (ZV)
  57447.     Set @SSQL = @SSQL + ',Round(Sum(S.Kolic* S.DokCena* (1- S.Uces/100)* (1-D.Kasa/100)*T.ProcOsn/100), 2) As DokDDV_Malo '
  57448.  
  57449. Set @SSQL = @SSQL + 'From Stavr S, Dokr D, KatArt K'
  57450. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57451.     Set @SSQL = @SSQL + ', Tarifi T '
  57452. Set @SSQL = @SSQL + ' Where S.DokrID=' + Cast(@DokrID As varchar(10)) + '
  57453.         And D.DokrId = S.DokrID And S.Sifra_Art = K.Sifra_Art '
  57454. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57455.     Set @SSQL = @SSQL + ' AND K.Sifra_Tar=T.Sifra_Tar Group By T.ProcOsn '
  57456. ELSE
  57457.     Set @SSQL = @SSQL + ' Group By S.POsn '
  57458. End
  57459. Exec(@SSQL)
  57460.  
  57461.  
  57462.  
  57463.  
  57464. Go
  57465. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_iznpotarpodokpoart]'))
  57466. drop procedure [dbo].[sp_iznpotarpodokpoart]
  57467.  
  57468. Go
  57469.  
  57470.  
  57471.  
  57472.  
  57473.  
  57474.  
  57475. CREATE           PROCEDURE sp_IznPoTarPoDokPoArt
  57476.     @DokrID Int,
  57477.     @ImaDanok char(1)='D'
  57478. AS
  57479. Declare @SSQL Varchar(3000)
  57480. Declare @VlIzl Char(1)
  57481. Select @VlIzl=VlIzl From Dokr Where DokrID=@DokrID
  57482.  
  57483. IF @VlIzl='I' AND @ImaDanok='N'
  57484.     Set @SSQL = 'Select T.ProcOsn POsn, K.Kto_Anal,
  57485.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_Neto,
  57486.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_SoDDV, '
  57487. ELSE
  57488.     Set @SSQL = 'Select S.POsn, K.Kto_Anal,
  57489.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_Neto,
  57490.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_SoDDV, '
  57491. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) As Dok_NetoBezDDV, 
  57492.     Round(Sum(Case K.SMatUsl When ''M'' Then S.Kolic*S.NabCena Else 0 End), 2) As Mag_Nab, 
  57493.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0,0)*(S.POsn/100)), 2) As Mag_DDV,'
  57494. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic*S.Uces/100),2) As Dok_Rabat,
  57495.     Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic),2) As DokNeto_PredRabat, ' --dodadeno 06.04.05
  57496. If @VlIzl = 'V'
  57497.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa)*(S.POsnPren/100)), 2) As Dok_DDV '
  57498. Else If @VlIzl = 'I'
  57499.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)*(S.POsn/100)), 2) As Dok_DDV '
  57500. If @VlIzl = 'I' AND @ImaDanok='N'        --spec.za f-ri od prod (ZV)
  57501.     Set @SSQL = @SSQL + ',Round(Sum(S.Kolic* S.DokCena* (1- S.Uces/100)* (1-D.Kasa/100)*T.ProcOsn/100), 2) As DokDDV_Malo '
  57502. Set @SSQL = @SSQL + 'From Stavr S, Dokr D, KatArt K'
  57503. IF @VlIzl='I' AND @ImaDanok='N'
  57504.     Set @SSQL = @SSQL + ', Tarifi T '
  57505. Set @SSQL = @SSQL + ' Where S.DokrID=' + Cast(@DokrID As varchar(10)) + '
  57506.         And D.DokrId = S.DokrID And S.Sifra_Art = K.Sifra_Art '
  57507. IF @VlIzl='I' AND @ImaDanok='N'
  57508. Begin    
  57509.     Set @SSQL = @SSQL + ' AND K.Sifra_Tar=T.Sifra_Tar Group By T.ProcOsn, K.Kto_Anal Order By T.ProcOsn, K.Kto_Anal '
  57510. End
  57511. ELSE
  57512. Begin
  57513.     Set @SSQL = @SSQL + ' Group By S.POsn, K.Kto_Anal Order By S.POsn, K.Kto_Anal'
  57514. End
  57515.  
  57516. Exec(@SSQL)  ---ne go cepkaj order by  
  57517.  
  57518.  
  57519.  
  57520.  
  57521.  
  57522. Go
  57523. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_iznpotarpodokpodivodart]'))
  57524. drop procedure [dbo].[sp_iznpotarpodokpodivodart]
  57525.  
  57526. Go
  57527.  
  57528.  
  57529.  
  57530.  
  57531. CREATE        PROCEDURE sp_IznPoTarPoDokPoDivOdArt
  57532.     @DokrID Int,
  57533.     @ImaDanok char(1)='D'
  57534. AS
  57535. Declare @SSQL Varchar(3000)
  57536. Declare @VlIzl Char(1)
  57537. Declare @Dev char(1)
  57538. Select @VlIzl=VlIzl From Dokr Where DokrID=@DokrID
  57539. SELECT @Dev=T.Dev FROM TipDok T INNER JOIN Dokr D ON T.Sifra_Dok=D.Sifra_Dok WHERE D.DokrID=@DokrID
  57540.  
  57541. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 26.07.08
  57542.     Set @SSQL = 'Select T.ProcOsn POsn, K.Sifra_Div, 
  57543.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_Neto,
  57544.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_SoDDV, '
  57545. ELSE
  57546.     Set @SSQL = 'Select S.POsn, K.Sifra_Div, 
  57547.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_Neto,
  57548.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_SoDDV, '
  57549. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) As Dok_NetoBezDDV, 
  57550.     Round(Sum(Case K.SMatUsl When ''M'' Then S.Kolic*S.NabCena Else 0 End), 2) As Mag_Nab, 
  57551.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0,0)*(S.POsn/100)), 2) As Mag_DDV,'
  57552. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic*S.Uces/100),2) As Dok_Rabat,
  57553.     Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic),2) As DokNeto_PredRabat, ' --dodadeno 06.04.05
  57554. If @VlIzl = 'V'
  57555.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa)*(S.POsnPren/100)), 2) As Dok_DDV '
  57556. Else If @VlIzl = 'I'
  57557.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)*(S.POsn/100)), 2) As Dok_DDV '
  57558. If @VlIzl = 'I' AND (@ImaDanok='N' OR @Dev='D')        --spec.za f-ri od prod (ZV)
  57559.     Set @SSQL = @SSQL + ',Round(Sum(S.Kolic* S.DokCena* (1- S.Uces/100)* (1-D.Kasa/100)*T.ProcOsn/100), 2) As DokDDV_Malo '
  57560.  
  57561. Set @SSQL = @SSQL + 'From Stavr S, Dokr D, KatArt K'
  57562. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57563.     Set @SSQL = @SSQL + ', Tarifi T '
  57564. Set @SSQL = @SSQL + ' Where S.DokrID=' + Cast(@DokrID As varchar(10)) + '
  57565.         And D.DokrId = S.DokrID And S.Sifra_Art = K.Sifra_Art '
  57566. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57567.     Set @SSQL = @SSQL + ' AND K.Sifra_Tar=T.Sifra_Tar Group By T.ProcOsn, K.Sifra_Div '
  57568. ELSE
  57569.     Set @SSQL = @SSQL + ' Group By S.POsn, K.Sifra_Div '
  57570. Exec(@SSQL)
  57571.  
  57572.  
  57573. Go
  57574. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_iznpotarpodokpodivodartpokto]'))
  57575. drop procedure [dbo].[sp_iznpotarpodokpodivodartpokto]
  57576.  
  57577. Go
  57578.  
  57579.  
  57580.  
  57581. CREATE        PROCEDURE sp_IznPoTarPoDokPoDivOdArtPoKto
  57582.     @DokrID Int,
  57583.     @ImaDanok char(1)='D'
  57584. AS
  57585. Declare @SSQL Varchar(3000)
  57586. Declare @VlIzl Char(1)
  57587. Declare @Dev char(1)
  57588. Select @VlIzl=VlIzl From Dokr Where DokrID=@DokrID
  57589. SELECT @Dev=T.Dev FROM TipDok T INNER JOIN Dokr D ON T.Sifra_Dok=D.Sifra_Dok WHERE D.DokrID=@DokrID
  57590.  
  57591. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 26.07.08
  57592.     Set @SSQL = 'Select T.ProcOsn POsn, K.Sifra_Div, K.Kto_Anal,  
  57593.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_Neto,
  57594.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_SoDDV, '
  57595. ELSE
  57596.     Set @SSQL = 'Select S.POsn, K.Sifra_Div, K.Kto_Anal,
  57597.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_Neto,
  57598.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_SoDDV, '
  57599. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) As Dok_NetoBezDDV, 
  57600.     Round(Sum(Case K.SMatUsl When ''M'' Then S.Kolic*S.NabCena Else 0 End), 2) As Mag_Nab, 
  57601.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0,0)*(S.POsn/100)), 2) As Mag_DDV,'
  57602. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic*S.Uces/100),2) As Dok_Rabat,
  57603.     Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic),2) As DokNeto_PredRabat, ' --dodadeno 06.04.05
  57604. If @VlIzl = 'V'
  57605.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa)*(S.POsnPren/100)), 2) As Dok_DDV '
  57606. Else If @VlIzl = 'I'
  57607.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)*(S.POsn/100)), 2) As Dok_DDV '
  57608. If @VlIzl = 'I' AND (@ImaDanok='N' OR @Dev='D')        --spec.za f-ri od prod (ZV)
  57609.     Set @SSQL = @SSQL + ',Round(Sum(S.Kolic* S.DokCena* (1- S.Uces/100)* (1-D.Kasa/100)*T.ProcOsn/100), 2) As DokDDV_Malo '
  57610.  
  57611. Set @SSQL = @SSQL + 'From Stavr S, Dokr D, KatArt K'
  57612. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57613.     Set @SSQL = @SSQL + ', Tarifi T '
  57614. Set @SSQL = @SSQL + ' Where S.DokrID=' + Cast(@DokrID As varchar(10)) + '
  57615.         And D.DokrId = S.DokrID And S.Sifra_Art = K.Sifra_Art '
  57616. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57617.     Set @SSQL = @SSQL + ' AND K.Sifra_Tar=T.Sifra_Tar Group By T.ProcOsn, K.Sifra_Div '
  57618. ELSE
  57619.     Set @SSQL = @SSQL + ' Group By S.POsn, K.Sifra_Div, K.Kto_Anal '
  57620. Exec(@SSQL)
  57621.  
  57622.  
  57623.  
  57624. Go
  57625. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_iznpotarpodokzbpodivodart]'))
  57626. drop procedure [dbo].[sp_iznpotarpodokzbpodivodart]
  57627.  
  57628. Go
  57629.  
  57630.  
  57631.  
  57632.  
  57633.  
  57634. CREATE       PROCEDURE sp_IznPoTarPoDokZbPoDivOdArt
  57635.     @DokrZbID Int,
  57636.     @ImaDanok char(1)='D'
  57637. AS
  57638. Declare @SSQL Varchar(3000)
  57639. Declare @VlIzl Char(1)
  57640. Declare @Dev char(1)
  57641. SELECT @Dev=T.Dev, @VlIzl=Vl_Izl FROM TipDok T INNER JOIN DokrZb D ON T.Sifra_Dok=D.Sifra_Dok WHERE D.DokrZbID=@DokrZbID
  57642.  
  57643. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 26.07.08
  57644.     Set @SSQL = 'Select T.ProcOsn POsn, K.Sifra_Div, 
  57645.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_Neto,
  57646.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, T.ProcOsn, 0, 0)), 2) As Mag_SoDDV, '
  57647. ELSE
  57648.     Set @SSQL = 'Select S.POsn, K.Sifra_Div, 
  57649.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_Neto,
  57650.     Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0, 0)), 2) As Mag_SoDDV, '
  57651. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) As Dok_NetoBezDDV, 
  57652.     Round(Sum(Case K.SMatUsl When ''M'' Then S.Kolic*S.NabCena Else 0 End), 2) As Mag_Nab, 
  57653.     Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.MagCena, S.DanMagCena, S.POsn, 0,0)*(S.POsn/100)), 2) As Mag_DDV,'
  57654. Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic*S.Uces/100),2) As Dok_Rabat,
  57655.     Round(Sum(dbo.fn_VratiCena(S.DokCena, S.POsnPren, S.DanDokCena, ''N'')*S.Kolic),2) As DokNeto_PredRabat, ' --dodadeno 06.04.05
  57656. If @VlIzl = 'V'
  57657.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa)*(S.POsnPren/100)), 2) As Dok_DDV '
  57658. Else If @VlIzl = 'I'
  57659.     Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)*(S.POsn/100)), 2) As Dok_DDV '
  57660. If @VlIzl = 'I' AND (@ImaDanok='N' OR @Dev='D')        --spec.za f-ri od prod (ZV)
  57661.     Set @SSQL = @SSQL + ',Round(Sum(S.Kolic* S.DokCena* (1- S.Uces/100)* (1-D.Kasa/100)*T.ProcOsn/100), 2) As DokDDV_Malo '
  57662.  
  57663. Set @SSQL = @SSQL + 'From Stavr S, Dokr D, KatArt K'
  57664. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57665.     Set @SSQL = @SSQL + ', Tarifi T '
  57666. Set @SSQL = @SSQL + ' Where S.DokrID IN (SELECT DokrID FROM DokrZbSta WHERE DokrZbID=' + Cast(@DokrZbID As varchar(10)) + ')
  57667.         And D.DokrId = S.DokrID And S.Sifra_Art = K.Sifra_Art '
  57668. IF @VlIzl='I' AND (@ImaDanok='N' OR @Dev='D')   --dev.dodadeno 20.08.08 gk 
  57669.     Set @SSQL = @SSQL + ' AND K.Sifra_Tar=T.Sifra_Tar Group By T.ProcOsn, K.Sifra_Div '
  57670. ELSE
  57671.     Set @SSQL = @SSQL + ' Group By S.POsn, K.Sifra_Div '
  57672. Exec(@SSQL)
  57673.  
  57674.  
  57675.  
  57676. Go
  57677. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_iznpotarzadevkalk]'))
  57678. drop procedure [dbo].[sp_iznpotarzadevkalk]
  57679.  
  57680. Go
  57681.  
  57682. CREATE      PROCEDURE sp_IznPoTarZaDevKalk
  57683.     @Sifra_OE     smallint,
  57684.     @Broj_Dok    int,
  57685.     @Sifra_DokDK    smallint=132,
  57686.     @So_Opis    char(1) = 'N'
  57687. AS
  57688.     Declare @SSQL Varchar(3000)
  57689. If @So_Opis = 'D'
  57690.     Set @SSQL = 'Select F.TipDevKalk, F.Kto, F.KojaVal, RTrim(K.ImeKup) + '' - '' + RTrim(F.BrojDok) As Opis, 
  57691.     Sum(F.Danok1) Danok1, Sum(F.Danok2) Danok2, 
  57692.     Sum(F.Dolzi+F.Pobaruva) IznDen, Sum(F.Dev_Dolzi+F.Dev_Pobaruva) IznDev
  57693.     From AnFinDok F INNER JOIN Komint K ON F.Sifra_Kup=K.Sifra_Kup
  57694.     Where F.Sifra_OE=' + Cast(@Sifra_OE As varchar(6))+' AND F.Sifra_DokDK='+cast(@Sifra_DokDK as varchar(3)) + ' AND F.Broj_Kalk=' + Cast(@Broj_Dok As varchar(10)) + '
  57695.     Group By F.TipDevKalk, F.Kto, F.KojaVal, K.ImeKup, F.BrojDok '
  57696. Else
  57697.     Set @SSQL = 'Select TipDevKalk, Kto, KojaVal, Sum(Danok1) Danok1, Sum(Danok2) Danok2, 
  57698.     Sum(Dolzi+Pobaruva) IznDen, Sum(Dev_Dolzi+Dev_Pobaruva) IznDev
  57699.     From AnFinDok Where Sifra_OE=' + Cast(@Sifra_OE As varchar(6)) +' AND Sifra_DokDK='+cast(@Sifra_DokDK as varchar(3))+' AND Broj_Kalk=' + Cast(@Broj_Dok As varchar(10)) + '
  57700.     Group By TipDevKalk, Kto, KojaVal '
  57701. Exec(@SSQL)
  57702.  
  57703.  
  57704.  
  57705.  
  57706. Go
  57707. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izv_akciskirabati]'))
  57708. drop procedure [dbo].[sp_izv_akciskirabati]
  57709.  
  57710. Go
  57711.  
  57712.  
  57713.  
  57714. CREATE        PROCEDURE sp_Izv_AkciskiRabati
  57715.     @Sifra_OE Smallint = Null, 
  57716.     @KoiOE Varchar(300) = Null,
  57717.     @Datum_Od Smalldatetime = Null,
  57718.     @Datum_Do Smalldatetime = Null,
  57719.     @Sifra_Brand Smallint = Null,
  57720.     @Sifra_Art_Od Varchar(20) = Null,
  57721.     @Sifra_Art_Do Varchar(20) = Null,
  57722.     @Sifra_Kup_Od Char(6) = Null,
  57723.     @Sifra_Kup_Do Char(6) = Null,
  57724.     @Sifra_Gr Char(3) = Null,
  57725.     @Sifra_Podg Char(6) = Null,
  57726.     @Lokacija Varchar(10) = Null,
  57727.     @Koi_Gradovi varchar(200) = Null,
  57728.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  57729.     @Drugo1    smallint = Null,
  57730.     @Drugo2    smallint = Null,
  57731.     @Drugo3    smallint = Null,
  57732.     @Drugo4    smallint = Null,
  57733.     @Drugo5    smallint = Null,
  57734.     @KDrugo1    smallint = Null,
  57735.     @KDrugo2    smallint = Null,
  57736.     @KDrugo3    smallint = Null,
  57737.     @KDrugo4    smallint = Null,
  57738.     @KDrugo5    smallint = Null,
  57739.     @PoArt_PoDok    char(1) = 'A',        -- A - po Artikli,     D - Detalno po dokumenti
  57740.     @SoDDV    char(1) = 'N'
  57741. AS
  57742.     Set Nocount On
  57743.     CREATE   Table #OsnRabat
  57744.     (Sifra_Art    varchar(20),
  57745.     Rabat        decimal(18,6))
  57746.     INSERT INTO #OsnRabat SELECT A.Sifra_Art, 
  57747.     ((A.DogCena/(1+T.ProcOsn/100))/(A.Tezina/1000)-A.Pcena5)*(A.GotCena/100)*(A.Tezina/1000)*100 /(A.DogCena/(1+T.ProcOsn/100))
  57748.     FROM KatArt A INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar WHERE A.DogCena>0 AND A.Tezina>0 AND A.GotCena>0
  57749.  
  57750.     If @PoKojDatum = 'V'
  57751.             If @Datum_Do Is Not Null
  57752.         Set @Datum_Do = @Datum_Do + 1
  57753.  
  57754.     Declare @SSQL as varchar(8000)
  57755.  
  57756.  
  57757.     If @PoArt_PoDok = 'D'
  57758.         Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, D.Sifra_Kup, D.Sifra_Obj, 
  57759.         (Case When D.Sifra_Obj Is Not Null Then Kup.ImeKup + '' - '' + KO.ImeObj Else Kup.ImeKup End) as ImeKup, '
  57760.     Else
  57761.         Set @SSQL = ' Select Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok, Null Sifra_Kup, Null Sifra_Obj, Null ImeKup, '
  57762.     Set @SSQL = @SSQL + ' S.Sifra_Art, K.ImeArt, Sum(S.Kolic) Kolic, '
  57763.     If @SoDDV = 'D'
  57764.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic * (Case When S.DanDokCena = ''N'' Then (S.DokCena * (1+S.Posn/100)) Else  S.DokCena End)),4) VredBezRabat,
  57765.             Round(Sum(S.Kolic * (Case When S.DanDokCena = ''N'' Then (S.DokCena * (1+S.Posn/100)) Else  S.DokCena End) * S.Uces/100),4) VredRabat,
  57766.             Round(Sum(S.Kolic * (Case When S.DanDokCena = ''N'' Then (S.DokCena * (1+S.Posn/100)) Else  S.DokCena End) * O.Rabat/100),4) VredOsnRabat '
  57767.     Else
  57768.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic * (Case When S.DanDokCena = ''D'' Then (S.DokCena / (1+S.Posn/100)) Else  S.DokCena End)),4) VredBezRabat,
  57769.             Round(Sum(S.Kolic * (Case When S.DanDokCena = ''D'' Then (S.DokCena / (1+S.Posn/100)) Else  S.DokCena End) * S.Uces/100),4) VredRabat,
  57770.             Round(Sum(S.Kolic * (Case When S.DanDokCena = ''D'' Then (S.DokCena / (1+S.Posn/100)) Else  S.DokCena End) * O.Rabat/100),4) VredOsnRabat '
  57771.     Set @SSQL = @SSQL + 'From Stavr S 
  57772.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  57773.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  57774.         INNER JOIN #OsnRabat O ON K.Sifra_Art=O.Sifra_Art
  57775.         Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  57776.          Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  57777.     If @Sifra_Gr Is Not Null
  57778.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  57779.     Set @SSQL = @SSQL + 'Where S.Kolku_Akcii = -1 
  57780.                  And K.Iskluci <> ''D'' '
  57781.     If @Sifra_OE Is Not NULL    
  57782.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  57783.     If @KoiOE Is Not NULL
  57784.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  57785.     If @PoKojDatum = 'V'
  57786.           Begin
  57787.         If @Datum_Od Is Not NULL
  57788.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  57789.         If @Datum_Do Is Not NULL
  57790.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  57791.           End
  57792.     Else 
  57793.           Begin
  57794.         If @Datum_Od Is Not NULL
  57795.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  57796.         If @Datum_Do Is Not NULL
  57797.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  57798.            End
  57799.     If @Sifra_Art_Od Is Not NULL
  57800.         Set @SSQL = @SSQL + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  57801.     If @Sifra_Art_Do Is Not NULL
  57802.         Set @SSQL = @SSQL + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  57803.     If @Sifra_Brand Is Not NULL
  57804.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  57805.     If @Lokacija Is Not NULL
  57806.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  57807.     If @Sifra_Podg Is Not NULL
  57808.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  57809.     If @Sifra_Gr Is Not NULL
  57810.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  57811.     If @Drugo1 Is Not NULL
  57812.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  57813.     If @Drugo2 Is Not NULL
  57814.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  57815.     If @Drugo3 Is Not NULL
  57816.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  57817.     If @Drugo4 Is Not NULL
  57818.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  57819.     If @Drugo5 Is Not NULL
  57820.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  57821.     If @Sifra_Kup_Od Is Not NULL
  57822.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=''' + @Sifra_Kup_Od + ''' '
  57823.     If @Sifra_Kup_Do Is Not NULL
  57824.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=''' + @Sifra_Kup_Do + ''' '
  57825.     If @Koi_Gradovi Is Not NULL    
  57826.         Begin
  57827.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  57828.                         OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  57829.         End
  57830.     If @Drugo1 Is Not NULL
  57831.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  57832.     If @Drugo2 Is Not NULL
  57833.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  57834.     If @Drugo3 Is Not NULL
  57835.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  57836.     If @Drugo4 Is Not NULL
  57837.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  57838.     If @Drugo5 Is Not NULL
  57839.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  57840.  
  57841.     If @PoArt_PoDok = 'D'
  57842.         Set @SSQL = @SSQL + 'Group By S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, D.Sifra_Kup, D.Sifra_Obj, Kup.ImeKup, KO.ImeObj, '
  57843.     Else 
  57844.         Set @SSQL = @SSQL + 'Group By '
  57845.     Set @SSQL = @SSQL + ' S.Sifra_Art, K.ImeArt '
  57846. --Print @ssql
  57847.     Exec(@SSQL)
  57848.  
  57849.  
  57850.  
  57851. Go
  57852. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izv_art_anomalii]'))
  57853. drop procedure [dbo].[sp_izv_art_anomalii]
  57854.  
  57855. Go
  57856.  
  57857.  
  57858. CREATE   PROCEDURE sp_Izv_Art_Anomalii
  57859.     @Sifra_Oe    smallint,
  57860.     @KoiAnom    varchar(100) = Null        -- 1 - Artiklot nema sostavnica
  57861.                         -- 2 - Artiklot nema cena
  57862.                         -- 3 - Artiklot vnesen vo sostavnica ne e gotov proizvod
  57863.                         -- 4 - Surovinata vnesena vo sostavnica ne e soodvetna
  57864.                         -- 5 - Artiklot vo cenovnikot treba da e Gotov proizvod ili Trgovska stoka
  57865.                         -- 6 - Nabaveniot artikal ne smee da e gotov proizvod
  57866. AS
  57867.     Declare @Sif_GrOrgN as char(6)
  57868.     Select @Sif_GrOrgN = G.Sif_GrOrg     From GrOrg G 
  57869.     Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @Sifra_OE 
  57870.     Where G.GotovPro='D' 
  57871.     Declare @Sif_GrOrgC as char(6)
  57872.     Select @Sif_GrOrgC = G.Sif_GrOrg     From GrOrg G 
  57873.     Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @Sifra_OE 
  57874.     Where G.Edinstvena='D' 
  57875.     Create Table #Tab
  57876.     (
  57877.      Sifra_Art    varchar(20),
  57878.      Sifra_Sur    varchar(20),
  57879.      Anomalija    varchar(100),
  57880.      Sifra_Oe    smallint,
  57881.      Sifra_Dok    smallint,
  57882.      Broj_Dok    int
  57883.     )
  57884.     -----------------------------------------------------------------------------
  57885.     Declare @Ima as smallint
  57886.     Set @Ima = Charindex('1', @KoiAnom, 1)
  57887.     If @Ima > 0 Or @KoiAnom Is null
  57888.         Insert Into #Tab (Sifra_Art, Sifra_Sur, Anomalija)
  57889.         Select Sifra_Art, Null, ' Artiklot nema sostavnica '
  57890.         From Katart 
  57891.         Where DaliSurov='G'
  57892.         And Sifra_Art Not In (Select Sifra_Art From Sostav) 
  57893.         And Sifra_Art Not In (Select Sifra_Art From GSostav Where Sif_GrOrg = @Sif_GrOrgN)--G Inner Join SGrOrg S On S.Sif_GrOrg=G.Sif_GrOrg And S.Sifra_Oe = @Sifra_Oe)
  57894.     -----------------------------------------------------------------------------
  57895.     Set @Ima = Charindex('2', @KoiAnom, 1)
  57896.     If @Ima > 0 Or @KoiAnom Is null
  57897.         Insert Into #Tab (Sifra_Art, Sifra_Sur, Anomalija)
  57898.         Select Sifra_Art, Null, ' Artiklot nema cena '
  57899.         From Katart 
  57900.         Where DaliSurov In ('G', 'T', 'N')
  57901.         And Sifra_Art Not In (Select Sifra_Art From CenGrOrg Where Sif_GrOrg = @Sif_GrOrgC And Cena > 0) 
  57902.     -----------------------------------------------------------------------------
  57903.     Set @Ima = Charindex('3', @KoiAnom, 1)
  57904.     If @Ima > 0 Or @KoiAnom Is null
  57905.         Insert Into #Tab (Sifra_Art, Sifra_Sur, Anomalija)
  57906.         Select Sifra_Art, Null, ' Artiklot vnesen vo sostavnica ne e gotov proizvod '
  57907.         From Sostav
  57908.         Where Sifra_Art Not In (Select Sifra_Art From Katart Where DaliSurov = 'G')
  57909.     Set @Ima = Charindex('3', @KoiAnom, 1)
  57910.     If @Ima > 0 Or @KoiAnom Is null
  57911.         Insert Into #Tab (Sifra_Art, Sifra_Sur, Anomalija)
  57912.         Select Sifra_Art, Null, ' Artiklot vnesen vo sostavnica ne e gotov proizvod '
  57913.         From GSostav
  57914.         Where Sif_GrOrg = @Sif_GrOrgN And Sifra_Art Not In (Select Sifra_Art From Katart Where DaliSurov = 'G')
  57915.     -----------------------------------------------------------------------------
  57916.     Set @Ima = Charindex('4', @KoiAnom, 1)
  57917.     If @Ima > 0 Or @KoiAnom Is null
  57918.         Insert Into #Tab (Sifra_Art, Sifra_Sur, Anomalija)
  57919.         Select Sifra_Art, Sifra_Sur, ' Surovinata vnesena vo sostavnica ne e soodvetna '
  57920.         From Sostav
  57921.         Where Sifra_Sur Not In (Select Sifra_Art From Katart Where DaliSurov In ('S', 'T', 'N'))
  57922.     Set @Ima = Charindex('4', @KoiAnom, 1)
  57923.     If @Ima > 0 Or @KoiAnom Is null
  57924.         Insert Into #Tab (Sifra_Art, Sifra_Sur, Anomalija)
  57925.         Select Sifra_Art, Sifra_Sur, ' Surovinata vnesena vo sostavnica ne e soodvetna '
  57926.         From GSostav
  57927.         Where Sif_GrOrg = @Sif_GrOrgN And Sifra_Sur Not In (Select Sifra_Art From Katart Where DaliSurov In ('S', 'T', 'N'))
  57928.     -----------------------------------------------------------------------------
  57929.     Set @Ima = Charindex('5', @KoiAnom, 1)
  57930.     If @Ima > 0 Or @KoiAnom Is null
  57931.         Insert Into #Tab (Sifra_Art, Sifra_Sur, Anomalija)
  57932.         Select Sifra_Art, Null, ' Artiklot vo cenovnikot treba da e Gotov proizvod ili Trgovska stoka '
  57933.         From CenGrOrg
  57934.         Where Sif_GrOrg = @Sif_GrOrgN And Sifra_Art Not In (Select Sifra_Art From Katart Where DaliSurov In ('G', 'T', 'N'))
  57935.     -----------------------------------------------------------------------------
  57936.     Set @Ima = Charindex('6', @KoiAnom, 1)
  57937.     If @Ima > 0 Or @KoiAnom Is null
  57938.         Insert Into #Tab
  57939.         Select Sifra_Art, Null, ' Nabaveniot artikal ne smee da e gotov proizvod ', Sifra_Oe, Sifra_Dok, Broj_Dok
  57940.         From Stavr 
  57941.         Where VlIzl = 'V' And Sifra_Oe=@Sifra_Oe
  57942.         And Sifra_Art Not In (Select Sifra_Art From Katart Where DaliSurov In ('S', 'T', 'N'))
  57943.     -----------------------------------------------------------------------------
  57944.     Select T.Sifra_Art, K.ImeArt, T.Sifra_Sur, S.ImeArt ImeSur, T.Anomalija, T.Sifra_Oe, T.Sifra_Dok, T.Broj_Dok
  57945.     From #Tab T
  57946.     Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  57947.     Left Outer Join Katart S On S.Sifra_Art = T.Sifra_Sur
  57948.     Order By T.Anomalija, T.Sifra_Art
  57949.  
  57950.  
  57951.  
  57952. Go
  57953. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izv_denovinazaliha]'))
  57954. drop procedure [dbo].[sp_izv_denovinazaliha]
  57955.  
  57956. Go
  57957. CREATE        PROCEDURE sp_Izv_DenoviNaZaliha
  57958.     @Sifra_OE    Smallint = Null, 
  57959.     @KoiOE     Varchar(10) = Null,
  57960.     @Pod1         Smallint = Null,
  57961.     @Pod2         Smallint = Null,
  57962.     @Pod3         Smallint = Null,
  57963.     @Pod4         Smallint = Null,
  57964.     @Pod5         Smallint = Null,
  57965.     @Sifra_Tip     Smallint = Null,
  57966.     @Datum_Od     Smalldatetime = Null,
  57967.     @Datum_Do     Smalldatetime = Null,
  57968.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  57969.     @Sifra_Brand     Smallint = Null,
  57970.     @Sifra_Art_Od     Varchar(20) = Null,
  57971.     @Sifra_Art_Do     Varchar(20) = Null,
  57972.     @Sifra_Kup_Od Char(6) = Null,
  57973.     @Sifra_Kup_Do Char(6) = Null,
  57974.     @Kto         Char(6) = Null,
  57975.     @Sifra_Gr     Char(3) = Null,
  57976.     @Sifra_Podg     Char(6) = Null,
  57977.     @Lokacija     Varchar(10) = Null,
  57978.     @TipKup     Char(11) = Null,
  57979.     @Koi_Gradovi     varchar(200) = Null,
  57980.     @Koi_Regioni     varchar(200) = Null,
  57981.     @Drugo1    smallint = Null,
  57982.     @Drugo2    smallint = Null,
  57983.     @Drugo3    smallint = Null,
  57984.     @Drugo4    smallint = Null,
  57985.     @Drugo5    smallint = Null,
  57986.     @TipDokProd    varchar(200) = Null,
  57987.     @Sifra_Pat    smallint = Null,
  57988.     @KomercKako    char(1) = 'I',
  57989.     @Podred     Char(1) = Null
  57990. AS
  57991. --    If @PoKojDatum = 'V'
  57992. --            If @Datum_Do Is Not Null
  57993. --        Set @Datum_Do = @Datum_Do + 1
  57994.     Set Nocount On
  57995.     Declare @SSQL Varchar(8000)
  57996.     Declare @SSQLUsl as Varchar(8000)
  57997.     Set @SSQLUsl = ' '
  57998.     If @Pod1 Is Not NULL
  57999.            Begin
  58000.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  58001.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  58002.            End
  58003.     If @Pod2 Is Not NULL
  58004.            Begin
  58005.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  58006.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  58007.            End
  58008.     If @Pod3 Is Not NULL
  58009.            Begin
  58010.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  58011.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  58012.            End
  58013.     If @Pod4 Is Not NULL
  58014.            Begin
  58015.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  58016.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  58017.            End
  58018.     If @Pod5 Is Not NULL
  58019.            Begin
  58020.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  58021.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  58022.            End
  58023.     If @Sifra_Tip Is Not NULL
  58024.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  58025.     If @Sifra_Kup_Od Is Not NULL
  58026.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  58027.     If @Sifra_Kup_Do Is Not NULL
  58028.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  58029.     If @Koi_Gradovi Is Not NULL    
  58030.         Begin
  58031.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  58032.                         OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  58033.         End
  58034.     If @Koi_Regioni Is Not NULL    
  58035.         Begin
  58036.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  58037.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  58038.         End
  58039.     If @KomercKako = 'T' And @Sifra_Pat IS NOT NULL
  58040.         SET @SSQLUsl = @SSQLUsl + ' AND (Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' Or Kup.Sifra_Pat2 = ' + Cast(@Sifra_Pat as varchar(5)) + ') ' 
  58041.     If @Sifra_Brand Is Not NULL
  58042.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  58043.     If @Lokacija Is Not NULL
  58044.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  58045.     If @Kto Is Not NULL
  58046.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  58047.     If @Sifra_Podg Is Not NULL
  58048.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  58049.     If @Sifra_Gr Is Not NULL
  58050.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  58051.     If @Sifra_Art_Od Is Not NULL
  58052.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  58053.     If @Sifra_Art_Do Is Not NULL
  58054.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  58055.     If @TipKup Is Not NULL
  58056.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  58057.     If @Sifra_OE Is Not NULL    
  58058.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  58059.     If @KoiOE Is Not NULL
  58060.              Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE IN (Select Sifra_Oe From SGrOrg G Where Sif_GrOrg = ''' + @KoiOe  +  ''') '
  58061.     If @TipDokProd is Not null
  58062.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  58063.     If @Drugo1 Is Not NULL
  58064.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  58065.     If @Drugo2 Is Not NULL
  58066.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  58067.     If @Drugo3 Is Not NULL
  58068.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  58069.     If @Drugo4 Is Not NULL
  58070.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  58071.     If @Drugo5 Is Not NULL
  58072.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  58073.     If @KomercKako = 'I' And @Sifra_Pat IS NOT NULL
  58074.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  58075.     Create Table #ProdKumul
  58076.     (
  58077.      Sifra_Art    varchar(20),
  58078.      KolicKumul    decimal(18,6)
  58079.     )
  58080.     -- Prvo da ja presmetame Kumulativnata prodazba za period od 01.01. do @Datum_Do (za da ne se izgubat atr vo joinot posle)
  58081.     Declare @DatOd as smalldatetime
  58082.     Set @DatOd = dbo.fn_NapraviDatum(Year(@Datum_Od), 1, 1)
  58083.     Set @SSQL = ' Select S.Sifra_Art, Sum(Kolic) KolicKumul
  58084.             From Dokr D
  58085.             Inner Join Stavr S On S.DokrID=D.DokrID
  58086.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art '
  58087.     If @Pod1 Is Not Null Or @Pod2 Is Not Null Or @Pod3 Is Not Null Or @Pod4 Is Not Null Or @Pod5 Is Not Null Or @Sifra_Tip Is Not Null 
  58088.        Or @TipKup Is Not Null Or @Koi_Gradovi Is Not Null Or @Koi_Regioni Is Not Null Or @KomercKako = 'T'
  58089.         Set @SSQL = @SSQL + ' Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  58090.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  58091.     If @Sifra_Gr Is Not Null
  58092.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  58093.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D'' And K.SMatUsl = ''M'' ' 
  58094.     If @PoKojDatum = 'V'
  58095.           Begin
  58096.         If @DatOd Is Not NULL
  58097.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >=''' + Cast(@DatOd As Varchar(30)) + ''' '
  58098.         If @Datum_Do Is Not NULL
  58099.             Set @SSQL = @SSQL + ' And D.Datum_Vnes <''' + Cast((@Datum_Do + 1) As Varchar(30)) + ''' '
  58100.           End
  58101.     Else 
  58102.           Begin
  58103.         If @DatOd Is Not NULL
  58104.             Set @SSQL = @SSQL + ' And S.Datum_Dok >=''' + Cast(@DatOd As Varchar(30)) + ''' '
  58105.         If @Datum_Do Is Not NULL
  58106.             Set @SSQL = @SSQL + ' And S.Datum_Dok <=''' + Cast(@Datum_Do  As Varchar(30)) + ''' '
  58107.           End
  58108.     Insert Into #ProdKumul Exec(@SSQL+@SSQLUsl + ' Group By S.Sifra_Art')
  58109.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  58110.     -- Da ja najdeme prodazbata vo periodot (Datum_Od, Datum_Do)
  58111.     Create Table #ProdZaPer
  58112.     (
  58113.      Sifra_Art    varchar(20),
  58114.      KolicProd    decimal(18,6),
  58115.     )
  58116.     Set @SSQL = ' Select S.Sifra_Art, Sum(Kolic) KolicProd
  58117.             From Dokr D
  58118.             Inner Join Stavr S On S.DokrID=D.DokrID
  58119.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art '
  58120.     If @Pod1 Is Not Null Or @Pod2 Is Not Null Or @Pod3 Is Not Null Or @Pod4 Is Not Null Or @Pod5 Is Not Null Or @Sifra_Tip Is Not Null 
  58121.        Or @TipKup Is Not Null Or @Koi_Gradovi Is Not Null Or @Koi_Regioni Is Not Null Or @KomercKako = 'T'
  58122.         Set @SSQL = @SSQL + ' Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  58123.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  58124.     If @Sifra_Gr Is Not Null
  58125.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  58126.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D'' K.SMatUsl = ''M'' ' 
  58127.     If @PoKojDatum = 'V'
  58128.           Begin
  58129.         If @Datum_Od Is Not NULL
  58130.             Set @SSQL = @SSQL + ' And D.Datum_Vnes >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  58131.         If @Datum_Do Is Not NULL
  58132.             Set @SSQL = @SSQL + ' And D.Datum_Vnes <''' + Cast((@Datum_Do + 1) As Varchar(30)) + ''' '
  58133.           End
  58134.     Else 
  58135.           Begin
  58136.         If @Datum_Od Is Not NULL
  58137.             Set @SSQL = @SSQL + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  58138.         If @Datum_Do Is Not NULL
  58139.             Set @SSQL = @SSQL + ' And S.Datum_Dok <=''' + Cast(@Datum_Do  As Varchar(30)) + ''' '
  58140.           End
  58141.     Insert Into #ProdZaPer Exec(@SSQL+@SSQLUsl + ' Group By S.Sifra_Art')
  58142.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  58143.     -- Sega da gi spojme :)
  58144.     Set @SSQL = ' Select PK.Sifra_Art, K.ImeArt, K.Alt_Sifra, K.Tezina, PP.KolicProd, 
  58145.             (Case When K.ImaKomerc > 0 Then (PP.KolicProd/K.ImaKomerc) Else Null End) KolicPaket, 
  58146.             K.ImaKomerc, PK.KolicKumul
  58147.             From #ProdKumul PK
  58148.             Left Outer Join #ProdZaPer PP On PP.Sifra_Art = PK.Sifra_Art
  58149.             Inner Join Katart K On K.Sifra_Art = PK.Sifra_Art '
  58150.     If @Podred = 'S'
  58151.         Set @SSQL = @SSQL + 'Order By PK.Sifra_Art '
  58152.     Else If @Podred = 'A'
  58153.         Set @SSQL = @SSQL + 'Order By K.ImeArt ' 
  58154.     Exec(@SSQL)
  58155.     Set Nocount Off
  58156.  
  58157.  
  58158. Go
  58159. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izv_gotovina]'))
  58160. drop procedure [dbo].[sp_izv_gotovina]
  58161.  
  58162. Go
  58163.  
  58164. CREATE PROCEDURE sp_Izv_Gotovina
  58165.     @Sifra_OE Smallint,
  58166.     @Sifra_GrOE Varchar(10),
  58167.     @Datum_Od Smalldatetime = Null,
  58168.     @Datum_Do Smalldatetime = Null,
  58169.     @Sifra_Kup_Od Varchar(10) = Null,
  58170.     @Sifra_Kup_Do Varchar(10) = Null,
  58171.     @Sifra_Dok_Dolzi Smallint = 6,
  58172.     @Sifra_Dok_Pobaruva Smallint = 308
  58173. AS
  58174.     Declare @SSQL Varchar(3000)
  58175.     Set @SSQL = 'Select D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok As Datum_Dok,
  58176.         D.Sifra_Kup, Kup.ImeKup, D.Toc200 As Dolzi, Null As Pobaruva
  58177.     From Dokr D
  58178.     Inner Join Komint Kup On D.Sifra_Kup=Kup.Sifra_Kup
  58179.     Where D.Sifra_Dok=' + Cast(@Sifra_Dok_Dolzi As Varchar(6)) + ' '
  58180.     If @Sifra_OE Is Not Null
  58181.         Set @SSQL = @SSQL + 'And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  58182.     If @Sifra_GrOE Is Not Null
  58183.         Set @SSQL = @SSQL + 'And D.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Sifra_GrOE + ''') '
  58184.     If @Datum_Od Is Not Null
  58185.         Set @SSQL = @SSQL + 'And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  58186.     If @Datum_Do Is Not Null
  58187.         Set @SSQL = @SSQL + 'And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  58188.     Set @SSQL = @SSQL + 'Union
  58189.     Select A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok As Datum_Dok,
  58190.         A.Sifra_Kup, Kup.ImeKup, Null As Dolzi, A.Pobaruva As Pobaruva
  58191.     From AnFinDok A
  58192.     Inner Join Komint Kup On A.Sifra_Kup=Kup.Sifra_Kup
  58193.     Where A.Sifra_Dok=' + Cast(@Sifra_Dok_Pobaruva As Varchar(6)) + ' '
  58194.     If @Sifra_OE Is Not Null
  58195.         Set @SSQL = @SSQL + 'And A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  58196.     If @Sifra_GrOE Is Not Null
  58197.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Sifra_GrOE + ''') '
  58198.     If @Datum_Od Is Not Null
  58199.         Set @SSQL = @SSQL + 'And A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  58200.     If @Datum_Do Is Not Null
  58201.         Set @SSQL = @SSQL + 'And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  58202.     Set @SSQL = @SSQL + 'Order By Datum_Dok'
  58203.     Exec(@SSQL)
  58204.  
  58205.  
  58206.  
  58207. Go
  58208. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izv_konta_gstav]'))
  58209. drop procedure [dbo].[sp_izv_konta_gstav]
  58210.  
  58211. Go
  58212. CREATE PROCEDURE sp_Izv_Konta_GStav
  58213.     @Datum_Nal_Od    smalldatetime,
  58214.     @Datum_Nal_Do    smalldatetime
  58215. AS
  58216.     Select '' as Sifra_Kup, Datum_Nal Datum_Dok, Datum_Nal, Opis TekstKniz, Kto_Anal, 'D' DolziPobar, 
  58217.         Cast(Sifra_Nal as varchar(6)) + '\' + Cast(Broj_Nal as varchar(10)) Nalog,
  58218.         Dolzi Iznos, Datum_Nal Datum_Dosp, '' MestoTros, Dev_Dolzi Dev_Iznos
  58219.     From Gstav
  58220.     Where Dolzi <> 0 And Datum_Nal >= @Datum_Nal_Od And Datum_Nal <= @Datum_Nal_Do
  58221.     Union
  58222.     Select '' as Sifra_Kup, Datum_Nal Datum_Dok, Datum_Nal, Opis TekstKniz, Kto_Anal, 'P' DolziPobar, 
  58223.         Cast(Sifra_Nal as varchar(6)) + '\' + Cast(Broj_Nal as varchar(10)) Nalog,
  58224.         Pobaruva Iznos, Datum_Nal Datum_Dosp, '' MestoTros, Dev_Pobaruva Dev_Iznos
  58225.     From Gstav
  58226.     Where Pobaruva <> 0 And Datum_Nal >= @Datum_Nal_Od And Datum_Nal <= @Datum_Nal_Do
  58227.  
  58228.  
  58229. Go
  58230. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izv_primvrat_fiskprom]'))
  58231. drop procedure [dbo].[sp_izv_primvrat_fiskprom]
  58232.  
  58233. Go
  58234. CREATE  PROCEDURE sp_Izv_PrimVrat_FiskProm
  58235.     @Sifra_Oe    smallint,
  58236.     @Datum_Od    smalldatetime,
  58237.     @Datum_Do    smalldatetime,
  58238.     @BrKasa    smallint
  58239. AS
  58240.     Declare @SSQL as Varchar(4000)
  58241.     Set @SSQL = ' Select F.Datum_Dok, F.Sifra_Oe, O.ImeOrg, F.Promet, F.Predadeno, F.Pocetno, F.OstVoKasa, F.Dr_Izlezi, 
  58242.             (F.Predadeno + F.OstVoKasa + F.Dr_Izlezi - F.Promet - F.Pocetno) Razlika
  58243.             From FiskProm F
  58244.             Inner Join Orged O On O.Sifra_Oe = F.Sifra_Oe
  58245.             Where 1 = 1 '
  58246.     If @Sifra_Oe Is Not Null
  58247.         Set @SSQL = @SSQL + ' And F.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  58248.     If @BrKasa Is Not Null
  58249.         Set @SSQL = @SSQL + ' And F.BrKasa = ' + cast(@BrKasa as varchar(6)) + ' '
  58250.     If @Datum_Od Is Not Null
  58251.         Set @SSQL = @SSQL + ' And F.Datum_Dok >= ''' + cast(@Datum_Od as varchar(35)) + ''' '
  58252.     If @Datum_Do Is Not Null
  58253.         Set @SSQL = @SSQL + ' And F.Datum_Dok <= ''' + cast(@Datum_Do as varchar(35)) + ''' '
  58254.     Set @SSQL = @SSQL + ' Order By F.Datum_Dok, F.Sifra_Oe '
  58255.     Exec (@SSQL)
  58256.  
  58257.  
  58258. Go
  58259. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izv_za_dolguvanja]'))
  58260. drop procedure [dbo].[sp_izv_za_dolguvanja]
  58261.  
  58262. Go
  58263.  
  58264.  
  58265.  
  58266. CREATE    PROCEDURE sp_Izv_Za_Dolguvanja
  58267.     @Datum_DokOd    smalldatetime = Null,
  58268.     @Datum_DokDo    smalldatetime = Null,
  58269.     @Koi_Gradovi        varchar(300) = Null,
  58270.     @Koi_Regioni        varchar(300) = Null,
  58271.     @KPod1        smallint = Null,
  58272.     @KPod2        smallint = Null,
  58273.     @KPod3        smallint = Null,
  58274.     @KPod4        smallint = Null,
  58275.     @KPod5        smallint = Null,
  58276.     @Sifra_KupOd         Char(6) = Null,
  58277.     @Sifra_KupDo         Char(6) = Null,
  58278.     @Sifra_Tip         Smallint = Null,
  58279.     @Sifra_Pat        Varchar(300) = Null,
  58280.     @KomercKako        Char(1) = 'I',            -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  58281.     @TipKup        Varchar(11)=Null,
  58282.     @Sifra_Nivo        Char(2) = Null,
  58283.     @Aktiven        Char(1) = Null,
  58284.     @MozeIsporaka        Char(1) = Null,
  58285.     @Datum_Dolg        smalldatetime = Null,
  58286.     @GrupirajPo        char(1) = 'P',            -- P - Patnik,      K - Komintent,
  58287.     @Sifra_Div        smallint = NULL
  58288.  AS
  58289.     Declare @SSQL as varchar(8000)
  58290.     Declare @SSQLUsl as varchar(8000)
  58291.     Set @SSQLUsl = ' '
  58292.     If @Sifra_KupOd Is Not Null
  58293.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Kup>=''' + @Sifra_KupOd + ''' '
  58294.     If @Sifra_KupDo Is Not Null
  58295.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Kup<=''' + @Sifra_KupDo + ''' '
  58296.     If @Sifra_Tip Is Not Null
  58297.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  58298.     If @Sifra_Nivo Is Not Null
  58299.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  58300.     If @MozeIsporaka = 'N'
  58301.         Set @SSQLUsl = @SSQLUsl + 'And Kup.MozeIsporaka = ''N'' '
  58302.     Else If @MozeIsporaka = 'D'
  58303.         Set @SSQLUsl = @SSQLUsl + 'And (Kup.MozeIsporaka <> ''N'' or Kup.MozeIsporaka Is Null) '
  58304.     If @TipKup Is Not Null
  58305.         Set @SSQLUsl = @SSQLUsl + 'And Kup.TipKup=''' + @TipKup + ''' '
  58306.     If @Sifra_Pat IS NOT NULL
  58307.     Begin 
  58308.         If @KomercKako = 'I'
  58309.             SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat In (''' + @Sifra_Pat  + ''') '
  58310.         Else 
  58311.             SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat In (''' + @Sifra_Pat + ''') '
  58312.     End
  58313.     If @Koi_Gradovi Is Not Null
  58314.         Set @SSQLUsl = @SSQLUsl + 'And KUP.Sifra_Grad In (' + @Koi_Gradovi + ') '
  58315.     If @Koi_Regioni Is Not Null
  58316.         Set @SSQLUsl = @SSQLUsl + 'And KUP.Sifra_Reg In (' + @Koi_Regioni + ') '
  58317.     If @Aktiven = 'D'    
  58318.         Set @SSQLUsl = @SSQLUsl + ' And (KUP.Aktiven <> ''N'' or KUP.Aktiven Is Null) '     
  58319.     Else If @Aktiven = 'N'    
  58320.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Aktiven = ''N'' '     
  58321.     If @KPod1 Is Not Null
  58322.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo1=' + Cast(@KPod1 As Varchar(10)) + ' '
  58323.     If @KPod2 Is Not Null
  58324.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo2=' + Cast(@KPod2 As Varchar(10)) + ' '
  58325.     If @KPod3 Is Not Null
  58326.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo3=' + Cast(@KPod3 As Varchar(10)) + ' '
  58327.     If @KPod4 Is Not Null
  58328.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo4=' + Cast(@KPod4 As Varchar(10)) + ' '
  58329.     If @KPod5 Is Not Null
  58330.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo5=' + Cast(@KPod5 As Varchar(10)) + ' '
  58331.     IF @Sifra_Div IS NOT NULL
  58332.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(5)) + ' '
  58333.  
  58334.     Create Table #Rez
  58335.     (
  58336.      Sifra         varchar(6),
  58337.      VkProd        decimal(18,6),
  58338.      Saldo        decimal(18,6),
  58339.      SaldoDosp    decimal(18,6)
  58340.     )
  58341.     ------------------------------ VKUPNO PRODAZBA -----------------------------------
  58342.     If @GrupirajPo = 'P'
  58343.         If @KomercKako = 'I'
  58344.             Set @SSQL = ' Select A.Sifra_Pat, '
  58345.         Else  
  58346.             Set @SSQL = ' Select Kup.Sifra_Pat, '
  58347.     Else
  58348.         Set @SSQL = ' Select A.Sifra_Kup, '
  58349.     Set @SSQL = @SSQL + ' Sum(A.Toc200) VkProd, 0, 0
  58350.             From Dokr A
  58351.             Left Outer Join Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  58352.             Where A.Sifra_Za = 1 And VlIzl = ''I'' '
  58353.     If @Datum_DokOd Is Not Null
  58354.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + cast(@Datum_DokOd as varchar(30)) + ''' '
  58355.     If @Datum_DokDo Is Not Null
  58356.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + cast(@Datum_DokDo as varchar(30)) + ''' '
  58357.     Set @SSQL = @SSQL + @SSQLUsl
  58358.     If @GrupirajPo = 'P'
  58359.         If @KomercKako = 'I'
  58360.             Set @SSQL = @SSQL + ' Group By A.Sifra_Pat '
  58361.         Else  
  58362.             Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat '
  58363.     Else
  58364.         Set @SSQL = @SSQL + ' Group By A.Sifra_Kup '
  58365.     Insert Into #Rez Exec(@SSQL)
  58366.     ----------------------------------- VKUPEN DOLG ---------------------------------------
  58367.     If @GrupirajPo = 'P'
  58368.         If @KomercKako = 'I'
  58369.             Set @SSQL = ' Select A.Sifra_Pat, '
  58370.         Else  
  58371.             Set @SSQL = ' Select Kup.Sifra_Pat, '
  58372.     Else
  58373.         Set @SSQL = ' Select A.Sifra_Kup, '
  58374.     Set @SSQL = @SSQL + ' 0, Sum(A.Dolzi) Saldo, 0
  58375.             From AnFinDok A
  58376.             Left Outer Join Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  58377.             Where A.Sifra_Za = 1 And (A.Dolzi <> A.Plateno_Dolzi) '
  58378.     If @Datum_Dolg Is Not Null
  58379.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + cast(@Datum_Dolg as varchar(30)) + ''' '
  58380.     Set @SSQL = @SSQL + @SSQLUsl
  58381.     If @GrupirajPo = 'P'
  58382.         If @KomercKako = 'I'
  58383.             Set @SSQL = @SSQL + ' Group By A.Sifra_Pat '
  58384.         Else  
  58385.             Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat '
  58386.     Else
  58387.         Set @SSQL = @SSQL + ' Group By A.Sifra_Kup '
  58388.     Insert Into #Rez Exec(@SSQL)
  58389.     ----------------------------------- DOSPEAN DOLG ---------------------------------------
  58390.     If @GrupirajPo = 'P'
  58391.         If @KomercKako = 'I'
  58392.             Set @SSQL = ' Select A.Sifra_Pat, '
  58393.         Else  
  58394.             Set @SSQL = ' Select Kup.Sifra_Pat, '
  58395.     Else
  58396.         Set @SSQL = ' Select A.Sifra_Kup, '
  58397.     Set @SSQL = @SSQL + ' 0, 0, Sum(A.Dolzi) Saldo
  58398.             From AnFinDok A
  58399.             Left Outer Join Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  58400.             Where A.Sifra_Za = 1 And (A.Dolzi <> A.Plateno_Dolzi) '
  58401.     If @Datum_Dolg Is Not Null
  58402.         Set @SSQL = @SSQL + ' And A.Datum_Dok + A.Rok <= ''' + cast(@Datum_Dolg as varchar(30)) + ''' '
  58403.     Set @SSQL = @SSQL + @SSQLUsl
  58404.     If @GrupirajPo = 'P'
  58405.         If @KomercKako = 'I'
  58406.             Set @SSQL = @SSQL + ' Group By A.Sifra_Pat '
  58407.         Else  
  58408.             Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat '
  58409.     Else
  58410.         Set @SSQL = @SSQL + ' Group By A.Sifra_Kup '
  58411.     Insert Into #Rez Exec(@SSQL)
  58412. --    Select * from #Rez
  58413.     Set @SSQL = ' Select R.Sifra, '
  58414.     If @GrupirajPo = 'P'
  58415.         Set @SSQL = @SSQL + ' P.ImePat as Ime, '
  58416.     Else 
  58417.         Set @SSQL = @SSQL + ' Kup.ImeKup as Ime, '     
  58418.     Set @SSQL = @SSQL + ' Sum(R.VkProd) VkProd, Sum(R.Saldo) Saldo, Sum(R.SaldoDosp) SaldoDosp 
  58419.                 From #Rez R '
  58420.     If @GrupirajPo = 'P'
  58421.         Set @SSQL = @SSQL + ' Left Outer Join Patnici P On P.Sifra_Pat = R.Sifra '
  58422.     Else 
  58423.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup = R.Sifra '
  58424.     If @GrupirajPo = 'P'
  58425.         Set @SSQL = @SSQL + ' Group By R.Sifra, P.ImePat '
  58426.     Else
  58427.         Set @SSQL = @SSQL + ' Group By R.Sifra, Kup.ImeKup '
  58428.     Exec(@SSQL)
  58429.  
  58430.  
  58431.  
  58432.  
  58433. Go
  58434. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvanalsitestavki]'))
  58435. drop procedure [dbo].[sp_izvanalsitestavki]
  58436.  
  58437. Go
  58438.  
  58439.  
  58440.  
  58441.  
  58442.  
  58443.  
  58444.  
  58445. CREATE        procedure [dbo].[sp_IzvAnalSiteStavki]
  58446.     @DatumOd as smalldatetime = null,
  58447.     @DatumDo as smalldatetime = null,
  58448.     @Sifra_Pat as varchar(10) =  null,
  58449.     @Sif_GrPat as varchar(10) = null,
  58450.     @Sif_MCPoz as varchar(10) = null,
  58451.     @Sifra_Kup as char(6) = null
  58452. As
  58453.  
  58454.     DECLARE @SSQL as varchar(3000)
  58455.  
  58456.     SET @SSQL = '
  58457.  
  58458.     SELECT     S.Sifra_Pat, S.cDatum_MC, S.Sif_MCPozicija, S.Sifra_Kup, S.Sifra_Obj, S.Br_MCLista, 
  58459.                 S.Datum, S.VrednostN, S.VrednostC, S.Rbr, KP.ImeMCPozicija, P.ImePat, K.ImeKup
  58460.     FROM         MCStavki AS S LEFT OUTER JOIN
  58461.                           MCKatPozicija AS KP ON S.Sif_MCPozicija = KP.Sif_MCPozicija LEFT OUTER JOIN
  58462.                           Patnici AS P ON P.Sifra_Pat = S.Sifra_Pat LEFT OUTER JOIN
  58463.                           Komint AS K ON S.Sifra_Kup = K.Sifra_Kup
  58464.     WHERE        S.Sifra_Pat IS NOT NULL '
  58465.  
  58466.     IF @DatumOd IS NOT NULL
  58467.         SET @SSQL = @SSQL + ' AND CAST (''20''+ substring(S.cDatum_MC, 1, 2) + ''-'' + substring(S.cDatum_MC, 3, 2) + ''-'' + substring(S.cDatum_MC, 5, 2) AS SMALLDATETIME) > = '''+cast(@DatumOd as varchar(35))+''' '    
  58468.     IF @DatumDo IS NOT NULL
  58469.         SET @SSQL = @SSQL + ' AND CAST (''20''+ substring(S.cDatum_MC, 1, 2) + ''-'' + substring(S.cDatum_MC, 3, 2) + ''-'' + substring(S.cDatum_MC, 5, 2) AS SMALLDATETIME) < = '''+cast(@DatumDo as varchar(35))+'''   '          
  58470.     IF @Sifra_Pat IS NOT NULL
  58471.         SET @SSQL = @SSQL + ' AND S.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(5))+' '
  58472.     IF (@Sif_GrPat IS NOT NULL)
  58473.         SET @SSQL = @SSQL + ' AND S.Sifra_Pat IN (SELECT Sifra_Pat FROM SGrPat WHERE Sif_GrPat = ''' +cast(@Sif_GrPat AS varchar(15))+ ''') '
  58474.     IF (@Sif_MCPoz IS NOT NULL)
  58475.         SET @SSQL = @SSQL + ' AND S.Sif_MCPozicija = ' + CAST( @Sif_MCPoz as varchar(5))+ ' '
  58476.  
  58477.     SET @SSQL = @SSQL + ' ORDER BY S.cDatum_MC '
  58478.  
  58479.     PRINT(@SSQL)
  58480.     EXEC(@SSQL)
  58481.  
  58482.     return @@error
  58483.  
  58484.  
  58485.  
  58486.  
  58487.  
  58488.  
  58489.  
  58490.  
  58491.  
  58492.  
  58493.  
  58494.  
  58495. Go
  58496. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvestaj_za_isporaka_sopren]'))
  58497. drop procedure [dbo].[sp_izvestaj_za_isporaka_sopren]
  58498.  
  58499. Go
  58500.  
  58501.  
  58502.  
  58503. CREATE    PROCEDURE sp_Izvestaj_za_Isporaka_SoPren
  58504.     @Sifra_Oe        smallint = Null,
  58505.     @KoiOe        varchar(10) = Null,
  58506.     @Datum_Od        smalldatetime = Null,
  58507.     @Datum_Do        smalldatetime = Null,
  58508.     @SoDDV        char(1) = 'D'
  58509. AS
  58510.     Declare @SSQL as varchar(8000)
  58511.     Set @SSQL = ' Select S.Sifra_Art, K.ImeArt, 
  58512.             Round(Sum(Case When D.Sifra_Za = ''1'' AND Sifra_kup IS NOT NULL Then S.Kolic Else 0 End), 4) ProdFra,
  58513.             Round(Sum(Case When D.Sifra_Za = ''3'' Then S.Kolic Else 0 End), 4) ProdPren,
  58514.             Round(Sum(Case When D.Sifra_Za = ''1'' AND Sifra_kup IS NOT NULL Then (S.Kolic * dbo.fn_VratiCena((S.DokCena*(1-S.Uces/100)*(1-D.Kasa/100)), S.Posn, S.DanDokCena, ''' + @SoDDV + ''')) Else 0 End), 4) VrednFra,
  58515.             Round(Sum(Case When D.Sifra_Za = ''3'' Then (S.Kolic * dbo.fn_VratiCena((S.MagCena*(1-S.Uces/100)*(1-D.Kasa/100)), S.Posn, S.DanMagCena, ''' + @SoDDV + ''')) Else 0 End), 4) VrednPren, 
  58516.                         K.Tezina 
  58517.         From Dokr D
  58518.         Inner Join Stavr S On S.DokrID=D.DokrID
  58519.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  58520.         Where D.VlIzl = ''I'' And D.Sifra_Za In (1, 3) '
  58521.     If @Sifra_Oe Is Not Null
  58522.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  58523.     If @KoiOe Is Not Null
  58524.         Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select Sifra_Oe From SGrOrg  where sif_GrOrg = ''' + @KoiOe  +  ''') '
  58525.     If @Datum_Od Is Not Null
  58526.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  58527.     If @Datum_Do Is Not Null
  58528.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  58529.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art, K.ImeArt, K.Tezina '
  58530.     Exec (@SSQL)
  58531.  
  58532.  
  58533.  
  58534.  
  58535. Go
  58536. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvkartdepoz]'))
  58537. drop procedure [dbo].[sp_izvkartdepoz]
  58538.  
  58539. Go
  58540.  
  58541.  
  58542. -- WTRGTx --
  58543. CREATE   PROCEDURE sp_IzvKartDepoz
  58544.     @Sifra_Kor_Od varchar(20)=NULL,
  58545.     @Sifra_Kor_Do varchar(20)= null,
  58546.     @Datum_Od smalldatetime = null,
  58547.     @Datum_Do smalldatetime = null,
  58548.     @Specif char(1) = 'D'
  58549. AS
  58550. DECLARE @SSQL AS nvarchar(4000)
  58551. DECLARE @SSQLusl AS nvarchar(4000)
  58552. SET @SSQLusl=' WHERE 1=1 '
  58553. if @Sifra_Kor_Od IS NOT NULL
  58554.     SET @SSQLusl = @SSQLusl + ' AND D.Sifra_Kor >=' +  @Sifra_Kor_Od
  58555. IF @Sifra_Kor_Do IS NOT NULL
  58556.     SET @SSQLusl = @SSQLusl + ' AND D.Sifra_Kor <=' +  @Sifra_Kor_Do
  58557. IF @Datum_Od IS NOT NULL
  58558.     SET @SSQLusl = @SSQLusl + ' AND D.Datum >=''' + CAST(@Datum_OD AS VARCHAR(50))+''' '
  58559. IF @Datum_Do IS NOT NULL
  58560.     SET @SSQLusl = @SSQLusl + ' AND D.Datum <=''' + CAST(@Datum_Do AS VARCHAR(50))+''' '
  58561. IF @Specif='D'
  58562. Begin
  58563.     CREATE TABLE #TmpS
  58564. (Sifra_Kor    varchar(20),
  58565. PocSaldo    decimal(18,2))
  58566. IF @Datum_OD IS NOT NULL
  58567. INSERT INTO #TmpS (Sifra_Kor, PocSaldo) SELECT Sifra_Kor, SUM(PRimen_Izn - Vraten_Izn) FROM KartDepoz 
  58568. WHERE Datum < @Datum_Od GROUP BY Sifra_Kor 
  58569.     SET @SSQL = 'SELECT D.Sifra_Kor, SUM(D.Primen_Izn) Primen_Izn, SUM(D.Vraten_Izn) Vraten_Izn    FROM KartDepoz D '
  58570.     SET @SSQL = @SSQL +@SSQLusl + ' GROUP BY D.Sifra_Kor '
  58571. CREATE TABLE #TmpX
  58572. (
  58573.     Sifra_Kor varchar(20),
  58574.     Primen_Izn Decimal(18, 2),
  58575.     Vraten_Izn Decimal(18, 2)
  58576. )
  58577. DECLARE @tSSQL AS NVARCHAR(4000)
  58578. SET @tSSQL = 'INSERT INTO #TmpX (Sifra_Kor, Primen_Izn, Vraten_Izn) ' + @SSQL
  58579. EXEC (@tSSQL)
  58580. SELECT X.Primen_izn,X.Vraten_Izn, K.Sifra_Kor, K.ImeKor, S.PocSaldo FROM KartKor K 
  58581. LEFT OUTER JOIN #TmpS S ON K.Sifra_Kor = S.Sifra_Kor 
  58582. LEFT OUTER JOIN #TmpX X ON X.Sifra_Kor = K.Sifra_Kor
  58583. WHERE  S.PocSaldo<>0 OR X.Primen_Izn<>0 OR X.Vraten_izn<>0
  58584. End
  58585. Else
  58586. Begin
  58587.     SET @SSQL = 'SELECT D.*, K.ImeKor FROM KartDepoz D LEFT OUTER JOIN KartKor K ON D.Sifra_Kor=K.Sifra_Kor '
  58588.     SET @SSQL = @SSQL + @SSQLusl
  58589.     EXEC(@SSQL)
  58590. End
  58591.  
  58592.  
  58593.  
  58594. Go
  58595. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvplakanjekonsignacija]'))
  58596. drop procedure [dbo].[sp_izvplakanjekonsignacija]
  58597.  
  58598. Go
  58599.  
  58600. CREATE  PROCEDURE sp_IzvPlakanjeKonsignacija
  58601.  
  58602.     @Datum    smalldatetime,
  58603.     @Sifra_Kup_Od    char(6),
  58604.     @Sifra_Kup_Do    char(6),
  58605.     @KDrugo1    smallint = Null,
  58606.     @KoiKta    varchar(300) = Null,
  58607.     @GrOrgZal    varchar(10) = Null,
  58608.     -------- za Tinex slednive parametri po default --------
  58609.     @IskluciKup        varchar(200) = '660663, 660660, 021000'
  58610.     --@TipDokPriem        smallint = 2 
  58611.     -----------------------------------------------------------------------------
  58612. AS
  58613.  
  58614.     Declare @SSQL as varchar(8000)
  58615.  
  58616.     Create Table #Kons
  58617.     (
  58618.         Sifra_Kup    char(6),
  58619.         Sifra_Za    char(1),
  58620.         Dolzi        decimal(18,6),
  58621.         Pobaruva    decimal(18,6),
  58622. --        Plateno_Dolzi    decimal(18,6),
  58623. --        Plateno_Pobar    decimal(18,6),
  58624.         Zaliha        decimal(18,6)
  58625.     )
  58626.  
  58627.        Set @SSQL = ' Select A.Sifra_Kup, A.Sifra_Za,
  58628.             Sum(A.Dolzi), Sum(A.Pobaruva), 0
  58629.             FROM AnFinDok A
  58630.             INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  58631.             WHERE (A.Sifra_Za=''1'' OR A.Sifra_Za=''2'') 
  58632.             And K.Rok_Dobav = 365 '
  58633.     If @Datum Is Not Null
  58634.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + ''' '
  58635.     If @Sifra_Kup_Od Is NOT Null
  58636.         SET @SSQL = @SSQL + 'AND A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  58637.     If @Sifra_Kup_Do Is NOT Null
  58638.          SET @SSQL = @SSQL + 'AND A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  58639.     If @KoiKta Is Not Null
  58640.         SET @SSQL =@SSQL + ' And A.Kto In (' + @KoiKta + ') '
  58641.     If @KoiKta Is Not Null
  58642.         Set @SSQL =@SSQL + ' And A.Kto In (' + @KoiKta + ') '
  58643.     Set @SSQL =@SSQL + ' Group By A.Sifra_Kup, A.Sifra_Za '
  58644.  
  58645.     Insert Into #Kons Exec(@SSQL)
  58646.  
  58647.  
  58648.     ------- Posledna nabavna 
  58649.  
  58650.     CREATE TABLE #TmpNabavni
  58651.     (
  58652.         Sifra_Art    char(6),
  58653.         NabCena    Decimal(18,4),
  58654.         Posn        decimal(6,2)
  58655.     )                                                
  58656.     INSERT INTO #TmpNabavni (Sifra_Art)  
  58657.     SELECT DISTINCT S.Sifra_Art 
  58658.     FROM Stavr S 
  58659.     Inner Join Dokr D On D.DokrID = S.DokrID
  58660.     Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  58661.     Inner Join Komint Kup On Kup.Sifra_Kup = K.Kto
  58662.     WHERE S.VlIzl = 'V' And (S.ImaDodatna Is Null Or S.ImaDodatna <>'D') And S.Kolic > 0
  58663.     And Kup.Rok_Dobav = 365
  58664.  
  58665.     CREATE TABLE #CeniArtN
  58666.     ( 
  58667.         Sifra_Art  varchar(12),    
  58668.           Datum      smalldatetime,
  58669.           DokID  int
  58670.     )
  58671.  
  58672.     CREATE TABLE #CeniDat
  58673.     (     
  58674.         Sifra_Art  varchar(12),    
  58675.           Datum smalldatetime
  58676.     )
  58677.  
  58678.     Set @SSQL = 'SELECT S.Sifra_Art,  max(S.Datum_Dok) Datum 
  58679.             FROM Stavr S 
  58680.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art '
  58681.     If @IskluciKup Is NOT NULL 
  58682.         Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  58683.     Set @SSQL = @SSQL + ' WHERE S.Datum_Dok <=''' + Cast(@Datum As Varchar(35)) + 
  58684.         ''' AND S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '') 
  58685.         AND S.Sifra_Art IN (SELECT Sifra_Art FROM #TmpNabavni ) '
  58686.     If @IskluciKup Is NOT NULL 
  58687.         Set @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' + @IskluciKup + ') '
  58688.     If @Sifra_Kup_Od Is NOT Null
  58689.         SET @SSQL = @SSQL + 'AND K.Kto>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  58690.     If @Sifra_Kup_Do Is NOT Null
  58691.          SET @SSQL = @SSQL + 'AND K.Kto<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  58692.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art '
  58693.     INSERT INTO #CeniDat EXEC (@SSQL)
  58694.         
  58695.     Set @SSQL = 'SELECT S.Sifra_art, S.Datum_Dok, max(S.DokID) DokID 
  58696.             FROM Stavr S 
  58697.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  58698.             INNER JOIN #CeniDat C ON S.Sifra_Art = C.Sifra_Art AND S.Datum_Dok = C.Datum '
  58699.     If @IskluciKup Is NOT NULL 
  58700.         Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  58701.     Set @SSQL = @SSQL + ' WHERE 
  58702.             S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '')  '
  58703.     If @IskluciKup Is NOT NULL 
  58704.         Set @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' + @IskluciKup + ') '
  58705.     If @Sifra_Kup_Od Is NOT Null
  58706.         SET @SSQL = @SSQL + 'AND K.Kto>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  58707.     If @Sifra_Kup_Do Is NOT Null
  58708.          SET @SSQL = @SSQL + 'AND K.Kto<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  58709.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art, S.Datum_Dok '
  58710.     INSERT INTO #CeniArtN EXEC (@SSQL)
  58711.  
  58712.     UPDATE #TmpNabavni
  58713.     SET NabCena = dbo.fn_VratiVredIzl(1, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa, 'D'),
  58714.                 #TmpNabavni.Posn=S.Posn
  58715.              FROM #CeniArtN C, Stavr S, Dokr D
  58716.     WHERE #TmpNabavni.Sifra_Art = C.Sifra_Art AND S.DokID = C.DokID AND D.DokrID = S.DokrID
  58717.  
  58718.     UPDATE #TmpNabavni
  58719.     SET NabCena = S.Cena, --/(1+S.Posn/100), 
  58720.         #TmpNabavni.Posn=S.Posn
  58721.         FROM StariNabavniC S
  58722.     WHERE #TmpNabavni.Sifra_Art = S.Sifra_Art AND (#TmpNabavni.NabCena = 0 or #TmpNabavni.NabCena IS NULL)
  58723.  
  58724. --select * from #TmpNabavni
  58725.  
  58726.  
  58727. /*
  58728.     -- Prosecni nabavni ceni
  58729.     Create Table #ProsCeni    
  58730.     (
  58731.      Sifra_Art    varchar(20),
  58732.      Sostojba    decimal(18,4),
  58733.      Vrednost    decimal(18,4),
  58734.      ProsCena    decimal(18,4)
  58735.     )
  58736.     Set @SSQL = ' Select S.Sifra_Art, Sum(Case S.VlIzl When ''V'' Then S.Kolic When ''I'' Then (-1*S.Kolic) End),
  58737.             Sum(Case S.VlIzl When ''V'' Then (S.Kolic*(S.NabCena*(1+S.Posn/100))) 
  58738.                       When ''I'' Then (-1*S.Kolic*(S.NabCena*(1+S.Posn/100))) End), Null
  58739.             From Stavr S
  58740.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  58741.             Where 1=1 '
  58742.     If @Datum Is Not Null
  58743.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + ''' '
  58744.     If @GrOrgZal Is Not Null
  58745.         Set @SSQL = @SSQL + ' And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @GrOrgZal + ''') '
  58746.     If @Sifra_Kup_Od Is NOT Null
  58747.         SET @SSQL = @SSQL + 'AND K.Kto>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  58748.     If @Sifra_Kup_Do Is NOT Null
  58749.          SET @SSQL = @SSQL + 'AND K.Kto<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  58750.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art '
  58751.     Insert Into #ProsCeni Exec(@SSQL)
  58752.  
  58753.     Create Table #FinRazl    
  58754.         (
  58755.          Sifra_Art    varchar(20),
  58756.          IznosRazl    decimal(18,4)
  58757.         )
  58758.     Set @SSQL = ' Select R.Sifra_Art, Sum((Case R.VlIzl When ''V'' Then R.Iznos_Razl When ''I'' Then (-1*R.Iznos_Razl) End))
  58759.             From RazlFin R
  58760.             Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  58761.             Where 1=1 '
  58762.     If @Datum Is Not Null
  58763.         Set @SSQL = @SSQL + ' And R.Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + ''' '
  58764.     If @GrOrgZal Is Not Null
  58765.         Set @SSQL = @SSQL + 'And R.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @GrOrgZal + ''') '
  58766.     If @Sifra_Kup_Od Is NOT Null
  58767.         SET @SSQL = @SSQL + 'AND K.Kto>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  58768.     If @Sifra_Kup_Do Is NOT Null
  58769.          SET @SSQL = @SSQL + 'AND K.Kto<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  58770.     Set @SSQL = @SSQL + ' Group By R.Sifra_Art '
  58771.     Insert Into #FinRazl Exec(@SSQL)
  58772.  
  58773.     Update #ProsCeni
  58774.     Set #ProsCeni.Vrednost=#ProsCeni.Vrednost+#FinRazl.IznosRazl
  58775.     From #FinRazl
  58776.     Where #ProsCeni.Sifra_Art=#FinRazl.Sifra_Art
  58777.  
  58778.     Update #ProsCeni
  58779.     Set ProsCena=Vrednost/Sostojba
  58780.     Where Sostojba Is Not Null And Sostojba <> 0
  58781.     Update #ProsCeni
  58782.     Set ProsCena = 0
  58783.     Where ProsCena < 0
  58784. */
  58785.     -----------------------------------------------------------------------------------
  58786.  
  58787.     ---  Zaliha 
  58788.     Set @SSQL = ' Select K.Kto, Null, 0, 0, 
  58789.             Sum(P.NabCena * (Case S.VlIzl When ''V'' Then S.Kolic Else -1 * S.Kolic End))
  58790.             From Stavr S
  58791.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  58792.             Left Outer Join #TmpNabavni P On P.Sifra_Art = S.Sifra_Art 
  58793.             Where K.Kto In (Select Sifra_Kup From Komint Where Rok_Dobav = 365) '
  58794.     If @GrOrgZal Is Not Null
  58795.         Set @SSQL = @SSQL + ' And S.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @GrOrgZal + ''') '
  58796.     If @Datum Is Not Null
  58797.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum as varchar(30)) + ''' '
  58798.     If @Sifra_Kup_Od Is NOT Null
  58799.         SET @SSQL = @SSQL + 'AND K.Kto>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  58800.     If @Sifra_Kup_Do Is NOT Null
  58801.          SET @SSQL = @SSQL + 'AND K.Kto<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  58802.     Set @SSQL =@SSQL + ' Group By K.Kto '
  58803.     --print @SSQL
  58804.     Insert Into #Kons Exec(@SSQL)
  58805.     
  58806.     Select K.Sifra_Kup, Kup.ImeKup, 
  58807.         Sum(Case When K.Sifra_Za = '1' Then (Dolzi-Pobaruva) Else 0 End) Kupuvac,
  58808.         Sum(Case When K.Sifra_Za = '2' Then (Pobaruva-Dolzi) Else 0 End) Dobavuvac,
  58809.         Sum(Zaliha) Zaliha
  58810.     From #Kons K
  58811.     Left Outer Join Komint Kup On Kup.Sifra_Kup = K.Sifra_Kup
  58812.     Group By K.Sifra_Kup, Kup.ImeKup
  58813.  
  58814.  
  58815. Go
  58816. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvproizvrolni]'))
  58817. drop procedure [dbo].[sp_izvproizvrolni]
  58818.  
  58819. Go
  58820.  
  58821.  
  58822.  
  58823. CREATE        PROCEDURE sp_IzvProizvRolni
  58824.     @Sifra_Oe    smallint,
  58825.     @Datum_Od    smalldatetime,
  58826.     @Datum_Do    smalldatetime,
  58827.     @Sifra_Smena    smallint,
  58828.     @Sifra_Rab    smallint,
  58829.     @Broj_RabN    int,
  58830.     @RolniTabaci    char(1) = 'R'    -- R - Rolni           T - Tabaci        B - Tamburi
  58831. AS
  58832.     Declare @SSQL as varchar(8000)
  58833.     Declare @SSQLUsl as varchar(8000)
  58834.     Set @SSQLUsl = ' '
  58835.     Create Table #Rez
  58836.     (
  58837.      Datum        smalldatetime,
  58838.      Sifra_Smena    smallint,
  58839.      Sifra_Rab    smallint,
  58840.      Sifra_Art    varchar(20),
  58841.      TambBr    decimal(18,6),
  58842.      TambKgr    decimal(18,6),
  58843.      RolniBr        decimal(18,6), 
  58844.      RolniKgr    decimal(18,6)
  58845.     )
  58846.     If @Sifra_Oe Is Not Null
  58847.         Set @SSQLUsl = @SSQLUsl + ' And DRN.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  58848.     If @Datum_Od Is Not Null
  58849.         Set @SSQLUsl = @SSQLUsl + ' And DRN.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  58850.     If @Datum_Do Is Not Null
  58851.         Set @SSQLUsl = @SSQLUsl + ' And DRN.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  58852.     If @Sifra_Smena Is Not Null
  58853.         Set @SSQLUsl = @SSQLUsl + ' And DRN.Sifra_Smena = ' + Cast(@Sifra_Smena as varchar(6)) + ' '
  58854.     If @Sifra_Rab Is Not Null
  58855.         Set @SSQLUsl = @SSQLUsl + ' And DRN.Sifra_Rab = ' + Cast(@Sifra_Rab as varchar(6)) + ' '
  58856.     If @Broj_RabN Is Not Null
  58857.         Set @SSQLUsl = @SSQLUsl + ' And RN.Broj_RabN = ' + Cast(@Broj_RabN as varchar(6)) + ' '
  58858.     Set @SSQL= 'Select DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab, 
  58859.                 S.Sifra_Art, 0, 0, Count(Sifra_Art), Sum(S.Kolic)
  58860.             From DokRabNal DRN
  58861.             Inner Join Stavr S On S.DokrID=DRN.DokrID
  58862.             Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID'
  58863.     If @RolniTabaci = 'B'
  58864.         Set @SSQL = @SSQL + ' Where S.Sifra_Dok=190 '
  58865.     Else If @RolniTabaci = 'T'
  58866.         Set @SSQL = @SSQL + ' Where S.Sifra_Dok=192 '
  58867.     Else 
  58868.         Set @SSQL = @SSQL + ' Where S.Sifra_Dok=193 '
  58869.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab, S.Sifra_Art '
  58870.     Insert Into #Rez Exec(@SSQL)
  58871.     If @RolniTabaci <> 'B'
  58872.     Begin
  58873.         Create Table #KSPom
  58874.         (
  58875.          Datum        smalldatetime,
  58876.          Sifra_Smena    smallint,
  58877.          Sifra_Rab    smallint,
  58878.          KontrSerSta    varchar(25),
  58879.          TambKgr    decimal(18,6)
  58880.         )                                        --Sum(K.Tezina_Neto)
  58881.                                                 --KS.KontrSerSta, K.Tezina_Neto
  58882.         Set @SSQL = ' Select Distinct DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab, KS.KontrSerSta, K.Tezina_Neto
  58883.             From DokRabNal DRN
  58884.             Inner Join EvProizvod E On E.DokrID=DRN.DokrID
  58885.             Inner Join KatSerBrSta KS On KS.KontrSer=E.KontrSer
  58886.             Inner Join KatSerBr K On K.KontrSer=KS.KontrSerSta
  58887.             Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID
  58888.             Left Outer Join Dokr D On D.DokrID = DRN.DokrID '
  58889.         If @RolniTabaci = 'T'
  58890.             Set @SSQL = @SSQL + ' Where D.Sifra_Dok=192 '
  58891.         Else 
  58892.         Set @SSQL = @SSQL + ' Where D.Sifra_Dok=193 '
  58893.         Set @SSQL = @SSQL + @SSQLUsl-- + ' Group By  DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab '
  58894.         Insert Into #KSPom Exec(@SSQL)
  58895.         Create Table #KS
  58896.         (
  58897.          Datum        smalldatetime,
  58898.          Sifra_Smena    smallint,
  58899.          Sifra_Rab    smallint,
  58900.          TambBr        int,
  58901.          TambKgr    decimal(18,6)
  58902.         )
  58903.         Insert Into #KS 
  58904.         Select Datum, Sifra_Smena, Sifra_Rab, Count(*), Sum(TambKgr)
  58905.         From #KsPom
  58906.         Group By Datum, Sifra_Smena, Sifra_Rab
  58907.         -- SSkart
  58908.         Create Table #Skart
  58909.         (
  58910.          Datum        smalldatetime,
  58911.          Sifra_Smena    smallint,
  58912.          Sifra_Rab    smallint,
  58913.          SkartKgr    decimal(18,6)
  58914.         )
  58915.         Set @SSQL= 'Select DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab, Sum(S.Kolic)
  58916.                 From DokRabNal DRN
  58917.                 Inner Join Stavr S On S.DokrID=DRN.DokrID
  58918.                 Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID '
  58919.         If @RolniTabaci = 'T'
  58920.             Set @SSQL = @SSQL + ' Where S.Sifra_Dok=182 '
  58921.         Else 
  58922.             Set @SSQL = @SSQL + ' Where S.Sifra_Dok=183 '
  58923.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab '
  58924.         Insert Into #Skart Exec(@SSQL)
  58925.     End
  58926.      If @RolniTabaci = 'B'
  58927.         Select R.Datum, R.Sifra_Smena, R.Sifra_Rab, R.Sifra_Art, K.ImeArt, Rab.ImeRab,
  58928.             Null TambBr, Null TambKgr, Sum(R.RolniBr) RolniBr, Sum(R.RolniKgr) RolniKgr, Null SkartKgr
  58929.         From #Rez R
  58930.         Left Outer Join Rabotnik Rab On Rab.Sifra_Rab=R.Sifra_Rab
  58931.         Inner Join Katart K On k.Sifra_Art=R.Sifra_Art
  58932.         Group By R.Datum, R.Sifra_Smena, R.Sifra_Rab, R.Sifra_Art, K.ImeArt, Rab.ImeRab
  58933.         Order By R.Datum, R.Sifra_Smena, R.Sifra_Rab, R.Sifra_Art
  58934.     Else
  58935.         Select R.Datum, R.Sifra_Smena, R.Sifra_Rab, R.Sifra_Art, K.ImeArt, Rab.ImeRab,
  58936.             KS.TambBr, KS.TambKgr, Sum(R.RolniBr) RolniBr, Sum(R.RolniKgr) RolniKgr, S.SkartKgr
  58937.         From #Rez R
  58938.         Left Outer Join #KS KS On KS.Datum=R.Datum And KS.Sifra_Smena=R.Sifra_Smena And KS.Sifra_Rab=R.Sifra_Rab
  58939.         Left Outer Join #Skart S On S.Datum=R.Datum And S.Sifra_Smena=R.Sifra_Smena And S.Sifra_Rab=R.Sifra_Rab
  58940.         Left Outer Join Rabotnik Rab On Rab.Sifra_Rab=R.Sifra_Rab
  58941.         Inner Join Katart K On k.Sifra_Art=R.Sifra_Art
  58942.         Group By R.Datum, R.Sifra_Smena, R.Sifra_Rab, R.Sifra_Art, K.ImeArt, Rab.ImeRab, KS.TambBr, KS.TambKgr, S.SkartKgr
  58943.         Order By R.Datum, R.Sifra_Smena, R.Sifra_Rab, R.Sifra_Art
  58944.  
  58945.  
  58946.  
  58947. Go
  58948. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvpromnabcena]'))
  58949. drop procedure [dbo].[sp_izvpromnabcena]
  58950.  
  58951. Go
  58952. CREATE PROCEDURE sp_IzvPromNabCena
  58953.     @Sifra_Oe    smallint = Null,
  58954.     @KoiOe    Varchar(6) = Null,
  58955.     @Sifra_Art_Od    varchar(20) = Null,
  58956.     @Sifra_Art_Do    varchar(20) = Null,
  58957.     @Datum_Od    smalldatetime = Null,
  58958.     @Datum_Do    smalldatetime = Null
  58959. AS
  58960.     Declare @SSQL as varchar(8000)
  58961.     Create Table #Tab
  58962.     (
  58963.      DokrID        int,
  58964.      Sifra_Oe    smallint,
  58965.      Sifra_Dok    smallint,
  58966.      Broj_Dok    int,
  58967.      Sifra_Art    varchar(20),
  58968.      Datum_Dok    smalldatetime,
  58969.      DokCena    decimal(18,6)
  58970.     )    
  58971.     Create Table #RazlNab
  58972.     (
  58973.      Sifra_Oe    smallint,
  58974.      Sifra_Dok    smallint,
  58975.      Broj_Dok    int,
  58976.      Sifra_Art    varchar(20),
  58977.      Datum_Dok    smalldatetime,
  58978.      StaraCena    decimal(18,6),
  58979.      NovaCena    decimal(18,6)
  58980.     )
  58981.     Set @SSQL = ' Select D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, S.Sifra_Art, D.Datum_Dok, 
  58982.                 (Case When S.DanDokCena=''N'' Then S.DokCena*(1+S.Posn/100)*(1-S.Uces/100)*(1-D.Kasa/100) Else S.DokCena*(1-S.Uces/100)*(1-D.Kasa/100) End)
  58983.             From Dokr D
  58984.             Inner Join Stavr S On S.DokrID=D.DokrID
  58985.             Where D.VlIzl = ''V'' And D.Sifra_Za = ''2'' '
  58986.     If @Sifra_Oe Is Not Null
  58987.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  58988.     If @KoiOe Is Not Null
  58989.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe + ''') '
  58990.     If @Datum_Od Is Not Null
  58991.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  58992.     If @Datum_Do Is Not Null
  58993.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  58994.     If @Sifra_Art_Od Is Not Null
  58995.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  58996.     If @Sifra_Art_Do Is Not Null
  58997.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  58998.     Set @SSQL = @SSQL + ' Order By S.Sifra_Art, D.Sifra_Oe, D.Datum_Dok, D.DokrID '
  58999.     Insert Into #Tab Exec(@SSQL)
  59000.     Declare @SifOe        smallint
  59001.     Declare @SifOeSt    smallint
  59002.     Declare @SifDok    smallint
  59003.     Declare @BrDok    int
  59004.     Declare @SifArt        varchar(20)
  59005.     Declare @SifArtSt    varchar(20)
  59006.     Declare @DatDok     smalldatetime
  59007.     Declare @Cena         decimal(18,6)
  59008.     Declare @CenaSt    decimal(18,6)
  59009.     Declare Razl Cursor Fast_Forward For Select Sifra_Art, Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, DokCena From #Tab Order By Sifra_Art, Sifra_Oe, Datum_Dok, DokrID
  59010.     Open Razl
  59011.     Fetch Next From Razl Into @SifArt, @SifOe, @SifDok, @BrDok, @DatDok, @Cena
  59012.     While @@Fetch_Status = 0
  59013.     Begin
  59014.         If @SifArtSt=@SifArt And @SifOeSt=@SifOe And @CenaSt<>@Cena
  59015.         Begin
  59016.             Insert Into #RazlNab (Sifra_Oe, Sifra_Dok, Broj_Dok, Sifra_Art, Datum_Dok, StaraCena, NovaCena)
  59017.             Select @SifOe, @SifDok, @BrDok, @SifArt, @DatDok, @CenaSt, @Cena
  59018.         End
  59019.         Set @SifArtSt=@SifArt
  59020.         Set @SifOeSt=@SifOe
  59021.         Set @CenaSt=@Cena
  59022.         Fetch Next From Razl Into @SifArt, @SifOe, @SifDok, @BrDok, @DatDok, @Cena
  59023.     End
  59024.     Close Razl
  59025.     Deallocate Razl
  59026.     Select R.Sifra_Oe, R.Sifra_Dok, R.Broj_Dok, R.Sifra_Art, K.ImeArt, R.Datum_Dok, R.StaraCena, R.NovaCena
  59027.     From #RazlNab R
  59028.     Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  59029.     Order By R.Sifra_Oe, R.Sifra_Art, R.Datum_Dok
  59030.  
  59031.  
  59032. Go
  59033. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvrazlceni]'))
  59034. drop procedure [dbo].[sp_izvrazlceni]
  59035.  
  59036. Go
  59037.  
  59038.  
  59039.  
  59040.  
  59041. CREATE                  PROCEDURE sp_IzvRazlCeni
  59042.     @Sifra_OE Smallint,
  59043.     @KoiOE Varchar(300),
  59044.     @Datum_Od Smalldatetime,
  59045.     @Datum_Do Smalldatetime,
  59046.     @Sifra_Art_Od Varchar(20),
  59047.     @Sifra_Art_Do Varchar(20),
  59048.     @Sifra_Kup Char(6),
  59049.     @Podred Char(1),
  59050.     @Sifra_Gr Char(3),
  59051.     @Sifra_Podg Char(6),
  59052.     @Lokacija Varchar(10),
  59053.     @Sifra_Razl Varchar(50),
  59054.     @ZgolNam Char(1),
  59055.     @SoDanok Char(1),
  59056.     @SoStavki Char(1),
  59057.     @Orig_Dok    smallint = Null,
  59058.     @Orig_Broj_Od    int = Null,
  59059.     @Orig_Broj_Do    int = Null,
  59060.     @SamoAkcProd    Char(1)='N',
  59061.     @KoiArt        char(1) = 'S',    -- R - <> 0     P - > 0      N - < 0      E = 0
  59062.     @VratiKup    char(1) = 'N'
  59063. AS
  59064.     Declare @SSQL Varchar(8000)
  59065. If @SoStavki = 'N'
  59066.    BEGIN
  59067.     CREATE TABLE #TmpRazl
  59068.     (    Sifra_Razl Char(3),
  59069.         Sifra_OE Smallint,
  59070.         PTar Char(3),
  59071.         POsn Decimal(6,2),
  59072.         Kolic  Decimal(18,6),
  59073.         PocetnaCena Decimal(18,6),
  59074.         KrajnaCena Decimal(18,6)
  59075.     )
  59076.     Set @SSQL =     'INSERT INTO #TmpRazl 
  59077.             Select  R.Sifra_Razl, R.Sifra_OE, R.PTar AS PTar, R.POsn AS POsn, Round(R.Kolic, 4) as Kolic, 
  59078.               Round(dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''' + @SoDanok + '''), 4) as PocetnaCena, 
  59079.             Round(dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''' + @SoDanok + '''), 4) as KrajnaCena '
  59080.     Set @SSQL = @SSQL + ' From RazlCeni R
  59081.          Inner Join KatArt K ON R.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' '
  59082.     If @Sifra_Gr Is Not Null
  59083.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  59084.     Set @SSQL = @SSQL + 'Where R.Sifra_Razl IN (' + @Sifra_Razl + ') '
  59085.     if @ZgolNam = 'Z'
  59086.                      Set @SSQL = @SSQL + 'And R.PocCena < R.KrCena '
  59087.     if @ZgolNam = 'N'
  59088.                      Set @SSQL = @SSQL + 'And R.PocCena > R.KrCena '
  59089.     If @Sifra_OE Is Not Null
  59090.         Set @SSQL  = @SSQL + 'And R.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  59091.     If @KoiOE Is Not Null
  59092.         Set @SSQL  = @SSQL + 'And R.Sifra_OE IN (' + @KoiOE + ') '
  59093.     If @Lokacija Is Not NULL
  59094.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + '''  '
  59095.     If @Sifra_Podg Is Not NULL
  59096.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  59097.     If @Sifra_Gr Is Not NULL
  59098.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  59099.     If @Datum_Od Is Not NULL
  59100.         Set @SSQL = @SSQL + 'And R.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  59101.     If @Datum_Do Is Not NULL
  59102.         Set @SSQL = @SSQL + 'And R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  59103.     If @Sifra_Kup Is Not NULL
  59104.         Set @SSQL = @SSQL + 'And K.Kto =' + @Sifra_Kup + ' '
  59105.     If @Sifra_Art_Od Is Not NULL
  59106.         Set @SSQL = @SSQL + 'And R.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  59107.     If @Sifra_Art_Do Is Not NULL
  59108.         Set @SSQL = @SSQL + 'And R.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  59109.     If @Orig_Dok Is Not Null
  59110.         Set @SSQL  = @SSQL + 'And R.Orig_Dok=' + Cast(@Orig_Dok As Varchar(6)) + ' '
  59111.     If @Orig_Broj_Od Is Not Null
  59112.         Set @SSQL  = @SSQL + 'And R.Orig_Broj >=' + Cast(@Orig_Broj_Od As Varchar(10)) + ' '
  59113.     If @Orig_Broj_Do Is Not Null
  59114.         Set @SSQL  = @SSQL + 'And R.Orig_Broj <=' + Cast(@Orig_Broj_Do As Varchar(10)) + ' '
  59115.     if @SamoAkcProd = 'D'
  59116.                      Set @SSQL = @SSQL + 'And R.Akciska_Prod =''' + @SamoAkcProd + ''' '
  59117.     If @KoiArt = 'R'
  59118.         Set @SSQL = @SSQL + ' And R.Kolic <> 0 '
  59119.     Else If @KoiArt = 'P'
  59120.         Set @SSQL = @SSQL + ' And R.Kolic > 0 '
  59121.     Else If @KoiArt = 'N'
  59122.         Set @SSQL = @SSQL + ' And R.Kolic < 0 '
  59123.     Else If @KoiArt = 'E'
  59124.         Set @SSQL = @SSQL + ' And R.Kolic = 0 '
  59125.         Exec(@SSQL)
  59126.     Set @SSQL =     'SELECT Sifra_Razl, Sifra_OE, PTar, POsn, Round(SUM(Kolic * PocetnaCena), 4) AS PocetnaCena, Round(SUM(Kolic * KrajnaCena), 4) AS KrajnaCena
  59127.             FROM #TmpRazl GROUP BY Sifra_Razl, Sifra_OE, PTar, POsn'
  59128.     Exec(@SSQL)
  59129.    END
  59130. Else
  59131.    BEGIN
  59132.     Set @SSQL = 'Select R.Sifra_Razl, R.Sifra_OE, R.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera,K.Sifra_podg,  
  59133.              Nomen = 
  59134.              Case Nom
  59135.                 When NULL Then dbo.fn_Nom(R.Sifra_Art)
  59136.                 Else K.Nom
  59137.              End,
  59138.              R.Datum_dok, Round(R.Kolic, 4) Kolic,  R.POsn, R.PTar, R.Datum_Vnes, R.SifrA_Oper, 
  59139.             Round(dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''' + @SoDanok + '''), 4) as PocetnaCena, 
  59140.             Round(dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''' + @SoDanok + '''), 4) as KrajnaCena,
  59141.             K.DeklArt, K.ImaKomerc, K.Alt_Ime, '
  59142.     If @VratiKup = 'D'
  59143.         Set @SSQL = @SSQL + ' D.Sifra_Kup, Kup.ImeKup, D.Sifra_Obj, KO.ImeObj '
  59144.     Else 
  59145.         Set @SSQL = @SSQL + ' Null Sifra_Kup, Null ImeKup, Null Sifra_Obj, Null ImeObj '
  59146.     Set @SSQL = @SSQL + ' From RazlCeni R
  59147.          Inner Join KatArt K ON R.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' '
  59148.     If @VratiKup = 'D'
  59149.         Set @SSQL = @SSQL + ' Left Outer Join Dokr D On D.Sifra_Oe=R.Sifra_Oe And D.Sifra_Dok=R.Orig_Dok And D.Broj_Dok=R.Orig_Broj
  59150.                     Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  59151.                     Left Outer Join KObjekti KO On KO.Sifra_Kup = D.Sifra_Kup And KO.Sifra_Obj = D.Sifra_Obj  '
  59152.                         --And (Case When R.Orig_Prim Is Not Null Then R.Orig_Prim Else 0 End) = (Case When D.Sifra_Prim Is Not Null Then D.Sifra_Prim Else 0 End) 
  59153.                         --And (Case When R.Orig_ImaDod Is Not Null Then R.Orig_ImaDod Else '' '' End) = (Case When D.ImaDodatna Is Not Null Then D.ImaDodatna Else '' '' End)
  59154.  
  59155.     -- Dodadeno 21.02.2007 za da ne gi prik.art kaj koi promenata vo cena e pomala od 0.0001
  59156.     Set @SSQL = @SSQL + ' And ABS(dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''' + @SoDanok + ''') -
  59157.                            dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''' + @SoDanok + ''')) > 0.0001 '
  59158.     If @Sifra_Gr Is Not Null
  59159.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  59160.     Set @SSQL = @SSQL + 'Where R.Sifra_Razl IN (' + @Sifra_Razl + ') '
  59161.     if @ZgolNam = 'Z'
  59162.                      Set @SSQL = @SSQL + 'And R.PocCena < R.KrCena '
  59163.     if @ZgolNam = 'N'
  59164.                      Set @SSQL = @SSQL + 'And R.PocCena > R.KrCena '
  59165.     If @Sifra_OE Is Not Null
  59166.         Set @SSQL  = @SSQL + 'And R.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  59167.     If @KoiOE Is Not Null
  59168.         Set @SSQL  = @SSQL + 'And R.Sifra_OE IN (' + @KoiOE + ') '
  59169.     If @Lokacija Is Not NULL
  59170.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + '''  '
  59171.     If @Sifra_Podg Is Not NULL
  59172.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  59173.     If @Sifra_Gr Is Not NULL
  59174.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  59175.     If @Datum_Od Is Not NULL
  59176.         Set @SSQL = @SSQL + 'And R.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  59177.     If @Datum_Do Is Not NULL
  59178.         Set @SSQL = @SSQL + 'And R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  59179.     If @Sifra_Kup Is Not NULL
  59180.         Set @SSQL = @SSQL + 'And K.Kto =' + @Sifra_Kup + ' '
  59181.     If @Sifra_Art_Od Is Not NULL
  59182.         Set @SSQL = @SSQL + 'And R.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  59183.     If @Sifra_Art_Do Is Not NULL
  59184.         Set @SSQL = @SSQL + 'And R.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  59185.     If @Orig_Dok Is Not Null
  59186.         Set @SSQL  = @SSQL + 'And R.Orig_Dok=' + Cast(@Orig_Dok As Varchar(6)) + ' '
  59187.     If @Orig_Broj_Od Is Not Null
  59188.         Set @SSQL  = @SSQL + 'And R.Orig_Broj >=' + Cast(@Orig_Broj_Od As Varchar(10)) + ' '
  59189.     If @Orig_Broj_Do Is Not Null
  59190.         Set @SSQL  = @SSQL + 'And R.Orig_Broj <=' + Cast(@Orig_Broj_Do As Varchar(10)) + ' '
  59191.     if @SamoAkcProd = 'D'
  59192.                      Set @SSQL = @SSQL + 'And R.Akciska_Prod =''' + @SamoAkcProd + ''' '
  59193.     If @KoiArt = 'R'
  59194.         Set @SSQL = @SSQL + ' And R.Kolic <> 0 '
  59195.     Else If @KoiArt = 'P'
  59196.         Set @SSQL = @SSQL + ' And R.Kolic > 0 '
  59197.     Else If @KoiArt = 'N'
  59198.         Set @SSQL = @SSQL + ' And R.Kolic < 0 '
  59199.     Else If @KoiArt = 'E'
  59200.         Set @SSQL = @SSQL + ' And R.Kolic = 0 '
  59201.     If @Podred = 'S'
  59202.         Set @SSQL = @SSQL + 'Order By R.Sifra_Art, R.Datum_dok '
  59203.     Else If @Podred = 'A'
  59204.         Set @SSQL = @SSQL + 'Order By K.ImeArt, R.Datum_dok ' 
  59205.     Else If @Podred = 'D'
  59206.         Set @SSQL = @SSQL + 'Order By R.Datum_dok, R.Sifra_Art ' 
  59207. print @SSQL
  59208.     Exec(@SSQL)
  59209.     END
  59210.  
  59211. Go
  59212. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvrazlcenitaggy]'))
  59213. drop procedure [dbo].[sp_izvrazlcenitaggy]
  59214.  
  59215. Go
  59216.  
  59217.  
  59218.  
  59219. CREATE      PROCEDURE sp_IzvRazlCeniTaggy
  59220.     @Sifra_OE Smallint,
  59221.     @Datum_Od Smalldatetime,
  59222.     @Datum_Do Smalldatetime,
  59223.     @Sifra_Art_Od Varchar(20)=NULL,
  59224.     @Sifra_Art_Do Varchar(20)=NULL,
  59225.     @Sifra_Kup Char(6)=NULL,
  59226.     @Podred Char(1)=NULL,
  59227.     @Sifra_Gr Char(3)=NULL,
  59228.     @Sifra_Podg Char(6)=NULL,
  59229.     @Lokacija Varchar(10)=NULL,
  59230.     @Sifra_Razl Varchar(50)=902,
  59231.     @ZgolNam Char(1)='',
  59232.     @SoDanok Char(1)='D'
  59233. AS
  59234.     Declare @SSQL Varchar(8000)
  59235.     Set @SSQL =    'Select R.Sifra_Art, K.ImeArt, R.Sifra_Razl, R.Sifra_OE, R.PTar AS PTar, R.POsn AS POsn, Round(R.Kolic, 4) as Kolic, 
  59236.               Round(dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''' + @SoDanok + '''), 4) as PocetnaCena, 
  59237.             Round(dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''' + @SoDanok + '''), 4) as KrajnaCena,
  59238.             T.AdrTaggy, T.TipTaggy 
  59239.             From RazlCeni R
  59240.              Inner Join KatArt K ON R.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M''
  59241.             INNER JOIN AdrTaggy T ON R.Sifra_Art=T.Sifra_Art AND T.Sifra_Oe= '+cast(@Sifra_OE as varchar(5))+' '
  59242.     If @Sifra_Gr Is Not Null
  59243.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  59244.     Set @SSQL = @SSQL + 'Where R.Sifra_Razl IN (' + @Sifra_Razl + ') '
  59245.     if @ZgolNam = 'Z'
  59246.                      Set @SSQL = @SSQL + 'And R.PocCena < R.KrCena '
  59247.     if @ZgolNam = 'N'
  59248.                      Set @SSQL = @SSQL + 'And R.PocCena > R.KrCena '
  59249.     If @Sifra_OE Is Not Null
  59250.         Set @SSQL  = @SSQL + 'And R.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  59251.     If @Lokacija Is Not NULL
  59252.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + '''  '
  59253.     If @Sifra_Podg Is Not NULL
  59254.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  59255.     If @Sifra_Gr Is Not NULL
  59256.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  59257.     If @Datum_Od Is Not NULL
  59258.         Set @SSQL = @SSQL + 'And R.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  59259.     If @Datum_Do Is Not NULL
  59260.         Set @SSQL = @SSQL + 'And R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  59261.     If @Sifra_Kup Is Not NULL
  59262.         Set @SSQL = @SSQL + 'And K.Kto =' + @Sifra_Kup + ' '
  59263.     If @Sifra_Art_Od Is Not NULL
  59264.         Set @SSQL = @SSQL + 'And R.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  59265.     If @Sifra_Art_Do Is Not NULL
  59266.         Set @SSQL = @SSQL + 'And R.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  59267.     Exec(@SSQL)
  59268.  
  59269.  
  59270.  
  59271. Go
  59272. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzadistper]'))
  59273. drop procedure [dbo].[sp_izvzadistper]
  59274.  
  59275. Go
  59276. CREATE          PROCEDURE sp_IzvZaDistPer
  59277.     @Sifra_OE    Smallint,
  59278.     @Datum_Od    smalldatetime,
  59279.     @Datum_Do    SmallDateTime
  59280. AS
  59281.     Declare @Distributeri    varchar(200)
  59282.     Declare @PriemOdMag    smallint
  59283.     Declare @VratVoMag    smallint
  59284.     Declare @VratVoMag2    smallint
  59285.     Declare @Faktura    smallint
  59286.     Declare @StornoFak    smallint
  59287.     Declare @UplDist    smallint
  59288.     Declare @Elim_Art1    char(6)
  59289.     Declare @Elim_Art2    char(6)
  59290.     set @Elim_art1 = '002001'
  59291.     set @Elim_art2 = '002002'
  59292.     SELECT @PriemOdMag = Pren_fix_plus, @VratVoMag=Pren_fix_minus, @VratVoMag2=Pren_Fix_Minus2, 
  59293.     @Faktura=Ispr_Fix_plus, @StornoFak=Ispr_Fix_Minus, @UplDist= Fin_Upl_Distr FROM Konfig
  59294.     If @Sifra_OE IS NULL
  59295.         SELECT @Distributeri = Prima1 FROM SkrDok WHERE SkrOznaka = 'a-dd-zad-dis'
  59296.     Else
  59297.         SET @Distributeri = Cast(@Sifra_OE as varchar(200))
  59298.     CREATE TABLE #GotPromDist
  59299. (    Sifra_OE    smallint,
  59300.     Datum        smalldatetime,
  59301.     GotPromet    decimal(18,6)
  59302. )
  59303.     CREATE TABLE #UplDist
  59304. (    Sifra_OE    smallint,
  59305.     Datum        smalldatetime,
  59306.     UplatPromet    decimal(18,6)
  59307. )
  59308.     CREATE TABLE #FaktDist
  59309. (    Sifra_OE    smallint,
  59310.     Datum        smalldatetime,
  59311.     Prod_Fakt    decimal(18,6)
  59312. )
  59313.     CREATE TABLE #TmpDist
  59314. (    Sifra_OE    smallint,
  59315.     Datum        smalldatetime,
  59316.     GotPromet    decimal(18,6),
  59317.     UplatPromet    decimal(18,6),
  59318.     Prod_Fakt    decimal(18,6)
  59319. )
  59320.     Declare @SSQL AS varchar(2000)
  59321.     SET @SSQL = 'INSERT INTO #UplDist SELECT Sifra_OE, Datum_Dok, SUM(Pobaruva)    
  59322.     FROM AnFinDok WHERE Datum_Dok >= ''' + Cast(@Datum_Od as varchar(35)) + ''' AND Datum_Dok <= ''' +
  59323.     Cast(@Datum_Do as varchar(35)) + ''' AND Sifra_OE IN (' + @Distributeri + ') AND Sifra_Dok = ' + Cast(@UplDist as varchar(6)) +
  59324.     ' GROUP BY Sifra_OE, Datum_Dok '
  59325.     EXEC (@SSQL)
  59326.     SET @SSQL = 'INSERT INTO #FaktDist SELECT Sifra_OE, Datum_Dok, SUM(Kolic * DokCena)    
  59327.     FROM Stavr WHERE Datum_Dok >= ''' + Cast(@Datum_Od as varchar(35)) + ''' AND Datum_Dok <= ''' +
  59328.     Cast(@Datum_Do as varchar(35)) + ''' AND Sifra_OE IN (' + @Distributeri + ') AND (Sifra_Dok = ' + Cast(@Faktura as varchar(6)) +
  59329.     ' OR Sifra_Dok = ' + Cast(@StornoFak as varchar(6)) + ') GROUP BY Sifra_OE, Datum_Dok '
  59330.     EXEC (@SSQL)
  59331.     SET @SSQL = 'INSERT INTO  #GotPromDist SELECT Sifra_OE, Datum_Dok, SUM(Kolic * DokCena)    
  59332.     FROM Stavr WHERE Datum_Dok >= ''' + Cast(@Datum_Od as varchar(35)) + ''' AND Datum_Dok <= ''' +
  59333.     Cast(@Datum_Do as varchar(35)) + ''' AND Sifra_OE IN (' + @Distributeri + ') AND (Sifra_Dok = ' + Cast(@PriemOdMag as varchar(6)) +
  59334.     ' OR Sifra_Dok = ' + Cast(@VratVoMag as varchar(6)) + ' OR Sifra_Dok = ' + Cast(@VratVoMag2 as varchar(6)) +
  59335.     ') GROUP BY Sifra_OE, Datum_Dok '
  59336.     EXEC (@SSQL)
  59337.     INSERT INTO #TmpDist (Sifra_OE, Datum) 
  59338.     SELECT Sifra_OE, Datum FROM  #FaktDist UNION
  59339.     SELECT Sifra_OE, Datum FROM #GotPromDist UNION
  59340.     SELECT Sifra_OE, Datum FROM #UplDist
  59341.     UPDATE #TmpDist SET GotPromet = #GotPromDist.GotPromet
  59342.     FROM #GotPromDist
  59343.     WHERE #TmpDist.Sifra_OE = #GotPromDist.Sifra_OE AND #TmpDist.Datum = #GotPromDist.Datum
  59344.     UPDATE #TmpDist SET UplatPromet = #UplDist.UplatPromet
  59345.     FROM #UplDist
  59346.     WHERE #TmpDist.Sifra_OE = #UplDist.Sifra_OE AND #TmpDist.Datum = #UplDist.Datum
  59347.     UPDATE #TmpDist SET Prod_Fakt = #FaktDist.Prod_Fakt
  59348.     FROM #FaktDist
  59349.     WHERE #TmpDist.Sifra_OE = #FaktDist.Sifra_OE AND #TmpDist.Datum = #FaktDist.Datum
  59350.     SELECT D.*, O.ImeOrg 
  59351.     FROM  #TmpDist D INNER JOIN OrgEd O ON D.Sifra_OE = O.Sifra_OE
  59352.     Order By D.Sifra_Oe
  59353.  
  59354.  
  59355. Go
  59356. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzadistr]'))
  59357. drop procedure [dbo].[sp_izvzadistr]
  59358.  
  59359. Go
  59360.  
  59361. CREATE                PROCEDURE sp_IzvZaDistr
  59362.     @Koi_Oe    Varchar(300),
  59363.     @Datum_Od    smalldatetime,
  59364.     @Datum_Do    SmallDateTime,
  59365.     @Upl_od_Blag    char(1) = 'N',    -- Uplatite na distriguterite da se zemaat od Blagajna (KasStav) ili od AnFinDok
  59366.     @Daden_Promet decimal(18,6)= 0 OUTPUT
  59367. AS
  59368.     Declare @SSQL as varchar(8000)
  59369.     Declare @PriemOdMag    smallint
  59370.     Declare @VratVoMag    smallint
  59371.     Declare @VratVoMag2    smallint
  59372.     Declare @Faktura    smallint
  59373.     Declare @StornoFak    smallint
  59374.     Declare @UplDist    smallint
  59375.     Declare @Shift        int
  59376.     Declare @Art_Od    char(6)    
  59377.     Declare @Art_Do    char(6)
  59378.     Declare @LenShift    int
  59379.     Declare @Elim_Art1    char(6)
  59380.     Declare @Elim_Art2    char(6)
  59381.     Declare @Gotovina    char(6)
  59382.     Declare @StornoGot    char(6)
  59383.     Set @Gotovina = '82'     -- Sega za sega fiksno - kke treba da se citaat od konfig
  59384.     Set @StornoGot = '84'
  59385.     Set @Elim_art1 = '002001'
  59386.     Set @Elim_art2 = '002002'
  59387.     SELECT @PriemOdMag = Pren_fix_plus, @VratVoMag=Pren_fix_minus, @VratVoMag2=Pren_Fix_Minus2, @Faktura=Ispr_Fix_plus, @StornoFak=Ispr_Fix_Minus, 
  59388.     @UplDist= Fin_Upl_Distr, @Shift = Ladno_Shift FROM Konfig
  59389.     if @Shift IS NULL
  59390.         Begin
  59391.             SET @Art_Od = '001000'    
  59392.             SET @Art_Do = '002000'
  59393.         End
  59394.     Else
  59395.         Begin
  59396.             SET @LenShift = Len(cast(@Shift as varchar(6)))
  59397.             SET @Art_Od    = Replicate('0', 6-@LenShift) + cast(@Shift as varchar(6))
  59398.             SET @Art_Do    = Replicate('0', 6-@LenShift) + cast(@Shift*2 as varchar(6))
  59399.         End
  59400.     If @Upl_od_Blag = 'D'
  59401.         Set @SSQL = 'Select Sum(Dolzi) FROM KasStav
  59402.         WHERE P_I = ''P'' And Dod_Datum >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  59403.         AND Dod_Datum <= ''' + cast(@Datum_Do as varchar(30)) + '''
  59404.         AND Sifra_OE in (' + @Koi_Oe + ') AND Sifra_Nal = ' + cast(@UplDist as varchar(5))
  59405.     Else
  59406.         Set @SSQL = 'Select Sum(pobaruva) FROM AnFinDok
  59407.         WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  59408.         AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''
  59409.         AND Sifra_OE in (' + @Koi_Oe + ') AND Sifra_Dok = ' + cast(@UplDist as varchar(5))
  59410.  
  59411.     Create Table #Rez
  59412.         (
  59413.          Vrednost     decimal(18,6)
  59414.         )
  59415.     Insert Into #Rez Exec(@SSQL)
  59416.     Select @Daden_Promet=Vrednost From #Rez
  59417.  
  59418.     CREATE TABLE #TmpDist
  59419. (    Sifra_Art    varchar(20),
  59420.     ImeArt        varchar(40),
  59421.     Cena        decimal(18,6),
  59422.     Priem_OdMag    decimal(18,6),
  59423.     Vrat_Toplo    decimal(18,6),
  59424.     Prod_Fakt    decimal(18,6),
  59425.     Vrat_Fakt    decimal(18,6),
  59426.     Vrat_Ladno    decimal(18,6),
  59427.     Prod_Got    decimal(18,6),
  59428.     Vrat_Got    decimal(18,6),
  59429.     Vred_Prod_Got    decimal(18,6),
  59430.     Vred_Vrat_Got    decimal(18,6)
  59431. )
  59432.     INSERT INTO #TmpDist (Sifra_Art, ImeArt) SELECT Sifra_Art, ImeArt FROM KatArt
  59433.     WHERE Sifra_Art <= @Art_Do
  59434.     --WHERE Sifra_Art IN  (SELECT DISTINCT Sifra_Art FROM Stavr WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do)
  59435.  
  59436.     CREATE TABLE #TmpKolic
  59437. (    Sifra_Art    varchar(20),
  59438.     DokCena    decimal(18,6),
  59439.     Kolic        decimal(18,6),
  59440.     Vrednost    decimal(18,6)
  59441. )
  59442.     ---------------------------- priem od magacin ----------------------------------------
  59443.     Set @SSQL = ' INSERT INTO #TmpKolic SELECT Sifra_Art, max(DokCena), SUM(Kolic), 0
  59444.     FROM Stavr WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30))  + '''  AND Datum_Dok <=  ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59445.     AND Sifra_OE in (' + @Koi_Oe + ') AND Sifra_Dok = ' + cast(@PriemOdMag as varchar(5)) + '
  59446.     GROUP BY Sifra_Art '    --  Ah, ne smee, DokCena
  59447.     Exec (@SSQL)    
  59448.  
  59449.     UPDATE #TmpDist SET Cena = S.DokCena, Priem_OdMag = S.Kolic
  59450.     FROM #TmpKolic S 
  59451.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  59452.     DELETE FROM #TmpKolic
  59453.                 
  59454.     ------------------------------ vrateno vo magacin ------------------------------------
  59455.     Set @SSQL = 'INSERT INTO #TmpKolic SELECT Sifra_Art, max(DokCena), SUM(Kolic), 0
  59456.     FROM Stavr WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''  
  59457.     AND Sifra_OE in ( ' + @Koi_Oe + ' ) AND (Sifra_Dok = ' + cast(@VratVoMag as  varchar(5)) + 'or sifra_dok = ' + cast(@VratVoMag2 as varchar(5)) + ' )
  59458.     GROUP BY Sifra_Art '  --, DokCena
  59459.     Exec(@SSQL)
  59460.  
  59461.     UPDATE #TmpDist SET Vrat_Toplo = S.Kolic
  59462.     FROM #TmpKolic S 
  59463.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND (S.Sifra_Art<@Art_Od  or S.Sifra_Art>@Art_Do)        --toplo
  59464.  
  59465.     UPDATE #TmpDist SET Vrat_Ladno = S.Kolic
  59466.     FROM #TmpKolic S 
  59467.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do    --ladno
  59468.  
  59469.     UPDATE #TmpDist SET Cena = S.DokCena
  59470.     FROM #TmpKolic S 
  59471.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND #TmpDist.Cena IS NULL
  59472.  
  59473.     UPDATE #TmpDist SET Cena = S.DokCena
  59474.     FROM #TmpKolic S 
  59475.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  59476.     DELETE FROM #TmpKolic
  59477.  
  59478.     ----------------------------------- prod. na faktura -----------------------------------------------
  59479.     Set @SSQL = ' INSERT INTO #TmpKolic SELECT Sifra_Art, max(DokCena), SUM(Kolic), 0
  59480.     FROM Stavr WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59481.     AND Sifra_OE In ( ' + @Koi_Oe + ') AND Sifra_Dok IN (85,' + cast(@Faktura as varchar(5)) + ')
  59482.     GROUP BY Sifra_Art '   --, DokCena                85 dod.zaradi ST
  59483.     Exec(@SSQL)
  59484.  
  59485.     UPDATE #TmpDist SET Prod_Fakt = S.Kolic
  59486.     FROM #TmpKolic S 
  59487.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  59488.  
  59489.     UPDATE #TmpDist SET Cena = S.DokCena
  59490.     FROM #TmpKolic S 
  59491.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND #TmpDist.Cena IS NULL
  59492.     DELETE FROM #TmpKolic
  59493.  
  59494.     ---------------------------------------- vrat. na faktura ---------------------------------------------
  59495.     Set @SSQL = 'INSERT INTO #TmpKolic SELECT Sifra_Art, max(DokCena), SUM(Kolic), 0
  59496.     FROM Stavr WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''
  59497.     AND Sifra_OE In (' + @Koi_Oe + ') AND Sifra_Dok IN (86,' + cast(@StornoFak as varchar(5)) + ')
  59498.     GROUP BY Sifra_Art'  --, DokCena
  59499.     Exec (@SSQL)
  59500.  
  59501.     UPDATE #TmpDist SET Vrat_Fakt = S.Kolic
  59502.     FROM #TmpKolic S 
  59503.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art > @Art_Od  AND S.Sifra_Art < @Art_Do
  59504.  
  59505.     UPDATE #TmpDist SET Vrat_Fakt = S.Kolic
  59506.     FROM #TmpKolic S 
  59507.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art  AND (S.Sifra_Art<@Art_Od or S.Sifra_Art>@Art_Do)
  59508.  
  59509.     UPDATE #TmpDist SET Cena = S.DokCena
  59510.     FROM #TmpKolic S 
  59511.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art > @Art_Od AND S.Sifra_Art < @Art_Do AND #TmpDist.Cena IS NULL
  59512.  
  59513.     UPDATE #TmpDist SET Cena = S.DokCena
  59514.     FROM #TmpKolic S 
  59515.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  59516.     DELETE FROM #TmpKolic
  59517.  
  59518.     --------------------------------------------- prod. vo gotovo ---------------------------------------------
  59519.     -- 20.03.2008 za Mak-Promet                        
  59520.     Set @SSQL = ' INSERT INTO #TmpKolic SELECT Sifra_Art, max(DokCena), SUM(Kolic), Sum(Kolic*DokCena)
  59521.     FROM Stavr WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59522.     AND Sifra_OE In ( ' + @Koi_Oe + ') AND Sifra_Dok IN (' + cast(@Gotovina as varchar(5)) + ')
  59523.     GROUP BY Sifra_Art '   --, DokCena    
  59524.     Exec(@SSQL)
  59525.  
  59526.     UPDATE #TmpDist SET Prod_Got = S.Kolic, Vred_Prod_Got = Vrednost
  59527.     FROM #TmpKolic S 
  59528.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  59529.  
  59530.     UPDATE #TmpDist SET Cena = S.DokCena
  59531.     FROM #TmpKolic S 
  59532.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND #TmpDist.Cena IS NULL
  59533.     DELETE FROM #TmpKolic
  59534.     
  59535.     ------------------------------------------- vrat. vo Gotovo --------------------------------------------------
  59536.     Set @SSQL = 'INSERT INTO #TmpKolic SELECT Sifra_Art, max(DokCena), SUM(Kolic), Sum(Kolic*DokCena)        
  59537.     FROM Stavr WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''
  59538.     AND Sifra_OE In (' + @Koi_Oe + ') AND Sifra_Dok IN (' + cast(@StornoGot as varchar(5)) + ')
  59539.     GROUP BY Sifra_Art'  --, DokCena
  59540.     Exec (@SSQL)
  59541.  
  59542.     UPDATE #TmpDist SET Vrat_Got = S.Kolic, Vred_Vrat_Got = Vrednost
  59543.     FROM #TmpKolic S 
  59544.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art > @Art_Od  AND S.Sifra_Art < @Art_Do
  59545.  
  59546.     UPDATE #TmpDist SET Vrat_Got = S.Kolic
  59547.     FROM #TmpKolic S 
  59548.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art  AND (S.Sifra_Art<@Art_Od or S.Sifra_Art>@Art_Do)
  59549.  
  59550.     UPDATE #TmpDist SET Cena = S.DokCena
  59551.     FROM #TmpKolic S 
  59552.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art > @Art_Od AND S.Sifra_Art < @Art_Do AND #TmpDist.Cena IS NULL
  59553.  
  59554.     UPDATE #TmpDist SET Cena = S.DokCena
  59555.     FROM #TmpKolic S 
  59556.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  59557.     DELETE FROM #TmpKolic
  59558.     -- do ovde za Mak - Promet 20.03.2008 --------------------------------------------------------------------
  59559.  
  59560.     UPDATE #TmpDist SET Cena =0 WHERE Cena IS NULL 
  59561.     UPDATE #TmpDist SET Priem_OdMag =0 WHERE Priem_OdMag IS NULL 
  59562.     UPDATE #TmpDist SET Vrat_Toplo =0 WHERE Vrat_Toplo IS NULL 
  59563.     UPDATE #TmpDist SET Prod_Fakt =0 WHERE Prod_Fakt IS NULL
  59564.     UPDATE #TmpDist SET Vrat_Fakt =0 WHERE Vrat_Fakt IS NULL 
  59565.     UPDATE #TmpDist SET Vrat_Ladno =0 WHERE Vrat_Ladno IS NULL
  59566.     UPDATE #TmpDist SET Prod_Got =0 WHERE Prod_Got IS NULL
  59567.     UPDATE #TmpDist SET Vrat_Got =0 WHERE Vrat_Got IS NULL 
  59568.     UPDATE #TmpDist SET Vred_Prod_Got =0 WHERE Prod_Got IS NULL
  59569.     UPDATE #TmpDist SET Vred_Vrat_Got =0 WHERE Vrat_Got IS NULL 
  59570.  
  59571.     SELECT Sifra_Art, ImeArt, Cena, ABS(Priem_OdMag) Priem_OdMag, ABS(Vrat_Toplo) Vrat_Toplo,
  59572.     ABS(Prod_Fakt) Prod_Fakt, ABS(Vrat_Fakt) Vrat_Fakt, ABS(Vrat_Ladno) Vrat_Ladno,
  59573.     ABS(Prod_Got) Prod_Got, ABS(Vrat_Got) Vrat_Got, Abs(Vred_Prod_Got) Vred_Prod_Got, ABS(Vred_Vrat_Got) Vred_Vrat_Got
  59574.     FROM #TmpDist 
  59575.     WHERE (Priem_OdMag<>0 or Vrat_Toplo<>0 or Prod_Fakt<>0 or Vrat_Fakt<>0 or Vrat_Ladno<>0 or Prod_Got<>0 or Vrat_Got<>0)
  59576.               and sifrA_art <> @Elim_Art1 and sifrA_art <> @Elim_Art2
  59577.     ORDER BY sifra_Art
  59578.  
  59579. Go
  59580. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzadistr_zitocentar]'))
  59581. drop procedure [dbo].[sp_izvzadistr_zitocentar]
  59582.  
  59583. Go
  59584.  
  59585.  
  59586.  
  59587. CREATE                  PROCEDURE [dbo].[sp_IzvZaDistr_ZitoCentar]
  59588.     @Koi_Oe    Varchar(300),
  59589.     @Datum_Od    smalldatetime,
  59590.     @Datum_Do    SmallDateTime,
  59591.     @KojIzv    char(1) = 'F'
  59592. AS
  59593.     Declare @SSQL as varchar(8000)
  59594.     Declare @PriemOdMag    smallint
  59595.     Declare @VratVoMag    smallint
  59596.     Declare @VratVoMag2    smallint
  59597.     Declare @Faktura    smallint
  59598.     Declare @StornoFak    smallint
  59599.     Declare @UplDist    smallint
  59600.     Declare @Shift        int
  59601.     Declare @Art_Od    char(6)    
  59602.     Declare @Art_Do    char(6)
  59603.     Declare @LenShift    int
  59604.     Declare @Elim_Art1    char(6)
  59605.     Declare @Elim_Art2    char(6)
  59606.     Declare @Gotovina    char(6)
  59607.     Declare @StornoGot    char(6)
  59608.  
  59609.     Set @Gotovina = '82'     -- Sega za sega fiksno - kke treba da se citaat od konfig
  59610.     Set @StornoGot = '84'
  59611.     Set @Elim_art1 = '002001'
  59612.     Set @Elim_art2 = '002002'
  59613.  
  59614.     SELECT @PriemOdMag = Pren_fix_plus, @VratVoMag=Pren_fix_minus, @VratVoMag2=Pren_Fix_Minus2, @Faktura=Ispr_Fix_plus, @StornoFak=Ispr_Fix_Minus, 
  59615.     @UplDist= Fin_Upl_Distr, @Shift = Ladno_Shift FROM Konfig
  59616.     if @Shift IS NULL
  59617.         Begin
  59618.             SET @Art_Od = '001000'    
  59619.             SET @Art_Do = '002000'
  59620.         End
  59621.     Else
  59622.         Begin
  59623.             SET @LenShift = Len(cast(@Shift as varchar(6)))
  59624.             SET @Art_Od    = Replicate('0', 6-@LenShift) + cast(@Shift as varchar(6))
  59625.             SET @Art_Do    = Replicate('0', 6-@LenShift) + cast(@Shift*2 as varchar(6))
  59626.         End
  59627.  
  59628.  
  59629.     CREATE TABLE #TmpDist
  59630. (
  59631.     Sifra_Oe    smallint,
  59632.     Sifra_Art    varchar(20),
  59633.     ImeArt        varchar(40),
  59634.     Cena        decimal(18,6),
  59635.     Priem_OdMag    decimal(18,6),
  59636.     Vrat_Toplo    decimal(18,6),
  59637.     Vrat_Ladno    decimal(18,6),
  59638.     Prod_Fakt    decimal(18,6),
  59639.     Vrat_Fakt    decimal(18,6),
  59640.     Prod_Got    decimal(18,6),
  59641.     Vrat_Got    decimal(18,6)
  59642. )
  59643.  
  59644.     ---------------------------- priem od magacin ----------------------------------------
  59645.     Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Art, S.MagCena, SUM(S.Kolic)
  59646.             FROM Stavr S
  59647.             WHERE S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30))  + '''  AND S.Datum_Dok <=  ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59648.             AND S.Sifra_OE in (' + @Koi_Oe + ') AND S.Sifra_Dok = ' + cast(@PriemOdMag as varchar(5)) + '
  59649.             GROUP BY S.Sifra_Oe, S.Sifra_Art, S.MagCena '    --  Ah, ne smee, DokCena
  59650.     Insert Into #TmpDist (Sifra_Oe, Sifra_Art, Cena, Priem_OdMag) Exec(@SSQL)
  59651.     print @SSQL
  59652.  
  59653.     ------------------------------ vrateno vo magacin ------------------------------------
  59654.  
  59655.     Set @SSQL = ' Select S.Sifra_Oe, ''000'' + SubString(S.Sifra_Art,4,3), S.MagCena, 
  59656.             SUM(Case When S.Sifra_Art < ''' + @Art_Od + ''' Or S.Sifra_Art > ''' + @Art_Do + ''' Then S.Kolic Else 0 End) VratToplo,
  59657.             SUM(Case When S.Sifra_Art > ''' + @Art_Od + ''' And S.Sifra_Art < ''' + @Art_Do + ''' Then S.Kolic Else 0 End) VratLadno
  59658.             FROM Stavr S 
  59659.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art
  59660.             WHERE S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30))  + '''  AND S.Datum_Dok <=  ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59661.             AND S.Sifra_OE in ( ' + @Koi_Oe + ' ) AND (S.Sifra_Dok = ' + cast(@VratVoMag as  varchar(5)) + ' Or S.Sifra_Dok = ' + cast(@VratVoMag2 as varchar(5)) + ' )
  59662.             GROUP BY S.Sifra_Oe, ''000'' + SubString(S.Sifra_Art,4,3), S.MagCena '  --, DokCena
  59663.     Insert Into #TmpDist (Sifra_Oe, Sifra_Art, Cena, Vrat_Toplo, Vrat_Ladno) Exec(@SSQL)
  59664. print @SSQL
  59665.  
  59666.  
  59667.     ----------------------------------- prod. na faktura -----------------------------------------------
  59668.     Set @SSQL = ' SELECT S.Sifra_Oe, S.Sifra_Art, S.DokCena, SUM(S.Kolic)
  59669.             FROM Stavr S 
  59670.             WHERE S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59671.             AND S.Sifra_OE In ( ' + @Koi_Oe + ') AND S.Sifra_Dok IN (85,' + cast(@Faktura as varchar(5)) + ')
  59672.             GROUP BY S.Sifra_Oe, S.Sifra_Art, S.DokCena '   --, DokCena                85 dod.zaradi ST
  59673.     Insert Into #TmpDist(Sifra_Oe, Sifra_Art, Cena, Prod_Fakt) Exec(@SSQL)
  59674.     
  59675.     ---------------------------------------- vrat. na faktura ---------------------------------------------
  59676.     Set @SSQL = ' SELECT S.Sifra_Oe, ''000'' + SubString(S.Sifra_Art,4,3), S.DokCena, SUM(S.Kolic)
  59677.             FROM Stavr S 
  59678.             WHERE S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59679.             AND S.Sifra_OE In (' + @Koi_Oe + ') AND S.Sifra_Dok IN (86,' + cast(@StornoFak as varchar(5)) + ')
  59680.             GROUP BY S.Sifra_Oe, ''000'' + SubString(S.Sifra_Art,4,3), S.DokCena '
  59681.     Insert Into #TmpDist(Sifra_Oe, Sifra_Art, Cena, Vrat_Fakt) Exec(@SSQL)
  59682.  
  59683.     --------------------------------------------- prod. vo gotovo ---------------------------------------------
  59684.     -- 20.03.2008 za Mak-Promet                        
  59685.     Set @SSQL = ' SELECT S.Sifra_Oe, S.Sifra_Art, K.DogCena, SUM(S.Kolic)
  59686.             FROM Stavr S 
  59687.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art
  59688.             WHERE S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59689.             AND S.Sifra_OE In ( ' + @Koi_Oe + ') AND S.Sifra_Dok IN (' + cast(@Gotovina as varchar(5)) + ')
  59690.             GROUP BY S.Sifra_Oe, S.Sifra_Art, K.DogCena ' 
  59691.     Insert Into #TmpDist(Sifra_Oe, Sifra_Art, Cena, Prod_Got) Exec(@SSQL)
  59692.  
  59693.     ------------------------------------------- vrat. vo Gotovo --------------------------------------------------
  59694.     Set @SSQL = ' SELECT S.Sifra_Oe, ''000'' + SubString(S.Sifra_Art,4,3), S.DokCena, SUM(S.Kolic)
  59695.             FROM Stavr S 
  59696.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art
  59697.             WHERE S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  AND S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59698.             AND Sifra_OE In (' + @Koi_Oe + ') AND Sifra_Dok IN (' + cast(@StornoGot as varchar(5)) + ')
  59699.             GROUP BY S.Sifra_Oe, ''000'' + SubString(S.Sifra_Art,4,3), S.DokCena '
  59700.     Insert Into #TmpDist(Sifra_Oe, Sifra_Art, Cena, Vrat_Got) Exec(@SSQL)
  59701.  
  59702.     UPDATE #TmpDist SET Priem_OdMag =0 WHERE Priem_OdMag IS NULL 
  59703.     UPDATE #TmpDist SET Vrat_Toplo =0 WHERE Vrat_Toplo IS NULL 
  59704.     UPDATE #TmpDist SET Prod_Fakt =0 WHERE Prod_Fakt IS NULL
  59705.     UPDATE #TmpDist SET Vrat_Fakt =0 WHERE Vrat_Fakt IS NULL 
  59706.     UPDATE #TmpDist SET Vrat_Ladno =0 WHERE Vrat_Ladno IS NULL
  59707.     UPDATE #TmpDist SET Prod_Got =0 WHERE Prod_Got IS NULL
  59708.     UPDATE #TmpDist SET Vrat_Got =0 WHERE Vrat_Got IS NULL 
  59709.  
  59710.  
  59711.     If @KojIzv = 'F'
  59712.         Select T.Sifra_Oe, O.ImeOrg, Sum(T.Priem_OdMag*T.Cena) Priem_OdMag, Sum(T.Vrat_Toplo*T.Cena) + Sum(T.Vrat_Ladno*T.Cena) Vrateno, Sum(T.Prod_Fakt*T.Cena) Prod_Fakt, 
  59713.             Sum(Priem_OdMag*T.Cena+Vrat_Toplo*T.Cena+Vrat_Ladno*T.Cena-Prod_Fakt*T.Cena) ProdGotovo
  59714.         From #TmpDist T
  59715.         Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  59716.         Left Outer Join Orged O On O.Sifra_Oe = T.Sifra_Oe
  59717.         Group By T.Sifra_Oe, O.ImeOrg
  59718.     Else
  59719.     Begin
  59720.         Create Table #Got
  59721.         (
  59722.             Sifra_Oe    smallint,
  59723.             Sifra_Art    smallint,
  59724.             GotovinaZaUplata decimal(18,4)
  59725.         )
  59726.  
  59727.         Insert Into #Got 
  59728.         Select Sifra_Oe, Sifra_Art, Sum(Priem_OdMag*T.Cena+Vrat_Toplo*T.Cena+Vrat_Ladno*T.Cena-Prod_Fakt*T.Cena)
  59729.         From #TmpDist T
  59730.         Group By Sifra_Oe, Sifra_Art
  59731.  
  59732.         Create Table #Vrat
  59733.         (
  59734.             Sifra_Oe    smallint,
  59735.             Sifra_Art    smallint,
  59736.             Zadolzenie    decimal(18,4),
  59737.             Vrateno        decimal(18,4),
  59738.             ProcVrat    decimal(18,4)    
  59739.         )
  59740.  
  59741.         Insert Into #Vrat 
  59742.         Select Sifra_Oe, Sifra_Art, Sum(Priem_OdMag), Sum(Vrat_Toplo+Vrat_Ladno), 0
  59743.         From #TmpDist T
  59744.         Group By Sifra_Oe, Sifra_Art
  59745.  
  59746.         Update #Vrat Set ProcVrat = (Case When Zadolzenie <> 0 Then Vrateno/Zadolzenie*100*-1 Else 0 End)
  59747.  
  59748.         Select T.Sifra_Oe, O.ImeOrg, T.Sifra_Art, K.ImeArt, T.Cena, 
  59749.             Sum(T.Priem_OdMag) Priem_OdMag, Sum(T.Priem_OdMag*T.Cena) Priem_OdMagVred, 
  59750.             Sum(T.Vrat_Toplo) Vrat_Toplo, Sum(T.Vrat_Toplo*T.Cena) Vrat_ToploVred, 
  59751.             Sum(T.Vrat_Ladno) Vrat_Ladno, Sum(T.Vrat_Ladno*T.Cena) Vrat_LadnoVred,
  59752.             Sum(T.Prod_Fakt) Prod_Fakt, Sum(T.Prod_Fakt*T.Cena) Prod_FaktVred, 
  59753.             Sum(T.Vrat_Fakt) Vrat_Fakt, Sum(T.Vrat_Fakt*T.Cena) Vrat_FaktVred, 
  59754.             Sum(T.Prod_Got) Prod_Got, Sum(T.Prod_Got*T.Cena) Prod_GotVred, 
  59755.             Sum(T.Vrat_Got) Vrat_Got, Sum(T.Vrat_Got*T.Cena) Vrat_GotVred,
  59756.             Sum(T.Vrat_Toplo)  + Sum(T.Vrat_Ladno) Vrat_Mag,
  59757.             Sum(T.Vrat_Toplo*T.Cena) + Sum(T.Vrat_Ladno*T.Cena) Vrat_MagVred,
  59758.             G.GotovinaZaUplata, V.ProcVrat, O.ImeOrg
  59759.         From #TmpDist T
  59760.         Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  59761.         Left Outer Join #Got G ON G.Sifra_Oe=T.Sifra_Oe And G.Sifra_Art=T.Sifra_Art
  59762.         Left Outer Join #Vrat V ON V.Sifra_Oe=T.Sifra_Oe And V.Sifra_Art=T.Sifra_Art
  59763.         Left Outer Join OrgEd O ON O.Sifra_Oe = T.Sifra_Oe
  59764.         Group By T.Sifra_Oe, O.ImeOrg, T.Sifra_Art, K.ImeArt, T.Cena, G.GotovinaZaUplata, V.ProcVrat
  59765.     End
  59766.  
  59767.  
  59768. --inner join OrgEd O on O.Sifra_Oe = S.Sifra_Oe
  59769. Go
  59770. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzadistrzv]'))
  59771. drop procedure [dbo].[sp_izvzadistrzv]
  59772.  
  59773. Go
  59774. CREATE                 PROCEDURE sp_IzvZaDistrZV
  59775.     @Koi_Oe    Varchar(300),
  59776.     @Datum_Od    smalldatetime,
  59777.     @Datum_Do    SmallDateTime,
  59778.     @Daden_Promet decimal(18,6)= 0 OUTPUT
  59779. AS
  59780.     Declare @SSQL as varchar(8000)
  59781.     Declare @PriemOdMag    smallint
  59782.     Declare @VratVoMag    smallint
  59783.     Declare @VratVoMag2    smallint
  59784.     Declare @Faktura    smallint
  59785.     Declare @StornoFak    smallint
  59786.     Declare @Gotovo    smallint
  59787.     Declare @StornoGot    smallint
  59788.     Declare @UplDist    smallint
  59789.     Declare @Shift        int
  59790.     Declare @Art_Od    varchar(20)    
  59791.     Declare @Art_Do    varchar(20)
  59792.     Declare @LenShift    int
  59793.     Declare @Elim_Art1    char(6)
  59794.     Declare @Elim_Art2    char(6)
  59795. --        set @Elim_art1 = '002001'    -- korpi
  59796. --        set @Elim_art2 = '002002'    -- lodni
  59797.     SELECT @PriemOdMag = Pren_fix_plus, 
  59798.         @VratVoMag=Pren_fix_minus, 
  59799.         @VratVoMag2=Pren_Fix_Minus2, 
  59800.         @Faktura=Ispr_Fix_plus, 
  59801.         @StornoFak=Ispr_Fix_Minus, 
  59802.         @UplDist= Fin_Upl_Distr, 
  59803.         @Shift = Ladno_Shift 
  59804.     FROM Konfig
  59805.     SELECT @Gotovo=TipDok1, 
  59806.          @StornoGot=TipDok2
  59807.     From SkrDok
  59808.     WHERE SkrOznaka = 'a-dd-gispr-dis'
  59809. print     '@PriemOdMag = Pren_fix_plus' 
  59810. print     @PriemOdMag 
  59811. print    '@VratVoMag=Pren_fix_minus' 
  59812. print    @VratVoMag
  59813. print    '@VratVoMag2=Pren_Fix_Minus2' 
  59814. print    @VratVoMag2
  59815. print    '@Faktura=Ispr_Fix_plus' 
  59816. print    @Faktura
  59817. print    '@StornoFak=Ispr_Fix_Minus' 
  59818. print    @StornoFak
  59819. print    '@UplDist= Fin_Upl_Distr'
  59820. print    @UplDist
  59821. print    '@Shift = Ladno_Shift '
  59822. print    @Shift
  59823.     ------------------------------------------------------ Sifri za ladno -------------------------------------------------------------------------
  59824.     If @Shift IS NULL
  59825.         Begin
  59826.             SET @Art_Od = '001000'    
  59827.             SET @Art_Do = '002000'
  59828.         End
  59829.     Else
  59830.         Begin
  59831.                 SET @LenShift = Len(cast(@Shift as varchar(7)))
  59832.                 IF @LenShift > 6 
  59833.                     Begin
  59834.                     SET @Art_Od    = cast(@Shift as varchar(7))
  59835.                     SET @Art_Do    = cast(@Shift*2 as varchar(7))
  59836.                     End
  59837.                 Else
  59838.                     Begin
  59839.                     SET @Art_Od    = Replicate('0', 6-@LenShift) + cast(@Shift as varchar(6))
  59840.                     SET @Art_Do    = Replicate('0', 6-@LenShift) + cast(@Shift*2 as varchar(6))
  59841.                     End
  59842.         End
  59843.     ------------------------------------------------------ Uplata od distributer -------------------------------------------------------------
  59844.     Set @SSQL = 'Select Sum(pobaruva) FROM AnFinDok
  59845.     WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  59846.     AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''
  59847.     AND Sifra_OE in (' + @Koi_Oe + ') AND Sifra_Dok = ' + cast(@UplDist as varchar(5))
  59848.     Create Table #Rez
  59849.         (
  59850.          Vrednost     decimal(18,6)
  59851.         )
  59852.     Insert Into #Rez Exec(@SSQL)
  59853.     Select @Daden_Promet=Vrednost From #Rez
  59854.     --------------------------------------------------------- PROMET---------------------------------------------------------------------------
  59855.     CREATE TABLE #TmpDist
  59856. (    Sifra_Art        varchar(20),
  59857.     ImeArt            varchar(40),
  59858.     Cena            decimal(18,6),
  59859.     Priem_OdMag        decimal(18,6),
  59860.     Priem_OdMagLad    decimal(18,6),
  59861.     Vrat_Toplo        decimal(18,6),
  59862.     Vrat_Ladno        decimal(18,6),
  59863.     Prod_Fakt        decimal(18,6),
  59864.     Prod_FaktLad        decimal(18,6),
  59865.     Vrat_Fakt        decimal(18,6),
  59866.     Vrat_FaktLad        decimal(18,6),
  59867.     Prod_Got        decimal(18,6),
  59868.     Prod_GotLad        decimal(18,6),
  59869.     Vrat_Got        decimal(18,6),
  59870.     Vrat_GotLad        decimal(18,6)
  59871. )
  59872.     INSERT INTO #TmpDist (Sifra_Art, ImeArt) 
  59873.     SELECT Sifra_Art, ImeArt 
  59874.     FROM KatArt
  59875.     WHERE (Case When Len(Sifra_Art) < 7 Then '0'+Sifra_Art Else Sifra_Art End) <= @Art_Do
  59876.     CREATE TABLE #TmpKolic
  59877. (    Sifra_Art    varchar(20),
  59878.     DokCena    decimal(18,6),
  59879.     Kolic        decimal(18,6)
  59880. )
  59881.     ------------------------------------------------------ Priem od magacin ---------------------------------------------------------------------
  59882.     Set @SSQL = ' INSERT INTO #TmpKolic 
  59883.     SELECT Sifra_Art, max(DokCena), SUM(Kolic)
  59884.     FROM Stavr 
  59885.     WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30))  + '''  
  59886.     AND Datum_Dok <=  ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59887.     AND Sifra_OE in (' + @Koi_Oe + ') 
  59888.     AND Sifra_Dok = ' + cast(@PriemOdMag as varchar(5)) + '
  59889.     GROUP BY Sifra_Art '    --  Ah, ne smee, DokCena
  59890.     Exec (@SSQL)    
  59891.     UPDATE #TmpDist 
  59892.     SET Cena = S.DokCena, Priem_OdMag = S.Kolic
  59893.     FROM #TmpKolic S 
  59894.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  59895.         AND ((Case When Len(S.Sifra_Art) < 7 Then '0'+S.Sifra_Art Else S.Sifra_Art End)<@Art_Od  or S.Sifra_Art>@Art_Do)    --toplo
  59896.     UPDATE #TmpDist 
  59897.     SET Cena = S.DokCena, Priem_OdMagLad = S.Kolic
  59898.     FROM #TmpKolic S 
  59899.     WHERE #TmpDist.Sifra_Art = Substring(S.Sifra_Art, 2, 6) 
  59900.         AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do    --ladno
  59901.     DELETE FROM #TmpKolic
  59902.     ------------------------------------------------------ Vrateno vo magacin ---------------------------------------------------------------------
  59903.     Set @SSQL = 'INSERT INTO #TmpKolic 
  59904.     SELECT Sifra_Art, max(DokCena), SUM(Kolic)
  59905.     FROM Stavr WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  59906.     AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''  
  59907.     AND Sifra_OE in ( ' + @Koi_Oe + ' ) 
  59908.     AND (Sifra_Dok = ' + cast(@VratVoMag as  varchar(5)) + 'or sifra_dok = ' + cast(@VratVoMag2 as varchar(5)) + ' )
  59909.     GROUP BY Sifra_Art '  --, DokCena
  59910.     Exec(@SSQL)
  59911.     UPDATE #TmpDist 
  59912.     SET Vrat_Toplo = S.Kolic
  59913.     FROM #TmpKolic S 
  59914.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art 
  59915.         AND ((Case When Len(S.Sifra_Art) < 7 Then '0'+S.Sifra_Art Else S.Sifra_Art End)<@Art_Od  or S.Sifra_Art>@Art_Do)    --toplo
  59916.     UPDATE #TmpDist 
  59917.     SET Vrat_Ladno = S.Kolic
  59918.     FROM #TmpKolic S 
  59919.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art --Substring(S.Sifra_Art, 2, 6) 
  59920.         AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do    --ladno
  59921.     UPDATE #TmpDist 
  59922.     SET Cena = S.DokCena
  59923.     FROM #TmpKolic S 
  59924.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art     AND #TmpDist.Cena IS NULL
  59925.     UPDATE #TmpDist 
  59926.     SET Cena = S.DokCena
  59927.     FROM #TmpKolic S 
  59928.     WHERE #TmpDist.Sifra_Art = Substring(S.Sifra_Art, 2, 6) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  59929.     DELETE FROM #TmpKolic
  59930.     -------------------------------------------------------- Prodadeno na faktura ---------------------------------------------------------------------
  59931.     Set @SSQL = ' INSERT INTO #TmpKolic 
  59932.     SELECT Sifra_Art, max(DokCena), SUM(Kolic)            
  59933.     FROM Stavr 
  59934.     WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  59935.     AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59936.     AND Sifra_OE In ( ' + @Koi_Oe + ') 
  59937.     AND (Sifra_Dok = ' + cast(@Faktura as varchar(5)) + ' Or Sifra_Dok = ' + cast(@StornoFak as varchar(5)) + ' Or Sifra_Dok=85 Or Sifra_Dok=86)
  59938.     AND ((Case When Len(Sifra_Art) < 7 Then ''0''+ Sifra_Art Else Sifra_Art End)< ' + @Art_Od + ' or Sifra_Art> ' + @Art_Do + ')
  59939.     GROUP BY Sifra_Art '   --, DokCena
  59940.     Exec(@SSQL)
  59941.     UPDATE #TmpDist 
  59942.     SET Prod_Fakt = S.Kolic
  59943.     FROM #TmpKolic S 
  59944.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  59945.         AND ((Case When Len(S.Sifra_Art) < 7 Then '0'+S.Sifra_Art Else S.Sifra_Art End)<@Art_Od  or S.Sifra_Art>@Art_Do)    --toplo
  59946.     UPDATE #TmpDist 
  59947.     SET Prod_FaktLad = S.Kolic
  59948.     FROM #TmpKolic S 
  59949.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art --Substring(S.Sifra_Art, 2, 6) 
  59950.         AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do    --ladno
  59951.     UPDATE #TmpDist 
  59952.     SET Cena = S.DokCena
  59953.     FROM #TmpKolic S 
  59954.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND #TmpDist.Cena IS NULL
  59955.     UPDATE #TmpDist 
  59956.     SET Cena = S.DokCena
  59957.     FROM #TmpKolic S 
  59958.     WHERE #TmpDist.Sifra_Art = Substring(S.Sifra_Art, 2, 6) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  59959.     DELETE FROM #TmpKolic
  59960.     ----------------------------------------------------------- Vreteno na faktura ---------------------------------------------------------------------
  59961.     Set @SSQL = 'INSERT INTO #TmpKolic 
  59962.     SELECT Sifra_Art, max(DokCena), SUM(Kolic)            
  59963.     FROM Stavr 
  59964.     WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  59965.     AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''
  59966.     AND Sifra_OE In (' + @Koi_Oe + ') 
  59967.     AND (Sifra_Dok = ' + cast(@Faktura as varchar(5)) + ' Or Sifra_Dok = ' + cast(@StornoFak as varchar(5)) + ' Or Sifra_Dok=85 Or Sifra_Dok=86)
  59968.     AND Sifra_Art > ' + @Art_Od + 'AND Sifra_Art < ' + @Art_Do + '
  59969.     GROUP BY Sifra_Art'  --, DokCena
  59970.     Exec (@SSQL)
  59971.     UPDATE #TmpDist 
  59972.     SET Vrat_Fakt = S.Kolic
  59973.     FROM #TmpKolic S 
  59974.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  59975.         AND ((Case When Len(S.Sifra_Art) < 7 Then '0'+S.Sifra_Art Else S.Sifra_Art End)<@Art_Od  or S.Sifra_Art>@Art_Do)    --toplo
  59976. --        AND '0'+S.Sifra_Art > @Art_Od  AND S.Sifra_Art < @Art_Do
  59977.     UPDATE #TmpDist 
  59978.     SET Vrat_FaktLad = S.Kolic
  59979.     FROM #TmpKolic S 
  59980.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art --Substring(S.Sifra_Art, 2, 6) 
  59981.         AND (S.Sifra_Art>@Art_Od or S.Sifra_Art<@Art_Do)
  59982.     UPDATE #TmpDist 
  59983.     SET Cena = S.DokCena
  59984.     FROM #TmpKolic S 
  59985.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND #TmpDist.Cena IS NULL
  59986. --    WHERE #TmpDist.Sifra_Art = Substring(S.Sifra_Art, 2, 6) AND S.Sifra_Art > @Art_Od AND S.Sifra_Art < @Art_Do AND #TmpDist.Cena IS NULL
  59987.     UPDATE #TmpDist 
  59988.     SET Cena = S.DokCena
  59989.     FROM #TmpKolic S 
  59990.     WHERE #TmpDist.Sifra_Art = Substring(S.Sifra_Art, 2, 6) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  59991.     DELETE FROM #TmpKolic
  59992.     -------------------------------------------------------- Prodadeno vo gotovo ---------------------------------------------------------------------
  59993.     Set @SSQL = ' INSERT INTO #TmpKolic 
  59994.     SELECT Sifra_Art, max(DokCena), SUM(Kolic)            
  59995.     FROM Stavr 
  59996.     WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  59997.     AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' 
  59998.     AND Sifra_OE In ( ' + @Koi_Oe + ') 
  59999.     AND (Sifra_Dok = ' + cast(@Gotovo as varchar(5)) + ' Or Sifra_Dok = ' + cast(@StornoGot as varchar(5)) + ')
  60000.     AND ((Case When Len(Sifra_Art) < 7 Then ''0''+ Sifra_Art Else Sifra_Art End)< ' + @Art_Od + ' or Sifra_Art> ' + @Art_Do + ')
  60001.     GROUP BY Sifra_Art '   --, DokCena
  60002.     Exec(@SSQL)
  60003.     UPDATE #TmpDist 
  60004.     SET Prod_Got = S.Kolic
  60005.     FROM #TmpKolic S 
  60006.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60007.         AND ((Case When Len(S.Sifra_Art) < 7 Then '0'+S.Sifra_Art Else S.Sifra_Art End)<@Art_Od  or S.Sifra_Art>@Art_Do)    --toplo
  60008.     UPDATE #TmpDist 
  60009.     SET Prod_GotLad = S.Kolic
  60010.     FROM #TmpKolic S 
  60011.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art --Substring(S.Sifra_Art, 2, 6) 
  60012.         AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do    --ladno
  60013.     UPDATE #TmpDist 
  60014.     SET Cena = S.DokCena
  60015.     FROM #TmpKolic S 
  60016.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND #TmpDist.Cena IS NULL
  60017.     UPDATE #TmpDist 
  60018.     SET Cena = S.DokCena
  60019.     FROM #TmpKolic S 
  60020.     WHERE #TmpDist.Sifra_Art = Substring(S.Sifra_Art, 2, 6) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  60021.     DELETE FROM #TmpKolic
  60022.     ----------------------------------------------------------- Vreteno vo gotovo ---------------------------------------------------------------------
  60023.     Set @SSQL = 'INSERT INTO #TmpKolic 
  60024.     SELECT Sifra_Art, max(DokCena), SUM(Kolic)            
  60025.     FROM Stavr 
  60026.     WHERE Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + '''  
  60027.     AND Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + '''
  60028.     AND Sifra_OE In (' + @Koi_Oe + ') 
  60029.     AND (Sifra_Dok = ' + cast(@Gotovo as varchar(5)) + ' Or Sifra_Dok = ' + cast(@StornoGot as varchar(5)) + ') 
  60030.     AND Sifra_Art > ' + @Art_Od + 'AND Sifra_Art < ' + @Art_Do + '
  60031.     GROUP BY Sifra_Art'  --, DokCena
  60032.     Exec (@SSQL)
  60033.     UPDATE #TmpDist 
  60034.     SET Vrat_Got = S.Kolic
  60035.     FROM #TmpKolic S 
  60036.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60037.         AND ((Case When Len(S.Sifra_Art) < 7 Then '0'+S.Sifra_Art Else S.Sifra_Art End)<@Art_Od  or S.Sifra_Art>@Art_Do)    --toplo
  60038.     UPDATE #TmpDist 
  60039.     SET Vrat_GotLad = S.Kolic
  60040.     FROM #TmpKolic S 
  60041.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art --Substring(S.Sifra_Art, 2, 6) 
  60042.         AND S.Sifra_Art>@Art_Od And S.Sifra_Art<@Art_Do   --LADNO   -- Izmeneto 14.06.2006 g.k.
  60043. --    AND (S.Sifra_Art>@Art_Od or S.Sifra_Art<@Art_Do)   --LADNO
  60044.     UPDATE #TmpDist 
  60045.     SET Cena = S.DokCena
  60046.     FROM #TmpKolic S 
  60047.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND #TmpDist.Cena IS NULL
  60048.     UPDATE #TmpDist 
  60049.     SET Cena = S.DokCena
  60050.     FROM #TmpKolic S 
  60051.     WHERE #TmpDist.Sifra_Art = Substring(S.Sifra_Art, 2, 6) AND S.Sifra_Art>@Art_Od  AND S.Sifra_Art<@Art_Do  AND #TmpDist.Cena IS NULL
  60052.     DELETE FROM #TmpKolic
  60053.     UPDATE #TmpDist SET Cena =0 WHERE Cena IS NULL 
  60054.     UPDATE #TmpDist SET Priem_OdMag =0 WHERE Priem_OdMag IS NULL 
  60055.     UPDATE #TmpDist SET Priem_OdMagLad =0 WHERE Priem_OdMagLad IS NULL 
  60056.     UPDATE #TmpDist SET Vrat_Toplo =0 WHERE Vrat_Toplo IS NULL 
  60057.     UPDATE #TmpDist SET Prod_Fakt =0 WHERE Prod_Fakt IS NULL
  60058.     UPDATE #TmpDist SET Vrat_Fakt =0 WHERE Vrat_Fakt IS NULL 
  60059.     UPDATE #TmpDist SET Vrat_Ladno =0 WHERE Vrat_Ladno IS NULL
  60060.     UPDATE #TmpDist SET Prod_Got =0 WHERE Prod_Got IS NULL
  60061.     UPDATE #TmpDist SET Vrat_Got =0 WHERE Vrat_Got IS NULL 
  60062.     UPDATE #TmpDist SET Prod_FaktLad =0 WHERE Prod_FaktLad IS NULL
  60063.     UPDATE #TmpDist SET Vrat_FaktLad =0 WHERE Vrat_FaktLad IS NULL 
  60064.     UPDATE #TmpDist SET Prod_GotLad =0 WHERE Prod_GotLad IS NULL
  60065.     UPDATE #TmpDist SET Vrat_GotLad =0 WHERE Vrat_GotLad IS NULL 
  60066.     SELECT Sifra_Art, ImeArt, Cena,
  60067.         ABS(Priem_OdMag) Priem_OdMag, ABS(Priem_OdMagLad) Priem_OdMagLad, 
  60068.         ABS(Vrat_Toplo) Vrat_Toplo, ABS(Vrat_Ladno) Vrat_Ladno,
  60069.         ABS(Prod_Fakt) Prod_Fakt, ABS(Vrat_Fakt) Vrat_Fakt, 
  60070.         ABS(Prod_FaktLad) Prod_FaktLad, ABS(Vrat_FaktLad) Vrat_FaktLad, 
  60071.         ABS(Prod_Got) Prod_Got, ABS(Vrat_Got) Vrat_Got,
  60072.         ABS(Prod_GotLad) Prod_GotLad, ABS(Vrat_GotLad) Vrat_GotLad
  60073.     FROM #TmpDist 
  60074.     WHERE (Priem_OdMag<>0 or Vrat_Toplo<>0 or Prod_Fakt<>0 or Vrat_Fakt<>0 or Vrat_Ladno<>0 or Prod_Got<>0 or Vrat_Got<>0
  60075.             Or Prod_FaktLad<>0 or Vrat_FaktLad<>0 Or Prod_GotLad<>0 or Vrat_GotLad<>0)   
  60076.     ORDER BY sifra_Art
  60077.  
  60078.  
  60079. Go
  60080. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzafiksnitrosoci]'))
  60081. drop procedure [dbo].[sp_izvzafiksnitrosoci]
  60082.  
  60083. Go
  60084. CREATE      PROCEDURE sp_IzvZaFiksniTrosoci
  60085.     @Sifra_Oe     smallint,  
  60086.     @Grupa_Oe  varchar(6) = Null,
  60087.     @Datum_Od smalldatetime,
  60088.     @Datum_Do smalldatetime,
  60089.     @Broj_Dok_Od int,
  60090.     @Broj_Dok_Do int,
  60091.     @Artikal_Od  varchar(20), 
  60092.     @Artikal_Do  varchar(20),
  60093.     @Proiz_Sema smallint = Null
  60094. AS
  60095.     Declare @SSQL varchar(8000)
  60096.     Create Table #Pvo
  60097.     (
  60098.      Sifra_oe    smallint,
  60099.      Sifra_dok    smallint,        
  60100.      Broj_dok    int,
  60101.      Sifra_Art    varchar(20),
  60102.      Kolic        decimal(18,6)
  60103.     )
  60104.     Set @SSQL= ' Insert Into #Pvo
  60105.     Select R.Sifra_oe, D.Sifra_dok, S.Broj_dok, S.Sifra_art, S.Kolic 
  60106.     From Dokrabnal R
  60107.     Inner Join Dokr D on D.Dokrid=R.Dokrid
  60108.     Inner Join Stavr S on S.Dokrid=D.dokrid
  60109.     Where Tip_rabstav=''P'' '
  60110.     If @Sifra_Oe Is Not Null
  60111.         Set @SSQL=@SSQL + '    and R.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(5)) + ' '
  60112.      If @Grupa_Oe Is Not Null
  60113.         Set @SSQL=@SSQL + '    and R.Sifra_Oe in (select sifra_oe from SGrOrg Where Sif_GrOrg = ''' + @Grupa_Oe + ''') '
  60114.     If @Artikal_Od  IS NOT  NULL
  60115.         Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  60116.     If @Artikal_Do  IS NOT  NULL
  60117.         Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  60118.     If @Datum_Od Is Not Null
  60119.         Set @SSQL=@SSQL + '    and D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  60120.     If @Datum_Do Is Not Null
  60121.         Set @SSQL=@SSQL + '    and D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  60122.     If @Broj_Dok_Od Is Not Null
  60123.         Set @SSQL=@SSQL + '    and D.Broj_Dok >= ' + cast(@Broj_Dok_Od as varchar(6)) + ' '
  60124.     If @Broj_Dok_Do Is Not Null
  60125.         Set @SSQL=@SSQL + '    and D.Broj_Dok <= ' + cast(@Broj_Dok_Do as varchar(6)) + ' '
  60126.     Exec(@SSQL)
  60127. --select * from #pvo
  60128.     Create Table #Sostav
  60129.     (
  60130.      Sifra_oe    smallint,
  60131.      Sifra_dok    smallint,        
  60132.      Broj_dok    int,
  60133.      Sifra_Art    varchar(20),
  60134.      Kolic        decimal(18,6),
  60135.      Sifra_Sur    varchar(20),
  60136.      Ima_kolic    decimal(18,6),
  60137.      Cena        decimal(18,6),
  60138.      VkCena    decimal(18,6),
  60139.      VodeckiArtikal    char(1),
  60140.      KolicZbir    char(1)
  60141.     )
  60142.     Insert Into #Sostav 
  60143.     Select P.Sifra_oe, P.Sifra_dok, P.Broj_dok, P.Sifra_Art, P.Kolic, S.Sifra_sur, S.Ima_Kolic, S.Cena, S.VkCena, S.VodeckiArtikal, S.KolicZbir
  60144.     From #Pvo P
  60145.     Left Outer Join Sostav S On S.Sifra_Art = P.Sifra_Art
  60146.     Create Table #Sema
  60147.     (
  60148.      Sifra_oe    smallint,
  60149.      Sifra_dok    smallint,        
  60150.      Broj_dok    int,
  60151.      Sifra_Art    varchar(20),
  60152.      Kolic        decimal(18,6),
  60153.      Sifra_Tros    varchar(20),
  60154.      CenaTros    decimal(18,6),
  60155.      KolicTros    decimal(18,6),
  60156.      VkCenaTros    decimal(18,6)
  60157.     )
  60158.     Set @SSQL = ' Insert Into #Sema
  60159.     Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Sifra_art, Sum(S.Kolic), T.Sifra_Art as Sifra_Tros, T.Cena, Sum(S.Ima_Kolic), (T.Cena * Sum(S.Ima_Kolic))
  60160.     From #Sostav S, ProizvTrosFix T
  60161.     Where T.Proiz_Sema = ' + cast(@Proiz_Sema as varchar(5)) + ' and PoVodeckiArtikal = ''N'' and S.kolicZbir = ''D'' '
  60162.     If @Artikal_Od  IS NOT  NULL
  60163.         Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  60164.     If @Artikal_Do  IS NOT  NULL
  60165.         Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  60166.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Sifra_art, T.Sifra_Art, T.Cena '
  60167.     Exec (@SSQL)
  60168.     Set @SSQL = ' Insert Into #Sema
  60169.     Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Sifra_art, Sum(S.Kolic), T.Sifra_Art as Sifra_Tros, T.Cena, Sum(S.Ima_Kolic), (T.Cena * Sum(S.Ima_Kolic))
  60170.     From #Sostav S, ProizvTrosFix T
  60171.     Where T.Proiz_Sema = ' + cast(@Proiz_Sema as varchar(5)) + ' and PoVodeckiArtikal =''D'' and S.VodeckiArtikal = ''D'' '
  60172.     If @Artikal_Od  IS NOT  NULL
  60173.         Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  60174.     If @Artikal_Do  IS NOT  NULL
  60175.         Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  60176.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Sifra_art, T.Sifra_Art, T.Cena '
  60177.     Exec (@SSQL)
  60178. --    Select * from #Sostav
  60179.     Select S.Sifra_oe, O.ImeOrg, S.Sifra_dok, TD.ImeDok, S.Broj_dok, S.Sifra_Art, K.ImeArt, S.Kolic, S.Sifra_Tros, A.ImeArt ImeTros, 
  60180.         S.CenaTros, S.KolicTros, S.VkCenaTros, Round((S.Kolic*S.VkCenaTros),4) VkTros
  60181.     From #Sema S
  60182.     Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  60183.     Inner Join Katart A On A.Sifra_Art = S.Sifra_Tros
  60184.     Inner Join Orged O On O.Sifra_Oe = S.Sifra_Oe
  60185.     Inner Join TipDok TD On TD.Sifra_Dok=S.Sifra_Dok
  60186.  
  60187.  
  60188. Go
  60189. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzamag]'))
  60190. drop procedure [dbo].[sp_izvzamag]
  60191.  
  60192. Go
  60193.  
  60194.  
  60195. CREATE                  PROCEDURE [dbo].[sp_IzvZaMag]
  60196.     @Sifra_OE    Smallint,
  60197.     @Datum_Od    smalldatetime,
  60198.     @Datum_Do    SmallDateTime,
  60199.     @SoPocSost    char(1) = 'N'
  60200. AS
  60201.     Declare @ZapIzl    smallint
  60202.     Declare @Kalo        smallint
  60203.     Declare @Kalo2        smallint
  60204.     Declare @Reprez    smallint
  60205.     Declare @Faktura    smallint
  60206.     Declare @StornoFak    smallint
  60207.     Declare @Faktura1    smallint
  60208.     Declare @StornoFak1    smallint
  60209.     SELECT @ZapIzl = Ispr_fix_zap_Izlez, @Kalo=Ispr_fix_kalo, @Kalo2=Ispr_fix_kalo2, @Reprez=Ispr_Fix_Reprez, 
  60210.     @Faktura=Ispr_Fix_Fri_plus, @StornoFak=Ispr_Fix_Fri_Minus, @Faktura1=Ispr_Fix_Isp_plus, @StornoFak1=Ispr_Fix_Isp_Minus  FROM Konfig
  60211.     CREATE TABLE #TmpDist
  60212. (    Sifra_Art    varchar(20),
  60213.     ImeArt        varchar(40),
  60214.     PocSost    decimal(18,6),
  60215.     Vlez        decimal(18,6),
  60216.     Izl_Distr        decimal(18,6),
  60217.     Vrat_Distr    decimal(18,6),
  60218.     Izl_FaktRep    decimal(18,6),
  60219.     Vrat_Fakt    decimal(18,6),
  60220.     Izl_Zap        decimal(18,6),
  60221.     Kalo        decimal(18,6),
  60222.     OdRabNal    decimal(18,6)                    --dodadeno na 06.07.2011 MILAN
  60223. )
  60224.     CREATE TABLE #TmpPocS
  60225. (    Sifra_Art    varchar(20),
  60226.     PocSost    decimal(18,6)
  60227. )
  60228.     INSERT INTO #TmpDist (Sifra_Art, ImeArt) SELECT Sifra_Art, ImeArt FROM KatArt 
  60229.     WHERE Sifra_Art IN (SELECT DISTINCT Sifra_Art FROM Stavr WHERE Datum_Dok <= @Datum_Do)
  60230.     If @SoPocSost = 'D'
  60231.     INSERT INTO #TmpPocS (Sifra_Art, PocSost) SELECT DISTINCT Sifra_Art, 0 FROM Stavr WHERE Datum_Dok <= @Datum_Od 
  60232.     CREATE TABLE #TmpKolic
  60233. (    Sifra_Art    varchar(20),
  60234.     Kolic        decimal(18,6)
  60235. )
  60236.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --VLEZ
  60237.     FROM Stavr WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do 
  60238.     AND Sifra_OE = @Sifra_OE AND VlIzl='V' AND (Sifra_Dok<>192 OR Sifra_Art<'001000')  --(Sifra_Dok<>192 OR Sifra_Art<'001000') dod.06.07.11 za ZL Ohr. Moze ke smeta na dr.mesto
  60239.     GROUP BY Sifra_Art  
  60240.  
  60241.     UPDATE #TmpDist SET Vlez = S.Kolic
  60242.     FROM #TmpKolic S 
  60243.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60244.  
  60245.     DELETE FROM #TmpKolic
  60246.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Izlez po distr.
  60247.     FROM Stavr WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do 
  60248.     AND Sifra_OE = @Sifra_OE AND VlIzl = 'I' AND ImaDodatna='D' AND Kolic > 0
  60249.     GROUP BY Sifra_Art 
  60250.  
  60251.     UPDATE #TmpDist SET Izl_Distr = S.Kolic
  60252.     FROM #TmpKolic S 
  60253.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art 
  60254.  
  60255.     DELETE FROM #TmpKolic
  60256.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Vrateno od distr.
  60257.     FROM Stavr WHERE (Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do 
  60258.     AND Sifra_OE = @Sifra_OE AND VlIzl = 'I' AND ImaDodatna='D' AND Kolic < 0) OR (Sifra_Dok=192 AND Sifra_Art>'001000')
  60259.     GROUP BY Sifra_Art   
  60260.     UPDATE #TmpDist SET Vrat_Distr = S.Kolic
  60261.     FROM #TmpKolic S 
  60262.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60263.  
  60264.     DELETE FROM #TmpKolic
  60265.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Izl. na faktura/reprez.
  60266.     FROM Stavr WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do         --PAZI FIKSIRANO
  60267.     AND Sifra_OE = @Sifra_OE AND (Sifra_Dok = @Faktura OR Sifra_Dok = @Faktura1 OR Sifra_Dok = @Reprez OR Sifra_Dok In (73, 93))
  60268.     GROUP BY Sifra_Art 
  60269.     UPDATE #TmpDist SET Izl_FaktRep = S.Kolic
  60270.     FROM #TmpKolic S 
  60271.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60272.  
  60273.     DELETE FROM #TmpKolic
  60274.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Vrat. na faktura
  60275.     FROM Stavr WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do         --PAZI FIKSIRANO
  60276.     AND Sifra_OE = @Sifra_OE AND (Sifra_Dok = @StornoFak OR Sifra_Dok = @StornoFak1 OR Sifra_Dok = 94)
  60277.     GROUP BY Sifra_Art 
  60278.     UPDATE #TmpDist SET Vrat_Fakt = S.Kolic
  60279.     FROM #TmpKolic S 
  60280.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60281.  
  60282.     DELETE FROM #TmpKolic
  60283.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Izlez po zapisnik
  60284.     FROM Stavr WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do 
  60285.     AND Sifra_OE = @Sifra_OE AND Sifra_Dok = @ZapIzl
  60286.     GROUP BY Sifra_Art 
  60287.     UPDATE #TmpDist SET Izl_Zap = S.Kolic
  60288.     FROM #TmpKolic S 
  60289.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60290.  
  60291.     DELETE FROM #TmpKolic
  60292.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --KALO
  60293.     FROM Stavr WHERE Datum_Dok >= @Datum_Od AND Datum_Dok <= @Datum_Do 
  60294.     AND Sifra_OE = @Sifra_OE AND (Sifra_Dok = @Kalo OR Sifra_Dok = @Kalo2)
  60295.     GROUP BY Sifra_Art 
  60296.     UPDATE #TmpDist SET Kalo = S.Kolic
  60297.     FROM #TmpKolic S 
  60298.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  60299.  
  60300.     DELETE FROM #TmpKolic
  60301.     INSERT INTO #TmpKolic                                        --RabNal
  60302.     SELECT    Sifra_Art, SUM(Kolic)
  60303.     FROM    RabNal R INNER JOIN
  60304.             StaRabNal S ON R.RabNalID = S.RabNalID
  60305.     WHERE    Datum_Otv >= @Datum_Od AND Datum_Otv <= @Datum_Do AND Sifra_OERab = @Sifra_OE
  60306.     GROUP BY Sifra_Art    
  60307.     UPDATE    #TmpDist SET OdRabNal = S.Kolic
  60308.     FROM    #TmpKolic S 
  60309.     WHERE    #TmpDist.Sifra_Art = S.Sifra_Art
  60310.     DELETE FROM #TmpKolic
  60311. -- SEGA ZA POCETNA SOSTOJBA
  60312. If @SoPocSost = 'D'
  60313. Begin
  60314.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --VLEZ
  60315.     FROM Stavr WHERE Datum_Dok < @Datum_Od AND Sifra_OE = @Sifra_OE AND VlIzl='V'
  60316.     GROUP BY Sifra_Art    
  60317.     UPDATE #TmpPocS SET PocSost = ABS(S.Kolic)
  60318.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art
  60319.     DELETE FROM #TmpKolic
  60320.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Izlez po distr.
  60321.     FROM Stavr WHERE Datum_Dok < @Datum_Od AND Sifra_OE = @Sifra_OE AND VlIzl = 'I' AND ImaDodatna='D' AND Kolic > 0
  60322.     GROUP BY Sifra_Art 
  60323.     UPDATE #TmpPocS SET PocSost = PocSost - ABS(S.Kolic)
  60324.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art 
  60325.     DELETE FROM #TmpKolic
  60326.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Vrateno od distr.
  60327.     FROM Stavr WHERE Datum_Dok < @Datum_Od AND Sifra_OE = @Sifra_OE AND VlIzl = 'I' AND ImaDodatna='D' AND Kolic < 0 
  60328.     GROUP BY Sifra_Art   
  60329.     UPDATE #TmpPocS SET PocSost = PocSost + ABS(S.Kolic)
  60330.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art
  60331.     DELETE FROM #TmpKolic
  60332.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Izl. na faktura/reprez.
  60333.     FROM Stavr WHERE Datum_Dok < @Datum_Od AND Sifra_OE = @Sifra_OE AND (Sifra_Dok=@Faktura OR Sifra_Dok=@Faktura1 OR Sifra_Dok=@Reprez OR Sifra_Dok = 93)
  60334.     GROUP BY Sifra_Art 
  60335.     UPDATE #TmpPocS SET PocSost = PocSost - ABS(S.Kolic)
  60336.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art
  60337.     DELETE FROM #TmpKolic
  60338.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Vrat. na faktura
  60339.     FROM Stavr WHERE Datum_Dok < @Datum_Od AND Sifra_OE = @Sifra_OE AND (Sifra_Dok = @StornoFak OR Sifra_Dok = @StornoFak1 OR Sifra_Dok = 94)
  60340.     GROUP BY Sifra_Art 
  60341.     UPDATE #TmpPocS SET PocSost = PocSost + ABS(S.Kolic)
  60342.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art
  60343.     DELETE FROM #TmpKolic
  60344.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --Izlez po zapisnik
  60345.     FROM Stavr WHERE Datum_Dok < @Datum_Od AND Sifra_OE = @Sifra_OE AND Sifra_Dok = @ZapIzl
  60346.     GROUP BY Sifra_Art 
  60347.     UPDATE #TmpPocS SET PocSost = PocSost - ABS(S.Kolic)
  60348.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art
  60349.     DELETE FROM #TmpKolic
  60350.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --KALO
  60351.     FROM Stavr WHERE Datum_Dok < @Datum_Od AND Sifra_OE = @Sifra_OE AND (Sifra_Dok = @Kalo OR Sifra_Dok = @Kalo2)
  60352.     GROUP BY Sifra_Art 
  60353.     UPDATE #TmpPocS SET PocSost = PocSost - ABS(S.Kolic)
  60354.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art
  60355.     DELETE FROM #TmpKolic    
  60356.     INSERT INTO #TmpKolic SELECT Sifra_Art, SUM(Kolic)            --OdRabNal
  60357.     FROM    RabNal R INNER JOIN
  60358.             StaRabNal S ON R.RabNalID = S.RabNalID
  60359.     WHERE    Datum_Otv < @Datum_Od AND Sifra_OERab = @Sifra_OE
  60360.     GROUP BY Sifra_Art 
  60361.     UPDATE #TmpPocS SET PocSost = PocSost - ABS(S.Kolic)
  60362.     FROM #TmpKolic S WHERE #TmpPocS.Sifra_Art = S.Sifra_Art
  60363.     DELETE FROM #TmpKolic    
  60364.     UPDATE #TmpDist SET PocSost  = #TmpPocS.PocSost
  60365.     FROM #TmpPocS WHERE #TmpPocS.Sifra_Art = #TmpDist.Sifra_Art
  60366. End
  60367. --KRAJ POC. SOST.
  60368.     UPDATE #TmpDist SET PocSost  = 0  WHERE  #TmpDist.PocSost IS NULL
  60369.     UPDATE #TmpDist SET Vlez =0 WHERE Vlez IS NULL 
  60370.     UPDATE #TmpDist SET Izl_Distr =0 WHERE  Izl_Distr IS NULL 
  60371.     UPDATE #TmpDist SET Vrat_Distr =0 WHERE Vrat_Distr IS NULL 
  60372.     UPDATE #TmpDist SET Izl_FaktRep =0 WHERE Izl_FaktRep IS NULL
  60373.     UPDATE #TmpDist SET Vrat_Fakt =0 WHERE Vrat_Fakt IS NULL 
  60374.     UPDATE #TmpDist SET Izl_Zap =0 WHERE Izl_Zap IS NULL
  60375.     UPDATE #TmpDist SET Kalo =0 WHERE Kalo IS NULL
  60376.     UPDATE #TmpDist SET OdRabNal = 0 WHERE OdRabNal IS NULL
  60377.  
  60378.     SELECT T.Sifra_Art, T.ImeArt, T.PocSost, ABS(T.Vlez) Vlez,  ABS(T.Izl_Distr) Izl_Distr, ABS(T.Vrat_Distr) Vrat_Distr, 
  60379.         ABS(T.Izl_FaktRep) Izl_FaktRep, ABS(T.Vrat_Fakt) Vrat_Fakt, ABS(T.Izl_Zap) Izl_Zap, ABS(T.Kalo) Kalo, ABS(T.OdRabNal) OdRabNal,
  60380.         (Case when K.Drugo2 is null then '' else K.Drugo2 end) Drugo2, D2.Ime_2
  60381.     FROM #TmpDist T
  60382.     Left Outer Join Katart K On K.Sifra_Art = T.Sifra_Art
  60383.     Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2
  60384.     WHERE T.Vlez <> 0 OR T.Izl_Distr <> 0 OR T.Vrat_Distr <> 0 OR T.Izl_FaktRep <> 0 OR T.Vrat_Fakt <> 0 OR T.Izl_Zap <> 0 OR T.Kalo <> 0 OR T.PocSost <> 0
  60385.     ORDER BY T.Sifra_Art
  60386.  
  60387. Go
  60388. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzanaplata]'))
  60389. drop procedure [dbo].[sp_izvzanaplata]
  60390.  
  60391. Go
  60392.  
  60393.  
  60394. CREATE          PROCEDURE sp_IzvZaNaplata
  60395.     @Sifra_Za Char(1) = '1',
  60396.     @Datum_Nal_Od Smalldatetime = NULL,
  60397.     @Datum_Nal_Do Smalldatetime = NULL,
  60398.     @Datum_Dok_Od Smalldatetime = NULL,
  60399.     @Datum_Dok_Do Smalldatetime = NULL,
  60400.     @Sifra_Nal    Smallint = NULL,
  60401.     @Sifra_OE    Smallint = NULL,
  60402.     @Kto        Char(6) = NULL,
  60403.     @Sifra_Pat    varchar(300) = NULL,
  60404.     @Sifra_Kup_Od Char(6) = NULL,
  60405.     @Sifra_Kup_Do Char(6) = NULL,
  60406.     @TipKup    Varchar(11) = NULL,
  60407.     @Pod1        Smallint = NULL,
  60408.     @Pod2        Smallint = NULL,
  60409.     @Pod3        Smallint = NULL,
  60410.     @Pod4        Smallint = NULL,
  60411.     @Pod5        Smallint = NULL,
  60412.     @Sifra_Tip    Smallint = Null,
  60413.     @KFSifra_Kup_Od Char(1) = NULL,
  60414.     @KFTipKup    Char(1) = NULL,
  60415.     @KFPod1    Char(1) = NULL,
  60416.     @KFPod2    Char(1) = NULL,
  60417.     @KFPod3    Char(1) = NULL,
  60418.     @KFPod4    Char(1) = NULL,
  60419.     @KFPod5    Char(1) = NULL,
  60420.     @VratiPod    Char(1) = 'O',        --U-po Uplata, D-Detalno po zatvoranja, P-po Patnici, K-po Komint, O-po Organizacioni edinici,  I-Detalno po fakturi i zatvaranja, X-plateno pred/po rok+neplateno 
  60421.     @KoiUpl    Char(1) = 'S',        --S-Site, N-samo Neplateni, P-samo PLATENI,      D - Delimicno plateni
  60422.     @KomercKako    char(1) = 'I',                -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  60423.     @PoDatDosp    Char(1) = 'N',        -- D - Po Datum na dospevanje,    N - Po Datum na dokument
  60424.     @KoiGradovi    varchar(200) = Null,
  60425.     @Fra_Uplata    char(1) = '2',        -- 1- Faktupa,    2 - Uplata
  60426.     @Sifra_Dok    smallint = Null,
  60427.     @Aneks1    char(1) = Null,        -- nesto specijalno za PKB
  60428.     @TolerKusok    decimal(12,2) = 0,    -- toleranten kusok (nesto specijalno za PKB)
  60429.     @Datum_Dosp_Od Smalldatetime = NULL,
  60430.     @Datum_Dosp_Do Smalldatetime = NULL,
  60431.     @KoiRegioni    Varchar(200) = Null,
  60432.     @ProcOdobr    decimal(6,2) = Null,    -- procent za odobrenie (uste nesto specijalno za PKB)
  60433.     @KomercOd    char(1) = 'U',        -- koga se gleda izvestajot po Uplati, od kade da go gleda komercijalistot     F - od Fakturata    U - od Uplatata
  60434.     @Sifra_Div    smallint = Null
  60435. AS
  60436.     Declare @SSQL        Varchar(4000)
  60437.     Declare @SSQLUsl    Varchar(4000)
  60438.     Declare @SSQLPat    Varchar(4000)
  60439.     CREATE TABLE #TmpUpl
  60440. (    AnID        int,
  60441.     Datum_Dok    smalldatetime,
  60442.     DolziU        decimal(18,6),
  60443.     PobaruvaU    decimal(18,6),
  60444.     AnID1        int NULL,
  60445.     AnID2        int NULL,
  60446.     PlatenDel    decimal(18,6) NULL,
  60447.     Datum_Fak    smalldatetime NULL,
  60448.     Rok        smallint NULL,
  60449.     Sifra_Pat    smallint,
  60450.     Sifra_Div    smallint,
  60451.     ProsPlakF    decimal(18,2) NULL,
  60452.     ProsPlakD    decimal(18,2) NULL,
  60453.     Sifra_nal    smallint,
  60454.     Broj_Nal    int
  60455. )
  60456.     If @VratiPod='I'
  60457.     Begin
  60458.         CREATE TABLE #TmpUpl2
  60459.         (
  60460.          AnID        int,
  60461.          Datum_Dok    smalldatetime,
  60462.          DolziU        decimal(18,6),
  60463.          PobaruvaU    decimal(18,6),
  60464.          AnID1        int NULL,
  60465.          AnID2        int NULL,
  60466.          PlatenDel    decimal(18,6) NULL,
  60467.          Datum_Fak    smalldatetime NULL,
  60468.          Rok        smallint NULL,
  60469.          Sifra_Pat    smallint,
  60470.           Sifra_Div    smallint,
  60471.          ProsPlakF    decimal(18,2) NULL,
  60472.          ProsPlakD    decimal(18,2) NULL,
  60473.          Sifra_nal    smallint,
  60474.          Broj_Nal    int
  60475.         )
  60476.     End
  60477.     Set @SSQLUsl = 'WHERE A.Dolzi+A.Pobaruva <> 0 '
  60478.     If @Sifra_Za=1
  60479.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=1 ' 
  60480.     Else If @Sifra_Za=2
  60481.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=2 '
  60482.     If @KoiUpl ='N'
  60483.         Set @SSQLUsl = @SSQLUsl + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_pobar) '
  60484.     Else If @KoiUpl ='P'
  60485.         Set @SSQLUsl = @SSQLUsl + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_pobar '
  60486.     Else If @KoiUpl ='D'
  60487.         Set @SSQLUsl = @SSQLUsl + 'AND A.Plateno_Pobar+A.Plateno_Dolzi <> 0 and (Abs(A.Dolzi-A.Plateno_Dolzi) >= ' + cast(@TolerKusok as varchar(15)) + ' 
  60488.                         Or  Abs(A.Pobaruva-A.Plateno_Pobar) >= ' + cast(@TolerKusok as varchar(15)) + ' ) '
  60489.     If @KFSifra_Kup_Od Is Null
  60490.     Begin
  60491.         If @Sifra_Kup_Od Is NOT Null
  60492.             SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  60493.         If @Sifra_Kup_Do Is NOT Null
  60494.             SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  60495.     End
  60496.     Else If @KFSifra_Kup_Od='D' And @Sifra_Kup_Od Is Not Null
  60497.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_Kup<>''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  60498.     If @KFTipKup Is Null
  60499.     Begin
  60500.         If @TipKup Is Not Null
  60501.             Set @SSQLUsl = @SSQLUsl + 'And K.TipKup=''' + @TipKup + ''' '
  60502.     End
  60503.     Else If @KFTipKup='D' And @TipKup Is Not Null
  60504.         Set @SSQLUsl = @SSQLUsl + 'And K.TipKup<>''' + @TipKup + ''' '
  60505.     If @KFPod1 Is Null
  60506.     Begin
  60507.         If @Pod1 Is Not Null
  60508.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  60509.     End
  60510.     Else If @KFPod1='D' And @Pod1 Is Not Null
  60511.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo1<>' + Cast(@Pod1 As Varchar(6)) + ' Or K.KDrugo1 Is Null) '
  60512.     If @KFPod2 Is Null
  60513.     Begin
  60514.         If @Pod2 Is Not Null
  60515.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  60516.     End
  60517.     Else If @KFPod2='D' And @Pod2 Is Not Null
  60518.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo2<>' + Cast(@Pod2 As Varchar(6)) + ' Or K.KDrugo2 Is Null) '
  60519.     If @KFPod3 Is Null
  60520.     Begin
  60521.         If @Pod3 Is Not Null
  60522.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  60523.     End
  60524.     Else If @KFPod3='D' And @Pod3 Is Not Null
  60525.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo3<>' + Cast(@Pod3 As Varchar(6)) +  ' Or K.KDrugo3 Is Null) '
  60526.     If @KFPod4 Is Null
  60527.     Begin
  60528.         If @Pod4 Is Not Null
  60529.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  60530.     End
  60531.     Else If @KFPod4='D' And @Pod4 Is Not Null
  60532.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo4<>' + Cast(@Pod4 As Varchar(6)) +  ' Or K.KDrugo4 Is Null) '
  60533.     If @KFPod5 Is Null
  60534.     Begin
  60535.         If @Pod5 Is Not Null
  60536.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  60537.     End
  60538.     Else If @KFPod5='D' And @Pod5 Is Not Null
  60539.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo5<>' + Cast(@Pod5 As Varchar(6)) +  ' Or K.KDrugo5 Is Null) '
  60540.     If @Sifra_Tip Is Not Null
  60541.         SET @SSQLUsl = @SSQLUsl +' AND K.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  60542.     If @KoiGradovi Is Not Null
  60543.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Grad In (' + @KoiGradovi + ') '
  60544.     If @KoiRegioni Is Not Null
  60545.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Reg In (' + @KoiRegioni + ') '
  60546.     If @Datum_Dok_Od Is NOT Null
  60547.     Begin
  60548.         If @PoDatDosp = 'D'     -- filterot ne se koristi
  60549.             SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, A.Rok, A.Datum_Dok) >=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  60550.     Else
  60551.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  60552.     End
  60553.     If @Datum_Dok_Do Is NOT Null
  60554.     Begin
  60555.         If @PoDatDosp = 'D'    -- filterot ne se koristi
  60556.             SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  60557.     Else
  60558.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  60559.     End
  60560.     If @Datum_Nal_Od Is NOT Null
  60561.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  60562.     If @Datum_Nal_Do Is NOT Null
  60563.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  60564.     If @Datum_Dosp_Od Is NOT Null
  60565.         SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  60566.     If @Datum_Dosp_Do Is NOT Null
  60567.         SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As Varchar(35)) + ''' '
  60568.     If @Sifra_Dok Is Not Null
  60569.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(10)) + ' '
  60570.     If @Sifra_Nal Is Not Null
  60571.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  60572.     If @Sifra_OE Is Not Null
  60573.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  60574.     If @Sifra_Div Is Not Null
  60575.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(10)) + ' '
  60576.     If @Kto Is Not Null
  60577.         Set @SSQLUsl = @SSQLUsl + 'AND A.Kto=''' + @Kto + ''' '
  60578.     If @Aneks1 = 'D'
  60579.     Begin
  60580.         Set @SSQLUsl = @SSQLUsl + 'AND K.Aneks1 Is Not Null And K.Aneks1 <> '' '' And K.KojaCena In (2,5) '
  60581.         IF @KoiUpl='D'
  60582.             Set @SSQLUsl = @SSQLUsl + ' AND A.AnID Not In (Select AnID_Fak from StaOdobr) '
  60583.     End
  60584.     If @ProcOdobr Is Not Null And @ProcOdobr > 0
  60585.         Set @SSQLUsl = @SSQLUsl + ' And A.Dolzi > 0 And (A.Dolzi-A.Plateno_Dolzi)<=((Dolzi*' + Cast(@ProcOdobr as varchar(6)) + '/100)+ ' + Cast(@TolerKusok as varchar(6)) + ') 
  60586.                         And AnId Not In (Select AnID_Fak From StaOdobr) '
  60587.     If @Fra_Uplata = '2' And @KomercOd = 'F'
  60588.     Begin
  60589.         Set @SSQLPat = ' '
  60590.     End
  60591.     Else
  60592.     Begin
  60593.         If @KomercKako = 'I'
  60594.             If @Sifra_Pat IS NOT NULL
  60595.                 SET @SSQLPat = ' AND A.Sifra_Pat In (' + @Sifra_Pat + ') '
  60596.         Else
  60597.             SET @SSQLPat =  ' '
  60598.         If @KomercKako = 'T'
  60599.             If @Sifra_Pat IS NOT NULL
  60600.                 SET @SSQLPat =  ' AND K.Sifra_Pat In (' + @Sifra_Pat + ') '
  60601.         Else
  60602.             SET @SSQLPat =  ' '
  60603.     End
  60604.     -------------------------------------------------------------
  60605. --    If @Sifra_Pat Is Not Null
  60606. --        Set @SSQLPat =  ' AND F.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  60607. --    Else
  60608. --        Set @SSQLPat =  ' '
  60609.     Set @SSQL = 'SELECT A.AnID, A.Datum_Dok, A.Dolzi, A.Pobaruva, NULL AS AnID1, 
  60610.     NULL AS AnID2, 0 AS PlatenDel, NULL AS Datum_Fak, A.Rok, NULL As Sifra_Pat, Null as Sifra_Div, 0 As ProsPlakF, 0 As ProsPlakD,
  60611.     Null as Sifra_Nal, Null as Broj_Nal
  60612.     FROM AnFinDok A
  60613.     INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60614.     INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok= ' + @Fra_Uplata + ' '
  60615. print @SSQL + @SSQLUsl + @SSQLPat 
  60616.     INSERT INTO #TmpUpl EXEC (@SSQL + @SSQLUsl + @SSQLPat)
  60617.  
  60618.     Set @SSQLPat =' '
  60619.     If @KomercKako = 'I'
  60620.         If @Sifra_Pat IS NOT NULL
  60621.             SET @SSQLPat = ' AND F.Sifra_Pat In (' + @Sifra_Pat + ') '
  60622.         Else
  60623.             SET @SSQLPat =  ' '
  60624.        If @KomercKako = 'T'
  60625.         If @Sifra_Pat IS NOT NULL
  60626.             SET @SSQLPat =  ' AND K.Sifra_Pat In (' + @Sifra_Pat + ') '
  60627.         Else
  60628.             SET @SSQLPat =  ' '
  60629.     Set @SSQL = 'SELECT A.AnID, A.Datum_Dok, 0 as Dolzi, 0 as Pobaruva, Z.AnID1, 
  60630.     Z.AnID2, Z.Iznos, F.Datum_Dok as Datum_Fak, F.Rok as Rok, '
  60631.     If @KomercKako = 'I'
  60632.             SET @SSQL = @SSQL + ' F.Sifra_Pat, '
  60633.        If @KomercKako = 'T'
  60634.             SET @SSQL = @SSQL + ' K.Sifra_Pat, ' 
  60635.     Set @SSQL = @SSQL + ' F.Sifra_Div, NULL As ProsPlakF, NULL As ProsPlakD,
  60636.     A.Sifra_Nal, A.Broj_Nal
  60637.     FROM AnFinDok A
  60638.     INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60639.     INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok= ' + @Fra_Uplata + ' 
  60640.     RIGHT OUTER JOIN AnZatv Z ON A.AnID = Z.AnID1
  60641.     INNER JOIN AnFinDok F ON Z.AnID2 = F.AnID WHERE A.AnID IN (SELECT DISTINCT AnID FROM #TmpUpl)'
  60642. --print @SSQL + @SSQLPat
  60643.     If @VratiPod = 'I'
  60644.         INSERT INTO #TmpUpl2 EXEC (@SSQL + @SSQLPat)
  60645.     Else
  60646.         INSERT INTO #TmpUpl EXEC (@SSQL + @SSQLPat)
  60647.     Set @SSQL = 'SELECT A.AnID, A.Datum_Dok, 0 as Dolzi, 0 as Pobaruva, Z.AnID1, 
  60648.     Z.AnID2, Z.Iznos, F.Datum_Dok as Datum_Fak, F.Rok as Rok, '
  60649.     If @KomercKako = 'I'
  60650.             SET @SSQL = @SSQL + ' F.Sifra_Pat, '
  60651.        If @KomercKako = 'T'
  60652.             SET @SSQL = @SSQL + ' K.Sifra_Pat, ' 
  60653.     Set @SSQL = @SSQL + ' F.Sifra_Div, NULL As ProsPlakF, NULL As ProsPlakD,
  60654.     A.Sifra_Nal, A.Broj_Nal
  60655.     FROM AnFinDok A
  60656.     INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60657.     INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok= ' + @Fra_Uplata + ' 
  60658.     RIGHT OUTER JOIN AnZatv Z ON A.AnID = Z.AnID2
  60659.     INNER JOIN AnFinDok F ON Z.AnID1 = F.AnID  WHERE A.AnID IN (SELECT DISTINCT AnID FROM #TmpUpl)'
  60660. print @SSQL + @SSQLPat
  60661.     If @VratiPod = 'I'
  60662.         INSERT INTO #TmpUpl2 EXEC (@SSQL + @SSQLPat)
  60663.     Else
  60664.         INSERT INTO #TmpUpl EXEC (@SSQL + @SSQLPat)
  60665.  
  60666.     UPDATE #TmpUpl SET ProsPlakF = PlatenDel * DateDiff(day, Datum_Fak, Datum_Dok) WHERE Datum_Fak IS NOT NULL
  60667.     UPDATE #TmpUpl SET ProsPlakD = PlatenDel * DateDiff(day, DateAdd (day, Rok, Datum_Fak), Datum_Dok) WHERE Datum_Fak IS NOT NULL
  60668.     IF @VratiPod = 'D' OR @VratiPod = 'X'
  60669.     Begin
  60670.         UPDATE #TmpUpl SET ProsPlakF =  DateDiff(day, Datum_Fak, Datum_Dok) WHERE Datum_Fak IS NOT NULL
  60671.         UPDATE #TmpUpl SET ProsPlakD =  DateDiff(day, DateAdd (day, Rok, Datum_Fak), Datum_Dok) WHERE Datum_Fak IS NOT NULL
  60672.     End
  60673. --select * from #TmpUpl2
  60674.     IF @VratiPod = 'D'
  60675.         Select U.Datum_Dok, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, A.Sifra_Kup as Sifra, K.ImeKup As Ime,
  60676.         U.DolziU as Dolzi, U.PobaruvaU as Pobaruva, U.PlatenDel As PlatenDel, 
  60677.         U.ProsPLakF as ProsPlakF, U.ProsPlakD as ProsPlakD, 
  60678.         AU.Sifra_Oe as Sifra_OeU, AU.Sifra_Dok as Sifra_DokU, AU.Broj_Dok as Broj_DokU, AU.BrojDok as BrojDokU, AU.Datum_Dok as Datum_DokU,
  60679.         Null as Sifra_Nal, Null as Broj_Nal, U.Rok
  60680.         FROM #TmpUpl U
  60681.         INNER JOIN AnFinDok A ON A.AnID = U.AnID
  60682.         Left Outer JOIN AnFinDok AU ON ((AU.AnID=U.AnID1 AND U.AnID1<>U.AnID) Or (AU.AnID=U.AnID2 AND U.AnID2<>U.AnID))
  60683.         INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60684.         ORDER BY A.Sifra_Kup, U.AnID
  60685.     Else IF @VratiPod = 'U'
  60686.         Select U.Datum_Dok, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, A.Sifra_Kup as Sifra, K.ImeKup As Ime,
  60687.         SUM(U.DolziU) as Dolzi, SUM(U.PobaruvaU) as Pobaruva, SUM(U.PlatenDel) As PlatenDel, 
  60688.         Round(SUM(U.ProsPLakF) / SUM(U.DolziU+U.PobaruvaU),4)  as ProsPlakF,
  60689.         Round(SUM(U.ProsPlakD) / SUM(U.DolziU+U.PobaruvaU),4)  as ProsPlakD,
  60690.         Null as Sifra_OeU, Null as Sifra_DokU, Null as Broj_DokU, Null as BrojDokU, Null as Datum_DokU,
  60691.         Null as Sifra_Nal, Null as Broj_Nal, Null as Rok
  60692.         FROM #TmpUpl U
  60693.         INNER JOIN AnFinDok A ON A.AnID = U.AnID
  60694.         INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60695.         GROUP BY U.Datum_Dok, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, A.Sifra_Kup, K.ImeKup
  60696.         HAVING SUM(U.DolziU+U.PobaruvaU) <> 0
  60697.     ELSE IF @VratiPod = 'P'
  60698.         Select NULL AS Datum_Dok, 0 AS Sifra_OE, 0 AS Sifra_Dok, 0 AS Broj_Dok, '' AS BrojDok, U.Sifra_Pat As Sifra, P.ImePat As Ime,
  60699.         SUM(U.DolziU)  as Dolzi, SUM(U.PobaruvaU) as Pobaruva, SUM(U.PlatenDel) As PlatenDel, 
  60700.         SUM(U.ProsPLakF) / SUM(U.PlatenDel) as ProsPlakF,
  60701.         SUM(U.ProsPlakD) / SUM(U.PlatenDel) as ProsPlakD,
  60702.         Null as Sifra_OeU, Null as Sifra_DokU, Null as Broj_DokU, Null as BrojDokU, Null as Datum_DokU,
  60703.         Null as Sifra_Nal, Null as Broj_Nal, Null as Rok
  60704.         FROM #TmpUpl U
  60705.         Left Outer JOIN Patnici P ON U.Sifra_Pat = P.Sifra_Pat
  60706.         GROUP BY U.Sifra_Pat, P.ImePat
  60707.         HAVING SUM(U.PlatenDel) <> 0
  60708.     ELSE IF @VratiPod = 'V'
  60709.         Select NULL AS Datum_Dok, 0 AS Sifra_OE, 0 AS Sifra_Dok, 0 AS Broj_Dok, '' AS BrojDok, U.Sifra_Div As Sifra, D.ImeDiv As Ime,
  60710.         SUM(U.DolziU)  as Dolzi, SUM(U.PobaruvaU) as Pobaruva, SUM(U.PlatenDel) As PlatenDel, 
  60711.         SUM(U.ProsPLakF) / SUM(U.PlatenDel) as ProsPlakF,
  60712.         SUM(U.ProsPlakD) / SUM(U.PlatenDel) as ProsPlakD,
  60713.         Null as Sifra_OeU, Null as Sifra_DokU, Null as Broj_DokU, Null as BrojDokU, Null as Datum_DokU,
  60714.         Null as Sifra_Nal, Null as Broj_Nal, Null as Rok
  60715.         FROM #TmpUpl U
  60716.         Left Outer JOIN Divizii D ON U.Sifra_Div = D.Sifra_Div
  60717.         GROUP BY U.Sifra_Div, D.ImeDiv
  60718.         HAVING SUM(U.PlatenDel) <> 0
  60719.     ELSE IF @VratiPod = 'K'        Select NULL AS Datum_Dok, 0 AS Sifra_OE, 0 AS Sifra_Dok, 0 AS Broj_Dok, '' AS BrojDok, A.Sifra_Kup as Sifra, K.ImeKup As Ime,
  60720.         SUM(U.DolziU) as Dolzi, SUM(U.PobaruvaU) as Pobaruva, SUM(U.PlatenDel) As PlatenDel, 
  60721.         SUM(U.ProsPLakF) / SUM(U.DolziU+U.PobaruvaU)  as ProsPlakF,
  60722.         SUM(U.ProsPlakD) / SUM(U.DolziU+U.PobaruvaU)  as ProsPlakD,
  60723.         Null as Sifra_OeU, Null as Sifra_DokU, Null as Broj_DokU, Null as BrojDokU, Null as Datum_DokU,
  60724.         Null as Sifra_Nal, Null as Broj_Nal
  60725.         FROM #TmpUpl U
  60726.         INNER JOIN AnFinDok A ON A.AnID = U.AnID
  60727.         INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60728.         GROUP BY A.Sifra_Kup, K.ImeKup
  60729.         HAVING SUM(U.DolziU+U.PobaruvaU) <> 0
  60730.     ELSE IF @VratiPod = 'O'
  60731.     Begin
  60732.     CREATE TABLE #TmpUpl1
  60733. (    Sifra_OeF    smallint,
  60734.     Sifra_DokF    smallint,
  60735.     Broj_DokF    int,
  60736.     AnIDF        int,
  60737.     PlatenDel    decimal(18,6),
  60738.     IznosUpl    decimal(18,6),
  60739.     Sifra_OEU    smallint,
  60740.     Sifra_DokU    smallint,
  60741.     Broj_DokU    int,
  60742.     AnIDU        int,
  60743.     ProsPlakF    decimal(18,2) NULL,
  60744.     ProsPlakD    decimal(18,2) NULL
  60745. )
  60746.     INSERT INTO #TmpUpl1 (AnIDF, AnIDU, PlatenDel, IznosUpl, ProsPlakF, ProsPlakD) SELECT AnId1, AnID2, Platendel, PLatenDel, ProsPlakF, ProsPlakD
  60747.     FROM #TmpUpl WHERE AnID2 = AnID AND AnID1 IS NOT NULL
  60748.     INSERT INTO #TmpUpl1 (AnIDF, AnIDU, PlatenDel, IznosUpl, ProsPlakF, ProsPlakD) SELECT AnId2, AnID1, Platendel, PLatenDel, ProsPlakF, ProsPlakD
  60749.     FROM #TmpUpl WHERE AnID1 = AnID AND AnID2 IS NOT NULL
  60750.     CREATE TABLE #TmpPlUpl
  60751. (    AnIDU        int,
  60752.     PlatenDel    decimal(18,6)
  60753. )
  60754.     INSERT INTO #TmpPlUpl (AnIDU, PlatenDel) SELECT AnIDU, SUM(PlatenDel) FROM #TmpUpl1 GROUP BY AnIDU
  60755.     UPDATE #TmpUpl SET PlatenDel = U.PlatenDel FROM #TmpPlUpl U WHERE #TmpUpl.AnID=U.AnIDU AND #TmpUpl.AnID1 IS NULL  AND #TmpUpl.AnID2 IS NULL
  60756.     INSERT INTO #TmpUpl1 (AnIDU, PlatenDel, IznosUpl ) SELECT AnID, 0, PobaruvaU- PlatenDel FROM #TmpUpl 
  60757.     WHERE PobaruvaU <> PlatenDel AND AnID1 IS NULL AND AnID2 IS NULL
  60758. --select * from #TmpUpl
  60759.         Select A.Datum_Dok, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, F.Sifra_Oe as Sifra, O.ImeOrg As Ime,
  60760.         0 as Dolzi, SUM(U.IznosUpl) as Pobaruva, SUM(U.PlatenDel) As PlatenDel, 
  60761.         SUM(U.ProsPLakF) / SUM(U.IznosUpl)  as ProsPlakF,
  60762.         SUM(U.ProsPlakD) / SUM(U.IznosUpl)  as ProsPlakD,
  60763.         F.Sifra_OE as Sifra_OeU, F.Sifra_Dok as Sifra_DokU, F.Broj_Dok as Broj_DokU, Null as BrojDokU, Null as Datum_DokU,
  60764.         Null as Sifra_Nal, Null as Broj_Nal, Null as Rok
  60765.         FROM #TmpUpl1 U
  60766.         LEFT OUTER JOIN AnFinDok A ON A.AnID = U.AnIDU
  60767.         LEFT OUTER JOIN AnFinDok F ON F.AnID = U.AnIDF
  60768.         Left Outer Join Orged O On O.Sifra_Oe = F.Sifra_Oe
  60769.         GROUP BY A.Datum_Dok, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, F.Sifra_Oe, O.ImeOrg, F.Sifra_Dok, F.Broj_Dok
  60770. --        HAVING SUM(U.DolziU+U.PobaruvaU) <> 0
  60771.     End    
  60772.     Else IF @VratiPod = 'I'
  60773.     Begin
  60774.         Select A.Datum_Dok, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, A.Sifra_Kup as Sifra, K.ImeKup As Ime,
  60775.         U.DolziU as Dolzi, U.PobaruvaU as Pobaruva, U2.PlatenDel As PlatenDel, 
  60776.         U.ProsPLakF as ProsPlakF, U.ProsPlakD as ProsPlakD, 
  60777.         AU.Sifra_Oe as Sifra_OeU, AU.Sifra_Dok as Sifra_DokU, AU.Broj_Dok as Broj_DokU, AU.BrojDok as BrojDokU, AU.Datum_Dok as Datum_DokU,
  60778.         AU.Sifra_Nal, AU.Broj_Nal, U.Rok
  60779.         FROM #TmpUpl U
  60780.         LEFT OUTER JOIN #TmpUpl2 U2 ON U.AnID = U2.AnID
  60781.         INNER JOIN AnFinDok A ON A.AnID = U.AnID
  60782.         Left Outer JOIN AnFinDok AU ON ((AU.AnID=U2.AnID1 AND U2.AnID1<>U2.AnID) Or (AU.AnID=U2.AnID2 AND U2.AnID2<>U2.AnID))
  60783.         INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60784.         ORDER BY U.Datum_Dok, U.AnID, AU.Datum_Dok    --A.Sifra_Kup, U.AnID
  60785.     End
  60786.     Else IF @VratiPod = 'X'  --dod.privremeno Podr.,dobro e da se prosiri
  60787.     Begin
  60788.         Select SUM(U.DolziU) as Dolzi, SUM(U.PlatenDel) As PlatenDelVoRok, 0 as PlantenVonRok
  60789.         FROM #TmpUpl U 
  60790.         Left Outer JOIN AnFinDok AU ON ((AU.AnID=U.AnID1 AND U.AnID1<>U.AnID) Or (AU.AnID=U.AnID2 AND U.AnID2<>U.AnID))
  60791.         WHERE AU.Datum_Dok IS NOT NULL AND DateAdd(day, U.Rok, U.Datum_Dok) >= AU.Datum_Dok
  60792.         UNION
  60793.         Select SUM(U.DolziU) as Dolzi, 0 As PlatenDelVoRok, SUM(U.PlatenDel) as PlantenVonRok
  60794.         FROM #TmpUpl U 
  60795.         Left Outer JOIN AnFinDok AU ON ((AU.AnID=U.AnID1 AND U.AnID1<>U.AnID) Or (AU.AnID=U.AnID2 AND U.AnID2<>U.AnID))
  60796.         WHERE AU.Datum_Dok IS NOT NULL AND DateAdd(day, U.Rok, U.Datum_Dok) < AU.Datum_Dok
  60797.         UNION
  60798.         Select SUM(U.DolziU) as Dolzi, 0 As PlatenDelVoRok, 0 as PlantenVonRok
  60799.         FROM #TmpUpl U 
  60800.         Left Outer JOIN AnFinDok AU ON ((AU.AnID=U.AnID1 AND U.AnID1<>U.AnID) Or (AU.AnID=U.AnID2 AND U.AnID2<>U.AnID))
  60801.         WHERE AU.Datum_Dok IS NULL
  60802.     End
  60803.  
  60804. /*    
  60805.         Else IF @VratiPod = 'M'
  60806.             Select U.Datum_Dok, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, A.Sifra_Oe as Sifra, O.ImeOrg As Ime,
  60807.             U.DolziU as Dolzi, U.PobaruvaU as Pobaruva, U.PlatenDel As PlatenDel, 
  60808.             U.ProsPLakF as ProsPlakF, U.ProsPlakD as ProsPlakD, 
  60809.             AU.Sifra_Oe as Sifra_OeU, AU.Sifra_Dok as Sifra_DokU, AU.Broj_Dok as Broj_DokU, AU.BrojDok as BrojDokU, AU.Datum_Dok as Datum_DokU
  60810.             FROM #TmpUpl U
  60811.             INNER JOIN AnFinDok A ON A.AnID = U.AnID
  60812.             Left Outer JOIN AnFinDok AU ON ((AU.AnID = U.AnID2) Or ( AU.AnID = U.AnID2))
  60813.             Left Outer JOIN Orged O ON O.Sifra_Oe = A.Sifra_Oe
  60814.             ORDER BY A.Sifra_Kup, U.AnID
  60815. */
  60816.  
  60817.  
  60818. Go
  60819. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzanaplata_ednost]'))
  60820. drop procedure [dbo].[sp_izvzanaplata_ednost]
  60821.  
  60822. Go
  60823.  
  60824.  
  60825. create  PROCEDURE sp_IzvZaNaplata_Ednost
  60826.     @Sifra_Za Char(1) = '1',
  60827.     @Datum_Nal_Od Smalldatetime = NULL,
  60828.     @Datum_Nal_Do Smalldatetime = NULL,
  60829.     @Datum_Dok_Od Smalldatetime = NULL,
  60830.     @Datum_Dok_Do Smalldatetime = NULL,
  60831.     @Sifra_Nal    Smallint = NULL,
  60832.     @Sifra_OE    Smallint = NULL,
  60833.     @Kto        Char(6) = NULL,
  60834.     @Sifra_Pat    Smallint = NULL,
  60835.     @Sifra_Kup_Od Char(6) = NULL,
  60836.     @Sifra_Kup_Do Char(6) = NULL,
  60837.     @TipKup    Varchar(11) = NULL,
  60838.     @Pod1        Smallint = NULL,
  60839.     @Pod2        Smallint = NULL,
  60840.     @Pod3        Smallint = NULL,
  60841.     @Pod4        Smallint = NULL,
  60842.     @Pod5        Smallint = NULL,
  60843.     @Sifra_Tip    Smallint = Null,
  60844.     @KFSifra_Kup_Od Char(1) = NULL,
  60845.     @KFTipKup    Char(1) = NULL,
  60846.     @KFPod1    Char(1) = NULL,
  60847.     @KFPod2    Char(1) = NULL,
  60848.     @KFPod3    Char(1) = NULL,
  60849.     @KFPod4    Char(1) = NULL,
  60850.     @KFPod5    Char(1) = NULL,
  60851.     @KomercKako    char(1) = 'I',                -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  60852.     @KoiGradovi    varchar(200) = Null,
  60853.     @KoiRegioni    Varchar(200) = Null,
  60854.     @Sifra_Div    smallint = Null,
  60855.     @RekapPo    char (1) = 'N'
  60856. AS
  60857.     Declare @SSQL        Varchar(4000)
  60858.     Declare @SSQLUsl    Varchar(4000)
  60859.     Declare @SSQLPat    Varchar(400)
  60860.     Declare @SSQLGroup    Varchar(400)
  60861.     Set @SSQLUsl = ' WHERE 1=1 '
  60862.     If @Sifra_Za=1
  60863.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=''1'' ' 
  60864.     Else
  60865.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=''2'' '
  60866.     If @KFSifra_Kup_Od Is Null
  60867.     Begin
  60868.         If @Sifra_Kup_Od Is NOT Null
  60869.             SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  60870.         If @Sifra_Kup_Do Is NOT Null
  60871.             SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  60872.     End
  60873.     Else If @KFSifra_Kup_Od='D' And @Sifra_Kup_Od Is Not Null
  60874.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_Kup<>''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  60875.     If @KFTipKup Is Null
  60876.     Begin
  60877.         If @TipKup Is Not Null
  60878.             Set @SSQLUsl = @SSQLUsl + 'And K.TipKup=''' + @TipKup + ''' '
  60879.     End
  60880.     Else If @KFTipKup='D' And @TipKup Is Not Null
  60881.         Set @SSQLUsl = @SSQLUsl + 'And K.TipKup<>''' + @TipKup + ''' '
  60882.     If @KFPod1 Is Null
  60883.     Begin
  60884.         If @Pod1 Is Not Null
  60885.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  60886.     End
  60887.     Else If @KFPod1='D' And @Pod1 Is Not Null
  60888.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo1<>' + Cast(@Pod1 As Varchar(6)) + ' Or K.KDrugo1 Is Null) '
  60889.     If @KFPod2 Is Null
  60890.     Begin
  60891.         If @Pod2 Is Not Null
  60892.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  60893.     End
  60894.     Else If @KFPod2='D' And @Pod2 Is Not Null
  60895.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo2<>' + Cast(@Pod2 As Varchar(6)) + ' Or K.KDrugo2 Is Null) '
  60896.     If @KFPod3 Is Null
  60897.     Begin
  60898.         If @Pod3 Is Not Null
  60899.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  60900.     End
  60901.     Else If @KFPod3='D' And @Pod3 Is Not Null
  60902.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo3<>' + Cast(@Pod3 As Varchar(6)) +  ' Or K.KDrugo3 Is Null) '
  60903.     If @KFPod4 Is Null
  60904.     Begin
  60905.         If @Pod4 Is Not Null
  60906.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  60907.     End
  60908.     Else If @KFPod4='D' And @Pod4 Is Not Null
  60909.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo4<>' + Cast(@Pod4 As Varchar(6)) +  ' Or K.KDrugo4 Is Null) '
  60910.     If @KFPod5 Is Null
  60911.     Begin
  60912.         If @Pod5 Is Not Null
  60913.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  60914.     End
  60915.     Else If @KFPod5='D' And @Pod5 Is Not Null
  60916.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo5<>' + Cast(@Pod5 As Varchar(6)) +  ' Or K.KDrugo5 Is Null) '
  60917.     If @Sifra_Tip Is Not Null
  60918.         SET @SSQLUsl = @SSQLUsl +' AND K.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  60919.     If @KoiGradovi Is Not Null
  60920.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Grad In (' + @KoiGradovi + ') '
  60921.     If @KoiRegioni Is Not Null
  60922.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Reg In (' + @KoiRegioni + ') '
  60923.     If @Datum_Dok_Od Is NOT Null
  60924.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  60925.     If @Datum_Dok_Do Is NOT Null
  60926.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  60927.     If @Datum_Nal_Od Is NOT Null
  60928.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  60929.     If @Datum_Nal_Do Is NOT Null
  60930.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  60931.     If @Sifra_Nal Is Not Null
  60932.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  60933.     If @Sifra_OE Is Not Null
  60934.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  60935.     If @Sifra_Div Is Not Null
  60936.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(10)) + ' '
  60937.     If @Kto Is Not Null
  60938.         Set @SSQLUsl = @SSQLUsl + 'AND A.Kto=' + Cast(@Kto As Varchar(6)) + ' '
  60939.     If @KomercKako = 'I'
  60940.         If @Sifra_Pat IS NOT NULL
  60941.             SET @SSQLPat = ' AND A.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  60942.         Else
  60943.             SET @SSQLPat =  ' '
  60944.     else
  60945.         If @Sifra_Pat IS NOT NULL
  60946.             SET @SSQLPat =  ' AND K.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  60947.         Else
  60948.             SET @SSQLPat =  ' '
  60949.     if @RekapPo = 'P'    -- Po patnici
  60950.       begin
  60951.           Set @SSQL = 'SELECT sum(A.Pobaruva) sPobaruva, sum(A.Dolzi) sDolzi, A.Sifra_Pat, P.ImePat
  60952.             FROM AnFinDok A
  60953.           left outer JOIN Patnici P ON A.Sifra_Pat=P.Sifra_Pat '
  60954.           set @SSQLGroup = ' group by A.Sifra_Pat, P.ImePat '
  60955.       end
  60956.     else if @RekapPo = 'O'    -- Po org.edinici
  60957.       begin
  60958.           Set @SSQL = 'SELECT sum(A.Pobaruva) sPobaruva, sum(A.Dolzi) sDolzi, A.Sifra_Oe, O.ImeOrg
  60959.             FROM AnFinDok A
  60960.           inner JOIN OrgEd O ON A.Sifra_Oe=O.Sifra_Oe '
  60961.           set @SSQLGroup = ' group by A.Sifra_Oe, O.ImeOrg '
  60962.       end
  60963.     else            -- Detalno po dokumenti
  60964.       begin
  60965.           Set @SSQL = 'SELECT A.Datum_Dok, A.Dolzi, A.Pobaruva, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, A.Kto,
  60966.                 A.Sifra_Pat, P.Sifra_Pat, A.Sifra_Kup, K.ImeKup, A.Datum_Dok, P.ImePat, O.ImeOrg, A.SIfra_Za
  60967.             FROM AnFinDok A
  60968.           INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  60969.           INNER JOIN OrgEd O ON A.Sifra_Oe = O.Sifra_Oe
  60970.           left outer JOIN Patnici P ON A.Sifra_Pat=P.Sifra_Pat '
  60971.           set @SSQLGroup = ' '
  60972.       end
  60973.     EXEC (@SSQL + @SSQLUsl + @SSQLPat + @SSQLGroup )
  60974.  
  60975.  
  60976.  
  60977. Go
  60978. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzanaplata_eos]'))
  60979. drop procedure [dbo].[sp_izvzanaplata_eos]
  60980.  
  60981. Go
  60982.  
  60983. CREATE         PROCEDURE sp_IzvZaNaplata_EOS
  60984.     @Sifra_Za Char(1) = '1',
  60985.     @Datum_Nal_Od Smalldatetime = NULL,
  60986.     @Datum_Nal_Do Smalldatetime = NULL,
  60987.     @Datum_Dok_Od Smalldatetime = NULL,
  60988.     @Datum_Dok_Do Smalldatetime = NULL,
  60989.     @Sifra_Nal    Smallint = NULL,
  60990.     @Sifra_OE    Smallint = NULL,
  60991.     @Kto        Char(6) = NULL,
  60992.     @Sifra_Pat    varchar(300) = NULL,
  60993.     @Sifra_Kup_Od Char(6) = NULL,
  60994.     @Sifra_Kup_Do Char(6) = NULL,
  60995.     @TipKup    Varchar(11) = NULL,
  60996.     @Pod1        Smallint = NULL,
  60997.     @Pod2        Smallint = NULL,
  60998.     @Pod3        Smallint = NULL,
  60999.     @Pod4        Smallint = NULL,
  61000.     @Pod5        Smallint = NULL,
  61001.     @Sifra_Tip    Smallint = Null,
  61002.     @KFSifra_Kup_Od Char(1) = NULL,
  61003.     @KFTipKup    Char(1) = NULL,
  61004.     @KFPod1    Char(1) = NULL,
  61005.     @KFPod2    Char(1) = NULL,
  61006.     @KFPod3    Char(1) = NULL,
  61007.     @KFPod4    Char(1) = NULL,
  61008.     @KFPod5    Char(1) = NULL,
  61009.     @KoiUpl    Char(1) = 'S',        --S-Site, N-samo Neplateni, P-samo PLATENI,      D - Delimicno plateni
  61010.     @KomercKako    char(1) = 'I',                -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  61011.     @KoiGradovi    varchar(200) = Null,
  61012.     @KoiRegioni    Varchar(200) = Null, 
  61013.     @Fra_Uplata    char(1) = '2',        -- 1- Faktupa,    2 - Uplata
  61014.     @Sifra_Dok    smallint = Null,
  61015. --    @KomercOd    char(1) = 'U',        -- koga se gleda izvestajot po Uplati, od kade da go gleda komercijalistot     F - od Fakturata    U - od Uplatata
  61016.     @Sifra_Div    smallint = Null,
  61017.     @TolerKusok    decimal(18,6) = 1,
  61018.     @Datum_Dosp_Od    smalldatetime = Null,
  61019.     @Datum_Dosp_Do    smalldatetime = Null
  61020. AS
  61021.     Declare @SSQL        Varchar(4000)
  61022.     Declare @SSQLUsl    Varchar(4000)
  61023.     Declare @SSQLPat    Varchar(4000)
  61024.  
  61025.  
  61026.     Set @SSQLUsl = 'WHERE A.Dolzi+A.Pobaruva <> 0 '
  61027.     If @Sifra_Za=1
  61028.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=1 ' 
  61029.     Else If @Sifra_Za=2
  61030.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=2 '
  61031.     If @KoiUpl ='N'
  61032.         Set @SSQLUsl = @SSQLUsl + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_pobar) '
  61033.     Else If @KoiUpl ='P'
  61034.         Set @SSQLUsl = @SSQLUsl + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_pobar '
  61035.     Else If @KoiUpl ='D'
  61036.         Set @SSQLUsl = @SSQLUsl + 'AND A.Plateno_Pobar+A.Plateno_Dolzi <> 0 and (Abs(A.Dolzi-A.Plateno_Dolzi) >= ' + cast(@TolerKusok as varchar(15)) + ' 
  61037.                         Or  Abs(A.Pobaruva-A.Plateno_Pobar) >= ' + cast(@TolerKusok as varchar(15)) + ' ) '
  61038.     If @KFSifra_Kup_Od Is Null
  61039.     Begin
  61040.         If @Sifra_Kup_Od Is NOT Null
  61041.             SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  61042.         If @Sifra_Kup_Do Is NOT Null
  61043.             SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  61044.     End
  61045.     Else If @KFSifra_Kup_Od='D' And @Sifra_Kup_Od Is Not Null
  61046.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_Kup<>''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  61047.     If @KFTipKup Is Null
  61048.     Begin
  61049.         If @TipKup Is Not Null
  61050.             Set @SSQLUsl = @SSQLUsl + 'And K.TipKup=''' + @TipKup + ''' '
  61051.     End
  61052.     Else If @KFTipKup='D' And @TipKup Is Not Null
  61053.         Set @SSQLUsl = @SSQLUsl + 'And K.TipKup<>''' + @TipKup + ''' '
  61054.  
  61055.     If @KFPod1 Is Null
  61056.     Begin
  61057.         If @Pod1 Is Not Null
  61058.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  61059.     End
  61060.     Else If @KFPod1='D' And @Pod1 Is Not Null
  61061.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo1<>' + Cast(@Pod1 As Varchar(6)) + ' Or K.KDrugo1 Is Null) '
  61062.     If @KFPod2 Is Null
  61063.     Begin
  61064.         If @Pod2 Is Not Null
  61065.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  61066.     End
  61067.     Else If @KFPod2='D' And @Pod2 Is Not Null
  61068.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo2<>' + Cast(@Pod2 As Varchar(6)) + ' Or K.KDrugo2 Is Null) '
  61069.     If @KFPod3 Is Null
  61070.     Begin
  61071.         If @Pod3 Is Not Null
  61072.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  61073.     End
  61074.     Else If @KFPod3='D' And @Pod3 Is Not Null
  61075.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo3<>' + Cast(@Pod3 As Varchar(6)) +  ' Or K.KDrugo3 Is Null) '
  61076.     If @KFPod4 Is Null
  61077.     Begin
  61078.         If @Pod4 Is Not Null
  61079.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  61080.     End
  61081.     Else If @KFPod4='D' And @Pod4 Is Not Null
  61082.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo4<>' + Cast(@Pod4 As Varchar(6)) +  ' Or K.KDrugo4 Is Null) '
  61083.     If @KFPod5 Is Null
  61084.     Begin
  61085.         If @Pod5 Is Not Null
  61086.             Set @SSQLUsl = @SSQLUsl + 'And K.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  61087.     End
  61088.     Else If @KFPod5='D' And @Pod5 Is Not Null
  61089.         Set @SSQLUsl = @SSQLUsl + 'And (K.KDrugo5<>' + Cast(@Pod5 As Varchar(6)) +  ' Or K.KDrugo5 Is Null) '
  61090.  
  61091.     If @Sifra_Tip Is Not Null
  61092.         SET @SSQLUsl = @SSQLUsl +' AND K.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  61093.     If @KoiGradovi Is Not Null
  61094.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Grad In (' + @KoiGradovi + ') '
  61095.     If @KoiRegioni Is Not Null
  61096.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Reg In (' + @KoiRegioni + ') '
  61097.     If @Datum_Dok_Od Is NOT Null
  61098.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  61099.     If @Datum_Dok_Do Is NOT Null
  61100.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  61101.     If @Datum_Nal_Od Is NOT Null
  61102.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  61103.     If @Datum_Nal_Do Is NOT Null
  61104.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  61105.     If @Sifra_Dok Is Not Null
  61106.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(10)) + ' '
  61107.     If @Sifra_Nal Is Not Null
  61108.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  61109.     If @Sifra_OE Is Not Null
  61110.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  61111.     If @Sifra_Div Is Not Null
  61112.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(10)) + ' '
  61113.     If @Kto Is Not Null
  61114.         Set @SSQLUsl = @SSQLUsl + 'AND A.Kto=''' + @Kto + ''' '
  61115.  
  61116. --    If @Fra_Uplata = '2' And @KomercOd = 'F'
  61117. --    Begin
  61118. --        Set @SSQLPat = ' '
  61119. --    End
  61120. --    Else
  61121. --    Begin
  61122.         If @KomercKako = 'I'
  61123.             If @Sifra_Pat IS NOT NULL
  61124.                 SET @SSQLPat = ' AND A.Sifra_Pat In (' + @Sifra_Pat + ') '
  61125.         Else
  61126.             SET @SSQLPat =  ' '
  61127.         If @KomercKako = 'T'
  61128.             If @Sifra_Pat IS NOT NULL
  61129.                 SET @SSQLPat =  ' AND K.Sifra_Pat In (' + @Sifra_Pat + ') '
  61130.         Else
  61131.             SET @SSQLPat =  ' '
  61132. --    End
  61133.  
  61134.     CREATE TABLE #TmpUpl
  61135.     (    AnID        int,
  61136.         Datum_Dok    smalldatetime,
  61137.         Sifra_Kup    varchar(6),
  61138.         DolziU        decimal(18,6),
  61139.         PobaruvaU    decimal(18,6),
  61140.         AnID1        int NULL,
  61141.         AnID2        int NULL,
  61142.         PlatenDel    decimal(18,6) NULL,
  61143.         Datum_Fak    smalldatetime NULL,
  61144.         Rok        smallint NULL
  61145.     )
  61146.     Set @SSQL = ' SELECT A.AnID, A.Datum_Dok, A.Sifra_Kup, A.Dolzi, A.Pobaruva, NULL AS AnID1, 
  61147.             NULL AS AnID2, 0 AS PlatenDel, NULL AS Datum_Fak, A.Rok
  61148.         FROM AnFinDok A
  61149.         INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  61150.         INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok=' + @Fra_Uplata + ' '
  61151.     print @SSQL + @SSQLUsl + @SSQLPat 
  61152.     INSERT INTO #TmpUpl EXEC (@SSQL + @SSQLUsl + @SSQLPat)
  61153.  
  61154.  
  61155.     Set @SSQL = ' Select U.AnID, U.Sifra_Kup, F.Sifra_Oe, F.Sifra_Dok, F.Broj_Dok, U.PobaruvaU Uplata, Z.Iznos IznosZatv, F.Dolzi, 
  61156.             F.Plateno_Dolzi, (F.Dolzi-F.Plateno_Dolzi) Ostatok, U.Datum_Dok, GetDate() Datum_Export
  61157.         From #tmpUpl U
  61158.         Inner Join AnZatv Z On Z.Anid1=U.Anid
  61159.         Inner Join AnFinDok F On F.Anid=Z.Anid2 '
  61160.     If @Datum_Dosp_Od Is Not Null
  61161.         Set @SSQL = @SSQL + ' And F.Datum_Dok + F.Rok >= ''' + Cast(@Datum_Dosp_Od as varchar(30)) + ''' '
  61162.     If @Datum_Dosp_Do Is Not Null
  61163.         Set @SSQL = @SSQL + ' And F.Datum_Dok + F.Rok <= ''' + Cast(@Datum_Dosp_Do as varchar(30)) + ''' '
  61164.     Set @SSQL = @SSQL + ' Union
  61165.         Select U.AnID, U.Sifra_Kup, F.Sifra_Oe, F.Sifra_Dok, F.Broj_Dok, U.PobaruvaU Uplata, Z.Iznos IznosZatv, F.Dolzi, 
  61166.             F.Plateno_Dolzi, (F.Dolzi-F.Plateno_Dolzi) Ostatok, U.Datum_Dok, GetDate() Datum_Export
  61167.         From #tmpUpl U
  61168.         Inner Join AnZatv Z On Z.Anid2=U.Anid
  61169.         Inner Join AnFinDok F On F.Anid=Z.Anid1 '
  61170.     If @Datum_Dosp_Od Is Not Null
  61171.         Set @SSQL = @SSQL + ' And F.Datum_Dok + F.Rok >= ''' + Cast(@Datum_Dosp_Od as varchar(30)) + ''' '
  61172.     If @Datum_Dosp_Do Is Not Null
  61173.         Set @SSQL = @SSQL + ' And F.Datum_Dok + F.Rok <= ''' + Cast(@Datum_Dosp_Do as varchar(30)) + ''' '
  61174.     Set @SSQL = @SSQL + ' Order By U.Anid '
  61175. print @SSQL
  61176.     Exec(@SSQL)
  61177.  
  61178.  
  61179. Go
  61180. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_izvzatrospatnik]'))
  61181. drop procedure [dbo].[sp_izvzatrospatnik]
  61182.  
  61183. Go
  61184.  
  61185.  
  61186. CREATE      PROCEDURE [dbo].[sp_IzvZaTrosPatnik]
  61187.     @Sifra_Oe        Smallint= Null,
  61188.     @Koi_Oe        Varchar(300) = Null,
  61189.     @Datum_Dok_Od    smalldatetime = Null,
  61190.     @Datum_Dok_Do    smalldatetime = Null,
  61191.     @Sifra_Div        smallint = NULL,
  61192.     @Sifra_1K  smallint= null,
  61193.     @Sifra_2K smallint = null,
  61194.     @Sifra_3K smallint = null,
  61195.     @Sifra_4K smallint = null,
  61196.     @Sifra_5K smallint = null,
  61197.     @Sifra_6K smallint = null,
  61198.     @Sifra_7K smallint = null,
  61199.     @KFPod1 Char(1) = Null,
  61200.     @KFPod2 Char(1) = Null,
  61201.     @KFPod3 Char(1) = Null,
  61202.     @KFPod4 Char(1) = Null,
  61203.     @KFPod5 Char(1) = Null,
  61204.     @KFPod6 char(1)= null,
  61205.     @KFPod7 char(1)= null,
  61206.     @GrKup  varchar(500)= null,
  61207.     @GrArt varchar(500)= null
  61208.  AS
  61209.     Declare @SSQL as varchar(4000)
  61210.     Create Table #Tab1
  61211.     (
  61212.      Sifra_Oe     smallint,
  61213.      Naplatil        decimal(18,6),
  61214.      Trosok        decimal(18,6),
  61215.      Fakturiral    decimal(18,6)
  61216.     )
  61217. ------------------------------------------------------------------
  61218.     If @GrKup Is Not Null
  61219.     Begin
  61220.     Create    Table #KupObj
  61221.         (
  61222.             Sifra_Kup    char(6),
  61223.             Sifra_Obj    smallint
  61224.         )
  61225.         CREATE   Table #KupObj1
  61226.         (
  61227.             Sifra_Kup    char(6),
  61228.             Sifra_Obj    smallint
  61229.         )
  61230.         
  61231.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) 
  61232.                     Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj 
  61233.                     Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  61234.         Exec(@SSQL)
  61235.  
  61236.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  61237.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  61238.                 From SGrKupObj GK 
  61239.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  61240.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  61241.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  61242.         Exec(@SSQL)
  61243.  
  61244.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  61245.         Exec(@SSQL)
  61246.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  61247.     End
  61248. -------------------------------------------------------------------------
  61249. --select top 100 * from anal where dalikupuv ='K'
  61250.  
  61251.     Set @SSQL = ' Select A.Sifra_Oe, Sum(A.Pobaruva), 0, 0 From AnFinDok A 
  61252.                 Left Outer join Komint K on A.Sifra_Kup=K.Sifra_Kup
  61253.                 Inner Join Anal AK On AK.Kto_Anal = A.Kto
  61254.                 Where AK.DaliKupuv=''K'' 
  61255.                 And A.Kto Not Like ''22%'' ' -- Alma 11.05.2011
  61256.  
  61257.     If @Sifra_Oe Is not Null
  61258.         Set @SSQL = @SSQL + ' And A.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  61259.     If @Koi_Oe Is not Null
  61260.         Set @SSQL = @SSQL + ' And A.Sifra_Oe In (' + @Koi_Oe + ') '
  61261.     If @Datum_Dok_Od Is not Null
  61262.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' '
  61263.     If @Datum_Dok_Do Is not Null
  61264.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  61265.     IF @Sifra_Div IS NOT NULL
  61266.         Set @SSQL = @SSQL + 'And A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(5)) + ' '
  61267.     If @KFPod1 Is Null
  61268.         Begin
  61269.             If @Sifra_1K Is Not Null
  61270.                 Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Sifra_1K As Varchar(6)) + ' '
  61271.         End
  61272.     Else If @KFPod1='D' And @Sifra_1K Is Not Null
  61273.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Sifra_1K As Varchar(6)) + ' Or K.KDrugo1 Is Null) '
  61274.     If @KFPod2 Is Null
  61275.         Begin
  61276.             If @Sifra_2K Is Not Null
  61277.                 Set @SSQL = @SSQL + 'And K.KDrugo2=' + Cast(@Sifra_2K As Varchar(6)) + ' '
  61278.         End
  61279.     Else If @KFPod2='D' And @Sifra_2K Is Not Null
  61280.         Set @SSQL = @SSQL + 'And (K.KDrugo2<>' + Cast(@Sifra_2K As Varchar(6)) + ' Or K.KDrugo2 Is Null) '
  61281.     If @KFPod3 Is Null
  61282.         Begin
  61283.             If @Sifra_3K Is Not Null
  61284.                 Set @SSQL = @SSQL + 'And K.KDrugo3=' + Cast(@Sifra_3K As Varchar(6)) + ' '
  61285.         End
  61286.     Else If @KFPod3='D' And @Sifra_3K Is Not Null
  61287.         Set @SSQL = @SSQL + 'And (K.KDrugo3<>' + Cast(@Sifra_3K As Varchar(6)) + ' Or K.KDrugo3 Is Null) '
  61288.     If @KFPod4 Is Null
  61289.         Begin
  61290.             If @Sifra_4K Is Not Null
  61291.                 Set @SSQL = @SSQL + 'And K.KDrugo4=' + Cast(@Sifra_4K As Varchar(6)) + ' '
  61292.         End
  61293.     Else If @KFPod4='D' And @Sifra_4K Is Not Null
  61294.         Set @SSQL = @SSQL + 'And (K.KDrugo4<>' + Cast(@Sifra_4K As Varchar(6)) + ' Or K.KDrugo4 Is Null) '
  61295.     If @KFPod5 Is Null
  61296.         Begin
  61297.             If @Sifra_5K Is Not Null
  61298.                 Set @SSQL = @SSQL + 'And K.KDrugo5=' + Cast(@Sifra_5K As Varchar(6)) + ' '
  61299.         End
  61300.     Else If @KFPod5='D' And @Sifra_5K Is Not Null
  61301.         Set @SSQL = @SSQL + 'And (K.KDrugo5<>' + Cast(@Sifra_5K As Varchar(6)) + ' Or K.KDrugo5 Is Null) '
  61302.     If @KFPod6 Is Null
  61303.         Begin
  61304.             If @Sifra_6K Is Not Null
  61305.                 Set @SSQL = @SSQL + 'And K.KDrugo6=' + Cast(@Sifra_6K As Varchar(6)) + ' '
  61306.         End
  61307.     Else If @KFPod6='D' And @Sifra_6K Is Not Null
  61308.         Set @SSQL = @SSQL + 'And (K.KDrugo6<>' + Cast(@Sifra_6K As Varchar(6)) + ' Or K.KDrugo6 Is Null) '
  61309.     If @KFPod7 Is Null
  61310.         Begin
  61311.             If @Sifra_7K Is Not Null
  61312.                 Set @SSQL = @SSQL + 'And K.KDrugo7=' + Cast(@Sifra_7K As Varchar(6)) + ' '
  61313.         End
  61314.     Else If @KFPod7='D' And @Sifra_7K Is Not Null
  61315.         Set @SSQL = @SSQL + 'And (K.KDrugo7<>' + Cast(@Sifra_7K As Varchar(6)) + ' Or K.KDrugo7 Is Null) '
  61316.     Set @SSQL = @SSQL + ' Group By A.Sifra_Oe ' 
  61317.     Insert Into #Tab1 Exec(@SSQL)
  61318.     
  61319.     Set @SSQL = ' Select T.Sifra_Oe, 0, Sum(T.Iznos), 0
  61320.             From TrosPatn T
  61321.             Where 1=1'
  61322.     If @Sifra_Oe Is not Null
  61323.         Set @SSQL = @SSQL + ' And T.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  61324.     If @Koi_Oe Is not Null
  61325.         Set @SSQL = @SSQL + ' And T.Sifra_Oe In (' + @Koi_Oe + ') '
  61326.     If @Datum_Dok_Od Is not Null
  61327.         Set @SSQL = @SSQL + ' And T.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' '
  61328.     If @Datum_Dok_Do Is not Null
  61329.         Set @SSQL = @SSQL + ' And T.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  61330.  
  61331.     Set @SSQL = @SSQL + ' Group By T.Sifra_Oe ' 
  61332.     Insert Into #Tab1 Exec(@SSQL)
  61333.  
  61334.     Set @SSQL = ' Select D.Sifra_Oe, 0, 0, Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Krajna
  61335.             From Dokr D
  61336.             Inner Join Stavr S On S.DokrId=D.DokrId
  61337.                     Inner Join Komint K on K.Sifra_Kup=D.Sifra_Kup '
  61338.     If @GrKup Is Not Null
  61339.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  61340.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  61341.         Set @SSQL = @SSQL + '    Where D.Sifra_za=1 and D.VlIzl=''I'' '
  61342.     If @Sifra_Oe Is not Null
  61343.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  61344.     If @Koi_Oe Is not Null
  61345.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (' + @Koi_Oe + ') '
  61346.     If @Datum_Dok_Od Is not Null
  61347.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' '
  61348.     If @Datum_Dok_Do Is not Null
  61349.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' '
  61350.     IF @Sifra_Div IS NOT NULL
  61351.         Set @SSQL = @SSQL + 'And D.Sifra_Div=' + Cast(@Sifra_Div As Varchar(5)) + ' '
  61352.     If @KFPod1 Is Null
  61353.         Begin
  61354.             If @Sifra_1K Is Not Null
  61355.                 Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Sifra_1K As Varchar(6)) + ' '
  61356.         End
  61357.     Else If @KFPod1='D' And @Sifra_1K Is Not Null
  61358.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Sifra_1K As Varchar(6)) + ' Or K.KDrugo1 Is Null) '
  61359.     If @KFPod2 Is Null
  61360.         Begin
  61361.             If @Sifra_2K Is Not Null
  61362.                 Set @SSQL = @SSQL + 'And K.KDrugo2=' + Cast(@Sifra_2K As Varchar(6)) + ' '
  61363.         End
  61364.     Else If @KFPod2='D' And @Sifra_2K Is Not Null
  61365.         Set @SSQL = @SSQL + 'And (K.KDrugo2<>' + Cast(@Sifra_2K As Varchar(6)) + ' Or K.KDrugo2 Is Null) '
  61366.     If @KFPod3 Is Null
  61367.         Begin
  61368.             If @Sifra_3K Is Not Null
  61369.                 Set @SSQL = @SSQL + 'And K.KDrugo3=' + Cast(@Sifra_3K As Varchar(6)) + ' '
  61370.         End
  61371.     Else If @KFPod3='D' And @Sifra_3K Is Not Null
  61372.         Set @SSQL = @SSQL + 'And (K.KDrugo3<>' + Cast(@Sifra_3K As Varchar(6)) + ' Or K.KDrugo3 Is Null) '
  61373.     If @KFPod4 Is Null
  61374.         Begin
  61375.             If @Sifra_4K Is Not Null
  61376.                 Set @SSQL = @SSQL + 'And K.KDrugo4=' + Cast(@Sifra_4K As Varchar(6)) + ' '
  61377.         End
  61378.     Else If @KFPod4='D' And @Sifra_4K Is Not Null
  61379.         Set @SSQL = @SSQL + 'And (K.KDrugo4<>' + Cast(@Sifra_4K As Varchar(6)) + ' Or K.KDrugo4 Is Null) '
  61380.     If @KFPod5 Is Null
  61381.         Begin
  61382.             If @Sifra_5K Is Not Null
  61383.                 Set @SSQL = @SSQL + 'And K.KDrugo5=' + Cast(@Sifra_5K As Varchar(6)) + ' '
  61384.         End
  61385.     Else If @KFPod5='D' And @Sifra_5K Is Not Null
  61386.         Set @SSQL = @SSQL + 'And (K.KDrugo5<>' + Cast(@Sifra_5K As Varchar(6)) + ' Or K.KDrugo5 Is Null) '
  61387.     If @KFPod6 Is Null
  61388.         Begin
  61389.             If @Sifra_6K Is Not Null
  61390.                 Set @SSQL = @SSQL + 'And K.KDrugo6=' + Cast(@Sifra_6K As Varchar(6)) + ' '
  61391.         End
  61392.     Else If @KFPod6='D' And @Sifra_6K Is Not Null
  61393.         Set @SSQL = @SSQL + 'And (K.KDrugo6<>' + Cast(@Sifra_6K As Varchar(6)) + ' Or K.KDrugo6 Is Null) '
  61394.     If @KFPod7 Is Null
  61395.         Begin
  61396.             If @Sifra_7K Is Not Null
  61397.                 Set @SSQL = @SSQL + 'And K.KDrugo7=' + Cast(@Sifra_7K As Varchar(6)) + ' '
  61398.         End
  61399.     Else If @KFPod7='D' And @Sifra_7K Is Not Null
  61400.         Set @SSQL = @SSQL + 'And (K.KDrugo7<>' + Cast(@Sifra_7K As Varchar(6)) + ' Or K.KDrugo7 Is Null) '
  61401.  
  61402.     Set @SSQL = @SSQL + ' Group By D.Sifra_Oe ' 
  61403.     Insert Into #Tab1 Exec(@SSQL)
  61404.     
  61405.     Select  T.Sifra_Oe, O.ImeOrg, Sum(T.Naplatil) Naplatil, Sum(T.Trosok) Trosok, Sum(Fakturiral) Fakturiral
  61406.     From #Tab1 T
  61407.     Inner Join Orged O On O.Sifra_Oe = T.Sifra_Oe
  61408.     Group By  T.Sifra_Oe, O.ImeOrg
  61409.  
  61410.  
  61411.  
  61412.  
  61413.  
  61414.  
  61415.  
  61416.  
  61417.  
  61418.  
  61419. Go
  61420. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kalknivelacija]'))
  61421. drop procedure [dbo].[sp_kalknivelacija]
  61422.  
  61423. Go
  61424.  
  61425. CREATE PROCEDURE sp_KalkNivelacija
  61426.    @Sifra_OE smallint,
  61427.    @Sifra_Dok smallint,
  61428.    @Broj_Dok int
  61429.  
  61430. AS
  61431.  
  61432.     select S.Sifra_oe, S.SifrA_Dok, S.Broj_Dok, D.Identif_Br, D.Ispratnica, S.Datum_dok,
  61433.            S.SIfra_Art, K.EdMera, K.ImeArt, S.pTar, S.DOkCena, S.MagCena, 
  61434.            S.DanDokCena, S.DanMagCena, S.Posn, S.PosnPren, S.Alt_Kolic, S.Rbr
  61435.            FROM Stavr S
  61436.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  61437.     INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  61438.     INNER JOIN DOKR D on S.DokrId = D.DokrId
  61439.     where S.SIfra_oe = @SIfrA_oe and S.Sifra_Dok = @Sifra_Dok and S.Broj_Dok = @Broj_Dok
  61440.     order By S.Rbr
  61441.  
  61442.  
  61443.  
  61444. Go
  61445. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_karakteristiki_artikli]'))
  61446. drop procedure [dbo].[sp_karakteristiki_artikli]
  61447.  
  61448. Go
  61449.  
  61450.  
  61451. CREATE    PROCEDURE sp_Karakteristiki_Artikli
  61452.     @Sifra_Art    varchar(300)
  61453.  
  61454. AS
  61455.  
  61456.     Declare @SSQL as varchar(8000)
  61457.     Set @SSQL = ' Select A.Sifra_Art, A.ImeArt, A.Drugo7, K7.Ime_7,
  61458.             TK.Rbr, TK.Sifra_Karakt,
  61459.             K.ImeKarakt, K.SkrOzn, K.MaxDec, K.DefVredn
  61460.         From Katart A
  61461.         Inner Join Drugo7 K7 On Drugo7 = Sifra_7
  61462.         Inner Join TipKarakt TK ON TK.SIfra_7 = K7.Sifra_7
  61463.         Inner Join  Karakterist K On K.Sifra_Karakt = TK.Sifra_Karakt
  61464.         Where A.Sifra_Art In (' + @Sifra_Art + ') 
  61465.         Order by TK.Sifra_Karakt '
  61466.         
  61467.  
  61468.     Exec(@SSQL)
  61469.  
  61470.  
  61471.  
  61472.  
  61473. Go
  61474. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_ambalaza]'))
  61475. drop procedure [dbo].[sp_kart_ambalaza]
  61476.  
  61477. Go
  61478. CREATE PROCEDURE sp_Kart_Ambalaza 
  61479.     @KupDob    char(1) = 'K',
  61480.     @Sifra_Kup    char(6),
  61481.     @Sifra_Amb    char(6),        -- Mora da se vnese  Sifra_Amb
  61482.     @Datum_Od    smalldatetime,
  61483.     @Datum_Do    smalldatetime,
  61484.     @Povratna    char(1) = 'D',
  61485.     @Sifra_Oe    smallint = Null,
  61486.     @Koi_Oe    varchar(20) = Null,
  61487.     @Amb_GAmb    char(1) = 'A',
  61488.     @Sifra_Obj    Smallint = Null,
  61489.     @PrethZadolz    decimal(18,6) = Null Output,
  61490.     @PrethRazdolz    decimal(18,6) = Null Output,
  61491.     @VoGAmb    decimal(18,6) = Null Output
  61492. AS
  61493.     Declare @SSQL as varchar(8000)
  61494. -- Za vo izvestajot da se presmeta kolicina na zbirna ambalaza 
  61495.     Set @VoGamb=(Select VoGamb From KatAmb Where Sifra_Amb=@Sifra_Amb)
  61496.     If @VoGamb=0 Or @VoGamb Is Null
  61497.         Set @VoGamb=1
  61498. ---------------------------------------------------------------------------------- PRETHODNA SOSTOJBA --------------------------------------------------------------------------------
  61499. ----------------------------------------------------------------------  Od Stavr prodadeni proizvodi so ambalaza -------------------------------------------------------------------
  61500.     If @Datum_Od Is Not Null
  61501.     Begin
  61502.         Create Table #Preth    
  61503.         (
  61504.          Zadolzenie    decimal(18,6),
  61505.          Razdolzenie    decimal(18,6)
  61506.         )
  61507.         Set @SSQL = 'Select 
  61508.                 SUM((Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End)),
  61509.                 SUM((Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End))
  61510.                 From Dokr D
  61511.                 Inner Join Stavr S On S.DokrId=D.DokrID
  61512.                 Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  61513.                 Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  61514.                 Where K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61515.         If @KupDob = 'K'
  61516.             Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' '
  61517.         Else If @KupDob = 'D'
  61518.             Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' '
  61519.         If @Povratna = 'D'
  61520.             Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61521.         If @Sifra_Kup Is Not Null 
  61522.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  61523.         If @Sifra_Obj Is Not Null
  61524.             Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(10)) + ' '
  61525.         If @Datum_Od Is Not Null 
  61526.             Set @SSQL = @SSQL + ' And D.Datum_Dok < ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61527.         If @Sifra_Oe Is Not Null
  61528.             Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61529.         If @Koi_OE Is Not NULL
  61530.                  Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  61531.         Insert Into #Preth Exec(@SSQL)
  61532. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61533. ------------------------------------------------------------------------------ Od StaAmbal dadena ambalaza ---------------------------------------------------------------------------
  61534.         Set @SSQL = 'Select 
  61535.                 SUM((Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End)),
  61536.                 SUM((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End))
  61537.                 From Dokr D
  61538.                 Inner Join StaAmbal S On S.DokrId=D.DokrID
  61539.                 Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  61540.                 Where S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61541.         If @KupDob = 'K'
  61542.             Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' '
  61543.         Else If @KupDob = 'D'
  61544.             Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' '
  61545.         If @Povratna = 'D'
  61546.             Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61547.         If @Sifra_Kup Is Not Null 
  61548.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  61549.         If @Sifra_Obj Is Not Null
  61550.             Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(10)) + ' '
  61551.         If @Datum_Od Is Not Null 
  61552.             Set @SSQL = @SSQL + ' And D.Datum_Dok < ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61553.         If @Sifra_Oe Is Not Null
  61554.             Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61555.         If @Koi_OE Is Not NULL
  61556.                  Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  61557.         If @Amb_GAmb = 'G' -- Gajbi
  61558.             Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''G'') '
  61559.         Else -- If @Amb_GAmb = 'A' -- Sisinja
  61560.             Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''N'') '
  61561.         Insert Into #Preth Exec(@SSQL)
  61562.         /*If @Amb_GAmb = 'G'
  61563.             Select @PrethZAdolz=Round(Sum(Case When (@VoGAmb Is Null Or @VoGAmb = 0) Then Zadolzenie Else (Zadolzenie/@VoGAmb) End), 4), 
  61564.                 @PrethRazdolz=Abs(Round(Sum(Case When (@VoGAmb Is Null Or @VoGAmb = 0) Then Razdolzenie Else (Razdolzenie/@VoGAmb) End), 4))  
  61565.             From #Preth
  61566.         Else */
  61567.         Select @PrethZAdolz=Sum(Zadolzenie), @PrethRazdolz=Abs(Sum(Razdolzenie)) From #Preth
  61568.     End -- If @Datum_Od Is Not Null
  61569. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61570. -------------------------------------------------------------------------------  TEKOVEN PROMET-----------------------------------------------------------------------------------------
  61571.     Create Table #Tab
  61572.     (
  61573.      OdkojaTab    char(1),
  61574.      Sifra_Oe    smallint,
  61575.      Sifra_Dok    smallint,
  61576.      Broj_Dok    int,
  61577.      Datum_Dok    smalldatetime,
  61578.      Identif_Br    varchar(100),
  61579.      Ispratnica    varchar(50),
  61580.      Zadolzenie    decimal(18,6),
  61581.      Razdolzenie    decimal(18,6)
  61582.     )
  61583. ----------------------------------------------------------------------  Od Stavr prodadeni proizvodi so ambalaza -------------------------------------------------------------------
  61584.     Set @SSQL = 'Select '' '', D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Identif_Br, D.Ispratnica,
  61585.             (Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End),
  61586.             (Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End)
  61587.             From Dokr D
  61588.             Inner Join Stavr S On S.DokrId=D.DokrID
  61589.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  61590.             Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  61591.             Where K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61592.     If @KupDob = 'K'
  61593.         Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' '
  61594.     Else If @KupDob = 'D'
  61595.         Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' '
  61596.     If @Povratna = 'D'
  61597.         Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61598.     If @Sifra_Kup Is Not Null 
  61599.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  61600.     If @Sifra_Obj Is Not Null
  61601.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(10)) + ' '
  61602.     If @Datum_Od Is Not Null 
  61603.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61604.     If @Datum_Do Is Not Null 
  61605.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  61606.     If @Sifra_Oe Is Not Null
  61607.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61608.     If @Koi_OE Is Not NULL
  61609.              Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  61610.     Insert Into #Tab Exec(@SSQL)
  61611. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61612. ------------------------------------------------------------------------------ Od StaAmbal dadena ambalaza ---------------------------------------------------------------------------
  61613.     Set @SSQL = 'Select ''A'', D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Identif_Br, D.Ispratnica,
  61614.             (Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End),
  61615.             (Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End)
  61616.             From Dokr D
  61617.             Inner Join StaAmbal S On S.DokrId=D.DokrID
  61618.             Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  61619.             Where S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61620.     If @KupDob = 'K'
  61621.         Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' '
  61622.     Else If @KupDob = 'D'
  61623.         Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' '
  61624.     If @Povratna = 'D'
  61625.         Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61626.     If @Sifra_Kup Is Not Null 
  61627.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  61628.     If @Sifra_Obj Is Not Null
  61629.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(10)) + ' '
  61630.     If @Datum_Od Is Not Null 
  61631.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61632.     If @Datum_Do Is Not Null 
  61633.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  61634.     If @Sifra_Oe Is Not Null
  61635.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61636.     If @Koi_OE Is Not NULL
  61637.              Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  61638.     If @Amb_GAmb = 'G' -- Gajbi
  61639.         Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''G'') '
  61640.     Else -- If @Amb_GAmb = 'A' -- Sisinja
  61641.         Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''N'') '
  61642.     Insert Into #Tab Exec(@SSQL)
  61643. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61644. -- Za vo izvestajot da se presmeta kolicina na zbirna ambalaza vrakam VoGAmb
  61645. --    Declare @VoGamb as Decimal(12,4)
  61646. --    Set @VoGamb=(Select VoGamb From KatAmb Where Sifra_Amb=@Sifra_Amb)
  61647. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61648. /*    If @Amb_GAmb = 'G'
  61649.     Begin
  61650.         If @VoGAmb Is Null Or @VoGAmb = 0
  61651.             Select OdKojaTab, Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, Zadolzenie, ABS(Razdolzenie) Razdolzenie, @VoGAmb VoGAmb, Null as Sifra_Komint, Null as Ime_Komint From #Tab
  61652.         Else 
  61653.             Select OdKojaTab, Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, (Zadolzenie/@VoGAmb) Zadolzenie, ABS(Razdolzenie/@VoGAmb) Razdolzenie, @VoGAmb VoGAmb, Null as Sifra_Komint, Null as Ime_Komint From #Tab
  61654.     End
  61655.     Else
  61656. */
  61657.     Select OdKojaTab, Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, Identif_Br, Ispratnica, 
  61658.         Zadolzenie, ABS(Razdolzenie) Razdolzenie, @VoGAmb VoGAmb, Null as Sifra_Komint, Null as Ime_Komint 
  61659.     From #Tab
  61660.  
  61661.  
  61662. Go
  61663. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_ambalaza_oe]'))
  61664. drop procedure [dbo].[sp_kart_ambalaza_oe]
  61665.  
  61666. Go
  61667. CREATE   PROCEDURE sp_Kart_Ambalaza_OE
  61668.     @Sifra_Oe        char(6),
  61669.     @Koi_Oe        varchar(10) = Null,
  61670.     @Sifra_Amb        char(6),        -- Mora da se vnese  Sifra_Amb
  61671.     @Datum_Od        smalldatetime,
  61672.     @Datum_Do        smalldatetime,
  61673.     @Povratna        char(1) = 'D',
  61674.     @VkluciAmbOdDok     char(1) = 'D', 
  61675.     @KojIzv        char(1) = 'C',    -- D - Izv vo odnos na dobavuvac,    K - Izv vo odnos na kupuvac,     C - Celosen    
  61676.     @PrethZadolz        decimal(18,6) = Null Output,
  61677.     @PrethRazdolz        decimal(18,6) = Null Output,
  61678.     @VoGamb        decimal(18,6) = Null Output
  61679. AS
  61680.     Declare @SSQL as varchar(8000)
  61681. ---------------------------------------------------------------------------------- PRETHODNA SOSTOJBA --------------------------------------------------------------------------------
  61682. ----------------------------------------------------------------------  Od Stavr prodadeni proizvodi so ambalaza -------------------------------------------------------------------
  61683. -- SUM(Case D.VlIzl When ''I'' Then (Case WHEN S.Kolic < 0 Then (-1*S.Kolic/A.SodrziArt) Else 0 End))
  61684.     If @Datum_Od Is Not Null
  61685.     Begin
  61686.         Create Table #Preth    
  61687.         (
  61688.          Zadolzenie    decimal(18,6),
  61689.          Razdolzenie    decimal(18,6)
  61690.         )
  61691.         If @VkluciAmbOdDok = 'D'
  61692.         Begin
  61693.             If @KojIzv in ('C', 'D')
  61694.             Begin
  61695.                 Set @SSQL = 'Select 
  61696.                         SUM((Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End)),
  61697.                         SUM((Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (-1*(S.Kolic/A.SodrziArt)) Else (-1*S.Kolic) End) Else 0 End))
  61698.                         From Dokr D
  61699.                         Inner Join Stavr S On S.DokrId=D.DokrID
  61700.                         Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  61701.                         Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  61702.                         Where D.VlIzl = ''V'' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' 
  61703.                         And D.Datum_Dok < ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61704.                 If @Povratna = 'D'
  61705.                     Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61706.                 If @Sifra_Oe Is Not Null
  61707.                     Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61708.                 Insert Into #Preth Exec(@SSQL)                                    
  61709.             End
  61710.                 --    SUM((Case WHEN S.Kolic < 0 Then S.Kolic/A.SodrziArt Else 0 End)),
  61711.                 --    SUM((Case WHEN S.Kolic > 0 Then S.Kolic/A.SodrziArt Else 0 End))
  61712.             If @KojIzv in ('C', 'K')
  61713.             Begin
  61714.                 Set @SSQL = 'Select 
  61715.                         SUM((Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (-1*(S.Kolic/A.SodrziArt)) Else (-1*S.Kolic) End) Else 0 End)),
  61716.                         SUM((Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End))
  61717.                         From Dokr D
  61718.                         Inner Join Stavr S On S.DokrId=D.DokrID
  61719.                         Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  61720.                         Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  61721.                         Where D.VlIzl = ''I'' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' 
  61722.                         And D.Datum_Dok < ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61723.                 If @Povratna = 'D'
  61724.                     Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61725.                 If @Sifra_Oe Is Not Null
  61726.                     Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61727.                 Insert Into #Preth Exec(@SSQL)
  61728.             End
  61729.         End
  61730. ------------------------------------------------------------------------------ Od StaAmbal dadena ambalaza ---------------------------------------------------------------------------
  61731.         If @KojIzv in ('C', 'D')
  61732.         Begin
  61733.             Set @SSQL = 'Select 
  61734.                     SUM((Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End)),
  61735.                     Abs(SUM((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End)))
  61736.                     From Dokr D
  61737.                     Inner Join StaAmbal S On S.DokrId=D.DokrID
  61738.                     Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  61739.                     Where D.VlIzl = ''V'' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' 
  61740.                     And D.Datum_Dok < ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61741.             If @Povratna = 'D'
  61742.                 Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61743.             If @Sifra_Oe Is Not Null
  61744.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61745.             If @Koi_OE Is Not NULL
  61746.                      Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  61747.             Insert Into #Preth Exec(@SSQL)
  61748.         End
  61749.         If @KojIzv in ('C', 'K')
  61750.         Begin
  61751.             Set @SSQL = 'Select 
  61752.                     Abs(SUM((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End))),
  61753.                     SUM((Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End))
  61754.                     From Dokr D
  61755.                     Inner Join StaAmbal S On S.DokrId=D.DokrID
  61756.                     Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  61757.                     Where D.VlIzl = ''I'' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' 
  61758.                     And D.Datum_Dok < ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61759.             If @Povratna = 'D'
  61760.                 Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61761.             If @Sifra_Oe Is Not Null
  61762.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61763.             If @Koi_OE Is Not NULL
  61764.                      Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '    
  61765.             Insert Into #Preth Exec(@SSQL)
  61766.         End
  61767.             Select @PrethZAdolz=Sum(Zadolzenie), @PrethRazdolz=Sum(Razdolzenie) From #Preth
  61768.     End -- If @Datum_Od Is Not Null
  61769. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61770. -------------------------------------------------------------------------------  TEKOVEN PROMET-----------------------------------------------------------------------------------------
  61771.     Create Table #Tab
  61772.     (
  61773.      OdKojaTab    char(1),
  61774.      DokrId        int,
  61775.      Sifra_Oe    smallint,
  61776.      Sifra_Dok    smallint,
  61777.      Broj_Dok    int,
  61778.      Datum_Dok    smalldatetime,
  61779.      Identif_Br    varchar(50),
  61780.      Ispratnica    varchar(50),
  61781.      Zadolzenie    decimal(18,6),
  61782.      Razdolzenie    decimal(18,6)
  61783.     )
  61784. ----------------------------------------------------------------------  Od Stavr prodadeni proizvodi so ambalaza -------------------------------------------------------------------
  61785.     If @VkluciAmbOdDok = 'D'
  61786.     Begin
  61787.         If @KojIzv in ('C', 'D')
  61788.         Begin
  61789.                     --(Case WHEN S.Kolic > 0 Then S.Kolic/A.SodrziArt Else 0 End),
  61790.                     --(Case WHEN S.Kolic < 0 Then S.Kolic/A.SodrziArt Else 0 End)
  61791.             Set @SSQL = 'Select '' '', D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Identif_Br, D.Ispratnica, 
  61792.                     (Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End),
  61793.                     (Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (-1*(S.Kolic/A.SodrziArt)) Else (-1*S.Kolic) End) Else 0 End)
  61794.                     From Dokr D
  61795.                     Inner Join Stavr S On S.DokrId=D.DokrID
  61796.                     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  61797.                     Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  61798.                     Where D.VlIzl = ''V'' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61799.             If @Povratna = 'D'
  61800.                 Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61801.             If @Datum_Od Is Not Null 
  61802.                 Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61803.             If @Datum_Do Is Not Null 
  61804.                 Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  61805.             If @Sifra_Oe Is Not Null
  61806.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61807.             Insert Into #Tab Exec(@SSQL)
  61808.         End
  61809.         If @KojIzv in ('C', 'K')
  61810.         Begin
  61811.                     --(Case WHEN S.Kolic < 0 Then S.Kolic/A.SodrziArt Else 0 End),
  61812.                     --(Case WHEN S.Kolic > 0 Then S.Kolic/A.SodrziArt Else 0 End)
  61813.             Set @SSQL = 'Select '' '', D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Identif_Br, D.Ispratnica, 
  61814.                     (Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (-1*(S.Kolic/A.SodrziArt)) Else (-1*S.Kolic) End) Else 0 End),
  61815.                     (Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End)
  61816.                     From Dokr D
  61817.                     Inner Join Stavr S On S.DokrId=D.DokrID
  61818.                     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  61819.                     Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  61820.                     Where D.VlIzl = ''I'' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61821.             If @Povratna = 'D'
  61822.                 Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61823.             If @Datum_Od Is Not Null 
  61824.                 Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61825.             If @Datum_Do Is Not Null 
  61826.                 Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  61827.             If @Sifra_Oe Is Not Null
  61828.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61829.             Insert Into #Tab Exec(@SSQL)
  61830.         End
  61831.     End
  61832. ------------------------------------------------------------------------------ Od StaAmbal dadena ambalaza ---------------------------------------------------------------------------
  61833.         If @KojIzv in ('C', 'D')
  61834.         Begin
  61835.             Set @SSQL = 'Select ''A'', D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Identif_Br, D.Ispratnica, 
  61836.                     (Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End),
  61837.                     Abs((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End))
  61838.                     From Dokr D
  61839.                     Inner Join StaAmbal S On S.DokrId=D.DokrID
  61840.                     Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  61841.                     Where D.VlIzl = ''V'' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61842.             If @Povratna = 'D'
  61843.                 Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61844.             If @Datum_Od Is Not Null 
  61845.                 Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61846.             If @Datum_Do Is Not Null 
  61847.                 Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  61848.             If @Sifra_Oe Is Not Null
  61849.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61850.             If @Koi_OE Is Not NULL
  61851.                      Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '        
  61852.             Insert Into #Tab Exec(@SSQL)
  61853.         End
  61854.         If @KojIzv in ('C', 'K')
  61855.         Begin
  61856.             Set @SSQL = 'Select ''A'', D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Identif_Br, D.Ispratnica, 
  61857.                     Abs((Case WHEN S.Kolic < 0 Then S.Kolic/A.SodrziArt Else 0 End)),
  61858.                     (Case WHEN S.Kolic > 0 Then S.Kolic/A.SodrziArt Else 0 End)
  61859.                     From Dokr D
  61860.                     Inner Join StaAmbal S On S.DokrId=D.DokrID
  61861.                     Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  61862.                     Where D.VlIzl = ''I'' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  61863.             If @Povratna = 'D'
  61864.                 Set @SSQL = @SSQL + ' And A.Povratna = ''D'' '
  61865.             If @Datum_Od Is Not Null 
  61866.                 Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  61867.             If @Datum_Do Is Not Null 
  61868.                 Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  61869.             If @Sifra_Oe Is Not Null
  61870.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  61871.             If @Koi_OE Is Not NULL
  61872.                      Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '    
  61873.             Insert Into #Tab Exec(@SSQL)
  61874.         End
  61875. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61876. -- Za vo izvestajot da se presmeta kolicina na zbirna ambalaza vrakam VoGAmb
  61877.     Set @VoGamb=(Select VoGamb From KatAmb Where Sifra_Amb=@Sifra_Amb)
  61878.     If @VoGamb = 0 Or @VoGamb Is Null
  61879.         Set @VoGamb = 1
  61880. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  61881.     Select T.OdKojaTab, T.Sifra_Oe, T.Sifra_Dok, T.Broj_Dok, T.Datum_Dok, T.Identif_Br, T.Ispratnica, T.Zadolzenie, T.Razdolzenie, @VoGAmb VoGAmb,
  61882.         (Case When D.ImaDodatna In ('P','D') Then Cast(D.Sifra_Prim as varchar(6)) Else D.Sifra_Kup End) Sifra_Komint,
  61883.         (Case When D.ImaDodatna In ('P','D') Then O.ImeOrg Else Kup.ImeKup End) Ime_Komint
  61884.     From #Tab T
  61885.     Inner Join Dokr D On D.DokrID=T.DokrID
  61886.     Left Outer Join Orged O On O.Sifra_Oe=D.Sifra_Prim
  61887.     Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  61888.  
  61889.  
  61890. Go
  61891. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_kons_org]'))
  61892. drop procedure [dbo].[sp_kart_kons_org]
  61893.  
  61894. Go
  61895.  
  61896. CREATE    PROCEDURE [dbo].[sp_Kart_Kons_Org]
  61897.     @Datum_Od    smalldatetime = Null,
  61898.     @Datum_Do    smalldatetime = Null,
  61899.     @Sifra_OE    smallint = Null,
  61900.     @Lista_OE    varchaR(2000) = Null,
  61901.     @DaliNovi    char(1) = Null,
  61902.     @DaliOdjFakt    char(1) = Null,
  61903.     @DaliOdjNeFakt    char(1) = Null,
  61904.     @Sifra_Od    varchar(20) = Null,
  61905.     @Sifra_Do    varchar(20) = Null,
  61906.     @Kto        char(6) = Null,
  61907.     @Sifra_Gr    char(3) = Null,
  61908.     @Sifra_Podg    char(6) = Null,
  61909.     @Lokacija    varchar(10) = Null,
  61910.     @DaliStornirani    char(1) = 'D'
  61911.  
  61912. AS
  61913.  
  61914.     Declare @SSQL_Usl varchaR(2000)
  61915.     set @SSQL_Usl = ' where 1 = 1 '
  61916.  
  61917.     if @Datum_Od is not null
  61918.         set @SSQL_Usl = @SSQL_Usl + ' and D.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(25)) + ''' ' 
  61919.  
  61920.     if @Datum_Do is not null
  61921.         set @SSQL_Usl = @SSQL_Usl + ' and D.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(25)) + ''' ' 
  61922.  
  61923.        If @Sifra_OE Is NOT Null
  61924.            Set @SSQL_Usl = @SSQL_Usl + ' and D.Sifra_OE = ' + cast(@Sifra_OE as varchar(5)) + ' '
  61925.     else if @Lista_Oe is not NULL
  61926.            Set @SSQL_Usl = @SSQL_Usl + ' and D.Sifra_OE in (' + @Lista_OE + ') '
  61927.  
  61928.        If @Sifra_Od IS NOT NULL 
  61929.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art >= ''' + @Sifra_Od + ''' '
  61930.  
  61931.        If @Sifra_Do IS NOT NULL 
  61932.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art <= ''' + @Sifra_Do + ''' '
  61933.  
  61934.        If @Kto IS NOT NULL
  61935.               Set @SSQL_Usl = @SSQL_Usl + ' AND K.Kto = ''' + @Kto + ''' '
  61936.  
  61937.        If @Sifra_Gr IS NOT NULL
  61938.               Set @SSQL_Usl = @SSQL_Usl + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  61939.  
  61940.      If @Sifra_Podg Is Not Null
  61941.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  61942.  
  61943.        If @Lokacija IS NOT NULL
  61944.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Lokacija = ''' + @Lokacija + ''' '
  61945.  
  61946.     Declare @SSQL Varchar(2000)
  61947.     SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.Kasa, 
  61948.             D.Datum_Dok, D.Sifra_Kup, Kom.ImeKup, D.Sifra_Obj,
  61949.             S.Sifra_Art, K.ImeArt, K.Edmera, S.VlIzl, S.Kolic, S.DokCena, S.MagCena, S.Uces, 
  61950.             S.DanDokCena, S.DanMagCena, S.POsn,
  61951.             D.Identif_Br, D.Ispratnica, K.ImaKomerc, K.Sifra_Podg, 
  61952.             S.NabCena, D.Toc200, D.Spck_stat, O.ImeOrg, D.DokrId, Prima.ImeOrg ImeOrgPrima,
  61953.             DS.Dokr_Id_Storno, case when DS.Dokr_Id_Storno is null then ''N'' else ''S'' end Storniran 
  61954.         FROM DOKR D
  61955.         inner JOIN Stavr S ON S.DokrID = D.DokrID
  61956.         inner join TipDok TD On D.Sifra_dok =  TD.SifrA_Dok
  61957.         inner JOIN Katart K ON S.Sifra_Art = K.Sifra_Art 
  61958.         LEFT OUTER JOIN Komint Kom ON D.Sifra_Kup = Kom.Sifra_Kup 
  61959.         LEFT OUTER JOIN OrgEd Prima ON D.Sifra_Prim = Prima.Sifra_Oe 
  61960.         Left Outer Join DokrStorno  DS
  61961.             on DS.Dokr_Id_Orig = D.DokrId
  61962.         inner join OrgEd O
  61963.             on D.Sifra_Oe = O.Sifra_Oe '
  61964.     if @Sifra_Gr is not null
  61965.                Set @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg = P.Sifra_Podg '
  61966.  
  61967.     ------
  61968.  
  61969.     Declare @SSQL_Full varchaR(8000)
  61970.     set @SSQL_Full = ''
  61971.  
  61972.     Declare @SSQL_Usl_Spec varchaR(2000)
  61973.  
  61974.     if @DaliNovi = 'D'
  61975.         begin
  61976.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''V'' '
  61977.  
  61978.         if @SSQL_Full <> ''
  61979.                 set @SSQL_Full = @SSQL_Full + '
  61980.                  Union 
  61981.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  61982.     
  61983.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  61984.         end
  61985.  
  61986.     if @DaliStornirani = 'D'
  61987.         begin
  61988.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and 
  61989.                                    (D.Spck_Stat = ''S'' or DS.Dokr_Id_Storno is not null) '
  61990.  
  61991.         if @SSQL_Full <> ''
  61992.                 set @SSQL_Full = @SSQL_Full + ' 
  61993.                  Union
  61994.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  61995.     
  61996.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  61997.         end
  61998.  
  61999.     if @DaliOdjNeFakt = 'D'
  62000.         begin
  62001.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and 
  62002.                              (D.Spck_Stat is null or (D.Spck_Stat <> ''F'' and D.Spck_Stat <> ''S'')) '
  62003.  
  62004.         if @SSQL_Full <> ''
  62005.                 set @SSQL_Full = @SSQL_Full + ' 
  62006.                  Union
  62007.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62008.     
  62009.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  62010.         end
  62011.  
  62012.     if @DaliOdjFakt = 'D'
  62013.         begin
  62014.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and D.Spck_Stat = ''F'' and DS.Dokr_Id_Storno is null '
  62015.  
  62016.         if @SSQL_Full <> ''
  62017.                 set @SSQL_Full = @SSQL_Full + '
  62018.                  Union
  62019.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62020.     
  62021.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  62022.         end
  62023.  
  62024.     --print @SSQL_Full
  62025.  
  62026.     EXEC (@SSQL_Full)
  62027.  
  62028.  
  62029.  
  62030.  
  62031. Go
  62032. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_kons_org_ctab]'))
  62033. drop procedure [dbo].[sp_kart_kons_org_ctab]
  62034.  
  62035. Go
  62036.  
  62037. CREATE  PROCEDURE [dbo].[sp_Kart_Kons_Org_CTab]
  62038.     @Datum_Od    smalldatetime = Null,
  62039.     @Datum_Do    smalldatetime = Null,
  62040.     @Sifra_OE    smallint = Null,
  62041.     @Lista_OE    varchaR(2000) = Null,
  62042.     @DaliNovi    char(1) = Null,
  62043.     @DaliOdjFakt    char(1) = Null,
  62044.     @DaliOdjNeFakt    char(1) = Null,
  62045.     @Sifra_Od    varchar(20) = Null,
  62046.     @Sifra_Do    varchar(20) = Null,
  62047.     @Kto        char(6) = Null,
  62048.     @Sifra_Gr    char(3) = Null,
  62049.     @Sifra_Podg    char(6) = Null,
  62050.     @Lokacija    varchar(10) = Null,
  62051.     @DaliStornirani    char(1) = 'D'
  62052.  
  62053. AS
  62054.  
  62055.     Declare @SSQL_Usl varchaR(2000)
  62056.     set @SSQL_Usl = ' where 1 = 1 '
  62057.  
  62058.     if @Datum_Od is not null
  62059.         set @SSQL_Usl = @SSQL_Usl + ' and D.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(25)) + ''' ' 
  62060.  
  62061.     if @Datum_Do is not null
  62062.         set @SSQL_Usl = @SSQL_Usl + ' and D.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(25)) + ''' ' 
  62063.  
  62064.        If @Sifra_OE Is NOT Null
  62065.            Set @SSQL_Usl = @SSQL_Usl + ' and D.Sifra_OE = ' + cast(@Sifra_OE as varchar(5)) + ' '
  62066.     else if @Lista_Oe is not NULL
  62067.            Set @SSQL_Usl = @SSQL_Usl + ' and D.Sifra_OE in (' + @Lista_OE + ') '
  62068.  
  62069.        If @Sifra_Od IS NOT NULL 
  62070.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art >= ''' + @Sifra_Od + ''' '
  62071.  
  62072.        If @Sifra_Do IS NOT NULL 
  62073.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art <= ''' + @Sifra_Do + ''' '
  62074.  
  62075.        If @Kto IS NOT NULL
  62076.               Set @SSQL_Usl = @SSQL_Usl + ' AND K.Kto = ''' + @Kto + ''' '
  62077.  
  62078.        If @Sifra_Gr IS NOT NULL
  62079.               Set @SSQL_Usl = @SSQL_Usl + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  62080.  
  62081.      If @Sifra_Podg Is Not Null
  62082.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  62083.  
  62084.        If @Lokacija IS NOT NULL
  62085.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Lokacija = ''' + @Lokacija + ''' '
  62086.  
  62087.     Declare @SSQL Varchar(2000)
  62088.     SET @SSQL = 'SELECT D.Sifra_OE, S.Sifra_Art, K.ImeArt, K.Edmera, 
  62089.              sum(case when D.VlIZl = ''V'' then S.Kolic else 0 end) Vlez,
  62090.              sum(case when D.VlIZl = ''I'' and (D.Spck_Stat is null or (D.Spck_Stat <> ''F'' and D.Spck_Stat <> ''S''))
  62091.                 then S.Kolic else 0 end) IzlezNeFakt,
  62092.              sum(case when D.VlIZl = ''I'' and D.Spck_Stat = ''F'' and DS.Dokr_Id_Storno is null
  62093.                 then S.Kolic else 0 end) IzlezFakt,
  62094.              O.ImeOrg
  62095.         FROM DOKR D
  62096.         Left Outer Join DokrStorno  DS
  62097.             on DS.Dokr_Id_Orig = D.DokrId
  62098.         inner JOIN Stavr S ON S.DokrID = D.DokrID
  62099.         inner join TipDok TD On D.Sifra_dok =  TD.SifrA_Dok
  62100.         inner JOIN Katart K ON S.Sifra_Art = K.Sifra_Art 
  62101.         LEFT OUTER JOIN Komint Kom ON D.Sifra_Kup = Kom.Sifra_Kup 
  62102.         LEFT OUTER JOIN OrgEd Prima ON D.Sifra_Prim = Prima.Sifra_Oe 
  62103.         inner join OrgEd O
  62104.             on D.Sifra_Oe = O.Sifra_Oe '
  62105.     if @Sifra_Gr is not null
  62106.                Set @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg = P.Sifra_Podg '
  62107.  
  62108.     Declare @SSQL_Grp Varchar(200)
  62109.     set @SSQL_Grp = ' Group By D.Sifra_Oe, S.Sifra_Art, K.ImeArt, K.EdMera, O.ImeOrg '
  62110.     ------
  62111.  
  62112.     Declare @SSQL_Full varchaR(8000)
  62113.     set @SSQL_Full = ''
  62114.  
  62115.     Declare @SSQL_Usl_Spec varchaR(2000)
  62116.  
  62117.     if @DaliNovi = 'D'
  62118.         begin
  62119.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''V'' '
  62120.  
  62121.         if @SSQL_Full <> ''
  62122.                 set @SSQL_Full = @SSQL_Full + '
  62123.                  Union 
  62124.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62125.     
  62126.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec + @SSQL_Grp
  62127.  
  62128.         end
  62129.  
  62130.     if @DaliStornirani = 'D'
  62131.         begin
  62132.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and 
  62133.                                    (D.Spck_Stat = ''S'' or DS.Dokr_Id_Storno is not null) '
  62134.  
  62135.         if @SSQL_Full <> ''
  62136.                 set @SSQL_Full = @SSQL_Full + ' 
  62137.                  Union
  62138.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62139.     
  62140.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec + @SSQL_Grp
  62141.         end
  62142.  
  62143.     if @DaliOdjNeFakt = 'D'
  62144.         begin
  62145.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and 
  62146.                              (D.Spck_Stat is null or (D.Spck_Stat <> ''F'' and D.Spck_Stat <> ''S'')) '
  62147.  
  62148.         if @SSQL_Full <> ''
  62149.                 set @SSQL_Full = @SSQL_Full + ' 
  62150.                  Union
  62151.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62152.     
  62153.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec + @SSQL_Grp
  62154.         end
  62155.  
  62156.     if @DaliOdjFakt = 'D'
  62157.         begin
  62158.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and D.Spck_Stat = ''F'' and DS.Dokr_Id_Storno is null '
  62159.  
  62160.         if @SSQL_Full <> ''
  62161.                 set @SSQL_Full = @SSQL_Full + '
  62162.                  Union
  62163.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62164.     
  62165.         set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec + @SSQL_Grp
  62166.         end
  62167.  
  62168.     --print @SSQL_Full
  62169.  
  62170.     EXEC (@SSQL_Full)
  62171.  
  62172.  
  62173.  
  62174. Go
  62175. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_korisnici]'))
  62176. drop procedure [dbo].[sp_kart_korisnici]
  62177.  
  62178. Go
  62179.  
  62180.  
  62181.  
  62182.  
  62183. CREATE           PROCEDURE sp_Kart_Korisnici
  62184.     @Sifra_Oe    smallint = null,
  62185.     @KoiOe    char(6) = null,
  62186.     @Datum_Od    smalldatetime = null,
  62187.     @Datum_Do    smalldatetime = null,
  62188.     @Sifra_Kor    varchar(20),
  62189.     @Sifra_TipKartKor    smallint = Null,
  62190.     @Sifra_Kup    char(6) = Null,
  62191.     @Aktiven    char(1) = Null,
  62192.     @Kred_Klub     char(2) = 'KR',        -- KR - Kreditni,    KL - Klub,      K2 - Zaedno
  62193.         @Sifra_Oe_Prod    smallint = null,
  62194.     @Preth_Dolzi    decimal(18,6) OUTPUT,
  62195.     @Preth_Pobar    decimal(18,6) OUTPUT,
  62196.     @Limit        decimal(18,6) OUTPUT
  62197. AS
  62198.     Declare @SSQL as varchar(2000)
  62199.     Select @Limit = Novi_Limi From KartKor Where Sifra_Kor=@Sifra_Kor
  62200.     If @Datum_Od Is Not Null
  62201.     Begin
  62202.         Create Table #Tab
  62203.         (
  62204.          Preth_Dolzi    decimal(18,6),
  62205.          Preth_Pobar    decimal(18,6)
  62206.         )
  62207.         Set @SSQL = ' Insert Into #Tab '
  62208.         If @Kred_Klub = 'KL'
  62209.             Set @SSQL = @SSQL + ' Select Sum(case when KP.KlubDolzi is null then 0 else KP.KlubDolzi end), 0 as Pobaruva '
  62210.         Else If @Kred_Klub = 'KR'
  62211.             Set @SSQL = @SSQL + ' Select sum(KP.Dolzi), Sum(KP.Pobaruva) '
  62212.         Else 
  62213.             Set @SSQL = @SSQL + ' Select sum(KP.Dolzi + (case when KP.KlubDolzi is null then 0 else KP.KlubDolzi end)), 
  62214.                         sum(KP.Pobaruva) '
  62215.         Set @SSQL = @SSQL + ' From KartProm KP '
  62216.         If @Sifra_TipKartKor Is Not Null Or @Aktiven Is Not Null
  62217.             Set @SSQL = @SSQL + ' Inner Join KartKor KK On KK.Sifra_Kor=KP.Sifra_Kor '
  62218.         Set @SSQL = @SSQL + ' Where KP.Sifra_Kor = ''' + @Sifra_Kor + ''' ' 
  62219.         If @Sifra_Oe Is Not Null
  62220.             Set @SSQL = @SSQL + ' and KP.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' ' 
  62221.         If @Sifra_Oe_Prod Is Not Null
  62222.             Set @SSQL = @SSQL + ' and KP.Sifra_Oe = ''' + cast(@Sifra_Oe_Prod as varchar(6)) + ''' ' 
  62223.                 If @KoiOE Is Not NULL
  62224.                  Set @SSQL  = @SSQL + ' And KP.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @KoiOe  +  ''') '
  62225.         If @Datum_Od Is Not Null
  62226.             Set @SSQL = @SSQL + ' and KP.Datum_Ska < ''' + cast(@Datum_Od as varchar(35)) + ''' ' 
  62227.         If @Sifra_TipKartKor Is Not Null
  62228.             Set @SSQL = @SSQL + ' and KK.Sifra_TipKartKor = ' + cast(@Sifra_TipKartKor as varchar(6)) + ' ' 
  62229.         If @Sifra_Kup Is Not Null
  62230.             Set @SSQL  = @SSQL + ' And KP.Sifra_Kup = ''' + @Sifra_Kup + ''' '    
  62231.         If @Aktiven Is Not Null
  62232.             Set @SSQL  = @SSQL + ' And KK.Aktiven = ''' + @Aktiven + ''' '
  62233.         If @Kred_Klub = 'KL'
  62234.             Set @SSQL = @SSQL + ' And KP.KlubDolzi <> 0 '
  62235.         Else If @Kred_Klub = 'KR'
  62236.             Set @SSQL = @SSQL + ' And (KP.Dolzi <> 0 Or KP.Pobaruva <> 0) '
  62237.         Else
  62238.             Set @SSQL = @SSQL + ' And ((KP.Dolzi <> 0 Or KP.Pobaruva <> 0) Or KP.KlubDolzi <> 0)'
  62239.         Exec(@SSQL)
  62240.         Select @Preth_Dolzi = Sum(Preth_Dolzi), @Preth_Pobar=Sum(Preth_Pobar) from #Tab    
  62241.     End
  62242.     Set @SSQL = 'Select KP.Sifra_OE, O.ImeOrg, KP.Broj_Ska, KP.Datum_Ska, KP.Sifra_Nac, KP.FraUpl, '
  62243.         If @Kred_Klub = 'KL'
  62244.             Set @SSQL = @SSQL + ' KP.KlubDolzi Dolzi, 0 as Pobaruva '
  62245.         Else If @Kred_Klub = 'KR'
  62246.             Set @SSQL = @SSQL + ' KP.Dolzi, KP.Pobaruva '
  62247.         Else 
  62248.             Set @SSQL = @SSQL + ' (KP.Dolzi + (case when KP.KlubDolzi is null then 0 else KP.KlubDolzi end)) Dolzi, KP.Pobaruva '
  62249.         Set @SSQL = @SSQL + ' From KartProm KP 
  62250.                     Left Outer Join Orged O On O.Sifra_Oe = KP.Sifra_Oe '
  62251.     If @Sifra_TipKartKor Is Not Null Or @Aktiven Is Not Null
  62252.         Set @SSQL = @SSQL + ' Inner Join KartKor KK On KK.Sifra_Kor=KP.Sifra_Kor '
  62253.     Set @SSQL = @SSQL + ' Where KP.Sifra_Kor = ''' + @Sifra_Kor + ''' ' 
  62254.     If @Sifra_Oe Is Not Null
  62255.         Set @SSQL = @SSQL + ' and KP.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' ' 
  62256.     If @Sifra_Oe_Prod Is Not Null
  62257.         Set @SSQL = @SSQL + ' and KP.Sifra_Oe = ''' + cast(@Sifra_Oe_Prod as varchar(6)) + ''' ' 
  62258.         If @KoiOE Is Not NULL
  62259.              Set @SSQL  = @SSQL + ' And KP.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @KoiOe  +  ''') '
  62260.     If @Datum_Od Is Not Null
  62261.         Set @SSQL = @SSQL + ' and KP.Datum_Ska >= ''' + cast(@Datum_Od as varchar(35)) + ''' ' 
  62262.     If @Datum_Do Is Not Null
  62263.         Set @SSQL = @SSQL + ' and KP.Datum_Ska <= ''' + cast(@Datum_Do as varchar(35)) + ''' ' 
  62264.     If @Sifra_TipKartKor Is Not Null
  62265.         Set @SSQL = @SSQL + ' and KK.Sifra_TipKartKor = ' + cast(@Sifra_TipKartKor as varchar(6)) + ' ' 
  62266.     If @Sifra_Kup Is Not Null
  62267.         Set @SSQL  = @SSQL + ' And KP.Sifra_Kup = ''' + @Sifra_Kup + ''' '    
  62268.     If @Aktiven Is Not Null
  62269.         Set @SSQL  = @SSQL + ' And KK.Aktiven = ''' + @Aktiven + ''' '
  62270.     If @Kred_Klub = 'KL'
  62271.         Set @SSQL = @SSQL + ' And KP.KlubDolzi <> 0 '
  62272.     Else If @Kred_Klub = 'KR'
  62273.         Set @SSQL = @SSQL + ' And (KP.Dolzi <> 0 Or KP.Pobaruva <> 0) '
  62274.     Else
  62275.         Set @SSQL = @SSQL + ' And ((KP.Dolzi <> 0 Or KP.Pobaruva <> 0) Or KP.KlubDolzi <> 0)'
  62276.     Set @SSQL = @SSQL + ' ORDER BY KP.Datum_Ska'
  62277.     Exec(@SSQL)
  62278.  
  62279.  
  62280.  
  62281.  
  62282. Go
  62283. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_kup_soodobr]'))
  62284. drop procedure [dbo].[sp_kart_kup_soodobr]
  62285.  
  62286. Go
  62287.  
  62288. CREATE                     PROCEDURE sp_Kart_Kup_SoOdobr
  62289.     @Sifra_Kup Char(6),
  62290.     @KoiFri Char(1),
  62291.        @Datum_Nal_Od Smalldatetime = Null,
  62292.        @Datum_Nal_Do Smalldatetime = Null,
  62293.        @Datum_Dok_Od Smalldatetime = Null,
  62294.        @Datum_Dok_Do Smalldatetime = Null,
  62295.        @Datum_Dosp_Od Smalldatetime = Null,
  62296.        @Datum_Dosp_Do Smalldatetime = Null,
  62297.        @Kto Char(10) = Null,
  62298.      @Sifra_OE Smallint = Null,
  62299.        @Koi_OE Varchar(10) = Null,
  62300.     @Sifra_Pat Smallint = Null,
  62301.     @Sifra_Nal Smallint = Null,
  62302.     @Sifra_Div Smallint = Null,
  62303.     @Podred char(1) = Null
  62304. AS
  62305.     Declare @SSQL Varchar(8000)
  62306.     Declare @SSQLUsl Varchar(8000)
  62307.     Set @SSQLUsl = ' '
  62308.     If @KoiFri = 'P'
  62309.         Set @SSQLUsl = @SSQLUsl + ' AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  62310.     Else If @KoiFri = 'N'
  62311.         Set @SSQLUsl = @SSQLUsl + ' AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  62312.     If @Kto Is NOT Null
  62313.         Set @SSQLUsl = @SSQLUsl + ' AND A.Kto=''' + @Kto + ''' '
  62314.     If @Sifra_Pat Is NOT Null
  62315.         Set @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  62316.     If @Sifra_OE Is NOT Null
  62317.         Set @SSQLUsl = @SSQLUsl + ' AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  62318.     If @Koi_OE Is Not Null
  62319.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  62320.     If @Datum_Dosp_Od Is Not Null
  62321.         Set @SSQLUsl = @SSQLUsl + ' And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  62322.     If @Datum_Dosp_Do Is Not Null
  62323.         Set @SSQLUsl = @SSQLUsl + ' And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  62324.     If @Sifra_Nal Is NOT Null
  62325.         Set @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  62326.     If @Sifra_Div Is NOT Null
  62327.         Set @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  62328.     -- Kolku iznesuva fakturata so odbieno odobrenie
  62329.     Create Table #Odobr
  62330.     (
  62331.      AnID_Odob    int,
  62332.      AnID_Fak    int,
  62333.      IznosSoOdobr    decimal(18,6)
  62334.     )
  62335.     Set @SSQL = 'Select O.AnID_Odob, O.AnID_Fak, Sum(O.Iznos_Fra*(1-O.Proc_Odobr/100))
  62336.             FROM AnFinDok A
  62337.             INNER JOIN StaOdobr O On O.AnID_Fak=A.AnID
  62338.             WHERE Sifra_Kup=''' + @Sifra_Kup + ''' AND A.Sifra_Za=''1'' '
  62339.     If @Datum_Dok_Od Is NOT Null
  62340.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62341.     If @Datum_Dok_Do Is NOT Null
  62342.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62343.     If @Datum_Nal_Od Is NOT Null
  62344.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  62345.     If @Datum_Nal_Do Is NOT Null
  62346.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  62347.     Set @SSQL = @SSQL + @SSQLUsl + 'Group By O.AnID_Odob, O.AnID_Fak '
  62348.     -- za onie fakturi za koi nema presmetano odobrenie, a go ispolnuvaat uslovot za dobivanje odobrenie
  62349.     Set @SSQL = @SSQL + 'Union
  62350.             Select Null as AnID_Odob, A.AnID, Sum(A.Dolzi*0.95)
  62351.             FROM AnFinDok A
  62352.             Inner Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  62353.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' AND A.Sifra_Za=''1'' 
  62354.             And Kup.KojaCena In (''2'',''5'')
  62355.             And A.AnID Not In (Select AnID_Fak From StaOdobr)
  62356.             And A.AnID Not In (Select AnID_Odob From StaOdobr) 
  62357.             And A.Dolzi > 0 '
  62358.     If @Datum_Dok_Od Is NOT Null
  62359.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62360.     If @Datum_Dok_Do Is NOT Null
  62361.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62362.     If @Datum_Nal_Od Is NOT Null
  62363.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  62364.     If @Datum_Nal_Do Is NOT Null
  62365.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  62366.     Set @SSQL = @SSQL + @SSQLUsl + 'Group By A.AnID '
  62367.     Insert Into #Odobr Exec(@SSQL)-- + @SSQLUsl + 'Group By O.AnID_Odob, O.AnID_Fak')
  62368.     -- Site Fakturi i za niv presmetani odobrenija, (ne se zemaat odobrenijata od AnFinDok)
  62369.     SET @SSQL = 'SELECT A.Datum_Dok as D1, A.AnID A1, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  62370.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  62371.             O.IznosSoOdobr, A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, 
  62372.             A.Sifra_Za, A.AnID, A.Opis
  62373.             FROM AnFinDok A
  62374.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  62375.             Left Outer Join #Odobr O On O.AnID_Fak=A.AnID
  62376.             WHERE Sifra_Kup=''' + @Sifra_Kup + ''' AND A.Sifra_Za=''1'' 
  62377.             And A.AnID Not In (Select AnID_Odob From StaOdobr) '
  62378.     If @Datum_Dok_Od Is NOT Null
  62379.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62380.     If @Datum_Dok_Do Is NOT Null
  62381.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62382.     If @Datum_Nal_Od Is NOT Null
  62383.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  62384.     If @Datum_Nal_Do Is NOT Null
  62385.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  62386.     Set @SSQL = @SSQL + @SSQLUsl
  62387.     -- Gi dodavame odobrenijata (gi vrzuvame odobrenijata na sekoja faktura vo iznosot koj se odnesuva na taa faktura)
  62388.     Set @SSQL = @SSQL + ' Union 
  62389.             Select F.Datum_Dok as D1, F.AnID A1, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  62390.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  62391.             (O.Iznos_Fra*O.Proc_Odobr/100) as IznosSoOdobr, (-1*O.Iznos_Fra*O.Proc_Odobr/100) Dolzi, 0 Pobaruva, 
  62392.             0 as Plateno_Dolzi, 0 as Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis
  62393.             FROM AnFinDok A
  62394.             INNER JOIN StaOdobr O On O.AnID_Odob=A.AnID
  62395.             INNER JOIN AnFinDok F On F.AnID=O.AnID_Fak
  62396.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  62397.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' AND A.Sifra_Za=''1'' 
  62398.             And A.AnID In (Select AnID_Odob From StaOdobr) '
  62399.     If @Datum_Dok_Od Is NOT Null
  62400.         SET @SSQL = @SSQL + 'AND F.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62401.     If @Datum_Dok_Do Is NOT Null
  62402.          SET @SSQL = @SSQL + 'AND F.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62403.     If @Datum_Nal_Od Is NOT Null
  62404.         SET @SSQL = @SSQL + 'AND F.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  62405.     If @Datum_Nal_Do Is NOT Null
  62406.          SET @SSQL = @SSQL + 'AND F.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  62407.     Set @SSQL = @SSQL + @SSQLUsl
  62408. /*    Set @SSQL = @SSQL + ' Union 
  62409.             Select F.Datum_Dok as D1, F.AnID A1, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  62410.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  62411.             0 as IznosSoOdobr, (-1*O.Iznos_Fra*O.Proc_Odobr/100) Dolzi, 0 Pobaruva, 
  62412.             0 as Plateno_Dolzi, 0 as Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis
  62413.             FROM AnFinDok A
  62414.             INNER JOIN StaOdobr O On O.AnID_Odob=A.AnID
  62415.             INNER JOIN AnFinDok F On F.AnID=O.AnID_Fak
  62416.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  62417.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' AND A.Sifra_Za=''1'' 
  62418.             And A.AnID In (Select AnID_Odob From StaOdobr) '
  62419.     If @Datum_Dok_Od Is NOT Null
  62420.         SET @SSQL = @SSQL + 'AND F.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62421.     If @Datum_Dok_Do Is NOT Null
  62422.          SET @SSQL = @SSQL + 'AND F.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62423.     If @Datum_Nal_Od Is NOT Null
  62424.         SET @SSQL = @SSQL + 'AND F.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  62425.     If @Datum_Nal_Do Is NOT Null
  62426.          SET @SSQL = @SSQL + 'AND F.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  62427.     Set @SSQL = @SSQL + @SSQLUsl*/
  62428.     Set @SSQL = @SSQL + ' Union 
  62429.             Select A.Datum_Dok as D1, A.AnID A1, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  62430.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  62431.             (A.Dolzi*0.05) as IznosSoOdobr, 0 as Dolzi, 0 Pobaruva, 
  62432.             0 as Plateno_Dolzi, 0 as Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis
  62433.             FROM AnFinDok A
  62434.             Inner Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  62435.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  62436.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' AND A.Sifra_Za=''1'' 
  62437.             And Kup.KojaCena In (''2'',''5'')
  62438.             And A.AnID Not In (Select AnID_Fak From StaOdobr)
  62439.             And A.AnID Not In (Select AnID_Odob From StaOdobr) 
  62440.             And A.Dolzi > 0 '
  62441.     If @Datum_Dok_Od Is NOT Null
  62442.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62443.     If @Datum_Dok_Do Is NOT Null
  62444.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62445.     If @Datum_Nal_Od Is NOT Null
  62446.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  62447.     If @Datum_Nal_Do Is NOT Null
  62448.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  62449.     Set @SSQL = @SSQL + @SSQLUsl
  62450.     If @Podred = 'D'
  62451.         Set @SSQL = @SSQL + 'Order By Dateadd(Day, A.Rok, A.Datum_Dok), A.Sifra_Za, A.Broj_Dok '
  62452.     Else
  62453.         Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.AnID, A.Dolzi Desc '
  62454.     EXEC(@SSQL)
  62455. print @SSQL
  62456.  
  62457.  
  62458.  
  62459. Go
  62460. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_oe]'))
  62461. drop procedure [dbo].[sp_kart_oe]
  62462.  
  62463. Go
  62464.  
  62465.  
  62466.  
  62467.  
  62468. CREATE                   PROCEDURE sp_Kart_Oe
  62469.     @Sifra_Kup_Od Char(6) = Null,
  62470.     @Sifra_Kup_Do Char(6) = Null,
  62471.        @Datum_Dok_Od Smalldatetime = Null,
  62472.        @Datum_Dok_Do Smalldatetime = Null,
  62473.        @Kto         Char(10) = Null,
  62474.      @Sifra_OE     Smallint = Null,
  62475.        @Koi_OE     Varchar(10) = Null,
  62476.     @VkluciPren    char(1) = 'D',
  62477.     @PrethSost    char(1) = 'D',                   -- N ako ne treba Pocetna Sostojba  -  (za Sub Reporti)
  62478.     @PrethDolzi    Decimal(18,6) Output,
  62479.     @PrethPobar    Decimal(18,6) Output,
  62480.     @PrethFakturi    Decimal(18,6) Output
  62481. AS
  62482.     Declare @SSQL Varchar(8000)
  62483.     Declare @SSQLUsl Varchar(8000)
  62484.     Declare @SSQLUsl1 Varchar(8000)
  62485.     Set @SSQL = ' '
  62486.     Set @SSQLUsl = ' '
  62487.     Set @SSQLUsl1 = ' '
  62488.     Create Table #Kart
  62489.     (
  62490.      Sifra_Oe    smallint,
  62491.      Sifra_Dok    smallint,
  62492.      Broj_Dok    int,
  62493.      Sifra_Kup    char(6),
  62494.      Datum_Dok    smalldatetime,
  62495.      Sifra_Za    char(1),
  62496.          ImaDodatna     char(1),
  62497.      Kto        char(10),
  62498.      Dolzi        decimal(18,6),
  62499.      Pobaruva    decimal(18,6),
  62500.      DolziFakturi   decimal(18,6),
  62501.          BrojDok        varchar (25)
  62502.     )
  62503. ---------------------------------------------------------------------------- U S L O V -------------------------------------------------------------------------------------
  62504.        If @Sifra_Kup_Od Is NOT Null
  62505.               SET @SSQLUsl = @SSQLUsl + 'AND Sifra_Kup >=''' + @Sifra_Kup_Od + ''' '
  62506.        If @Sifra_Kup_Do Is NOT Null
  62507.               SET @SSQLUsl = @SSQLUsl + 'AND Sifra_Kup <=''' + @Sifra_Kup_Do + ''' '
  62508.        If @Kto Is NOT Null
  62509.               SET @SSQLUsl = @SSQLUsl + 'AND Kto=' + @Kto + ' '
  62510.        If @Sifra_OE Is NOT Null
  62511.               SET @SSQLUsl = @SSQLUsl + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  62512.     If @Koi_OE Is Not Null
  62513.         SET @SSQLUsl = @SSQLUsl + 'And Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  62514. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  62515.     If @Datum_Dok_Od Is NOT Null
  62516.         SET @SSQLUsl1 = @SSQLUsl1 + 'AND Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62517.        If @Datum_Dok_Do Is NOT Null
  62518.          SET @SSQLUsl1 = @SSQLUsl1 + 'AND Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62519. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  62520. ----------------------------------------------------------------------- POCETNA SOSTOJBA --------------------------------------------------------------------------
  62521.     If @PrethSost='D'
  62522.          Begin
  62523.         If @Datum_Dok_Od Is Not Null
  62524.              Begin
  62525.               --              UPLATI
  62526.                 SET @SSQL = 'SELECT Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Kup, Datum_Dok, Sifra_Za, null, Kto, 0, Pobaruva, 0, BrojDok
  62527.                      FROM AnFinDok 
  62528.                     WHERE Sifra_Za= 1 and  Pobaruva <> 0  and Datum_Dok < ''' + cast(@Datum_Dok_Od as Varchar(30)) + ''' '
  62529.             INSERT INTO #Kart EXEC(@SSQL+@SSQLUsl)
  62530.               --              FAkturi - dodadeno DK Aug. 3, 2004
  62531.                 SET @SSQL = 'SELECT Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Kup, Datum_Dok, Sifra_Za, null, Kto, 0, 0, Dolzi, BrojDok
  62532.                      FROM AnFinDok 
  62533.                     WHERE Sifra_Za= 1 and  Dolzi <> 0  and Datum_Dok < ''' + cast(@Datum_Dok_Od as Varchar(30)) + ''' '
  62534.             INSERT INTO #Kart EXEC(@SSQL+@SSQLUsl)
  62535.             --                  PRENOSNICI 
  62536.             If @VkluciPren = 'D'
  62537.                  Begin
  62538.                    SET @SSQL = 'SELECT Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Kup, Datum_Dok, Sifra_Za, ImaDodatna, Kto,
  62539.                     (Case ImaDodatna When ''P'' Then Toc200 Else 0 End) Dolzi,
  62540.                     (Case ImaDodatna When ''D'' Then Toc200 Else 0 End) Pobaruva,
  62541.                                         0 DolziFakturi,
  62542.                                         Identif_br BrojDok
  62543.                     FROM Dokr 
  62544.                     WHERE (ImaDodatna = ''P'' Or ImaDodatna = ''D'')  and Datum_Dok < ''' + cast(@Datum_Dok_Od as Varchar(30)) + ''' '
  62545.                 INSERT INTO #Kart EXEC(@SSQL+@SSQLUsl)
  62546.                  End
  62547.             Select @PrethDolzi = Sum(Dolzi), @PrethPobar=Sum(Pobaruva), @PrethFakturi=Sum(DolziFakturi) From #Kart 
  62548.             Delete From #Kart
  62549.                   End
  62550.           End
  62551. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  62552. ---------------------------------------------------------------------------- U P L A T I -------------------------------------------------------------------------------------
  62553.        SET @SSQL = 'SELECT Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Kup, Datum_Dok, Sifra_Za, null, Kto, 0, Pobaruva, 0, BrojDok
  62554.             FROM AnFinDok 
  62555.             WHERE Sifra_Za= 1 and  Pobaruva <> 0 '
  62556.     INSERT INTO #Kart EXEC(@SSQL+@SSQLUsl+@SSQLUsl1)
  62557. ---------------------------------------------------------------------------- F A K T U R I -------------------------------------------------------------------------------------
  62558.        SET @SSQL = 'SELECT Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Kup, Datum_Dok, Sifra_Za, null, Kto, 0, 0, Dolzi, BrojDok
  62559.             FROM AnFinDok 
  62560.             WHERE Sifra_Za= 1 and  Dolzi <> 0 '
  62561.     INSERT INTO #Kart EXEC(@SSQL+@SSQLUsl+@SSQLUsl1)
  62562. ---------------------------------------------------------------------- P R E N O S N I C I ------------------------------------------------------------------------------
  62563.     If @VkluciPren = 'D'
  62564.          Begin
  62565.            SET @SSQL = 'SELECT Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Kup, Datum_Dok, Sifra_Za, ImaDodatna, Kto,
  62566.             (Case ImaDodatna When ''P'' Then Toc200 Else 0 End) Dolzi,
  62567.             (Case ImaDodatna When ''D'' Then Toc200 Else 0 End) Pobaruva,
  62568.                         0 DolziFakturi,
  62569.                         Identif_Br BrojDok
  62570.             FROM Dokr 
  62571.             WHERE (ImaDodatna = ''P'' Or ImaDodatna = ''D'') '
  62572.         INSERT INTO #Kart EXEC(@SSQL+@SSQLUsl+@SSQLUsl1)
  62573.           End
  62574. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  62575.     Select  K.Sifra_OE, O.ImeOrg, K.Sifra_Dok, K.Broj_Dok, K.Sifra_Kup, Kup.ImeKup, K.Datum_Dok, K.Sifra_Za, K.Imadodatna, K.Kto, A.ImeAnal, K.Dolzi, K.Pobaruva, K.DolziFakturi, K.BrojDok
  62576.     From #Kart K
  62577.     Inner Join Orged O On O.Sifra_Oe = K.Sifra_Oe
  62578.     Left Outer Join Komint Kup On Kup.Sifra_Kup = K.Sifra_Kup
  62579.     Left Outer Join Anal A On A.Kto_Anal = K.Kto
  62580.  
  62581.  
  62582.  
  62583. Go
  62584. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_osnsred]'))
  62585. drop procedure [dbo].[sp_kart_osnsred]
  62586.  
  62587. Go
  62588.  
  62589.  
  62590. CREATE      PROCEDURE sp_Kart_OsnSred
  62591.     @Inv_Broj        varchar(20),
  62592.     @Godina        smallint,
  62593.     @Datum_Od        smalldatetime = Null,
  62594.     @Datum_Do        smalldatetime = Null,
  62595.     @GodinaOut        smallint = Null OUTPUT, 
  62596.     @Osn_AmorOut        decimal (18, 2) = Null OUTPUT, 
  62597.     @Otpis_PretOut        decimal (18, 2) = Null OUTPUT, 
  62598.     @Sifra_MikLokOut    char (10) = Null OUTPUT, 
  62599.     @Sifra_AmorOut        char (3) = Null OUTPUT, 
  62600.     @Kto_AnalOut         char (10) = Null OUTPUT, 
  62601.     @Sifra_RabOut         int = Null OUTPUT,
  62602.     @OrigNabVrOut        decimal (18, 2) = Null OUTPUT
  62603. AS
  62604.     Declare @SSQL as varchar(8000)
  62605.     Select @Inv_Broj=Inv_Broj, @GodinaOut=Godina, @Osn_AmorOut=Osn_Amor, @Otpis_PretOut=Otpis_Pret, 
  62606.             @Sifra_MikLokOut=Sifra_MikLok, @Sifra_AmorOut=Sifra_Amor, @Kto_AnalOut=Kto_Anal, 
  62607.                         @Sifra_RabOut=Sifra_Rab, @OrigNabVrOut=OrigNabVr
  62608.     From PocSostOsn
  62609.     Where Inv_Broj = @Inv_Broj  And Godina = cast(@Godina as varchar(4))
  62610.     --------------- Dokolku sredstvoto e  otpisano treba da se presmeta amortizacijata do datumot na otpissuvanje -------------------
  62611.     Declare @Otpis as decimal(18,6)
  62612.     Set @Otpis=0
  62613.     Create Table #TmpOS
  62614.     (
  62615.      Inv_Broj varchar(20)
  62616.     )
  62617.     Set @SSQL = ' Select S.Inv_Broj
  62618.             From  StavOsnSred S
  62619.             Where Tip_StaOsn IN (''T'',''R'',''F'')
  62620.             And S.Inv_Broj = ''' + @Inv_Broj + ''' '
  62621.     If @Datum_Od Is Not Null
  62622.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  62623.     If @Datum_Do Is Not Null
  62624.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  62625.     Insert Into #TmpOS Exec(@SSQL)
  62626.     If @@RowCount > 0
  62627.     Begin
  62628.         Declare @PocMesec smallint
  62629.         Declare @KrMesec smallint
  62630.         Declare @PocDat smalldatetime
  62631.         Declare @KrDat smalldatetime
  62632.         Declare @PocDatGod smalldatetime
  62633.         SET @PocMesec = Month(@Datum_Od)
  62634.         If @PocMesec Is Null
  62635.             Set @PocMesec = 1
  62636.         SET @KrMesec = Month(@Datum_Do)
  62637.         If @KrMesec Is Null
  62638.             Set @KrMesec = 12
  62639.         SET @PocDatGod = dbo.fn_NapraviDatum (@Godina, 1, 1)
  62640.         SET @PocDat = dbo.fn_NapraviDatum (@Godina, @PocMesec, 1)
  62641.         SET @KrDat = dbo.fn_VratiDatumOdDo (@Godina, @KrMesec, 31)
  62642.         CREATE TABLE #PomOsn
  62643.         (
  62644.          Inv_Broj        char(10),
  62645.          DatAkt        smalldatetime,
  62646.          DatPrest    smalldatetime
  62647.         )
  62648.         CREATE TABLE #TmpAmorPresm
  62649.         (
  62650.          Inv_Broj        char(10),
  62651.          Rbr        smallint,
  62652.          DatAkt        smalldatetime,
  62653.          DatPrest    smalldatetime,
  62654.          PocDatAmor    smalldatetime,
  62655.          KrDatAmor    smalldatetime,
  62656.          Osn_Amor    decimal(18,2),
  62657.          Otpis_pret    decimal(18,2),
  62658.          Stapka_Amor    decimal(8,3),
  62659.          PocDatKumul    smalldatetime,
  62660.          KrDatKumul    smalldatetime,
  62661.          PocDatDoPer    smalldatetime,
  62662.          KrDatDoPer    smalldatetime,
  62663.          AmortKumul    decimal(18,6),
  62664.          AmortPer    decimal(18,6)
  62665.         )
  62666.         INSERT INTO #TmpAmorPresm (Inv_Broj, Rbr, DatAkt, DatPrest) 
  62667.         SELECT Inv_Broj, 0,  DatAkt, DatPrest 
  62668.         FROM OsnSred
  62669.         WHERE DatAkt IS NOT NULL AND DatAkt <= @KrDat 
  62670.         AND (DatPrest IS NULL OR Year(DatPrest) >= @Godina)
  62671.         And Inv_Broj = @Inv_Broj
  62672.         INSERT INTO #PomOsn (Inv_Broj, DatAkt, DatPrest) 
  62673.         SELECT Inv_Broj, DatAkt, DatPrest FROM #TmpAmorPresm
  62674.         UPDATE #TmpAmorPresm 
  62675.         SET DatPrest = #PomOsn.DatPrest FROM #PomOsn    
  62676.         WHERE #PomOsn.Inv_Broj = #TmpAmorPresm.Inv_Broj AND #TmpAmorPresm.Rbr=1 
  62677.         UPDATE #TmpAmorPresm 
  62678.         SET Osn_Amor = S.Osn_Amor, Otpis_Pret = S.Otpis_Pret 
  62679.         FROM PocSostOsn S 
  62680.         WHERE S.Inv_Broj = #TmpAmorPresm.Inv_Broj AND S.Godina = @Godina AND #TmpAmorPresm.Rbr=0
  62681.         UPDATE #TmpAmorPresm 
  62682.         SET Osn_Amor = S.Osn_Amor, Otpis_Pret = S.Otpis_Pret 
  62683.         FROM StavOsnSred S 
  62684.         WHERE S.Inv_Broj = #TmpAmorPresm.Inv_Broj
  62685.         AND S.Delov_God = @Godina AND S.Tip_StaOsn ='P' AND #TmpAmorPresm.Osn_Amor IS NULL AND #TmpAmorPresm.Rbr=0
  62686.         UPDATE #TmpAmorPresm SET Stapka_Amor = AmorGrp.Stapka FROM OsnSred, AmorGrp
  62687.         WHERE #TmpAmorPresm.Inv_Broj = OsnSred.Inv_Broj AND OsnSred.Sifra_Amor = AmorGrp.Sifra_Amor
  62688.         UPDATE #TmpAmorPresm SET PocDatAmor = dbo.fn_VratiPrvDatumSledenMes (DatAkt, @Godina)
  62689.         UPDATE #TmpAmorPresm SET KrDatAmor = dbo.fn_NapraviDatum (@Godina+1, 1, 1) WHERE DatPrest IS NULL
  62690.         UPDATE #TmpAmorPresm SET KrDatAmor = dbo.fn_VratiDatumOdDo (year(DatPrest), month(DatPrest), 31) WHERE DatPrest IS NOT NULL
  62691.         UPDATE #TmpAmorPresm SET PocDatKumul = PocDatAmor WHERE PocDatAmor > @PocDatGod
  62692.         UPDATE #TmpAmorPresm SET PocDatKumul = @PocDatGod WHERE PocDatAmor <= @PocDatGod
  62693.         UPDATE #TmpAmorPresm SET KrDatKumul = KrDatAmor      WHERE KrDatAmor < @KrDat
  62694.         UPDATE #TmpAmorPresm SET KrDatKumul = @KrDat      WHERE KrDatAmor >= @KrDat
  62695.         UPDATE #TmpAmorPresm SET PocDatDoPer = PocDatAmor WHERE PocDatAmor > @PocDatGod
  62696.         UPDATE #TmpAmorPresm SET PocDatDoPer = @PocDatGod WHERE PocDatAmor <= @PocDatGod
  62697.         UPDATE #TmpAmorPresm SET KrDatDoPer = KrDatAmor   WHERE KrDatAmor < DateAdd(day, -1, @PocDat)
  62698.         UPDATE #TmpAmorPresm SET KrDatDoPer = DateAdd(day, -1, @PocDat) WHERE KrDatAmor >= DateAdd(day, -1, @PocDat)
  62699.         UPDATE #TmpAmorPresm SET AmortKumul = dbo.fn_PresmAmor (PocDatKumul, KrDatKumul, Osn_Amor, Stapka_Amor, Otpis_Pret)
  62700.         UPDATE #TmpAmorPresm SET AmortPer = dbo.fn_PresmAmor (PocDatDoPer, KrDatDoPer, Osn_Amor, Stapka_Amor, Otpis_Pret)
  62701.         UPDATE #TmpAmorPresm SET AmortKumul = dbo.fn_PresmAmor (PocDatKumul, KrDatKumul, Osn_Amor*-1, Stapka_Amor, Otpis_Pret)*-1 WHERE Rbr=1 AND Osn_Amor<0
  62702.         UPDATE #TmpAmorPresm SET AmortPer = dbo.fn_PresmAmor (PocDatDoPer, KrDatDoPer, Osn_Amor*-1, Stapka_Amor, Otpis_Pret)*-1 WHERE Rbr=1 AND Osn_Amor<0
  62703.         Set @Otpis = (Select T.Osn_Amor - T.Otpis_Pret - T.AmortKumul From #TmpAmorPresm T)
  62704.     End 
  62705.     If @Otpis Is Null
  62706.         Set @Otpis=0
  62707.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, D.Sifra_Nal, D.Broj_Nal, 
  62708.                 S.Inv_Broj, S.Datum_Dok StavDatum_Dok, S.Tip_StaOsn, S.VlIzl, S.Osn_Amor, 
  62709.                 (Case When S.Tip_StaOsn IN (''T'',''R'',''F'') Then ' + Cast(@Otpis as varchar(20)) + ' Else S.Otpis_Pret End) Otpis_Pret, S.Sifra_MikLok_Od, S.Sifra_MikLok, MikL1.Ime_MikLok Ime_MikLokOd, MikL2.Ime_MikLok Ime_MikLokDo, 
  62710.                 MikL1.Sifra_MakLok as Sifra_MakLokOd,
  62711.                 S.Orig_Nab_Vr, S.Orig_Nab_Vr_Val, S.Delov_God, 
  62712.                 S.Sifra_RabOd, S.Sifra_Rab, R1.ImeRab ImeRabOd,R2.ImeRab ImeRabDo, Kup.ImeKup, D.St_Br_Nal, D.Identif_Br
  62713.             From  StavOsnSred S
  62714.             Inner Join DokOsnSred D On S.DokOID=D.DokOID
  62715.             Left Outer Join MikroLok MikL1 On MikL1.Sifra_MikLok = S.Sifra_MikLok_Od
  62716.             Left Outer Join MikroLok MikL2 On MikL2.Sifra_MikLok = S.Sifra_MikLok
  62717.             Left Outer Join Rabotnik R1 On R1.Sifra_Rab=S.Sifra_RabOd
  62718.             Left Outer Join Rabotnik R2 On R2.Sifra_Rab=S.Sifra_Rab
  62719.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  62720.             Where 1=1 '
  62721.     If @Inv_Broj Is Not Null
  62722.         Set @SSQL = @SSQL + ' And S.Inv_Broj = ''' + @Inv_Broj + ''' '
  62723.     If @Datum_Od Is Not Null
  62724.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  62725.     If @Datum_Do Is Not Null
  62726.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  62727.     Exec(@SSQL)
  62728.  
  62729.  
  62730.  
  62731.  
  62732. Go
  62733. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_serbr_kons_org]'))
  62734. drop procedure [dbo].[sp_kart_serbr_kons_org]
  62735.  
  62736. Go
  62737.  
  62738. CREATE  PROCEDURE [dbo].[sp_Kart_SerBr_Kons_Org]
  62739.     @Datum_Od    smalldatetime = Null,
  62740.     @Datum_Do    smalldatetime = Null,
  62741.     @Sifra_OE    smallint = Null,
  62742.     @Lista_OE    varchaR(2000) = Null,
  62743.     @DaliNovi    char(1) = Null,
  62744.     @DaliOdjFakt    char(1) = Null,
  62745.     @DaliOdjNeFakt    char(1) = Null,
  62746.     @Sifra_Od    varchar(20) = Null,
  62747.     @Sifra_Do    varchar(20) = Null,
  62748.     @Kto        char(6) = Null,
  62749.     @Sifra_Gr    char(3) = Null,
  62750.     @Sifra_Podg    char(6) = Null,
  62751.     @Lokacija    varchar(10) = Null,
  62752.     @DaliStornirani    char(1) = 'D',
  62753.     @Sifra_3    smallint = null,
  62754.     @GodProiz    int = null
  62755.  
  62756. AS
  62757.  
  62758.  
  62759.     Declare @SSQL_Usl varchaR(2000)
  62760.     set @SSQL_Usl = ' where 1 = 1 '
  62761.  
  62762.     if @Datum_Od is not null
  62763.         set @SSQL_Usl = @SSQL_Usl + ' and D.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(25)) + ''' ' 
  62764.  
  62765.     if @Datum_Do is not null
  62766.         set @SSQL_Usl = @SSQL_Usl + ' and D.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(25)) + ''' ' 
  62767.  
  62768.        If @Sifra_OE Is NOT Null
  62769.            Set @SSQL_Usl = @SSQL_Usl + ' and D.Sifra_OE = ' + cast(@Sifra_OE as varchar(5)) + ' '
  62770.     else if @Lista_Oe is not NULL
  62771.            Set @SSQL_Usl = @SSQL_Usl + ' and D.Sifra_OE in (' + @Lista_OE + ') '
  62772.  
  62773.        If @Sifra_Od IS NOT NULL 
  62774.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art >= ''' + @Sifra_Od + ''' '
  62775.  
  62776.        If @Sifra_Do IS NOT NULL 
  62777.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art <= ''' + @Sifra_Do + ''' '
  62778.  
  62779.        If @Kto IS NOT NULL
  62780.               Set @SSQL_Usl = @SSQL_Usl + ' AND K.Kto = ''' + @Kto + ''' '
  62781.  
  62782.        If @Sifra_Gr IS NOT NULL
  62783.               Set @SSQL_Usl = @SSQL_Usl + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  62784.  
  62785.      If @Sifra_Podg Is Not Null
  62786.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  62787.  
  62788.        If @Lokacija IS NOT NULL
  62789.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Lokacija = ''' + @Lokacija + ''' '
  62790.  
  62791.        If @Sifra_3 IS NOT NULL
  62792.         Set @SSQL_Usl = @SSQL_Usl + ' AND KSK.Sifra_3 = ' + cast(@Sifra_3 as varchaR(5))
  62793.  
  62794.        If @GodProiz IS NOT NULL
  62795.         Set @SSQL_Usl = @SSQL_Usl + ' AND KSK.GodProiz = ' + cast(@GodProiz as varchaR(5))
  62796.  
  62797.     Declare @SSQL Varchar(2000)
  62798.     SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.Kasa, 
  62799.             D.Datum_Dok, D.Sifra_Kup, Kom.ImeKup, D.Sifra_Obj,
  62800.             S.Sifra_Art, K.ImeArt, K.Edmera, D.VlIzl, S.Kolic, 
  62801.             D.Identif_Br, D.Ispratnica, K.ImaKomerc, K.Sifra_Podg, 
  62802.             D.Toc200, D.Spck_stat, O.ImeOrg, D.DokrId, Prima.ImeOrg ImeOrgPrima,
  62803.             KSK.KontrSerExt, KSK.AltKontrSer, KSK.GodProiz, KSK.Opis, S.LotBr,
  62804.             DS.Dokr_Id_Storno, case when DS.Dokr_Id_Storno is null then ''N'' else ''S'' end Storniran,
  62805.             D3.Ime_3
  62806.         FROM DOKR D
  62807.         Left Outer Join DokrStorno  DS
  62808.             on DS.Dokr_Id_Orig = D.DokrId
  62809.         inner JOIN MagStavr S ON S.DokrID = D.DokrID
  62810.         inner join TipDok TD On D.Sifra_dok =  TD.SifrA_Dok
  62811.         inner JOIN Katart K ON S.Sifra_Art = K.Sifra_Art 
  62812.         LEFT OUTER JOIN Komint Kom ON D.Sifra_Kup = Kom.Sifra_Kup 
  62813.         LEFT OUTER JOIN OrgEd Prima ON D.Sifra_Prim = Prima.Sifra_Oe 
  62814.         inner join OrgEd O
  62815.             on D.Sifra_Oe = O.Sifra_Oe 
  62816.         Left Outer Join KatSerKlas KSK
  62817.             on KSK.Sifra_Art = S.Sifra_Art and KSK.KontrSer = S.LotBr 
  62818.          Left Outer Join Drugo3 D3 
  62819.             on D3.Sifra_3 = KSK.Sifra_3 '
  62820.  
  62821.     if @Sifra_Gr is not null
  62822.                Set @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON K.Sifra_Podg = P.Sifra_Podg '
  62823.     ------
  62824.  
  62825.     Declare @SSQL_Full varchaR(8000)
  62826.     set @SSQL_Full = ''
  62827.  
  62828.     Declare @SSQL_Usl_Spec varchaR(2000)
  62829.  
  62830.     if @DaliNovi = 'D'
  62831.         begin
  62832.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''V'' '
  62833.  
  62834.         if @SSQL_Full <> ''
  62835.                 set @SSQL_Full = @SSQL_Full + '
  62836.                  Union 
  62837.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62838.     
  62839.                 set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  62840.         end
  62841.  
  62842.     if @DaliStornirani = 'D'
  62843.         begin
  62844.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and 
  62845.                                    (D.Spck_Stat = ''S'' or DS.Dokr_Id_Storno is not null) '
  62846.  
  62847.         if @SSQL_Full <> ''
  62848.                 set @SSQL_Full = @SSQL_Full + ' 
  62849.                  Union
  62850.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62851.     
  62852.                    set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  62853.         end
  62854.  
  62855.     if @DaliOdjNeFakt = 'D'
  62856.         begin
  62857.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and 
  62858.                              (D.Spck_Stat is null or (D.Spck_Stat <> ''F'' and D.Spck_Stat <> ''S'')) '
  62859.  
  62860.         if @SSQL_Full <> ''
  62861.                 set @SSQL_Full = @SSQL_Full + ' 
  62862.                  Union
  62863.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62864.     
  62865.                 set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  62866.         end
  62867.  
  62868.     if @DaliOdjFakt = 'D'
  62869.         begin
  62870.         set @SSQL_Usl_Spec = ' and D.VlIzl = ''I'' and D.Spck_Stat = ''F'' and DS.Dokr_Id_Storno is null '
  62871.  
  62872.         if @SSQL_Full <> ''
  62873.              set @SSQL_Full = @SSQL_Full + '
  62874.                  Union
  62875.                  '        -- Namerno radi ccitlivost na @SSQL_FULL
  62876.     
  62877.             set @SSQL_Full = @SSQL_Full + @SSQL + @SSQL_Usl + @SSQL_Usl_Spec
  62878.         end
  62879.  
  62880.     EXEC (@SSQL_Full)
  62881.  
  62882.  
  62883. Go
  62884. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kart_zatvstavki]'))
  62885. drop procedure [dbo].[sp_kart_zatvstavki]
  62886.  
  62887. Go
  62888.  
  62889. CREATE    PROCEDURE sp_Kart_ZatvStavki
  62890.     @Sifra_Za Char(1),
  62891.     @Sifra_Kup Char(6),
  62892.     @KoiFri Char(1),
  62893.        @Datum_Nal_Od Smalldatetime,
  62894.        @Datum_Nal_Do Smalldatetime,
  62895.        @Datum_Dok_Od Smalldatetime,
  62896.        @Datum_Dok_Do Smalldatetime,
  62897.        @Datum_Dosp_Od Smalldatetime = Null,
  62898.        @Datum_Dosp_Do Smalldatetime = Null,
  62899.        @Kto Char(6),
  62900.     @Kto2 Char(6) = Null,
  62901.     @KFKto2 Char(1) = 'N', 
  62902.      @Sifra_OE Smallint,
  62903.        @Koi_OE Varchar(10) = NULL
  62904. AS
  62905.     Declare @SSQL Varchar(4000)
  62906.     SET @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  62907.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  62908.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis
  62909.         FROM AnFinDok A
  62910.         INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  62911.               WHERE A.Sifra_Kup=' + @Sifra_Kup + '  AND (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) '
  62912.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  62913.               Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  62914.     Else If @Sifra_Za = '0'
  62915.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  62916.     If @KoiFri = 'P'
  62917.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  62918.     Else If @KoiFri = 'N'
  62919.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  62920.     Else If @KoiFri = 'R'
  62921.         Set @SSQL = @SSQL + 'AND (A.Plateno_Dolzi = 0 and A.Plateno_Pobar = 0) '   -- Logikata ne e bas dobra (stavena e da ne prikazuva nisto); se isklucuva so gorniot uslov
  62922.     If @Datum_Dok_Od Is NOT Null
  62923.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62924.     If @Datum_Dok_Do Is NOT Null
  62925.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62926.     If @Datum_Nal_Od Is NOT Null
  62927.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  62928.     If @Datum_Nal_Do Is NOT Null
  62929.         SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  62930.     If @Kto Is NOT Null  and @Kto2 Is Null
  62931.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  62932.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  62933.     Begin
  62934.         If @KFKto2 = 'D'
  62935.             SET @SSQL = @SSQL + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  62936.         Else
  62937.             SET @SSQL = @SSQL + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  62938.     End
  62939.     If @Kto Is Null  and @Kto2 Is Not Null
  62940.     Begin
  62941.         If @KFKto2 = 'D'
  62942.             SET @SSQL = @SSQL + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  62943.         Else
  62944.             SET @SSQL = @SSQL + 'AND A.Kto = ''' + @Kto2 + ''' '
  62945.     End
  62946.     If @Sifra_OE Is NOT Null
  62947.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  62948.     If @Koi_OE Is Not Null
  62949.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  62950.     If @Datum_Dosp_Od Is Not Null
  62951.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  62952.     If @Datum_Dosp_Do Is Not Null
  62953.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  62954.     Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  62955.     EXEC(@SSQL)
  62956.  
  62957.  
  62958. Go
  62959. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartart_joleks]'))
  62960. drop procedure [dbo].[sp_kartart_joleks]
  62961.  
  62962. Go
  62963.  
  62964. CREATE   procedure [dbo].[sp_KartArt_Joleks]
  62965.     @Sifra_OE smallint= null,
  62966.     @KoiOE Varchar(6)= null,
  62967.     @Sifra_Art Varchar(20),
  62968.     @Datum_Dok_Od Smalldatetime = null,
  62969.     @Datum_Dok_Do Smalldatetime = null
  62970. AS                       -- case when month(S.Datum_Dok)<9 then 0+month(S.Datum_Dok) else month(S.Datum_Dok) end
  62971.     Declare @SSQL Varchar(4000)
  62972.     SET @SSQL='    SELECT  Year(S.Datum_Dok) Godina, cast(month(S.Datum_Dok)as smallint) Mesec, sum(S.Kolic) Kolic, A.ImeArt, S.Sifra_Art
  62973.                    From Stavr S
  62974.                 INNER JOIN Dokr D ON S.DokrID=D.DokrID
  62975.                    Left Outer Join Katart A on S.Sifra_Art=A.Sifra_Art
  62976.                 Where D.Sifra_Za=1 and S.VlIzl=''I'' '
  62977.     If @Sifra_Art Is Not Null
  62978.         Set @SSQL = @SSQL + 'And S.Sifra_Art=''' + @Sifra_Art + ''' '
  62979.     If @Sifra_OE Is Not Null
  62980.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  62981.     If @KoiOE Is Not Null
  62982.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  62983.     If @Datum_Dok_Od Is NOT Null
  62984.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  62985.     If @Datum_Dok_Do Is NOT Null
  62986.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  62987.     SET @SSQL =@SSQL + 'Group by S.Datum_dok, A.ImeArt, S.Sifra_Art '    
  62988.     SET @SSQL =@SSQL + 'ORDER BY S.Datum_Dok  Desc '
  62989. print @ssql
  62990. exec(@ssql)
  62991.  
  62992.  
  62993.  
  62994.  
  62995. Go
  62996. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartart_meso]'))
  62997. drop procedure [dbo].[sp_kartart_meso]
  62998.  
  62999. Go
  63000. CREATE PROCEDURE sp_KartArt_Meso
  63001.     @Sifra_Oe    Smallint,
  63002.     @Koi_Oe    char(6),
  63003.     @Sifra_Art    varchar(20),
  63004.     @Datum_Od    smalldatetime,
  63005.     @Datum_Do    smalldatetime,
  63006.     @Sifra_Dok    smallint,
  63007.     @Dobavuvac    char(6) = Null,
  63008.     @SoDDV    char(1) = 'D',
  63009.     @PrethVlBr    decimal(18,6) = Null Output,
  63010.     @PrethIzlBr    decimal(18,6) = Null Output,
  63011.     @PrethVlKgr    decimal(18,6) = Null Output,
  63012.     @PrethIzlKgr    decimal(18,6) = Null Output
  63013. AS
  63014.     Declare @SSQL as varchar(8000)
  63015.     If @Datum_Od Is Not Null
  63016.     Begin
  63017.         Create Table #PrethProm
  63018.         (
  63019.          PrethVlBr    decimal(18,6),
  63020.          PrethIzlBr    decimal(18,6),
  63021.          PrethVlKgr    decimal(18,6),
  63022.          PrethIzlKgr    decimal(18,6)
  63023.         )
  63024.         Set @SSQL = 'Select Sum(Case When S.VlIzl = ''V'' Then S.Alt_Kolic End), Sum(Case When S.VlIzl = ''I'' Then S.Alt_Kolic End),
  63025.                          Sum(Case When S.VlIzl = ''V'' Then S.Kolic End), Sum(Case When S.VlIzl = ''I'' Then S.Kolic End)
  63026.                 From Stavr S
  63027.                 Inner Join Dokr D On D.DokrID=S.DokrID
  63028.                 Where S.Sifra_Art = ''' + @Sifra_Art + ''' 
  63029.                 And S.Datum_Dok < ''' + Cast(@Datum_Od as Varchar(30)) + ''' '
  63030.         If @Sifra_Oe Is Not Null
  63031.             Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63032.         If @Koi_Oe Is Not Null
  63033.             Set @SSQL = @SSQL + ' And S.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  63034.         If @Sifra_Dok Is Not Null
  63035.             Set @SSQL = @SSQL + ' And S.Sifra_Dok =  ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  63036.         If @Dobavuvac Is Not Null
  63037.             Set @SSQL = @SSQL + ' And ((S.VlIzl = ''V'' And D.Sifra_Kup = ' + @Dobavuvac + ') Or (S.VlIzl = ''I'' And S.Dobav = ' + @Dobavuvac + ')) ' 
  63038.         Insert Into #PrethProm Exec(@SSQL)
  63039.         Select @PrethVlBr=PrethVlBr, @PrethIzlBr=PrethIzlBr, @PrethVlKgr=PrethVlKgr, @PrethIzlKgr=PrethIzlKgr
  63040.         From #PrethProm
  63041.     End
  63042.     Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Datum_Dok, 
  63043.                 S.Sifra_Art, K.ImeArt, dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDDV + ''')  DokCena,
  63044.                 (Case When D.VlIzl = ''I'' Then D.Sifra_Kup End) Sifra_Kup, (Case When D.VlIzl = ''I'' Then Kup.ImeKup End) ImeKup, 
  63045.                 (Case When D.VlIzl = ''I'' Then D.Sifra_Obj End) Sifra_Obj, (Case When D.VlIzl = ''I'' Then KO.ImeObj End) ImeObj, 
  63046.                 (Case When D.VlIzl = ''V'' Then D.Sifra_Kup Else S.Dobav End) Dobavuvac, Dob.ImeKup ImeDobav,
  63047.                 (Case When D.VlIzl = ''V'' Then S.Alt_Kolic Else 0 End) VlezBr, (Case When D.VlIzl = ''I'' Then S.Alt_Kolic Else 0 End) IzlezBr,
  63048.                 (Case When D.VlIzl = ''V'' Then S.Kolic Else 0 End) VlezKgr, (Case When D.VlIzl = ''I'' Then S.Kolic Else 0 End) IzlezKgr
  63049.             From Stavr S 
  63050.             Inner Join Dokr D On D.DokrID=S.DokrID
  63051.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  63052.             Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  63053.             Left Outer Join KObjekti KO On KO.Sifra_Kup = D.Sifra_Kup And KO.Sifra_Obj = D.Sifra_Obj
  63054.             Left Outer Join Komint Dob On Dob.Sifra_Kup = (Case When D.VlIzl = ''V'' Then D.Sifra_Kup Else S.Dobav End)
  63055.             Where S.Sifra_Art = ''' + @Sifra_Art + ''' '
  63056.     If @Sifra_Oe Is Not Null
  63057.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63058.     If @Koi_Oe Is Not Null
  63059.         Set @SSQL = @SSQL + ' And S.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  63060.     If @Sifra_Dok Is Not Null
  63061.         Set @SSQL = @SSQL + ' And S.Sifra_Dok =  ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  63062.     If @Datum_Od Is Not Null
  63063.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  63064.     If @Datum_Do Is Not Null
  63065.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  63066.     If @Dobavuvac Is Not Null
  63067.         Set @SSQL = @SSQL + ' And ((D.VlIzl = ''V'' And D.Sifra_Kup = ' + @Dobavuvac + ') Or (D.VlIzl = ''I'' And S.Dobav = ' + @Dobavuvac + ')) ' 
  63068.     Exec(@SSQL)
  63069.  
  63070.  
  63071. Go
  63072. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartica_art_rabnal_servis]'))
  63073. drop procedure [dbo].[sp_kartica_art_rabnal_servis]
  63074.  
  63075. Go
  63076.  
  63077. CREATE   PROCEDURE [dbo].[sp_Kartica_Art_RabNal_Servis]
  63078.     @Sifra_Oe    smallint,
  63079.     @Sifra_Art    varchar(20),
  63080.     @KontrSer    varchar(25),
  63081.     @DatumOtv_Od    smalldatetime = Null,
  63082.     @DatumOtv_Do    smalldatetime = Null,
  63083.     @PodGarancija    char(1) = Null,        -- D - Pod Garancija    N - Drugi
  63084.     @Sifra_Kup    char(6) = Null,
  63085.     @PrethVlez    decimal(18,6) = 0 Output,
  63086.     @PrethIzlez    decimal(18,6) = 0 Output,
  63087.     @PrethIznos    decimal(18,6) = 0 Output,
  63088.      @Sifra_Rab     int = null,
  63089.      @Sifra_Rab_2     int = null,
  63090.     @Sifra_Gr    char(3) = Null,
  63091.     @Sifra_Podg char(6) = Null,
  63092.     @Tip_Operacija    char(1) = Null
  63093.  
  63094. AS
  63095.  
  63096.     Declare @SSQL as varchar(4000)
  63097.     Declare @SSQLUsl as varchar(4000)
  63098.     Set @SSQLUsl = ' '
  63099.     If @KontrSer Is Not Null
  63100.         Set @SSQLUsl = @SSQLUsl + ' And S.KontrSer= ''' + @KontrSer + ''' '
  63101.     If @Sifra_Oe Is Not Null
  63102.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_OeRab= ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63103.     If @Sifra_Kup Is Not Null
  63104.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Kup= ''' + @Sifra_Kup + ''' '
  63105.     If @PodGarancija = 'D'
  63106.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''D'' '
  63107.     Else If @PodGarancija = 'N'
  63108.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''N'' '
  63109.        If @Sifra_Rab is Not Null 
  63110.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab= ' + cast(@Sifra_Rab as varchar(8))  + ' '
  63111.        If @Sifra_Rab_2 is Not Null 
  63112.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab_2 = ' + cast(@Sifra_Rab_2 as varchar(8))  + ' '
  63113.     if @Tip_Operacija <> '' and @Tip_Operacija is not null
  63114.         Set @SSQLUsl = @SSQLUsl + ' And R.Tip_Operacija = ''' + @Tip_Operacija + ''' '
  63115.  
  63116.     If @DatumOtv_Od Is Not Null
  63117.     Begin
  63118.         Create Table #Tab
  63119.         (Vlez        decimal(18,6),
  63120.         Izlez        decimal(18,6),
  63121.         Iznos        decimal(18,6) )
  63122.         Set @SSQL = ' Select Sum(Case When DRN.Tip_RabStav = ''V'' Then S.Kolic Else 0 End) Vlez, 
  63123.                          Sum(Case When DRN.Tip_RabStav = ''F'' Then S.Kolic Else 0 End) Izlez,
  63124.                          Sum(Case When DRN.Tip_RabStav = ''F'' Then D.Toc200 Else 0 End) IznosPreth
  63125.             From Rabnal R
  63126.             Left Outer Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  63127.             Left Outer Join Dokr D On D.DokrID=DRN.DokrId 
  63128.             Left Outer Join Stavr S On S.DokrID=D.DokrID
  63129.             Where DRN.Tip_RabStav In (''F'', ''V'') And R.Datum_Otv <''' + cast(@DatumOtv_Od as varchar(30)) + ''' '
  63130.         if @Sifra_Art is not null
  63131.             set @SSQL = @SSQL + ' and S.Sifra_Art = ''' + @Sifra_Art + ''' '
  63132.  
  63133.         Insert into #Tab Exec(@SSQL+@SSQLUsl)
  63134.         Select @PrethVlez=Vlez, @PrethIzlez=Izlez, @PrethIznos=Iznos From #Tab
  63135.     End
  63136.  
  63137.     Set @SSQL = ' Select R.Sifra_OeRab, R.Broj_RabN, R.Datum_Otv, R.Datum_Zatv, S.KontrSer, R.Garancija, K.ImeArt, 
  63138.             (Case When DRN.Tip_RabStav = ''V'' Then S.Kolic Else 0 End) Vlez, 
  63139.             (Case When DRN.Tip_RabStav = ''F'' Then S.Kolic Else 0 End) Izlez,
  63140.             (Case When DRN.Tip_RabStav = ''F'' Then D.Toc200 Else 0 End) Toc200, 
  63141.             D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok,
  63142.             R.Sifra_Kup, Kup.ImeKup, D.Opis, R.Opis Opis_RabN, S.Sifra_Art,
  63143.             RA.ImeRab, RA2.ImeRab ImeRab_2,    R.Sifra_Rab, R.Sifra_Rab_2,
  63144.             R.Datum_POc_Serv, R.Datum_Kr_Proiz, R.Datum_Izdav,
  63145.             DATEDIFF (hour, R.Datum_Poc_Serv, R.Datum_Kr_Proiz) SatiServis
  63146.         From Rabnal R
  63147.         Left Outer Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  63148.         Left Outer Join Dokr D On D.DokrID=DRN.DokrId 
  63149.         Left Outer Join Stavr S On S.DokrID=D.DokrID
  63150.         Left Outer Join Komint Kup On Kup.Sifra_Kup = R.Sifra_Kup
  63151.         Left Outer Join Katart K On K.Sifra_art = S.Sifra_art
  63152.         Left outer join Rabotnik RA on R.Sifra_Rab= RA.Sifra_Rab
  63153.         Left outer join Rabotnik RA2 on R.Sifra_Rab_2 = RA2.Sifra_Rab '
  63154.  
  63155.     if @Sifra_Gr is not null
  63156.         set @SSQL = @SSQL + ' Left Outer Join Podgrupi P
  63157.                                 on K.Sifra_Podg = P.Sifra_Podg '
  63158.  
  63159.     set @SSQL = @SSQL + ' Where DRN.Tip_RabStav In (''F'', ''V'') '
  63160.  
  63161.     if @Sifra_Art is not null
  63162.         set @SSQL = @SSQL + ' and S.Sifra_Art = ''' + @Sifra_Art + ''' '
  63163.     if @Sifra_Gr is not null
  63164.         set @SSQL = @SSQL + ' and P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  63165.     if @Sifra_Podg is not null
  63166.         set @SSQL = @SSQL + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  63167.  
  63168.     If @DatumOtv_Od Is Not Null
  63169.         Set @SSQL = @SSQL + ' And R.Datum_Otv >= ''' + cast(@DatumOtv_Od as varchar(30)) + ''' '
  63170.     If @DatumOtv_Do Is Not Null
  63171.         Set @SSQL = @SSQL + ' And R.Datum_Otv <= ''' + cast(@DatumOtv_Do as varchar(30)) + ''' '
  63172.  
  63173.     Exec(@SSQL+@SSQLUsl)
  63174.  
  63175.  
  63176.  
  63177.  
  63178.  
  63179.  
  63180.  
  63181. Go
  63182. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartica_art_rabnal_servis_tros]'))
  63183. drop procedure [dbo].[sp_kartica_art_rabnal_servis_tros]
  63184.  
  63185. Go
  63186.  
  63187. CREATE PROCEDURE [dbo].[sp_Kartica_Art_RabNal_Servis_Tros]
  63188.     @Sifra_Oe    smallint,
  63189.     @Sifra_Art    varchar(20),
  63190.     @KontrSer    varchar(25),
  63191.     @DatumOtv_Od    smalldatetime = Null,
  63192.     @DatumOtv_Do    smalldatetime = Null,
  63193.     @PodGarancija    char(1) = Null,        -- D - Pod Garancija    N - Drugi
  63194.     @Sifra_Kup    char(6) = Null,
  63195.     @PrethVlez    decimal(18,6) = 0 Output,
  63196.     @PrethIzlez    decimal(18,6) = 0 Output,
  63197.     @PrethIznos    decimal(18,6) = 0 Output,
  63198.      @Sifra_Rab     int = null,
  63199.      @Sifra_Rab_2     int = null,
  63200.     @Sifra_Gr    char(3) = Null,
  63201.     @Sifra_Podg char(6) = Null,
  63202.     @Tip_Operacija    char(1) = Null
  63203.  
  63204. AS
  63205.  
  63206.     Declare @SSQL as varchar(4000)
  63207.     Declare @SSQLUsl as varchar(4000)
  63208.     Set @SSQLUsl = ' '
  63209.     If @KontrSer Is Not Null
  63210.         Set @SSQLUsl = @SSQLUsl + ' And S.KontrSer= ''' + @KontrSer + ''' '
  63211.     If @Sifra_Oe Is Not Null
  63212.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_OeRab= ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63213.     If @Sifra_Kup Is Not Null
  63214.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Kup= ''' + @Sifra_Kup + ''' '
  63215.     If @PodGarancija = 'D'
  63216.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''D'' '
  63217.     Else If @PodGarancija = 'N'
  63218.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''N'' '
  63219.        If @Sifra_Rab is Not Null 
  63220.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab= ' + cast(@Sifra_Rab as varchar(8))  + ' '
  63221.        If @Sifra_Rab_2 is Not Null 
  63222.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab_2 = ' + cast(@Sifra_Rab_2 as varchar(8))  + ' '
  63223.     if @Tip_Operacija <> '' and @Tip_Operacija is not null
  63224.         Set @SSQLUsl = @SSQLUsl + ' And R.Tip_Operacija = ''' + @Tip_Operacija + ''' '
  63225.  
  63226.     Set @SSQL = ' Select R.Sifra_OeRab, R.Broj_RabN, R.Datum_Otv, R.Datum_Zatv, S.KontrSer, R.Garancija, K.ImeArt, 
  63227.             0 Vlez, 
  63228.             S.Kolic Izlez,
  63229.             S.DokCena DokCena,
  63230.             S.DanDokCena DanDokCena,
  63231.             S.Uces Uces,
  63232.             S.POsn,
  63233.             D.Toc200,
  63234.             D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok,
  63235.             R.Sifra_Kup, Kup.ImeKup, D.Opis, R.Opis Opis_RabN, S.Sifra_Art,
  63236.             RA.ImeRab, RA2.ImeRab ImeRab_2,    R.Sifra_Rab, R.Sifra_Rab_2,
  63237.             R.Datum_POc_Serv, R.Datum_Kr_Proiz, R.Datum_Izdav,
  63238.             DATEDIFF (hour, R.Datum_Poc_Serv, R.Datum_Kr_Proiz) SatiServis
  63239.         From Rabnal R
  63240.         Left Outer Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  63241.         Left Outer Join Dokr D On D.DokrID=DRN.DokrId 
  63242.         Left Outer Join Stavr S On S.DokrID=D.DokrID
  63243.         Left Outer Join Komint Kup On Kup.Sifra_Kup = R.Sifra_Kup
  63244.         Left Outer Join Katart K On K.Sifra_art = S.Sifra_art
  63245.         Left outer join Rabotnik RA on R.Sifra_Rab= RA.Sifra_Rab
  63246.         Left outer join Rabotnik RA2 on R.Sifra_Rab_2 = RA2.Sifra_Rab '
  63247.  
  63248.     if @Sifra_Gr is not null
  63249.         set @SSQL = @SSQL + ' Left Outer Join Podgrupi P
  63250.                                 on K.Sifra_Podg = P.Sifra_Podg '
  63251.  
  63252.     set @SSQL = @SSQL + ' Where DRN.Tip_RabStav In (''T'') '
  63253.  
  63254.     if @Sifra_Art is not null
  63255.         set @SSQL = @SSQL + ' and S.Sifra_Art = ''' + @Sifra_Art + ''' '
  63256.     if @Sifra_Gr is not null
  63257.         set @SSQL = @SSQL + ' and P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  63258.     if @Sifra_Podg is not null
  63259.         set @SSQL = @SSQL + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  63260.  
  63261.     If @DatumOtv_Od Is Not Null
  63262.         Set @SSQL = @SSQL + ' And R.Datum_Otv >= ''' + cast(@DatumOtv_Od as varchar(30)) + ''' '
  63263.     If @DatumOtv_Do Is Not Null
  63264.         Set @SSQL = @SSQL + ' And R.Datum_Otv <= ''' + cast(@DatumOtv_Do as varchar(30)) + ''' '
  63265.  
  63266.     Exec(@SSQL+@SSQLUsl)
  63267.  
  63268.  
  63269.  
  63270.  
  63271.  
  63272.  
  63273.  
  63274. Go
  63275. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartica_artikal_boigolemini]'))
  63276. drop procedure [dbo].[sp_kartica_artikal_boigolemini]
  63277.  
  63278. Go
  63279.  
  63280.  
  63281.  
  63282.  
  63283. CREATE           PROCEDURE sp_Kartica_Artikal_BoiGolemini
  63284.     @Sifra_Oe        smallint,
  63285.     @KoiOe        varchar(6),
  63286.     @Datum_Od        smalldatetime,
  63287.     @Datum_Do        smalldatetime,
  63288.     @Sifra_Art        varchar(20),
  63289.     @Sifra_Boja        smallint = Null,
  63290.     @Sifra_Velic        smallint = Null,
  63291.     @Lokacija        varchar(10) = Null,
  63292.     @Sifra_Kup        varchar(6) = Null,
  63293.     @Sifra_Obj        smallint = Null,
  63294.     @PrethVlez         decimal(18,6) = Null Output,
  63295.     @PrethIzlez         decimal(18,6) = Null Output
  63296. AS
  63297.     Set @PrethVlez=0
  63298.     Set @PrethIzlez=0
  63299.     Declare @SSQL as varchar(8000)
  63300.     If @Datum_Od Is Not Null
  63301.     Begin
  63302.         Create Table #Tab
  63303.         (
  63304.             Vlez        decimal(18,6),
  63305.             Izlez        decimal(18,6)
  63306.         )
  63307.     IF @Sifra_Velic IS NULL AND @Sifra_Boja IS NULL
  63308.     Begin
  63309.         Set @SSQL = ' Select Sum(Case When M.VlIzl = ''V'' Then M.Kolic Else 0 End) Vlez,
  63310.                 Sum(Case When M.VlIzl = ''I'' Then M.Kolic Else 0 End) Izlez
  63311.                 From MagStavr M
  63312.                 Inner Join Dokr D On D.DokrID=M.DokrID
  63313.                 Where D.Datum_Dok < ''' + Cast(@Datum_Od as varchar(30)) + ''' 
  63314.                 And M.Sifra_Art = ''' + @Sifra_Art + ''' AND D.Datum_Dok<'''+cast(@Datum_Od as varchar(35))+''' '
  63315.         If @Sifra_Oe Is Not Null
  63316.             Set @SSQL = @SSQL + ' And M.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63317.         If @KoiOE Is Not Null
  63318.             Set @SSQL = @SSQL + ' And M.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63319.         If @Sifra_Boja Is Not Null
  63320.             Set @SSQL = @SSQL + ' And Substring(LotBr, PatIndex(''% %'', LotBr)+1, PatIndex(''%:%'', LotBr)-PatIndex(''% %'', LotBr)-1) = ' + Cast(@Sifra_Boja as varchar(6)) + ' '
  63321.         If @Sifra_Velic Is Not Null
  63322.             Set @SSQL = @SSQL + ' And Substring(LotBr, PatIndex(''%:%'', LotBr)+1, 5) = ' + Cast(@Sifra_Velic as varchar(6)) + ' '
  63323.         If @Lokacija Is Not Null
  63324.             Set @SSQL = @SSQL + ' And M.Lokacija = ''' + @Lokacija + ''' '
  63325.         If @Sifra_Kup Is Not Null
  63326.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  63327.         If @Sifra_Obj Is Not Null
  63328.             Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  63329.     End
  63330.     ELSE
  63331.     Begin
  63332.         Set @SSQL = ' Select Sum(Case When M.VlIzl = ''V'' Then M.Kolic Else 0 End) Vlez,
  63333.                 Sum(Case When M.VlIzl = ''I'' Then M.Kolic Else 0 End) Izlez
  63334.                 From Stavr M
  63335.                 Inner Join Dokr D On D.DokrID=M.DokrID
  63336.                 Where D.Datum_Dok < ''' + Cast(@Datum_Od as varchar(30)) + ''' 
  63337.                 And M.Sifra_Art = ''' + @Sifra_Art + '''  AND D.Datum_Dok<'''+cast(@Datum_Od as varchar(35))+''' '
  63338.         If @Sifra_Oe Is Not Null
  63339.             Set @SSQL = @SSQL + ' And M.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63340.         If @KoiOE Is Not Null
  63341.             Set @SSQL = @SSQL + ' And M.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63342.         If @Sifra_Kup Is Not Null
  63343.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  63344.         If @Sifra_Obj Is Not Null
  63345.             Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  63346.     End
  63347.         Insert Into #Tab Exec(@SSQL)
  63348.         Select @PrethVlez=Vlez, @PrethIzlez=Izlez     From #Tab
  63349.     End
  63350. --sega da dopolnime za stavkite koi se bez boi
  63351. CREATE TABLE #TmpStavr 
  63352. (Sifra_OE    smallint,
  63353. Sifra_Dok    smallint,
  63354. Broj_Dok    int,
  63355. Kolic        decimal(18,6),
  63356. KolicMag    decimal(18,6))
  63357. IF @Sifra_Velic IS NULL AND @Sifra_Boja IS NULL
  63358. Begin
  63359.     Set @SSQL = 'SELECT S.Sifra_OE, S.Sifra_Dok, S.Broj_Dok, SUM(S.Kolic), 0 FROM Stavr S Inner Join Dokr D On D.DokrID=S.DokrID
  63360.         WHERE S.Sifra_Art=''' + @Sifra_Art + ''' '
  63361.     If @Sifra_Oe Is Not Null
  63362.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63363.     If @KoiOE Is Not Null
  63364.         Set @SSQL = @SSQL + ' And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63365.     If @Datum_Od Is Not Null
  63366.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  63367.     If @Datum_Do Is Not Null
  63368.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  63369.     If @Sifra_Kup Is Not Null
  63370.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  63371.     If @Sifra_Obj Is Not Null
  63372.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  63373.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_OE, S.Sifra_Dok, S.Broj_Dok '
  63374.     INSERT INTO #TmpStavr (Sifra_OE, Sifra_Dok, Broj_Dok, Kolic, KolicMag) EXEC(@SSQL)
  63375.  
  63376.      CREATE TABLE #TmpMag 
  63377.     (Sifra_OE    smallint,
  63378.     Sifra_Dok    smallint,
  63379.     Broj_Dok    int,
  63380.     KolicMag    decimal(18,6))
  63381.     Set @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, SUM(S.Kolic) FROM MagStavr S Inner Join Dokr D On D.DokrID=S.DokrID
  63382.         WHERE S.Sifra_Art=''' + @Sifra_Art + ''' '
  63383.     If @Sifra_Oe Is Not Null
  63384.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63385.     If @KoiOE Is Not Null
  63386.         Set @SSQL = @SSQL + ' And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63387.     If @Datum_Od Is Not Null
  63388.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  63389.     If @Datum_Do Is Not Null
  63390.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  63391.     If @Sifra_Kup Is Not Null
  63392.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  63393.     If @Sifra_Obj Is Not Null
  63394.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  63395.     Set @SSQL = @SSQL + ' GROUP BY D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok '
  63396.     INSERT INTO #TmpMag (Sifra_OE, Sifra_Dok, Broj_Dok, KolicMag) EXEC(@SSQL)
  63397.  
  63398.     UPDATE #TmpStavr SET KolicMag=M.KolicMag FROM #TmpMag M WHERE #TmpStavr.Sifra_OE=M.Sifra_OE AND #TmpStavr.Sifra_Dok=M.Sifra_Dok AND #TmpStavr.Broj_Dok=M.Broj_Dok
  63399. End
  63400.  
  63401.     Set @SSQL = ' Select M.Sifra_Oe, O.ImeOrg, M.Sifra_Art, A.ImeArt, M.SpecOzn, A.EdMera, M.VlIzl, M.Kolic, 
  63402.             D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  63403.             M.Lokacija, M.Sifra_KatStatus, KS.ImeKatStatus, M.Sifra_KatPak, KP.ImeKatPak,
  63404.             RN.Sifra_OeRab, RN.Broj_RabN, M.LotBr, 
  63405.             Substring(LotBr, PatIndex(''% %'', LotBr)+1, PatIndex(''%:%'', LotBr)-PatIndex(''% %'', LotBr)-1) Sifra_Boja, B.ImeBoja,
  63406.             Substring(LotBr, PatIndex(''%:%'', LotBr)+1, 5) Sifra_Velic, V.ImeVelic
  63407.         From MagStavr M
  63408.         Inner Join Dokr D On D.DokrID=M.DokrID
  63409.         Inner Join Katart A ON A.Sifra_Art = M.Sifra_Art
  63410.         Left Outer Join DokRabNal DRN On DRN.DokrID=D.DokrID
  63411.         Left Outer Join RabNal RN On RN.RabNalID=DRN.RabNalID
  63412.         Inner Join Orged O On O.Sifra_Oe = M.Sifra_Oe 
  63413.         Left Outer Join Komint K On K.Sifra_kup = D.Sifra_Kup
  63414.         Left Outer Join KObjekti KO On KO.Sifra_kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  63415.         Left Outer Join KatStatus KS On KS.Sifra_KatStatus=M.Sifra_KatStatus
  63416.         Left Outer Join TipKatPakuv KP On KP.Sifra_KatPak=M.Sifra_KatPak
  63417.         Left Outer Join Boja B On B.Sifra_Boja = Substring(LotBr, PatIndex(''% %'', LotBr)+1, PatIndex(''%:%'', LotBr)-PatIndex(''% %'', LotBr)-1)
  63418.         Left Outer Join Velicina V On V.Sifra_Velic = Substring(LotBr, PatIndex(''%:%'', LotBr)+1, 5)
  63419.         Where M.Sifra_Art = ''' + @Sifra_Art + ''' '
  63420.     If @Sifra_Oe Is Not Null
  63421.         Set @SSQL = @SSQL + ' And M.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63422.     If @KoiOE Is Not Null
  63423.         Set @SSQL = @SSQL + ' And M.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63424.     If @Datum_Od Is Not Null
  63425.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  63426.     If @Datum_Do Is Not Null
  63427.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  63428.     If @Sifra_Boja Is Not Null
  63429.         Set @SSQL = @SSQL + ' And Substring(LotBr, PatIndex(''% %'', LotBr)+1, PatIndex(''%:%'', LotBr)-PatIndex(''% %'', LotBr)-1) = ' + Cast(@Sifra_Boja as varchar(6)) + ' '
  63430.     If @Sifra_Velic Is Not Null
  63431.         Set @SSQL = @SSQL + ' And Substring(LotBr, PatIndex(''%:%'', LotBr)+1, 5) = ' + Cast(@Sifra_Velic as varchar(6)) + ' '
  63432.     If @Sifra_Kup Is Not Null
  63433.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  63434.     If @Sifra_Obj Is Not Null
  63435.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  63436.  
  63437. Set @SSQL = @SSQL + ' UNION ALL
  63438.         Select M.Sifra_Oe, O.ImeOrg, '''+@Sifra_Art+''' Sifra_Art, A.ImeArt, '''' SpecOzn, A.EdMera, D.VlIzl, M.Kolic-M.KolicMag, 
  63439.             D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  63440.             '''' Lokacija, 0 Sifra_KatStatus, '''' ImeKatStatus, 0 Sifra_KatPak, '''' ImeKatPak,
  63441.             RN.Sifra_OeRab, RN.Broj_RabN, '''' LotBr, 
  63442.             '''' Sifra_Boja, '''' ImeBoja,    '''' Sifra_Velic, '''' ImeVelic FROM #TmpStavr M
  63443.         Inner Join Dokr D On D.Sifra_OE=M.Sifra_OE AND D.Sifra_Dok=M.Sifra_Dok AND D.Broj_Dok=M.Broj_Dok                               
  63444.         Inner Join Katart A ON A.Sifra_Art = '''+@Sifra_Art+''' 
  63445.         Left Outer Join DokRabNal DRN On DRN.DokrID=D.DokrID
  63446.         Left Outer Join RabNal RN On RN.RabNalID=DRN.RabNalID
  63447.         Inner Join Orged O On O.Sifra_Oe = M.Sifra_Oe 
  63448.         Left Outer Join Komint K On K.Sifra_kup = D.Sifra_Kup
  63449.         Left Outer Join KObjekti KO On KO.Sifra_kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  63450.         WHERE M.Kolic<>M.KolicMag '
  63451.     --Set @SSQL = @SSQL + ' Order By D.Datum_Dok,M.Sifra_Oe '
  63452.     Exec (@SSQL)
  63453.  
  63454.  
  63455.  
  63456. Go
  63457. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartica_artikal_solotbroj]'))
  63458. drop procedure [dbo].[sp_kartica_artikal_solotbroj]
  63459.  
  63460. Go
  63461.  
  63462. CREATE          PROCEDURE sp_Kartica_Artikal_SoLotBroj
  63463.     @Sifra_Oe        smallint,
  63464.     @KoiOe        varchar(6),
  63465.     @Datum_Od        smalldatetime,
  63466.     @Datum_Do        smalldatetime,
  63467.     @Sifra_Art        varchar(20),
  63468.     @LotBroj        varchar(50),
  63469.     @Lokacija        varchar(10) = Null,
  63470.     @Sifra_KatStatus    smallint = Null,
  63471.     @RokRed_Od        varchar(6) = Null,
  63472.     @RokRed_Do        varchar(6) = Null,
  63473.     @Sifra_Kup        varchar(6) = Null,
  63474.     @PrethVlez         decimal(18,6) = Null Output,
  63475.     @PrethIzlez         decimal(18,6) = Null Output
  63476. AS
  63477.     Set @PrethVlez=0
  63478.     Set @PrethIzlez=0
  63479.     Declare @SSQL as varchar(8000)
  63480.     If @Datum_Od Is Not Null
  63481.     Begin
  63482.         Create Table #Tab
  63483.         (
  63484.             Vlez        decimal(18,6),
  63485.             Izlez        decimal(18,6)
  63486.         )
  63487.         Set @SSQL = ' Select Sum(Case When M.VlIzl = ''V'' Then M.Kolic Else 0 End) Vlez,
  63488.                 Sum(Case When M.VlIzl = ''I'' Then M.Kolic Else 0 End) Izlez
  63489.                 From MagStavr M
  63490.                 Inner Join Dokr D On D.DokrID=M.DokrID
  63491.                 Where D.Datum_Dok < ''' + Cast(@Datum_Od as varchar(30)) + ''' 
  63492.                 And M.Sifra_Art = ''' + @Sifra_Art + ''' '
  63493.         If @Sifra_Oe Is Not Null
  63494.             Set @SSQL = @SSQL + ' And M.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63495.         If @KoiOE Is Not Null
  63496.             Set @SSQL = @SSQL + ' And M.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63497.         If @LotBroj Is Not Null
  63498.             Set @SSQL = @SSQL + ' And M.LotBr = ''' + @LotBroj + ''' '
  63499.         If @Lokacija Is Not Null
  63500.             Set @SSQL = @SSQL + ' And M.Lokacija = ''' + @Lokacija + ''' '
  63501.         If @Sifra_KatStatus Is Not Null
  63502.             Set @SSQL = @SSQL + ' And M.Sifra_KatStatus = ' + Cast(@Sifra_KatStatus as varchar(6)) + ' '
  63503.         If @RokRed_Od Is Not Null
  63504.             Set @SSQL = @SSQL + ' And M.RokRed >= ''' + @RokRed_Od + ''' '
  63505.         If @RokRed_Do Is Not Null
  63506.             Set @SSQL = @SSQL + ' And M.RokRed <= ''' + @RokRed_Do + ''' '
  63507.         If @Sifra_Kup Is Not Null
  63508.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  63509.         Insert Into #Tab Exec(@SSQL)
  63510.         Select @PrethVlez=Vlez, @PrethIzlez=Izlez 
  63511.         From #Tab
  63512.     End
  63513.     Set @SSQL = ' Select M.Sifra_Oe, O.ImeOrg, M.Sifra_Art, A.ImeArt, M.SpecOzn, A.EdMera, M.VlIzl, M.Kolic, 
  63514.             D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  63515.             M.Lokacija, M.LotBr, M.RokRed, M.Sifra_KatStatus, KS.ImeKatStatus, M.Sifra_KatPak, KP.ImeKatPak,
  63516.             RN.Sifra_OeRab, RN.Broj_RabN, M.Datum_Vnes Datum_VnesMag, D.Oper_WMSPak
  63517.         From MagStavr M
  63518.         Inner Join Dokr D On D.DokrID=M.DokrID
  63519.         Inner Join Katart A ON A.Sifra_Art = M.Sifra_Art
  63520.         Left Outer Join DokRabNal DRN On DRN.DokrID=D.DokrID
  63521.         Left Outer Join RabNal RN On RN.RabNalID=DRN.RabNalID
  63522.         Inner Join Orged O On O.Sifra_Oe = M.Sifra_Oe 
  63523.         Left Outer Join Komint K On K.Sifra_kup = D.Sifra_Kup
  63524.         Left Outer Join KObjekti KO On KO.Sifra_kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  63525.         Left Outer Join KatStatus KS On KS.Sifra_KatStatus=M.Sifra_KatStatus
  63526.         Left Outer Join TipKatPakuv KP On KP.Sifra_KatPak=M.Sifra_KatPak
  63527.         Where M.Sifra_Art = ''' + @Sifra_Art + ''' '
  63528.     If @Sifra_Oe Is Not Null
  63529.         Set @SSQL = @SSQL + ' And M.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63530.     If @KoiOE Is Not Null
  63531.         Set @SSQL = @SSQL + ' And M.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63532.     If @Datum_Od Is Not Null
  63533.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  63534.     If @Datum_Do Is Not Null
  63535.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  63536.     If @LotBroj Is Not Null
  63537.         Set @SSQL = @SSQL + ' And M.LotBr = ''' + @LotBroj + ''' '
  63538.     If @Lokacija Is Not Null
  63539.         Set @SSQL = @SSQL + ' And M.Lokacija = ''' + @Lokacija + ''' '
  63540.     If @Sifra_KatStatus Is Not Null
  63541.         Set @SSQL = @SSQL + ' And M.Sifra_KatStatus = ' + Cast(@Sifra_KatStatus as varchar(6)) + ' '
  63542.     If @RokRed_Od Is Not Null
  63543.         Set @SSQL = @SSQL + ' And M.RokRed >= ''' + @RokRed_Od + ''' '
  63544.     If @RokRed_Do Is Not Null
  63545.         Set @SSQL = @SSQL + ' And M.RokRed <= ''' + @RokRed_Do + ''' '
  63546.     If @Sifra_Kup Is Not Null
  63547.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  63548.     Set @SSQL = @SSQL + ' Order By D.Datum_Dok,M.Sifra_Oe '
  63549.     Exec (@SSQL)
  63550.  
  63551.  
  63552.  
  63553.  
  63554.  
  63555. Go
  63556. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartica_kontrser_rabnal]'))
  63557. drop procedure [dbo].[sp_kartica_kontrser_rabnal]
  63558.  
  63559. Go
  63560. CREATE  PROCEDURE sp_Kartica_KontrSer_RabNal
  63561.     @Sifra_Art    varchar(20),
  63562.     @KontrSer    varchar(25),
  63563.     @Datum_Od    smalldatetime = Null,
  63564.     @Datum_Do    smalldatetime = Null,
  63565.     @PrethVlez    decimal(18,6) = 0 Output,
  63566.     @PrethIzlez    decimal(18,6) = 0 Output
  63567. AS
  63568.     Declare @SSQL as varchar(4000)
  63569.     If @Datum_Od Is Not Null
  63570.     Begin
  63571.         Create Table #Tab
  63572.         (Vlez        decimal(18,6),
  63573.         Izlez        decimal(18,6) )
  63574.     End
  63575.     Set @SSQL = ' Select RN.Sifra_OeRab, RN.Datum_Vnes, RN.Datum_Otv, RN.Broj_RabN, K.ImeArt, 
  63576.             D.Datum_Dok, D.VlIzl, DRN.Tip_RabStav, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok,
  63577.             E.Sifra_Art, E.KontrSer, E.Kolic, E.Tezina_Neto, E.Tezina_Bruto, E.Tezina_Dara
  63578.             From Dokr D 
  63579.             Left Outer Join DokRabNal DRN On DRN.DokrId=D.DokrId
  63580.             Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID
  63581.             Left Outer Join StaRabNal SRN On SRN.RabNalID = RN.RabNalID 
  63582.             Left Outer Join EvProizvod E On E.DokrID=DRN.DokrID 
  63583.             Inner Join Katart K On K.Sifra_Art=E.Sifra_Art 
  63584.             Where 1=1 '
  63585.     If @Sifra_Art IS NOT NULL
  63586.         Set @SSQL = @SSQL + ' And E.Sifra_Art = ''' + @Sifra_Art + ''' '
  63587.     If @KontrSer Is Not Null
  63588.         Set @SSQL = @SSQL + ' And E.KontrSer= ''' + @KontrSer + ''' '
  63589.     If @Datum_Od Is Not Null
  63590.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  63591.     If @Datum_Do Is Not Null
  63592.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  63593.     Exec(@SSQL)
  63594.  
  63595.  
  63596. Go
  63597. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartica_lotbroevi]'))
  63598. drop procedure [dbo].[sp_kartica_lotbroevi]
  63599.  
  63600. Go
  63601.  
  63602.  
  63603.  
  63604. CREATE    PROCEDURE sp_Kartica_LotBroevi
  63605.     @LotBroj    varchar(30),
  63606.     @Datum_Od    smalldatetime = Null,
  63607.     @Datum_Do    smalldatetime = Null,
  63608.     @Sifra_Art    varchar(20) = Null,
  63609.     @Sifra_Oe    smallint = Null
  63610. AS
  63611.     Declare @SSQL as varchar(8000)
  63612.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, M.Sifra_Oe, M.Sifra_Art, K.ImeArt, M.Kolic, M.VlIzl, M.SpecOzn, M.Paketi, D.Datum_Dok,
  63613.                 RN.Sifra_OeRab, RN.Broj_RabN, M.LotBr
  63614.             From Dokr D
  63615.             Inner Join MagStavr M On M.DokrID=D.DokrID
  63616.             Inner Join Katart K On K.Sifra_Art=M.Sifra_Art
  63617.             Left Outer Join DokRabNal DRN On DRN.DokrID=D.DokrID
  63618.             Left Outer Join RabNal RN On RN.RabNalID=DRN.RabNalID
  63619.             Where M.LotBr =''' + @LotBroj + ''' '
  63620.     If @Sifra_Oe Is Not Null
  63621.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  63622.     If @Sifra_Art Is Not Null
  63623.         Set @SSQL = @SSQL + ' And M.Sifra_Art= ''' + @Sifra_Art + ''' '
  63624.     If @Datum_Od Is Not Null
  63625.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  63626.     If @Datum_Do Is Not Null
  63627.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  63628.     Set @SSQL = @SSQL + ' Order By D.Datum_Dok '
  63629. print @SSQL
  63630.     Exec(@SSQL)
  63631.  
  63632.  
  63633.  
  63634.  
  63635. Go
  63636. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartica_patnik]'))
  63637. drop procedure [dbo].[sp_kartica_patnik]
  63638.  
  63639. Go
  63640.  
  63641. CREATE    PROCEDURE sp_Kartica_Patnik
  63642.     @Sifra_Za    Char(1),
  63643.     @Sifra_Kup     Char(6),
  63644.     @KoiFri     Char(1),
  63645.     @Datum_Nal_Od Smalldatetime,
  63646.     @Datum_Nal_Do Smalldatetime,
  63647.     @Datum_Dok_Od Smalldatetime,
  63648.     @Datum_Dok_Do Smalldatetime,
  63649.        @Datum_Dosp_Od Smalldatetime = Null,
  63650.        @Datum_Dosp_Do Smalldatetime = Null,
  63651.     @Kto        Char(6),
  63652.     @Kto2         Char(6) = Null,
  63653.     @KFKto2     Char(1) = 'N', 
  63654.     @Sifra_OE    Smallint,
  63655.     @Koi_OE    Varchar(200),
  63656.     @Sifra_Pat    smallint = Null        -- istoriski od AnFinDok
  63657. AS
  63658.     Declare @SSQL Varchar(4000)
  63659.     Declare @SSQLUsl Varchar(4000)
  63660.     Set @SSQLUsl = ''
  63661. --------------------------------------------------  P R E T H O D E N      P R O M E T --------------------------------------------------
  63662.     CREATE TABLE #Preth_Promet
  63663.     (
  63664.     Sifra_Pat        Smallint,
  63665.     PrethDolzi        Numeric(18,4),
  63666.     PrethPobaruva        Numeric(18,4),
  63667.     PrethPlateno_Dolzi    Numeric(18,4),
  63668.     PrethPlateno_Pobar    Numeric(18,4)
  63669. --    PrethDolziNeg        Numeric(18,4),
  63670. --    PrethPobaruvaNeg    Numeric(18,4)
  63671.     )
  63672. --                Sum( Case WHEN Dolzi < 0 Then Dolzi  Else 0 End) DolziNeg,
  63673. --                Sum( Case WHEN Pobaruva < 0 Then Pobaruva Else 0 End) PobaruvaNeg 
  63674.     If @Datum_Nal_Od Is Not Null Or @Datum_Dok_Od Is Not null Or @Datum_Dosp_Od Is Not Null
  63675.     Begin
  63676.         SET @SSQL = 'SELECT Sifra_Pat, Sum(A.Dolzi) Dolzi, Sum(A.Pobaruva) Pobaruva, 
  63677.                 Sum(A.Plateno_Dolzi) Plateno_Dolzi, Sum(A.Plateno_Pobar) Plateno_Pobar
  63678.                 FROM AnFinDok A
  63679.                 WHERE 1=1 '
  63680.         If @Datum_Dok_Od Is NOT Null
  63681.             SET @SSQL = @SSQL + ' AND A.Datum_Dok < ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  63682.         If @Datum_Nal_Od Is NOT Null
  63683.             SET @SSQL = @SSQL + ' AND A.Datum_Nal < ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  63684.         If @Datum_Dosp_Od Is Not Null
  63685.             Set @SSQL = @SSQL + ' And DateAdd(Day, A.Rok, A.Datum_Dok) < ''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  63686.         If @Sifra_Kup Is Not Null
  63687.             SET @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup=' + @Sifra_Kup + ' '
  63688.         If @Sifra_Za = '1' OR @Sifra_Za = '2'
  63689.             Set @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Za=' + @Sifra_Za + ' '
  63690.         Else If @Sifra_Za = '0'
  63691.             Set @SSQLUsl = @SSQLUsl + ' AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  63692.         If @KoiFri = 'P'
  63693.             Set @SSQLUsl = @SSQLUsl + ' AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  63694.         Else If @KoiFri = 'N'
  63695.             Set @SSQLUsl = @SSQLUsl + ' AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  63696.         Else If @KoiFri = 'R'
  63697.             Set @SSQLUsl = @SSQLUsl + ' AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) and  (A.Plateno_Dolzi = 0 and A.Plateno_Pobar = 0) '  -- Logikata ne e bas dobra (stavena e da ne prikazuva nisto)
  63698.         Else If @KoiFri = 'M'
  63699.             Set @SSQLUsl = @SSQLUsl + ' AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) '  -- site stavki koi sto se delumno ili celosno plateni (zaradi slozuvanje so sp_Kart_ZatvStavki)
  63700.         If @Kto Is NOT Null  and @Kto2 Is Null
  63701.             SET @SSQLUsl = @SSQLUsl + ' AND A.Kto=''' + @Kto + ''' '
  63702.         If @Kto Is NOT Null  and @Kto2 Is Not Null
  63703.         Begin
  63704.             If @KFKto2 = 'D'
  63705.                 SET @SSQLUsl = @SSQLUsl + ' AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  63706.             Else
  63707.                 SET @SSQLUsl = @SSQLUsl + ' AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  63708.             End
  63709.         If @Kto Is Null  and @Kto2 Is Not Null
  63710.         Begin
  63711.             If @KFKto2 = 'D'
  63712.                 SET @SSQLUsl = @SSQLUsl + ' AND  A.Kto  <> ''' + @Kto2 + ''' '
  63713.             Else
  63714.                 SET @SSQLUsl = @SSQLUsl + ' AND A.Kto = ''' + @Kto2 + ''' '
  63715.         End
  63716.         If @Sifra_Pat Is NOT Null
  63717.             SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  63718.         If @Sifra_OE Is NOT Null
  63719.             SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  63720.         If @Koi_OE Is Not Null
  63721.             Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  63722.         INSERT INTO #Preth_Promet EXEC(@SSQL+@SSQLUsl + ' Group By A.Sifra_Pat ')
  63723.     End
  63724. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  63725. --------------------------------------------  T E K O V E N      P R O M E T  ---------------------------------------------------
  63726.     Create Table #Kartica
  63727.     (
  63728.     Sifra_Oe    smallint,
  63729.     Sifra_Dok    smallint,
  63730.     Broj_Dok    int,
  63731.     BrojDok        varchar(25),
  63732.     Sifra_Nal    smallint,
  63733.     Broj_Nal    int,
  63734.     Datum_Nal    smalldatetime,
  63735.     Datum_Dok    smalldatetime,
  63736.     Rok        smallint,
  63737.     Kto        char(10),
  63738.     Sifra_Pat    smallint,
  63739.     Sifra_Za    char(1),    
  63740.     Opis        varchar(40),
  63741.     Dolzi        decimal(18,6),
  63742.     Pobaruva    decimal(18,6),
  63743.     Plateno_Dolzi    decimal(18,6),
  63744.     Plateno_Pobar    decimal(18,6),
  63745.     PrethDolzi        decimal(18,6),
  63746.     PrethPobaruva        decimal(18,6),
  63747.     PrethPlateno_Dolzi    decimal(18,6),
  63748.     PrethPlateno_Pobar    decimal(18,6)
  63749.     )
  63750.     SET @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, 
  63751.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  63752.             A.Sifra_Pat,  A.Sifra_Za, A.Opis, 
  63753.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, 
  63754.             P.PrethDolzi, P.PrethPobaruva, P.PrethPlateno_Dolzi, P.PrethPlateno_Pobar
  63755.             FROM AnFinDok A
  63756.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  63757.             Left Outer Join #Preth_Promet P On P.Sifra_Pat=A.Sifra_Pat 
  63758.             Where 1=1  '
  63759.     If @Datum_Dok_Od Is NOT Null
  63760.         SET @SSQL = @SSQL + ' AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  63761.     If @Datum_Dok_Do Is NOT Null
  63762.          SET @SSQL = @SSQL + ' AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  63763.     If @Datum_Nal_Od Is NOT Null
  63764.         SET @SSQL = @SSQL + ' AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  63765.     If @Datum_Nal_Do Is NOT Null
  63766.         SET @SSQL = @SSQL + ' AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  63767.     If @Datum_Dosp_Od Is Not Null
  63768.         Set @SSQL = @SSQL + ' And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  63769.     If @Datum_Dosp_Do Is Not Null
  63770.         Set @SSQL = @SSQL + ' And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  63771.     Insert Into #Kartica Exec(@SSQL+@SSQLUsl)
  63772. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  63773.     Insert Into #Kartica (Sifra_Pat, PrethDolzi, PrethPobaruva, PrethPlateno_Dolzi, PrethPlateno_Pobar)
  63774.     Select Sifra_Pat, PrethDolzi, PrethPobaruva, PrethPlateno_Dolzi, PrethPlateno_Pobar 
  63775.     From #Preth_Promet
  63776. --    Where (Sifra_Pat Not In (Select Distinct Sifra_Pat From #Kartica) Or Sifra_Pat Is Null)
  63777. --select * from #preth_promet
  63778. --    Insert Into #Kartica (Sifra_Pat, PrethDolzi, PrethPobaruva, PrethPlateno_Dolzi, PrethPlateno_Pobar)
  63779. --    Select Sifra_Pat, PrethDolzi, PrethPobaruva, PrethPlateno_Dolzi, PrethPlateno_Pobar 
  63780. --    From #Preth_Promet
  63781. --    Where (Sifra_Pat Not In (Select Distinct Sifra_Pat From #Kartica) Or Sifra_Pat Is Null)
  63782.     Select K.Sifra_Oe, K.Sifra_Dok, K.Broj_Dok, K.BrojDok, K.Sifra_Nal, 
  63783.         K.Broj_Nal, K.Datum_Nal, K.Datum_Dok, K.Rok, K.Kto, 
  63784.         K.Sifra_Pat, P.ImePat, K.Sifra_Za, K.Opis,
  63785.         K.Dolzi, K.Pobaruva, K.Plateno_Dolzi, K.Plateno_Pobar, 
  63786.         K.PrethDolzi, K.PrethPobaruva, K.PrethPlateno_Dolzi, K.PrethPlateno_Pobar
  63787.     From #Kartica K
  63788.     Left Outer Join Patnici P On P.Sifra_Pat=K.Sifra_Pat
  63789.  
  63790.  
  63791.  
  63792. Go
  63793. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_karticanakontrbroj_leov]'))
  63794. drop procedure [dbo].[sp_karticanakontrbroj_leov]
  63795.  
  63796. Go
  63797. CREATE         PROCEDURE sp_KarticaNaKontrBroj_Leov
  63798.     @Sifra_Oe        smallint,
  63799.     @KoiOe        varchar(6),
  63800.     @Datum_Od        smalldatetime,
  63801.     @Datum_Do        smalldatetime,
  63802.     @LotBroj        varchar(50)
  63803. AS
  63804.     Declare @SSQL as varchar(8000)
  63805.     Declare @SSQLUsl as varchar(8000)
  63806.     Set @SSQLUsl = ' '
  63807.     Create Table #Tab
  63808.     (
  63809.      Sifra_Oe    smallint,
  63810.      Sifra_Dok    smallint,
  63811.      Broj_Dok    int,
  63812.      Datum_Dok    smalldatetime,
  63813.      Sifra_Art    varchar(20),
  63814.      Vlez        decimal(18,6),
  63815.      Izlez        decimal(18,6),
  63816.      Sifra_Kup    char(6),
  63817.      Sifra_Obj    smallint
  63818.     )
  63819.     If @Sifra_Oe Is Not Null
  63820.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  63821.     If @KoiOE Is Not Null
  63822.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  63823.     If @Datum_Od Is Not Null
  63824.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  63825.     If @Datum_Do Is Not Null
  63826.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  63827.     Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Datum_Dok, S.Sifra_Art, 
  63828.                 (Case When S.VlIzl = ''V'' Then S.Kolic Else 0 End) Vlez, 
  63829.                 (Case When S.VlIzl = ''I'' Then S.Kolic Else 0 End) Izlez,
  63830.                 D.Sifra_Kup, D.Sifra_Obj
  63831.         From Stavr S
  63832.         Inner Join Dokr D On D.DokrID=S.DokrID
  63833.         Where SubString(S.KontrSer,4,20) = ''' + @LotBroj + ''' '
  63834.     Insert Into #Tab Exec(@SSQL + @SSQLUsl)
  63835.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, M.Sifra_Art, 
  63836.                 (Case When M.VlIzl = ''V'' Then M.Kolic Else 0 End) Vlez, 
  63837.                 (Case When M.VlIzl = ''I'' Then M.Kolic Else 0 End) Izlez,
  63838.                 D.Sifra_Kup, D.Sifra_Obj
  63839.         From MagStavr M
  63840.         Inner Join Dokr D On D.DokrID=M.DokrID
  63841.         Where M.LotBr = ''' + @LotBroj + ''' '
  63842.     Insert Into #Tab Exec(@SSQL + @SSQLUsl)
  63843.     Select T.Sifra_Oe, T.Sifra_Dok, T.Broj_Dok, T.Datum_Dok, T.Sifra_Art, K.ImeArt, T.Vlez, T.Izlez, T.Sifra_Kup, Kup.ImeKup, T.Sifra_Obj, KO.ImeObj
  63844.     From #Tab T
  63845.     Inner Join Katart K ON K.Sifra_Art = T.Sifra_Art
  63846.     Left Outer Join Komint Kup On Kup.Sifra_Kup = T.Sifra_Kup
  63847.     Left Outer Join KObjekti KO On KO.Sifra_Kup = T.Sifra_Kup And KO.Sifra_Obj=T.Sifra_Obj
  63848.  
  63849.  
  63850. Go
  63851. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_karticanakosignacija]'))
  63852. drop procedure [dbo].[sp_karticanakosignacija]
  63853.  
  63854. Go
  63855. CREATE    PROCEDURE sp_KarticaNaKosignacija
  63856.     @Sifra_Kup    Char(6) = Null,
  63857.     @Sifra_Obj    smallint = Null,
  63858.     @Datum_Od    smalldatetime,
  63859.     @Datum_Do    smalldatetime,
  63860.     @SoDanok    char(1) = 'D',
  63861.     @Sifra_Art    varchar(20),
  63862.     @PrethVlKol    decimal(18,6) = Null Output,    
  63863.     @PrethIzlKol    decimal(18,6) = Null Output,
  63864.     @PrethVlVred    decimal(18,6) = Null Output,
  63865.     @PrethIzlVred    decimal(18,6) = Null Output
  63866. AS
  63867.     Declare @SSQL Varchar    (8000)
  63868.     If @Datum_Od Is Not Null
  63869.     Begin
  63870.         Create Table #PrethSost
  63871.         (
  63872.           PrethVlKol    decimal(18,6),
  63873.           PrethIzlKol    decimal(18,6),
  63874.           PrethVlVred    decimal(18,6),
  63875.           PrethIzlVred    decimal(18,6)
  63876.         )                    -- ((Case When (K.SodrziEd<>0 And S.Sifra_Dok In (15,16,85,86)) Then S.Kolic*K.SodrziEd Else S.Kolic End) * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')) Else 0 End)),
  63877.         Set @SSQL = ' Select Sum((Case When (S.Sifra_Dok In (15,16,85,86) Or (S.Sifra_Dok=990 And D.VlIzl=''V'')) Then (Case When (K.SodrziEd<>0 And S.Sifra_Dok In (15,16,85,86)) Then S.Kolic*K.SodrziEd Else S.Kolic End) Else 0 End)),
  63878.                     Sum((Case When S.Sifra_Dok In (185, 186,191,192) Then S.Kolic Else 0 End)), 
  63879.                     Sum((Case When (S.Sifra_Dok In (15,16,85,86) Or (S.Sifra_Dok=990 And D.VlIzl=''V'')) Then     (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')) Else 0 End)),
  63880.                     Sum((Case When S.Sifra_Dok In (185, 186,191,192) Then (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')) Else 0 End))
  63881.                 From Stavr S
  63882.                 Inner Join Dokr D On D.DokrID = S.DokrID
  63883.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  63884.                 Where S.Sifra_Dok in (85,86,15,16,990,185,186,191,192) 
  63885.                 And S.Sifra_Art = ''' + @Sifra_Art + ''' 
  63886.                 And S.Datum_Dok < ''' + Cast(@Datum_Od as varchar(30)) + ''' '        
  63887.         If @Sifra_Kup Is Not Null 
  63888.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ' + @Sifra_kup + ' '
  63889.         If @Sifra_Obj Is Not Null 
  63890.             Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as Varchar(6)) + ' '
  63891.         Insert Into #PrethSost Exec(@SSQL)
  63892.         Select @PrethVlKol=PrethVlKol, @PrethIzlKol=PrethIzlKol, @PrethVlVred=PrethVlVred, @PrethIzlVred=PrethIzlVred From #PrethSost
  63893.     End
  63894.     Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Datum_Dok, S.Sifra_Art, 
  63895.                     (Case When (S.Sifra_Dok In (15,16,85,86) Or (S.Sifra_Dok=990 And D.VlIzl=''V'')) Then 
  63896.                         (Case When (K.SodrziEd<>0 And S.Sifra_Dok In (15,16,85,86)) Then S.Kolic*K.SodrziEd Else S.Kolic End) Else 0 End) Vlez,
  63897.                     (Case When S.Sifra_Dok In (185, 186,191,192) Then S.Kolic Else 0 End) Izlez, 
  63898.                     (Case When (K.SodrziEd<>0 And S.Sifra_Dok In (15,16,85,86)) Then
  63899.                         (dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''') / K.SodrziEd) Else
  63900.                         dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''') End) Cena
  63901.             From Stavr S
  63902.             Inner Join Dokr D On D.DokrID = S.DokrID
  63903.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  63904.             Where S.Sifra_Dok in (85,86,15,16,990,185,186,191,192) 
  63905.             And S.Sifra_Art = ''' + @Sifra_Art + ''' ' 
  63906.     If @Sifra_Kup Is Not Null 
  63907.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ' + @Sifra_kup + ' '
  63908.     If @Sifra_Obj Is Not Null 
  63909.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as Varchar(6)) + ' '
  63910.     If @Datum_Od Is Not Null 
  63911.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  63912.     If @Datum_Do Is Not Null 
  63913.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  63914.     Exec(@SSQL)
  63915.  
  63916.  
  63917. Go
  63918. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_karticanaserbr]'))
  63919. drop procedure [dbo].[sp_karticanaserbr]
  63920.  
  63921. Go
  63922.  
  63923. CREATE  PROCEDURE sp_KarticaNaSerBr 
  63924.     @Sifra_Art    varchar(20),
  63925.     @SeriskiBr    varchar(15),
  63926.     @Datum_Od    smalldatetime = Null,
  63927.     @Datum_Do    smalldatetime = Null
  63928. AS
  63929.     Declare @SSQL as varchar(4000)
  63930.     Set @SSQL = ' Select D.Datum_Dok, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.VlIzl, 1 as Kolic, 
  63931.             D.Sifra_Kup, Kup.ImeKup, D.Sifra_Prim, O.ImeOrg as ImePrim
  63932.             From Dokr D
  63933.             Inner Join Stavr S On S.DokrID = D.DokrID 
  63934.             Inner Join BrStavr B On B.DokID = S.DokID
  63935.             Left Outer Join Komint Kup On Kup.Sifra_kup = D.Sifra_Kup
  63936.             Left Outer Join Orged O On O.Sifra_Oe = D.Sifra_Prim
  63937.             Where S.Sifra_Art = ''' + @Sifra_Art + ''' and B.SeriskiBr= ''' + @SeriskiBr + ''' '
  63938.     If @Datum_Od Is Not Null
  63939.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  63940.     If @Datum_Do Is Not Null
  63941.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  63942.     Exec(@SSQL)
  63943.  
  63944.  
  63945.  
  63946. Go
  63947. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartios_expnapl]'))
  63948. drop procedure [dbo].[sp_kartios_expnapl]
  63949.  
  63950. Go
  63951.  
  63952.  
  63953.  
  63954. CREATE    PROCEDURE sp_KartIOS_ExpNapl
  63955.     @Sifra_Za Char(1) = Null,
  63956.     @Sifra_Kup Char(6),
  63957.     @KoiFri Char(1),
  63958.        @Datum_Nal_Od Smalldatetime = Null,
  63959.        @Datum_Nal_Do Smalldatetime = Null,
  63960.        @Datum_Dok_Od Smalldatetime = Null,
  63961.        @Datum_Dok_Do Smalldatetime = Null,
  63962.        @Datum_Dosp_Od Smalldatetime = Null,
  63963.        @Datum_Dosp_Do Smalldatetime = Null,
  63964.        @Kto Char(10) = Null,
  63965.      @Sifra_OE Smallint = Null,
  63966.        @Koi_OE Varchar(10) = NULL,
  63967.     @Sifra_Pat Smallint = Null,
  63968.     @Sifra_Nal Smallint = Null,
  63969.     @Sifra_Div Smallint = Null,
  63970.     @KoiPat varchar(10) = Null     -- Grupi na patnicite
  63971. AS
  63972.     Declare @SSQL Varchar(8000)
  63973.     SET @SSQL = 'SELECT 0 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  63974.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  63975.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis, A.Sifra_Div,
  63976.             Kom.Sifra_Kup, Kom.ImeKup, 0 as TipKom, Kom.Kontakt, Kom.Adresa, '''' AdrBroj,
  63977.             Kom.Posta, Kom.Smesto, 
  63978.             Kom.Danocen, Kom.MatBr,
  63979.             Kom.Banka, Kom.Ziro,
  63980.                         Kom.Telefon, Kom.Tel1,
  63981.             dbo.fn_VratiGodMesDenBas(A.Datum_Dok) aDatum_Dok,
  63982.             dbo.fn_VratiGodMesDenBas(DateAdd(day,A.Rok,A.Datum_Dok)) aDatum_Rok,
  63983.             dbo.fn_VratiGodMesDenBas(GetDate()) aDenes,
  63984.             ''MKD'' ImeVal,
  63985.             0 Kamata,
  63986.             Kom.Sopstvenik, Kom.Kontakt, 
  63987.             Kdr1.Ime_1K
  63988.             froM AnFinDok A
  63989.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  63990.             INNER JOIN Komint Kom ON A.Sifra_Kup=Kom.Sifra_Kup
  63991.             Left Outer Join KDrugo1 Kdr1 on Kom.KDrugo1 = Kdr1.Sifra_1K
  63992.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' '
  63993.  
  63994.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  63995.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  63996.     Else If @Sifra_Za = '0'
  63997.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  63998.  
  63999.     If @KoiFri = 'P'
  64000.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  64001.     Else If @KoiFri = 'N'
  64002.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  64003.     Else If @KoiFri = 'F'
  64004.         Set @SSQL = @SSQL + 'AND T.TipDok=''1'' and (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  64005.  
  64006.     If @Datum_Dok_Od Is NOT Null
  64007.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64008.     If @Datum_Dok_Do Is NOT Null
  64009.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64010.  
  64011.     If @Datum_Nal_Od Is NOT Null
  64012.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64013.     If @Datum_Nal_Do Is NOT Null
  64014.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64015.  
  64016.     If @Kto Is NOT Null
  64017.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  64018.  
  64019.     If @Sifra_Pat Is NOT Null
  64020.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  64021.  
  64022.     If @KoiPat IS NOT NULL
  64023.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  64024.  
  64025.     If @Sifra_OE Is NOT Null
  64026.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64027.  
  64028.     If @Koi_OE Is Not Null
  64029.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  64030.     If @Datum_Dosp_Od Is Not Null
  64031.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  64032.     If @Datum_Dosp_Do Is Not Null
  64033.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  64034.  
  64035.     If @Sifra_Nal Is NOT Null
  64036.         SET @SSQL = @SSQL + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  64037.  
  64038.     If @Sifra_Div Is NOT Null
  64039.         SET @SSQL = @SSQL + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  64040.  
  64041.     Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64042.  
  64043.     EXEC(@SSQL)
  64044.  
  64045.  
  64046.  
  64047.  
  64048.  
  64049. Go
  64050. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartios_komint]'))
  64051. drop procedure [dbo].[sp_kartios_komint]
  64052.  
  64053. Go
  64054. CREATE                       PROCEDURE sp_KartIOS_Komint
  64055.     @Sifra_Za Char(1),
  64056.     @Sifra_Kup Char(6),
  64057.     @KoiFri Char(1),
  64058.        @Datum_Nal_Od Smalldatetime,
  64059.        @Datum_Nal_Do Smalldatetime,
  64060.        @Datum_Dok_Od Smalldatetime,
  64061.        @Datum_Dok_Do Smalldatetime,
  64062.        @Datum_Dosp_Od Smalldatetime = Null,
  64063.        @Datum_Dosp_Do Smalldatetime = Null,
  64064.        @Kto Char(10),
  64065.     @Kto2 Char(10) = Null,
  64066.     @KFKto2 Char(1) = 'N', 
  64067.      @Sifra_OE Smallint,
  64068.        @Koi_OE Varchar(10) = NULL,
  64069.     @Sifra_Pat Smallint = Null,
  64070.     @Sifra_Nal Smallint = Null,
  64071.     @Sifra_Div Smallint = Null,
  64072.     @Podred char(1) = Null,
  64073.     @KoiPat varchar(10) = Null     -- Grupi na patnicite
  64074. AS
  64075.     Declare @SSQL Varchar(8000)
  64076.     SET @SSQL = 'SELECT 0 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  64077.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto, A.Kurs,
  64078.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis, 
  64079.             A.Sifra_Div, A.Sifra_Kup
  64080.             FROM AnFinDok A
  64081.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  64082.     WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' '
  64083.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  64084.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  64085.     Else If @Sifra_Za = '0'
  64086.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  64087.     If @KoiFri = 'P'
  64088.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  64089.     Else If @KoiFri = 'N'
  64090.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  64091.     If @Datum_Dok_Od Is NOT Null
  64092.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64093.     If @Datum_Dok_Do Is NOT Null
  64094.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64095.     If @Datum_Nal_Od Is NOT Null
  64096.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64097.     If @Datum_Nal_Do Is NOT Null
  64098.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64099.     If @Kto Is NOT Null  and @Kto2 Is Null
  64100.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  64101.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  64102.     Begin
  64103.         If @KFKto2 = 'D'
  64104.             SET @SSQL = @SSQL + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  64105.         Else
  64106.             SET @SSQL = @SSQL + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  64107.     End
  64108.     If @Kto Is Null  and @Kto2 Is Not Null
  64109.     Begin
  64110.         If @KFKto2 = 'D'
  64111.             SET @SSQL = @SSQL + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  64112.         Else
  64113.             SET @SSQL = @SSQL + 'AND A.Kto = ''' + @Kto2 + ''' '
  64114.     End
  64115.     If @Sifra_Pat Is NOT Null
  64116.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  64117.     If @KoiPat IS NOT NULL
  64118.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  64119.     If @Sifra_OE Is NOT Null
  64120.         SET @SSQL = @SSQL + ' AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64121.     If @Koi_OE Is Not Null
  64122.         Set @SSQL = @SSQL + ' And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  64123.     If @Datum_Dosp_Od Is Not Null
  64124.         Set @SSQL = @SSQL + ' And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  64125.     If @Datum_Dosp_Do Is Not Null
  64126.         Set @SSQL = @SSQL + ' And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  64127.     If @Sifra_Nal Is NOT Null
  64128.         SET @SSQL = @SSQL + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  64129.     If @Sifra_Div Is NOT Null
  64130.         SET @SSQL = @SSQL + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  64131.     If @Podred = 'D'
  64132.         Set @SSQL = @SSQL + 'Order By Dateadd(Day, A.Rok, A.Datum_Dok), A.Sifra_Za, A.Broj_Dok '
  64133.     Else
  64134.         Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64135. EXEC(@SSQL)
  64136.  
  64137.  
  64138.  
  64139.  
  64140.  
  64141.  
  64142.  
  64143. Go
  64144. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartios_komint_dev]'))
  64145. drop procedure [dbo].[sp_kartios_komint_dev]
  64146.  
  64147. Go
  64148.  
  64149.  
  64150.  
  64151. CREATE      PROCEDURE sp_KartIOS_Komint_Dev
  64152.     @Sifra_Za Char(1),
  64153.     @Sifra_Kup Char(6),
  64154.     @KoiFri Char(1),
  64155.     @Datum_Nal_Od Smalldatetime,
  64156.     @Datum_Nal_Do Smalldatetime,
  64157.     @Datum_Dok_Od Smalldatetime,
  64158.     @Datum_Dok_Do Smalldatetime,
  64159.     @Kto Char(10),
  64160.     @Sifra_OE Smallint,
  64161.     @KojaVal char(3) = NULL,
  64162.     @Podred char(1) = Null,
  64163.     @Sifra_Div smallint = Null,
  64164.     @Sifra_Pat Smallint = Null
  64165. AS
  64166.     Declare @SSQL Varchar(2000)
  64167.     SET @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, TD.ImeDok, A. Broj_Dok, 
  64168.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  64169.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar,
  64170.             A.Dev_Dolzi, A.Dev_Pobaruva, A.Dev_Plat_Dolzi, A.Dev_Plat_Pobar, V.ImeVal,
  64171.             A.Sifra_Pat, A.Sifra_Za, Round(A.Kurs,4) Kurs,
  64172.             (Case When A.Broj_Kalk Is Not Null Then A.Opis + '' DK '' + Cast(Broj_Kalk as varchar(6)) Else A.Opis End) as Opis , A.AnID, A.Sifra_Div
  64173.         FROM AnFinDok A
  64174.         INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.Dev=''D''
  64175.         LEFT OUTER JOIN KrsLista V ON A.KojaVal=V.SImeVal
  64176.         WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  64177.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  64178.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  64179.     Else If @Sifra_Za = '0'
  64180.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  64181.     If @KoiFri = 'P'
  64182.         Set @SSQL = @SSQL + 'AND A.Dev_Dolzi=A.Dev_Plat_Dolzi AND A.Dev_Pobaruva=A.Dev_Plat_Pobar '
  64183.     Else If @KoiFri = 'N'
  64184.         Set @SSQL = @SSQL + 'AND (A.Dev_Dolzi<>A.Dev_Plat_Dolzi OR A.Dev_Pobaruva<>A.Dev_Plat_Pobar) '
  64185.     If @Datum_Dok_Od Is NOT Null
  64186.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64187.     If @Datum_Dok_Do Is NOT Null
  64188.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64189.     If @Datum_Nal_Od Is NOT Null
  64190.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64191.     If @Datum_Nal_Do Is NOT Null
  64192.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64193.     If @Kto Is NOT Null 
  64194.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  64195.     If @Sifra_OE Is NOT Null
  64196.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64197.     If @KojaVal IS NOT NULL
  64198.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  64199.     If @Sifra_Div Is NOT Null
  64200.         SET @SSQL = @SSQL + 'AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  64201.     If @Sifra_Pat Is NOT Null
  64202.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  64203.     If @Podred = 'D'
  64204.         Set @SSQL = @SSQL + 'Order By Dateadd(Day, A.Rok, A.Datum_Dok), A.Sifra_Za, A.Broj_Dok '
  64205.     Else
  64206.         Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64207.     EXEC(@SSQL)
  64208.  
  64209.  
  64210.  
  64211. Go
  64212. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartios_komint_dev_divizii]'))
  64213. drop procedure [dbo].[sp_kartios_komint_dev_divizii]
  64214.  
  64215. Go
  64216.  
  64217. CREATE     PROCEDURE sp_KartIOS_Komint_Dev_Divizii
  64218.     @Sifra_Za Char(1),
  64219.     @Sifra_Kup Char(6),
  64220.     @KoiFri Char(1),
  64221.     @Datum_Nal_Od Smalldatetime,
  64222.     @Datum_Nal_Do Smalldatetime,
  64223.     @Datum_Dok_Od Smalldatetime,
  64224.     @Datum_Dok_Do Smalldatetime,
  64225.     @Kto Char(6),
  64226.     @Sifra_OE Smallint,
  64227.     @KojaVal char(3) = NULL,
  64228.     @Podred char(1) = Null,
  64229.     @Sifra_Div smallint = Null
  64230. AS
  64231.     Declare @SSQL Varchar(2000)
  64232.     SET @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, TD.ImeDok, A. Broj_Dok, 
  64233.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  64234.             (Case When GD.Dolzi <> 0 Then GD.Dolzi Else A.Dolzi End) Dolzi, (Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else A.Pobaruva End) Pobaruva, 
  64235.             A.Plateno_Dolzi, A.Plateno_Pobar,
  64236.             (Case When A.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / A.Kurs Else A.Dev_Dolzi End) Dev_Dolzi, 
  64237.             (Case When A.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / A.Kurs Else A.Dev_Pobaruva End) Dev_Pobaruva, 
  64238.             A.Dev_Plat_Dolzi, A.Dev_Plat_Pobar, V.ImeVal,
  64239.             A.Sifra_Pat, A.Sifra_Za, 
  64240.             (Case When A.Broj_Kalk Is Not Null Then A.Opis + '' DK '' + Cast(Broj_Kalk as varchar(6)) Else A.Opis End) as Opis , A.AnID, GD.Sifra_Div
  64241.         FROM AnFinDok A
  64242.         INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.Dev=''D''
  64243.         LEFT OUTER JOIN KrsLista V ON A.KojaVal=V.SImeVal
  64244.         LEFT OUTER JOIN GstAnDiv GD On GD.AnID=A.AnID
  64245.         WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  64246.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  64247.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  64248.     Else If @Sifra_Za = '0'
  64249.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  64250.     If @KoiFri = 'P'
  64251.         Set @SSQL = @SSQL + 'AND A.Dev_Dolzi=A.Dev_Plat_Dolzi AND A.Dev_Pobaruva=A.Dev_Plat_Pobar '
  64252.     Else If @KoiFri = 'N'
  64253.         Set @SSQL = @SSQL + 'AND (A.Dev_Dolzi<>A.Dev_Plat_Dolzi OR A.Dev_Pobaruva<>A.Dev_Plat_Pobar) '
  64254.     If @Datum_Dok_Od Is NOT Null
  64255.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64256.     If @Datum_Dok_Do Is NOT Null
  64257.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64258.     If @Datum_Nal_Od Is NOT Null
  64259.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64260.     If @Datum_Nal_Do Is NOT Null
  64261.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64262.     If @Kto Is NOT Null 
  64263.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  64264.     If @Sifra_OE Is NOT Null
  64265.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64266.     If @KojaVal IS NOT NULL
  64267.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  64268.     If @Sifra_Div Is NOT Null
  64269.         SET @SSQL = @SSQL + 'AND GD.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  64270.     If @Podred = 'D'
  64271.         Set @SSQL = @SSQL + 'Order By Dateadd(Day, A.Rok, A.Datum_Dok), A.Sifra_Za, A.Broj_Dok '
  64272.     Else
  64273.         Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64274. print @SSQL
  64275.     EXEC(@SSQL)
  64276.  
  64277.  
  64278.  
  64279. Go
  64280. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartios_komint_divizii]'))
  64281. drop procedure [dbo].[sp_kartios_komint_divizii]
  64282.  
  64283. Go
  64284.  
  64285. CREATE                    PROCEDURE sp_KartIOS_Komint_Divizii
  64286.     @Sifra_Za Char(1),
  64287.     @Sifra_Kup Char(6),
  64288.     @KoiFri Char(1),
  64289.        @Datum_Nal_Od Smalldatetime,
  64290.        @Datum_Nal_Do Smalldatetime,
  64291.        @Datum_Dok_Od Smalldatetime,
  64292.        @Datum_Dok_Do Smalldatetime,
  64293.        @Datum_Dosp_Od Smalldatetime = Null,
  64294.        @Datum_Dosp_Do Smalldatetime = Null,
  64295.        @Kto Char(10),
  64296.     @Kto2 Char(10) = Null,
  64297.     @KFKto2 Char(1) = 'N', 
  64298.      @Sifra_OE Smallint,
  64299.        @Koi_OE Varchar(10) = NULL,
  64300.     @Sifra_Pat Smallint = Null,
  64301.     @Sifra_Nal Smallint = Null,
  64302.     @Sifra_Div Smallint = Null,
  64303.     @Podred char(1) = Null,
  64304.     @KoiPat varchar(10) = Null     -- Grupi na patnicite
  64305. AS
  64306.     Declare @SSQL Varchar(8000)
  64307.     SET @SSQL = 'SELECT 0 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  64308.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  64309.             (Case When GD.Dolzi <> 0 Then GD.Dolzi Else A.Dolzi End) Dolzi, 
  64310.             (Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else A.Pobaruva End) Pobaruva, 
  64311.             A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis, GD.Sifra_Div
  64312.             FROM AnFinDok A
  64313.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  64314.             LEFT OUTER JOIN GstAnDiv GD On GD.AnID=A.AnID
  64315.     WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' '
  64316.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  64317.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  64318.     Else If @Sifra_Za = '0'
  64319.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  64320.     If @KoiFri = 'P'
  64321.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  64322.     Else If @KoiFri = 'N'
  64323.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  64324.     If @Datum_Dok_Od Is NOT Null
  64325.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64326.     If @Datum_Dok_Do Is NOT Null
  64327.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64328.     If @Datum_Nal_Od Is NOT Null
  64329.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64330.     If @Datum_Nal_Do Is NOT Null
  64331.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64332.     If @Kto Is NOT Null  and @Kto2 Is Null
  64333.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  64334.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  64335.     Begin
  64336.         If @KFKto2 = 'D'
  64337.             SET @SSQL = @SSQL + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  64338.         Else
  64339.             SET @SSQL = @SSQL + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  64340.     End
  64341.     If @Kto Is Null  and @Kto2 Is Not Null
  64342.     Begin
  64343.         If @KFKto2 = 'D'
  64344.             SET @SSQL = @SSQL + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  64345.         Else
  64346.             SET @SSQL = @SSQL + 'AND A.Kto = ''' + @Kto2 + ''' '
  64347.     End
  64348.     If @Sifra_Pat Is NOT Null
  64349.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  64350.     If @KoiPat IS NOT NULL
  64351.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  64352.     If @Sifra_OE Is NOT Null
  64353.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64354.     If @Koi_OE Is Not Null
  64355.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  64356.     If @Datum_Dosp_Od Is Not Null
  64357.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  64358.     If @Datum_Dosp_Do Is Not Null
  64359.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  64360.     If @Sifra_Nal Is NOT Null
  64361.         SET @SSQL = @SSQL + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  64362.     If @Sifra_Div Is NOT Null
  64363.         SET @SSQL = @SSQL + ' AND GD.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  64364.     If @Podred = 'D'
  64365.         Set @SSQL = @SSQL + 'Order By Dateadd(Day, A.Rok, A.Datum_Dok), A.Sifra_Za, A.Broj_Dok '
  64366.     Else
  64367.         Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64368. print @SSQL
  64369. EXEC(@SSQL)
  64370.  
  64371.  
  64372.  
  64373. Go
  64374. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartios_komint_dvebazi]'))
  64375. drop procedure [dbo].[sp_kartios_komint_dvebazi]
  64376.  
  64377. Go
  64378.  
  64379. CREATE                  PROCEDURE sp_KartIOS_Komint_DveBazi
  64380.     @Sifra_Za Char(1),
  64381.     @Sifra_Kup Char(6)=Null,
  64382.     @KoiFri Char(1)=Null,
  64383.        @Datum_Nal_Od Smalldatetime=Null,
  64384.        @Datum_Nal_Do Smalldatetime=Null,
  64385.        @Datum_Dok_Od Smalldatetime=Null,
  64386.        @Datum_Dok_Do Smalldatetime=Null,
  64387.        @Datum_Dosp_Od Smalldatetime = Null,
  64388.        @Datum_Dosp_Do Smalldatetime = Null,
  64389.        @Kto Char(6)=Null,
  64390.     @Kto2 Char(6) = Null,
  64391.     @KFKto2 Char(1) = 'N', 
  64392.      @Sifra_OE Smallint=Null,
  64393.        @Koi_OE Varchar(10) = NULL,
  64394.     @Baza2 Varchar(15) = Null,
  64395.     @Sifra_Pat Smallint = Null,
  64396.     @KoiPat varchar(10) = Null
  64397. AS
  64398.     Declare @SSQL Varchar(4000)
  64399.     Declare @SSQLUsl Varchar(4000)
  64400.     Set @SSQl = ' '
  64401.     Set @SSQLUsl=' '
  64402.     Create Table #Rezult
  64403.     (
  64404.      KojaBaza    char(1),
  64405.      Sifra_OE    smallint,
  64406.      Sifra_Dok    smallint,
  64407.      ImeDok    varchar(100), 
  64408.      Broj_Dok    int, 
  64409.      BrojDok    varchar(100),
  64410.      Sifra_Nal     smallint, 
  64411.       Broj_Nal    int, 
  64412.      Datum_Nal     smalldatetime, 
  64413.      Datum_Dok    smalldatetime, 
  64414.      Rok        int, 
  64415.      Kto        char(10),
  64416.      Dolzi        decimal(18,6), 
  64417.      Pobaruva    decimal(18,6), 
  64418.      Plateno_Dolzi    decimal(18,6), 
  64419.      Plateno_Pobar    decimal(18,6), 
  64420.      Sifra_Pat    smallint, 
  64421.      Sifra_Za    char(1), 
  64422.      AnID        int, 
  64423.      Opis        varchar(100),
  64424.      Sifra_Div    smallint
  64425.     )
  64426.     SET @SSQL = 'SELECT 1 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  64427.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  64428.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis, A.Sifra_Div
  64429.         FROM AnFinDok A
  64430.         INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  64431.               WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  64432.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  64433.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  64434.     Else If @Sifra_Za = '0'
  64435.         Set @SSQLUsl = @SSQLUsl + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  64436.     If @KoiFri = 'P'
  64437.         Set @SSQLUsl = @SSQLUsl + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  64438.     Else If @KoiFri = 'N'
  64439.         Set @SSQLUsl = @SSQLUsl + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  64440.     If @Datum_Dok_Od Is NOT Null
  64441.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64442.     If @Datum_Dok_Do Is NOT Null
  64443.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64444.     If @Datum_Nal_Od Is NOT Null
  64445.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64446.     If @Datum_Nal_Do Is NOT Null
  64447.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64448.     If @Kto Is NOT Null  and @Kto2 Is Null
  64449.         SET @SSQLUsl = @SSQLUsl + 'AND A.Kto=''' + @Kto + ''' '
  64450.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  64451.     Begin
  64452.     If @KFKto2 = 'D'
  64453.         SET @SSQLUsl = @SSQLUsl + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  64454.     Else
  64455.         SET @SSQLUsl = @SSQLUsl + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  64456.     End
  64457.     If @Kto Is Null  and @Kto2 Is Not Null
  64458.     Begin
  64459.     If @KFKto2 = 'D'
  64460.         SET @SSQLUsl = @SSQLUsl + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  64461.     Else
  64462.         SET @SSQLUsl = @SSQLUsl + 'AND A.Kto = ''' + @Kto2 + ''' '
  64463.     End
  64464.     If @Sifra_Pat Is NOT Null
  64465.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  64466.     If @KoiPat IS NOT NULL
  64467.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  64468.     If @Sifra_OE Is NOT Null
  64469.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64470.     If @Koi_OE Is Not Null
  64471.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  64472.     If @Datum_Dosp_Od Is Not Null
  64473.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  64474.     If @Datum_Dosp_Do Is Not Null
  64475.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  64476.     Set @SSQLUsl = @SSQLUsl + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64477. print @SSQL+@SSQLUsl
  64478.     Insert Into #Rezult EXEC(@SSQL+@SSQLUsl)
  64479.     SET @SSQL = 'SELECT 2 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  64480.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto,
  64481.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis, A.Sifra_Div
  64482.         FROM ' + @Baza2 + '..AnFinDok A
  64483.         INNER JOIN  ' + @Baza2 + '..TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  64484.               WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  64485.     Insert Into #Rezult EXEC(@SSQL+@SSQLUsl)
  64486.     Select * from #Rezult
  64487.  
  64488.  
  64489.  
  64490. Go
  64491. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartios_komint_sodokoddokr]'))
  64492. drop procedure [dbo].[sp_kartios_komint_sodokoddokr]
  64493.  
  64494. Go
  64495.  
  64496.  
  64497. CREATE                    PROCEDURE sp_KartIOS_Komint_SoDokOdDokr
  64498.     @Sifra_Za Char(1),
  64499.     @Sifra_Kup Char(6),
  64500.     @KoiFri Char(1),
  64501.        @Datum_Nal_Od Smalldatetime,
  64502.        @Datum_Nal_Do Smalldatetime,
  64503.        @Datum_Dok_Od Smalldatetime,
  64504.        @Datum_Dok_Do Smalldatetime,
  64505.        @Datum_Dosp_Od Smalldatetime = Null,
  64506.        @Datum_Dosp_Do Smalldatetime = Null,
  64507.        @Kto Char(10),
  64508.     @Kto2 Char(10) = Null,
  64509.     @KFKto2 Char(1) = 'N', 
  64510.      @Sifra_OE Smallint,
  64511.        @Koi_OE Varchar(10) = NULL,
  64512.     @Sifra_Pat Smallint = Null,
  64513.     @Sifra_Nal Smallint = Null,
  64514.     @Sifra_Div Smallint = Null,
  64515.     @Podred char(1) = Null,
  64516.     @KoiPat varchar(10) = Null     -- Grupi na patnicite
  64517. AS
  64518.     Declare @SSQL Varchar(8000)
  64519.     Declare @SSQLUsl as varchar(8000)
  64520.     Set @SSQLUsl = ' '
  64521.  
  64522.     SET @SSQL = ' SELECT 0 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  64523.             A.BrojDok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto, A.Kurs,
  64524.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, A.Sifra_Pat, A.Sifra_Za, A.AnID, A.Opis, A.Sifra_Div
  64525.             FROM AnFinDok A
  64526.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok 
  64527.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' '
  64528.     If @Datum_Nal_Od Is NOT Null
  64529.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64530.     If @Datum_Nal_Do Is NOT Null
  64531.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64532.     If @KoiFri = 'P'
  64533.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  64534.     Else If @KoiFri = 'N'
  64535.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  64536.  
  64537.  
  64538.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  64539.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  64540.     If @Datum_Dok_Od Is NOT Null
  64541.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64542.     If @Datum_Dok_Do Is NOT Null
  64543.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64544.     If @Kto Is NOT Null  and @Kto2 Is Null
  64545.         SET @SSQLUsl = @SSQLUsl + 'AND A.Kto=''' + @Kto + ''' '
  64546.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  64547.     Begin
  64548.         If @KFKto2 = 'D'
  64549.             SET @SSQLUsl = @SSQLUsl + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  64550.         Else
  64551.             SET @SSQLUsl = @SSQLUsl + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  64552.     End
  64553.     If @Kto Is Null  and @Kto2 Is Not Null
  64554.     Begin
  64555.         If @KFKto2 = 'D'
  64556.             SET @SSQLUsl = @SSQLUsl + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  64557.         Else
  64558.             SET @SSQLUsl = @SSQLUsl + 'AND A.Kto = ''' + @Kto2 + ''' '
  64559.     End
  64560.     If @Sifra_Pat Is NOT Null
  64561.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  64562.     If @KoiPat IS NOT NULL
  64563.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  64564.     If @Sifra_OE Is NOT Null
  64565.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64566.     If @Koi_OE Is Not Null
  64567.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  64568.     If @Datum_Dosp_Od Is Not Null
  64569.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  64570.     If @Datum_Dosp_Do Is Not Null
  64571.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  64572.     If @Sifra_Nal Is NOT Null
  64573.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  64574.     If @Sifra_Div Is NOT Null
  64575.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  64576.  
  64577.     Set @SSQL = @SSQL + @SSQLUsl + ' Union '
  64578.  
  64579.     Set @SSQL = @SSQL + ' SELECT 0 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  64580.             A.Identif_br, A.Sifra_Nal, A.Broj_Nal, N.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto, A.Kurs,
  64581.             A.Toc200 as Dolzi, 0 as Pobaruva, A.Toc200 as Plateno_Dolzi, 0 as Plateno_Pobar, 
  64582.             A.Sifra_Pat, A.Sifra_Za, A.DokrID as AnID, A.Opis, A.Sifra_Div
  64583.             FROM dokr A
  64584.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok 
  64585.             LEFT OUTER Join Nalozi N On N.Sifra_Nal = A.Sifra_Nal And N.Broj_Nal=A.Broj_Nal
  64586.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' 
  64587.             And A.Sifra_Dok in (83,84) '
  64588.     If @Datum_Nal_Od Is NOT Null
  64589.         SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64590.     If @Datum_Nal_Do Is NOT Null
  64591.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64592.     Else If @KoiFri = 'N'
  64593.         Set @SSQL = @SSQL + 'AND (A.Toc200<>A.Toc200) '  -- mora nessto da se stavi
  64594.  
  64595.     Set @SSQL = @SSQL + @SSQLUsl
  64596.  
  64597.     Set @SSQL = @SSQL + @SSQLUsl + ' Union '
  64598.  
  64599.     Set @SSQL = @SSQL + ' SELECT 0 as KojaBaza, A.Sifra_OE, A.Sifra_Dok, T.ImeDok, A.Broj_Dok, 
  64600.             A.Identif_br, A.Sifra_Nal, A.Broj_Nal, N.Datum_Nal, A.Datum_Dok, A.Rok, A.Kto, A.Kurs,
  64601.             0 as Dolzi, A.Toc200 as Pobaruva, 0 as Plateno_Dolzi, A.Toc200 as Plateno_Pobar, 
  64602.             A.Sifra_Pat, A.Sifra_Za, A.DokrID as AnID, A.Opis, A.Sifra_Div
  64603.             FROM dokr A
  64604.             INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok 
  64605.             LEFT OUTER Join Nalozi N On N.Sifra_Nal = A.Sifra_Nal And N.Broj_Nal=A.Broj_Nal
  64606.             WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' 
  64607.             And A.Sifra_Dok in (83,84) '
  64608.     If @Datum_Nal_Od Is NOT Null
  64609.         SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64610.     If @Datum_Nal_Do Is NOT Null
  64611.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64612.     Else If @KoiFri = 'N'
  64613.         Set @SSQL = @SSQL + 'AND (A.Toc200<>A.Toc200) '  -- mora nessto da se stavi
  64614.  
  64615.     Set @SSQL = @SSQL + @SSQLUsl
  64616.  
  64617.     If @Podred = 'D'
  64618.         Set @SSQL = @SSQL + 'Order By Dateadd(Day, A.Rok, A.Datum_Dok), A.Sifra_Za, A.Broj_Dok '
  64619.     Else
  64620.         Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64621. print @SSQL
  64622. EXEC(@SSQL)
  64623.  
  64624. Go
  64625. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartkons]'))
  64626. drop procedure [dbo].[sp_kartkons]
  64627.  
  64628. Go
  64629.  
  64630.  
  64631. CREATE  PROCEDURE sp_KartKons
  64632.     @Koi_OE        Varchar(1000) = Null,
  64633.        @Datum_Od     Smalldatetime = Null,
  64634.        @Datum_Do     Smalldatetime = Null,
  64635.     @Sifra_Art_Od     Varchar(20) = Null,
  64636.     @Sifra_Art_Do     Varchar(20) = Null,
  64637.     @Kto         char(6) = Null,
  64638.     @Sifra_Gr     char(3) = Null,
  64639.     @Sifra_Podg     char(6) = Null
  64640. AS
  64641.     Declare @SSQL Varchar(8000)
  64642.     SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, TD.ImeDok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.Kasa, 
  64643.             D.Datum_Dok, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj,
  64644.             S.Sifra_Art, A.ImeArt, A.Edmera, S.VlIzl, S.Kolic, S.DokCena, S.MagCena, S.Uces, S.DanDokCena, S.DanMagCena, S.POsn,
  64645.             D.Identif_Br, D.Ispratnica,  S.UcesOsn, S.UcesKol, (Case When S.UcesDod Is Null Then 0 Else S.UcesDod End) UcesDod,
  64646.             A.ImaKomerc, A.Sifra_Podg, S.Alt_Kolic,
  64647.             S.NabCena, D.Toc200, D.Spck_stat
  64648.         FROM DOKR D
  64649.         inner JOIN Stavr S ON S.DokrID=D.DokrID
  64650.         inner join TipDok TD On D.SIfra_dok =  TD.SifrA_Dok
  64651.         LEFT OUTER JOIN Katart A ON S.Sifra_Art=A.Sifra_Art 
  64652.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup '
  64653.     if @Sifra_Gr is not null
  64654.          set @SSQL = @SSQL + 'LEFT OUTER JOIN Podgrupi PG ON A.Sifra_Podg=PG.Sifra_Podg '
  64655.     SET @SSQL = @SSQL + 'WHERE 1=1     '
  64656.        If @Koi_OE Is NOT Null
  64657.            Set @SSQL=@SSQL+'    and D.Sifra_OE In (' + @Koi_OE + ') '
  64658.     If @Datum_Od Is NOT Null
  64659.         SET @SSQL = @SSQL + ' AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  64660.        If @Datum_Do Is NOT Null
  64661.         SET @SSQL = @SSQL + ' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  64662.        If @Sifra_Art_Od IS NOT NULL 
  64663.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  64664.        If @Sifra_Art_Do IS NOT NULL 
  64665.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  64666.        If @Kto IS NOT NULL
  64667.               Set @SSQL=@SSQL+'AND A.Kto='''+@Kto+''' '
  64668.        If @Sifra_Gr IS NOT NULL
  64669.               Set @SSQL=@SSQL+'AND PG.Sifra_Gr='''+@Sifra_Gr+''' '
  64670.        If @Sifra_Podg IS NOT NULL
  64671.               Set @SSQL=@SSQL+'AND A.Sifra_Podg='''+@Sifra_Podg+''' '
  64672.     EXEC(@SSQL)
  64673.  
  64674.  
  64675.  
  64676.  
  64677. Go
  64678. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartkredit]'))
  64679. drop procedure [dbo].[sp_kartkredit]
  64680.  
  64681. Go
  64682.  
  64683.  
  64684.  
  64685.  
  64686.  
  64687.  
  64688. CREATE       PROCEDURE sp_KartKredit
  64689.  
  64690.     @Sifra_Oe smallint = null,
  64691.     @Sifra_Kor varchar(20) = null,
  64692.     @BrKredit int = null,
  64693.     @DatumOd smalldatetime= null,
  64694.     @DatumDo smalldatetime = null,
  64695.     @Prik char(1) = null
  64696. AS
  64697.  
  64698.     Declare @SSQL Varchar(8000)
  64699.      Set @SSQL=' Select KT.*, O.ImeOrg, K.ImeKor, KR.Sifra_Kor
  64700.                 From KreditTransakc KT
  64701.                 Inner Join OrgEd O on KT.Sifra_Oe= O.Sifra_Oe
  64702.                 Left Outer Join Kredit KR on KT.Sifra_Oe=KR.Sifra_Oe and KT.Broj_kredit=KR.Broj_Kredit 
  64703.                 Left Outer Join KartKor K on KR.Sifra_Kor= K.Sifra_Kor
  64704.                 Where 1=1 '
  64705.  
  64706.     IF @Sifra_Kor IS NOT NULL
  64707.         SET @SSQL = @SSQL + ' AND KR.Sifra_Kor='''+ @Sifra_Kor + ''' '
  64708.     If @Sifra_OE Is NOT Null
  64709.         SET @SSQL = @SSQL + ' AND KT.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  64710.     If @BrKredit Is NOT Null
  64711.         SET @SSQL = @SSQL + ' AND KT.Broj_Kredit=' + Cast(@BrKredit As Varchar(9)) + ' '
  64712.     If @DatumOd Is NOT Null
  64713.         SET @SSQL = @SSQL + ' AND KT.Datum_dosp>=''' + Cast(@DatumOd As Varchar(35)) + ''' '
  64714.     If @DatumDo Is NOT Null
  64715.         SET @SSQL = @SSQL + ' AND KT.Datum_dosp<=''' + Cast(@DatumDo As Varchar(35)) + ''' '
  64716.     IF @Prik='R'
  64717.         SET @SSQL = @SSQL + ' AND KT.Dolzi<>0 and KT.Dolzi is not null '
  64718.      IF @Prik='U'
  64719.         SET @SSQL = @SSQL + ' AND KT.Pobaruva<>0 and KT.Pobaruva is not null '
  64720.    exec(@ssql)
  64721.  
  64722. --print @SSQL
  64723.  
  64724.  
  64725.  
  64726.  
  64727.  
  64728.  
  64729.  
  64730. Go
  64731. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartnaracart]'))
  64732. drop procedure [dbo].[sp_kartnaracart]
  64733.  
  64734. Go
  64735. CREATE PROCEDURE sp_KartNaracArt
  64736.     @Sifra_oe    smallint,
  64737.     @KoiOe    varchar(200),
  64738.     @Sifra_art    varchar(20),
  64739.     @Datum_Od    smalldatetime,
  64740.     @Datum_Do    smalldatetime,
  64741.     @Sifra_GrNar    smallint,
  64742.     @SoDanok    char(1)
  64743. AS
  64744.     Declare @SSQL as varchar(8000)
  64745.     Set @SSQL = ' Select S.Sifra_art, K.Imeart, N.Datum_Nar, N.Broj_Nar, N.Identif_Br, S.Sifra_Nar,
  64746.             dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''') Cena, S.Kolic , N.Sifra_Kup, KUP.ImeKup, T.Vlizl, G.Sifra_GrNar 
  64747.             From StaNarac S
  64748.             Inner Join Naracki N On N.NarID=S.NarID
  64749.             Inner Join TipNarac T On T.Sifra_Nar = N.Sifra_Nar
  64750.             Inner Join Katart K On K.Sifra_art=S.Sifra_art
  64751.             Left Outer Join Komint KUP On KUP.Sifra_Kup = N.Sifra_Kup 
  64752.             Left Outer Join GrNar G On G.Sifra_GrNar = T.Sifra_GrNar
  64753.             Where S.Sifra_art = ''' + @Sifra_art + ''' '
  64754.     If @Sifra_Oe Is Not Null
  64755.         Set @SSQL = @SSQL + ' and S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  64756.     If @KoiOe Is Not Null
  64757.         Set @SSQL = @SSQL + ' and S.Sifra_Oe In (' + @KoiOe + ') '
  64758.     If @Datum_Od Is Not Null
  64759.         Set @SSQL = @SSQL + ' and N.Datum_Nar >= ''' + cast(@Datum_Od as varchar(35)) + ''' '
  64760.     If @Datum_Do Is Not Null
  64761.         Set @SSQL = @SSQL + ' and N.Datum_Nar <= ''' + cast(@Datum_Do as varchar(35)) + ''' '
  64762.     If @Sifra_GrNar Is Not Null
  64763.         Set @SSQL = @SSQL + ' and G.Sifra_GrNar = ' + cast(@Sifra_GrNar as Varchar(6)) + ' '       
  64764.     Exec (@SSQL)
  64765.  
  64766.  
  64767.  
  64768. Go
  64769. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartprom_analitika]'))
  64770. drop procedure [dbo].[sp_kartprom_analitika]
  64771.  
  64772. Go
  64773.  
  64774.  
  64775.  
  64776.  
  64777. CREATE     PROCEDURE sp_KartProm_Analitika
  64778.  
  64779.     @Sifra_Oe         smallint = Null,
  64780.     @Grp_Kasa         smallint = Null,
  64781.     @BrKasa         smallint = Null,
  64782.     @Sifra_Kor         varchar (20) = Null,
  64783.     @Sifra_Nac         smallint = Null,
  64784.     @Datum_Ska_Od     smalldatetime = Null,
  64785.     @Datum_Ska_Do     smalldatetime = Null,
  64786.     @Sifra_Kup         char (6) = Null,
  64787.     @Sifra_Podg        char(6) = Null,
  64788.     @Sifra_Gr        char(3) = Null,
  64789.     @Kto            char(6) = Null,
  64790.     @Sifra_Art_Od        varchar(20) = Null,
  64791.     @Sifra_Art_Do        varchar(20) = Null,
  64792.     @SifrarnikArtOd        char(1) = 'K',    -- K - Katart    A - ArkaKat
  64793.     @KorSoOe        char(1) = 'N',
  64794.         @SamoSoPopust           char(1) = 'N' 
  64795.  
  64796. AS
  64797.  
  64798.     Declare @SSQL as varchar(8000)
  64799.     Declare @SSQLUsl as varchar(8000)
  64800.     Set @SSQLUsl = ' '
  64801.  
  64802.     Create Table #Tmp2
  64803.     (
  64804.      Sifra_Oe    smallint,
  64805.      Grp_Kasa    smallint,
  64806.      BrKasa        smallint,
  64807.      Broj_Ska    int,
  64808.      VkIznos    decimal(18,6),
  64809.     )
  64810.     Set @SSQL = ' SELECT     A.Sifra_Oe, A.Grp_Kasa, A.BrKasa, A.Broj_Ska, Sum(S.Kolic*S.Cena*(1-S.Popust/100)) Vrednost
  64811.             FROM ArkaKartKpm A
  64812.             Inner Join SPromet S On S.Sifra_Oe = A.Sifra_Oe And S.Grp_Kasa = A.Grp_Kasa And S.BrKasa = A.BrKasa And S.Broj_Ska = A.Broj_Ska 
  64813.             Where A.FraUpl = ''F'' '
  64814.  
  64815.     If @Sifra_Oe Is Not Null
  64816.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' ' 
  64817.     If @Grp_Kasa Is Not Null
  64818.         Set @SSQLUsl = @SSQLUsl + ' And A.Grp_Kasa = ' + Cast(@Grp_Kasa as varchar(6)) + ' ' 
  64819.     If @BrKasa Is Not Null
  64820.         Set @SSQLUsl = @SSQLUsl + ' And A.BrKasa = ' + Cast(@BrKasa as varchar(6)) + ' ' 
  64821.     If @Sifra_Kor Is Not Null
  64822.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kor = ''' + @Sifra_Kor + ''' ' 
  64823.     If @Sifra_Nac Is Not Null
  64824.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Nac = ' + Cast(@Sifra_Nac as varchar(6)) + ' ' 
  64825.     If @Datum_Ska_Od Is Not Null
  64826.         Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Ska >= ''' + Cast(@Datum_Ska_Od as varchar(30)) + ''' ' 
  64827.     If @Datum_Ska_Do Is Not Null
  64828.         Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Ska <= ''' + Cast(@Datum_Ska_Do as varchar(30)) + ''' ' 
  64829.     If @Sifra_Kup Is Not Null
  64830.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup = ''' + @Sifra_Kup + ''' '           
  64831.     If @SamoSoPopust ='D'
  64832.         Set @SSQLUsl = @SSQLUsl + ' And S.Popust <> 0 '  
  64833.         Insert Into #Tmp2 Exec(@SSQL+@SSQLUsl+ ' Group By A.Sifra_Oe, A.Grp_Kasa, A.BrKasa, A.Broj_Ska ')
  64834.  
  64835.     Create Table #Tmp1
  64836.     (
  64837.      Sifra_Oe    smallint,
  64838.      Grp_Kasa    smallint,
  64839.      BrKasa        smallint,
  64840.      Broj_Ska    int,
  64841.      Sifra_Nac    smallint,
  64842.      Iznos        decimal(18,6),
  64843.      VkIznos    decimal(18,6),
  64844.      Procent    decimal(18,6)
  64845.     )
  64846.     Insert Into #Tmp1
  64847.     Select K.Sifra_Oe, K.Grp_Kasa, K.BrKasa, K.Broj_Ska, K.Sifra_Nac, Sum(K.Iznos), T2.VkIznos, Sum(K.Iznos/T2.VkIznos)
  64848.     From #Tmp2 T2
  64849.     Inner Join PlkProm K On T2.Sifra_Oe=K.Sifra_Oe And T2.Grp_Kasa=K.Grp_Kasa And T2.BrKasa=K.BrKasa And T2.Broj_Ska=K.Broj_Ska
  64850.     Where T2.VkIznos Is Not Null And T2.VkIznos <> 0
  64851.     Group By K.Sifra_Oe, K.Grp_Kasa, K.BrKasa, K.Broj_Ska, K.Sifra_Nac, T2.VkIznos
  64852.  
  64853.     Update #Tmp1 set VkIznos = Iznos Where Abs(VkIznos-Iznos) < 1
  64854.     Update #Tmp1 set Procent = Iznos/VkIznos
  64855.  
  64856.  
  64857.     Set @SSQL = ' SELECT     A.Sifra_Kor, KK.ImeKor, S.Sifra_Art, K.ImeArt, Sum(S.Kolic*T.Procent) Kolic, Sum(S.Kolic*T.Procent*S.Cena*(1-S.Popust/100)) Vrednost
  64858.             FROM ArkaKartKpm A
  64859.             Inner Join SPromet S On S.Sifra_Oe = A.Sifra_Oe And S.Grp_Kasa = A.Grp_Kasa And S.BrKasa = A.BrKasa And S.Broj_Ska = A.Broj_Ska
  64860.             Inner Join #Tmp1 T On T.Sifra_Oe = A.Sifra_Oe And T.Grp_Kasa = A.Grp_Kasa And T.BrKasa = A.BrKasa And T.Broj_Ska = A.Broj_Ska And T.Sifra_Nac=A.Sifra_Nac '
  64861.     If @SifrarnikArtOd = 'A'
  64862.         Set @SSQL = @SSQL + ' Inner Join ArkaKartKor KK On KK.Sifra_Kor = A.Sifra_Kor
  64863.                       Inner Join ArkaKat K On S.Sifra_Art = K.Sifra_Art '
  64864.     Else
  64865.     Begin
  64866.         If @KorSoOe = 'D'
  64867.             Set @SSQL = @SSQL + ' Inner Join KartKor KK On KK.Sifra_Kor = A.Sifra_Kor And KK.Sifra_Oe = A.Sifra_Oe
  64868.                           Inner Join Katart K On S.Sifra_Art = K.Sifra_Art '
  64869.         Else
  64870.             Set @SSQL = @SSQL + ' Inner Join KartKor KK On KK.Sifra_Kor = A.Sifra_Kor
  64871.                           Inner Join Katart K On S.Sifra_Art = K.Sifra_Art '
  64872.     End
  64873.     If @Sifra_Gr Is Not Null And (@SifrarnikArtOd <> 'A' Or @SifrarnikArtOd Is Null)
  64874.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg '
  64875.     Set @SSQL = @SSQL + ' Where A.FraUpl = ''F'' '
  64876.  
  64877.     Set @SSQL = @SSQL + @SSQLUsl
  64878.  
  64879.     If @Kto Is Not Null and @SifrarnikArtOd = 'K'
  64880.         Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '            
  64881.     If @Sifra_Podg Is Not Null And (@SifrarnikArtOd <> 'A' Or @SifrarnikArtOd Is Null)
  64882.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' ' 
  64883.     If @Sifra_Gr Is Not Null And (@SifrarnikArtOd <> 'A' Or @SifrarnikArtOd Is Null)
  64884.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' ' 
  64885.     If @Sifra_Art_Od Is Not Null
  64886.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' ' 
  64887.     If @Sifra_Art_Do Is Not Null
  64888.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' ' 
  64889.     If @SamoSoPopust ='D'
  64890.         Set @SSQLUsl = @SSQLUsl + ' And S.Popust <> 0 ' 
  64891.         Set @SSQL = @SSQL + ' Group By A.Sifra_Kor, KK.ImeKor, S.Sifra_Art, K.ImeArt '
  64892.     Exec(@SSQL)
  64893.  
  64894.  
  64895.  
  64896. Go
  64897. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kartzatv_komint]'))
  64898. drop procedure [dbo].[sp_kartzatv_komint]
  64899.  
  64900. Go
  64901.  
  64902. CREATE                    PROCEDURE sp_KartZatv_Komint
  64903.     @Sifra_Za Char(1),
  64904.     @Sifra_Kup Char(6),
  64905.     @KoiFri Char(1),
  64906.     @Datum_Nal_Od Smalldatetime,
  64907.     @Datum_Nal_Do Smalldatetime,
  64908.     @Datum_Dok_Od Smalldatetime,
  64909.     @Datum_Dok_Do Smalldatetime,
  64910.     @Kto Char(6),
  64911.     @Sifra_OE Smallint,
  64912.     @Dev    char(1) = 'N',
  64913.     @KojaVal char(3) = Null,
  64914.     @Datum_Dosp_Od Smalldatetime,
  64915.     @Datum_Dosp_Do Smalldatetime,
  64916.     @KojaStrana char(1) = Null,    -- D - Dolzi,          P - Pobaruva          -- S - i Dolzi i Pobaruva            Null - Bez Zatvaranja
  64917.     @Sifra_Pat Smallint = Null,
  64918.     @KoiPat varchar(10) = Null
  64919. AS
  64920.     Declare @SSQL Varchar(4000)
  64921.     SET @SSQL = 'SELECT A.AnID, A.Sifra_OE, A.Sifra_Dok, A. Broj_Dok,
  64922.             A.Sifra_Za, TD.TipDok, V.ImeVal, 
  64923.             A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar, Null, Null, A.Dev_Dolzi, A.Dev_Pobaruva, A.Dev_Plat_Dolzi, A.Dev_Plat_Pobar
  64924.         FROM AnFinDok A
  64925.         INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok'
  64926.     IF @Dev = 'D'
  64927.         Set @SSQL = @SSQL + ' INNER JOIN KrsLista V ON A.KojaVal = V.SImeVal '
  64928.     Else    
  64929.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN KrsLista V ON A.KojaVal = V.SImeVal '
  64930.     Set @SSQL = @SSQL + ' WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '--and TD.TipDok = 2'
  64931.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  64932.         Set @SSQL = @SSQL + ' AND A.Sifra_Za=' + @Sifra_Za + ' '
  64933.     If @Datum_Dok_Od Is NOT Null
  64934.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  64935.     If @Datum_Dok_Do Is NOT Null
  64936.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  64937.     If @Datum_Nal_Od Is NOT Null
  64938.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  64939.     If @Datum_Nal_Do Is NOT Null
  64940.         SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  64941.     If @Kto Is NOT Null 
  64942.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  64943.     If @Sifra_Pat Is NOT Null
  64944.         SET @SSQL = @SSQL + 'AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  64945.     If @KoiPat IS NOT NULL
  64946.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  64947.     If @Sifra_OE Is NOT Null
  64948.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  64949.     If @KojaVal IS NOT NULL
  64950.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  64951.     If @Datum_Dosp_Od Is Not Null
  64952.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  64953.     If @Datum_Dosp_Do Is Not Null
  64954.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  64955.     Set @SSQL = @SSQL + 'Order By A.Datum_Dok, A.Sifra_Za, A.Broj_Dok '
  64956.     Create Table #Kartica
  64957.     (    AnID Int,
  64958.         Sifra_OE Smallint,
  64959.         Sifra_Dok Smallint,
  64960.         Broj_Dok Int,
  64961.         Sifra_Za Char(1),
  64962.         TipDok Char(1),
  64963.         ImeVal varchar(20),
  64964.         Dolzi Decimal(18,6),
  64965.         Pobaruva Decimal(18,6),
  64966.         Plateno_Dolzi Decimal(18,6),
  64967.         Plateno_Pobar Decimal(18,6),
  64968.         ZatvaraSo Int,
  64969.         ZatvIznos Decimal(18,6),
  64970.         Dev_Dolzi Decimal(18,6),
  64971.         Dv_Pobaruva Decimal(18,6),
  64972.         Dev_Plat_Dolzi Decimal(18,6),
  64973.         Dev_Plat_Pobar Decimal(18,6)
  64974.     )
  64975.     Insert #Kartica EXEC(@SSQL)
  64976.     If @KojaStrana = 'D' Or @KojaStrana = 'P' Or @KojaStrana = 'S'
  64977.     Begin
  64978.         Set @SSQL = ' Insert Into #Kartica
  64979.             Select A.AnID, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Za, 
  64980.             TD.TipDok, V.ImeVal, A.Dolzi, A.Pobaruva,     
  64981.             A.Plateno_Dolzi, A.Plateno_Pobar, (Case When A.AnID=AZ.AnID1 Then AZ.AnID2 When A.AnID=AZ.AnID2 Then AZ.AnID1 Else Null End), 
  64982.             Abs(AZ.Iznos) * (Case When A.Dolzi <> 0 Then Sign(A.Dolzi) 
  64983.                             When A.Pobaruva <> 0 Then Sign(A.Pobaruva) Else 1 End), 
  64984.             A.Dev_Dolzi, A.Dev_Pobaruva,  A.Dev_Plat_Dolzi, A.Dev_Plat_Pobar
  64985.             From AnFinDok A
  64986.             Inner Join AnZatv AZ On AZ.AnID1=A.AnID Or AZ.AnID2=A.AnID
  64987.             Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  64988.             LEFT OUTER JOIN KrsLista V ON A.KojaVal = V.SImeVal 
  64989.             Where A.AnID In (Select AnID From #Kartica) '
  64990.         If @KojaStrana = 'D'
  64991.             Set @SSQL = @SSQL + ' And A.Dolzi <> 0 '
  64992.         Else If @KojaStrana = 'P'
  64993.             Set @SSQL = @SSQL + ' And A.Pobaruva <> 0 '
  64994.         Exec(@SSQL)
  64995.     End
  64996.     Select K.*, A.Sifra_Nal, A.Broj_Nal, A.Datum_Dok, A.Rok,
  64997.              A.BrojDok, TD.ImeDok, A.Kto, Z.BrojDok BrDokZatv,
  64998.              Z.Sifra_Oe SifraOeZatv, Z.Sifra_Dok Sif_Dok_Zatv, Z.Broj_Dok Br_Dok_Zatv, Z.Datum_Dok DatumZatv,
  64999.             Z.Sifra_Nal Sif_Nal_Zatv, Z.Broj_Nal Broj_Nal_Zatv, A.Opis
  65000.     From #Kartica K
  65001.     Inner Join AnFinDok A On K.AnID=A.AnID
  65002.     Inner Join TipDok TD On K.Sifra_Dok=TD.Sifra_Dok
  65003.     Left Outer Join AnFinDok Z On K.ZatvaraSo = Z.AnID    
  65004.     Order By K.ZatvaraSo, TD.TipDok Desc, A.Datum_Dok
  65005.  
  65006.  
  65007.  
  65008. Go
  65009. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kasstavpecfisc]'))
  65010. drop procedure [dbo].[sp_kasstavpecfisc]
  65011.  
  65012. Go
  65013.  
  65014. CREATE  PROCEDURE sp_KasStavPecFisc
  65015.     @Sifra_Nal smallint,
  65016.     @Broj_Dok int,
  65017.     @P_I          char(1),
  65018.     @TipBlag    char(3)=NULL,
  65019.     @Pec_Fisc smallint OUTPUT
  65020. AS
  65021. IF @TipBlag IS NULL
  65022.     SELECT @Pec_Fisc=Pec_Fisc
  65023.     FROM KasStav
  65024.     WHERE Sifra_Nal=@Sifra_Nal AND Broj_Dok=@Broj_Dok and P_I=@P_I
  65025. ELSE
  65026.     SELECT @Pec_Fisc=Pec_Fisc FROM KasStav
  65027.     WHERE Sifra_Nal=@Sifra_Nal AND Broj_Dok=@Broj_Dok and P_I=@P_I AND TipBlag=@TipBlag
  65028.  
  65029.  
  65030.  
  65031. Go
  65032. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kasstavpecfiscnv]'))
  65033. drop procedure [dbo].[sp_kasstavpecfiscnv]
  65034.  
  65035. Go
  65036.  
  65037. CREATE  PROCEDURE sp_KasStavPecFiscNV
  65038.     @Sifra_Nal smallint,
  65039.     @Broj_Dok int,
  65040.     @P_I          char(1),
  65041.     @TipBlag    char(3)=NULL,
  65042.     @Pec_Fisc smallint
  65043. AS
  65044. IF @TipBlag IS NULL
  65045.     UPDATE KasStav
  65046.     Set Pec_Fisc=@Pec_Fisc
  65047.     WHERE Sifra_Nal=@Sifra_Nal AND Broj_Dok=@Broj_Dok and P_I=@P_I
  65048. ELSE
  65049.     UPDATE KasStav Set Pec_Fisc=@Pec_Fisc
  65050.     WHERE Sifra_Nal=@Sifra_Nal AND Broj_Dok=@Broj_Dok and P_I=@P_I AND TipBlag=@TipBlag
  65051.  
  65052.  
  65053.  
  65054. Go
  65055. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_katart_barkod]'))
  65056. drop procedure [dbo].[sp_katart_barkod]
  65057.  
  65058. Go
  65059.  
  65060. CREATE             PROCEDURE sp_Katart_BarKod
  65061.     @Od        Varchar(40),
  65062.     @Do        Varchar(40),
  65063.     @Podred    Varchar(10),
  65064.     @Sifra_Podg    Varchar(12),
  65065.     @Sifra_Gr    Varchar(6),
  65066.     @Sifra_Tar    Char(3),
  65067.     @Kto        Varchar(6),
  65068.     @Sifra_Drg    Smallint = NULL,
  65069.     @Lokacija    varchar(10) = NULL,
  65070.     @Sifra_ZBrand    smallint  = NULL,
  65071.     @DatDodOd    smalldatetime = null,
  65072.     @DatDodDo    smalldatetime = null,
  65073.     @DatIzmOd    smalldatetime = null,
  65074.     @DatIzmDo    smalldatetime = null,
  65075.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N      (od @Sifra_Podg)
  65076.     @Sifra_Div    smallint = Null,
  65077.     @Aktiven    char(1) = Null,
  65078.         @VoPDA      char(1) = Null
  65079. AS
  65080.     Declare @SSQL VARCHAR(4000)
  65081.     Set @Podred = Upper(@Podred)
  65082.     If @Podred Is Null
  65083.         Set @Podred = 'SIFRA'
  65084.     SET @SSQL =  'Select K.Sifra_Art, K.Imeart, K.Nom, A.Nom BarKod
  65085.         From Katart K 
  65086.         Inner Join Podgrupi P On K.Sifra_Podg=P.Sifra_Podg 
  65087.         Inner Join Grupi G On P.Sifra_Gr=G.Sifra_Gr '
  65088.     Set @SSQL = @SSQL + ' Left Outer Join Abarkod A On A.Sifra_art=K.Sifra_Art '
  65089.     If @Sifra_ZBrand Is Not Null
  65090.         Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  65091.     Set @SSQL=@SSQL+' Where 1=1 '
  65092.     If @Podred = 'SIFRA' Or @Podred = 'GRUPA' Or @Podred = 'PODGRUPA' Or @Podred = 'BRAND'
  65093.         Begin
  65094.             If @Od Is Not Null
  65095.                 Set @SSQL = @SSQL + 'And K.Sifra_Art>=''' + Cast(@Od As Varchar(20)) + ''' '
  65096.             If @Do Is Not Null
  65097.                 Set @SSQL = @SSQL + 'And K.Sifra_Art<=''' + Cast(@Do As Varchar(20)) + ''' '
  65098.         End
  65099.     Else If @Podred = 'IME'
  65100.         Begin
  65101.             If @Od Is Not Null
  65102.                 Set @SSQL = @SSQL + 'And K.ImeArt>=''' + Cast(@Od As Varchar(40)) + ''' '
  65103.             If @Do Is Not Null
  65104.                 Set @SSQL = @SSQL + 'And K.ImeArt<=''' + Cast(@Do As Varchar(40)) + ''' '
  65105.         End
  65106.        If @Sifra_Podg Is Not Null
  65107.         If @PocnuvaSo ='D'
  65108.             Set @SSQL=@SSQL+'AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  65109.         Else
  65110.                   Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  65111. --    If @Sifra_Podg Is Not Null
  65112. --        Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + Cast(@Sifra_Podg As Varchar(12)) + ''' '
  65113.     If @Sifra_Gr Is Not Null
  65114.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=''' + Cast(@Sifra_Gr As Varchar(6)) + ''' '
  65115.     If @Sifra_Tar Is Not Null
  65116.         Set @SSQL = @SSQL + 'And K.Sifra_Tar=''' + Cast(@Sifra_Tar As Varchar(6)) + ''' '
  65117.     If @Kto Is Not Null
  65118.         Set @SSQL = @SSQL + 'And K.Kto=''' + Cast(@Kto As Varchar(6)) + ''' '
  65119.     If @Lokacija Is Not Null
  65120.         Set @SSQL = @SSQL + 'And K.Lokacija = ''' + @Lokacija + ''' '
  65121.     If @Sifra_Drg Is Not Null
  65122.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=''' + Cast(@Sifra_Drg As Varchar(6)) + ''' '
  65123.     If @Sifra_ZBrand Is Not Null
  65124.         Set @SSQL=@SSQL+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  65125.     If @DatDodOd Is Not Null
  65126.         Set @SSQL = @SSQL + 'And K.DodadenNa>=''' + Cast(@DatDodOd As Varchar(35)) + ''' '
  65127.     If @DatDodDo Is Not Null
  65128.         Set @SSQL = @SSQL + 'And K.DodadenNa<=''' + Cast(@DatDodDo As Varchar(35)) + ''' '        
  65129.     If @DatIzmOd Is Not Null
  65130.         Set @SSQL = @SSQL + 'And K.IzmenetNa>=''' + Cast(@DatIzmOd As Varchar(35)) + ''' '
  65131.     If @DatIzmDo Is Not Null
  65132.         Set @SSQL = @SSQL + 'And K.IzmenetNa<=''' + Cast(@DatIzmDo As Varchar(35)) + ''' '
  65133.     If @Sifra_Div Is Not Null
  65134.         Set @SSQL = @SSQL + 'And K.Sifra_Div=''' + Cast(@Sifra_Div As Varchar(6)) + ''' '
  65135.     If @Aktiven = 'N'
  65136.         Set @SSQL = @SSQL + ' And K.Aktiven = ''N'' '
  65137.     Else If @Aktiven = 'D'
  65138.         Set @SSQL = @SSQL + ' And (K.Aktiven <> ''N'' Or K.Aktiven Is Null) '
  65139.     If @VoPDA Is Not Null and @VoPDA <> ''
  65140.         Set @SSQL = @SSQL + ' And K.VoPDA = ''' + @VoPDA + ''' '
  65141.         If @Podred = 'SIFRA'
  65142.         Set @SSQL = @SSQL + 'Order By K.Sifra_Art '
  65143.     Else If @Podred = 'IME'
  65144.         Set @SSQL = @SSQL + 'Order By K.ImeArt, K.Sifra_Art'
  65145.     Else If @Podred = 'PODGRUPA'
  65146.         Set @SSQL = @SSQL + 'Order By K.Sifra_Podg'
  65147.     Else If @Podred = 'GRUPA'
  65148.         Set @SSQL = @SSQL + 'Order By P.Sifra_Gr, K.Sifra_Art'
  65149.     Else If @Podred = 'BRAND'
  65150.         Set @SSQL = @SSQL + 'Order By K.Sifra_Drg, K.Sifra_Art'
  65151.         Else If @Podred = 'LOKACIJA'
  65152.         Set @SSQL = @SSQL + 'Order By K.Lokacija'
  65153. print @ssql
  65154.     EXEC (@SSQL)
  65155.     RETURN @@ERROR
  65156.  
  65157.  
  65158.  
  65159. Go
  65160. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_katart_pregled]'))
  65161. drop procedure [dbo].[sp_katart_pregled]
  65162.  
  65163. Go
  65164.  
  65165.  
  65166.  
  65167. CREATE        PROCEDURE sp_Katart_Pregled
  65168.     @Od        Varchar(40),
  65169.     @Do        Varchar(40),
  65170.     @Podred    Varchar(10),
  65171.     @Sifra_Podg    Varchar(12) = NULL,
  65172.     @Sifra_Gr    Varchar(6) = NULL,
  65173.     @Sifra_Tar    Char(3) = NULL,
  65174.     @Kto        Varchar(6) = NULL,
  65175.     @Sifra_Drg    Smallint = NULL,
  65176.     @Lokacija    varchar(10) = NULL,
  65177.     @Sifra_ZBrand    smallint  = NULL,
  65178.     @DatDodOd    smalldatetime = null,
  65179.     @DatDodDo    smalldatetime = null,
  65180.     @DatIzmOd    smalldatetime = null,
  65181.     @DatIzmDo    smalldatetime = null,
  65182.     @SoPodgrupi    char(1) = 'D',
  65183.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N      (@Sifra_Podg)
  65184.     @KolkuMesta    smallint = Null,        -- Se Odnesuva na podgrupite    2, 3, 4, 5, 6    
  65185.     @Sifra_Div    smallint = Null,
  65186.     @Aktiven    char(1) = Null,        -- D/N
  65187.     @SlikaPrik    char(1) = 'N',
  65188.     @Sifra_Oe    smallint = null,
  65189.     @Sifra_KHier     nvarchar(20)= null,
  65190.         @VoPDA      char(1) = null
  65191. AS
  65192.  
  65193.     Declare @SSQL VARCHAR(4000)
  65194.     Set @Podred = Upper(@Podred)
  65195.     If @Podred Is Null
  65196.         Set @Podred = 'SIFRA'
  65197.     SET @SSQL =  'Select K.Sifra_Art, K.Imeart, K.ImeArt2, K.Edmera, '
  65198.     If @SoPodgrupi = 'D'
  65199.            If @KolkuMesta Is Not Null
  65200.         Set @SSQL = @SSQL + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') as Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr, '
  65201.           Else 
  65202.         Set @SSQL = @SSQL + ' K.Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr, '
  65203.     Else 
  65204.         Set @SSQL = @SSQL + ' K.Sifra_Podg,  '' '' as Ime_Podg, '' '' as Sifra_Gr, '' '' as Ime_Gr, '
  65205.     Set @SSQL = @SSQL + ' K.Sifra_Tar, K.Lokacija,
  65206.             K.Kto, KUP.ImeKup, 
  65207.             (Case When K.Nom Is Not Null And K.Nom <> '''' Then K.Nom Else dbo.fn_Nom(K.Sifra_Art) End) Nom, 
  65208.             K.SMatUsl, K.Proc_Marza, 
  65209.                                K.ImaBroevi, K.ImaKomerc, K.SodrziEd,
  65210.             K.DogCena, K.MalCena, K.SpeCena, K.Nabavna, K.GotCena, K.DodadenNa, K.DodadenOd, K.IzmenetNa, K.IzmenetOd,
  65211.             K.Drugo1,K.Drugo2,K.Drugo3,K.Drugo4,K.Drugo5,K.Drugo6,K.Drugo7,
  65212.             K.Rabat_Dali,K.DaliSurov, K.VoPDA, 
  65213.             D1.Ime_1, D2.Ime_2, D3.Ime_3, D4.Ime_4, D5.Ime_5, D6.Ime_6, D7.Ime_7, 
  65214.             K.KolkuDrg, K.Sifra_Drg, B.Ime, B.Sifra_Drg1, ZB.Ime_Drg1, K.Alt_Sifra, K.Alt_Ime, K.Alt_Ime2, 
  65215.             K.Tezina, K.BTezina, K.ProcAlk, K.Aktiven, K.SMin_Sost, K.SMax_Sost, K.SOpt_Sost, 
  65216.             K.Sifra_Amb, A.ImeAmb, A.SodrziArt, A.Sifra_GAmb, GA.ImeAmb ImeGAmb, 
  65217.             T.ProcOsn, K.MKProiz, K.Kto_Anal, K.Fakturna, K.Koef, 
  65218.             K.PCena5, K.PCena6, K.Sifra_ATC, K.SifrA_Div,
  65219.             K.RokTraDen, K.RokKontrDali '    -- 11.12.09 besse K.Nom 
  65220.     if @Sifra_Oe is not null
  65221.         Set @SSQL = @SSQL + ' , Soa.Cena CenaSoa, Soa.Vlez - Soa.Izlez SostSoa '
  65222.     if @SlikaPrik = 'D'
  65223.         Set @SSQL = @SSQL + ' , Slik.SlikaArt '
  65224.  
  65225.     Set @SSQL = @SSQL + ' From Katart K '
  65226.     If @KolkuMesta Is Not Null 
  65227.         Set @SSQL=@SSQL+'Left Outer Join Podgrupi P On P.Sifra_Podg = Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') 
  65228.                           Left Outer Join Grupi G ON G.Sifra_Gr = P.Sifra_Gr '
  65229.     Else
  65230.         Set @SSQL=@SSQL+'     Inner Join Podgrupi P On K.Sifra_Podg=P.Sifra_Podg 
  65231.                     Inner Join Grupi G On P.Sifra_Gr=G.Sifra_Gr '
  65232.     Set @SSQL = @SSQL + ' Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar 
  65233.         Left Outer Join Drugo1 D1 On K.Drugo1=D1.Sifra_1
  65234.         Left Outer Join Drugo2 D2 On K.Drugo2=D2.Sifra_2
  65235.         Left Outer Join Drugo3 D3 On K.Drugo3=D3.Sifra_3
  65236.         Left Outer Join Drugo4 D4 On K.Drugo4=D4.Sifra_4
  65237.         Left Outer Join Drugo5 D5 On K.Drugo5=D5.Sifra_5
  65238.         Left Outer Join Drugo6 D6 On K.Drugo6=D6.Sifra_6
  65239.         Left Outer Join Drugo7 D7 On K.Drugo7=D7.Sifra_7
  65240.         Left Outer Join Komint KUP On K.Kto=KUP.Sifra_Kup 
  65241.         Left Outer JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg 
  65242.         Left Outer Join DrgPodel1 ZB On ZB.Sifra_Drg1=B.Sifra_Drg1 
  65243.         Left Outer Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  65244.         Left Outer Join KatAmb GA On GA.Sifra_Amb=A.Sifra_GAmb '
  65245.  
  65246.     if @Sifra_Oe is not null
  65247.         set @SSQL = @SSQL + ' Left Outer Join Soart Soa on Soa.Sifra_oe = ' + cast (@Sifra_Oe as varchar (5)) +
  65248.                     ' and Soa.Sifra_Art = K.Sifra_Art '
  65249.  
  65250.     if @SlikaPrik = 'D'
  65251.         Set @SSQL = @SSQL + ' left outer Join KatSliki Slik on K.SifrA_Art=Slik.Sifra_Art '
  65252.  
  65253.     Set @SSQL=@SSQL+' Where 1=1 '
  65254.     If @Podred = 'SIFRA' Or @Podred = 'GRUPA' Or @Podred = 'PODGRUPA' Or @Podred = 'BRAND' Or @Podred = 'ASIFRA'
  65255.         Begin
  65256.             If @Od Is Not Null
  65257.                 Set @SSQL = @SSQL + 'And K.Sifra_Art>=''' + Cast(@Od As Varchar(20)) + ''' '
  65258.             If @Do Is Not Null
  65259.                 Set @SSQL = @SSQL + 'And K.Sifra_Art<=''' + Cast(@Do As Varchar(20)) + ''' '
  65260.         End
  65261.     Else If @Podred = 'IME'
  65262.         Begin
  65263.             If @Od Is Not Null
  65264.                 Set @SSQL = @SSQL + 'And K.ImeArt>=''' + Cast(@Od As Varchar(40)) + ''' '
  65265.             If @Do Is Not Null
  65266.                 Set @SSQL = @SSQL + 'And K.ImeArt<=''' + Cast(@Do As Varchar(40)) + ''' '
  65267.         End
  65268.        If @Sifra_Podg Is Not Null
  65269.         If @PocnuvaSo ='D'
  65270.             Set @SSQL=@SSQL+'AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  65271.         Else
  65272.                   Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  65273. --    If @Sifra_Podg Is Not Null
  65274. --        Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + Cast(@Sifra_Podg As Varchar(12)) + ''' '
  65275.     If @Sifra_Gr Is Not Null
  65276.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=''' + Cast(@Sifra_Gr As Varchar(6)) + ''' '
  65277.     If @Sifra_Tar Is Not Null
  65278.         Set @SSQL = @SSQL + 'And K.Sifra_Tar=''' + Cast(@Sifra_Tar As Varchar(6)) + ''' '
  65279.     If @Kto Is Not Null
  65280.         Set @SSQL = @SSQL + 'And K.Kto=''' + Cast(@Kto As Varchar(6)) + ''' '
  65281.     If @Lokacija Is Not Null
  65282.         Set @SSQL = @SSQL + 'And K.Lokacija = ''' + @Lokacija + ''' '
  65283.     If @Sifra_Drg Is Not Null
  65284.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=''' + Cast(@Sifra_Drg As Varchar(6)) + ''' '
  65285.     If @Sifra_ZBrand Is Not Null
  65286.         Set @SSQL=@SSQL+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  65287.     If @DatDodOd Is Not Null
  65288.         Set @SSQL = @SSQL + 'And K.DodadenNa>=''' + Cast(@DatDodOd As Varchar(35)) + ''' '
  65289.     If @DatDodDo Is Not Null
  65290.         Set @SSQL = @SSQL + 'And K.DodadenNa<=''' + Cast(@DatDodDo As Varchar(35)) + ''' '        
  65291.     If @DatIzmOd Is Not Null
  65292.         Set @SSQL = @SSQL + 'And K.IzmenetNa>=''' + Cast(@DatIzmOd As Varchar(35)) + ''' '
  65293.     If @DatIzmDo Is Not Null
  65294.         Set @SSQL = @SSQL + 'And K.IzmenetNa<=''' + Cast(@DatIzmDo As Varchar(35)) + ''' '
  65295.     If @Sifra_Div Is Not Null
  65296.         Set @SSQL = @SSQL + 'And K.Sifra_Div=''' + Cast(@Sifra_Div As Varchar(6)) + ''' '
  65297.     --dod 28.07.09
  65298.     If  @Sifra_KHier is not null
  65299.         Set @SSQL = @SSQL + ' And K.Sifra_KHier = '''+ Cast(@Sifra_KHier As Varchar(20)) + ''' '
  65300.     
  65301.         If @Aktiven = 'N'
  65302.         Set @SSQL = @SSQL + ' And K.Aktiven = ''N'' '
  65303.     Else If @Aktiven = 'D'
  65304.         Set @SSQL = @SSQL + ' And (K.Aktiven <> ''N'' Or K.Aktiven Is Null) '
  65305.     If @VoPDA Is Not Null and @VoPDA <> ''
  65306.         Set @SSQL = @SSQL + ' And K.VoPDA = ''' + @VoPDA + ''' '
  65307.         If @Podred = 'SIFRA'
  65308.         Set @SSQL = @SSQL + 'Order By K.Sifra_Art '
  65309.     Else If @Podred = 'IME'
  65310.         Set @SSQL = @SSQL + 'Order By K.ImeArt, K.Sifra_Art'
  65311.     Else If @Podred = 'PODGRUPA'
  65312.         Set @SSQL = @SSQL + 'Order By K.Sifra_Podg'
  65313.     Else If @Podred = 'GRUPA'
  65314.         Set @SSQL = @SSQL + 'Order By P.Sifra_Gr, K.Sifra_Art'
  65315.     Else If @Podred = 'BRAND'
  65316.         Set @SSQL = @SSQL + 'Order By K.Sifra_Drg, K.Sifra_Art'
  65317.         Else If @Podred = 'LOKACIJA'
  65318.         Set @SSQL = @SSQL + 'Order By K.Lokacija'
  65319.  
  65320.     EXEC (@SSQL)
  65321.  
  65322.     RETURN @@ERROR
  65323.  
  65324.  
  65325.  
  65326.  
  65327.  
  65328. Go
  65329. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_katart_pregled_1]'))
  65330. drop procedure [dbo].[sp_katart_pregled_1]
  65331.  
  65332. Go
  65333. CREATE PROCEDURE sp_Katart_Pregled_1
  65334.     @Sifra_Art_Od    Varchar(20),
  65335.     @Sifra_Art_Do    Varchar(20),
  65336.     @Kto        Char(6),
  65337.     @Sifra_Gr    Char(3),
  65338.     @Sifra_Podg    Char(6),
  65339.     @Sifra_Drg    smallint,
  65340.     @Sifra_Tar    Char(3),
  65341.     @Sifra_OE    smallint = NULL,
  65342.     @Koi_Artikli    char(1) = Null
  65343.  AS
  65344.     Declare @SSQL as Varchar(4000)     
  65345.     Set @SSQL= ' Select S.Sifra_Art, K.Imeart, K.Edmera, K.Sifra_Podg,
  65346.             P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr, K.Sifra_Tar, K.Lokacija,
  65347.             K.Kto, KUP.ImeKup, K.Nom, 
  65348.             K.SMatUsl, K.Proc_Marza, A.Drugo2 Sifra_Drg, B.Ime_2 Ime_Drg,
  65349.             S.Cena, S.DanCena, K.DogCena, K.MalCena, K.SpeCena, K.GotCena, S.Posn
  65350.         From Soart S 
  65351.         Inner Join Katart K On K.Sifra_art = S.Sifra_art
  65352.         Left Outer Join Abarkod A On K.Sifra_art = A.Sifra_Art
  65353.         Inner Join Podgrupi P On K.Sifra_Podg=P.Sifra_Podg 
  65354.         Inner Join Grupi G On P.Sifra_Gr=G.Sifra_Gr
  65355.         Left Outer Join Komint KUP On K.Kto=KUP.Sifra_Kup
  65356.         Left Outer Join Drugo2 B On A.Drugo2=B.Sifra_2
  65357.         Where 1=1 '
  65358.     If @Sifra_OE Is Not Null 
  65359.         Set @SSQL = @SSQL + ' And S.Sifra_OE = ' + Cast(@Sifra_OE as varchar(5)) + ' '
  65360.     If @Sifra_Art_Od Is Not Null 
  65361.         Set @SSQL = @SSQL + ' And K.Sifra_art >= ''' + @Sifra_art_Od + ''' '
  65362.     If @Sifra_Art_Do Is Not Null 
  65363.         Set @SSQL = @SSQL + ' And K.Sifra_art <= ''' + @Sifra_art_Do + ''' '
  65364.     If @Kto Is Not Null 
  65365.         Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '
  65366.     If @Sifra_Gr Is Not Null 
  65367.         Set @SSQL = @SSQL + ' And G.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  65368.     If @Sifra_Podg Is Not Null 
  65369.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  65370.     If @Sifra_Drg Is Not Null 
  65371.         Set @SSQL = @SSQL + ' And A.Drugo2 = ''' + cast(@Sifra_Drg as varchar(10)) + ''' '
  65372.     If @Sifra_Tar Is Not Null 
  65373.         Set @SSQL = @SSQL + ' And K.Sifra_Tar >= ''' + @Sifra_tar + ''' '    
  65374.     If @Koi_Artikli='S'
  65375.         Set @SSQL=@SSQL+'AND (S.Vlez-S.Izlez<>0) '
  65376.     Else If @Koi_Artikli='P'
  65377.         Set @SSQL=@SSQL+'AND (S.Vlez-S.Izlez>0) '
  65378.     Else If @Koi_Artikli='N'
  65379.         Set @SSQL=@SSQL+'AND (S.Vlez-S.Izlez<0) '
  65380. Exec (@SSQL)
  65381.  
  65382. Go
  65383. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_fakt]'))
  65384. drop procedure [dbo].[sp_kniga_fakt]
  65385.  
  65386. Go
  65387.  
  65388. CREATE               PROCEDURE [dbo].[sp_Kniga_Fakt]
  65389.    @Sifra_Za Char(1),
  65390.    @Datum_Nal_Od Smalldatetime,
  65391.    @Datum_Nal_Do Smalldatetime,
  65392.    @Datum_Dok_Od Smalldatetime,
  65393.    @Datum_Dok_Do Smalldatetime,
  65394.    @Sifra_Nal Smallint,
  65395.    @Sifra_OE Smallint,
  65396.    @Kto Char(6),
  65397.    @Broj_Nal int = Null,
  65398.    @Dok_Od_Dokr char(1) = 'D',    -- dali vo knigata na fakturi da vleguvaat i dokumentite od dokr koi ne se proknizani (gi nema vo findok), a koi treba da vlezat vo kniga na fakturi
  65399.    @Dok_Od_KasStav char(1) = 'N', -- dali vo knigata na fakturi da vleguvaat i kasovite dokumentite so konto 160% (za big bull)
  65400.    @DaliPrenIzlez char(1) = 'N'
  65401. AS
  65402.     Declare @SSQL Varchar(8000)
  65403.     Set @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, '''' Ispratnica,
  65404.             A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok,
  65405.             A.Dolzi, A.Pobaruva, A.Danok1, A.Danok2,
  65406.             A.Sifra_Kup, K.ImeKup, K.Adresa, 
  65407.             S.Stapka1, S.Stapka2, K.Danocen, K.SMesto, K.MatBr, TD.Dev, K.ImeKup2
  65408.              FROM AnFinDok A
  65409.              INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  65410.              Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  65411.              Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  65412.              Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  65413.              WHERE TD.TipDok=1 And TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=' + @Sifra_Za + ' And A.Sifra_Nal <> 999 ' + 
  65414.              ' And (TN.VoDDV_Knig IS NULL OR TN.VoDDV_Knig<>''N'') '  
  65415.     --         WHERE TD.TipDok=1 And TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=' + @Sifra_Za + ' ' 
  65416.     If @Broj_Nal Is NOT Null
  65417.         Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65418.     If @Sifra_Nal Is NOT Null
  65419.         Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65420.     If @Sifra_OE Is NOT Null
  65421.         Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65422.     If @Kto Is NOT Null
  65423.         Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  65424.     If @Datum_Dok_Od Is NOT Null
  65425.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65426.     If @Datum_Dok_Do Is NOT Null
  65427.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65428.     If @Datum_Nal_Od Is NOT Null
  65429.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  65430.     If @Datum_Nal_Do Is NOT Null
  65431.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  65432.     Declare @DK_VoKngFkt char(1)
  65433.     SELECT @DK_VoKngFkt = VoDDV_Knig FROM TipDok WHERE Sifra_Dok =132
  65434.     IF @DK_VoKngFkt='D'   AND @Sifra_Za = 2
  65435.     Begin
  65436.         Set @SSQL = @SSQL + 'UNION SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br BrojDok, D.Ispratnica,
  65437.             D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, D.Datum_Dok, 0 AS Dolzi, D.Toc200 Pobaruva, 
  65438.             D.Danok1, D.Danok2, D.Sifra_Kup, K.ImeKup, K.Adresa,  
  65439.             S.Stapka1, S.Stapka2, K.Danocen, K.SMesto, K.MatBr, ''D'' Dev, K.ImeKup2
  65440.             FROM  Dokr D
  65441.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  65442.             Left Outer Join DDVStapki S On D.Datum_Dok >= S.Datum_Od And D.Datum_Dok <= S.Datum_Do
  65443.             INNER JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  65444.             WHERE D.Sifra_Dok=132 '  
  65445.         If @Broj_Nal Is NOT Null
  65446.             Set @SSQL = @SSQL + 'AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65447.         If @Sifra_Nal Is NOT Null
  65448.             Set @SSQL = @SSQL + 'AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65449.         If @Sifra_OE Is NOT Null
  65450.             Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65451.         If @Kto Is NOT Null
  65452.             Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  65453.         If @Datum_Dok_Od Is NOT Null
  65454.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65455.         If @Datum_Dok_Do Is NOT Null
  65456.             SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65457.         If @Datum_Nal_Od Is NOT Null
  65458.             SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  65459.         If @Datum_Nal_Do Is NOT Null
  65460.             SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  65461.     End
  65462.     IF @Dok_Od_Dokr='D'
  65463.     Begin
  65464.         Set @SSQL = @SSQL + 'UNION SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br BrojDok,  D.Ispratnica,
  65465.             D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, D.Datum_Dok, 
  65466.             (Case When D.Sifra_Za = 1 Then D.Toc200 Else 0 End) AS Dolzi, 
  65467.             (Case When D.Sifra_Za = 2 Then D.Toc200 Else 0 End) AS Pobaruva, 
  65468.             D.Danok1, D.Danok2, D.Sifra_Kup, K.ImeKup, K.Adresa, 
  65469.             S.Stapka1, S.Stapka2, K.Danocen, K.SMesto, K.MatBr, TD.Dev, K.ImeKup2
  65470.             FROM  Dokr D
  65471.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  65472.             Left Outer Join DDVStapki S On D.Datum_Dok >= S.Datum_Od And D.Datum_Dok <= S.Datum_Do
  65473.             Left Outer JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  65474.             Left Outer Join AnFindok A On A.Sifra_Oe = D.Sifra_Oe And A.Sifra_Dok = D.Sifra_Dok And A.Broj_Dok=D.Broj_Dok
  65475.             Inner Join TipDok TD On D.Sifra_Dok=TD.Sifra_Dok
  65476.             Inner Join TipNal TN On D.Sifra_Nal = TN.Sifra_Nal
  65477.             WHERE D.Sifra_Dok<>132  
  65478.             And D.Sifra_Za In (1,2) And D.Sifra_Za=' + @Sifra_Za + ' 
  65479.             And TD.VoDDV_Knig =' + '''D''' + ' 
  65480.             And (TD.AnalKupDob = ''N'' Or TD.AnalKupDob = ''D'' And D.Broj_Nal Is Null)
  65481.             And A.Sifra_oe Is Null '
  65482.             --And Cast(D.Sifra_Oe as varchar(6)) + ''&&&'' + Cast(D.Sifra_Dok as varchar(6)) + ''&&&'' + Cast(D.Broj_Dok as varchar(6))
  65483.             --Not In (Select Cast(A.Sifra_Oe as varchar(6)) + ''&&&'' + Cast(A.Sifra_Dok as varchar(6)) + ''&&&'' + Cast(A.Broj_Dok as varchar(6)) From AnFinDok A) '
  65484.         If @Broj_Nal Is NOT Null
  65485.             Set @SSQL = @SSQL + 'AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65486.         If @Sifra_Nal Is NOT Null
  65487.             Set @SSQL = @SSQL + 'AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65488.         If @Sifra_OE Is NOT Null
  65489.             Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65490.         If @Kto Is NOT Null
  65491.             Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  65492.         If @Datum_Dok_Od Is NOT Null
  65493.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65494.         If @Datum_Dok_Do Is NOT Null
  65495.             SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65496.         If @Datum_Nal_Od Is NOT Null
  65497.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')
  65498.                           Or (N.Datum_Nal Is Null And D.Datum_Dok >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')) '
  65499.         If @Datum_Nal_Do Is NOT Null
  65500.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')
  65501.                           Or (N.Datum_Nal Is Null And D.Datum_Dok <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')) '
  65502.     End
  65503.     IF @Dok_Od_KasStav='D' And @Sifra_Za = '2'
  65504.     Begin
  65505.         Set @SSQL = @SSQL + 'UNION SELECT Null Sifra_OE, Null Sifra_Dok, K.Broj_Dok, Null BrojDok, '''' Ispratnica,
  65506.             K.Sifra_Nal, K.Broj_Nal, N.Datum_Nal, K.Dod_Datum Datum_Dok, 
  65507.             Null AS Dolzi, (K.Pobaruva/(S.Stapka1/100)) Pobaruva, 
  65508.             K.Pobaruva as Danok1, Null as Danok2, 
  65509.             K.Sifra_Kup, Kup.ImeKup, Kup.Adresa,  
  65510.             S.Stapka1, S.Stapka2, Kup.Danocen, Kup.SMesto, Kup.MatBr, (Case When K.KojaVal Is Null Then ''N'' Else ''D'' End) Dev, Kup.ImeKup2
  65511.             FROM  KasStav K
  65512.             LEFT OUTER JOIN Komint Kup ON Kup.Sifra_Kup=K.Sifra_Kup
  65513.             Left Outer Join DDVStapki S On K.Dod_Datum >= S.Datum_Od And K.Dod_Datum <= S.Datum_Do
  65514.             Left Outer JOIN Nalozi N ON K.Sifra_Nal = N.Sifra_Nal AND K.Broj_Nal = N.Broj_Nal
  65515.             Inner Join TipNal TN On K.Sifra_Nal = TN.Sifra_Nal
  65516.             WHERE K.Kto_Anal Like ''160%'' '
  65517.         If @Broj_Nal Is NOT Null
  65518.             Set @SSQL = @SSQL + 'AND K.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65519.         If @Sifra_Nal Is NOT Null
  65520.             Set @SSQL = @SSQL + 'AND K.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65521. --        If @Sifra_OE Is NOT Null
  65522. --            Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65523.         If @Kto Is NOT Null
  65524.             Set @SSQL = @SSQL + 'AND K.Kto=' + @Kto + ' ' 
  65525.         If @Datum_Dok_Od Is NOT Null
  65526.             SET @SSQL = @SSQL + 'AND K.Dod_Datum>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65527.         If @Datum_Dok_Do Is NOT Null
  65528.             SET @SSQL = @SSQL + 'AND K.Dod_Datum<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65529.         If @Datum_Nal_Od Is NOT Null
  65530.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')
  65531.                           Or (N.Datum_Nal Is Null And K.Dod_Datum >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')) '
  65532.         If @Datum_Nal_Do Is NOT Null
  65533.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')
  65534.                           Or (N.Datum_Nal Is Null And K.Dod_Datum <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')) '
  65535.     End
  65536.     If @DaliPrenIzlez = 'D'
  65537.     Begin
  65538.         Set @SSQL = @SSQL + 'UNION SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br BrojDok,  D.Ispratnica,
  65539.             D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, D.Datum_Dok, 
  65540.             D.Toc200 As Dolzi, 
  65541.             Null As Pobaruva, 
  65542.             D.Danok1, D.Danok2, D.Sifra_Kup, K.ImeKup, K.Adresa, 
  65543.             S.Stapka1, S.Stapka2, K.Danocen, K.SMesto, K.MatBr, TD.Dev, K.ImeKup2
  65544.             FROM  Dokr D
  65545.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  65546.             Left Outer Join DDVStapki S On D.Datum_Dok >= S.Datum_Od And D.Datum_Dok <= S.Datum_Do
  65547.             Left Outer JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  65548.             Left Outer Join TipDok TD On D.Sifra_Dok=TD.Sifra_Dok
  65549.             Left Outer Join TipNal TN On D.Sifra_Nal = TN.Sifra_Nal
  65550.             WHERE D.Sifra_Dok<>132  
  65551.             And D.Sifra_Za = 3  
  65552.             And D.VlIzl = ''I'' '
  65553.         If @Broj_Nal Is NOT Null
  65554.             Set @SSQL = @SSQL + 'AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65555.         If @Sifra_Nal Is NOT Null
  65556.             Set @SSQL = @SSQL + 'AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65557.         If @Sifra_OE Is NOT Null
  65558.             Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65559.         If @Kto Is NOT Null
  65560.             Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  65561.         If @Datum_Dok_Od Is NOT Null
  65562.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65563.         If @Datum_Dok_Do Is NOT Null
  65564.             SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65565.         If @Datum_Nal_Od Is NOT Null
  65566.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')
  65567.                           Or (N.Datum_Nal Is Null And D.Datum_Dok >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')) '
  65568.         If @Datum_Nal_Do Is NOT Null
  65569.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')
  65570.                           Or (N.Datum_Nal Is Null And D.Datum_Dok <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')) '
  65571.     End  --            And TD.VoDDV_Knig =' + '''D''' + ' 
  65572. print @ssql
  65573.    EXEC(@SSQL)
  65574.  
  65575. Go
  65576. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_fakt_ks]'))
  65577. drop procedure [dbo].[sp_kniga_fakt_ks]
  65578.  
  65579. Go
  65580.  
  65581.  
  65582.  
  65583.  
  65584.  
  65585.  
  65586. CREATE                  PROCEDURE sp_Kniga_Fakt_KS
  65587.    @Sifra_Za Char(1),
  65588.    @Datum_Nal_Od Smalldatetime,
  65589.    @Datum_Nal_Do Smalldatetime,
  65590.    @Datum_Dok_Od Smalldatetime,
  65591.    @Datum_Dok_Do Smalldatetime,
  65592.    @Sifra_Nal Smallint,
  65593.    @Sifra_OE Smallint,
  65594.    @Kto Char(6),
  65595.    @Broj_Nal int = Null,
  65596.    @Dok_Od_Dokr char(1) = 'D',    -- dali vo knigata na fakturi da vleguvaat i dokumentite od dokr koi ne se proknizani (gi nema vo findok), a koi treba da vlezat vo kniga na fakturi
  65597.    @Dok_Od_KasStav char(1) = 'N', -- dali vo knigata na fakturi da vleguvaat i kasovite dokumentite so konto 160% (za big bull)
  65598.    @DaliPrenIzlez char(1) = 'N',
  65599.    @TipNalTros varchar(200) = Null    -- Nalozite koi treba da se isklucat od izvesstajot 
  65600. AS
  65601.  
  65602. -- 31.03.2010 gk - deviznite kalkulacii tip dok 132 treba da e postaven da ne vleguva vo kniga za DDV
  65603.  
  65604.     Declare @SSQL Varchar(8000)
  65605.     Set @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, '''' Ispratnica,
  65606.             A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok,
  65607.             A.Dolzi, A.Pobaruva, A.Danok1, A.Danok2,
  65608.             A.Sifra_Kup, K.ImeKup, K.Adresa, 
  65609.             S.Stapka1, S.Stapka2, K.Danocen, 
  65610.             K.SMesto, K.MatBr, TD.Dev
  65611.              FROM AnFinDok A
  65612.              INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  65613.              Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  65614.              Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  65615.              Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  65616.              WHERE TD.TipDok=1 And TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=' + @Sifra_Za + ' And A.Sifra_Nal <> 999 ' + 
  65617.              ' And (TN.VoDDV_Knig IS NULL OR TN.VoDDV_Knig<>''N'') 
  65618.                And A.Sifra_Dok <> 132 ' --31.03.2010   A.Kto <> ''2210'' '  -- Spet 28, 09
  65619.     If @TipNalTros Is Not Null
  65620.         Set @SSQL = @SSQL + ' And A.Sifra_Nal Not In (' + @TipNalTros + ') '    
  65621.  
  65622. -- zA Libri i Shpenzimeve    td.DaliMATER <> ''D''
  65623.     
  65624. --         WHERE TD.TipDok=1 And TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=' + @Sifra_Za + ' ' 
  65625.     If @Broj_Nal Is NOT Null
  65626.         Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65627.     If @Sifra_Nal Is NOT Null
  65628.         Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65629.     If @Sifra_OE Is NOT Null
  65630.         Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65631.     If @Kto Is NOT Null
  65632.         Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  65633.     If @Datum_Dok_Od Is NOT Null
  65634.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65635.     If @Datum_Dok_Do Is NOT Null
  65636.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65637.     If @Datum_Nal_Od Is NOT Null
  65638.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  65639.     If @Datum_Nal_Do Is NOT Null
  65640.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  65641.     Declare @DK_VoKngFkt char(1)
  65642.     SELECT @DK_VoKngFkt = VoDDV_Knig FROM TipDok WHERE Sifra_Dok =132
  65643.  
  65644.     IF @Sifra_Za = 2        --Jeta        and @DK_VoKngFkt='D' ova moze da se aktivira GK 30.07.2010
  65645.     begin
  65646.         Set @SSQL = @SSQL + 'UNION SELECT D.Sifra_OE, 132, D.Broj_Kalk Broj_Dok, D.Opis BrojDok,
  65647.                        ECD + ''  '' + Dok.Identif_Br Ispratnica,
  65648.             D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, D.Datum_Dok, 0 AS Dolzi, Dok.Toc200 Pobaruva, 
  65649.             Danok1Opc Danok1 , 0 Danok2, Dok.Sifra_Kup, K.ImeKup, K.Adresa,  
  65650.             S.Stapka1, S.Stapka2, K.Danocen, 
  65651.             K.SMesto, K.MatBr, ''D'' Dev
  65652.             FROM  DevKalk D
  65653.             Inner Join Dokr Dok On Dok.Sifra_Oe=D.Sifra_Oe And Dok.Sifra_Dok=D.Sifra_Dok And Dok.Broj_Dok=D.Broj_Dok
  65654.             LEFT OUTER JOIN Komint K ON Dok.Sifra_Kup=K.Sifra_Kup
  65655.             Left Outer Join DDVStapki S On D.Datum_Dok >= S.Datum_Od And D.Datum_Dok <= S.Datum_Do
  65656.             left outer JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  65657.             WHERE 1 = 1 '  
  65658.         If @Sifra_OE Is NOT Null
  65659.             Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65660.         If @Kto Is NOT Null
  65661.             Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  65662.         If @Datum_Dok_Od Is NOT Null
  65663.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65664.         If @Datum_Dok_Do Is NOT Null
  65665.             SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65666.     end
  65667.  
  65668. /*  Ova trgnato 30.07.2010 GK zatoa sto deviznite kalkulacii se zemaat od DevKalk pogore. Vaka se dupliraase
  65669.     IF @DK_VoKngFkt='D'   AND @Sifra_Za = 2
  65670.     Begin
  65671.         Set @SSQL = @SSQL + 'UNION SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br BrojDok, D.Ispratnica,
  65672.             D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, D.Datum_Dok, 0 AS Dolzi, D.Toc200 Pobaruva, 
  65673.             D.Danok1, D.Danok2, D.Sifra_Kup, K.ImeKup, K.Adresa,  
  65674.             S.Stapka1, S.Stapka2, K.Danocen, 
  65675.             K.SMesto, K.MatBr, ''D'' Dev
  65676.             FROM  Dokr D
  65677.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  65678.             Left Outer Join DDVStapki S On D.Datum_Dok >= S.Datum_Od And D.Datum_Dok <= S.Datum_Do
  65679.             INNER JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  65680.             WHERE D.Sifra_Dok=132 '  
  65681.         If @Broj_Nal Is NOT Null
  65682.             Set @SSQL = @SSQL + 'AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65683.         If @Sifra_Nal Is NOT Null
  65684.             Set @SSQL = @SSQL + 'AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65685.         If @Sifra_OE Is NOT Null
  65686.             Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65687.         If @Kto Is NOT Null
  65688.             Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  65689.         If @Datum_Dok_Od Is NOT Null
  65690.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65691.         If @Datum_Dok_Do Is NOT Null
  65692.             SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65693.         If @Datum_Nal_Od Is NOT Null
  65694.             SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  65695.         If @Datum_Nal_Do Is NOT Null
  65696.             SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  65697.     End
  65698. */
  65699.     IF @Dok_Od_Dokr='D'
  65700.     Begin
  65701.         Set @SSQL = @SSQL + 'UNION SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br BrojDok,  D.Ispratnica,
  65702.             D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, D.Datum_Dok, 
  65703.             (Case When D.Sifra_Za = 1 Then D.Toc200 Else 0 End) AS Dolzi, 
  65704.             (Case When D.Sifra_Za = 2 Then D.Toc200 Else 0 End) AS Pobaruva, 
  65705.             D.Danok1, D.Danok2, D.Sifra_Kup, K.ImeKup, K.Adresa, 
  65706.             S.Stapka1, S.Stapka2, K.Danocen, 
  65707.             K.SMesto, K.MatBr, TD.Dev
  65708.             FROM  Dokr D
  65709.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  65710.             Left Outer Join DDVStapki S On D.Datum_Dok >= S.Datum_Od And D.Datum_Dok <= S.Datum_Do
  65711.             Left Outer JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  65712.             Inner Join TipDok TD On D.Sifra_Dok=TD.Sifra_Dok
  65713.             Inner Join TipNal TN On D.Sifra_Nal = TN.Sifra_Nal
  65714.             WHERE D.Sifra_Dok<>132  
  65715.             And D.Sifra_Za In (1,2) And D.Sifra_Za=' + @Sifra_Za + ' 
  65716.             And TD.VoDDV_Knig =' + '''D''' + ' 
  65717.             And (TD.AnalKupDob = ''N'' Or TD.AnalKupDob = ''D'' And D.Broj_Nal Is Null)
  65718.             And Cast(D.Sifra_Oe as varchar(6)) + ''&&&'' + Cast(D.Sifra_Dok as varchar(6)) + ''&&&'' + Cast(D.Broj_Dok as varchar(6))
  65719.             Not In (Select Cast(A.Sifra_Oe as varchar(6)) + ''&&&'' + Cast(A.Sifra_Dok as varchar(6)) + ''&&&'' + Cast(A.Broj_Dok as varchar(6)) From AnFinDok A) '
  65720.         If @Broj_Nal Is NOT Null
  65721.             Set @SSQL = @SSQL + 'AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65722.         If @Sifra_Nal Is NOT Null
  65723.             Set @SSQL = @SSQL + 'AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65724.         If @Sifra_OE Is NOT Null
  65725.             Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65726.         If @Kto Is NOT Null
  65727.             Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  65728.         If @Datum_Dok_Od Is NOT Null
  65729.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65730.         If @Datum_Dok_Do Is NOT Null
  65731.             SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65732.         If @Datum_Nal_Od Is NOT Null
  65733.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')
  65734.                           Or (N.Datum_Nal Is Null And D.Datum_Dok >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')) '
  65735.         If @Datum_Nal_Do Is NOT Null
  65736.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')
  65737.                           Or (N.Datum_Nal Is Null And D.Datum_Dok <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')) '
  65738.     End
  65739.     IF @Dok_Od_KasStav='D' And @Sifra_Za = '2'
  65740.     Begin
  65741.         Set @SSQL = @SSQL + 'UNION SELECT Null Sifra_OE, Null Sifra_Dok, K.Broj_Dok, Null BrojDok, '''' Ispratnica,
  65742.             K.Sifra_Nal, K.Broj_Nal, N.Datum_Nal, K.Dod_Datum Datum_Dok, 
  65743.             Null AS Dolzi, (K.Pobaruva/(S.Stapka1/100)) Pobaruva, 
  65744.             K.Pobaruva as Danok1, Null as Danok2, 
  65745.             K.Sifra_Kup, Kup.ImeKup, Kup.Adresa,  
  65746.             S.Stapka1, S.Stapka2, Kup.Danocen, 
  65747.             K.SMesto, Kup.MatBr, (Case When K.KojaVal Is Null Then ''N'' Else ''D'' End) Dev
  65748.             FROM  KasStav K
  65749.             LEFT OUTER JOIN Komint Kup ON Kup.Sifra_Kup=K.Sifra_Kup
  65750.             Left Outer Join DDVStapki S On K.Dod_Datum >= S.Datum_Od And K.Dod_Datum <= S.Datum_Do
  65751.             Left Outer JOIN Nalozi N ON K.Sifra_Nal = N.Sifra_Nal AND K.Broj_Nal = N.Broj_Nal
  65752.             Inner Join TipNal TN On K.Sifra_Nal = TN.Sifra_Nal
  65753.             WHERE K.Kto_Anal Like ''160%'' '
  65754.         If @Broj_Nal Is NOT Null
  65755.             Set @SSQL = @SSQL + 'AND K.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65756.         If @Sifra_Nal Is NOT Null
  65757.             Set @SSQL = @SSQL + 'AND K.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65758. --        If @Sifra_OE Is NOT Null
  65759. --            Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65760.         If @Kto Is NOT Null
  65761.             Set @SSQL = @SSQL + 'AND K.Kto=' + @Kto + ' ' 
  65762.         If @Datum_Dok_Od Is NOT Null
  65763.             SET @SSQL = @SSQL + 'AND K.Dod_Datum>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65764.         If @Datum_Dok_Do Is NOT Null
  65765.             SET @SSQL = @SSQL + 'AND K.Dod_Datum<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65766.         If @Datum_Nal_Od Is NOT Null
  65767.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')
  65768.                           Or (N.Datum_Nal Is Null And K.Dod_Datum >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')) '
  65769.         If @Datum_Nal_Do Is NOT Null
  65770.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')
  65771.                           Or (N.Datum_Nal Is Null And K.Dod_Datum <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')) '
  65772.     End
  65773.     If @DaliPrenIzlez = 'D'
  65774.     Begin
  65775.         Set @SSQL = @SSQL + 'UNION SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br BrojDok,  D.Ispratnica,
  65776.             D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, D.Datum_Dok, 
  65777.             D.Toc200 As Dolzi, 
  65778.             Null As Pobaruva, 
  65779.             D.Danok1, D.Danok2, D.Sifra_Kup, K.ImeKup, K.Adresa, 
  65780.             S.Stapka1, S.Stapka2, K.Danocen, 
  65781.             K.SMesto, K.MatBr, TD.Dev
  65782.             FROM  Dokr D
  65783.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  65784.             Left Outer Join DDVStapki S On D.Datum_Dok >= S.Datum_Od And D.Datum_Dok <= S.Datum_Do
  65785.             Left Outer JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  65786.             Left Outer Join TipDok TD On D.Sifra_Dok=TD.Sifra_Dok
  65787.             Left Outer Join TipNal TN On D.Sifra_Nal = TN.Sifra_Nal
  65788.             WHERE D.Sifra_Dok<>132  
  65789.             And D.Sifra_Za = 3  
  65790.             And D.VlIzl = ''I'' '
  65791.         If @Broj_Nal Is NOT Null
  65792.             Set @SSQL = @SSQL + 'AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65793.         If @Sifra_Nal Is NOT Null
  65794.             Set @SSQL = @SSQL + 'AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65795.         If @Sifra_OE Is NOT Null
  65796.             Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65797.         If @Kto Is NOT Null
  65798.             Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  65799.         If @Datum_Dok_Od Is NOT Null
  65800.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65801.         If @Datum_Dok_Do Is NOT Null
  65802.             SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65803.         If @Datum_Nal_Od Is NOT Null
  65804.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')
  65805.                           Or (N.Datum_Nal Is Null And D.Datum_Dok >= ''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''')) '
  65806.         If @Datum_Nal_Do Is NOT Null
  65807.             SET @SSQL = @SSQL + ' And ((N.Datum_Nal Is Not Null And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')
  65808.                           Or (N.Datum_Nal Is Null And D.Datum_Dok <= ''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''')) '
  65809.     End  --            And TD.VoDDV_Knig =' + '''D''' + ' 
  65810. print @ssql
  65811.    EXEC(@SSQL)
  65812.  
  65813. Go
  65814. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_fakt_ks_tr]'))
  65815. drop procedure [dbo].[sp_kniga_fakt_ks_tr]
  65816.  
  65817. Go
  65818.  
  65819.  
  65820. CREATE    PROCEDURE sp_Kniga_Fakt_KS_Tr
  65821.    @Sifra_Za Char(1),
  65822.    @Datum_Nal_Od Smalldatetime,
  65823.    @Datum_Nal_Do Smalldatetime,
  65824.    @Datum_Dok_Od Smalldatetime,
  65825.    @Datum_Dok_Do Smalldatetime,
  65826.    @Sifra_Nal Smallint,
  65827.    @Sifra_OE Smallint,
  65828.    @Kto Char(6),
  65829.    @Broj_Nal int = Null,
  65830. --   @Dok_Od_Dokr char(1) = 'D',    -- dali vo knigata na fakturi da vleguvaat i dokumentite od dokr koi ne se proknizani (gi nema vo findok), a koi treba da vlezat vo kniga na fakturi
  65831. --   @Dok_Od_KasStav char(1) = 'N', -- dali vo knigata na fakturi da vleguvaat i kasovite dokumentite so konto 160% (za big bull)
  65832. --   @DaliPrenIzlez char(1) = 'N',
  65833.    @TipNalTros varchar(200) = Null
  65834.  
  65835. AS
  65836.  
  65837.     Declare @SSQL Varchar(8000)
  65838.     Set @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, '''' Ispratnica, A.Opis,
  65839.             A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok,
  65840.             A.Dolzi, A.Pobaruva, A.Danok1, A.Danok2,
  65841.             A.Sifra_Kup, K.ImeKup, K.Adresa, 
  65842.             S.Stapka1, S.Stapka2, K.Danocen, K.SMesto, K.MatBr, TD.Dev
  65843.              FROM AnFinDok A
  65844.              INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  65845.              Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  65846.              Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  65847.              Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  65848.              WHERE A.SIfra_Nal In (' + @TipNalTros + ') and A.Sifra_Za=2 And A.Sifra_Nal <> 999 
  65849.              and PObaruva <> 0 and Danok1 + Danok2 <> 0 '
  65850.     If @Broj_Nal Is NOT Null
  65851.         Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  65852.     If @Sifra_Nal Is NOT Null
  65853.         Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65854.     If @Sifra_OE Is NOT Null
  65855.         Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65856.     If @Kto Is NOT Null
  65857.         Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  65858.     If @Datum_Dok_Od Is NOT Null
  65859.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65860.     If @Datum_Dok_Do Is NOT Null
  65861.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65862.     If @Datum_Nal_Od Is NOT Null
  65863.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  65864.     If @Datum_Nal_Do Is NOT Null
  65865.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  65866. print @SSQL
  65867.    EXEC(@SSQL)
  65868.  
  65869. Go
  65870. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_fakt_naplata]'))
  65871. drop procedure [dbo].[sp_kniga_fakt_naplata]
  65872.  
  65873. Go
  65874.  
  65875. CREATE                    PROCEDURE sp_Kniga_Fakt_Naplata
  65876.     @Sifra_Za Char(1),
  65877.     @KoiFri Char(1),
  65878.     @Datum_Nal_Od Smalldatetime,
  65879.     @Datum_Nal_Do Smalldatetime,
  65880.     @Datum_Dok_Od Smalldatetime,
  65881.     @Datum_Dok_Do Smalldatetime,
  65882.     @Sifra_Nal Smallint,
  65883.     @Sifra_OE Smallint,
  65884.     @Kto Char(6),
  65885.     @Sifra_Pat Varchar(300) = Null,
  65886.     @Sifra_Kup_Od Char(6),
  65887.     @Sifra_Kup_Do Char(6),
  65888.     @TipKup Varchar(11),
  65889.     @Pod1 Smallint,
  65890.     @Pod2 Smallint,
  65891.     @Pod3 Smallint = Null,
  65892.     @Pod4 Smallint = Null,
  65893.     @Pod5 Smallint = Null,
  65894.     @Sifra_Tip Smallint = Null,
  65895.     @KFSifra_Kup_Od Char(1),
  65896.     @KFTipKup Char(1),
  65897.     @KFPod1 Char(1),
  65898.     @KFPod2 Char(1),
  65899.     @KFPod3 Char(1) = Null,
  65900.     @KFPod4 Char(1) = Null,
  65901.     @KFPod5 Char(1) = Null,
  65902.     @KomercKako    char(1) = 'I',             -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  65903.     @KoiGradovi    varchar(200) = Null,
  65904.     @Sifra_Dok    smallint = Null,
  65905.     @Datum_Dosp_Od Smalldatetime = Null,
  65906.     @Datum_Dosp_Do Smalldatetime = Null,
  65907.     @KoiRegioni    varchar(200) = Null,
  65908.     @Sifra_Div    smallint = Null
  65909. AS
  65910.    Declare @SSQL Varchar(4000)
  65911.    Set @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, 
  65912.              A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok,
  65913.              A.Dolzi, A.Pobaruva, A.Plateno_Dolzi, A.Plateno_Pobar,
  65914.              A.Sifra_Kup, K.ImeKup, K.ImeKup2, K.Adresa, K.SMesto, K.Telefon, A.Sifra_Pat, DateAdd(Day, A.Rok, A.Datum_Dok) as Datum_Dosp 
  65915.     FROM AnFinDok A
  65916.     INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  65917.     INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok=1
  65918.     WHERE '
  65919.     If @Sifra_Za=1
  65920.         Set @SSQL = @SSQL + '(A.Sifra_Za=1 AND A.Dolzi<>0) ' 
  65921.     Else If @Sifra_Za=2
  65922.         Set @SSQL = @SSQL + '(A.Sifra_Za=2 AND A.Pobaruva<>0) '
  65923.     If @KFSifra_Kup_Od Is Null
  65924.     Begin
  65925.         If @Sifra_Kup_Od Is NOT Null
  65926.             SET @SSQL = @SSQL + 'AND A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  65927.         If @Sifra_Kup_Do Is NOT Null
  65928.             SET @SSQL = @SSQL + 'AND A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  65929.     End
  65930.     Else If @KFSifra_Kup_Od='D' And @Sifra_Kup_Od Is Not Null
  65931.         Set @SSQL = @SSQL + 'And A.Sifra_Kup<>''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  65932.     If @KFTipKup Is Null
  65933.     Begin
  65934.         If @TipKup Is Not Null
  65935.             Set @SSQL = @SSQL + 'And K.TipKup=''' + @TipKup + ''' '
  65936.     End
  65937.     Else If @KFTipKup='D' And @TipKup Is Not Null
  65938.         Set @SSQL = @SSQL + 'And K.TipKup<>''' + @TipKup + ''' '
  65939.     If @KFPod1 Is Null
  65940.     Begin
  65941.         If @Pod1 Is Not Null
  65942.             Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  65943.     End
  65944.     Else If @KFPod1='D' And @Pod1 Is Not Null
  65945.         Set @SSQL = @SSQL + 'And K.KDrugo1<>' + Cast(@Pod1 As Varchar(6)) + ' '
  65946.     If @KFPod2 Is Null
  65947.     Begin
  65948.         If @Pod2 Is Not Null
  65949.             Set @SSQL = @SSQL + 'And K.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  65950.     End
  65951.     Else If @KFPod2='D' And @Pod2 Is Not Null
  65952.         Set @SSQL = @SSQL + 'And K.KDrugo2<>' + Cast(@Pod2 As Varchar(6)) + ' '
  65953.     If @KFPod3 Is Null
  65954.     Begin
  65955.         If @Pod3 Is Not Null
  65956.             Set @SSQL = @SSQL + 'And K.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  65957.     End
  65958.     Else If @KFPod3='D' And @Pod3 Is Not Null
  65959.         Set @SSQL = @SSQL + 'And K.KDrugo3<>' + Cast(@Pod3 As Varchar(6)) + ' '
  65960.     If @KFPod4 Is Null
  65961.     Begin
  65962.         If @Pod4 Is Not Null
  65963.             Set @SSQL = @SSQL + 'And K.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  65964.     End
  65965.     Else If @KFPod4='D' And @Pod4 Is Not Null
  65966.         Set @SSQL = @SSQL + 'And K.KDrugo4<>' + Cast(@Pod4 As Varchar(6)) + ' '
  65967.     If @KFPod5 Is Null
  65968.     Begin
  65969.         If @Pod5 Is Not Null
  65970.             Set @SSQL = @SSQL + 'And K.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  65971.     End
  65972.     Else If @KFPod5='D' And @Pod5 Is Not Null
  65973.         Set @SSQL = @SSQL + 'And K.KDrugo5<>' + Cast(@Pod5 As Varchar(6)) + ' '
  65974.     If @Sifra_Tip Is Not Null
  65975.         SET @SSQL = @SSQL +' AND K.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  65976.     If @Datum_Dok_Od Is NOT Null
  65977.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  65978.     If @Datum_Dok_Do Is NOT Null
  65979.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  65980.     If @Datum_Nal_Od Is NOT Null
  65981.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  65982.     If @Datum_Nal_Do Is NOT Null
  65983.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  65984.     If @Datum_Dosp_Od Is NOT Null
  65985.         SET @SSQL = @SSQL + 'AND DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  65986.     If @Datum_Dosp_Do Is NOT Null
  65987.         SET @SSQL = @SSQL + 'AND DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As Varchar(35)) + ''' '
  65988.     If @Sifra_Nal Is Not Null
  65989.         Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  65990.     If @Sifra_Dok Is Not Null
  65991.         Set @SSQL = @SSQL + 'AND A.Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(10)) + ' '
  65992.     If @Sifra_OE Is Not Null
  65993.         Set @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  65994.     If @Sifra_Div Is Not Null
  65995.         Set @SSQL = @SSQL + 'AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(10)) + ' '
  65996.     If @Kto Is Not Null
  65997.         Set @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  65998.     If @KoiGradovi Is Not Null
  65999.         Set @SSQL = @SSQL + 'And K.Sifra_Grad In (' + @KoiGradovi + ') '
  66000.     If @KoiRegioni Is Not Null
  66001.         Set @SSQL = @SSQL + 'And K.Sifra_Reg In (' + @KoiRegioni + ') '
  66002.     If @KomercKako = 'I'
  66003.         If @Sifra_Pat IS NOT NULL
  66004.             SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (' + @Sifra_Pat + ') '
  66005.     If @KomercKako = 'T'
  66006.         If @Sifra_Pat IS NOT NULL
  66007.             SET @SSQL = @SSQL + ' AND K.Sifra_Pat In (' + @Sifra_Pat + ') '
  66008. --    If @Sifra_Pat Is Not Null
  66009. --        Set @SSQL = @SSQL + 'AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  66010.     If @KoiFri = 'P'
  66011.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  66012.     Else If @KoiFri = 'N'
  66013.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  66014.    EXEC(@SSQL)
  66015.  
  66016.  
  66017. Go
  66018. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_fakt_tr]'))
  66019. drop procedure [dbo].[sp_kniga_fakt_tr]
  66020.  
  66021. Go
  66022.  
  66023. create   PROCEDURE sp_Kniga_Fakt_Tr
  66024.    @Sifra_Za Char(1),
  66025.    @Datum_Nal_Od Smalldatetime,
  66026.    @Datum_Nal_Do Smalldatetime,
  66027.    @Datum_Dok_Od Smalldatetime,
  66028.    @Datum_Dok_Do Smalldatetime,
  66029.    @Sifra_Nal Smallint,
  66030.    @Sifra_OE Smallint,
  66031.    @Kto Char(6),
  66032.    @Broj_Nal int = Null,
  66033.    @Dok_Od_Dokr char(1) = 'D',    -- dali vo knigata na fakturi da vleguvaat i dokumentite od dokr koi ne se proknizani (gi nema vo findok), a koi treba da vlezat vo kniga na fakturi
  66034.    @Dok_Od_KasStav char(1) = 'N', -- dali vo knigata na fakturi da vleguvaat i kasovite dokumentite so konto 160% (za big bull)
  66035.    @DaliPrenIzlez char(1) = 'N'
  66036.  
  66037. AS
  66038.  
  66039.     Declare @SSQL Varchar(8000)
  66040.     Set @SSQL = 'SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.BrojDok, '''' Ispratnica, A.Opis,
  66041.             A.Sifra_Nal, A.Broj_Nal, A.Datum_Nal, A.Datum_Dok,
  66042.             A.Dolzi, A.Pobaruva, A.Danok1, A.Danok2,
  66043.             A.Sifra_Kup, K.ImeKup, K.Adresa, 
  66044.             S.Stapka1, S.Stapka2, K.Danocen, K.SMesto, K.MatBr, TD.Dev
  66045.              FROM AnFinDok A
  66046.              INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  66047.              Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66048.              Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  66049.              Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  66050.              WHERE A.SIfra_Nal=102 and A.Kto=''1020'' and A.Sifra_Za=2 And A.Sifra_Nal <> 999 
  66051.                            and PObaruva <> 0 and Danok1 + Danok2 <> 0 '
  66052.     If @Broj_Nal Is NOT Null
  66053.         Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  66054.     If @Sifra_Nal Is NOT Null
  66055.         Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  66056.     If @Sifra_OE Is NOT Null
  66057.         Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  66058.     If @Kto Is NOT Null
  66059.         Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  66060.     If @Datum_Dok_Od Is NOT Null
  66061.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66062.     If @Datum_Dok_Do Is NOT Null
  66063.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66064.     If @Datum_Nal_Od Is NOT Null
  66065.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  66066.     If @Datum_Nal_Do Is NOT Null
  66067.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  66068.  
  66069.    EXEC(@SSQL)
  66070.  
  66071.  
  66072.  
  66073.  
  66074. Go
  66075. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_faktizlsr]'))
  66076. drop procedure [dbo].[sp_kniga_faktizlsr]
  66077.  
  66078. Go
  66079.  
  66080.  
  66081.  
  66082.  
  66083.  
  66084.  
  66085.  
  66086. CREATE        PROCEDURE sp_Kniga_FaktIzlSR
  66087.    @Datum_Nal_Od Smalldatetime,
  66088.    @Datum_Nal_Do Smalldatetime,
  66089.    @Datum_Dok_Od Smalldatetime,
  66090.    @Datum_Dok_Do Smalldatetime,
  66091.    @Sifra_Nal Smallint,
  66092.    @Sifra_OE Smallint,
  66093.    @Kto Char(6),
  66094.    @Broj_Nal int = Null,
  66095.    @Dok_Od_Dokr char(1) = 'D',    -- dali vo knigata na fakturi da vleguvaat i dokumentite od dokr koi ne se proknizani (gi nema vo findok), a koi treba da vlezat vo kniga na fakturi
  66096.    @Dok_Od_KasStav char(1) = 'N', -- dali vo knigata na fakturi da vleguvaat i kasovite dokumentite so konto 160% (za big bull)
  66097.    @DaliPrenIzlez char(1) = 'N'
  66098. AS
  66099. CREATE TABLE #TmpKngIzl
  66100. (Datum_Nal    smalldatetime,
  66101. Sifra_OE    smallint,
  66102. Sifra_Dok    smallint,
  66103. Broj_Dok    int,
  66104. Sifra_Nal    smallint,
  66105. Broj_Nal    int,
  66106. Datum_Dok    smalldatetime,
  66107. ImeKup        varchar(40),
  66108. Danocen        varchar(15),
  66109. VkIznDok    decimal(18,2),
  66110. Kol8        decimal(18,2),
  66111. Kol9        decimal(18,2),
  66112. Kol10        decimal(18,2),
  66113. Kol11        decimal(18,2),
  66114. Osn1        decimal(18,2),
  66115. DDV1        decimal(18,2),
  66116. Osn2        decimal(18,2),
  66117. DDV2        decimal(18,2),
  66118. VkOsn        decimal(18,2),
  66119. VkOsnZaOdb    decimal(18,2))
  66120.  
  66121. Declare @SSQL Varchar(8000)
  66122. Set @SSQL = 'SELECT A.Datum_Nal, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Dok, substring(rtrim(K.ImeKup)+space(1)+rtrim(K.SMesto),1,40), K.Danocen,
  66123.         A.Dolzi, 0,0,0,0, Round(A.Danok1/(S.Stapka1/100),2), A.Danok1,Round(A.Danok2/(S.Stapka2/100),2), A.Danok2,0,0
  66124.         FROM AnFinDok A
  66125.         INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  66126.         Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66127.         Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  66128.         Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  66129.         WHERE TD.TipDok=1 And TD.Dev <> ''D'' AND A.Dolzi<>0 AND TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=1 And A.Sifra_Nal <> 999 ' + 
  66130.         ' And (TN.VoDDV_Knig IS NULL OR TN.VoDDV_Knig<>''N'') '  
  66131. If @Broj_Nal Is NOT Null
  66132.     Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  66133. If @Sifra_Nal Is NOT Null
  66134.     Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  66135. If @Sifra_OE Is NOT Null
  66136.     Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  66137. If @Kto Is NOT Null
  66138.     Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  66139. If @Datum_Dok_Od Is NOT Null
  66140.     SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66141. If @Datum_Dok_Do Is NOT Null
  66142.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66143. If @Datum_Nal_Od Is NOT Null
  66144.     SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  66145. If @Datum_Nal_Do Is NOT Null
  66146.         SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  66147. INSERT INTO #TmpKngIzl EXEC(@SSQL)
  66148.  
  66149. Set @SSQL = 'SELECT A.Datum_Nal, A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Nal, A.Broj_Nal, A.Datum_Dok, substring(rtrim(K.ImeKup)+space(1)+rtrim(K.SMesto),1,40), K.Danocen,
  66150.         0, 0,0,A.Dolzi,0, Round(A.Danok1/(S.Stapka1/100),2), A.Danok1,Round(A.Danok2/(S.Stapka2/100),2), A.Danok2,0,0
  66151.         FROM AnFinDok A
  66152.         INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  66153.         Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66154.         Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  66155.         Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  66156.         WHERE TD.TipDok=1 And TD.Dev = ''D'' AND A.Dolzi<>0 AND TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=1 And A.Sifra_Nal <> 999 ' + 
  66157.         ' And (TN.VoDDV_Knig IS NULL OR TN.VoDDV_Knig<>''N'') '  
  66158. If @Broj_Nal Is NOT Null
  66159.     Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  66160. If @Sifra_Nal Is NOT Null
  66161.     Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  66162. If @Sifra_OE Is NOT Null
  66163.     Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  66164. If @Kto Is NOT Null
  66165.     Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  66166. If @Datum_Dok_Od Is NOT Null
  66167.     SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66168. If @Datum_Dok_Do Is NOT Null
  66169.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66170. If @Datum_Nal_Od Is NOT Null
  66171.     SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  66172. If @Datum_Nal_Do Is NOT Null
  66173.         SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  66174. INSERT INTO #TmpKngIzl EXEC(@SSQL)
  66175.  
  66176. UPDATE #TmpKngIzl SET VkOsn=Osn1+Osn2,VkOsnZaOdb=Osn1+Osn2
  66177. SELECT * FROM #TmpKngIzl ORDER BY Datum_Dok
  66178.  
  66179.  
  66180.  
  66181.  
  66182.  
  66183.  
  66184.  
  66185.  
  66186.  
  66187. Go
  66188. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_faktvlsr]'))
  66189. drop procedure [dbo].[sp_kniga_faktvlsr]
  66190.  
  66191. Go
  66192.  
  66193.  
  66194.  
  66195.  
  66196.  
  66197.  
  66198.  
  66199.  
  66200.  
  66201. CREATE          PROCEDURE sp_Kniga_FaktVlSR
  66202.     @Datum_Nal_Od Smalldatetime,
  66203.     @Datum_Nal_Do Smalldatetime,
  66204.     @Datum_Dok_Od Smalldatetime,
  66205.     @Datum_Dok_Do Smalldatetime,
  66206.     @Sifra_Nal Smallint,
  66207.     @Sifra_OE Smallint,
  66208.     @Kto Char(6),
  66209.     @Broj_Nal int = Null,
  66210.     @Dok_Od_Dokr char(1) = 'D',    -- dali vo knigata na fakturi da vleguvaat i dokumentite od dokr koi ne se proknizani (gi nema vo findok), a koi treba da vlezat vo kniga na fakturi
  66211.     @Dok_Od_KasStav char(1) = 'N', -- dali vo knigata na fakturi da vleguvaat i kasovite dokumentite so konto 160% (za big bull)
  66212.     @DaliPrenIzlez char(1) = 'N',
  66213.     @Kto_Zemj    char(6)=4331
  66214. AS
  66215. CREATE TABLE #TmpKngVl
  66216. (Datum_Nal    smalldatetime,
  66217. Kol3        varchar(20),
  66218. Sifra_OE    smallint,
  66219. Sifra_Dok    smallint,
  66220. Broj_Dok    int,
  66221. Sifra_Nal    smallint,
  66222. Broj_Nal    int,
  66223. BrojDok        varchar(35),
  66224. Datum_Dok    smalldatetime,
  66225. ImeKup        varchar(40),
  66226. Danocen        varchar(15),
  66227. VkIznDok    decimal(18,2),
  66228. VkBezDDV    decimal(18,2),
  66229. Kol10        decimal(18,2),
  66230. Kol11        decimal(18,2),
  66231. VkDDV        decimal(18,2),
  66232. DDV_ZaOdb    decimal(18,2),
  66233. DDV_NeOdb    decimal(18,2),
  66234. UvozOsn        decimal(18,2),
  66235. UvozDDV        decimal(18,2),
  66236. ZemjOsn        decimal(18,2),
  66237. ZemjDDV        decimal(18,2))
  66238.  
  66239. Declare @SifDokCarDK smallint
  66240. SELECT @SifDokCarDK = Devk_TipD_CarFra FROM Konfig
  66241.  
  66242. Declare @SSQL Varchar(8000)
  66243. Set @SSQL = 'SELECT A.Datum_Nal,space(1), A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Nal, A.Broj_Nal, A.BrojDok, A.Datum_Dok, 
  66244.         substring(rtrim(K.ImeKup)+space(1)+rtrim(K.SMesto),1,40), K.Danocen, A.Pobaruva, 0,0,0,A.Danok1+A.Danok2, A.Danok1+A.Danok2, 0, 0,0,0,0
  66245.         FROM AnFinDok A
  66246.         INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  66247.         Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66248.         Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  66249.         Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  66250.         WHERE TD.TipDok=1 And TD.Dev <> ''D'' AND A.Pobaruva<>0 AND TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=2 And A.Sifra_Nal <> 999 ' + 
  66251.         ' And (TN.VoDDV_Knig IS NULL OR TN.VoDDV_Knig<>''N'') And A.Sifra_Dok<>'+cast(@SifDokCarDK as varchar(4))+' '
  66252. If @Broj_Nal Is NOT Null
  66253.     Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  66254. If @Sifra_Nal Is NOT Null
  66255.     Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  66256. If @Sifra_OE Is NOT Null
  66257.     Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  66258. If @Kto Is NOT Null
  66259.     Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  66260. If @Datum_Dok_Od Is NOT Null
  66261.     SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66262. If @Datum_Dok_Do Is NOT Null
  66263.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66264. If @Datum_Nal_Od Is NOT Null
  66265.     SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  66266. If @Datum_Nal_Do Is NOT Null
  66267.         SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  66268. print (@ssql)
  66269. INSERT INTO #TmpKngVl EXEC(@SSQL)
  66270. UPDATE #TmpKngVl SET Kol11 = VkIznDok - VkDDV WHERE VkDDV<>0
  66271. UPDATE #TmpKngVl SET Kol11 = 0 WHERE ABS(Kol11)<0.1
  66272. UPDATE #TmpKngVl SET VkBezDDV = VkIznDok WHERE VkDDV=0
  66273.  
  66274. Set @SSQL = 'SELECT A.Datum_Nal,space(1), A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Nal, A.Broj_Nal, A.BrojDok, A.Datum_Dok, 
  66275.         substring(rtrim(K.ImeKup)+space(1)+rtrim(K.SMesto),1,40), K.Danocen, A.Pobaruva, 0,0,0,0, 0, 0,A.Pobaruva- A.Danok1+A.Danok2,A.Danok1+A.Danok2,0,0
  66276.         FROM AnFinDok A
  66277.         INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  66278.         Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66279.         Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  66280.         Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  66281.         WHERE TD.TipDok=1 And TD.Dev <> ''D'' AND A.Pobaruva<>0 AND TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=2 And A.Sifra_Nal <> 999 ' + 
  66282.         ' And (TN.VoDDV_Knig IS NULL OR TN.VoDDV_Knig<>''N'') And A.Sifra_Dok='+cast(@SifDokCarDK as varchar(4))+' '
  66283. If @Broj_Nal Is NOT Null
  66284.     Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  66285. If @Sifra_Nal Is NOT Null
  66286.     Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  66287. If @Sifra_OE Is NOT Null
  66288.     Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  66289. If @Kto Is NOT Null
  66290.     Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  66291. If @Datum_Dok_Od Is NOT Null
  66292.     SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66293. If @Datum_Dok_Do Is NOT Null
  66294.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66295. If @Datum_Nal_Od Is NOT Null
  66296.     SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  66297. If @Datum_Nal_Do Is NOT Null
  66298.         SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  66299. INSERT INTO #TmpKngVl EXEC(@SSQL)
  66300.  
  66301. Declare @DK_VoKngFkt char(1)
  66302. SELECT @DK_VoKngFkt = VoDDV_Knig FROM TipDok WHERE Sifra_Dok =132
  66303. IF @DK_VoKngFkt='D'
  66304. Begin
  66305.     Set @SSQL = 'SELECT N.Datum_Nal, space(1), D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Datum_Dok, 
  66306.         substring(rtrim(K.ImeKup)+space(1)+rtrim(K.SMesto),1,40), K.Danocen, 0, 0,0,0,0,0,0,D.Toc200-D.Danok1-D.Danok2, D.Danok1+D.Danok2, 0, 0
  66307.         FROM  Dokr D
  66308.         LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  66309.         INNER JOIN Nalozi N ON D.Sifra_Nal = N.Sifra_Nal AND D.Broj_Nal = N.Broj_Nal
  66310.         WHERE D.Sifra_Dok=132 '  
  66311.     If @Broj_Nal Is NOT Null
  66312.         Set @SSQL = @SSQL + 'AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  66313.     If @Sifra_Nal Is NOT Null
  66314.         Set @SSQL = @SSQL + 'AND D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  66315.     If @Sifra_OE Is NOT Null
  66316.         Set @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  66317.     If @Kto Is NOT Null
  66318.         Set @SSQL = @SSQL + 'AND D.Kto=' + @Kto + ' ' 
  66319.     If @Datum_Dok_Od Is NOT Null
  66320.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66321.     If @Datum_Dok_Do Is NOT Null
  66322.         SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66323.     If @Datum_Nal_Od Is NOT Null
  66324.         SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  66325.     If @Datum_Nal_Do Is NOT Null
  66326.         SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  66327.     INSERT INTO #TmpKngVl EXEC(@SSQL)
  66328. End
  66329.  
  66330. Set @SSQL = 'SELECT A.Datum_Nal,space(1), A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Nal, A.Broj_Nal, A.BrojDok, A.Datum_Dok, 
  66331.         substring(rtrim(K.ImeKup)+space(1)+rtrim(K.SMesto),1,40), K.Danocen,A.Dolzi, 0,0,0,0, 0, 0, 0,0,A.Dolzi-A.Danok1-A.Danok2,A.Danok1+A.Danok2
  66332.         FROM AnFinDok A
  66333.         INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  66334.         Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66335.         Inner Join TipNal TN On A.Sifra_Nal = TN.Sifra_Nal
  66336.         WHERE TD.TipDok=2 And A.Kto='''+@Kto_Zemj+''' AND A.Dolzi<>0 AND TD.VoDDV_Knig =' + '''D''' + ' And A.Sifra_Za=2 And A.Sifra_Nal <> 999 ' + 
  66337.         ' And (TN.VoDDV_Knig IS NULL OR TN.VoDDV_Knig<>''N'') '  
  66338. If @Broj_Nal Is NOT Null
  66339.     Set @SSQL = @SSQL + 'AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  66340. If @Sifra_Nal Is NOT Null
  66341.     Set @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  66342. If @Sifra_OE Is NOT Null
  66343.     Set @SSQL = @SSQL + 'AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  66344. If @Kto Is NOT Null
  66345.     Set @SSQL = @SSQL + 'AND Kto=' + @Kto + ' ' 
  66346. If @Datum_Dok_Od Is NOT Null
  66347.     SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66348. If @Datum_Dok_Do Is NOT Null
  66349.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66350. If @Datum_Nal_Od Is NOT Null
  66351.     SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  66352. If @Datum_Nal_Do Is NOT Null
  66353.         SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  66354. INSERT INTO #TmpKngVl EXEC(@SSQL)
  66355.  
  66356. UPDATE #TmpKngVl SET Sifra_OE=NULL, Sifra_Dok=NULL, Broj_Dok=NULL WHERE Sifra_Dok>=801 AND Sifra_Dok<=808 AND BrojDok<>''
  66357. SELECT * FROM #TmpKngVl ORDER BY Datum_Nal
  66358.  
  66359.  
  66360.  
  66361.  
  66362.  
  66363.  
  66364.  
  66365.  
  66366.  
  66367.  
  66368.  
  66369. Go
  66370. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kniga_fiskizv]'))
  66371. drop procedure [dbo].[sp_kniga_fiskizv]
  66372.  
  66373. Go
  66374. CREATE    PROCEDURE sp_Kniga_FiskIzv
  66375.     @Sifra_OE Smallint = Null,
  66376.     @Koi_Oe char(6) = Null,
  66377.        @Sifra_Nal Smallint = Null,
  66378.     @Sifra_Dok Smallint = Null,
  66379.        @Datum_Dok_Od Smalldatetime = Null,
  66380.        @Datum_Dok_Do Smalldatetime =  Null,
  66381.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,     F - Datum_Pec_Fisc
  66382. --    @SamoPecFisk    char(1) = 'N',
  66383.     @ImePret    varchar(40) = Null Output,
  66384.     @EDB        varchar(20) = Null Output,
  66385.     @SMesto    varchar(20) = Null Output,
  66386.     @ListTipDok varchar(20) = Null,
  66387.     @PrikDokSamoUpl char(1)= 'N'-- prikazi dokumenti za koi se pravi direkno uplata
  66388.  
  66389. AS
  66390.  
  66391.     Select @ImePret=ImePret, @EDB=EDB, @SMesto=SMesto From Konfig
  66392.     If @PoKojDatum = 'F'
  66393.             If @Datum_Dok_Do Is Not Null
  66394.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  66395.     Declare @SSQL Varchar(8000)
  66396.     --Declare @SSQL Varchar(8000)
  66397.     IF @PoKojDatum = 'F'
  66398.         Set @SSQL =  ' Select Datum_Dok=Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then D.Dat_Pec_Fisc Else D.Datum_Dok End, '
  66399.     Else
  66400.         Set @SSQL =  ' Select D.Datum_Dok, '
  66401.     Set @SSQL = @SSQL + '(Case When S.Posn > 15 Then 18 When (S.Posn Between 1 and 15) Then 5 Else 0 End) Posn, 
  66402.                  (Case When S.Posn > 15 Then 3 When (S.Posn Between 1 and 15) Then 2 Else 1 End) Kolona, 
  66403.             Round (Sum(S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)), 2) Toc200,
  66404.             Round(Sum(Case When S.Posn > 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)
  66405.                 Else 0  End ), 4) Danok1, 
  66406.             Round(Sum(Case When S.Posn <= 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)
  66407.                 Else 0  End ), 4) Danok2
  66408.              FROM DOKR D
  66409.              Inner Join Stavr S On D.DokrID=S.DokrID 
  66410.              Inner Join TipDok TD On TD.Sifra_Dok = D.Sifra_Dok
  66411.             WHERE D.VlIzl=''I'' '
  66412. --    If @SamoPecFisk = 'D'
  66413. --        Set @SSQL = @SSQL + ' And Pec_Fisc > 0 '
  66414.  
  66415.     If @Sifra_Nal Is Null And @Sifra_Dok Is Null and (@ListTipDok is null or @ListTipDok = '')
  66416.         Begin
  66417.         Set @SSQL = @SSQL + ' And TD.DaliFisc = ''D'' '
  66418.         If @PoKojDatum = 'D'
  66419.         Begin
  66420.             If @Datum_Dok_Od Is NOT Null
  66421.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66422.                If @Datum_Dok_Do Is NOT Null
  66423.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66424.         End
  66425.         Else 
  66426.         Begin
  66427.             If @Datum_Dok_Od Is NOT Null
  66428.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc>='''+Cast(@Datum_Dok_Od As varchar(25))+''' '
  66429. --                        OR (TD.DaliFisc<>''D'' AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As varchar(25)) + ''')) '
  66430.                If @Datum_Dok_Do Is NOT Null
  66431.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc<='''+Cast(@Datum_Dok_Do As varchar(25))+'''  '
  66432. --                        OR (TD.DaliFisc<>''D'' AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As varchar(25)) + ''')) '
  66433.         End
  66434.         End
  66435.     else If @ListTipDok is not null and @ListTipDok <> ''
  66436.         Begin
  66437.         Set @SSQL = @SSQL + ' And D.Sifra_Dok in (' + @ListTipDok + ') '
  66438.  
  66439.         If @PoKojDatum = 'D'
  66440.         Begin
  66441.             If @Datum_Dok_Od Is NOT Null
  66442.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66443.                If @Datum_Dok_Do Is NOT Null
  66444.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66445.         End
  66446.         Else 
  66447.         Begin
  66448.             If @Datum_Dok_Od Is NOT Null
  66449.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc>='''+Cast(@Datum_Dok_Od As varchar(25))+''' '
  66450.                If @Datum_Dok_Do Is NOT Null
  66451.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc<='''+Cast(@Datum_Dok_Do As varchar(25))+'''  '
  66452.         End
  66453.         End
  66454.     Else
  66455.         Begin
  66456.         If @PoKojDatum = 'D'
  66457.         Begin
  66458.             If @Datum_Dok_Od Is NOT Null
  66459.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66460.                If @Datum_Dok_Do Is NOT Null
  66461.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66462.         End
  66463.         Else 
  66464.         Begin
  66465.             If @Datum_Dok_Od Is NOT Null
  66466.                 Set @SSQL = @SSQL + ' And ((TD.DaliFisc=''D'' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc>='''+Cast(@Datum_Dok_Od As varchar(25))+''' )
  66467.                             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As varchar(25)) + ''')) '
  66468.                If @Datum_Dok_Do Is NOT Null
  66469.                 Set @SSQL = @SSQL + ' And ((TD.DaliFisc=''D'' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc<='''+Cast(@Datum_Dok_Do As varchar(25))+''' )
  66470.                             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As varchar(25)) + ''')) '
  66471.         End
  66472.         End
  66473.  
  66474.     If @Sifra_Nal Is Not Null
  66475.         SET @SSQL = @SSQL + 'And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  66476.     If @Sifra_Dok Is NOT NULL
  66477.         SET @SSQL = @SSQL + 'AND S.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  66478.        If @Sifra_OE Is NOT Null
  66479.               SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  66480.        If @Koi_OE Is NOT Null
  66481.               SET @SSQL = @SSQL + 'AND S.Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  66482.     IF @PoKojDatum = 'F'
  66483.         Set @SSQL = @SSQL + ' Group By (Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then D.Dat_Pec_Fisc Else D.Datum_Dok End), '
  66484.     Else
  66485.         Set @SSQL = @SSQL + ' Group By D.Datum_Dok, '
  66486.     Set @SSQL = @SSQL + ' (Case When S.Posn > 15 Then 18 When (S.Posn Between 1 and 15) Then 5 Else 0 End),
  66487.                   (Case When S.Posn > 15 Then 3 When (S.Posn Between 1 and 15) Then 2 Else 1 End) '
  66488. ---------------------------------------------------------------------------------------------------------------------------------------
  66489.     IF @PrikDokSamoUpl ='D'
  66490.     begin
  66491.             SET @SSQL = @SSQL + ' UNION'
  66492.             SET @SSQL = @SSQL + ' Select A.Datum_Dok, '
  66493.             Set @SSQL = @SSQL + '(Case When S.Posn > 15 Then 18 When (S.Posn Between 1 and 15) Then 5 Else 0 End) Posn, 
  66494.                  (Case When S.Posn > 15 Then 3 When (S.Posn Between 1 and 15) Then 2 Else 1 End) Kolona, 
  66495.             Round (Sum(S.Kolic* dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)), 2) Toc200,
  66496.             Round(Sum(Case When S.Posn > 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)
  66497.                 Else 0  End ), 4) Danok1, 
  66498.             Round(Sum(Case When S.Posn <= 15 Then (S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa) * S.Posn / 100)
  66499.                 Else 0  End ), 4) Danok2
  66500.              FROM AnFinDok A 
  66501.              Inner Join Dokr D on  
  66502.             cast(Substring(A.BrojDok, 0, PatIndex(''%-%'', A.BrojDok))as smallint)= D.Sifra_Oe and 
  66503.             cast(Substring(A.BrojDok, PatIndex(''%-%'', A.BrojDok)+1, PatIndex(''%/%'', A.BrojDok)-PatIndex(''%-%'', A.BrojDok)-1)as smallint)=D.Sifra_dok and 
  66504.             cast(Substring(A.BrojDok, PatIndex(''%/%'', A.BrojDok)+1, 10)as integer)=D.broj_Dok
  66505.              Inner Join Stavr S On D.DokrID=S.DokrID 
  66506.              Inner Join TipDok TD On TD.Sifra_Dok = D.Sifra_Dok
  66507.              WHERE D.VlIzl=''I'' '
  66508.     If @Sifra_Nal Is Null And @Sifra_Dok Is Null and (@ListTipDok is null or @ListTipDok = '')
  66509.         Begin
  66510.         Set @SSQL = @SSQL + ' And TD.DaliFisc = ''D'' '
  66511.         If @PoKojDatum = 'D'
  66512.         Begin
  66513.             If @Datum_Dok_Od Is NOT Null
  66514.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66515.                If @Datum_Dok_Do Is NOT Null
  66516.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66517.         End
  66518.         Else 
  66519.         Begin
  66520.             If @Datum_Dok_Od Is NOT Null
  66521.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc>='''+Cast(@Datum_Dok_Od As varchar(25))+''' '
  66522. --                        OR (TD.DaliFisc<>''D'' AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As varchar(25)) + ''')) '
  66523.                If @Datum_Dok_Do Is NOT Null
  66524.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc<='''+Cast(@Datum_Dok_Do As varchar(25))+'''  '
  66525. --                        OR (TD.DaliFisc<>''D'' AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As varchar(25)) + ''')) '
  66526.         End
  66527.         End
  66528.     else If @ListTipDok is not null and @ListTipDok <> ''
  66529.         Begin
  66530.         Set @SSQL = @SSQL + ' And D.Sifra_Dok in (' + @ListTipDok + ') '
  66531.  
  66532.         If @PoKojDatum = 'D'
  66533.         Begin
  66534.             If @Datum_Dok_Od Is NOT Null
  66535.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66536.                If @Datum_Dok_Do Is NOT Null
  66537.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66538.         End
  66539.         Else 
  66540.         Begin
  66541.             If @Datum_Dok_Od Is NOT Null
  66542.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc>='''+Cast(@Datum_Dok_Od As varchar(25))+''' '
  66543.                If @Datum_Dok_Do Is NOT Null
  66544.                 Set @SSQL = @SSQL + ' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc<='''+Cast(@Datum_Dok_Do As varchar(25))+'''  '
  66545.         End
  66546.         End
  66547.     Else
  66548.         Begin
  66549.         If @PoKojDatum = 'D'
  66550.         Begin
  66551.             If @Datum_Dok_Od Is NOT Null
  66552.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  66553.                If @Datum_Dok_Do Is NOT Null
  66554.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  66555.         End
  66556.         Else 
  66557.         Begin
  66558.             If @Datum_Dok_Od Is NOT Null
  66559.                 Set @SSQL = @SSQL + ' And ((TD.DaliFisc=''D'' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc>='''+Cast(@Datum_Dok_Od As varchar(25))+''' )
  66560.                             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As varchar(25)) + ''')) '
  66561.                If @Datum_Dok_Do Is NOT Null
  66562.                 Set @SSQL = @SSQL + ' And ((TD.DaliFisc=''D'' And D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc<='''+Cast(@Datum_Dok_Do As varchar(25))+''' )
  66563.                             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As varchar(25)) + ''')) '
  66564.         End
  66565.         End
  66566.  
  66567.     If @Sifra_Nal Is Not Null
  66568.         SET @SSQL = @SSQL + 'And D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  66569.     If @Sifra_Dok Is NOT NULL
  66570.         SET @SSQL = @SSQL + 'AND S.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  66571.        If @Sifra_OE Is NOT Null
  66572.               SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  66573.        If @Koi_OE Is NOT Null
  66574.               SET @SSQL = @SSQL + 'AND S.Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  66575. ------------------------------------------------------------------------------------------------------------------------------------
  66576.     IF @PoKojDatum = 'F'
  66577.         Set @SSQL = @SSQL + ' Group By (Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then D.Dat_Pec_Fisc Else D.Datum_Dok End), '
  66578.     Else
  66579.         Set @SSQL = @SSQL + ' Group By A.Datum_Dok, '
  66580.     Set @SSQL = @SSQL + ' (Case When S.Posn > 15 Then 18 When (S.Posn Between 1 and 15) Then 5 Else 0 End),
  66581.                   (Case When S.Posn > 15 Then 3 When (S.Posn Between 1 and 15) Then 2 Else 1 End) '
  66582. end
  66583.     print @SSQL
  66584.     EXEC(@SSQL)
  66585.  
  66586.  
  66587.  
  66588.  
  66589.  
  66590. Go
  66591. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_knigaoruzje]'))
  66592. drop procedure [dbo].[sp_knigaoruzje]
  66593.  
  66594. Go
  66595.  
  66596. CREATE     PROCEDURE  sp_KnigaOruzje
  66597.     @Sifra_Oe    smallint,
  66598.     @Sif_GrOrg    char(6),
  66599.     @VlIzl        char(1),
  66600.     @Drugo1        smallint = NULL,
  66601.     @Datum_Od    smalldatetime,
  66602.     @Datum_Do    smalldatetime
  66603.  
  66604. AS
  66605. Declare @SSQL varchar(5000), @PocDat smalldatetime, @Sifra_Za char(1)
  66606. SET @PocDat = dbo.fn_NapraviDatum(Year(@Datum_od), 1,1)
  66607. IF @VlIzl='V'
  66608.     SET @Sifra_Za='2'
  66609. ELSE
  66610.     SET @Sifra_Za='1'
  66611.  
  66612. CREATE TABLE #TmpKngOru
  66613. (Rbr     int IDENTITY (1, 1),
  66614. Sifra_Art    varchar(20),
  66615. ImeArt        varchar(40), 
  66616. Ime_1        varchar(40), 
  66617. Ime_2        varchar(40), 
  66618. Kolic        decimal(18,2), 
  66619. FabrBroj    varchar(40), 
  66620. Ispratnica    varchar(40), 
  66621. Opis        varchar(40), 
  66622. Datum_Dok    smalldatetime, 
  66623. ImeKup        varchar(40), 
  66624. KupAdresa    varchar(40), 
  66625. KupSmesto    varchar(20), 
  66626. KorImeKor    varchar(40), 
  66627. KorSmesto    varchar(20), 
  66628. KorAdresa    varchar(40), 
  66629. LK            varchar(40))
  66630.  
  66631. SET @SSQL='SELECT S.Sifra_Art, A.ImeArt, D1.Ime_1, D2.Ime_2, CASE WHEN KS.KontrSerExt IS NULL THEN S.Kolic ELSE 1 End AS Kolic, KS.KontrSerExt, D.Ispratnica, D.Opis, D.Datum_Dok, 
  66632. Kup.ImeKup, Kup.Adresa, Kup.Smesto, Kor.ImeKor, Kor.Smesto, Kor.Adresa, Kor.LK
  66633. FROM Stavr S INNER JOIN Dokr D ON S.DokrID=D.DokrID
  66634. INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art
  66635. LEFT OUTER JOIN Drugo1 D1 ON A.Drugo1=D1.Sifra_1
  66636. LEFT OUTER JOIN Drugo2 D2 ON A.Drugo2=D2.Sifra_2
  66637. LEFT OUTER JOIN Komint Kup ON D.Sifra_Kup=Kup.Sifra_Kup
  66638. LEFT OUTER JOIN KartKor Kor ON D.Sifra_Kor=Kor.Sifra_Kor 
  66639. LEFT OUTER JOIN MagStavr MS ON S.DokrID=MS.DokrID AND S.Sifra_Art=MS.Sifra_Art
  66640. LEFT OUTER JOIN KatSerKlas KS ON MS.Sifra_Art = KS.SifrA_Art and MS.SpecOzn = KS.KontrSer 
  66641. WHERE S.VlIzl='''+@VlIzl+''' AND D.Sifra_Za='+@Sifra_Za+' AND A.Drugo1 IS NOT NULL AND S.Datum_Dok>='''+cast(@PocDat as varchar(30))+''' AND S.Datum_Dok<='''+cast(@Datum_Do as varchar(30))+''' '
  66642. IF @Sifra_OE IS NOT NULL                 
  66643.     SET @SSQL = @SSQL + ' AND S.Sifra_Oe='+cast(@Sifra_OE as varchar(4)) 
  66644. IF @Sif_GrOrg IS NOT NULL
  66645.     SET @SSQL = @SSQL + ' AND S.Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg='''+@Sif_GrOrg+''') '
  66646. IF @VlIzl='I'
  66647.     SET @SSQL = @SSQL + ' AND A.Drugo1='+cast(@Drugo1 as varchar(4))
  66648. SET @SSQL = @SSQL + ' ORDER BY S.Datum_Dok, D.DokrID, S.DokID '
  66649.  
  66650. INSERT INTO #TmpKngOru (Sifra_Art, ImeArt, Ime_1, Ime_2, Kolic, FabrBroj, Ispratnica, Opis, Datum_Dok, ImeKup, KupAdresa, KupSmesto, KorImeKor, KorSmesto, KorAdresa, LK)
  66651. EXEC (@SSQL)
  66652.  
  66653. SELECT * FROM #TmpKngOru WHERE Datum_Dok>=@Datum_Od
  66654.  
  66655.  
  66656.  
  66657. Go
  66658. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_knigatrg]'))
  66659. drop procedure [dbo].[sp_knigatrg]
  66660.  
  66661. Go
  66662.  
  66663. CREATE                  PROCEDURE sp_KnigaTrg
  66664.     @Sifra_OE Smallint,
  66665.     @Datum_Otv Smalldatetime,
  66666.     @Datum_Od Smalldatetime,
  66667.     @Datum_Do Smalldatetime,
  66668.     @Dali_902 Char(1),
  66669.     @Dali_903 Char(1),
  66670.     @Dali_904 Char(1),
  66671.     @Iskluci_Sifri_Prim varchar(200) = NULL, 
  66672.     @PecFisc_PoDatPec    char(1) = 'D',        --dodadeno 25.09.04 PRIMA VRED. D ili N
  66673.     @PrenStornoVlez    char(1) = 'N',
  66674.     @PoNabCenaStavr    char(1) = 'N',        -- samo za zito v 
  66675.     @RezVoTab_PoNalozi    char(1) = 'N',        -- ova e za slaganata -- go vraka rezultatot vo pomosna tabela i vo sifra_dok, broj_dok stava sifra_nal, broj_nal
  66676.     @RazlCeniSamoTKdok    char(1) = 'N',        -- Razliki vo ceni proizlezeni samo od dokumenti koi vlegiuvaat vo trg.kniga
  66677.     @ProdVredn Decimal(18,4) = 0.0 OUTPUT,
  66678.     @NabVred Decimal(18,4) = 0.0 OUTPUT,
  66679.     @VkalkDan Decimal(18,4) = 0.0 OUTPUT,
  66680.     @ObvrskaDan Decimal(18,4) = 0.0 OUTPUT,
  66681.     @VrednProd Decimal(18,4) = 0.0 OUTPUT
  66682. AS
  66683.     IF @PecFisc_PoDatPec = 'D' SET @Datum_Do = DateADD(minute, 1439, @Datum_Do)
  66684.     Declare @Tip813 char(1)
  66685.     SELECT @Tip813=VoTRG_Knig FROM TipDok WHERE Sifra_Dok=813
  66686.  
  66687.     Declare @Tip450 char(1)
  66688.     SELECT @Tip450=VoTRG_Knig FROM TipDok WHERE Sifra_Dok=450
  66689.  
  66690.     Declare @SSQL Varchar(8000)
  66691.     CREATE TABLE #tmpKniga
  66692.     (
  66693.         InterenBr Integer IDENTITY(0, 1),
  66694.         Sifra_Oe smallint,
  66695.         Sifra_Dok smallint,
  66696.         ImeDok    char(40),
  66697.         Opis_TKNG varchar(40),
  66698.         Kto Char(10),
  66699.         Datum_Dok Smalldatetime,
  66700.         Datum_Knz Smalldatetime,
  66701.         Broj Varchar(100),
  66702.         Opis Varchar(100),
  66703.         OdKade char(1),
  66704.         VlIzl char(1),
  66705.         ProdVredn Numeric(18, 4),
  66706.         NabVred Numeric(18,4),
  66707.         VkalkDan Numeric(18, 4),
  66708.         ObvrskaDan Numeric(18, 4),
  66709.         VrednProd Numeric(18, 4)
  66710.     )
  66711.     If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66712.         Set @SSQL = 'Select D.Sifra_Oe, D.Sifra_Nal, '
  66713.     Else
  66714.         Set @SSQL = 'Select Null as Sifra_Oe, D.Sifra_Dok, '
  66715.     Set @SSQL = @SSQL + ' TD.ImeDok, D.Kto, TD.Opis_TKNG, '
  66716.     IF @PecFisc_PoDatPec    = 'N'
  66717.         Set @SSQL = @SSQL + 'D.Datum_Dok Datum_Dok, D.Datum_Dok Datum_Knz, '
  66718.     Else
  66719.         Set @SSQL = @SSQL + 'Datum_Dok=Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then D.Dat_Pec_Fisc Else D.Datum_Dok End,
  66720.                      Datum_Knz=Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then D.Dat_Pec_Fisc Else D.Datum_Dok End, '
  66721.     If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66722.         Set @SSQL = @SSQL + 'Cast(D.Broj_Nal as varchar(10)) Broj, '
  66723.     Else
  66724.         Set @SSQL = @SSQL + 'Cast(D.Sifra_Dok As Varchar(6)) + ''-'' + Cast(D.Broj_Dok As Varchar(9)) Broj, ' 
  66725.     Set @SSQL = @SSQL + ' D.Identif_Br, ''D'', D.VlIzl, '
  66726.     If @PoNabCenaStavr = 'D'   --samo za zito v  - po default e na 'N'
  66727.     Begin
  66728.         If @PrenStornoVlez = 'D'
  66729.         Begin
  66730.             Set @SSQL = @SSQL + '
  66731.             ProdVredn =     Case D.VlIzl
  66732.                     When ''I'' Then Sum((Case D.ImaDodatna When ''D'' Then (-1*S.Kolic*dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''D'')) Else 0.0 End))
  66733.                     When ''V'' Then Sum((Case D.ImaDodatna When ''P'' Then S.Kolic*dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''D'') Else S.Kolic*dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''D'') End )) End,
  66734.              NabVred = Case D.VlIzl
  66735.                     When ''I'' Then Sum((Case D.ImaDodatna When ''D'' Then (-1*S.Kolic*S.NabCena*(1+S.PosnPren/100)) Else 0.0 End))
  66736.                     When ''V'' Then Sum((S.Kolic*S.NabCena*(1+S.PosnPren/100))) End, 
  66737.             VkalkDan = Case D.VlIzl
  66738.                     When ''I'' Then 0.0
  66739.                     When ''V'' Then 0.0    End,
  66740.             ObvrskaDan =     Case D.VlIzl
  66741.                     When ''I'' Then 0.0
  66742.                     When ''V'' Then 0.0    End, 
  66743.             VrednProd =     Case D.VlIzl
  66744.                     When ''I'' Then (Case D.ImaDodatna When ''D'' Then 0 Else D.Toc200 End) 
  66745.                     When ''V'' Then 0.0    End '
  66746.         End
  66747.         Else
  66748.         Begin
  66749.             Set @SSQL = @SSQL + ' 
  66750.             ProdVredn =     Case D.VlIzl
  66751.                     When ''I'' Then 0.0
  66752.                     When ''V'' Then Sum((Case D.ImaDodatna When ''P'' Then S.Kolic*dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''D'') Else S.Kolic*dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''D'') End )) End,
  66753.             NabVred = Case D.VlIzl
  66754.                     When ''I'' Then 0.0
  66755.                     When ''V'' Then Sum((S.Kolic*S.NabCena*(1+S.PosnPren/100)))    End, 
  66756.             VkalkDan = Case D.VlIzl
  66757.                     When ''I'' Then 0.0
  66758.                     When ''V'' Then 0.0    End,
  66759.             ObvrskaDan =     Case D.VlIzl
  66760.                     When ''I'' Then 0.0
  66761.                     When ''V'' Then 0.0    End, 
  66762.             VrednProd =     Case D.VlIzl
  66763.                     When ''I'' Then D.Toc200
  66764.                     When ''V'' Then 0.0        End '
  66765.         End
  66766.     End    Else  -- If @PoNabCenaStavr = 'D'
  66767.     Begin 
  66768.         If @PrenStornoVlez = 'D'
  66769.         Begin
  66770.             Set @SSQL = @SSQL + '
  66771.             ProdVredn =     Case D.VlIzl
  66772.                     When ''I'' Then (Case D.ImaDodatna When ''D'' Then (-1*Toc200) Else 0.0 End)
  66773.                     When ''V'' Then D.MagVrDan    End,
  66774.             NabVred = Case D.VlIzl
  66775.                     When ''I'' Then (Case D.ImaDodatna When ''D'' Then (-1*Toc200) Else 0.0 End)
  66776.                     When ''V'' Then D.Toc200    End, 
  66777.             VkalkDan = Case D.VlIzl
  66778.                     When ''I'' Then 0.0
  66779.                     When ''V'' Then D.PDanok1 + D.PDanok2    End,
  66780.             ObvrskaDan =     Case D.VlIzl
  66781.                     When ''I'' Then 0.0
  66782.                     When ''V'' Then D.PDanok1 + D.PDanok2 - (D.Danok1 + D.Danok2)    End, 
  66783.             VrednProd =     Case D.VlIzl
  66784.                     When ''I'' Then (Case D.ImaDodatna When ''D'' Then 0 Else D.Toc200 End) 
  66785.                     When ''V'' Then 0.0    End '
  66786.         End
  66787.         Else
  66788.         Begin
  66789.             Set @SSQL = @SSQL + ' 
  66790.             ProdVredn =     Case D.VlIzl
  66791.                     When ''I'' Then 0.0
  66792.                     When ''V'' Then D.MagVrDan    End, 
  66793.             NabVred = Case D.VlIzl
  66794.                     When ''I'' Then 0.0
  66795.                     When ''V'' Then D.Toc200    End, 
  66796.             VkalkDan = Case D.VlIzl
  66797.                     When ''I'' Then 0.0
  66798.                     When ''V'' Then D.PDanok1 + D.PDanok2    End,
  66799.             ObvrskaDan =     Case D.VlIzl
  66800.                     When ''I'' Then 0.0
  66801.                     When ''V'' Then D.PDanok1 + D.PDanok2 - (D.Danok1 + D.Danok2)    End, 
  66802.             VrednProd =     Case D.VlIzl
  66803.                     When ''I'' Then D.Toc200
  66804.                     When ''V'' Then 0.0        End '
  66805.         End
  66806.     End
  66807.     Set @SSQL = @SSQL + ' From Dokr D
  66808.         Inner Join TipDok TD On D.Sifra_Dok=TD.Sifra_Dok And TD.VoTRG_Knig=''D'' '
  66809.     If @PoNabCenaStavr = 'D' 
  66810.         Set @SSQL = @SSQL + ' Inner Join stavr S On S.DokrID=D.DokrID '
  66811.     Set @SSQL = @SSQL + ' Where D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) 
  66812.     IF @PecFisc_PoDatPec    = 'N' 
  66813.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + ''' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  66814.     ELSE
  66815.         Set @SSQL = @SSQL + ' And ((TD.DaliFisc=''D'' AND D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc>='''+Cast(@Datum_Otv As varchar(25))+''') 
  66816.                 OR (TD.DaliFisc<>''D'' AND D.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''))
  66817.                 And ((TD.DaliFisc=''D'' AND D.Dat_Pec_Fisc is not null AND D.Dat_Pec_Fisc<='''+Cast(@Datum_Do As varchar(25))+''') 
  66818.                 OR (TD.DaliFisc<>''D'' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''')) '
  66819.     If @Iskluci_Sifri_Prim IS NOT NULL
  66820.         Set @SSQL = @SSQL + ' And (D.Sifra_Prim NOT IN (' + @Iskluci_Sifri_Prim + ') OR D.Sifra_Prim IS NULL) '
  66821.     If @PoNabCenaStavr = 'D'       -- dodadeno 13.05.05 za zito vane
  66822.     Begin
  66823.         If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66824.             Set @SSQL = @SSQL + ' Group By D.Sifra_Oe, D.Sifra_Nal, '
  66825.         Else 
  66826.             Set @SSQL = @SSQL + ' Group By D.Sifra_Dok, '
  66827.         Set @SSQL = @SSQL + ' TD.ImeDok, D.Kto, TD.Opis_TKNG, '
  66828.         IF @PecFisc_PoDatPec    = 'N'
  66829.             Set @SSQL = @SSQL + 'D.Datum_Dok, '
  66830.         Else
  66831.             Set @SSQL = @SSQL + ' (Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then D.Dat_Pec_Fisc Else D.Datum_Dok End), '
  66832. --            Set @SSQL = @SSQL + 'Case When D.Pec_Fisc>0 Then D.Dat_Pec_Fisc Else D.Datum_Dok End, '
  66833.         If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66834.             Set @SSQL = @SSQL + ' D.Broj_Nal, '
  66835.         Else 
  66836.             Set @SSQL = @SSQL + ' D.Broj_Dok, '
  66837.         Set @SSQL = @SSQL + ' D.Identif_Br, D.VlIzl , D.ImaDodatna, D.Toc200 '
  66838.     End
  66839.     IF @Tip813='D'                    --dodadeno 07.09.04
  66840.     Begin
  66841.         If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66842.             Set @SSQL = @SSQL + ' Union ALL Select A.Sifra_Oe, A.Sifra_Nal, ' 
  66843.         Else
  66844.             Set @SSQL = @SSQL + ' Union ALL Select Null as Sifra_Oe, A.Sifra_Dok, '
  66845.         Set @SSQL = @SSQL + ' TD.ImeDok, A.Kto, TD.Opis_TKNG,   
  66846.             A.Datum_Dok Datum_Dok,
  66847.             A.Datum_Dok Datum_Knz, '
  66848.         If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66849.             Set @SSQL = @SSQL + ' Cast(A.Broj_Nal as varchar(10)) Broj, '
  66850.         Else
  66851.             Set @SSQL = @SSQL + ' Cast(A.Sifra_Dok As Varchar(6)) + ''-'' + Cast(A.Broj_Dok As Varchar(6)) Broj, '
  66852.         Set @SSQL = @SSQL + ' A.BrojDok, ''A'', ''K'' VlIzl, 0.0 AS ProdVredn, 0.0 AS NabVred, 0.0 AS VkalkDan, 0.0 AS ObvrskaDan,
  66853.             Pobaruva AS VrednProd 
  66854.             From AnFinDok A
  66855.             Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66856.             Where A.Sifra_Dok=813 AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' 
  66857.                 And A.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''
  66858.                 And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  66859.     End
  66860.     IF @Tip450='D'                    --dodadeno 07.09.04
  66861.     Begin
  66862.         If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66863.             Set @SSQL = @SSQL + ' Union ALL Select A.Sifra_Oe, A.Sifra_Nal, ' 
  66864.         Else
  66865.             Set @SSQL = @SSQL + ' Union ALL Select Null as Sifra_Oe, A.Sifra_Dok, '
  66866.         Set @SSQL = @SSQL + ' TD.ImeDok, A.Kto, TD.Opis_TKNG,   
  66867.             A.Datum_Dok Datum_Dok,
  66868.             A.Datum_Dok Datum_Knz, '
  66869.         If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66870.             Set @SSQL = @SSQL + ' Cast(A.Broj_Nal as varchar(10)) Broj, '
  66871.         Else
  66872.             Set @SSQL = @SSQL + ' Cast(A.Sifra_Dok As Varchar(6)) + ''-'' + Cast(A.Broj_Dok As Varchar(6)) Broj, '
  66873.         Set @SSQL = @SSQL + ' A.BrojDok, ''A'', ''K'' VlIzl, 0.0 AS ProdVredn, 0.0 AS NabVred, 0.0 AS VkalkDan, 0.0 AS ObvrskaDan,
  66874.             Pobaruva AS VrednProd 
  66875.             From AnFinDok A
  66876.             Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  66877.             Where A.Sifra_Dok=450 AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' 
  66878.                 And A.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''
  66879.                 And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  66880.     End
  66881.     If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66882.         Set @SSQL = @SSQL + ' Union ALL Select Sifra_Oe, Null as Sifra_Dok, ' 
  66883.     Else
  66884.         Set @SSQL = @SSQL + ' Union ALL Select Null as Sifra_Oe, Null as Sifra_Dok, '
  66885.     Set @SSQL = @SSQL + ' Null as ImeDok, Null as Kto, Null as Opis_TKNG, KT.Datum_Dok, KT.Datum_Knz, '
  66886.     If @RezVoTab_PoNalozi = 'D'  -- ova e za isklucitelni slucai
  66887.         Set @SSQL = @SSQL + ' Null as Broj, '
  66888.     Else 
  66889.         Set @SSQL = @SSQL + ' KT.Broj, '
  66890.     Set @SSQL = @SSQL + ' KT.Opis, ''K'',''K'' VlIzl, KT.ProdVredn, KT.NabVred, KT.VkalkDan, KT.ObvrskaDan, KT.VrednProd 
  66891.             From KnigaTrg KT 
  66892.             Where     KT.Sifra_OE=' +  + Cast(@Sifra_OE As Varchar(5)) + ' 
  66893.             And KT.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''
  66894.             And KT.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  66895.     If @Dali_902 = 'D'
  66896.     Begin
  66897.         Set @SSQL = @SSQL + 'Union ALL '
  66898.         If @RezVoTab_PoNalozi = 'D'
  66899.             Set @SSQL = @SSQL + ' Select R.Sifra_Oe, R.Sifra_Nal as Sifra_Dok, '
  66900.         Else 
  66901.             Set @SSQL = @SSQL + ' Select Null as Sifra_Oe, Null as Sifra_Dok, ' 
  66902.         Set @SSQL = @SSQL + ' Null as ImeDok, Null as Kto, Null as Opis_TKNG,  
  66903.                     R.Datum_Dok Datum_Dok,
  66904.                     R.Datum_Dok Datum_Knz, '
  66905.         If @RezVoTab_PoNalozi = 'D'
  66906.             Set @SSQL = @SSQL + ' Cast(R.Broj_Nal as varchar(10)) as Broj, '
  66907.         Else
  66908.             Set @SSQL = @SSQL + ' Cast(R.Sifra_Razl As Char(3)) Broj, '
  66909.         Set @SSQL = @SSQL + ' '''' Opis, ''R'', ''R'' VlIzl,
  66910.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''D'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''D'')) * R.Kolic) As ProdVredn,
  66911.                 0 as NabVred,
  66912.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) As VkalkVredn,
  66913.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) As ObvrskaVredn,
  66914.                 0.0 As VrednProd
  66915.             From RazlCeni R
  66916.             Inner Join Katart K On K.Sifra_Art=R.Sifra_Art And K.SMatUsl=''M'' 
  66917.             Where R.Sifra_Razl=902 And
  66918.                 R.Datum_Dok>=''' + Cast(@Datum_Otv As Varchar(25)) + ''' And
  66919.                 R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' And
  66920.                 R.Sifra_OE=' +  + Cast(@Sifra_OE As Varchar(5)) + ' 
  66921.             Group By R.Sifra_OE, R.Sifra_Razl, R.Datum_Dok '
  66922.         If @RezVoTab_PoNalozi = 'D'
  66923.             Set @SSQL = @SSQL + ', R.Sifra_Nal, R.Broj_Nal '
  66924.         Set @SSQL = @SSQL + ' Having  (Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''D'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''D'')) * R.Kolic) <> 0
  66925.                 Or Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) <> 0
  66926.                 Or Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) <> 0) '
  66927.     End
  66928.     If @Dali_903 = 'D'
  66929.     Begin
  66930.         Set @SSQL = @SSQL + 'Union ALL '
  66931.         If @RezVoTab_PoNalozi = 'D'
  66932.             Set @SSQL = @SSQL + ' Select R.Sifra_Oe, R.Sifra_Nal as Sifra_Dok, '
  66933.         Else 
  66934.             Set @SSQL = @SSQL + ' Select Null as Sifra_Oe, Null as Sifra_Dok, ' 
  66935.         Set @SSQL = @SSQL + ' Null as ImeDok, Null as Kto, Null as Opis_TKNG, 
  66936.                     R.Datum_Dok Datum_Dok,
  66937.                     R.Datum_Dok Datum_Knz, '
  66938.         If @RezVoTab_PoNalozi = 'D'
  66939.             Set @SSQL = @SSQL + ' Cast(R.Broj_Nal as varchar(10)) as Broj, '
  66940.         Else
  66941.             Set @SSQL = @SSQL + ' Cast(R.Sifra_Razl As Char(3)) Broj, '
  66942.         Set @SSQL = @SSQL + ' '''' Opis, ''R'', ''R'' VlIzl,
  66943.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''D'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''D'')) * R.Kolic) As ProdVredn,
  66944.                 0 as NabVred,
  66945.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) VkalkVredn,
  66946.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) ObvrskaVredn,
  66947.                 0.0 As VrednProd
  66948.             From RazlCeni R
  66949.             Inner Join Katart K On K.Sifra_Art=R.Sifra_Art And K.SMatUsl=''M'' '
  66950.         If @RazlCeniSamoTKdok = 'D'
  66951.             Set @SSQL = @SSQL + ' Inner Join TipDok TD On TD.Sifra_Dok=R.Orig_Dok And TD.VoTRG_Knig=''D'' '
  66952.         Set @SSQL = @SSQL + ' Where R.Sifra_Razl=903 And
  66953.                 R.Datum_Dok>=''' + Cast(@Datum_Otv As Varchar(25)) + ''' And
  66954.                 R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' And
  66955.                 R.Sifra_OE=' +  + Cast(@Sifra_OE As Varchar(5)) + '
  66956.             Group By R.Sifra_OE, R.Sifra_Razl, R.Datum_Dok '
  66957.         If @RezVoTab_PoNalozi = 'D'
  66958.             Set @SSQL = @SSQL + ', R.Sifra_Nal, R.Broj_Nal '
  66959.         Set @SSQL = @SSQL + ' Having (Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''D'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''D'')) * R.Kolic) <> 0
  66960.                 Or Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) <> 0
  66961.                 Or Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) <> 0 ) '
  66962.     End
  66963.     If @Dali_904 = 'D'
  66964.     Begin
  66965.         Set @SSQL = @SSQL + 'Union ALL '
  66966.         If @RezVoTab_PoNalozi = 'D'
  66967.             Set @SSQL = @SSQL + ' Select R.Sifra_Oe, R.Sifra_Nal as Sifra_Dok, '
  66968.         Else 
  66969.             Set @SSQL = @SSQL + ' Select Null as Sifra_Oe, Null as Sifra_Dok, ' 
  66970.         Set @SSQL = @SSQL + ' Null as ImeDok, Null as Kto, Null as Opis_TKNG, 
  66971.                     R.Datum_Dok Datum_Dok,
  66972.                     R.Datum_Dok Datum_Knz, '
  66973.         If @RezVoTab_PoNalozi = 'D'
  66974.             Set @SSQL = @SSQL + ' Cast(R.Broj_Nal as varchar(10)) as Broj, '
  66975.         Else
  66976.             Set @SSQL = @SSQL + ' Cast(R.Sifra_Razl As Char(3)) Broj, '
  66977.         Set @SSQL = @SSQL + ' '''' Opis, ''R'', ''R'' VlIzl,
  66978.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''D'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''D'')) * R.Kolic) As ProdVredn,
  66979.                 0 as NabVred,
  66980.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) VkalkVredn,
  66981.                 Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) ObvrskaVredn,
  66982.                 0.0 As VrednProd
  66983.             From RazlCeni R
  66984.             Inner Join Katart K On K.Sifra_Art=R.Sifra_Art And K.SMatUsl=''M'' '
  66985.         If @RazlCeniSamoTKdok = 'D'
  66986.             Set @SSQL = @SSQL + ' Inner Join TipDok TD On TD.Sifra_Dok=R.Orig_Dok And TD.VoTRG_Knig=''D'' '
  66987.         Set @SSQL = @SSQL + ' Where R.Sifra_Razl=904 And
  66988.                 R.Datum_Dok>=''' + Cast(@Datum_Otv As Varchar(25)) + ''' And
  66989.                 R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' And
  66990.                 R.Sifra_OE=' +  + Cast(@Sifra_OE As Varchar(5)) + '
  66991.             Group By R.Sifra_OE, R.Sifra_Razl, R.Datum_Dok '
  66992.         If @RezVoTab_PoNalozi = 'D'
  66993.             Set @SSQL = @SSQL + ', R.Sifra_Nal, R.Broj_Nal '
  66994.         Set @SSQL = @SSQL + ' Having (Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''D'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''D'')) * R.Kolic) <> 0
  66995.                 Or Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) <> 0
  66996.                 Or Sum((dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''N'') - dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''N'')) * R.Kolic * (R.POsn/100)) <> 0) '
  66997.     End
  66998.     Set @SSQL = @SSQL + 'Order By Datum_Dok Asc, D.VlIzl Desc, Broj Asc '
  66999. print @SSQL
  67000.     Insert #tmpKniga(Sifra_Oe, Sifra_Dok, ImeDok, Kto, Opis_TKNG, Datum_Dok, Datum_Knz, Broj, Opis, OdKade, VlIzl,
  67001.          ProdVredn, NabVred, VkalkDan, ObvrskaDan, VrednProd) Exec(@SSQL)
  67002. If @Datum_Od > @Datum_Otv
  67003. Begin
  67004.     Select @ProdVredn=Sum(ProdVredn), @NabVred=Sum(NabVred), @VkalkDan=Sum(VkalkDan),
  67005.         @ObvrskaDan=Sum(ObvrskaDan), @VrednProd=Sum(VrednProd)
  67006.     From #tmpKniga Where Datum_Dok<@Datum_Od
  67007. End
  67008. /*Else
  67009.     If @PoNabCenaStavr = 'D'
  67010.         Select InterenBr, Sifra_Dok, ImeDok, Datum_Dok, Datum_Knz, Broj, Opis, OdKade, 
  67011.             Sum(ProdVredn) ProdVredn, Sum(NabVred) NabVred, Sum(VkalkDan) VkalkDan, Sum(ObvrskaDan) ObvrskaDan, Sum(VrednProd) VrednProd
  67012.         From #tmpKniga Where Datum_Dok>=@Datum_Od And Datum_Dok<=@Datum_Do
  67013.         Group By Sifra_Dok, Datum_Dok, Datum_Knz, Broj, Opis, OdKade, ImeDok
  67014.     Else        
  67015. */
  67016.     If @RezVoTab_PoNalozi = 'D'
  67017.     Begin
  67018.         CREATE TABLE ##tmpKnigaTrg
  67019.         (
  67020.             Sifra_Oe smallint,
  67021.             Sifra_Nal smallint,
  67022.             Broj_Nal Varchar(100),
  67023.             Datum_Dok Smalldatetime,
  67024.             Datum_Knz Smalldatetime,
  67025.             Opis Varchar(100),
  67026.             OdKade char(1),
  67027.             ProdVredn Numeric(18, 4),
  67028.             NabVred Numeric(18,4),
  67029.             VkalkDan Numeric(18, 4),
  67030.             ObvrskaDan Numeric(18, 4),
  67031.             VrednProd Numeric(18, 4)
  67032.         )
  67033.         Insert Into ##tmpKnigaTrg 
  67034.         Select Sifra_Oe, Sifra_Dok, Broj, Datum_Dok, Datum_Knz, Opis, OdKade, ProdVredn, NabVred, VkalkDan, ObvrskaDan, VrednProd
  67035.         From #tmpKniga Where Datum_Dok>=@Datum_Od And Datum_Dok<=@Datum_Do
  67036.     End
  67037.     Else
  67038.         Select * From #tmpKniga Where Datum_Dok>=@Datum_Od And Datum_Dok<=@Datum_Do
  67039. Go
  67040. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_knigatrg_diskont]'))
  67041. drop procedure [dbo].[sp_knigatrg_diskont]
  67042.  
  67043. Go
  67044.  
  67045. CREATE             PROCEDURE sp_KnigaTrg_Diskont
  67046.     @Sifra_OE         Smallint,
  67047.     @Datum_Otv         Smalldatetime,
  67048.     @Datum_Od         Smalldatetime,
  67049.     @Datum_Do         Smalldatetime,
  67050.     @Koi_Oe_Diskont    varchar(300) = Null,
  67051.     @PrikaziSoMarza     char(1) = 'N',
  67052.     @ProdVredn         Decimal(18,4) = 0.0 OUTPUT,
  67053.     @NabVred         Decimal(18,4) = 0.0 OUTPUT,
  67054.     @VkalkDan        Decimal(18,4) = 0.0 OUTPUT,
  67055.     @ObvrskaDan         Decimal(18,4) = 0.0 OUTPUT,
  67056.     @VrednProd         Decimal(18,4) = 0.0 OUTPUT
  67057. AS
  67058.     Declare @Tip813 char(1)
  67059.     SELECT @Tip813=VoTRG_Knig FROM TipDok WHERE Sifra_Dok=813
  67060.     Declare @SSQL Varchar(8000)
  67061.     CREATE TABLE #tmpKniga
  67062.     (
  67063.         InterenBr Integer IDENTITY(0, 1),
  67064.         Sifra_Dok smallint,
  67065.         ImeDok    char(40),
  67066.         Kto Char(10),
  67067.         Ispratnica Varchar(50),
  67068.         Datum_Dok Smalldatetime,
  67069.         Datum_Knz Smalldatetime,
  67070.         Broj Varchar(100),
  67071.         Opis Varchar(100),
  67072.         OdKade char(1),
  67073.         ProdVredn Numeric(18, 4),
  67074.         NabVred Numeric(18,4),
  67075.         VkalkDan Numeric(18, 4),
  67076.         ObvrskaDan Numeric(18, 4),
  67077.         VrednProd Numeric(18, 4)
  67078.     )
  67079.     Set @SSQL = 'Select D.Sifra_Dok, TD.ImeDok, D.Kto, D.Ispratnica,
  67080.             Datum_Dok=Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then dbo.fn_VratiDatum(D.Dat_Pec_Fisc) Else D.Datum_Dok End,
  67081.             Datum_Knz=Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then dbo.fn_VratiDatum(D.Dat_Pec_Fisc) Else D.Datum_Dok End, 
  67082.             Cast(D.Sifra_Dok As Varchar(6)) + ''-'' + Cast(D.Broj_Dok As Varchar(9)) Broj, D.Identif_Br, ''D'', 
  67083.             ProdVredn =     Case D.VlIzl
  67084.                     When ''I'' Then 0.0
  67085.                     When ''V'' Then D.MagVrDan    End, 
  67086.             NabVred = Case D.VlIzl
  67087.                     When ''I'' Then 0.0
  67088.                     When ''V'' Then D.Toc200    End, 
  67089.             VkalkDan = Case D.VlIzl
  67090.                     When ''I'' Then 0.0
  67091.                     When ''V'' Then D.PDanok1 + D.PDanok2    End,
  67092.             ObvrskaDan =     Case D.VlIzl
  67093.                     When ''I'' Then 0.0
  67094.                     When ''V'' Then D.PDanok1 + D.PDanok2 - (D.Danok1 + D.Danok2)    End, 
  67095.             VrednProd =     Case D.VlIzl
  67096.                     When ''I'' Then D.Toc200
  67097.                     When ''V'' Then 0.0        End 
  67098.         From Dokr D
  67099.         Inner Join TipDok TD On D.Sifra_Dok=TD.Sifra_Dok And TD.VoTRG_Knig=''D'' 
  67100.         Where D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + '
  67101.         And ((TD.DaliFisc=''D'' AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc) is not null AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc)>='''+Cast(@Datum_Otv As varchar(25))+''') 
  67102.             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''))
  67103.         And ((TD.DaliFisc=''D'' AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc) is not null AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc)<='''+Cast(@Datum_Do As varchar(25))+''') 
  67104.             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''')) '
  67105.     IF @Tip813='D'                    --dodadeno 07.09.04
  67106.     Begin
  67107.     Set @SSQL = @SSQL + ' Union ALL Select A.Sifra_Dok, TD.ImeDok, A.Kto, Null as Ispratnica,
  67108.         A.Datum_Dok Datum_Dok,
  67109.         A.Datum_Dok Datum_Knz,
  67110.         Cast(A.Sifra_Dok As Varchar(6)) + ''-'' + Cast(A.Broj_Dok As Varchar(6)) Broj,
  67111.         A.BrojDok, ''A'', 0.0 AS ProdVredn, 0.0 AS NabVred, 0.0 AS VkalkDan, 0.0 AS ObvrskaDan,
  67112.         Pobaruva AS VrednProd 
  67113.         From AnFinDok A
  67114.         Inner Join TipDok TD On A.Sifra_Dok=TD.Sifra_Dok
  67115.         Where A.Sifra_Dok=813 AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' 
  67116.             And A.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''
  67117.             And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  67118.     End
  67119.         Set @SSQL = @SSQL + ' Union ALL Select Null as Sifra_Dok, Null as ImeDok, Null as Kto, Null as Ispratnica, KT.Datum_Dok, KT.Datum_Knz, KT.Broj, KT.Opis, ''K'', KT.ProdVredn, KT.NabVred, KT.VkalkDan, KT.ObvrskaDan, KT.VrednProd 
  67120.             From KnigaTrg KT 
  67121.             Where     KT.Sifra_OE=' +  + Cast(@Sifra_OE As Varchar(5)) + ' 
  67122.             And KT.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''
  67123.             And KT.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  67124. -- Novoto 
  67125. -- Izlezni dokumenti od bilo koja druga OE ili Gr.Oe ako e vnesena i koi vo TipDok.Disk_Oe = @Sifra_Oe i se prikazuvaat na vleznata strana na kalkulacijata
  67126.     Set @SSQL = @SSQL + ' Union ALL Select D.Sifra_Dok, TD.ImeDok, D.Kto, D.Ispratnica,
  67127.             Datum_Dok=Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then dbo.fn_VratiDatum(D.Dat_Pec_Fisc) Else D.Datum_Dok End,
  67128.             Datum_Knz=Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then dbo.fn_VratiDatum(D.Dat_Pec_Fisc) Else D.Datum_Dok End, 
  67129.             Cast(D.Sifra_Oe As Varchar(6)) + ''-'' + Cast(D.Sifra_Dok As Varchar(6)) + ''/'' + Cast(D.Broj_Dok As Varchar(9)) Broj, D.Identif_Br, ''D'',  '
  67130.     If @PrikaziSoMarza = 'N'
  67131.         Set @SSQL = @SSQL + '
  67132.             ProdVredn =     Case D.VlIzl
  67133.                     When ''I'' Then Sum((S.Kolic*dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)))
  67134.                     When ''V'' Then 0.0    End,
  67135.             NabVred = Case D.VlIzl
  67136.                     When ''I'' Then Sum((S.Kolic*dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)))
  67137.                     When ''V'' Then 0.0    End, '
  67138.     Else
  67139.         Set @SSQL = @SSQL + '
  67140.             ProdVredn =     Case D.VlIzl
  67141.                     When ''I'' Then Sum((S.Kolic*dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)))
  67142.                     When ''V'' Then 0.0    End, 
  67143.             NabVred = Case D.VlIzl
  67144.                     When ''I'' Then Sum((S.Kolic*dbo.fn_VratiCena(S.NabCena, S.Posn, ''N'', ''D'')))
  67145.                     When ''V'' Then 0.0    End, '
  67146.     Set @SSQL = @SSQL + '
  67147.             VkalkDan = Case D.VlIzl
  67148.                     When ''I'' Then 0.0
  67149.                     When ''V'' Then 0.0    End,
  67150.             ObvrskaDan =     Case D.VlIzl
  67151.                     When ''I'' Then 0.0
  67152.                     When ''V'' Then 0.0    End, 
  67153.             VrednProd =     Case D.VlIzl
  67154.                     When ''I'' Then 0.0
  67155.                     When ''V'' Then 0.0        End 
  67156.         From Dokr D
  67157.         Inner Join Stavr S On S.DokrID=D.DokrID
  67158.         Inner Join TipDok TD On D.Sifra_Dok=TD.Sifra_Dok And TD.VoTRG_Knig=''D'' 
  67159.         Where D.Sifra_OE<>' + Cast(@Sifra_OE As Varchar(6)) + '
  67160.         And TD.Disk_Oe = ' + Cast(@Sifra_OE As Varchar(6)) + '
  67161.         And D.VlIzl = ''I''
  67162.         And ((TD.DaliFisc=''D'' AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc) is not null AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc)>='''+Cast(@Datum_Otv As varchar(25))+''') 
  67163.             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok>=''' + Cast(@Datum_Otv As varchar(25)) + '''))
  67164.         And ((TD.DaliFisc=''D'' AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc) is not null AND dbo.fn_VratiDatum(D.Dat_Pec_Fisc)<='''+Cast(@Datum_Do As varchar(25))+''') 
  67165.             OR (TD.DaliFisc<>''D'' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''')) '
  67166.     If @Koi_Oe_Diskont Is Not Null
  67167.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (' + @Koi_Oe_Diskont + ') ' 
  67168.     Set @SSQL = @SSQL + ' Group By D.Sifra_Dok, TD.ImeDok, D.Kto, D.Ispratnica,
  67169.             (Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then dbo.fn_VratiDatum(D.Dat_Pec_Fisc) Else D.Datum_Dok End),
  67170.             (Case When TD.DaliFisc=''D'' And D.Pec_Fisc>0 Then dbo.fn_VratiDatum(D.Dat_Pec_Fisc) Else D.Datum_Dok End), 
  67171.             Cast(D.Sifra_Oe As Varchar(6)) + ''-'' + Cast(D.Sifra_Dok As Varchar(6)) + ''/'' + Cast(D.Broj_Dok As Varchar(9)), D.Identif_Br, D.VlIzl  '
  67172.     Set @SSQL = @SSQL + 'Order By Datum_Dok '
  67173.     Insert #tmpKniga(Sifra_Dok, ImeDok, Kto, Ispratnica, Datum_Dok, Datum_Knz, Broj, Opis, OdKade,
  67174.          ProdVredn, NabVred, VkalkDan, ObvrskaDan, VrednProd) Exec(@SSQL)
  67175.     ----------------------------------------------  Pocetna Sostojba ---------------------------------------------------------------------------------------
  67176.     If @Datum_Od > @Datum_Otv
  67177.     Begin
  67178.         Select @ProdVredn=Sum(ProdVredn), @NabVred=Sum(NabVred), @VkalkDan=Sum(VkalkDan),
  67179.             @ObvrskaDan=Sum(ObvrskaDan), @VrednProd=Sum(VrednProd)
  67180.         From #tmpKniga Where Datum_Dok<@Datum_Od
  67181.     End
  67182.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  67183.     Select * From #tmpKniga Where Datum_Dok>=@Datum_Od And Datum_Dok<=@Datum_Do
  67184.  
  67185.  
  67186.  
  67187. Go
  67188. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_knizen_li_e_dok]'))
  67189. drop procedure [dbo].[sp_knizen_li_e_dok]
  67190.  
  67191. Go
  67192.  
  67193. create PROCEDURE sp_Knizen_Li_E_Dok
  67194.     @DokrId        int,
  67195.     @Broj_Nal    int OUTPUT
  67196. AS
  67197.     select @Broj_Nal = Broj_Nal
  67198.     from Dokr 
  67199.     where DokrId = @DokrId
  67200.  
  67201.  
  67202.  
  67203. Go
  67204. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kodart]'))
  67205. drop procedure [dbo].[sp_kodart]
  67206.  
  67207. Go
  67208.  
  67209. CREATE PROCEDURE sp_KodArt
  67210.     @Sifra_Art As Varchar(20)
  67211. As
  67212.     Select K.Nom From Katart K
  67213.     Where K.Sifra_Art=@Sifra_Art
  67214.     Union
  67215.     Select B.Nom From ABarKod B
  67216.     Where B.Sifra_Art=@Sifra_Art
  67217. Return @@Error
  67218.  
  67219.  
  67220.  
  67221. Go
  67222. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kolic_po_listadok]'))
  67223. drop procedure [dbo].[sp_kolic_po_listadok]
  67224.  
  67225. Go
  67226.  
  67227.  
  67228. CREATE      PROCEDURE sp_Kolic_Po_ListaDok
  67229.     @Sifra_Oe        smallint,
  67230.         @Sifra_Dok        smallint = Null,    -- Veke ne se koristi
  67231.         @Sifra_Dok2        smallint = Null,    -- Veke ne se koristi
  67232.     @Sifra_Dok_List        varchar (100),
  67233.     @Broj_Dok_Lista    varchar(8000)
  67234. AS
  67235.     Declare @SSQL As Varchar(2000)
  67236.     Set @SSQL = ' Select S.Sifra_art, K.Nabavna, Sum(S.Kolic) Kolicina from Stavr S
  67237.                       Inner Join Katart K   on  S.Sifra_Art = K.Sifra_Art '
  67238.     Set @SSQL=@SSQL + ' Where 1=1 '
  67239.     Set @SSQL=@SSQL + ' And S.Sifra_Oe = ' +  Cast(@Sifra_Oe As Varchar(10)) + ' '
  67240.     SET @SSQL = @SSQL + ' AND S.Sifra_Dok in (' + @Sifra_Dok_List + ') '
  67241.     Set @SSQL=@SSQL + ' And S.Broj_Dok IN (' + @Broj_Dok_Lista + ') '
  67242.     Set @SSQL = @SSQL + ' Group By S.Sifra_art, K.Nabavna '  
  67243.     Set @SSQL = @SSQL + 'Order By S.Sifra_Art '
  67244.     Exec(@SSQL)
  67245.  
  67246.  
  67247.  
  67248. Go
  67249. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kolona_daliid]'))
  67250. drop procedure [dbo].[sp_kolona_daliid]
  67251.  
  67252. Go
  67253.  
  67254. CREATE PROCEDURE sp_Kolona_DaliID
  67255.     @Tabela Varchar(20),
  67256.     @Kolona varchar(20),
  67257.     @DaliID Bit OUTPUT
  67258. AS
  67259.     If Exists (select so.name, so.id, so.xtype, sc.name, sc.status
  67260.             from sysobjects so
  67261.             inner join syscolumns sc on so.id=sc.id
  67262.             where sc.status=128 and so.name=@Tabela and sc.name=@Kolona)
  67263.         Set @DaliID=1
  67264.     Else
  67265.         Set @DaliID=0
  67266.  
  67267.  
  67268.  
  67269. Go
  67270. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komercijalisti_naracki_redovnost]'))
  67271. drop procedure [dbo].[sp_komercijalisti_naracki_redovnost]
  67272.  
  67273. Go
  67274.  
  67275.  
  67276.  
  67277. CREATE         PROCEDURE sp_Komercijalisti_Naracki_Redovnost
  67278.     @Sifra_Pat        smallint = Null,
  67279.     @KoiPat        Varchar(10) = Null,
  67280. --    @Sifra_Nar        Varchar(100) = Null,
  67281.     @Datum_Od        smalldatetime = Null,
  67282.     @Datum_Do        smalldatetime = Null
  67283. --    @Datum_Nar_Do    smalldatetime = Null
  67284.  
  67285.  AS
  67286.     Declare @SSQL as varchar(8000)
  67287.     Declare @SSQLUsl as varchar(8000)
  67288.     Set @SSQLUsl = ' '
  67289.  
  67290.     If @Sifra_Pat Is Not Null
  67291.         Set @SSQLUsl = @SSQLUsl + ' And N.Sifra_Oe = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  67292.     If @KoiPat Is Not Null
  67293.         Set @SSQLUsl = @SSQLUsl + ' And N.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiPat + ''') '
  67294.  
  67295.     Create Table #Rez
  67296.     (
  67297.         Sifra_Pat    int,
  67298.         Datum        smalldatetime,
  67299.         PocRabVreme    datetime,
  67300.         Sifra_Kup_Start    char(6),
  67301.         Sifra_Obj_Start    char(6),
  67302.         KrajRabVreme    datetime,
  67303.         Sifra_Kup_Kraj    char(6),
  67304.         Sifra_Obj_Kraj    char(6),
  67305.         BrPoseti    int,
  67306.         BrNaracki    int,
  67307.         BrStavkiNar    int,
  67308.         BrFakturi    int, 
  67309.         BrStavkiFra    int,
  67310.         VrednostNar    decimal(18,4),
  67311.         VrednostFri    decimal(18,4),
  67312.     )
  67313.  
  67314.     Set @SSQL = 'Select N.Sifra_Oe, Cast(Cast(Year(DatumVreme) as varchar(4)) + ''-'' + Cast(Month(DatumVreme) as varchar(2)) + ''-'' + Cast(Day(DatumVreme) as varchar(2)) as smalldatetime),
  67315.              Min(N.DatumVreme), Max(N.DatumVreme), Count(*)
  67316.             From Akcija N
  67317.             Where N.DatumVreme >= ''' + Cast(@Datum_Od as varchar(30)) + ''' And N.DatumVreme < ''' + Cast(@Datum_Do + 1 as varchar(30)) + ''' '
  67318.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By N.Sifra_Oe, Cast(Cast(Year(DatumVreme) as varchar(4)) + ''-'' + Cast(Month(DatumVreme) as varchar(2)) + ''-'' + Cast(Day(DatumVreme) as varchar(2)) as smalldatetime) '
  67319.     Insert Into #Rez (Sifra_Pat, Datum, PocRabVreme, KrajRabVreme, BrPoseti) Exec(@SSQL)
  67320.  
  67321.     Update #Rez Set Sifra_Kup_Start = A.Sifra_Kup, Sifra_Obj_Start = A.Sifra_Obj From Akcija A Where A.Sifra_Oe = #Rez.Sifra_Pat And A.DatumVreme=#Rez.PocRabVreme
  67322.     Update #Rez Set Sifra_Kup_Kraj = A.Sifra_Kup, Sifra_Obj_Kraj = A.Sifra_Obj From Akcija A Where A.Sifra_Oe = #Rez.Sifra_Pat And A.DatumVreme=#Rez.KrajRabVreme
  67323.  
  67324.     Create Table #NarPom
  67325.     ( 
  67326.         Sifra_Pat    int,
  67327.         Datum        smalldatetime,
  67328.         BrNaracki    int,
  67329.         BrStavkiNar    int,
  67330.         BrFakturi    int, 
  67331.         BrStavkiFra    int,
  67332.         VrednostNar    decimal(18,4),
  67333.         VrednostFri    decimal(18,4)
  67334.     )
  67335.  
  67336.     Create Table #Nar
  67337.     ( 
  67338.         Sifra_Pat    int,
  67339.         Datum        smalldatetime,
  67340.         BrNaracki    int,
  67341.         BrStavkiNar    int,
  67342.         BrFakturi    int, 
  67343.         BrStavkiFra    int,
  67344.         VrednostNar    decimal(18,4),
  67345.         VrednostFri    decimal(18,4)
  67346.     )
  67347.     Set @SSQL = '  Select N.Sifra_Oe, N.Datum_Nar, Count(Distinct N.Sifra_Kup + (Case When N.Sifra_Obj Is Not Null Then Cast(N.Sifra_Obj as char(4)) Else '''' End)), 
  67348.             Count(Distinct SN.StaNarID), 0 BrFakturi, 0 BrStavkiNar,
  67349.             Sum(SN.Kolic*(Case When SN.DanDokCena = ''D'' Then SN.DokCena Else (SN.DokCena*(1+SN.Posn/100)) End)*(1-SN.Uces/100)),
  67350.             0 VrednostFri
  67351.             From Naracki N
  67352.             Inner Join StaNarac SN On SN.NarID=N.NarID
  67353.             Where N.Datum_Nar >= ''' +  Cast(@Datum_Od as varchar(30)) + ''' And N.Datum_Nar <= ''' +  Cast(@Datum_Do as varchar(30)) + ''' 
  67354.             And N.Sifra_Nar <= 100 '
  67355.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By N.Sifra_Oe, N.Datum_Nar '
  67356.     Insert Into #NarPom Exec(@SSQL) 
  67357.  
  67358.     Set @SSQL = '  Select N.Sifra_Oe, N.Datum_Nar, 0 BrNaracki, 0 BrStavkiNar,  Count(Distinct D.DokrID), Count(Distinct S.DokID), 0 VrednostNar, 
  67359.             Sum(S.Kolic*(Case When S.DanDokCena = ''D'' Then S.DokCena Else (S.DokCena*(1+S.Posn/100)) End)*(1-S.Uces/100))
  67360.             From Naracki N
  67361.             Inner Join StaNarac SN On SN.NarID=N.NarID
  67362.             Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  67363.             Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  67364.             Where N.Datum_Nar >= ''' +  Cast(@Datum_Od as varchar(30)) + ''' And N.Datum_Nar <= ''' +  Cast(@Datum_Do as varchar(30)) + ''' 
  67365.             And N.Sifra_Nar <= 100  And D.Toc200 > 0 '
  67366.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By N.Sifra_Oe, N.Datum_Nar '
  67367.  
  67368.     Insert Into #NarPom Exec(@SSQL) 
  67369.  
  67370.     Insert Into #Nar Select Sifra_Pat, Datum, sum(BrNaracki), sum(BrStavkiNar), sum(BrFakturi), sum(BrStavkiFra), sum(VrednostNar), sum(VrednostFri)
  67371.     From #NarPom Group By Sifra_Pat, Datum
  67372.  
  67373.     Update #Rez Set BrNaracki = N.BrNaracki, BrStavkiNar=N.BrStavkiNar, BrFakturi=N.BrFakturi, BrStavkiFra=N.BrStavkiFra, VrednostNar=N.VrednostNar, VrednostFri=N.VrednostFri
  67374.     From #Nar N Where N.Sifra_Pat = #Rez.Sifra_Pat And N.Datum=#Rez.Datum
  67375.  
  67376.     Select R.Sifra_Pat, R.Datum, 
  67377.         R.PocRabVreme, R.Sifra_Kup_Start, KS.ImeKup ImeKupStart, R.Sifra_Obj_Start, KOS.ImeObj ImeObjStart,
  67378.         R.KrajRabVreme, R.Sifra_Kup_Kraj, KK.ImeKup ImeKupKraj, R.Sifra_Obj_Kraj, KOK.ImeObj ImeObjKraj,
  67379.         Pat.ImePat, R.BrNaracki, R.BrStavkiNar, R.BrFakturi, R.BrStavkiFra, R.VrednostNar, R.VrednostFri
  67380.     From #Rez R
  67381.     Left Outer Join Patnici Pat On Pat.Sifra_Pat=R.Sifra_Pat
  67382.     Left Outer Join Komint KS On KS.Sifra_Kup=R.Sifra_Kup_Start
  67383.     Left Outer Join Komint KK On KK.Sifra_Kup=R.Sifra_Kup_Kraj
  67384.     Left Outer Join KObjekti KOS On KOS.Sifra_Kup=R.Sifra_Kup_Start And KOS.Sifra_Obj=R.Sifra_Obj_Start
  67385.     Left Outer Join KObjekti KOK On KOK.Sifra_Kup=R.Sifra_Kup_Kraj And KOK.Sifra_Obj=R.Sifra_Obj_Kraj
  67386.     Order by R.Sifra_Pat, R.Datum
  67387. Go
  67388. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet]'))
  67389. drop procedure [dbo].[sp_komint_prethpromet]
  67390.  
  67391. Go
  67392.  
  67393.  
  67394. CREATE      PROCEDURE sp_Komint_PrethPromet
  67395.     @Sifra_Za    Char(1),
  67396.     @Sifra_Kup     Char(6),
  67397.     @KoiFri     Char(1),
  67398.     @Datum_Nal_Od Smalldatetime,
  67399.     @Datum_Nal_Do Smalldatetime,
  67400.     @Datum_Dok_Od Smalldatetime,
  67401.     @Datum_Dok_Do Smalldatetime,
  67402.        @Datum_Dosp_Od Smalldatetime = Null,
  67403.        @Datum_Dosp_Do Smalldatetime = Null,
  67404.     @Kto        Char(6),
  67405.     @Kto2         Char(6) = Null,
  67406.     @KFKto2     Char(1) = 'N', 
  67407.     @Sifra_OE    Smallint,
  67408.     @Koi_OE    Varchar(200),
  67409.     @Sifra_Pat    smallint = Null,
  67410.     @Sifra_Nal    smallint = Null,
  67411.     @Sifra_Div    smallint = Null,
  67412.     @KoiPat    varchar(10) = Null,
  67413.     @Dolzi        Numeric(18,4)  OUTPUT,
  67414.     @Pobaruva    Numeric(18,4)  OUTPUT,
  67415.     @Plateno_Dolzi    Numeric(18,4)  OUTPUT,
  67416.     @Plateno_Pobar Numeric(18,4) OUTPUT,
  67417.     @DolziNeg    Numeric(18,4) = 0 OUTPUT,
  67418.     @PobaruvaNeg    Numeric(18,4) = 0 OUTPUT 
  67419. AS
  67420.    Declare @SSQL Varchar(4000)
  67421.     CREATE TABLE #Preth_Promet
  67422.     (
  67423.     Dolzi        Numeric(18,4),
  67424.     Pobaruva    Numeric(18,4),
  67425.     Plateno_Dolzi    Numeric(18,4),
  67426.     Plateno_Pobar    Numeric(18,4),
  67427.     DolziNeg    Numeric(18,4),
  67428.     PobaruvaNeg    Numeric(18,4)
  67429.     )
  67430.     SET @SSQL = 'SELECT Sum(A.Dolzi) Dolzi, Sum(A.Pobaruva) Pobaruva, 
  67431.         Sum(A.Plateno_Dolzi) Plateno_Dolzi, Sum(A.Plateno_Pobar) Plateno_Pobar,
  67432.         Sum( Case WHEN Dolzi < 0 Then Dolzi  Else 0 End) DolziNeg,
  67433.         Sum( Case WHEN Pobaruva < 0 Then Pobaruva Else 0 End) PobaruvaNeg 
  67434.         FROM AnFinDok A
  67435.         WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  67436.     If @Datum_Dok_Od Is NOT Null
  67437.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  67438.     If @Datum_Dok_Do Is NOT Null
  67439.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  67440.     If @Datum_Nal_Od Is NOT Null
  67441.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  67442.     If @Datum_Nal_Do Is NOT Null
  67443.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  67444.     If @Datum_Dosp_Od Is Not Null
  67445.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  67446.     If @Datum_Dosp_Do Is Not Null
  67447.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  67448.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  67449.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  67450.     Else If @Sifra_Za = '0'
  67451.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  67452.     If @KoiFri = 'P'
  67453.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  67454.     Else If @KoiFri = 'N'
  67455.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  67456.     Else If @KoiFri = 'R'
  67457.         Set @SSQL = @SSQL + 'AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) and  (A.Plateno_Dolzi = 0 and A.Plateno_Pobar = 0) '  -- Logikata ne e bas dobra (stavena e da ne prikazuva nisto)
  67458.     Else If @KoiFri = 'M'
  67459.         Set @SSQL = @SSQL + 'AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) '  -- site stavki koi sto se delumno ili celosno plateni (zaradi slozuvanje so sp_Kart_ZatvStavki)
  67460.     If @Kto Is NOT Null  and @Kto2 Is Null
  67461.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  67462.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  67463.     Begin
  67464.         If @KFKto2 = 'D'
  67465.             SET @SSQL = @SSQL + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  67466.         Else
  67467.             SET @SSQL = @SSQL + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  67468.     End
  67469.     If @Kto Is Null  and @Kto2 Is Not Null
  67470.     Begin
  67471.         If @KFKto2 = 'D'
  67472.             SET @SSQL = @SSQL + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  67473.         Else
  67474.             SET @SSQL = @SSQL + 'AND A.Kto = ''' + @Kto2 + ''' '
  67475.     End
  67476.     If @Sifra_Pat Is NOT Null
  67477.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  67478.     If @KoiPat IS NOT NULL
  67479.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  67480.     If @Sifra_Div Is Not Null
  67481.         SET @SSQL = @SSQL + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  67482.     If @Sifra_Nal Is NOT Null
  67483.         SET @SSQL = @SSQL + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  67484.     If @Sifra_OE Is NOT Null
  67485.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  67486.     If @Koi_OE Is Not Null
  67487.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  67488.     INSERT INTO #Preth_Promet EXEC(@SSQL)
  67489.     SELECT @Dolzi=Dolzi, @Pobaruva=Pobaruva,
  67490.         @Plateno_Dolzi=Plateno_Dolzi, @Plateno_Pobar=Plateno_Pobar, 
  67491.         @DolziNeg=DolziNeg, @PobaruvaNeg=PobaruvaNeg
  67492.     FROM #Preth_Promet
  67493.     SET @Dolzi=ISNULL(@Dolzi,0)
  67494.     SET @Pobaruva=ISNULL(@Pobaruva,0)
  67495.     SET @Plateno_Dolzi=ISNULL(@Plateno_Dolzi,0)
  67496.     SET @Plateno_Pobar=ISNULL(@Plateno_Pobar,0)
  67497.     SET @DolziNeg=ISNULL(@DolziNeg,0)
  67498.     SET @PobaruvaNeg=ISNULL(@PobaruvaNeg,0)
  67499.  
  67500.  
  67501.  
  67502.  
  67503. Go
  67504. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet_dev]'))
  67505. drop procedure [dbo].[sp_komint_prethpromet_dev]
  67506.  
  67507. Go
  67508.  
  67509.  
  67510.  
  67511. CREATE     PROCEDURE sp_Komint_PrethPromet_Dev
  67512.     @Sifra_Za Char(1),
  67513.     @Sifra_Kup Char(6),
  67514.     @KoiFri Char(1),
  67515.     @Datum_Nal_Od Smalldatetime,
  67516.     @Datum_Nal_Do Smalldatetime,
  67517.     @Datum_Dok_Od Smalldatetime,
  67518.     @Datum_Dok_Do Smalldatetime,
  67519.     @Kto Char(6),
  67520.     @Sifra_OE Smallint,
  67521.     @KojaVal char(3) = Null,
  67522.     @Sifra_Div smallint = Null
  67523. AS
  67524.     Declare @SSQL Varchar(2000)
  67525.     SET @SSQL = 'SELECT Sum(A.Dolzi) Dolzi,
  67526.                   Sum(A.Pobaruva) Pobaruva, 
  67527.                   Sum(A.Plateno_Dolzi) Plateno_Dolzi,
  67528.                   Sum(A.Plateno_Pobar) Plateno_Pobar,
  67529.                   Sum(A.Dev_Dolzi) Dev_Dolzi,
  67530.                   Sum(A.Dev_Pobaruva) Dev_Pobaruva, 
  67531.                   Sum(A.Dev_Plat_Dolzi) Dev_Plat_Dolzi,
  67532.                   Sum(A.Dev_Plat_Pobar) Dev_Plat_Pobar,
  67533.                   V.ImeVal, Null as Sifra_Div
  67534.         FROM AnFinDok A
  67535.         INNER JOIN TipDok TD On A.Sifra_Dok=TD.Sifra_Dok And TD.Dev=''D''
  67536.         Inner Join KrsLista V On A.KojaVal=V.SImeVal
  67537.           WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  67538.     If @Datum_Dok_Od Is NOT Null
  67539.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  67540.     If @Datum_Dok_Do Is NOT Null
  67541.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  67542.     If @Datum_Nal_Od Is NOT Null
  67543.        SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  67544.     If @Datum_Nal_Do Is NOT Null
  67545.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  67546.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  67547.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  67548.     Else If @Sifra_Za = '0'
  67549.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  67550.     If @KoiFri = 'P'
  67551.         Set @SSQL = @SSQL + 'AND A.Dev_Dolzi=A.Dev_Plat_Dolzi AND A.Dev_Pobaruva=A.Dev_Plat_Pobar '
  67552.     Else If @KoiFri = 'N'
  67553.         Set @SSQL = @SSQL + 'AND (A.Dev_Dolzi<>A.Dev_Plat_Dolzi OR A.Dev_Pobaruva<>A.Dev_Plat_Pobar) '
  67554.     If @Kto Is NOT Null 
  67555.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  67556.     If @Sifra_OE Is NOT Null
  67557.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  67558.     If @KojaVal IS NOT NULL
  67559.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  67560.     If @Sifra_Div Is Not Null
  67561.         SET @SSQL = @SSQL + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  67562.     Set @SSQL = @SSQL + 'Group By V.ImeVal '
  67563.     EXEC(@SSQL)
  67564.  
  67565.  
  67566.  
  67567.  
  67568. Go
  67569. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet_dev_divizii]'))
  67570. drop procedure [dbo].[sp_komint_prethpromet_dev_divizii]
  67571.  
  67572. Go
  67573.  
  67574.  
  67575.  
  67576. CREATE     PROCEDURE sp_Komint_PrethPromet_Dev_Divizii
  67577.     @Sifra_Za Char(1),
  67578.     @Sifra_Kup Char(6),
  67579.     @KoiFri Char(1),
  67580.     @Datum_Nal_Od Smalldatetime,
  67581.     @Datum_Nal_Do Smalldatetime,
  67582.     @Datum_Dok_Od Smalldatetime,
  67583.     @Datum_Dok_Do Smalldatetime,
  67584.     @Kto Char(6),
  67585.     @Sifra_OE Smallint,
  67586.     @KojaVal char(3) = Null,
  67587.     @Sifra_Div smallint = Null
  67588. AS
  67589.     Declare @SSQL Varchar(8000)
  67590.     SET @SSQL = 'SELECT Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else A.Dolzi End) Dolzi,
  67591.             Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else A.Pobaruva End) Pobaruva, 
  67592.             Sum(A.Plateno_Dolzi) Plateno_Dolzi,
  67593.             Sum(A.Plateno_Pobar) Plateno_Pobar,
  67594.             Sum(Case When A.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / A.Kurs Else A.Dev_Dolzi End) Dev_Dolzi,
  67595.             Sum(Case When A.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / A.Kurs Else A.Dev_Pobaruva End) Dev_Pobaruva, 
  67596.             Sum(A.Dev_Plat_Dolzi) Dev_Plat_Dolzi,
  67597.             Sum(A.Dev_Plat_Pobar) Dev_Plat_Pobar,
  67598.             V.ImeVal, GD.Sifra_Div
  67599.         FROM AnFinDok A
  67600.         INNER JOIN TipDok TD On A.Sifra_Dok=TD.Sifra_Dok And TD.Dev=''D''
  67601.         LEFT OUTER JOIN GstAnDiv GD On GD.AnID=A.AnID
  67602.         Inner Join KrsLista V On A.KojaVal=V.SImeVal
  67603.         WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  67604.     If @Datum_Dok_Od Is NOT Null
  67605.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  67606.     If @Datum_Dok_Do Is NOT Null
  67607.         SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  67608.     If @Datum_Nal_Od Is NOT Null
  67609.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  67610.     If @Datum_Nal_Do Is NOT Null
  67611.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  67612.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  67613.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  67614.     Else If @Sifra_Za = '0'
  67615.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  67616.     If @KoiFri = 'P'
  67617.         Set @SSQL = @SSQL + 'AND A.Dev_Dolzi=A.Dev_Plat_Dolzi AND A.Dev_Pobaruva=A.Dev_Plat_Pobar '
  67618.     Else If @KoiFri = 'N'
  67619.         Set @SSQL = @SSQL + 'AND (A.Dev_Dolzi<>A.Dev_Plat_Dolzi OR A.Dev_Pobaruva<>A.Dev_Plat_Pobar) '
  67620.     If @Kto Is NOT Null 
  67621.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  67622.     If @Sifra_OE Is NOT Null
  67623.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  67624.     If @KojaVal IS NOT NULL
  67625.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  67626.     If @Sifra_Div Is Not Null
  67627.         SET @SSQL = @SSQL + ' AND GD.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  67628.     Set @SSQL = @SSQL + 'Group By V.ImeVal, GD.Sifra_Div '
  67629.     EXEC(@SSQL)
  67630.  
  67631.  
  67632.  
  67633.  
  67634. Go
  67635. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet_dev_m]'))
  67636. drop procedure [dbo].[sp_komint_prethpromet_dev_m]
  67637.  
  67638. Go
  67639.  
  67640. CREATE     PROCEDURE sp_Komint_PrethPromet_Dev_M
  67641.     @Sifra_Za Char(1),
  67642.     @Sifra_Kup Char(6),
  67643.     @KoiFri Char(1),
  67644.     @Datum_Nal_Od Smalldatetime,
  67645.     @Datum_Nal_Do Smalldatetime,
  67646.     @Datum_Dok_Od Smalldatetime,
  67647.     @Datum_Dok_Do Smalldatetime,
  67648.     @Kto Char(6),
  67649.     @Sifra_OE Smallint,
  67650.     @KojaVal char(3) = Null,
  67651.     @Sifra_Div smallint = Null
  67652. AS
  67653.     Declare @SSQL Varchar(8000)
  67654.     SET @SSQL = 'SELECT Sum(A.Dolzi) Dolzi,
  67655.                 Sum(A.Pobaruva) Pobaruva, 
  67656.                 Sum(A.Plateno_Dolzi) Plateno_Dolzi,
  67657.                 Sum(A.Plateno_Pobar) Plateno_Pobar,
  67658.                 Sum(A.Dev_Dolzi) Dev_Dolzi,
  67659.                 Sum(A.Dev_Pobaruva) Dev_Pobaruva, 
  67660.                 Sum(A.Dev_Plat_Dolzi) Dev_Plat_Dolzi,
  67661.                 Sum(A.Dev_Plat_Pobar) Dev_Plat_Pobar,
  67662.                 V.ImeVal, Null as Sifra_Div
  67663.         FROM AnFinDok A
  67664.         INNER JOIN TipDok TD On A.Sifra_Dok=TD.Sifra_Dok And TD.Dev=''D''
  67665.         Inner Join KrsLista V On A.KojaVal=V.SImeVal
  67666.         WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  67667.     If @Datum_Dok_Od Is NOT Null
  67668.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  67669.     If @Datum_Dok_Do Is NOT Null
  67670.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  67671.     If @Datum_Nal_Od Is NOT Null
  67672.        SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  67673.     If @Datum_Nal_Do Is NOT Null
  67674.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  67675.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  67676.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  67677.     Else If @Sifra_Za = '0'
  67678.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  67679.     If @KoiFri = 'P'
  67680.         Set @SSQL = @SSQL + 'AND A.Dev_Dolzi=A.Dev_Plat_Dolzi AND A.Dev_Pobaruva=A.Dev_Plat_Pobar '
  67681.     Else If @KoiFri = 'N'
  67682.         Set @SSQL = @SSQL + 'AND (A.Dev_Dolzi<>A.Dev_Plat_Dolzi OR A.Dev_Pobaruva<>A.Dev_Plat_Pobar) '
  67683.     If @Kto Is NOT Null 
  67684.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  67685.     If @Sifra_OE Is NOT Null
  67686.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  67687.     If @KojaVal IS NOT NULL
  67688.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  67689.     If @Sifra_Div Is Not Null
  67690.         SET @SSQL = @SSQL + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  67691.     Set @SSQL = @SSQL + 'Group By V.ImeVal '
  67692.     EXEC(@SSQL)
  67693.  
  67694.  
  67695.  
  67696. Go
  67697. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet_dev_m_divizii]'))
  67698. drop procedure [dbo].[sp_komint_prethpromet_dev_m_divizii]
  67699.  
  67700. Go
  67701.  
  67702.  
  67703.  
  67704. CREATE      PROCEDURE sp_Komint_PrethPromet_Dev_M_Divizii
  67705.     @Sifra_Za Char(1),
  67706.     @Sifra_Kup Char(6),
  67707.     @KoiFri Char(1),
  67708.     @Datum_Nal_Od Smalldatetime,
  67709.     @Datum_Nal_Do Smalldatetime,
  67710.     @Datum_Dok_Od Smalldatetime,
  67711.     @Datum_Dok_Do Smalldatetime,
  67712.     @Kto Char(6),
  67713.     @Sifra_OE Smallint,
  67714.     @KojaVal char(3) = Null,
  67715.     @Sifra_Div smallint = Null
  67716. AS
  67717.     Declare @SSQL Varchar(8000)
  67718.     SET @SSQL = 'SELECT
  67719.             Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else A.Dolzi End) Dolzi,
  67720.             Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else A.Pobaruva End) Pobaruva, 
  67721.             Sum(A.Plateno_Dolzi) Plateno_Dolzi,
  67722.             Sum(A.Plateno_Pobar) Plateno_Pobar,
  67723.             Sum(Case When A.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / A.Kurs Else A.Dev_Dolzi End) Dev_Dolzi,
  67724.             Sum(Case When A.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / A.Kurs Else A.Dev_Pobaruva End) Dev_Pobaruva, 
  67725.             Sum(A.Dev_Plat_Dolzi) Dev_Plat_Dolzi,
  67726.             Sum(A.Dev_Plat_Pobar) Dev_Plat_Pobar,
  67727.             V.ImeVal, GD.Sifra_Div
  67728.         FROM AnFinDok A
  67729.         INNER JOIN TipDok TD On A.Sifra_Dok=TD.Sifra_Dok And TD.Dev=''D''
  67730.         Inner Join KrsLista V On A.KojaVal=V.SImeVal
  67731.         LEFT OUTER JOIN GstAnDiv GD On GD.AnID=A.AnID
  67732.         WHERE A.Sifra_Kup=' + @Sifra_Kup + ' '
  67733.     If @Datum_Dok_Od Is NOT Null
  67734.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  67735.     If @Datum_Dok_Do Is NOT Null
  67736.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  67737.     If @Datum_Nal_Od Is NOT Null
  67738.        SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  67739.     If @Datum_Nal_Do Is NOT Null
  67740.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  67741.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  67742.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  67743.     Else If @Sifra_Za = '0'
  67744.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  67745.     If @KoiFri = 'P'
  67746.         Set @SSQL = @SSQL + 'AND A.Dev_Dolzi=A.Dev_Plat_Dolzi AND A.Dev_Pobaruva=A.Dev_Plat_Pobar '
  67747.     Else If @KoiFri = 'N'
  67748.         Set @SSQL = @SSQL + 'AND (A.Dev_Dolzi<>A.Dev_Plat_Dolzi OR A.Dev_Pobaruva<>A.Dev_Plat_Pobar) '
  67749.     If @Kto Is NOT Null 
  67750.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  67751.     If @Sifra_OE Is NOT Null
  67752.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  67753.     If @KojaVal IS NOT NULL
  67754.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  67755.     If @Sifra_Div Is Not Null
  67756.         SET @SSQL = @SSQL + ' AND GD.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  67757.     Set @SSQL = @SSQL + 'Group By V.ImeVal, GD.Sifra_Div '
  67758.     EXEC(@SSQL)
  67759.  
  67760.  
  67761.  
  67762.  
  67763. Go
  67764. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet_divizii]'))
  67765. drop procedure [dbo].[sp_komint_prethpromet_divizii]
  67766.  
  67767. Go
  67768.  
  67769. CREATE     PROCEDURE sp_Komint_PrethPromet_Divizii
  67770.     @Sifra_Za    Char(1),
  67771.     @Sifra_Kup     Char(6),
  67772.     @KoiFri     Char(1),
  67773.     @Datum_Nal_Od Smalldatetime,
  67774.     @Datum_Nal_Do Smalldatetime,
  67775.     @Datum_Dok_Od Smalldatetime,
  67776.     @Datum_Dok_Do Smalldatetime,
  67777.        @Datum_Dosp_Od Smalldatetime = Null,
  67778.        @Datum_Dosp_Do Smalldatetime = Null,
  67779.     @Kto        Char(6),
  67780.     @Kto2         Char(6) = Null,
  67781.     @KFKto2     Char(1) = 'N', 
  67782.     @Sifra_OE    Smallint,
  67783.     @Koi_OE    Varchar(200),
  67784.     @Sifra_Pat    smallint = Null,
  67785.     @Sifra_Nal    smallint = Null,
  67786.     @Sifra_Div    smallint = Null,
  67787.     @KoiPat    varchar(10) = Null,
  67788.     @Dolzi        Numeric(18,4)  OUTPUT,
  67789.     @Pobaruva    Numeric(18,4)  OUTPUT,
  67790.     @Plateno_Dolzi    Numeric(18,4)  OUTPUT,
  67791.     @Plateno_Pobar Numeric(18,4) OUTPUT,
  67792.     @DolziNeg    Numeric(18,4) = 0 OUTPUT,
  67793.     @PobaruvaNeg    Numeric(18,4) = 0 OUTPUT 
  67794. AS
  67795.    Declare @SSQL Varchar(4000)
  67796.     CREATE TABLE #Preth_Promet
  67797.     (
  67798.     Dolzi        Numeric(18,4),
  67799.     Pobaruva    Numeric(18,4),
  67800.     Plateno_Dolzi    Numeric(18,4),
  67801.     Plateno_Pobar    Numeric(18,4),
  67802.     DolziNeg    Numeric(18,4),
  67803.     PobaruvaNeg    Numeric(18,4)
  67804.     )
  67805.     SET @SSQL = 'SELECT Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else A.Dolzi End) Dolzi, 
  67806.                 Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else A.Pobaruva End) Pobaruva, 
  67807.                 Sum(A.Plateno_Dolzi) Plateno_Dolzi, Sum(A.Plateno_Pobar) Plateno_Pobar,
  67808.                 Sum(Case WHEN A.Dolzi < 0 Then (Case When GD.Dolzi <> 0 Then GD.Dolzi Else A.Dolzi End) Else 0 End) DolziNeg,
  67809.                 Sum(Case WHEN A.Pobaruva < 0 Then (Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else A.Pobaruva End) Else 0 End) PobaruvaNeg 
  67810.         FROM AnFinDok A
  67811.         LEFT OUTER JOIN GstAnDiv GD On GD.AnID=A.AnID
  67812.         WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  67813.     If @Datum_Dok_Od Is NOT Null
  67814.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  67815.     If @Datum_Dok_Do Is NOT Null
  67816.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  67817.     If @Datum_Nal_Od Is NOT Null
  67818.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  67819.     If @Datum_Nal_Do Is NOT Null
  67820.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  67821.     If @Datum_Dosp_Od Is Not Null
  67822.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  67823.     If @Datum_Dosp_Do Is Not Null
  67824.         Set @SSQL = @SSQL + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  67825.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  67826.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  67827.     Else If @Sifra_Za = '0'
  67828.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  67829.     If @KoiFri = 'P'
  67830.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  67831.     Else If @KoiFri = 'N'
  67832.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  67833.     Else If @KoiFri = 'R'
  67834.         Set @SSQL = @SSQL + 'AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) and  (A.Plateno_Dolzi = 0 and A.Plateno_Pobar = 0) '  -- Logikata ne e bas dobra (stavena e da ne prikazuva nisto)
  67835.     Else If @KoiFri = 'M'
  67836.         Set @SSQL = @SSQL + 'AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) '  -- site stavki koi sto se delumno ili celosno plateni (zaradi slozuvanje so sp_Kart_ZatvStavki)
  67837.     If @Kto Is NOT Null  and @Kto2 Is Null
  67838.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  67839.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  67840.     Begin
  67841.         If @KFKto2 = 'D'
  67842.             SET @SSQL = @SSQL + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  67843.         Else
  67844.             SET @SSQL = @SSQL + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  67845.     End
  67846.     If @Kto Is Null  and @Kto2 Is Not Null
  67847.     Begin
  67848.         If @KFKto2 = 'D'
  67849.             SET @SSQL = @SSQL + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  67850.         Else
  67851.             SET @SSQL = @SSQL + 'AND A.Kto = ''' + @Kto2 + ''' '
  67852.     End
  67853.     If @Sifra_Pat Is NOT Null
  67854.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  67855.     If @KoiPat IS NOT NULL
  67856.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  67857.     If @Sifra_Div Is Not Null
  67858.         SET @SSQL = @SSQL + ' AND GD.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  67859.     If @Sifra_Nal Is NOT Null
  67860.         SET @SSQL = @SSQL + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  67861.     If @Sifra_OE Is NOT Null
  67862.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  67863.     If @Koi_OE Is Not Null
  67864.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  67865.     INSERT INTO #Preth_Promet EXEC(@SSQL)
  67866.     SELECT @Dolzi=Dolzi, @Pobaruva=Pobaruva,
  67867.         @Plateno_Dolzi=Plateno_Dolzi, @Plateno_Pobar=Plateno_Pobar, 
  67868.         @DolziNeg=DolziNeg, @PobaruvaNeg=PobaruvaNeg
  67869.     FROM #Preth_Promet
  67870.     SET @Dolzi=ISNULL(@Dolzi,0)
  67871.     SET @Pobaruva=ISNULL(@Pobaruva,0)
  67872.     SET @Plateno_Dolzi=ISNULL(@Plateno_Dolzi,0)
  67873.     SET @Plateno_Pobar=ISNULL(@Plateno_Pobar,0)
  67874.     SET @DolziNeg=ISNULL(@DolziNeg,0)
  67875.     SET @PobaruvaNeg=ISNULL(@PobaruvaNeg,0)
  67876.  
  67877.  
  67878.  
  67879. Go
  67880. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet_dvebazi]'))
  67881. drop procedure [dbo].[sp_komint_prethpromet_dvebazi]
  67882.  
  67883. Go
  67884.  
  67885. CREATE    PROCEDURE sp_Komint_PrethPromet_DveBazi
  67886.     @Sifra_Za    Char(1)=Null,
  67887.     @Sifra_Kup     Char(6)=Null,
  67888.     @KoiFri     Char(1)=Null,
  67889.     @Datum_Nal_Od Smalldatetime=Null,
  67890.     @Datum_Nal_Do Smalldatetime=Null,
  67891.     @Datum_Dok_Od Smalldatetime=Null,
  67892.     @Datum_Dok_Do Smalldatetime=Null,
  67893.        @Datum_Dosp_Od Smalldatetime = Null,
  67894.        @Datum_Dosp_Do Smalldatetime = Null,
  67895.     @Kto        Char(6)=Null,
  67896.     @Kto2         Char(6) = Null,
  67897.     @KFKto2     Char(1) = 'N', 
  67898.     @Sifra_OE    Smallint=Null,
  67899.     @Koi_OE    Varchar(200)=Null,
  67900.     @Sifra_Pat    smallint = Null,
  67901.     @Baza2    Varchar(15)=Null,
  67902.     @KoiPat    varchar(10)=Null,
  67903.     @Dolzi        Numeric(18,4)  OUTPUT,
  67904.     @Pobaruva    Numeric(18,4)  OUTPUT,
  67905.     @Plateno_Dolzi    Numeric(18,4)  OUTPUT,
  67906.     @Plateno_Pobar Numeric(18,4) OUTPUT,
  67907.     @DolziNeg    Numeric(18,4) = 0 OUTPUT,
  67908.     @PobaruvaNeg    Numeric(18,4) = 0 OUTPUT 
  67909. AS
  67910.     Declare @SSQL Varchar(4000)
  67911.     Declare @SSQLUsl Varchar(4000)
  67912.     Set @SSQLUsl = ' '
  67913.     CREATE TABLE #Preth_Promet
  67914.     (
  67915.     Dolzi        Numeric(18,4),
  67916.     Pobaruva    Numeric(18,4),
  67917.     Plateno_Dolzi    Numeric(18,4),
  67918.     Plateno_Pobar    Numeric(18,4),
  67919.     DolziNeg    Numeric(18,4),
  67920.     PobaruvaNeg    Numeric(18,4)
  67921.     )
  67922.     SET @SSQL = 'SELECT Sum(A.Dolzi) Dolzi, Sum(A.Pobaruva) Pobaruva, 
  67923.         Sum(A.Plateno_Dolzi) Plateno_Dolzi, Sum(A.Plateno_Pobar) Plateno_Pobar,
  67924.         Sum(Case WHEN Dolzi < 0 Then Dolzi  Else 0 End) DolziNeg,
  67925.         Sum(Case WHEN Pobaruva < 0 Then Pobaruva Else 0 End) PobaruvaNeg 
  67926.         FROM AnFinDok A
  67927.         WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  67928.     If @Datum_Dok_Od Is NOT Null
  67929.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  67930.     If @Datum_Dok_Do Is NOT Null
  67931.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  67932.     If @Datum_Nal_Od Is NOT Null
  67933.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  67934.     If @Datum_Nal_Do Is NOT Null
  67935.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  67936.     If @Datum_Dosp_Od Is Not Null
  67937.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  67938.     If @Datum_Dosp_Do Is Not Null
  67939.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  67940.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  67941.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  67942.     Else If @Sifra_Za = '0'
  67943.         Set @SSQLUsl = @SSQLUsl + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  67944.     If @KoiFri = 'P'
  67945.         Set @SSQLUsl = @SSQLUsl + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  67946.     Else If @KoiFri = 'N'
  67947.         Set @SSQLUsl = @SSQLUsl + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  67948.     If @Kto Is NOT Null  and @Kto2 Is Null
  67949.         SET @SSQLUsl = @SSQLUsl + 'AND A.Kto=''' + @Kto + ''' '
  67950.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  67951.     Begin
  67952.         If @KFKto2 = 'D'
  67953.             SET @SSQLUsl = @SSQLUsl + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  67954.         Else
  67955.             SET @SSQLUsl = @SSQLUsl + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  67956.     End
  67957.     If @Kto Is Null  and @Kto2 Is Not Null
  67958.     Begin
  67959.         If @KFKto2 = 'D'
  67960.             SET @SSQLUsl = @SSQLUsl + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  67961.         Else
  67962.             SET @SSQLUsl = @SSQLUsl + 'AND A.Kto = ''' + @Kto2 + ''' '
  67963.     End
  67964.     If @Sifra_Pat Is NOT Null
  67965.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  67966.     If @KoiPat IS NOT NULL
  67967.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  67968.     If @Sifra_OE Is NOT Null
  67969.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  67970.     If @Koi_OE Is Not Null
  67971.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  67972.     INSERT INTO #Preth_Promet EXEC(@SSQL+@SSQLUsl)
  67973.     SET @SSQL = 'SELECT Sum(A.Dolzi) Dolzi, Sum(A.Pobaruva) Pobaruva, 
  67974.         Sum(A.Plateno_Dolzi) Plateno_Dolzi, Sum(A.Plateno_Pobar) Plateno_Pobar,
  67975.         Sum( Case WHEN Dolzi < 0 Then Dolzi  Else 0 End) DolziNeg,
  67976.         Sum( Case WHEN Pobaruva < 0 Then Pobaruva Else 0 End) PobaruvaNeg 
  67977.         FROM ' + @Baza2 + '..AnFinDok A
  67978.         WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  67979.     INSERT INTO #Preth_Promet EXEC(@SSQL+@SSQLUsl)
  67980.     SELECT @Dolzi=Sum(Dolzi), @Pobaruva=Sum(Pobaruva),
  67981.         @Plateno_Dolzi=Sum(Plateno_Dolzi), @Plateno_Pobar=Sum(Plateno_Pobar), 
  67982.         @DolziNeg=Sum(DolziNeg), @PobaruvaNeg=Sum(PobaruvaNeg)
  67983.     FROM #Preth_Promet
  67984.     SET @Dolzi=ISNULL(@Dolzi,0)
  67985.     SET @Pobaruva=ISNULL(@Pobaruva,0)
  67986.     SET @Plateno_Dolzi=ISNULL(@Plateno_Dolzi,0)
  67987.     SET @Plateno_Pobar=ISNULL(@Plateno_Pobar,0)
  67988.     SET @DolziNeg=ISNULL(@DolziNeg,0)
  67989.     SET @PobaruvaNeg=ISNULL(@PobaruvaNeg,0)
  67990.  
  67991.  
  67992.  
  67993. Go
  67994. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prethpromet_sodokoddokr]'))
  67995. drop procedure [dbo].[sp_komint_prethpromet_sodokoddokr]
  67996.  
  67997. Go
  67998.  
  67999.  
  68000. CREATE      PROCEDURE sp_Komint_PrethPromet_SoDokOdDokr
  68001.     @Sifra_Za    Char(1),
  68002.     @Sifra_Kup     Char(6),
  68003.     @KoiFri     Char(1),
  68004.     @Datum_Nal_Od Smalldatetime,
  68005.     @Datum_Nal_Do Smalldatetime,
  68006.     @Datum_Dok_Od Smalldatetime,
  68007.     @Datum_Dok_Do Smalldatetime,
  68008.        @Datum_Dosp_Od Smalldatetime = Null,
  68009.        @Datum_Dosp_Do Smalldatetime = Null,
  68010.     @Kto        Char(6),
  68011.     @Kto2         Char(6) = Null,
  68012.     @KFKto2     Char(1) = 'N', 
  68013.     @Sifra_OE    Smallint,
  68014.     @Koi_OE    Varchar(200),
  68015.     @Sifra_Pat    smallint = Null,
  68016.     @Sifra_Nal    smallint = Null,
  68017.     @Sifra_Div    smallint = Null,
  68018.     @KoiPat    varchar(10) = Null,
  68019.     @Dolzi        Numeric(18,4)  OUTPUT,
  68020.     @Pobaruva    Numeric(18,4)  OUTPUT,
  68021.     @Plateno_Dolzi    Numeric(18,4)  OUTPUT,
  68022.     @Plateno_Pobar Numeric(18,4) OUTPUT,
  68023.     @DolziNeg    Numeric(18,4) = 0 OUTPUT,
  68024.     @PobaruvaNeg    Numeric(18,4) = 0 OUTPUT 
  68025. AS
  68026.     Declare @SSQL Varchar(4000)
  68027.     Declare @SSQLUsl Varchar(4000)
  68028.  
  68029.     Set @SSQLUsl = ' '
  68030.  
  68031.     CREATE TABLE #Preth_Promet
  68032.     (
  68033.     Dolzi        Numeric(18,4),
  68034.     Pobaruva    Numeric(18,4),
  68035.     Plateno_Dolzi    Numeric(18,4),
  68036.     Plateno_Pobar    Numeric(18,4),
  68037.     DolziNeg    Numeric(18,4),
  68038.     PobaruvaNeg    Numeric(18,4)
  68039.     )
  68040.  
  68041.     SET @SSQL = 'SELECT Sum(A.Dolzi) Dolzi, Sum(A.Pobaruva) Pobaruva, 
  68042.         Sum(A.Plateno_Dolzi) Plateno_Dolzi, Sum(A.Plateno_Pobar) Plateno_Pobar,
  68043.         Sum( Case WHEN Dolzi < 0 Then Dolzi  Else 0 End) DolziNeg,
  68044.         Sum( Case WHEN Pobaruva < 0 Then Pobaruva Else 0 End) PobaruvaNeg 
  68045.         FROM AnFinDok A
  68046.         WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  68047.     If @Datum_Nal_Od Is NOT Null
  68048.         SET @SSQL = @SSQL + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68049.     If @Datum_Nal_Do Is NOT Null
  68050.          SET @SSQL = @SSQL + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  68051.     If @KoiFri = 'P'
  68052.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  68053.     Else If @KoiFri = 'N'
  68054.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  68055.     Else If @KoiFri = 'R'
  68056.         Set @SSQL = @SSQL + 'AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) and  (A.Plateno_Dolzi = 0 and A.Plateno_Pobar = 0) '  -- Logikata ne e bas dobra (stavena e da ne prikazuva nisto)
  68057.     Else If @KoiFri = 'M'
  68058.         Set @SSQL = @SSQL + 'AND  (A.Plateno_Dolzi <> 0 Or A.Plateno_Pobar <> 0) '  -- site stavki koi sto se delumno ili celosno plateni (zaradi slozuvanje so sp_Kart_ZatvStavki)
  68059.  
  68060.     If @Datum_Dok_Od Is NOT Null
  68061.         SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68062.     If @Datum_Dok_Do Is NOT Null
  68063.          SET @SSQLUsl = @SSQLUsl + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  68064.     If @Datum_Dosp_Od Is Not Null
  68065.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  68066.     If @Datum_Dosp_Do Is Not Null
  68067.         Set @SSQLUsl = @SSQLUsl + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  68068.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  68069.         Set @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  68070.     Else If @Sifra_Za = '0'
  68071.         Set @SSQLUsl = @SSQLUsl + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  68072.  
  68073.     If @Kto Is NOT Null  and @Kto2 Is Null
  68074.         SET @SSQLUsl = @SSQLUsl + 'AND A.Kto=''' + @Kto + ''' '
  68075.     If @Kto Is NOT Null  and @Kto2 Is Not Null
  68076.     Begin
  68077.         If @KFKto2 = 'D'
  68078.             SET @SSQLUsl = @SSQLUsl + 'AND (A.Kto = ''' + @Kto + ''' or A.Kto <> ''' + @Kto2 + ''') '
  68079.         Else
  68080.             SET @SSQLUsl = @SSQLUsl + 'AND A.Kto in (''' + @Kto + ''', ''' + @Kto2 + ''') '
  68081.     End
  68082.     If @Kto Is Null  and @Kto2 Is Not Null
  68083.     Begin
  68084.         If @KFKto2 = 'D'
  68085.             SET @SSQLUsl = @SSQLUsl + 'AND  A.Kto  <> ''' + @Kto2 + ''' '
  68086.         Else
  68087.             SET @SSQLUsl = @SSQLUsl + 'AND A.Kto = ''' + @Kto2 + ''' '
  68088.     End
  68089.     If @Sifra_Pat Is NOT Null
  68090.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  68091.     If @KoiPat IS NOT NULL
  68092.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  68093.     If @Sifra_Div Is Not Null
  68094.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  68095.     If @Sifra_Nal Is NOT Null
  68096.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  68097.     If @Sifra_OE Is NOT Null
  68098.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  68099.     If @Koi_OE Is Not Null
  68100.         Set @SSQLUsl = @SSQLUsl + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  68101.  
  68102.     Set @SSQL = @SSQL + @SSQLUsl + ' Union '
  68103.  
  68104.     Set @SSQL = @SSQL + ' Select Sum(A.Toc200) Dolzi, Sum(A.Toc200) as Pobaruva, 
  68105.         Sum(A.Toc200) Plateno_Dolzi, Sum(A.Toc200) as Plateno_Pobar,
  68106.         Sum(Case WHEN Toc200 < 0 Then Toc200  Else 0 End) DolziNeg,
  68107.         Sum(Case WHEN Toc200 < 0 Then Toc200  Else 0 End) PobaruvaNeg 
  68108.         FROM Dokr A
  68109.         LEFT OUTER Join Nalozi N On N.Sifra_Nal = A.Sifra_Nal And N.Broj_Nal=A.Broj_Nal
  68110.         WHERE Sifra_Kup=''' + @Sifra_Kup + ''' 
  68111.         And A.Sifra_Dok in (83,84) '
  68112.     If @Datum_Nal_Od Is NOT Null
  68113.         SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68114.     If @Datum_Nal_Do Is NOT Null
  68115.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  68116.     If @KoiFri = 'N'
  68117.         Set @SSQL = @SSQL + 'AND  A.Toc200<>A.Toc200 '
  68118.  
  68119.     Set @SSQL = @SSQL + @SSQLUsl
  68120.  
  68121.     INSERT INTO #Preth_Promet EXEC(@SSQL)
  68122.  
  68123.     SELECT @Dolzi=Dolzi, @Pobaruva=Pobaruva,
  68124.         @Plateno_Dolzi=Plateno_Dolzi, @Plateno_Pobar=Plateno_Pobar, 
  68125.         @DolziNeg=DolziNeg, @PobaruvaNeg=PobaruvaNeg
  68126.     FROM #Preth_Promet
  68127.     SET @Dolzi=ISNULL(@Dolzi,0)
  68128.     SET @Pobaruva=ISNULL(@Pobaruva,0)
  68129.     SET @Plateno_Dolzi=ISNULL(@Plateno_Dolzi,0)
  68130.     SET @Plateno_Pobar=ISNULL(@Plateno_Pobar,0)
  68131.     SET @DolziNeg=ISNULL(@DolziNeg,0)
  68132.     SET @PobaruvaNeg=ISNULL(@PobaruvaNeg,0)
  68133.  
  68134. Go
  68135. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prometpokta]'))
  68136. drop procedure [dbo].[sp_komint_prometpokta]
  68137.  
  68138. Go
  68139.  
  68140. CREATE     PROCEDURE sp_Komint_PrometPoKta
  68141.     @Sifra_Za    Char(1),
  68142.     @Sifra_Kup     Char(6),
  68143.     @KoiFri     Char(1),
  68144.     @Datum_Nal_Od Smalldatetime,
  68145.     @Datum_Nal_Do Smalldatetime,
  68146.     @Datum_Dok_Od Smalldatetime,
  68147.     @Datum_Dok_Do Smalldatetime,
  68148.      @Datum_Dosp_Od Smalldatetime = Null,
  68149.     @Datum_Dosp_Do Smalldatetime = Null,
  68150.     @Kto        Char(6),
  68151.     @Sifra_OE    Smallint,
  68152.     @Koi_OE    Varchar(200),
  68153.     @Dev        char(1) = 'N',
  68154.     @KojaVal    char(3) = Null,
  68155.     @Sifra_Pat    smallint = Null,
  68156.     @Sifra_Nal    smallint = Null,
  68157.     @Sifra_Div    smallint = Null,
  68158.     @KoiPat    varchar(10) = Null
  68159. AS
  68160.     Declare @SSQL Varchar(4000)
  68161.     Declare @SSQL1 varchar(4000)
  68162.     Declare @SSQL2 varchar(4000)
  68163.     SET @SSQL1=''
  68164.     SET @SSQL2=''
  68165.     CREATE TABLE #PrometKto
  68166.     (
  68167.     Kto_Anal        char(10),
  68168.     ImeVal            varchar(20),
  68169.     Preth_Dolzi        Numeric(18,4),
  68170.     Preth_Pobaruva        Numeric(18,4),
  68171.     Preth_Dev_Dolzi    Numeric(18,4),
  68172.     Preth_Dev_Pobaruva    Numeric(18,4),
  68173.     Tek_Dolzi        Numeric(18,4),
  68174.     Tek_Pobaruva        Numeric(18,4),
  68175.     Tek_Dev_Dolzi        Numeric(18,4),
  68176.     Tek_Dev_Pobaruva    Numeric(18,4)
  68177.     )
  68178.     SET @SSQL = 'SELECT A.Kto, V.ImeVal, Sum(A.Dolzi), Sum(A.Pobaruva), Sum(A.Dev_Dolzi), Sum(A.Dev_Pobaruva)
  68179.             FROM AnFinDok A '
  68180.     IF @Dev = 'D'
  68181.         Set @SSQL = @SSQL + ' INNER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68182.     Else
  68183.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68184.     Set @SSQL = @SSQL + ' WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  68185.     If @Datum_Dok_Do Is NOT Null
  68186.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68187.     If @Datum_Nal_Do Is NOT Null
  68188.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68189.     If @Datum_Dosp_Do Is Not Null
  68190.         SET @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  68191.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  68192.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  68193.     Else If @Sifra_Za = '0'
  68194.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  68195.     If @KoiFri = 'P'
  68196.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  68197.     Else If @KoiFri = 'N'
  68198.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  68199.     If @Kto Is NOT Null 
  68200.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  68201.     If @Sifra_Pat Is NOT Null
  68202.         SET @SSQL = @SSQL + 'AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  68203.     If @KoiPat IS NOT NULL
  68204.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  68205.     If @Sifra_OE Is NOT Null
  68206.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  68207.     If @Sifra_Nal Is NOT Null
  68208.         SET @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  68209.     If @Sifra_Div Is Not Null
  68210.         SET @SSQL = @SSQL + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  68211.     If @Koi_OE Is Not Null
  68212.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  68213.     If @KojaVal IS NOT NULL
  68214.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  68215.     SET @SSQL2 = ' Group by A.Kto, V.ImeVal '
  68216.     INSERT INTO #PrometKto (Kto_Anal, ImeVal, Preth_Dolzi, Preth_Pobaruva, Preth_Dev_Dolzi, Preth_Dev_Pobaruva)
  68217.     EXEC(@SSQL+@SSQL1+@SSQL2)
  68218.     SET @SSQL1 = ''
  68219.     If @Datum_Dok_Od Is NOT Null
  68220.         SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68221.     If @Datum_Dok_Do Is NOT Null
  68222.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  68223.     If @Datum_Nal_Od Is NOT Null
  68224.         SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68225.     If @Datum_Nal_Do Is NOT Null
  68226.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  68227.     If @Datum_Dosp_Od Is Not Null
  68228.         Set @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  68229.     If @Datum_Dosp_Do Is Not Null
  68230.         Set @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  68231.     INSERT INTO #PrometKto (Kto_Anal, ImeVal, Tek_Dolzi, Tek_Pobaruva, Tek_Dev_Dolzi, Tek_Dev_Pobaruva)
  68232.     EXEC(@SSQL+@SSQL1+@SSQL2)
  68233.     SELECT 0 as KojaBaza, Kto_Anal, ImeVal, Null as Sifra_Div, sum(Preth_Dolzi) Preth_Dolzi, sum(Preth_Pobaruva) Preth_Pobaruva, 
  68234.         sum(Preth_Dev_Dolzi) Preth_Dev_Dolzi, sum(Preth_Dev_Pobaruva) Preth_Dev_Pobaruva,
  68235.         sum(Tek_Dolzi) Tek_Dolzi, sum(Tek_Pobaruva) Tek_Pobaruva, 
  68236.         sum(Tek_Dev_Dolzi) Tek_Dev_Dolzi, sum(Tek_Dev_Pobaruva) Tek_Dev_Pobaruva
  68237.     FROM #PrometKto GROUP BY Kto_Anal, ImeVal
  68238.  
  68239.  
  68240.  
  68241. Go
  68242. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prometpokta_divizii]'))
  68243. drop procedure [dbo].[sp_komint_prometpokta_divizii]
  68244.  
  68245. Go
  68246.  
  68247. CREATE     PROCEDURE sp_Komint_PrometPoKta_Divizii
  68248.     @Sifra_Za    Char(1),
  68249.     @Sifra_Kup     Char(6),
  68250.     @KoiFri     Char(1),
  68251.     @Datum_Nal_Od Smalldatetime,
  68252.     @Datum_Nal_Do Smalldatetime,
  68253.     @Datum_Dok_Od Smalldatetime,
  68254.     @Datum_Dok_Do Smalldatetime,
  68255.      @Datum_Dosp_Od Smalldatetime = Null,
  68256.     @Datum_Dosp_Do Smalldatetime = Null,
  68257.     @Kto        Char(6),
  68258.     @Sifra_OE    Smallint,
  68259.     @Koi_OE    Varchar(200),
  68260.     @Dev        char(1) = 'N',
  68261.     @KojaVal    char(3) = Null,
  68262.     @Sifra_Pat    smallint = Null,
  68263.     @Sifra_Nal    smallint = Null,
  68264.     @Sifra_Div    smallint = Null,
  68265.     @KoiPat    varchar(10) = Null
  68266. AS
  68267.     Declare @SSQL Varchar(4000)
  68268.     Declare @SSQL1 varchar(4000)
  68269.     Declare @SSQL2 varchar(4000)
  68270.     SET @SSQL1=''
  68271.     SET @SSQL2=''
  68272.     CREATE TABLE #PrometKto
  68273.     (
  68274.     Kto_Anal        char(10),
  68275.     ImeVal            varchar(20),
  68276.     Sifra_Div        smallint,
  68277.     Preth_Dolzi        Numeric(18,4),
  68278.     Preth_Pobaruva        Numeric(18,4),
  68279.     Preth_Dev_Dolzi    Numeric(18,4),
  68280.     Preth_Dev_Pobaruva    Numeric(18,4),
  68281.     Tek_Dolzi        Numeric(18,4),
  68282.     Tek_Pobaruva        Numeric(18,4),
  68283.     Tek_Dev_Dolzi        Numeric(18,4),
  68284.     Tek_Dev_Pobaruva    Numeric(18,4)
  68285.     )
  68286.     SET @SSQL = 'SELECT A.Kto, V.ImeVal, GD.Sifra_Div, 
  68287.             Sum(Case When GD.Dolzi <> 0 Then GD.Dolzi Else A.Dolzi End) , 
  68288.             Sum(Case When GD.Pobaruva <> 0 Then GD.Pobaruva Else A.Pobaruva End), 
  68289.             Sum(Case When A.Kurs > 1 And GD.Dolzi <> 0 Then GD.Dolzi / A.Kurs Else A.Dev_Dolzi End), 
  68290.             Sum(Case When A.Kurs > 1 And GD.Pobaruva <> 0 Then GD.Pobaruva / A.Kurs Else A.Dev_Pobaruva End) 
  68291.             FROM AnFinDok A 
  68292.             LEFT OUTER JOIN GstAnDiv GD On GD.AnID=A.AnID '
  68293.     IF @Dev = 'D'
  68294.         Set @SSQL = @SSQL + ' INNER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68295.     Else
  68296.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68297.     Set @SSQL = @SSQL + ' WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  68298.     If @Datum_Dok_Do Is NOT Null
  68299.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68300.     If @Datum_Nal_Do Is NOT Null
  68301.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68302.     If @Datum_Dosp_Do Is Not Null
  68303.         SET @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  68304.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  68305.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  68306.     Else If @Sifra_Za = '0'
  68307.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  68308.     If @KoiFri = 'P'
  68309.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  68310.     Else If @KoiFri = 'N'
  68311.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  68312.     If @Kto Is NOT Null 
  68313.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  68314.     If @Sifra_Pat Is NOT Null
  68315.         SET @SSQL = @SSQL + 'AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  68316.     If @KoiPat IS NOT NULL
  68317.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  68318.     If @Sifra_OE Is NOT Null
  68319.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  68320.     If @Sifra_Nal Is NOT Null
  68321.         SET @SSQL = @SSQL + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  68322.     If @Sifra_Div Is Not Null
  68323.         SET @SSQL = @SSQL + ' AND GD.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  68324.     If @Koi_OE Is Not Null
  68325.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  68326.     If @KojaVal IS NOT NULL
  68327.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  68328.     SET @SSQL2 = ' Group by A.Kto, V.ImeVal, GD.Sifra_Div '
  68329.     INSERT INTO #PrometKto (Kto_Anal, ImeVal, Sifra_Div, Preth_Dolzi, Preth_Pobaruva, Preth_Dev_Dolzi, Preth_Dev_Pobaruva)
  68330.     EXEC(@SSQL+@SSQL1+@SSQL2)
  68331.     SET @SSQL1 = ''
  68332.     If @Datum_Dok_Od Is NOT Null
  68333.         SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68334.     If @Datum_Dok_Do Is NOT Null
  68335.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  68336.     If @Datum_Nal_Od Is NOT Null
  68337.         SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68338.     If @Datum_Nal_Do Is NOT Null
  68339.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  68340.     If @Datum_Dosp_Od Is Not Null
  68341.         Set @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  68342.     If @Datum_Dosp_Do Is Not Null
  68343.         Set @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  68344.     INSERT INTO #PrometKto (Kto_Anal, ImeVal, Sifra_Div, Tek_Dolzi, Tek_Pobaruva, Tek_Dev_Dolzi, Tek_Dev_Pobaruva)
  68345.     EXEC(@SSQL+@SSQL1+@SSQL2)
  68346.     SELECT 0 as KojaBaza, Kto_Anal, ImeVal, Sifra_Div, sum(Preth_Dolzi) Preth_Dolzi, sum(Preth_Pobaruva) Preth_Pobaruva, 
  68347.         sum(Preth_Dev_Dolzi) Preth_Dev_Dolzi, sum(Preth_Dev_Pobaruva) Preth_Dev_Pobaruva,
  68348.         sum(Tek_Dolzi) Tek_Dolzi, sum(Tek_Pobaruva) Tek_Pobaruva, 
  68349.         sum(Tek_Dev_Dolzi) Tek_Dev_Dolzi, sum(Tek_Dev_Pobaruva) Tek_Dev_Pobaruva
  68350.     FROM #PrometKto GROUP BY Kto_Anal, ImeVal, Sifra_Div
  68351.  
  68352.  
  68353.  
  68354. Go
  68355. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prometpokta_dvebazi]'))
  68356. drop procedure [dbo].[sp_komint_prometpokta_dvebazi]
  68357.  
  68358. Go
  68359.  
  68360. CREATE     PROCEDURE sp_Komint_PrometPoKta_DveBazi
  68361.     @Sifra_Za    Char(1),
  68362.     @Sifra_Kup     Char(6),
  68363.     @KoiFri     Char(1),
  68364.     @Datum_Nal_Od Smalldatetime,
  68365.     @Datum_Nal_Do Smalldatetime,
  68366.     @Datum_Dok_Od Smalldatetime,
  68367.     @Datum_Dok_Do Smalldatetime,
  68368.      @Datum_Dosp_Od Smalldatetime = Null,
  68369.     @Datum_Dosp_Do Smalldatetime = Null,
  68370.     @Kto        Char(6),
  68371.     @Sifra_OE    Smallint,
  68372.     @Koi_OE    Varchar(200),
  68373.     @Dev        char(1) = 'N',
  68374.     @KojaVal    char(3) = Null,
  68375.     @Baza2    varchar(15) = Null,
  68376.     @Sifra_Pat    smallint = Null,
  68377.     @KoiPat    varchar(10) = Null
  68378. AS
  68379.     Declare @SSQL Varchar(4000)
  68380.     Declare @SSQL1 varchar(4000)
  68381.     Declare @SSQL2 varchar(4000)
  68382.     Declare @SSQLBaza1 varchar(4000)
  68383.     Declare @SSQLBaza2 varchar(4000)
  68384.     SET @SSQL=''
  68385.     SET @SSQL1=''
  68386.     SET @SSQL2=''
  68387.     SET @SSQLBaza1=''
  68388.     SET @SSQLBaza2=''
  68389.     CREATE TABLE #PrometKto
  68390.     (
  68391.     KojaBaza        char(1),
  68392.     Kto_Anal        char(10),
  68393.     ImeVal            varchar(20),
  68394.     Preth_Dolzi        Numeric(18,4),
  68395.     Preth_Pobaruva        Numeric(18,4),
  68396.     Preth_Dev_Dolzi    Numeric(18,4),
  68397.     Preth_Dev_Pobaruva    Numeric(18,4),
  68398.     Tek_Dolzi        Numeric(18,4),
  68399.     Tek_Pobaruva        Numeric(18,4),
  68400.     Tek_Dev_Dolzi        Numeric(18,4),
  68401.     Tek_Dev_Pobaruva    Numeric(18,4)
  68402.     )
  68403.     SET @SSQLBaza1 = 'SELECT 1 as KojaBaza, A.Kto, V.ImeVal, Sum(A.Dolzi), Sum(A.Pobaruva), Sum(A.Dev_Dolzi), Sum(A.Dev_Pobaruva)
  68404.         FROM AnFinDok A '
  68405.     IF @Dev = 'D'
  68406.         Set @SSQLBaza1 = @SSQLBaza1 + ' INNER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68407.     Else
  68408.         Set @SSQLBaza1 = @SSQLBaza1 + ' LEFT OUTER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68409.     SET @SSQLBaza2 = 'SELECT 2 as KojaBaza, A.Kto, V.ImeVal, Sum(A.Dolzi), Sum(A.Pobaruva), Sum(A.Dev_Dolzi), Sum(A.Dev_Pobaruva)
  68410.         FROM ' + @Baza2  + '..AnFinDok A '
  68411.     IF @Dev = 'D'
  68412.         Set @SSQLBaza2 = @SSQLBaza2 + ' INNER JOIN ' + @Baza2  + '..KrsLista V ON A.KojaVal=V.SImeVal '
  68413.     Else
  68414.         Set @SSQLBaza2 = @SSQLBaza2 + ' LEFT OUTER JOIN ' + @Baza2  + '..KrsLista V ON A.KojaVal=V.SImeVal '
  68415.     If @Datum_Dok_Do Is NOT Null
  68416.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68417.     If @Datum_Nal_Do Is NOT Null
  68418.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68419.     If @Datum_Dosp_Do Is Not Null
  68420.         SET @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  68421.     Set @SSQL = @SSQL + ' WHERE Sifra_Kup=''' + @Sifra_Kup + ''' '
  68422.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  68423.         Set @SSQL = @SSQL + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  68424.     Else If @Sifra_Za = '0'
  68425.         Set @SSQL = @SSQL + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  68426.     If @KoiFri = 'P'
  68427.         Set @SSQL = @SSQL + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  68428.     Else If @KoiFri = 'N'
  68429.         Set @SSQL = @SSQL + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  68430.     If @Kto Is NOT Null 
  68431.         SET @SSQL = @SSQL + 'AND A.Kto=''' + @Kto + ''' '
  68432.     If @Sifra_Pat Is NOT Null
  68433.         SET @SSQL = @SSQL + 'AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  68434.     If @KoiPat IS NOT NULL
  68435.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  68436.     If @Sifra_OE Is NOT Null
  68437.         SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  68438.     If @Koi_OE Is Not Null
  68439.         Set @SSQL = @SSQL + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  68440.     If @KojaVal IS NOT NULL
  68441.         Set @SSQL = @SSQL + ' AND A.KojaVal =' + @KojaVal + ' '
  68442.     SET @SSQL2 = ' Group by A.Kto, V.ImeVal '
  68443.     INSERT INTO #PrometKto (KojaBaza, Kto_Anal, ImeVal, Preth_Dolzi, Preth_Pobaruva, Preth_Dev_Dolzi, Preth_Dev_Pobaruva)
  68444.     EXEC(@SSQLBaza1+@SSQL+@SSQL1+@SSQL2)
  68445.     INSERT INTO #PrometKto (KojaBaza, Kto_Anal, ImeVal, Preth_Dolzi, Preth_Pobaruva, Preth_Dev_Dolzi, Preth_Dev_Pobaruva)
  68446.     EXEC(@SSQLBaza2+@SSQL+@SSQL1+@SSQL2)
  68447.     SET @SSQL1 = ''
  68448.     If @Datum_Dok_Od Is NOT Null
  68449.         SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68450.     If @Datum_Dok_Do Is NOT Null
  68451.         SET @SSQL1 = @SSQL1 + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  68452.     If @Datum_Nal_Od Is NOT Null
  68453.         SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68454.     If @Datum_Nal_Do Is NOT Null
  68455.          SET @SSQL1 = @SSQL1 + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  68456.     If @Datum_Dosp_Od Is Not Null
  68457.         Set @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  68458.     If @Datum_Dosp_Do Is Not Null
  68459.         Set @SSQL1 = @SSQL1 + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  68460.     INSERT INTO #PrometKto (KojaBaza, Kto_Anal, ImeVal, Tek_Dolzi, Tek_Pobaruva, Tek_Dev_Dolzi, Tek_Dev_Pobaruva)
  68461.     EXEC(@SSQLBaza1+@SSQL+@SSQL1+@SSQL2)
  68462.     INSERT INTO #PrometKto (KojaBaza, Kto_Anal, ImeVal, Tek_Dolzi, Tek_Pobaruva, Tek_Dev_Dolzi, Tek_Dev_Pobaruva)
  68463.     EXEC(@SSQLBaza2+@SSQL+@SSQL1+@SSQL2)
  68464.     SELECT KojaBaza, Kto_Anal, ImeVal, sum(Preth_Dolzi) Preth_Dolzi, sum(Preth_Pobaruva) Preth_Pobaruva, 
  68465.     sum(Preth_Dev_Dolzi) Preth_Dev_Dolzi, sum(Preth_Dev_Pobaruva) Preth_Dev_Pobaruva,
  68466.     sum(Tek_Dolzi) Tek_Dolzi, sum(Tek_Pobaruva) Tek_Pobaruva, 
  68467.     sum(Tek_Dev_Dolzi) Tek_Dev_Dolzi, sum(Tek_Dev_Pobaruva) Tek_Dev_Pobaruva
  68468.     FROM #PrometKto GROUP BY KojaBaza, Kto_Anal, ImeVal
  68469.  
  68470.  
  68471.  
  68472. Go
  68473. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komint_prometpokta_sodokoddokr]'))
  68474. drop procedure [dbo].[sp_komint_prometpokta_sodokoddokr]
  68475.  
  68476. Go
  68477.  
  68478. CREATE     PROCEDURE sp_Komint_PrometPoKta_SoDokOdDokr
  68479.     @Sifra_Za    Char(1),
  68480.     @Sifra_Kup     Char(6),
  68481.     @KoiFri     Char(1),
  68482.     @Datum_Nal_Od Smalldatetime,
  68483.     @Datum_Nal_Do Smalldatetime,
  68484.     @Datum_Dok_Od Smalldatetime,
  68485.     @Datum_Dok_Do Smalldatetime,
  68486.      @Datum_Dosp_Od Smalldatetime = Null,
  68487.     @Datum_Dosp_Do Smalldatetime = Null,
  68488.     @Kto        Char(6),
  68489.     @Sifra_OE    Smallint,
  68490.     @Koi_OE    Varchar(200),
  68491.     @Dev        char(1) = 'N',
  68492.     @KojaVal    char(3) = Null,
  68493.     @Sifra_Pat    smallint = Null,
  68494.     @Sifra_Nal    smallint = Null,
  68495.     @Sifra_Div    smallint = Null,
  68496.     @KoiPat    varchar(10) = Null
  68497. AS
  68498.     Declare @SSQL Varchar(4000)
  68499.     Declare @SSQLFin varchar(4000)
  68500.     Declare @SSQLDokr varchar(4000)
  68501.     Declare @SSQLDat varchar(4000)
  68502.     Declare @SSQLUsl varchar(4000)
  68503.     Declare @SSQLDatNalFin varchar(4000)
  68504.     Declare @SSQLDatNalDokr varchar(4000)
  68505.     SET @SSQLDat=''
  68506.     SET @SSQLDatNalFin=''
  68507.     SET @SSQLDatNalDokr=''
  68508.     SET @SSQLUsl=''
  68509.     SET @SSQLFin=''
  68510.     SET @SSQLDokr=''
  68511.  
  68512.     CREATE TABLE #PrometKto
  68513.     (
  68514.     Kto_Anal        char(10),
  68515.     ImeVal            varchar(20),
  68516.     Preth_Dolzi        Numeric(18,4),
  68517.     Preth_Pobaruva        Numeric(18,4),
  68518.     Preth_Dev_Dolzi    Numeric(18,4),
  68519.     Preth_Dev_Pobaruva    Numeric(18,4),
  68520.     Tek_Dolzi        Numeric(18,4),
  68521.     Tek_Pobaruva        Numeric(18,4),
  68522.     Tek_Dev_Dolzi        Numeric(18,4),
  68523.     Tek_Dev_Pobaruva    Numeric(18,4)
  68524.     )
  68525.  
  68526.     SET @SSQLFin = 'SELECT A.Kto, V.ImeVal, Sum(A.Dolzi), Sum(A.Pobaruva), Sum(A.Dev_Dolzi), Sum(A.Dev_Pobaruva)
  68527.             FROM AnFinDok A '
  68528.     IF @Dev = 'D'
  68529.         Set @SSQLFin = @SSQLFin + ' INNER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68530.     Else
  68531.         Set @SSQLFin = @SSQLFin + ' LEFT OUTER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68532.     Set @SSQLFin = @SSQLFin + ' WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' '
  68533.     If @KoiFri = 'P'
  68534.         SET @SSQLFin = @SSQLFin + 'AND A.Dolzi=A.Plateno_Dolzi AND A.Pobaruva=A.Plateno_Pobar '
  68535.     Else If @KoiFri = 'N'
  68536.         SET @SSQLFin = @SSQLFin + 'AND (A.Dolzi<>A.Plateno_Dolzi OR A.Pobaruva<>A.Plateno_Pobar) '
  68537.  
  68538.     If @Datum_Nal_Do Is NOT Null
  68539.          SET @SSQLDatNalFin = @SSQLDatNalFin + 'AND A.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68540.  
  68541.     If @Datum_Dok_Do Is NOT Null
  68542.          SET @SSQLDat = @SSQLDat + 'AND A.Datum_Dok<''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68543.     If @Datum_Dosp_Do Is Not Null
  68544.         SET @SSQLDat = @SSQLDat + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<''' + Cast(@Datum_Dosp_Do As varchar(35)) + ''' '
  68545.  
  68546.     If @Sifra_Za = '1' OR @Sifra_Za = '2'
  68547.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Za=' + @Sifra_Za + ' '
  68548.     Else If @Sifra_Za = '0'
  68549.         SET @SSQLUsl = @SSQLUsl + 'AND (A.Sifra_Za=1 OR A.Sifra_Za=2) '
  68550.     If @Kto Is NOT Null 
  68551.         SET @SSQLUsl = @SSQLUsl + 'AND A.Kto=''' + @Kto + ''' '
  68552.     If @Sifra_Pat Is NOT Null
  68553.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  68554.     If @KoiPat IS NOT NULL
  68555.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat=''' + @KoiPat + ''') '
  68556.     If @Sifra_OE Is NOT Null
  68557.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  68558.     If @Sifra_Nal Is NOT Null
  68559.         SET @SSQLUsl = @SSQLUsl + 'AND A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(6)) + ' '
  68560.     If @Sifra_Div Is Not Null
  68561.         SET @SSQLUsl = @SSQLUsl + ' AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  68562.     If @Koi_OE Is Not Null
  68563.         SET @SSQLUsl = @SSQLUsl + 'And A.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  68564.     If @KojaVal IS NOT NULL
  68565.         Set @SSQLUsl = @SSQLUsl + ' AND A.KojaVal =' + @KojaVal + ' '
  68566.     Set @SSQL = @SSQLFin + @SSQLDat + @SSQLDatNalFin + @SSQLUsl + ' Group by A.Kto, V.ImeVal '
  68567.  
  68568.     Set @SSQL = @SSQL + ' Union '
  68569.  
  68570.     SET @SSQLDokr = @SSQLDokr + ' SELECT A.Kto, V.ImeVal, Sum(A.Toc200), Sum(A.Toc200), Sum(A.Toc200), Sum(A.Toc200)
  68571.                    FROM Dokr A
  68572.                     LEFT OUTER Join Nalozi N On N.Sifra_Nal = A.Sifra_Nal And N.Broj_Nal=A.Broj_Nal '
  68573.     IF @Dev = 'D'
  68574.         Set @SSQLDokr = @SSQLDokr + ' INNER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68575.     Else
  68576.         Set @SSQLDokr = @SSQLDokr + ' LEFT OUTER JOIN KrsLista V ON A.KojaVal=V.SImeVal '
  68577.     Set @SSQLDokr = @SSQLDokr + ' WHERE A.Sifra_Kup=''' + @Sifra_Kup + ''' 
  68578.                        And A.Sifra_Dok in (83,84) '
  68579.     If @KoiFri = 'N'
  68580.         Set @SSQLDokr = @SSQLDokr + 'AND (A.Toc200<>A.Toc200) '  -- mora nessto da se stavi
  68581.  
  68582.     If @Datum_Nal_Do Is NOT Null
  68583.          SET @SSQLDatNalDokr = @SSQLDatNalDokr + 'AND N.Datum_Nal<''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68584.  
  68585.  
  68586.     Set @SSQL = @SSQL + @SSQLDokr + @SSQLDat + @SSQLDatNalDokr + @SSQLUsl + ' Group by A.Kto, V.ImeVal '
  68587.  
  68588.     INSERT INTO #PrometKto (Kto_Anal, ImeVal, Preth_Dolzi, Preth_Pobaruva, Preth_Dev_Dolzi, Preth_Dev_Pobaruva)
  68589.     EXEC(@SSQL)
  68590.  
  68591.     SET @SSQLDat = ''
  68592.     SET @SSQLDatNalFin = ''
  68593.     SET @SSQLDatNalDokr = ''
  68594.  
  68595.     If @Datum_Dok_Od Is NOT Null
  68596.         SET @SSQLDat = @SSQLDat + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  68597.     If @Datum_Dok_Do Is NOT Null
  68598.          SET @SSQLDat = @SSQLDat + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  68599.     If @Datum_Dosp_Od Is Not Null
  68600.         SET @SSQLDat = @SSQLDat + 'And DateAdd(Day, A.Rok, A.Datum_Dok)>=''' + Cast(@Datum_Dosp_Od As Varchar(25)) + ''' '
  68601.     If @Datum_Dosp_Do Is Not Null
  68602.         SET @SSQLDat = @SSQLDat + 'And DateAdd(Day, A.Rok, A.Datum_Dok)<=''' + Cast(@Datum_Dosp_Do As varchar(25)) + ''' '
  68603.  
  68604.     If @Datum_Nal_Od Is NOT Null
  68605.         SET @SSQLDatNalFin = @SSQLDatNalFin + 'AND A.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68606.     If @Datum_Nal_Do Is NOT Null
  68607.          SET @SSQLDatNalFin = @SSQLDatNalFin + 'AND A.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  68608.  
  68609.     If @Datum_Nal_Od Is NOT Null
  68610.         SET @SSQLDatNalDokr = @SSQLDatNalDokr + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  68611.     If @Datum_Nal_Do Is NOT Null
  68612.          SET @SSQLDatNalDokr = @SSQLDatNalDokr + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  68613.  
  68614.  
  68615.     Set @SSQL = @SSQLFin + @SSQLDat + @SSQLDatNalFin + @SSQLUsl + ' Group by A.Kto, V.ImeVal  Union ' +  @SSQLDokr + @SSQLDat + @SSQLDatNalDokr + @SSQLUsl + ' Group by A.Kto, V.ImeVal  '
  68616.  
  68617.     INSERT INTO #PrometKto (Kto_Anal, ImeVal, Tek_Dolzi, Tek_Pobaruva, Tek_Dev_Dolzi, Tek_Dev_Pobaruva)
  68618.     EXEC(@SSQL)
  68619.  
  68620.     SELECT 0 as KojaBaza, Kto_Anal, ImeVal, Null as Sifra_Div, sum(Preth_Dolzi) Preth_Dolzi, sum(Preth_Pobaruva) Preth_Pobaruva, 
  68621.         sum(Preth_Dev_Dolzi) Preth_Dev_Dolzi, sum(Preth_Dev_Pobaruva) Preth_Dev_Pobaruva,
  68622.         sum(Tek_Dolzi) Tek_Dolzi, sum(Tek_Pobaruva) Tek_Pobaruva, 
  68623.         sum(Tek_Dev_Dolzi) Tek_Dev_Dolzi, sum(Tek_Dev_Pobaruva) Tek_Dev_Pobaruva
  68624.     FROM #PrometKto GROUP BY Kto_Anal, ImeVal
  68625.  
  68626. Go
  68627. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komintbezkomintpat]'))
  68628. drop procedure [dbo].[sp_komintbezkomintpat]
  68629.  
  68630. Go
  68631.  
  68632. CREATE   PROCEDURE sp_KomintBezKomintPat
  68633.     @Sifra_Kup_Od   char(6)=null,
  68634.         @Sifra_Kup_Do   char(6)=null
  68635. AS
  68636.     Declare @SSQL VARCHAR(4000)
  68637.         create Table #Komint
  68638.     (
  68639.         Sifra_Kup    char(6),
  68640.         ImeKup            varchar(40),
  68641.                 Sifra_Obj    smallint,
  68642.                 ImeObj            varchar(40),
  68643.         KupImaPat       char(1)
  68644.     )
  68645.     Set @SSQL = 'Insert Into #Komint
  68646.     Select K.Sifra_Kup, K.ImeKup, O.Sifra_Obj, O.ImeObj, Null
  68647.     From Komint K
  68648.         inner join KObjekti O on O.Sifra_Kup=K.Sifra_Kup where 1=1'
  68649.         If @Sifra_Kup_Od Is Not Null
  68650.         Set @SSQL = @SSQL + 'And K.Sifra_Kup>=''' + @Sifra_Kup_Od + ''' '
  68651.     If @Sifra_Kup_Do Is Not Null
  68652.         Set @SSQL = @SSQL + 'And K.Sifra_Kup<=''' + @Sifra_Kup_Do + ''' '  
  68653.  
  68654. exec(@ssql)
  68655. print(@ssql)
  68656.  
  68657.     Update     #Komint Set KupImaPat = 'D'
  68658.     From KomintPat KP
  68659.     Where (KP.Sifra_Kup=#Komint.Sifra_Kup And KP.Sifra_Obj=#Komint.Sifra_Obj) or (KP.Sifra_Kup=#Komint.Sifra_Kup And KP.Sifra_Obj is null) 
  68660.  
  68661.         Select * From #Komint where KupimaPat is null Order By Sifra_Kup
  68662.  
  68663.  
  68664. Go
  68665. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komintentibezprodazba]'))
  68666. drop procedure [dbo].[sp_komintentibezprodazba]
  68667.  
  68668. Go
  68669.  
  68670.  
  68671.  
  68672. CREATE            PROCEDURE sp_KomintentiBezProdazba
  68673.     @Sifra_OE Smallint = Null,
  68674.     @Sifra_Pat Smallint = Null,
  68675.     @Datum_Od Smalldatetime = Null,
  68676.     @Datum_Do Smalldatetime = Null,
  68677.     @Sifra_Art_Od Varchar(20) = Null,
  68678.     @Sifra_Art_Do Varchar(20) = Null,
  68679.     @Sifra_Kup_Od Char(6) = Null,
  68680.     @Sifra_Kup_Do Char(6) = Null,
  68681.     @Sifra_Gr Char(3) = Null,
  68682.     @Sifra_Podg Char(6) = Null,
  68683.     @Sifra_Brand Smallint = Null,
  68684.     @Sifra_ZBrand Smallint = Null,
  68685.     @APod1 Smallint = Null,
  68686.     @APod2 Smallint = Null,
  68687.     @APod3 Smallint = Null,
  68688.     @APod4 Smallint = Null,
  68689.     @APod5 Smallint = Null,
  68690.     @KPod1 Smallint = Null,
  68691.     @KPod2 Smallint = Null,
  68692.     @KPod3 Smallint = Null,
  68693.     @KPod4 Smallint = Null,
  68694.     @KPod5 Smallint = Null,
  68695.     @Koi_Regioni varchar(200) = Null,
  68696.     @Koi_Gradovi varchar(200) = Null,
  68697.     @Aktiven Char(1) = 'D',
  68698.     @GrKup as varchar(500)= null,
  68699.     @GrArt as varchar(500)= null,
  68700.     @PatOdKomintPat    char(1) = 'N'
  68701. AS
  68702.     Declare @SSQL Varchar(8000)
  68703.     Declare @SSQLUsl Varchar(8000)
  68704.     Set @SSQLUsl = ' '
  68705.  
  68706. ------------------------------------------------------------------
  68707.     If @GrKup Is Not Null
  68708.     Begin
  68709.     Create    Table #KupObj
  68710.         (
  68711.             Sifra_Kup    char(6),
  68712.             Sifra_Obj    smallint
  68713.         )
  68714.         CREATE   Table #KupObj1
  68715.         (
  68716.             Sifra_Kup    char(6),
  68717.             Sifra_Obj    smallint
  68718.         )
  68719.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  68720.         Exec(@SSQL)
  68721.  
  68722.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  68723.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  68724.                 From SGrKupObj GK 
  68725.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  68726.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  68727.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  68728.         Exec(@SSQL)
  68729.  
  68730.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  68731.         Exec(@SSQL)
  68732.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  68733.     End
  68734.     If @GrArt Is Not Null
  68735.     Begin
  68736.         Create Table #GrArt
  68737.         (
  68738.             Sifra_Art    varchar(20)
  68739.         )
  68740.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  68741.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  68742.         Exec(@SSQL)
  68743.     End
  68744. -------------------------------------------------------------------------
  68745.     Create Table #Komint
  68746.     (
  68747.      Sifra_Kup    char(6),
  68748.      Sifra_Obj    smallint
  68749.     )
  68750.     Create Table #KomintDokr
  68751.     (
  68752.      Sifra_Kup    char(6),
  68753.      Sifra_Obj    smallint
  68754.     )
  68755. -- Prvo: Tabelata #Komint da ja napolnime so site komintenti koi sto gi zadovoluvaat vnesenite filtri po komintenti
  68756.     Set @SSQL = ' Select Kup.Sifra_Kup, KO.Sifra_Obj
  68757.             From Komint Kup
  68758.             Left Outer Join KObjekti KO On KO.Sifra_Kup=Kup.Sifra_Kup And KO.Sifra_Obj <> 0
  68759.             Where 1=1 '
  68760.     If @Sifra_Kup_Od Is Not NULL
  68761.         Set @SSQLUsl = @SSQLUsl + ' And Kup.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  68762.     If @Sifra_Kup_Do Is Not NULL
  68763.         Set @SSQLUsl = @SSQLUsl + ' And Kup.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  68764.     If @Aktiven = 'N'
  68765.            Begin
  68766.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.Aktiven Is Not Null And KO.Aktiven = ''N'') 
  68767.                       Or (KO.Aktiven Is Null And Kup.Aktiven = ''N'')) '
  68768.            End 
  68769.     Else If @Aktiven = 'D'
  68770.            Begin
  68771.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.Aktiven Is Not Null And KO.Aktiven = ''D'') 
  68772.                       Or (KO.Aktiven Is Null And Kup.Aktiven = ''D'' Or Kup.Aktiven Is Null Or Kup.Aktiven = '' '')) '
  68773.            End 
  68774.     If @Sifra_Pat IS NOT NULL
  68775.         If @PatOdKomintPat = 'D' -----------------------------dod 05.04.2011
  68776.             SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Kup In (Select Sifra_Kup From KomintPat Where Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ') '
  68777.         Else
  68778.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat = ' + Cast(@Sifra_Pat As Varchar(6)) + ')
  68779.                             Or (KO.Sifra_Pat Is Null And Kup.Sifra_Pat = ' + Cast(@Sifra_Pat As Varchar(6)) + ')) '
  68780.     If @KPod1 Is Not NULL
  68781.            Begin
  68782.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')
  68783.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')) '
  68784.            End 
  68785.     If @KPod2 Is Not NULL
  68786.            Begin
  68787.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')
  68788.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')) '
  68789.            End
  68790.     If @KPod3 Is Not NULL
  68791.            Begin
  68792.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')
  68793.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')) '
  68794.            End
  68795.     If @KPod4 Is Not NULL
  68796.            Begin
  68797.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')
  68798.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')) '
  68799.            End
  68800.     If @KPod5 Is Not NULL
  68801.            Begin
  68802.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')
  68803.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')) '
  68804.            End
  68805.     If @Koi_Regioni Is Not NULL    
  68806.           Begin
  68807.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  68808.                     OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  68809.           End
  68810.     If @Koi_Gradovi Is Not NULL    
  68811.           Begin
  68812.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  68813.                     OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  68814.           End
  68815.     Insert Into #Komint Exec(@SSQL+@SSQLUsl)
  68816. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  68817. -- Vtoro: Tabelata #KomintDokr da ja napolnime so site komintenti koi sto se javuvaat vo Dokr, a gi zadovoluvaat vnesenite filtri
  68818.     Set @SSQL = ' Select Distinct D.Sifra_Kup, D.Sifra_Obj
  68819.             From Dokr D
  68820.             Inner Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  68821.             Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj '
  68822.     If @Sifra_Art_Od Is Not Null Or @Sifra_Art_Do Is Not Null Or @Sifra_Gr Is Not Null Or @Sifra_Podg Is Not Null Or @Sifra_Brand Is Not Null Or @Sifra_ZBrand Is Not Null
  68823.        Or @APod1 Is Not Null Or @APod2 Is Not Null Or @APod3 Is Not Null Or @APod4 Is Not Null Or @APod5 Is Not Null
  68824.      begin 
  68825.         Set @SSQL = @SSQL + ' Inner Join Stavr S On S.DokrID=D.DokrID
  68826.                     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  68827.         If @GrArt Is Not Null
  68828.              Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  68829.     end
  68830. -------------------------------------
  68831.     If @GrKup Is Not Null
  68832.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  68833.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  68834. --------------------------------------
  68835.     If @Sifra_Gr Is Not Null
  68836.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg '
  68837.     If @Sifra_ZBrand Is Not Null
  68838.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  68839.     Set @SSQL = @SSQL + ' Where D.Sifra_Za=1 '
  68840.     -- go dopolnuvame uslovot so ostanatite filtri
  68841.     If @Sifra_OE Is Not NULL
  68842.              Set @SSQLUsl  = @SSQLUsl + ' And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  68843.     If @Sifra_Art_Od Is Not Null
  68844.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  68845.     If @Sifra_Art_Do Is Not Null
  68846.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  68847.     If @Sifra_Brand Is Not Null
  68848.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  68849.     If @Sifra_ZBrand Is Not Null
  68850.         Set @SSQLUsl = @SSQLUsl + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  68851.     If @Sifra_Podg Is Not Null
  68852.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  68853.     If @Sifra_Gr Is Not Null
  68854.         Set @SSQLUsl = @SSQLUsl + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  68855.     If @APod1 Is Not Null
  68856.         Set @SSQLUsl = @SSQLUsl + 'And K.Drugo1=' + Cast(@APod1 as varchar(6)) + ' '
  68857.     If @APod2 Is Not Null
  68858.         Set @SSQLUsl = @SSQLUsl + 'And K.Drugo2=' + Cast(@APod2 as varchar(6)) + ' '
  68859.     If @APod3 Is Not Null
  68860.         Set @SSQLUsl = @SSQLUsl + 'And K.Drugo3=' + Cast(@APod3 as varchar(6)) + ' '
  68861.     If @APod4 Is Not Null
  68862.         Set @SSQLUsl = @SSQLUsl + 'And K.Drugo4=' + Cast(@APod4 as varchar(6)) + ' '
  68863.     If @APod5 Is Not Null
  68864.         Set @SSQLUsl = @SSQLUsl + 'And K.Drugo5=' + Cast(@APod5 as varchar(6)) + ' '
  68865.     If @Datum_Od Is Not NULL
  68866.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  68867.     If @Datum_Do Is Not NULL
  68868.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  68869.     Insert Into #KomintDokr Exec(@SSQL+@SSQLUsl)
  68870.     -- Da gi prikazeme rezultatite
  68871.     Select K.Sifra_Kup, Kup.ImeKup, K.Sifra_Obj, Null As Ime_Obj, Kup.Sifra_Grad as Sifra_Grad_Kup, G.ImeGrad as ImeGrad_Kup, Null as Sifra_Grad_Obj, Null as ImeGrad_Obj,
  68872.         Kup.Kdrugo1, K1.Ime_1K, Kup.Kdrugo2, K2.Ime_2K, Kup.Kdrugo3, K3.Ime_3K, Kup.Kdrugo4, K4.Ime_4K, Kup.Kdrugo5, K5.Ime_5K, KUP.Adresa as AdresaKup, Null as AdresaObj
  68873.     From #Komint K
  68874.     Inner Join Komint Kup On Kup.Sifra_Kup=K.Sifra_Kup
  68875.     Left Outer Join Grad G On G.Sifra_Grad = Kup.Sifra_Grad
  68876.     Left Outer Join KDrugo1 K1 On K1.Sifra_1K=Kup.KDrugo1
  68877.     Left Outer Join KDrugo2 K2 On K2.Sifra_2K=Kup.KDrugo2
  68878.     Left Outer Join KDrugo3 K3 On K3.Sifra_3K=Kup.KDrugo3
  68879.     Left Outer Join KDrugo4 K4 On K4.Sifra_4K=Kup.KDrugo4
  68880.     Left Outer Join KDrugo5 K5 On K5.Sifra_5K=Kup.KDrugo5
  68881.     Where K.Sifra_Obj Is Null 
  68882.     And K.Sifra_Kup Not In (Select Distinct Sifra_Kup From #KomintDokr Where Sifra_Obj Is Null)
  68883.     Union
  68884.     Select K.Sifra_Kup, Kup.ImeKup, K.Sifra_Obj, KO.ImeObj, Kup.Sifra_Grad as Sifra_Grad_Kup, GG.ImeGrad as ImeGrag_Kup, KO.Sifra_Grad as Sifra_Grad_Obj, G.ImeGrad as ImeGrad_Obj,
  68885.         KO.Kdrugo1, K1.Ime_1K, KO.Kdrugo2, K2.Ime_2K, KO.Kdrugo3, K3.Ime_3K, KO.Kdrugo4, K4.Ime_4K, KO.Kdrugo5, K5.Ime_5K, KUP.Adresa as AdresaKup, KO.Adresa as AdresaObj
  68886.     From #Komint K
  68887.     Inner Join Komint Kup On Kup.Sifra_Kup=K.Sifra_Kup
  68888.     Left Outer Join KObjekti KO On KO.Sifra_Kup=K.Sifra_Kup And KO.Sifra_Obj=K.Sifra_Obj
  68889.     Left Outer Join Grad G On G.Sifra_Grad = KO.Sifra_Grad
  68890.     Left Outer Join Grad GG On GG.Sifra_Grad = Kup.Sifra_Grad
  68891.     Left Outer Join KDrugo1 K1 On K1.Sifra_1K=KO.KDrugo1
  68892.     Left Outer Join KDrugo2 K2 On K2.Sifra_2K=KO.KDrugo2
  68893.     Left Outer Join KDrugo3 K3 On K3.Sifra_3K=KO.KDrugo3
  68894.     Left Outer Join KDrugo4 K4 On K4.Sifra_4K=KO.KDrugo4
  68895.     Left Outer Join KDrugo5 K5 On K5.Sifra_5K=KO.KDrugo5
  68896.     Where K.Sifra_Obj Is Not Null 
  68897.     And K.Sifra_Kup+'&&&'+Cast(K.Sifra_Obj as varchar(6)) Not In (Select Distinct Sifra_Kup+'&&&'+cast(Sifra_Obj as varchar(6)) From #KomintDokr Where Sifra_Obj Is Not Null)
  68898.     Order By K.Sifra_Kup, K.Sifra_Obj
  68899. --select * from #komint order by sifra_kup
  68900. --select * from #komintdokr order by sifra_kup
  68901.  
  68902.  
  68903.  
  68904.  
  68905.  
  68906. Go
  68907. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komintodnepratenidok]'))
  68908. drop procedure [dbo].[sp_komintodnepratenidok]
  68909.  
  68910. Go
  68911.  
  68912. CREATE       PROCEDURE sp_KomintOdNePrateniDok
  68913.     @Sifra_OE    smallint,
  68914.     @Datum    smalldatetime
  68915.  AS
  68916.     Declare @SSQL Varchar(2000)
  68917.     CREATE TABLE #SiteKom
  68918.     (    Sifra_kup  varchar(10)
  68919.     )
  68920.     INSERT INTO #SiteKom  
  68921.     SELECT DISTINCT Sifra_Kup
  68922.     FROM Dokr
  68923.     WHERE (Sifra_OE = @Sifra_OE OR Sifra_Prim = @Sifra_OE) AND 
  68924.     (ImaDodatna IS NULL OR ImaDodatna <> 'P') AND 
  68925.     (Prenesen IS NULL OR Prenesen <> 'D')
  68926.     INSERT INTO #SiteKom  
  68927.     SELECT DISTINCT K.Kto Sifra_Kup  FROM Stavr S
  68928.     Inner Join Dokr D On S.DokrID=D.DokrID        
  68929.     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art
  68930.     Where (D.Prenesen IS NULL OR D.Prenesen <> 'D')
  68931.         And (D.Sifra_OE = 1 OR D.Sifra_Prim = 1) AND 
  68932.         (D.ImaDodatna IS NULL OR D.ImaDodatna <> 'P')        
  68933.     INSERT INTO #SiteKom
  68934.     SELECT DISTINCT Kto Sifra_Kup
  68935.     FROM KatArt 
  68936.     Where DodadenNa >= @Datum  or IzmenetNa >= @Datum    
  68937.     Select Distinct Sifra_Kup From #SiteKom
  68938.  
  68939.  
  68940.  
  68941. Go
  68942. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_komintsokolrab]'))
  68943. drop procedure [dbo].[sp_komintsokolrab]
  68944.  
  68945. Go
  68946.  
  68947.  
  68948. CREATE    PROCEDURE sp_KomintSoKolRab
  68949.     @Sifra_Kup char(6)=null
  68950. AS
  68951.         Declare @SSQL Varchar(2000)
  68952.     SET @SSQL='SELECT Sifra_Kup, ImeKup, Uces_Kol  FROM Komint K
  68953.                WHERE Uces_Kol is not null and Uces_Kol<>0'
  68954.     IF @Sifra_Kup IS NOT NULL 
  68955.         SET @SSQL = @SSQL + ' AND K.Sifra_Kup=''' + @Sifra_Kup +''' '
  68956.         EXEC(@SSQL)
  68957.  
  68958.  
  68959.  
  68960. Go
  68961. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_konfig]'))
  68962. drop procedure [dbo].[sp_konfig]
  68963.  
  68964. Go
  68965.  
  68966.  
  68967. CREATE         PROCEDURE sp_Konfig
  68968.     @Pole        varchar(30),
  68969.     @DataType    varchar(20) = Null,
  68970.     @Golemina    varchar(10) = Null,
  68971.     @VrednostNum    decimal(18,6) = Null,
  68972.     @Vrednost    varchar(300),
  68973.     @Akcija    char(1)
  68974.  AS
  68975.     Declare @SSQL as Varchar(2000)
  68976.     Declare @Tabela as varchar(20)
  68977.     Declare @TabID int
  68978.     Set @Tabela = 'KONFIG'
  68979.     Create Table #Tab
  68980.     (
  68981.     ImeKolona    Varchar(128),
  68982.     Tip        Varchar(128)
  68983.     )
  68984.     Create Table #Tab1
  68985.     (
  68986.     ImeKolona    Varchar(128),
  68987.     Tip        Varchar(128),
  68988.     Vrednost    Varchar(128)
  68989.     )
  68990.     Set @TabID = (Select ID From SysObjects Where Name = @Tabela)
  68991.     Insert Into #Tab (ImeKolona, Tip)
  68992.     Select SC.Name, ST.Name
  68993.     From SysColumns SC 
  68994.     Inner Join SysTypes ST On ST.XType =SC.XType
  68995.     Where SC.ID=@TabID and SC.Name=@Pole
  68996.     Declare Crs Cursor For Select ImeKolona, Tip From #Tab 
  68997.     Open Crs
  68998.     Declare @ImeKolona as varchar(128)
  68999.     Declare @Tip as varchar(128)
  69000.     Fetch Next From Crs Into @ImeKolona, @Tip
  69001.     While @@Fetch_Status = 0
  69002.         Begin    
  69003.         Set @SSQL = ' Select  Top 1 ''' + @ImeKolona + ''', ''' + @Tip + ''', ' + @ImeKolona + ' From ' + @Tabela + ' '
  69004.         Insert Into #Tab1 Exec(@SSQL)
  69005.         Fetch Next From Crs Into @ImeKolona, @Tip
  69006.     End --While
  69007.     Close Crs
  69008.     Deallocate Crs
  69009. --------- Ako ne postoi go vmetnvame poleto vo konfig
  69010.     If Not Exists (Select ImeKolona, Tip, Vrednost From #Tab1)
  69011.         If @Akcija = 'D' 
  69012.         Begin 
  69013.             Set @SSQL = ' Alter Table Konfig Add ' + @Pole + ' ' + @DataType + ' '
  69014.             If @Golemina Is Not Null
  69015.                 Set @SSQL = @SSQL + '(' + @Golemina + ') '
  69016.             Set @SSQL = @SSQL + 'Null '
  69017.             Print @SSQL
  69018.             Exec(@SSQL)
  69019.         End
  69020. --------- Ja menuvame vrdnosta na poleto so zadadenata
  69021.     If @Akcija = 'D'
  69022.     Begin
  69023.         Set @SSQL = ' '
  69024.         If @Vrednost Is Not Null 
  69025.             If IsNumeric(@Vrednost) = 1
  69026.                 Set @SSQL =  ' Update Konfig Set ' + @Pole + ' = ''' + @Vrednost + ''' '
  69027.             Else
  69028.                 Set @SSQL =  ' Update Konfig Set ' + @Pole + ' = ' + @Vrednost + ' '
  69029.         If @VrednostNum Is Not Null
  69030.             Set @SSQL =  ' Update Konfig Set ' + @Pole + ' = ' + Cast(@VrednostNum as varchar(20))
  69031.         Print @SSQL
  69032.         Exec(@SSQL)
  69033.         Print ' GOTOVO '
  69034.     End
  69035.     Else 
  69036.         Print ' Nema sto da pravam '
  69037.  
  69038.  
  69039.  
  69040.  
  69041. Go
  69042. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_konfigmesecgodina]'))
  69043. drop procedure [dbo].[sp_konfigmesecgodina]
  69044.  
  69045. Go
  69046.  
  69047. create  PROCEDURE sp_KonfigMesecGodina 
  69048.  
  69049.     @Mesec    smallint,
  69050.     @Godina    smallint
  69051. AS
  69052.     Update Konfig 
  69053.     Set Mesec=@Mesec, Godina=@Godina
  69054.  
  69055.  
  69056. Go
  69057. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_konfigpole]'))
  69058. drop procedure [dbo].[sp_konfigpole]
  69059.  
  69060. Go
  69061. CREATE PROCEDURE sp_KonfigPole
  69062.     @Pole        varchar(50) = Null,
  69063.     @Vred        varchar(50) = Null OUTPUT
  69064. AS
  69065.     Declare @SSQL as Varchar(1000)
  69066.     Declare @Tabela as varchar(20)
  69067.     Declare @TabID int
  69068.     Set @Tabela = 'KONFIG'
  69069.     Set @TabID = (Select ID From SysObjects Where Name = @Tabela)
  69070.     If Exists (Select SC.Name From SysColumns SC Where SC.ID=@TabID and SC.Name=@Pole)
  69071.     Begin
  69072.         Create Table #Tab
  69073.         (
  69074.          Vred    varchar(50)
  69075.         )
  69076.         If @Pole Is Not Null And @Pole <> ''
  69077.         Begin
  69078.             Set @SSQL = ' Select ' + @Pole + ' From Konfig '
  69079.             Insert Into #Tab Exec (@SSQL)
  69080.             Select @Vred = Vred From #Tab
  69081.         End
  69082.         If @Vred Is Null
  69083.             Set @Vred=''
  69084.     End
  69085.     Return @@ERROR
  69086.  
  69087.  
  69088. Go
  69089. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_konflokprn_zacustompaper]'))
  69090. drop procedure [dbo].[sp_konflokprn_zacustompaper]
  69091.  
  69092. Go
  69093.  
  69094. create  PROCEDURE sp_KonfLokPrn_ZaCustomPaper
  69095.     @Sifra_Oe    smallint = null,
  69096.     @Sifra_Dok    smallint = null,
  69097.         @ImePC          varchar(30)=null
  69098. AS
  69099.     Select * From KonfLokPrn
  69100.     Where Sifra_oe=@Sifra_Oe And Sifra_dok=@Sifra_dok and Lokacija=@ImePC
  69101.  
  69102.  
  69103.  
  69104. Go
  69105. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_konsignacija_izlez]'))
  69106. drop procedure [dbo].[sp_konsignacija_izlez]
  69107.  
  69108. Go
  69109. CREATE  PROCEDURE sp_Konsignacija_Izlez
  69110.     @Koi_OE    varchar(200) = NULL,
  69111.     @Dat_Od_Izlez    SmallDateTime = NULL,
  69112.     @Dat_Do_Izlez    SmallDateTime = NULL,
  69113.     @Koi_TipDok    varchar(200) = NULL,
  69114.     @Broj_KonsOd    int = NULL,
  69115.     @Broj_KonsDo    int = NULL,
  69116.     @Sifra_Art_Od    varchar(20) = NULL,
  69117.     @Sifra_Art_Do    varchar(20) = NULL,
  69118.     @Sifra_Kup_Od Char(6) = Null,
  69119.     @Sifra_Kup_Do Char(6) = Null,
  69120.     @Kto        Char(6) = Null,
  69121.     @Sifra_Gr    Char(3) = Null,
  69122.     @Sifra_Podg    Char(6) = Null,
  69123.     @Lokacija    Varchar(15) = Null,
  69124.     @Sifra_Brand    Smallint = Null,
  69125.     @CarBroj    Char(10) = Null,
  69126.     @VoDenari    char(1) = 'N'  -- D/N
  69127. AS
  69128.     Declare @SSQL as varchar(8000)
  69129.     Set @SSQL = ' SELECT S.Sifra_Art, K.ImeArt, S.KontrSer, Sum(S.Kolic) Kolic, '
  69130.     If @VoDenari = 'D'
  69131.         Set @SSQL = @SSQL + ' (S.DevCena*D.Kurs) DevCena, Sum(S.Kolic*S.DevCena*D.Kurs) Vrednost '
  69132.     Else -- If @VoDenari <> 'D'
  69133.         Set @SSQL = @SSQL + ' S.DevCena, Sum(S.Kolic*S.DevCena) Vrednost '
  69134.     Set @SSQL = @SSQL + ' FROM DevKons D
  69135.                 INNER JOIN DevStavKons S On S.DevKonsID=D.DevKonsID
  69136.                 INNER JOIN Katart K On K.Sifra_Art=S.Sifra_Art '
  69137.     If @Sifra_Gr Is Not Null
  69138.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  69139.     Set @SSQL = @SSQL + ' Where D.VlIzl=''I'' '
  69140.     IF @Koi_OE IS NOT NULL
  69141.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN (' + @Koi_OE + ') '
  69142.     IF @Koi_TipDok    IS NOT NULL
  69143.         SET @SSQL = @SSQL + ' AND S.Sifra_Dok IN (' + @Koi_TipDok + ') '
  69144.     IF @Dat_Od_Izlez IS NOT NULL
  69145.         SET @SSQL = @SSQL + ' AND D.Datum_Mag >=''' + Cast(@Dat_Od_Izlez as varchar(30)) + ''' '
  69146.     IF @Dat_Do_Izlez IS NOT NULL
  69147.         SET @SSQL = @SSQL + ' AND D.Datum_Mag <=''' + Cast(@Dat_Do_Izlez as varchar(30)) + ''' '
  69148.     IF @Broj_KonsOd IS NOT NULL
  69149.         SET @SSQL = @SSQL + ' AND S.Broj_Kons >=''' + Cast(@Broj_KonsOd as varchar(10)) + ''' '
  69150.     IF @Broj_KonsDo IS NOT NULL
  69151.         SET @SSQL = @SSQL + ' AND S.Broj_Kons <=''' + Cast(@Broj_KonsDo as varchar(10)) + ''' '
  69152.     IF @Sifra_Art_Od IS NOT NULL
  69153.         SET @SSQL = @SSQL + ' AND S.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  69154.     IF @Sifra_Art_Do IS NOT NULL
  69155.         SET @SSQL = @SSQL + ' AND S.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  69156.     IF @Sifra_Kup_Od Is Not Null
  69157.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup >=''' + @Sifra_Kup_Do + ''' '
  69158.     IF @Sifra_Kup_Do Is Not Null
  69159.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup <=''' + @Sifra_Kup_Do + ''' '
  69160.     IF @Kto IS NOT Null
  69161.         SET @SSQL = @SSQL + ' AND K.Kto  =''' + @Kto + ''' '
  69162.     IF @CarBroj IS NOT Null
  69163.         SET @SSQL = @SSQL + ' AND K.CarBroj  =''' + @CarBroj + ''' '
  69164.     IF @Sifra_Gr IS NOT Null
  69165.         SET @SSQL = @SSQL + ' AND P.Sifra_Gr  =''' + @Sifra_Gr + ''' '
  69166.     IF @Sifra_Podg IS NOT Null
  69167.         SET @SSQL = @SSQL + ' AND K.Sifra_Podg  =''' + @Sifra_Podg + ''' '
  69168.     IF @Lokacija IS NOT Null
  69169.         SET @SSQL = @SSQL + ' AND K.Alt_Sifra  =''' + @Lokacija + ''' '
  69170.     IF @Sifra_Brand    IS NOT Null
  69171.         SET @SSQL = @SSQL + ' AND K.Sifra_Drg  =' + Cast(@Sifra_Brand as varchar(7)) + ' '
  69172.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art, K.ImeArt, S.KontrSer, S.DevCena '
  69173.     If @VoDenari = 'D' 
  69174.         Set @SSQL = @SSQL + ', D.Kurs ' 
  69175.     Exec(@SSQL)
  69176.  
  69177.  
  69178. Go
  69179. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_konsignacijakontrolenpregled]'))
  69180. drop procedure [dbo].[sp_konsignacijakontrolenpregled]
  69181.  
  69182. Go
  69183. CREATE    PROCEDURE sp_KonsignacijaKontrolenPregled
  69184.     @Sifra_Kup    Char(6) = Null,
  69185.     @Sifra_Obj    smallint = Null,
  69186.     @Datum_Od    smalldatetime,
  69187.     @Datum_Do    smalldatetime,
  69188.     @SoDanok    char(1) = 'D',
  69189.     @DatumCena    smalldatetime = Null,
  69190.     @Org_EdCeni    smallint = Null
  69191. --    @CenaNaDat    char(1) = 'N',
  69192. --    @Sifra_Art    varchar(20) = Null
  69193. AS
  69194.     Declare @SSQL Varchar    (8000)
  69195.     Create Table #Ceni
  69196.     (
  69197.      Sifra_Art    varchar(20),
  69198.      CenaDat    decimal(18,6)
  69199.     )
  69200.     Insert Into #Ceni
  69201.     Select Sifra_Art, dbo.fn_CenaDatum(@Org_EdCeni, Sifra_Art, @DatumCena, @SoDanok)
  69202.     From Katart    
  69203.     Create Table #Tab
  69204.     (
  69205.      Sifra_Oe        smallint,
  69206.      Sifra_Dok        smallint,
  69207.      Broj_Dok        int,
  69208.      Datum_Dok        smalldatetime,
  69209.      VrDokVlez        decimal(18,6),
  69210.      VrDokCenaDatVlez    decimal(18,6),
  69211.      VrDokIzl        decimal(18,6),
  69212.      VrDokCenaDatIzl    decimal(18,6)
  69213.     )
  69214. /*    Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Datum_Dok, 
  69215.                 Sum((Case When (S.Sifra_Dok In (15,16,85,86) Or (S.Sifra_Dok=990 And D.VlIzl=''V'')) Then 
  69216.                         (Case When (K.SodrziEd<>0 And S.Sifra_Dok In (15,16,85,86)) Then (S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + '''))
  69217.                         Else (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')) End)
  69218.                 Else 0 End)) VrDokVlez,
  69219.                 Sum((Case When (S.Sifra_Dok In (15,16,85,86) Or (S.Sifra_Dok=990 And D.VlIzl=''V'')) Then 
  69220.                         (Case When (K.SodrziEd<>0 And S.Sifra_Dok In (15,16,85,86)) Then (S.Kolic*K.SodrziEd*C.CenaDat)
  69221.                         Else (S.Kolic * C.CenaDat) End)
  69222.                 Else 0 End)) VrDokCenaDatVlez,
  69223.                 Sum((Case When S.Sifra_Dok In (185, 186) Then (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')) Else 0 End)) VrDokIzl,
  69224.                 Sum((Case When S.Sifra_Dok In (185, 186) Then (S.Kolic * C.CenaDat) Else 0 End)) VrDokCenaDatIzl
  69225.                 From Stavr S
  69226.                 Inner Join Dokr D On D.DokrID = S.DokrID
  69227.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  69228.                 Left Outer Join #Ceni C On C.Sifra_Art = S.Sifra_Art
  69229.                 Where S.Sifra_Dok in (85,86,15,16,990,185,186) '
  69230. */     
  69231.     Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Datum_Dok, 
  69232.                 Sum((Case When (S.Sifra_Dok In (15,16,85,86) Or (S.Sifra_Dok=990 And D.VlIzl=''V'')) Then (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')) Else 0 End)) VrDokVlez, '
  69233.     If @Org_EdCeni = 3
  69234.         Set @SSQL = @SSQL + ' Sum((Case When (S.Sifra_Dok In (15,16,85,86)) Then (S.Kolic*K.SodrziEd*C.CenaDat) When (S.Sifra_Dok=990 And D.VlIzl=''V'') Then (S.Kolic*C.CenaDat) Else 0 End)) VrDokCenaDatVlez, '
  69235.     Else
  69236.         Set @SSQL = @SSQL + ' Sum((Case When (S.Sifra_Dok In (15,16,85,86)) Then (S.Kolic*C.CenaDat) When (S.Sifra_Dok=990 And D.VlIzl=''V'') Then (S.Kolic/K.SodrziEd*C.CenaDat) Else 0 End)) VrDokCenaDatVlez, '
  69237.     Set @SSQL = @SSQL + ' Sum((Case When S.Sifra_Dok In (185, 186) Then (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')) Else 0 End)) VrDokIzl, '
  69238.     If @Org_EdCeni = 3
  69239.         Set @SSQL = @SSQL + ' Sum((Case When S.Sifra_Dok In (185, 186) Then (S.Kolic*C.CenaDat) Else 0 End)) VrDokCenaDatIzl '
  69240.     Else
  69241.         Set @SSQL = @SSQL + ' Sum((Case When S.Sifra_Dok In (185, 186) Then (S.Kolic/K.SodrziEd*C.CenaDat) Else 0 End)) VrDokCenaDatIzl '
  69242.     Set @SSQL = @SSQL + ' From Stavr S
  69243.                 Inner Join Dokr D On D.DokrID = S.DokrID
  69244.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  69245.                 Left Outer Join #Ceni C On C.Sifra_Art = S.Sifra_Art
  69246.                 Where S.Sifra_Dok in (85,86,15,16,990,185,186) '
  69247. --    If @Sifra_Art Is Not Null
  69248. --        Set @SSQL = @SSQL + ' And S.Sifra_Art = ' + @Sifra_Art + ' '
  69249.     If @Sifra_Kup Is Not Null 
  69250.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ' + @Sifra_kup + ' '
  69251.     If @Sifra_Obj Is Not Null 
  69252.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj as Varchar(6)) + ' '
  69253.     If @Datum_Od Is Not Null 
  69254.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  69255.     If @Datum_Do Is Not Null 
  69256.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  69257.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Datum_Dok '
  69258.     Insert Into #Tab Exec(@SSQL)
  69259.     Select T.Sifra_Oe, T.Sifra_Dok, T.Broj_Dok, T.Datum_Dok, T.VrDokVlez, T.VrDokCenaDatVlez, T.VrDokIzl, T.VrDokCenaDatIzl
  69260.     From #Tab T
  69261.     Where Abs(T.VrDokVlez-T.VrDokCenaDatVlez) >= 0.5 Or Abs(T.VrDokIzl-T.VrDokCenaDatIzl) >= 0.5
  69262.  
  69263.  
  69264. Go
  69265. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kontenplan]'))
  69266. drop procedure [dbo].[sp_kontenplan]
  69267.  
  69268. Go
  69269.  
  69270.  
  69271. CREATE  PROCEDURE sp_KontenPlan
  69272.     @Kto_Klas_Od Char(1) = Null,
  69273.     @Kto_Klas_Do Char(1) = Null,
  69274.     @Kto_Sint_Od Char(3) = Null,
  69275.     @Kto_Sint_Do Char(3) = Null,
  69276.     @Kto_GrAn Char(2) = Null,
  69277.     @Kto_Anal_Od Char(10) = Null,
  69278.     @Kto_Anal_Do Char(10) = Null
  69279. AS
  69280.     Declare @SSQL Varchar(2000)
  69281.     Set @SSQL = 'Select K.Kto_Klas, K.ImeKlasa,
  69282.           S.Kto_Sint Sint_GrAn, S.ImeSint Ime_Sint_GrAn,
  69283.           A.Kto_Anal, A.ImeAnal
  69284.         From Klas K
  69285.         Left Outer Join Sint S On K.Kto_Klas=S.Kto_Klas
  69286.         Left Outer Join Anal A On S.Kto_Sint=A.Kto_Sint
  69287.         Where 1=1 '
  69288.     If @Kto_Klas_Od Is Not Null
  69289.         Set @SSQL = @SSQL + 'And K.Kto_Klas>=''' + @Kto_Klas_Od + ''' '
  69290.     If @Kto_Klas_Do Is Not Null
  69291.         Set @SSQL = @SSQL + 'And K.Kto_Klas<=''' + @Kto_Klas_Do + ''' '
  69292.     If @Kto_Sint_Od Is Not Null
  69293.         Set @SSQL = @SSQL + 'And S.Kto_Sint>=''' + @Kto_Sint_Od + ''' '
  69294.     If @Kto_Sint_Do Is Not Null
  69295.         Set @SSQL = @SSQL + 'And S.Kto_Sint<=''' + @Kto_Sint_Do + ''' '
  69296.     If @Kto_Anal_Od Is Not Null
  69297.         Set @SSQL = @SSQL + 'And A.Kto_Anal>=''' + @Kto_Anal_Od + ''' '
  69298.     If @Kto_Anal_Do Is Not Null
  69299.         Set @SSQL = @SSQL + 'And A.Kto_Anal<=''' + @Kto_Anal_Do + ''' '
  69300.     Set @SSQL = @SSQL + 'Union Select K.Kto_Klas, K.ImeKlasa,
  69301.          G.Kto_GrAn Sint_GrAn, G.ImeGrAn Ime_Sint_GrAn,
  69302.          Null, Null
  69303.         From Klas K
  69304.         Inner Join GrAnal G On K.Kto_Klas=G.Kto_Klas '
  69305.     Exec(@SSQL)
  69306.  
  69307.  
  69308.  
  69309.  
  69310. Go
  69311. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kontrolen_izv_zbfakt]'))
  69312. drop procedure [dbo].[sp_kontrolen_izv_zbfakt]
  69313.  
  69314. Go
  69315.  
  69316.  
  69317.  
  69318.  
  69319. CREATE PROCEDURE sp_Kontrolen_Izv_ZbFakt
  69320.     @Sifra_GrOrg     char (6),
  69321.     @Sifra_Dok      smallint,
  69322.     @Sifra_Dok2     smallint = Null,
  69323.     @Sifra_Dok3     smallint = Null,
  69324.     @Datum_Od     Smalldatetime = Null,
  69325.     @Datum_Do     Smalldatetime = Null,
  69326.     @Sifra_Prev     char (6) = Null,
  69327.     @PoIsprat    decimal(18,6) = Null Output,
  69328.     @Danok_Isprat    decimal(18,6) = Null Output,
  69329.     @Br_Isprat    decimal(18,6) = Null Output,
  69330.     @PoDok    decimal(18,6) = Null Output,
  69331.     @Danok_Dok    decimal(18,6) = Null Output,
  69332.     @Br_Isprat_Dok    decimal(18,6) = Null Output,
  69333.     @Br_Dok    decimal(18,6) = Null Output,
  69334. --    @PoZbFakt    decimal(18,6) = Null Output,
  69335. --    @Danok_ZbFakt decimal(18,6) = Null Output,
  69336.     @PoIspZbFakt    decimal(18,6) = Null Output,
  69337.     @Danok_IspZbFakt decimal(18,6) = Null Output
  69338. AS
  69339.     Set Nocount On
  69340.     Declare @SSQL as varchar(8000)
  69341.     Declare @SSQLUsl as varchar(8000)
  69342.     Declare @SSQLPom as varchar(8000)
  69343.     Set @SSQLUsl =  ' '
  69344.     Set @SSQLPom =  ' '
  69345. ------------------------------------------------------ Da gi najdeme site dokumenti za koi nema napraveno zbirni fakturi --------------------------------------------------------------
  69346.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Toc200, D.Sifra_kup, Kup.ImeKup, Kup.Sifra_Grad, G.ImeGrad, P.ImePrev
  69347.             From Dokr D
  69348.             Left Outer Join DokrZbSta DzbS On DzbS.DokrID=D.DokrID
  69349.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  69350.             Left Outer Join Grad G On G.Sifra_Grad=Kup.Sifra_Grad
  69351.             Left Outer Join Prevoznik P On P.SIfra_Prev=D.Sifra_Prev
  69352.         Where D.DokrId Not In (Select DokrId From DokrZbSta)
  69353.         And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg= ''' + @Sifra_GrOrg + ''') '
  69354.     If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null And @Sifra_Dok3 Is Not Null
  69355.         Set @SSQL = @SSQL + ' And (D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok3 as varchar(6)) + ') '
  69356.     else if @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null 
  69357.         Set @SSQL = @SSQL + ' And (D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ') '
  69358.     else If @Sifra_Dok Is Not Null 
  69359.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  69360.     If @Datum_Od Is Not Null
  69361.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  69362.     If @Datum_Do Is Not Null
  69363.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  69364.     If @Sifra_Prev Is Not Null
  69365.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  69366.     Exec(@SSQL+@SSQLUsl+' Order By Kup.Sifra_Grad, Kup.ImeKup, D.Broj_Dok')
  69367. print @SSQL+@SSQLUsl+' Order By Kup.Sifra_Grad, Kup.ImeKup, D.Broj_Dok'
  69368. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  69369. -------------------------------------- Kontrola na fakturiranjeto (dali iznosite na zbirnite dok. se ednakvi na zbirovite na ispratnicite koi vleguvaat vo zbirnite f-ri) ------------------------------
  69370.     create   Table #Dok
  69371.     (
  69372.      PoIsprat    decimal(18,6),
  69373.      Danok_Isprat    decimal(18,6),
  69374.      Br_Isprat    decimal(18,6)
  69375.     )
  69376.     Set @SSQL = 'Select Sum(D.Toc200), Sum(D.Danok1+D.Danok2), Count(D.DokrId)
  69377.             From Dokr D
  69378.             Where D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg= ''' + @Sifra_GrOrg + ''') '
  69379.     If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null And @Sifra_Dok3 Is Not Null
  69380.         Set @SSQL = @SSQL + ' And (D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok3 as varchar(6)) + ') '
  69381.     else if @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null 
  69382.         Set @SSQL = @SSQL + ' And (D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ') '
  69383.     else If @Sifra_Dok Is Not Null 
  69384.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  69385.     Insert Into #Dok(PoIsprat, Danok_Isprat, Br_Isprat) Exec(@SSQL+@SSQLUsl)
  69386.     Select @PoIsprat=PoIsprat, @Danok_Isprat=Danok_Isprat, @Br_Isprat=Br_Isprat From #Dok
  69387. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  69388.     -- Gi barame kombinaciite na (sifra_oe i sifra_dok) od dokumentite i kombinaciite koi se javuvaat za soodvetni zbirni dokumenti (Sifra_Oe_Acc i Sifra_Oe_Dok) 
  69389.     Create Table #AccOeDok
  69390.     (
  69391.      Sifra_Oe    smallint,
  69392.      Sifra_Dok    smallint,
  69393.      Sifra_Oe_Acc    smallint,
  69394.      Sifra_Dok_Acc    smallint    
  69395.     )
  69396.     Set @SSQL = ' Select A.Sifra_Oe, A.Sifra_Dok, A.Sifra_Oe_Acc, A.Sifra_Dok_Acc 
  69397.             From KonfAccr A
  69398.             Where Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg= ''' + @Sifra_GrOrg + ''') ' 
  69399.     If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null And @Sifra_Dok3 Is Not Null
  69400.         Set @SSQL = @SSQL + ' And (A.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or A.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ' Or A.Sifra_Dok = ' + Cast(@Sifra_Dok3 as varchar(6)) + ') '
  69401.     else if @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null 
  69402.         Set @SSQL = @SSQL + ' And (A.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or A.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ') '
  69403.     else If @Sifra_Dok Is Not Null 
  69404.         Set @SSQL = @SSQL + ' And A.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  69405.     Insert Into #AccOeDok Exec(@SSQL)
  69406.     -- Da di najdam zbirnite dokumenti koi se napraveni od ispratnicite (zs ne mozam da napram sum ako imam join so stavkite)
  69407.     Create Table #KoiDok
  69408.     (
  69409.      DokrZbID    int,
  69410.      KolkuDok    smallint
  69411.     )
  69412.     Set @SSQL = 'Select Dzb.DokrZbID, Count(Distinct D.DokrID)
  69413.             From DokrZb Dzb
  69414.             Inner Join DokrZbSta DzbS On DzbS.DokrZbID=Dzb.DokrZbID
  69415.             Inner Join Dokr D On D.DokrID=DzbS.DokrID
  69416.             Inner Join #AccOeDok AOD On AOD.Sifra_Oe=D.Sifra_Oe And AOD.Sifra_Dok=D.Sifra_Dok
  69417.             Inner Join #AccOeDok AOD1 On AOD1.Sifra_Oe_Acc=Dzb.Sifra_Oe And AOD1.Sifra_Dok_Acc=Dzb.Sifra_Dok '
  69418.     -- dali filtrive za datum i prevoznik da gi gledame od dokr ili od dokrzb
  69419.     If @Datum_Od Is Not Null
  69420.         Set @SSQL = @SSQL + ' And Dzb.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  69421.     If @Datum_Do Is Not Null
  69422.         Set @SSQL = @SSQL + ' And Dzb.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  69423.     If @Sifra_Prev Is Not Null
  69424.         Set @SSQL = @SSQL + ' And Dzb.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  69425.     Set @SSQL = @SSQL + ' Group By Dzb.DokrZbID '
  69426.     Insert Into #KoiDok(DokrZbID, KolkuDok) Exec(@SSQL)
  69427.     Create Table #ZbDok
  69428.     (
  69429.      PoDok        decimal(18,6),
  69430.      Danok_Dok    decimal(18,6),
  69431.      Br_Isprat_Dok    decimal(18,6),
  69432.      Br_Dok        decimal(18,6)
  69433.     )
  69434.     Set @SSQL = 'Select Sum(Dzb.Toc200), Sum(Dzb.Danok1+Dzb.Danok2), Sum(D.KolkuDok), Count(Dzb.DokrZbID)
  69435.             From DokrZb Dzb
  69436.             Inner Join #KoiDok D On D.DokrZbID=Dzb.DokrZbID
  69437.             Where 1=1 '
  69438.     Insert Into #ZbDok(PoDok, Danok_Dok, Br_Isprat_Dok, Br_Dok) Exec(@SSQL)
  69439.     Select @PoDok=PoDok, @Danok_Dok=Danok_Dok, @Br_Isprat_Dok=Br_Isprat_Dok, @Br_Dok=Br_Dok From #ZbDok
  69440.     --------------------------------- Kontrola na vrzuvanje na ispratnici (dali zbirot na ispratnicite e ednakov na  zbirot na zbirnite fakturi vo koi vleguvaat -----------------------
  69441.     Create Table #DokOdDokr
  69442.     (
  69443.      DokrID        int
  69444.     )
  69445.     Set @SSQL = 'Select Distinct DzbS.DokrID
  69446.             From DokrZb Dzb
  69447.             Inner Join DokrZbSta DzbS On DzbS.DokrZbID=Dzb.DokrZbID
  69448.             Inner Join Dokr D On D.DokrID=DzbS.DokrID
  69449.             Inner Join #AccOeDok AOD On AOD.Sifra_Oe=D.Sifra_Oe And AOD.Sifra_Dok=D.Sifra_Dok
  69450.             Inner Join #AccOeDok AOD1 On AOD1.Sifra_Oe_Acc=Dzb.Sifra_Oe And AOD1.Sifra_Dok_Acc=Dzb.Sifra_Dok '
  69451.     -- dali filtrive za datum i prevoznik da gi gledame od dokr ili od dokrzb
  69452.     If @Datum_Od Is Not Null
  69453.         Set @SSQL = @SSQL + ' And Dzb.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  69454.     If @Datum_Do Is Not Null
  69455.         Set @SSQL = @SSQL + ' And Dzb.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  69456.     If @Sifra_Prev Is Not Null
  69457.         Set @SSQL = @SSQL + ' And Dzb.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  69458.     Insert Into #DokOdDokr(DokrID) Exec(@SSQL)
  69459.     Create Table #PoIsprat
  69460.     (
  69461.      PoIspZbFakt        decimal(18,6),
  69462.      Danok_IspZbFakt     decimal(18,6)
  69463.     )
  69464.     Set @SSQL = 'Select Sum(D.Toc200), Sum(D.Danok1+D.Danok2)
  69465.             From Dokr D
  69466.             Where D.DokrID In (Select DokrID From #DokOdDokr) '
  69467.     Insert Into #PoIsprat(PoIspZbFakt, Danok_IspZbFakt) Exec(@SSQL)
  69468.     Select @PoIspZbFakt=PoIspZbFakt, @Danok_IspZbFakt=Danok_IspZbFakt From #PoIsprat
  69469. Set Nocount Off
  69470.  
  69471.  
  69472.  
  69473. Go
  69474. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kontrolen_kol]'))
  69475. drop procedure [dbo].[sp_kontrolen_kol]
  69476.  
  69477. Go
  69478.  
  69479.  
  69480. CREATE       PROCEDURE sp_kontrolen_kol
  69481.     @Sifra_OE        smallint = NULL,
  69482.     @KoiOE        Varchar(6) = NULL,
  69483.     @Sifra_Art_Od        varchar(20) = NULL,
  69484.     @Sifra_Art_Do        varchar(20) = NULL,
  69485.     @Datum_Nal_Od     Smalldatetime = NULL,
  69486.     @Datum_Nal_Do     Smalldatetime = NULL,
  69487.     @Datum_Dok_Od     Smalldatetime = NULL,
  69488.     @Datum_Dok_Do     Smalldatetime = NULL,
  69489.     @Sifra_Kup        varchar(8) = NULL,
  69490.     @Sifra_Gr        char(3) = NULL,
  69491.     @Sifra_Podg        char(6) = NULL,
  69492.     @Lokacija        varchar(10) = NULL,
  69493.     @SamoRazliki        char(1) = 'D',
  69494.     @Sifra_Drg        smallint = Null,
  69495.     @TipDok        varchar(300) = Null
  69496. AS
  69497.     Declare @SSQL  As Varchar(4000)
  69498.     CREATE TABLE #Promet
  69499.     ( Sifra_OE    Smallint,
  69500.       Sifra_Art    Varchar(20),
  69501.       TVlez        Numeric(18, 4),
  69502.       TIzlez        Numeric(18, 4),
  69503.       So_Vlez    Numeric(18, 4),
  69504.       So_Izlez    Numeric(18, 4)
  69505.     )
  69506.     SET @SSQL =    'SELECT S.Sifra_OE, S.Sifra_Art, sum(dbo.fn_KolicVlIzl(S.VlIzl, S.Kolic, ''V'')) as TVlez, sum(dbo.fn_KolicVlIzl(S.VlIzl, S.Kolic, ''I'')) as TIzlez
  69507.             FROM Stavr S
  69508.             INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art And K.SMatUsl=''M'' '
  69509.     If @Sifra_Gr IS NOT NULL 
  69510.         Begin
  69511.             Set @SSQL=@SSQL+'INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  69512.             Set @SSQL=@SSQL+'INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  69513.         End
  69514.     SET @SSQL = @SSQL + 'WHERE 1=1 '
  69515.     If @Sifra_OE Is Not Null
  69516.         SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  69517.     If @KoiOE Is Not Null
  69518.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  69519.     If @TipDok Is Not Null
  69520.         Set @SSQL = @SSQL + ' And S.Sifra_Dok In (' + @TipDok + ') '
  69521.         If @Sifra_Kup Is NOT NULL
  69522.         SET @SSQL = @SSQL + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  69523.     If @Sifra_Art_Od Is NOT Null
  69524.         SET @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  69525.     If @Sifra_Art_Do Is NOT Null
  69526.          SET @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  69527.     If @Datum_Dok_Od Is NOT Null
  69528.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  69529.     If @Datum_Dok_Do Is NOT Null
  69530.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  69531.     If @Sifra_Gr IS NOT NULL
  69532.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  69533.     If @Sifra_Podg IS NOT NULL
  69534.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  69535.     If @Lokacija IS NOT NULL
  69536.         Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  69537.     If @Sifra_Drg Is Not Null
  69538.         SET @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(10)) + ' '
  69539.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_OE, S.Sifra_Art'
  69540.     INSERT INTO #Promet (Sifra_OE, Sifra_Art, TVlez, TIzlez) EXEC(@SSQL)
  69541.     CREATE TABLE #Promet1
  69542.     ( Sifra_OE    Smallint,
  69543.       Sifra_Art    Varchar(20),
  69544.       So_Vlez    Numeric(18, 4),
  69545.       So_Izlez    Numeric(18, 4), 
  69546.       ImaPromet    char(1)
  69547.     )
  69548.     SET @SSQL = 'SELECT S.Sifra_OE As Sifra_OE, S.Sifra_Art As Sifra_Art, S.Vlez As So_Vlez, S.Izlez As So_Izlez, ''N'' As ImaPromet
  69549.     FROM SoArt S
  69550.     INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art  And K.SMatUsl=''M'' '
  69551.     If @Sifra_Gr IS NOT NULL 
  69552.         Begin
  69553.             Set @SSQL=@SSQL+'INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  69554.             Set @SSQL=@SSQL+'INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  69555.         End
  69556.     SET @SSQL = @SSQL + 'WHERE 1=1 '
  69557.     If @Sifra_OE Is Not Null
  69558.         SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  69559.     If @KoiOE Is Not Null
  69560.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  69561.     
  69562.     If @Sifra_Kup Is NOT NULL
  69563.         SET @SSQL = @SSQL + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  69564.     If @Sifra_Art_Od Is NOT Null
  69565.         SET @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  69566.     If @Sifra_Art_Do Is NOT Null
  69567.          SET @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  69568.     If @Sifra_Gr IS NOT NULL
  69569.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  69570.     If @Sifra_Podg IS NOT NULL
  69571.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  69572.     If @Lokacija IS NOT NULL
  69573.         Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  69574.     If @Sifra_Drg Is Not Null
  69575.         SET @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(10)) + ' '
  69576.     INSERT INTO #Promet1 EXEC(@SSQL)
  69577.     UPDATE #Promet1
  69578.     SET ImaPromet = 'D'
  69579.     FROM #Promet
  69580.     WHERE #Promet.Sifra_Art =  #Promet1.Sifra_Art AND #Promet.Sifra_OE =  #Promet1.Sifra_OE
  69581.     UPDATE #Promet
  69582.     SET So_Vlez = #Promet1.So_Vlez,  So_Izlez = #Promet1.So_Izlez
  69583.     FROM #Promet1
  69584.     WHERE #Promet.Sifra_Art =  #Promet1.Sifra_Art AND #Promet.Sifra_OE =  #Promet1.Sifra_OE
  69585.     INSERT INTO #Promet (Sifra_OE, Sifra_Art, So_Vlez, So_Izlez)
  69586.     SELECT Sifra_OE, Sifra_Art, So_Vlez, So_Izlez
  69587.     FROM #Promet1
  69588.     WHERE #Promet1.ImaPromet <> 'D'  
  69589. If @SamoRazliki = 'D'
  69590.     SELECT P.Sifra_OE, P.Sifra_Art, K.ImeArt, K.EdMera, P.TVlez, P.TIzlez, P.So_Vlez, P.So_Izlez
  69591.     FROM #Promet P
  69592.     Inner Join Katart K On P.Sifra_Art=K.Sifra_Art 
  69593.     WHERE Abs((P.TVlez-P.TIzlez) - (P.So_Vlez-P.So_Izlez)) > 0.001
  69594.     Order By P.Sifra_Art, P.Sifra_OE 
  69595. Else
  69596.     SELECT P.Sifra_OE, P.Sifra_Art, K.ImeArt, K.EdMera, P.TVlez, P.TIzlez, P.So_Vlez, P.So_Izlez
  69597.     FROM #Promet P
  69598.     Inner Join Katart K On P.Sifra_Art=K.Sifra_Art 
  69599.     Order By P.Sifra_Art, P.Sifra_OE
  69600.  
  69601.  
  69602.  
  69603.  
  69604. Go
  69605. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kontrolen_vr]'))
  69606. drop procedure [dbo].[sp_kontrolen_vr]
  69607.  
  69608. Go
  69609. CREATE     PROCEDURE sp_kontrolen_vr
  69610.     @Sifra_OE        smallint = NULL,
  69611.     @KoiOE        Varchar(6) = NULL,
  69612.     @Sifra_Art_Od        varchar(20) = NULL,
  69613.     @Sifra_Art_Do        varchar(20) = NULL,
  69614.     @Datum_Nal_Od     Smalldatetime = NULL,
  69615.     @Datum_Nal_Do     Smalldatetime = NULL,
  69616.     @Datum_Dok_Od     Smalldatetime = NULL,
  69617.     @Datum_Dok_Do     Smalldatetime = NULL,
  69618.     @SoDDV        char(1) = 'D',         -- D/N
  69619.     @Sifra_Kup        varchar(8) = NULL,
  69620.     @Sifra_Gr        char(3) = NULL,
  69621.     @Sifra_Podg        char(6) = NULL,
  69622.     @Lokacija        varchar(10) = NULL,
  69623.     @SamoRazliki        char(1) = 'D',
  69624.     @CenaOdSoart        char(1) = 'D',        -- 'D' - Ja zema Cena od Soart      'N' - cenata ja zema od stavr      S - Cena na datum
  69625.     @Sifra_Drg        smallint = Null,
  69626.     @TipDok        varchar(300) = Null
  69627. AS
  69628.     Declare @SSQL  As Varchar(4000)
  69629.     Declare @SSQL1 As varchar(500)
  69630.     CREATE TABLE #Promet_Artikli
  69631.     ( 
  69632.       Sifra_OE     Smallint,
  69633.       Sifra_Art     Varchar(20),
  69634.       VlIzl         Char(1),
  69635.       Kolic         Numeric(18, 4),
  69636.       MagCena     Numeric(18, 4),
  69637.       DanMagCena     Char(1),
  69638.       ProcOsn     Numeric(6, 2),
  69639.       DokCena     Numeric(18, 4),
  69640.       DanDokCena     Char(1),
  69641.       Uces         Numeric(18, 6),
  69642.       Kasa         Numeric (6, 2)
  69643.     )
  69644.     CREATE TABLE #Promet
  69645.     ( 
  69646.       Sifra_OE    Smallint,
  69647.       Sifra_Art    Varchar(20),
  69648.       TVlez        Numeric(18, 4),
  69649.       TIzlez        Numeric(18, 4),
  69650.       TVr_Vlez    Numeric(18, 4),
  69651.       TVr_Izlez    Numeric(18, 4),
  69652.       Vr_RazlC    Numeric(18,4)
  69653.     )
  69654. Set Nocount On
  69655.     ---------------------------------------
  69656.     -- Tekoven Promet
  69657.     ---------------------------------------
  69658.     SET @SSQL =    'SELECT S.Sifra_OE, S.Sifra_Art, S.VlIzl, S.Kolic, S.MagCena, S.DanMagCena, S.POsn, S.DokCena, S.DanDokCena, S.Uces, D.Kasa
  69659.             FROM Stavr S
  69660.             INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art 
  69661.             INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  69662.     If @Sifra_Gr IS NOT NULL 
  69663.         Begin
  69664.             Set @SSQL=@SSQL+'INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  69665.             Set @SSQL=@SSQL+'INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  69666.         End
  69667.     SET @SSQL = @SSQL + 'WHERE 1=1 '
  69668.     If @Sifra_OE Is Not Null
  69669.         SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  69670.     If @KoiOE Is Not Null
  69671.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  69672.     If @TipDok Is Not Null
  69673.         Set @SSQL = @SSQL + ' And S.Sifra_Dok In (' + @TipDok + ') '
  69674.     If @Sifra_Kup Is NOT NULL
  69675.         SET @SSQL = @SSQL + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  69676.     If @Sifra_Art_Od Is NOT Null
  69677.         SET @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  69678.     If @Sifra_Art_Do Is NOT Null
  69679.          SET @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  69680.     If @Datum_Dok_Od Is NOT Null
  69681.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  69682.     If @Datum_Dok_Do Is NOT Null
  69683.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  69684.     If @Sifra_Gr IS NOT NULL
  69685.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  69686.     If @Sifra_Podg IS NOT NULL
  69687.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  69688.     If @Lokacija IS NOT NULL
  69689.         Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  69690.     If @Sifra_Drg Is Not Null
  69691.         SET @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(10)) + ' '
  69692.     INSERT #Promet_Artikli EXEC(@SSQL)
  69693.     DECLARE Stavki CURSOR FAST_FORWARD FOR SELECT * FROM #Promet_Artikli
  69694.     Declare @KojaOE Smallint
  69695.     Declare @Sifra_Art Varchar(20)
  69696.     Declare @VlIzl char(1)
  69697.     Declare @Kolic decimal(18,6)
  69698.     Declare @MagCena decimal(18,6)
  69699.     Declare @DanMagCena char(1)
  69700.     Declare @DokCena decimal(18,6)
  69701.     Declare @DanDokCena char(1)
  69702.     Declare @Uces decimal(18,6)    
  69703.     Declare @Kasa decimal(6,2)
  69704.     Declare @POsn decimal(6,2)
  69705.     Declare @Vlez decimal(18,6)
  69706.     Declare @Izlez decimal(18,6)
  69707.     Declare @Vr_Vlez decimal(18,6)
  69708.     Declare @Vr_Izlez decimal(18,6)
  69709.     OPEN Stavki
  69710.     FETCH NEXT FROM Stavki INTO @KojaOE, @Sifra_Art, @VlIzl, @Kolic, @MagCena, @DanMagCena, @POsn, @DokCena, @DanDokCena, @Uces, @Kasa
  69711.     WHILE @@FETCH_STATUS = 0
  69712.     Begin
  69713.     set @Vlez=0
  69714.     set @Izlez=0
  69715.     set @Vr_Vlez=0
  69716.     set @Vr_Izlez=0
  69717.     If @VlIzl='V'
  69718.         Begin
  69719.         Set @Vlez=@Vlez+@Kolic
  69720.         If @SoDDV='N'
  69721.             Begin
  69722. --                 Print 'Bez DDV 1'
  69723.                         If @DanMagCena='D'
  69724.                 Set @MagCena=@MagCena/(1+@POsn)
  69725.             End
  69726.         Else If @SoDDV='D'
  69727.             Begin
  69728. --              Print 'Bez DDV 2'
  69729.                If @DanMagCena='N'
  69730.                 Set @MagCena=@MagCena*(1+@POsn/100)
  69731.             End
  69732.         Set @Vr_Vlez=@Vr_Vlez+@Kolic*@MagCena
  69733.         End
  69734.     Else If @VlIzl='I'
  69735.        Begin
  69736.         Set @Izlez=@Izlez+@Kolic
  69737.         If @SoDDV='N'
  69738.             Begin
  69739. --              Print 'Bez DDV 3'
  69740.                If @DanDokCena='D'
  69741.                 Set @DokCena=@DokCena/(1+@POsn/100)
  69742.             End
  69743.         Else If @SoDDV='D'
  69744.             Begin
  69745. --              Print 'So DDV 4'
  69746.         If @DanDokCena='N'
  69747.                 Set @DokCena=@DokCena*(1+@POsn/100)
  69748.             End
  69749.     Set @DokCena = @DokCena * (1- @Uces/100) * (1 - @Kasa/100)
  69750.     Set @Vr_Izlez=@Vr_Izlez+@Kolic*@DokCena
  69751.         End
  69752.         INSERT #Promet (Sifra_OE, Sifra_Art, TVlez, TIzlez, TVr_Vlez, TVr_Izlez, Vr_RazlC)
  69753.         VALUES (@KojaOE, @Sifra_Art, @Vlez, @Izlez, @Vr_Vlez, @Vr_Izlez, 0)
  69754.         FETCH NEXT FROM Stavki INTO @KojaOE, @Sifra_Art, @VlIzl, @Kolic, @MagCena, @DanMagCena, @POsn, @DokCena, @DanDokCena, @Uces, @Kasa
  69755.     End
  69756.     CLOSE Stavki
  69757.     DEALLOCATE Stavki
  69758. Set Nocount Off
  69759.     CREATE TABLE #Promet1
  69760.     ( Sifra_OE        Smallint,
  69761.       Sifra_Art        Varchar(20),
  69762.       Tek_Vlez        Numeric(18, 4),
  69763.       Tek_Izlez        Numeric(18, 4),
  69764.       Tek_Vr_Vlez        Numeric(18, 4),
  69765.       Tek_Vr_Izlez        Numeric(18, 4),
  69766.       Vr_RazlC        Numeric(18,4),
  69767.       Cena            Numeric(18,6)
  69768.     )
  69769.     -------------------
  69770.     -- Razliki vo ceni
  69771.     -------------------
  69772.     SET @SSQL = 'SELECT R.Sifra_OE, R.Sifra_Art, 
  69773.     SUM((dbo.fn_VratiCena(R.KrCena,R.POsn,R.DanKrCena,'''+@SoDDV+''')-dbo.fn_VratiCena(R.PocCena,R.POsn,R.DanPocCena,'''+@SoDDV+'''))*R.Kolic) As Vr_RazlC
  69774.     FROM RazlCeni R
  69775.     INNER JOIN Katart K ON R.Sifra_Art = K.Sifra_Art  And K.SMatUsl=''M'' '
  69776.     If @Sifra_Gr IS NOT NULL 
  69777.         Begin
  69778.             Set @SSQL=@SSQL+'INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  69779.             Set @SSQL=@SSQL+'INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  69780.         End
  69781.     SET @SSQL = @SSQL + 'WHERE 1=1 '
  69782.     If @Sifra_OE Is Not Null
  69783.         SET @SSQL = @SSQL + 'AND R.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  69784.     If @KoiOE Is Not Null
  69785.         Set @SSQL = @SSQL + 'And R.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  69786.     If @Sifra_Kup Is NOT NULL
  69787.         SET @SSQL = @SSQL + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  69788.     If @Sifra_Art_Od Is NOT Null
  69789.         SET @SSQL = @SSQL + 'AND R.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  69790.     If @Sifra_Art_Do Is NOT Null
  69791.          SET @SSQL = @SSQL + 'AND R.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  69792.     If @Datum_Dok_Od Is NOT Null
  69793.         SET @SSQL = @SSQL + 'AND R.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  69794.     If @Datum_Dok_Do Is NOT Null
  69795.          SET @SSQL = @SSQL + 'AND R.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  69796.     If @Sifra_Gr IS NOT NULL
  69797.         Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  69798.     If @Sifra_Podg IS NOT NULL
  69799.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  69800.     If @Lokacija IS NOT NULL
  69801.         Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  69802.     If @Sifra_Drg Is Not Null
  69803.         SET @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(10)) + ' '
  69804.     Set @SSQL = @SSQL + ' GROUP BY R.Sifra_OE, R.Sifra_Art'
  69805.     INSERT #Promet (Sifra_OE, Sifra_Art, Vr_RazlC) EXEC(@SSQL)
  69806.     INSERT INTO #Promet1 
  69807.     SELECT Sifra_OE, Sifra_Art,
  69808.     Sum(TVlez) As Tek_Vlez, Sum(TIzlez) As Tek_Izlez,
  69809.     Sum(TVr_Vlez) As Tek_Vr_Vlez, Sum(TVr_Izlez) As Tek_Vr_Izlez, 
  69810.     Sum(Vr_RazlC) As Vr_RazlC, 0 As Cena
  69811.     FROM #Promet
  69812.     GROUP BY Sifra_OE, Sifra_Art
  69813.     If @CenaOdSoart = 'N'
  69814.     Begin
  69815.         CREATE TABLE #CeniArtN
  69816.         ( 
  69817.           Sifra_Art  varchar(20),    
  69818.           Datum smalldatetime,
  69819.           DokID  int
  69820.         )
  69821.         Set @SSQL = 'SELECT S.Sifra_art, max(S.Datum_Dok) Datum, max(S.DokID) DokID
  69822.             FROM Stavr S '
  69823.         SET @SSQL = @SSQL + 'WHERE S.Kolic > 0 AND S.VlIZl = ''V'' '        
  69824.         If @Datum_Dok_Do IS Not NULL
  69825.             SET @SSQL = @SSQL + 'AND S.Datum_Dok <=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  69826.         If @Sifra_OE Is Not Null
  69827.             SET @SSQL = @SSQL + 'AND S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  69828.         If @TipDok Is Not Null -- dod 03.04.08 
  69829.             Set @SSQL = @SSQL + ' And S.Sifra_Dok In (' + @TipDok + ') '
  69830.         If @KoiOE Is Not Null
  69831.             Set @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  69832.         Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art '
  69833.         INSERT INTO #CeniArtN EXEC (@SSQL)
  69834.         Set @SSQL = 'UPDATE #Promet1
  69835.         SET    Cena = dbo.fn_VratiCena(MagCena,POsn,DanMagCena,''' +@SoDDV+''')
  69836.         FROM #CeniArtN C, Stavr S
  69837.         WHERE #Promet1.Sifra_Art = C.Sifra_Art AND S.DokID = C.DokID'
  69838.         EXEC (@SSQL)
  69839.     End
  69840.     Else If @CenaOdSoart = 'S'
  69841.     Begin
  69842.         Update #Promet1 Set Cena = dbo.fn_CenaDatum(Sifra_Oe, Sifra_Art, @Datum_Dok_Do, @SoDDV)
  69843.     End
  69844.     Else   -- @CenaOdSoart = 'D' (ili <> 'N'
  69845.     Begin
  69846.         UPDATE #Promet1
  69847.         SET #Promet1.Cena = dbo.fn_VratiCena(Soart.Cena, Soart.POsn, Soart.DanCena, @SoDDV)
  69848.         FROM Soart
  69849.         WHERE #Promet1.Sifra_Art = Soart.Sifra_Art And #Promet1.Sifra_Oe=Soart.Sifra_Oe 
  69850.     End
  69851.     If @SamoRazliki = 'D'
  69852.         SELECT P.Sifra_OE, P.Sifra_Art,    K.ImeArt, K.EdMera, K.Sifra_Tar,
  69853.              P.Tek_Vlez, P.Tek_Izlez, P.Tek_Vr_Vlez, P.Tek_Vr_Izlez, 
  69854.             P.Vr_RazlC, P.Cena
  69855.         FROM #Promet1 P
  69856.         Inner Join Katart K On P.Sifra_Art=K.Sifra_Art 
  69857.         WHERE Abs((P.Tek_Vlez-P.Tek_Izlez)*P.Cena - (P.Tek_Vr_Vlez-P.Tek_Vr_Izlez+P.Vr_RazlC)) > 0.01
  69858.         Order By P.Sifra_Art, P.Sifra_OE 
  69859.     Else
  69860.         SELECT P.Sifra_OE, P.Sifra_Art,    K.ImeArt, K.EdMera, K.Sifra_Tar,
  69861.              P.Tek_Vlez, P.Tek_Izlez, P.Tek_Vr_Vlez, P.Tek_Vr_Izlez, 
  69862.             P.Vr_RazlC, P.Cena
  69863.         FROM #Promet1 P
  69864.         Inner Join Katart K On P.Sifra_Art=K.Sifra_Art 
  69865.         Order By P.Sifra_Art, P.Sifra_OE
  69866.  
  69867.  
  69868. Go
  69869. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kontrolenlist_priem]'))
  69870. drop procedure [dbo].[sp_kontrolenlist_priem]
  69871.  
  69872. Go
  69873.  
  69874.  
  69875.  
  69876.  
  69877.  
  69878.  
  69879.  
  69880. CREATE        PROCEDURE [dbo].[sp_KontrolenList_Priem]
  69881.     @Sifra_Oe    Smallint,
  69882.     @Sifra_Dok    Smallint,
  69883.     @Broj_Dok    Int,
  69884.     @ImaDodatna    char(1) = 'P'
  69885. AS
  69886.     CREATE TABLE #TmpCeni
  69887.     (
  69888.      Sifra_Art    varchar(20),
  69889.      DokCena        decimal(18,6),
  69890.      DanDokCena    char(1),
  69891.      MagCena        decimal(18,6),
  69892.      DanMagCena    char(1), 
  69893.      POsn        decimal(6,2)
  69894.     )
  69895.     INSERT INTO #TmpCeni (Sifra_Art, DokCena, MagCena)
  69896.     SELECT Sifra_Art, AVG(DokCena), AVG(MagCena) FROM Stavr 
  69897.     WHERE Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  69898.     GROUP BY Sifra_Art
  69899.     UPDATE #TmpCeni SET DanDokCena=S.DanDokCena, DanMagCena=S.DanMagCena, POsn=S.POsn
  69900.     FROM Stavr S WHERE S.Sifra_Oe=@Sifra_Oe And S.Sifra_Dok=@Sifra_Dok And S.Broj_Dok=@Broj_Dok
  69901.     AND S.Sifra_Art=#TmpCeni.Sifra_Art
  69902.     If @ImaDodatna Is Not Null
  69903.         Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Datum_Vnes, D.Identif_Br,
  69904.             M.Sifra_Art, K.ImeArt, K.EdMera, M.Kolic, M.VlIzl, M.SpecOzn,
  69905.             D.Sifra_Kup, Kup.ImeKup, D.Sifra_Prim, P.ImeOrg as ImePrim, M.Paketi, D.TekstPosle,
  69906.             C.DokCena, C.MagCena, C.DanDokCena, C.DanMagCena, C.Posn, K.RokTraDen, O.ImeOrg, 
  69907.             M.LotBr, M.AltSerBr, M.Rbr, K.ImaKomerc, K.ImaBroevi, K.Tezina, K.BTezina, M.RokRed
  69908.         From Dokr D
  69909.         Inner Join MagStavr M On M.DokrID=D.DokrID
  69910.         Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup 
  69911.         Left Outer Join Orged P On P.Sifra_Oe=D.Sifra_Prim
  69912.                 Left Outer Join Orged O On O.Sifra_Oe=D.Sifra_Oe 
  69913.         Left Outer Join Katart K On K.Sifra_Art=M.Sifra_Art
  69914.         Left Outer Join #TmpCeni C ON M.Sifra_Art=C.Sifra_Art
  69915.         Where D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok And D.ImaDodatna=@ImaDodatna
  69916.     Else
  69917.         Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Datum_Vnes, D.Identif_Br,
  69918.             M.Sifra_Art, K.ImeArt, K.EdMera, M.Kolic, M.VlIzl, M.SpecOzn,
  69919.             D.Sifra_Kup, Kup.ImeKup, D.Sifra_Prim, P.ImeOrg as ImePrim, M.Paketi, D.TekstPosle,
  69920.             C.DokCena, C.MagCena, C.DanDokCena, C.DanMagCena, C.Posn, K.RokTraDen, O.ImeOrg, 
  69921.             M.LotBr, M.AltSerBr, M.Rbr, K.ImaKomerc, K.ImaBroevi, K.Tezina, K.BTezina, M.RokRed
  69922.         From Dokr D
  69923.         Inner Join MagStavr M On M.DokrID=D.DokrID
  69924.         Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup 
  69925.         Left Outer Join Orged P On P.Sifra_Oe=D.Sifra_Prim
  69926.         Left Outer Join Orged O On O.Sifra_Oe=D.Sifra_Oe 
  69927.         Left Outer Join Katart K On K.Sifra_Art=M.Sifra_Art
  69928.         Left Outer Join #TmpCeni C ON M.Sifra_Art=C.Sifra_Art
  69929.         Where D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  69930.  
  69931.  
  69932.  
  69933.  
  69934.  
  69935.  
  69936.  
  69937. Go
  69938. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kontrolenlist_priem_odma]'))
  69939. drop procedure [dbo].[sp_kontrolenlist_priem_odma]
  69940.  
  69941. Go
  69942.  
  69943.  
  69944. CREATE   procedure sp_KontrolenList_Priem_Odma
  69945.     @SpecOzn    varchar(50),
  69946.     @Sifra_Oe smallint,  
  69947.     @Lot varchar(30), 
  69948.     @ImeArt varchar(50), 
  69949.     @Isporacatel varchar(50), 
  69950.     @Kolic decimal(18,2), 
  69951.     @SifArt varchar(20), 
  69952.     @Datum smalldatetime
  69953. As
  69954. CREATE TABLE #IdentifKartOdma (SpecOzn varchar(50), Sifra_Oe smallint,  
  69955. Lot varchar(30), ImeArt varchar(50), Isporacatel varchar(50), Kolic decimal(18,2), SifArt varchar(20), Datum smalldatetime) 
  69956.  
  69957. Insert Into #IdentifKartOdma (SpecOzn, Sifra_Oe, Lot, ImeArt, Isporacatel, Kolic, SifArt, Datum) 
  69958. Values(@SpecOzn, @Sifra_OE, @Lot, @ImeArt, @Isporacatel, @Kolic, @SifArt, @Datum)
  69959.  
  69960. Select Sifra_Oe,1 as Sifra_Dok,1 as Broj_Dok,Datum as Datum_Dok,Datum As DatumVnes,SifArt as Sifra_Art, ImeArt,'' as EdMera, Kolic,'i' as VlIzl, SpecOzn,'1'as Sifra_Kup , Isporacatel as ImeKup,'1' as Sifra_Prim,'1' as  ImePrim,1 as Paketi,'1' as Identif_Br,'1' as TekstPole,'1' as RokTraDen,'1' as ImeOrg,Lot as LotBr,'1' as AltSerBr,1 as DokCena, 1 as DanDokCena,1 as Posn,1 as MagCena, 1 as DanMagCena
  69961. From #IdentifKartOdma
  69962.    
  69963.  
  69964.  
  69965.  
  69966. Go
  69967. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kor_grupa]'))
  69968. drop procedure [dbo].[sp_kor_grupa]
  69969.  
  69970. Go
  69971.  
  69972.  
  69973.  
  69974. create  PROCEDURE sp_Kor_Grupa
  69975.     @Sifra_Kor int
  69976. AS
  69977.     SELECT R.Name FROM Sysusers R
  69978.     INNER JOIN SysMembers M ON R.UID = M.GroupUID 
  69979.     WHERE M.MemberUID= @Sifra_Kor
  69980. RETURN @@ERROR
  69981.  
  69982.  
  69983.  
  69984. Go
  69985. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kor_meni]'))
  69986. drop procedure [dbo].[sp_kor_meni]
  69987.  
  69988. Go
  69989.  
  69990.  
  69991.  
  69992.  
  69993. CREATE    PROCEDURE sp_Kor_Meni
  69994.     @Sifra_GrKor char(20)
  69995. AS
  69996.     SELECT S.Podmeni, S.RbrMeni, E.Moznost, E.RbrMoznost
  69997.         FROM MeniPoKor S, MeniEdno E
  69998.         where S.podmeni = E.podmeni and S.Sifra_GrKor=@Sifra_GrKor
  69999.         order by S.RbrMeni, E.RbrMoznost
  70000. RETURN @@ERROR
  70001.  
  70002.  
  70003.  
  70004. Go
  70005. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kor_najava]'))
  70006. drop procedure [dbo].[sp_kor_najava]
  70007.  
  70008. Go
  70009.  
  70010. CREATE        PROCEDURE sp_Kor_Najava
  70011.     @operacija  varchar(20),
  70012.     @opis varchar(20),
  70013.     @dozv_def char(1)
  70014. AS
  70015.     Declare @ImaZapis  char(1)
  70016.     SELECT @ImaZapis = Dozv_Def  FROM Operacii WHERE Operacija = @Operacija
  70017.     If @ImaZapis IS NULL
  70018.         INSERT INTO Operacii (Operacija, Opis, Dozv_Def) VALUES (@Operacija, @Opis, @Dozv_Def)
  70019.  
  70020.  
  70021.  
  70022. Go
  70023. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kor_operacija]'))
  70024. drop procedure [dbo].[sp_kor_operacija]
  70025.  
  70026. Go
  70027. CREATE        PROCEDURE sp_Kor_Operacija
  70028.     @Sifra_Kor    int,
  70029.     @Operacija   varchar(20),
  70030.     @Gener_moze Char(1)  OUTPUT,
  70031.     @Vnes varChar(1)  OUTPUT,
  70032.     @Izmena varChar(1)  OUTPUT,
  70033.     @Brisenje varChar(1)  OUTPUT,
  70034.     @Pregled varChar(1)  OUTPUT
  70035. AS
  70036.     SET @Gener_moze = 'N'
  70037.     SET @Vnes  = 'N'
  70038.     SET @Izmena  = 'N'
  70039.     SET @Brisenje  = 'N'
  70040.     SET @Pregled  = 'N'
  70041.     CREATE  TABLE #Privil
  70042.     (KGener_moze Char(1),
  70043.     KVnes Char(1),
  70044.     KIzmena Char(1),
  70045.     KBrisenje Char(1),
  70046.     KPregled Char(1)
  70047.     )
  70048.     INSERT INTO #Privil 
  70049.     SELECT Gener_moze, Vnes, Izmena, Brisenje, Pregled 
  70050.     FROM Privilegii
  70051.     WHERE Operacija = @Operacija AND Sifra_GrKor IN
  70052.     (SELECT R.Name FROM Sysusers R
  70053.     INNER JOIN SysMembers M ON R.UID = M.GroupUID 
  70054.     WHERE M.MemberUID= @Sifra_Kor)
  70055.     DECLARE Stavki CURSOR FAST_FORWARD FOR SELECT * FROM #Privil
  70056.     Declare    @SGener_moze varChar(1) 
  70057.     Declare    @SVnes varChar(1)  
  70058.     Declare    @SIzmena varChar(1)  
  70059.     Declare    @SBrisenje varChar(1)  
  70060.     Declare    @SPregled varChar(1)  
  70061.     Declare @ImaP  varChar(1)    
  70062.     Set @ImaP = 'N'
  70063.     OPEN Stavki
  70064.     FETCH NEXT FROM Stavki INTO @SGener_moze, @SVnes, @SIzmena, @SBrisenje, @SPregled
  70065.     WHILE @@FETCH_STATUS = 0
  70066.     Begin
  70067.         Set @ImaP = 'D'
  70068.         If @Gener_Moze <> 'D'  AND  @SGener_Moze <> 'N'
  70069.             Set @Gener_Moze = @SGener_Moze
  70070.         If @Vnes <> 'D'
  70071.             Set @Vnes = @SVnes
  70072.         If @Izmena <> 'D'
  70073.             Set @Izmena = @SIzmena
  70074.         If @Brisenje <> 'D'
  70075.             Set @Brisenje = @SBrisenje
  70076.         If @Pregled <> 'D'
  70077.             Set @Pregled = @SPregled
  70078.         FETCH NEXT FROM Stavki INTO @SGener_moze, @SVnes, @SIzmena, @SBrisenje, @SPregled
  70079.     End
  70080.     CLOSE Stavki
  70081.     DEALLOCATE Stavki
  70082.     Truncate Table #Privil
  70083.     If @ImaP = 'N'
  70084.     Begin
  70085.         SELECT @Gener_moze = Dozv_Def FROM Operacii WHERE Operacija = @Operacija
  70086.         If @Gener_Moze = 'D'
  70087.         Begin
  70088.             SET @Vnes  = 'D'
  70089.             SET @Izmena  = 'D'
  70090.             SET @Brisenje  = 'D'
  70091.             SET @Pregled  = 'D'
  70092.         End
  70093.     End
  70094.  
  70095.  
  70096. Go
  70097. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_korisnicinadvor]'))
  70098. drop procedure [dbo].[sp_korisnicinadvor]
  70099.  
  70100. Go
  70101. CREATE PROCEDURE sp_KorisniciNadvor
  70102.     @KorIme    varchar(15),
  70103.     @Lozinka    varchar(15),
  70104.     @Sifra_Kup    char(6) Output,
  70105.     @OK        char(1) = 'N' Output
  70106. AS
  70107.     Declare @Pass as varbinary(100)
  70108.     Set @Pass = Cast(@Lozinka as varbinary(100))
  70109.     Declare @Kor as varchar(15)
  70110.     Declare @Loz as varbinary(100)
  70111.     Declare @Aktiven as char(1) 
  70112.     Declare @Aktiven_Od as smalldatetime
  70113.     Declare @Aktiven_Do as smalldatetime
  70114.     Select @Kor=KorIme, @Loz=lozinka, @Aktiven=Aktiven, @Aktiven_Od=Aktiven_Od, @Aktiven_Do=Aktiven_Do, @Sifra_Kup=Sifra_Kup
  70115.     From NadvKor
  70116.     Where KorIme=@KorIme
  70117.     If @Kor = @KorIme and @Loz=@Pass and @Aktiven='D' and (@Aktiven_Od is null Or @Aktiven_Od <= GetDate()) and (@Aktiven_Do is null Or @Aktiven_Do >= GetDate()) 
  70118.         Set @OK='D'  
  70119.          Else
  70120.         Begin 
  70121.             If @Aktiven_Od > GetDate()
  70122.                 Set @OK = 'U'    -- Ne e aktiviran
  70123.             If @Aktiven_Do < GetDate()
  70124.                 Set @OK = 'P'    -- Pomina vremeto 
  70125.             If @Aktiven <> 'D'
  70126.                 Set @OK = 'A'    -- Ne e aktiven
  70127.             If @Loz<>@Pass
  70128.                 Set @OK = 'L'    -- Gresna lozinka
  70129.             If @Kor<>@KorIme
  70130.                 Set @OK = 'K'    -- Nema takov korisnik
  70131.         End
  70132.  
  70133.  
  70134.  
  70135. Go
  70136. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kororgtip]'))
  70137. drop procedure [dbo].[sp_kororgtip]
  70138.  
  70139. Go
  70140.  
  70141. CREATE PROCEDURE sp_KorOrgTip
  70142.     @Sifra_Kor int
  70143. AS
  70144.     SELECT * FROM PrivilOrgTip  WHERE Sifra_GrKor IN
  70145.     (SELECT R.Name FROM Sysusers R
  70146.     INNER JOIN SysMembers M ON R.UID = M.GroupUID 
  70147.     WHERE M.MemberUID= @Sifra_Kor)
  70148. RETURN @@ERROR
  70149.  
  70150.  
  70151.  
  70152. Go
  70153. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_korprivkoncept]'))
  70154. drop procedure [dbo].[sp_korprivkoncept]
  70155.  
  70156. Go
  70157.  
  70158.  
  70159. create  PROCEDURE sp_KorPrivKoncept
  70160.     @Sifra_Kor int
  70161. AS
  70162.     SELECT * FROM PrivKoncept  WHERE Sifra_GrKor IN
  70163.     (SELECT R.Name FROM Sysusers R
  70164.     INNER JOIN SysMembers M ON R.UID = M.GroupUID 
  70165.     WHERE M.MemberUID= @Sifra_Kor)
  70166. RETURN @@ERROR
  70167.  
  70168.  
  70169.  
  70170. Go
  70171. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_korvogrupi]'))
  70172. drop procedure [dbo].[sp_korvogrupi]
  70173.  
  70174. Go
  70175.  
  70176. CREATE PROCEDURE sp_KorVoGrupi
  70177.     @rolename       sysname = NULL
  70178. AS
  70179.     if @rolename is not null
  70180.     begin
  70181.         -- VALIDATE GIVEN NAME
  70182.         if not exists (select * from sysusers where name = @rolename and issqlrole = 1)
  70183.         begin
  70184.             raiserror(15409, -1, -1, @rolename)
  70185.             return (1)
  70186.         end
  70187.         -- RESULT SET FOR SINGLE ROLE
  70188.         select DbRole = g.name, MemberName = u.name, MemberSID = u.sid
  70189.             from sysusers u, sysusers g, sysmembers m
  70190.             where g.name = @rolename
  70191.                 and g.uid = m.groupuid
  70192.                 and g.issqlrole = 1
  70193.                 and u.uid = m.memberuid
  70194.             order by 1, 2
  70195.     end
  70196.     else
  70197.     begin
  70198.         -- RESULT SET FOR ALL ROLES
  70199.         select DbRole = g.name, MemberName = u.name, MemberSID = u.sid
  70200.             from sysusers u, sysusers g, sysmembers m
  70201.             where   g.uid = m.groupuid
  70202.                 and g.issqlrole = 1
  70203.                 and u.uid = m.memberuid
  70204.             order by 1, 2
  70205.     end
  70206.     return (0) -- sp_helprolemember
  70207.  
  70208.  
  70209.  
  70210. Go
  70211. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_krediti_skalanadatumi]'))
  70212. drop procedure [dbo].[sp_krediti_skalanadatumi]
  70213.  
  70214. Go
  70215.  
  70216.  
  70217.  
  70218.  
  70219. CREATE    PROCEDURE [dbo].[sp_Krediti_SkalaNaDatumi]
  70220.     @Datum_Kredit_Do     Smalldatetime,
  70221.     @Datum_Presm     Smalldatetime,
  70222.     @Sifra_Kor         varchar(20) = Null,
  70223.     @Skala         Varchar(100),
  70224.     @Sifra_OE         Smallint = Null,    --dodadeno 30.09.2003 za Zito
  70225.     @Koi_Oe        varchar(10) = Null,
  70226.     @Broj_KreditOd        Int = Null,
  70227.     @Broj_KreditDo        Int = Null,
  70228.         @Nacin_Presm smallint=null,
  70229.         @Status_kredit nvarchar(30)=null,
  70230.         @Tip_posl_Opomena nvarchar(30)=null     
  70231. AS
  70232.     Set Nocount On
  70233.  
  70234.     Declare @SSQL Varchar(8000)
  70235.     Declare @SSQLUsl Varchar(8000)
  70236.  
  70237.     Set @SSQL = ' '
  70238.     Set @SSQLUsl = ' '
  70239.  
  70240.     If @Sifra_OE Is Not Null
  70241.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  70242.     If @Koi_OE Is Not NULL
  70243.              Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  70244.     If @Datum_Kredit_Do Is Not Null
  70245.         Set @SSQLUsl = @SSQLUsl + 'And K.Datum_Kredit<=''' + Cast(@Datum_Kredit_Do As Varchar(30)) + ''' '
  70246.     If @Sifra_Kor Is Not Null
  70247.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Kor = ''' + @Sifra_Kor + ''' '
  70248.     If @Broj_KreditOd Is Not Null
  70249.         Set @SSQLUsl = @SSQLUsl + 'And K.Broj_Kredit>=' + Cast(@Broj_KreditOd As Varchar(10)) + ' '
  70250.     If @Broj_KreditDo Is Not Null
  70251.         Set @SSQLUsl = @SSQLUsl + 'And K.Broj_Kredit<=' + Cast(@Broj_KreditDo As Varchar(10)) + ' '
  70252.         If @Nacin_Presm Is Not Null
  70253.         Set @SSQLUsl = @SSQLUsl + ' And K.Nacin_Presm = ' + Cast(@Nacin_Presm as varchar(10)) + ' '
  70254.         If @Status_kredit Is Not Null
  70255.         Set @SSQLUsl = @SSQLUsl + ' And case when K.Status_Kredit is null then 1 else K.Status_Kredit end In (' + Cast(@Status_kredit as varchar(10)) + ') ' 
  70256.         If @Tip_Posl_Opomena Is Not Null
  70257.         Set @SSQLUsl = @SSQLUsl + ' And K.Tip_Posl_Opomena in ( ' + Cast(@Tip_Posl_Opomena as varchar(10)) + ') '
  70258.     create                     Table #Kredit
  70259.     (    Sifra_Oe     smallint,
  70260.         Broj_Kredit    int,
  70261.         Sifra_Kor     varchar(20),
  70262.         Datum_Kredit     smalldatetime,
  70263.         Datum_Dosp    smalldatetime,
  70264.         VkupnaGlavnica    decimal(18,4),
  70265.         Dolzi        decimal(18, 4),
  70266.         Pobaruva    decimal(18, 4),
  70267.         Plateno_Dolzi    decimal(18, 4),
  70268.         Plateno_Pobaruva decimal(18,4),
  70269.         Dosp        varchar(20)
  70270.     )
  70271.  
  70272.     Set @SSQL = ' Select K.Sifra_Oe, K.Broj_Kredit, K.Sifra_Kor, K.Datum_Kredit, T.Datum_Dosp, 
  70273.             K.VkupnaGlavnica, T.Dolzi, T.Pobaruva, T.Plateno_Dolzi, T.Plateno_Pobaruva, ''0''
  70274.         From Kredit K
  70275.         Inner Join KreditTransakc T on T.Sifra_Oe=K.Sifra_Oe And K.Broj_Kredit=T.Broj_Kredit
  70276.         Where (Dolzi-Plateno_Dolzi <> 0 Or Pobaruva-Plateno_Pobaruva<>0) '
  70277.  
  70278.     Set @SSQL = @SSQL + @SSQLUsl
  70279.  
  70280.     Insert Into #Kredit Exec(@SSQL)
  70281.  
  70282.  
  70283.     Update #Kredit Set Dosp = '.Nedospeani' Where Datum_Dosp>=@Datum_Presm    -- Nedospeani
  70284.  
  70285.     Declare @Poz_Start as smallint
  70286.     Declare @Poz_Delim as smallint
  70287.     Declare @DoRokDosp as smallint
  70288.  
  70289.     Set @Poz_Start = 0
  70290.     WHILE 1=1
  70291.     Begin
  70292.         Set @Poz_Delim = Charindex(',', @Skala, @Poz_Start)
  70293.         If @Poz_Delim = 0
  70294.             Break
  70295.         Set @DoRokDosp = Cast(SubString(@Skala, @Poz_Start, @Poz_Delim-@Poz_Start) As Smallint)
  70296.         Set @Poz_Start = @Poz_Delim + 1
  70297.         Update #Kredit
  70298.             Set Dosp=@DoRokDosp
  70299.             Where DateDiff(day, Datum_Dosp, @Datum_Presm)<=@DoRokDosp
  70300.                 And Dosp='0'
  70301.     End
  70302.         Update #Kredit
  70303.             Set Dosp='Nad ' + Cast(@DoRokDosp as varchar(10)) + ' dena'
  70304.             Where DateDiff(day, Datum_Dosp, @Datum_Presm)>@DoRokDosp
  70305.                 And Dosp='0'
  70306.  
  70307.  
  70308.  
  70309.     Select K.Sifra_Oe, O.ImeOrg, K.Broj_Kredit, K.Sifra_Kor, Kor.ImeKor, K.Datum_Kredit, K.Datum_Dosp, 
  70310.         K.VkupnaGlavnica, K.Dolzi, K.Pobaruva, K.Plateno_Dolzi, K.Plateno_Pobaruva, 
  70311.         (K.Dolzi-K.Plateno_Dolzi)-(K.Pobaruva-K.Plateno_Pobaruva) Saldo, 
  70312.         (Case When IsNumeric(K.Dosp)=1 Then dbo.fn_levonuli(K.Dosp,3) Else K.Dosp End) Dosp
  70313.     From #Kredit K
  70314.     Inner Join Orged O On O.Sifra_Oe=K.Sifra_Oe
  70315.     Left Outer Join KartKor Kor On Kor.Sifra_Kor=K.Sifra_Kor
  70316.  
  70317.  
  70318.  
  70319.  
  70320.  
  70321.  
  70322.  
  70323. Go
  70324. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kreditispecifikacija]'))
  70325. drop procedure [dbo].[sp_kreditispecifikacija]
  70326.  
  70327. Go
  70328.  
  70329.  
  70330.  
  70331. CREATE         PROCEDURE [dbo].[sp_KreditiSpecifikacija]
  70332.  
  70333.     @Sifra_Oe smallint = null,
  70334.     @Sifra_Kor varchar(20) = null,
  70335.     @DatumOd smalldatetime= null,
  70336.     @DatumDo smalldatetime = null,
  70337.         @Nacin_Presm smallint=null,
  70338.         @Status_kredit nvarchar(30)=null,
  70339.         @Tip_posl_Opomena nvarchar(30)=null
  70340. AS
  70341.  
  70342.     Declare @SSQL Varchar(8000)
  70343.      Set @SSQL=' Select K.Sifra_Oe, K.Broj_Kredit, K.Sifra_Kor, KK.ImeKor, K.Datum_Kredit, K.Broj_Rati, K.VkupenProcKam, K.Nacin_Presm, K.VkupnaGlavnica, K.VkupnaKamata,
  70344.             K.PlatenoVednas, K.PlatenoRati, K.Kurs, Sum(T.Dolzi) Dolzi, Sum(T.Pobaruva) Pobaruva, Sum(T.Plateno_Dolzi) Plateno_Dolzi, Sum(T.Plateno_Pobaruva) Plateno_Pobaruva
  70345.         From Kredit K
  70346.         Inner Join KreditTransakc T On T.Sifra_Oe=K.Sifra_Oe And K.Broj_Kredit=T.Broj_Kredit
  70347.         Left Outer Join KartKor KK On KK.Sifra_kor=K.Sifra_Kor
  70348.         Where 1=1 '
  70349.     IF @Sifra_Kor IS NOT NULL
  70350.         SET @SSQL = @SSQL + ' AND K.Sifra_Kor='''+ @Sifra_Kor + ''' '
  70351.     If @Sifra_OE Is NOT Null
  70352.         SET @SSQL = @SSQL + ' AND K.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  70353.     If @DatumOd Is NOT Null
  70354.         SET @SSQL = @SSQL + ' AND K.Datum_Kredit>=''' + Cast(@DatumOd As Varchar(35)) + ''' '
  70355.     If @DatumDo Is NOT Null
  70356.         SET @SSQL = @SSQL + ' AND K.Datum_Kredit<=''' + Cast(@DatumDo As Varchar(35)) + ''' '
  70357.         If @Nacin_Presm Is Not Null
  70358.         Set @SSQL = @SSQL + ' And K.Nacin_Presm = ' + Cast(@Nacin_Presm as varchar(10)) + ' '
  70359.         If @Status_kredit Is Not Null
  70360.         Set @SSQL = @SSQL + ' And case when K.Status_Kredit is null then 1 else K.Status_Kredit end In (' + Cast(@Status_kredit as varchar(10)) + ') '
  70361.     If @Tip_Posl_Opomena Is Not Null
  70362.         Set @SSQL = @SSQL + ' And K.Tip_Posl_Opomena in ( ' + Cast(@Tip_Posl_Opomena as varchar(10)) + ') '
  70363.         Set @SSQL = @SSQL + ' Group By K.Sifra_Oe, K.Broj_Kredit, K.Sifra_Kor, KK.ImeKor, K.Datum_Kredit, K.Broj_Rati, K.VkupenProcKam, 
  70364.         K.Nacin_Presm, K.VkupnaGlavnica, K.VkupnaKamata, K.PlatenoVednas, K.PlatenoRati, K.Kurs '
  70365.     Exec(@ssql)
  70366.  
  70367. --print @SSQL
  70368.  
  70369.  
  70370.  
  70371.  
  70372.  
  70373.  
  70374. Go
  70375. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kreiraj_constraints]'))
  70376. drop procedure [dbo].[sp_kreiraj_constraints]
  70377.  
  70378. Go
  70379. CREATE        PROCEDURE sp_Kreiraj_Constraints
  70380. AS
  70381.     Declare @Godina as smallint
  70382.     Declare @Idni_Denovi_Nal as smallint
  70383.     Declare @Idni_Denovi_Dok as smallint
  70384.     Declare @Idni_Denovi_Nar as smallint
  70385.     Declare @Zatvoreno_Do as smalldatetime
  70386.     Select @Godina = Delov_God, @Idni_Denovi_Nal=Idni_Denovi_Nal, @Idni_Denovi_Dok=Idni_Denovi_Dok, 
  70387.         @Idni_Denovi_Nar=Idni_Denovi_Nar, @Zatvoreno_Do=Zatvoreno_Do 
  70388.     From KonfDat
  70389.     Declare @SSQL as varchar(4000)
  70390. ------ ANFINDOK ------------------------------------------------------------------------------------------------------------------------------------------
  70391.     If @Godina Is Not Null and @Idni_Denovi_Nal Is Not Null
  70392.     Begin
  70393.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_AnFinDok_DatNal1' AND type = 'C') 
  70394.             ALTER TABLE AnFinDok DROP CONSTRAINT CK_AnFinDok_DatNal1
  70395.         Set @SSQL = ' ALTER TABLE dbo.AnFinDok WITH NOCHECK ADD CONSTRAINT
  70396.         CK_AnFinDok_DatNal1 CHECK ((datepart(Year,Datum_Nal) = ' + Cast(@Godina as varchar(4)) + ' 
  70397.         OR datepart(Year,Datum_Nal)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70398.         and Datum_Nal <= dateadd(day, ' + cast(@Idni_Denovi_Nal as varchar(4)) + ', getdate()) )'
  70399.         Exec(@SSQL)
  70400.         print @SSQL
  70401.     End
  70402.     If @Zatvoreno_Do Is Not Null
  70403.     Begin
  70404.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_AnFinDok_DatNal2' AND type = 'C') 
  70405.             ALTER TABLE AnFinDok DROP CONSTRAINT CK_AnFinDok_DatNal2
  70406.         Set @SSQL = ' ALTER TABLE dbo.AnFinDok WITH NOCHECK ADD CONSTRAINT
  70407.         CK_AnFinDok_DatNal2 CHECK (Datum_Nal > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70408.         Exec(@SSQL)
  70409.         print @SSQL
  70410.     End
  70411. ------ NALOZI  --------------------------------------------------------------------------------------------------------------------------------------------
  70412.     If @Godina Is Not Null and @Idni_Denovi_Nal Is Not Null
  70413.     Begin
  70414.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Nalozi_DatNal1' AND type = 'C') 
  70415.             ALTER TABLE Nalozi DROP CONSTRAINT CK_Nalozi_DatNal1
  70416.         Set @SSQL = ' ALTER TABLE dbo.Nalozi WITH NOCHECK ADD CONSTRAINT
  70417.         CK_Nalozi_DatNal1 CHECK ((datepart(Year,Datum_Nal) = ' + Cast(@Godina as varchar(4)) + ' 
  70418.         OR datepart(Year,Datum_Nal)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70419.         and Datum_Nal <= dateadd(day, ' + cast(@Idni_Denovi_Nal as varchar(4)) + ', getdate()) )'
  70420.         Exec(@SSQL)
  70421.         print @SSQL
  70422.     End
  70423.     If @Zatvoreno_Do Is Not Null
  70424.     Begin
  70425.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Nalozi_DatNal2' AND type = 'C') 
  70426.             ALTER TABLE Nalozi DROP CONSTRAINT CK_Nalozi_DatNal2
  70427.         Set @SSQL = ' ALTER TABLE dbo.Nalozi WITH NOCHECK ADD CONSTRAINT
  70428.         CK_Nalozi_DatNal2 CHECK (Datum_Nal > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70429.         Exec(@SSQL)
  70430.         print @SSQL
  70431.     End
  70432. ------ GSTAV  --------------------------------------------------------------------------------------------------------------------------------------------
  70433.     If @Godina Is Not Null and @Idni_Denovi_Nal Is Not Null
  70434.     Begin
  70435.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_GStav_DatNal1' AND type = 'C') 
  70436.             ALTER TABLE GStav DROP CONSTRAINT CK_GStav_DatNal1
  70437.         Set @SSQL = ' ALTER TABLE dbo.GStav WITH NOCHECK ADD CONSTRAINT
  70438.         CK_GStav_DatNal1 CHECK ((datepart(Year,Datum_Nal) = ' + Cast(@Godina as varchar(4)) + ' 
  70439.         OR datepart(Year,Datum_Nal)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70440.         and Datum_Nal <= dateadd(day, ' + cast(@Idni_Denovi_Nal as varchar(4)) + ', getdate()) )'
  70441.         Exec(@SSQL)
  70442.         print @SSQL
  70443.     End
  70444.     If @Zatvoreno_Do Is Not Null
  70445.     Begin
  70446.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_GStav_DatNal2' AND type = 'C') 
  70447.             ALTER TABLE GStav DROP CONSTRAINT CK_GStav_DatNal2
  70448.         Set @SSQL = ' ALTER TABLE dbo.GStav WITH NOCHECK ADD CONSTRAINT
  70449.         CK_GStav_DatNal2 CHECK (Datum_Nal > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70450.         Exec(@SSQL)
  70451.         print @SSQL
  70452.     End
  70453. ------ DOKR ----------------------------------------------------------------------------------------------------------------------------------------------
  70454.     If @Godina Is Not Null and @Idni_Denovi_Dok Is Not Null
  70455.     Begin
  70456.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Dokr_DatDok1' AND type = 'C')             ALTER TABLE Dokr DROP CONSTRAINT CK_Dokr_DatDok1
  70457.         Set @SSQL = ' ALTER TABLE dbo.Dokr WITH NOCHECK ADD CONSTRAINT
  70458.         CK_Dokr_DatDok1 CHECK ((datepart(Year,Datum_Dok) = ' + Cast(@Godina as varchar(4)) + ' 
  70459.         OR datepart(Year,Datum_Dok)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70460.         and Datum_Dok <= dateadd(day, ' + cast(@Idni_Denovi_Dok as varchar(4)) + ', getdate()) )'
  70461.         Exec(@SSQL)
  70462.         print @SSQL
  70463.     End
  70464.     If @Zatvoreno_Do Is Not Null
  70465.     Begin
  70466.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Dokr_DatDok2' AND type = 'C') 
  70467.             ALTER TABLE Dokr DROP CONSTRAINT CK_Dokr_DatDok2
  70468.         Set @SSQL = ' ALTER TABLE dbo.Dokr WITH NOCHECK ADD CONSTRAINT
  70469.         CK_Dokr_DatDok2 CHECK (Datum_Dok > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70470.         Exec(@SSQL)
  70471.         print @SSQL
  70472.     End
  70473. ------ NARACKI --------------------------------------------------------------------------------------------------------------------------------------------
  70474.     If @Godina Is Not Null and @Idni_Denovi_Nar Is Not Null
  70475.     Begin
  70476.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Naracki_DatNar1' AND type = 'C') 
  70477.             ALTER TABLE Naracki DROP CONSTRAINT CK_Naracki_DatNar1
  70478.         Set @SSQL = ' ALTER TABLE dbo.Naracki WITH NOCHECK ADD CONSTRAINT
  70479.         CK_Naracki_DatNar1 CHECK ((datepart(Year,Datum_Nar) = ' + Cast(@Godina as varchar(4)) + ' 
  70480.         OR datepart(Year,Datum_Nar)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70481.         and Datum_Nar <= dateadd(day, ' + cast(@Idni_Denovi_Nar as varchar(4)) + ', getdate()) )'
  70482.         Exec(@SSQL)
  70483.         print @SSQL
  70484.     End
  70485.     If @Zatvoreno_Do Is Not Null
  70486.     Begin
  70487.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Naracki_DatNar2' AND type = 'C') 
  70488.             ALTER TABLE Naracki DROP CONSTRAINT CK_Naracki_DatNar2
  70489.         Set @SSQL = ' ALTER TABLE dbo.Naracki WITH NOCHECK ADD CONSTRAINT
  70490.         CK_Naracki_DatNar2 CHECK (Datum_Nar > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70491.         Exec(@SSQL)
  70492.         print @SSQL
  70493.     End
  70494. ------ POPIS --------------------------------------------------------------------------------------------------------------------------------------------
  70495.     If @Godina Is Not Null and @Idni_Denovi_Dok Is Not Null
  70496.     Begin
  70497.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Popis_Datum1' AND type = 'C') 
  70498.             ALTER TABLE Popis DROP CONSTRAINT CK_Popis_Datum1
  70499.         Set @SSQL = ' ALTER TABLE dbo.Popis WITH NOCHECK ADD CONSTRAINT
  70500.         CK_Popis_Datum1 CHECK ((datepart(Year,Datum) = ' + Cast(@Godina as varchar(4)) + ' 
  70501.         OR datepart(Year,Datum)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70502.         and Datum <= dateadd(day, ' + cast(@Idni_Denovi_Dok as varchar(4)) + ', getdate()) )'
  70503.         Exec(@SSQL)
  70504.         print @SSQL
  70505.     End
  70506.     If @Zatvoreno_Do Is Not Null
  70507.     Begin
  70508.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_Popis_Datum2' AND type = 'C') 
  70509.             ALTER TABLE Popis DROP CONSTRAINT CK_Popis_Datum2
  70510.         Set @SSQL = ' ALTER TABLE dbo.Popis WITH NOCHECK ADD CONSTRAINT
  70511.         CK_Popis_Datum2 CHECK (Datum > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70512.         Exec(@SSQL)
  70513.         print @SSQL
  70514.     End
  70515. ------ KASSTAV -------------------------------------------------------------------------------------------------------------------------------------------
  70516.     If @Godina Is Not Null and @Idni_Denovi_Dok Is Not Null
  70517.     Begin
  70518.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_KasStav_Datum1' AND type = 'C')
  70519.             ALTER TABLE KasStav DROP CONSTRAINT CK_KasStav_Datum1
  70520.         Set @SSQL = ' ALTER TABLE dbo.KasStav WITH NOCHECK ADD CONSTRAINT
  70521.         CK_KasStav_Datum1 CHECK ((datepart(Year,Dod_Datum) = ' + Cast(@Godina as varchar(4)) + ' 
  70522.         OR datepart(Year,Dod_Datum)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70523.         and Dod_Datum <= dateadd(day, ' + cast(@Idni_Denovi_Dok as varchar(4)) + ', getdate()) )'
  70524.         Exec(@SSQL)
  70525.         print @SSQL
  70526.     End
  70527.     If @Zatvoreno_Do Is Not Null
  70528.     Begin
  70529.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_KasStav_Datum2' AND type = 'C') 
  70530.             ALTER TABLE KasStav DROP CONSTRAINT CK_KasStav_Datum2
  70531.         Set @SSQL = ' ALTER TABLE dbo.KasStav WITH NOCHECK ADD CONSTRAINT
  70532.         CK_KasStav_Datum2 CHECK (Dod_Datum > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70533.         Exec(@SSQL)
  70534.         print @SSQL
  70535.     End
  70536. ------ RABNAL --------------------------------------------------------------------------------------------------------------------------------------------
  70537.     If @Godina Is Not Null and @Idni_Denovi_Dok Is Not Null
  70538.     Begin
  70539.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RabNal_Datum1' AND type = 'C') 
  70540.             ALTER TABLE RabNal DROP CONSTRAINT CK_RabNal_Datum1
  70541.         Set @SSQL = ' ALTER TABLE dbo.RabNal WITH NOCHECK ADD CONSTRAINT
  70542.         CK_RabNal_Datum1 CHECK ((datepart(Year,Datum_Otv) = ' + Cast(@Godina as varchar(4)) + ' 
  70543.         OR datepart(Year,Datum_Otv)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70544.         and Datum_Otv <= dateadd(day, ' + cast(@Idni_Denovi_Dok as varchar(4)) + ', getdate()) )'
  70545.         Exec(@SSQL)
  70546.         print @SSQL
  70547.     End
  70548.     If @Zatvoreno_Do Is Not Null
  70549.     Begin
  70550.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RabNal_Datum2' AND type = 'C') 
  70551.             ALTER TABLE RabNal DROP CONSTRAINT CK_RabNal_Datum2
  70552.         Set @SSQL = ' ALTER TABLE dbo.RabNal WITH NOCHECK ADD CONSTRAINT
  70553.         CK_RabNal_Datum2 CHECK (Datum_Otv > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70554.         Exec(@SSQL)
  70555.         print @SSQL
  70556.     End
  70557. ------ RAZLCENI --------------------------------------------------------------------------------------------------------------------------------------------
  70558.     If @Godina Is Not Null and @Idni_Denovi_Dok Is Not Null
  70559.     Begin
  70560.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlCeni_DatDok1' AND type = 'C') 
  70561.             ALTER TABLE RazlCeni DROP CONSTRAINT CK_RazlCeni_DatDok1
  70562.         Set @SSQL = ' ALTER TABLE dbo.RazlCeni WITH NOCHECK ADD CONSTRAINT
  70563.         CK_RazlCeni_DatDok1 CHECK ((datepart(Year,Datum_Dok) = ' + Cast(@Godina as varchar(4)) + ' 
  70564.         OR datepart(Year,Datum_Dok)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70565.         and Datum_Dok <= dateadd(day, ' + cast(@Idni_Denovi_Dok as varchar(4)) + ', getdate()) )'
  70566.         Exec(@SSQL)
  70567.         print @SSQL
  70568.     End
  70569.     If @Zatvoreno_Do Is Not Null
  70570.     Begin
  70571.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlCeni_DatDok2' AND type = 'C') 
  70572.             ALTER TABLE RazlCeni DROP CONSTRAINT CK_RazlCeni_DatDok2
  70573.         Set @SSQL = ' ALTER TABLE dbo.RazlCeni WITH NOCHECK ADD CONSTRAINT
  70574.         CK_RazlCeni_DatDok2 CHECK (Datum_Dok > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70575.         Exec(@SSQL)
  70576.         print @SSQL
  70577.     End
  70578. ------ RAZLFIN --------------------------------------------------------------------------------------------------------------------------------------------
  70579.     If @Godina Is Not Null and @Idni_Denovi_Dok Is Not Null
  70580.     Begin
  70581.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlFin_DatDok1' AND type = 'C') 
  70582.             ALTER TABLE RazlFin DROP CONSTRAINT CK_RazlFin_DatDok1
  70583.         Set @SSQL = ' ALTER TABLE dbo.RazlFin WITH NOCHECK ADD CONSTRAINT
  70584.         CK_RazlFin_DatDok1 CHECK ((datepart(Year,Datum_Dok) = ' + Cast(@Godina as varchar(4)) + ' 
  70585.         OR datepart(Year,Datum_Dok)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70586.         and Datum_Dok <= dateadd(day, ' + cast(@Idni_Denovi_Dok as varchar(4)) + ', getdate()) )'
  70587.         Exec(@SSQL)
  70588.         print @SSQL
  70589.     End
  70590.     If @Zatvoreno_Do Is Not Null
  70591.     Begin
  70592.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlFin_DatDok2' AND type = 'C') 
  70593.             ALTER TABLE RazlFin DROP CONSTRAINT CK_RazlFin_DatDok2
  70594.         Set @SSQL = ' ALTER TABLE dbo.RazlFin WITH NOCHECK ADD CONSTRAINT
  70595.         CK_RazlFin_DatDok2 CHECK (Datum_Dok > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70596.         Exec(@SSQL)
  70597.         print @SSQL
  70598.     End
  70599. ------ RAZLPROD --------------------------------------------------------------------------------------------------------------------------------------------
  70600.     If @Godina Is Not Null and @Idni_Denovi_Dok Is Not Null
  70601.     Begin
  70602.         IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlProd_DatDok1' AND type = 'C') 
  70603.             ALTER TABLE RazlProd DROP CONSTRAINT CK_RazlProd_DatDok1
  70604.         Set @SSQL = ' ALTER TABLE dbo.RazlProd WITH NOCHECK ADD CONSTRAINT
  70605.         CK_RazlProd_DatDok1 CHECK ((datepart(Year,Datum_Dok) = ' + Cast(@Godina as varchar(4)) + ' 
  70606.         OR datepart(Year,Datum_Dok)= ' + Cast((@Godina+1) as varchar(4)) + ') 
  70607.         and Datum_Dok <= dateadd(day, ' + cast(@Idni_Denovi_Dok as varchar(4)) + ', getdate()) )'
  70608.         Exec(@SSQL)
  70609.         print @SSQL
  70610.     End
  70611.     If @Zatvoreno_Do Is Not Null
  70612.     Begin        IF EXISTS (SELECT name FROM sysobjects WHERE name = 'CK_RazlProd_DatDok2' AND type = 'C') 
  70613.             ALTER TABLE RazlProd DROP CONSTRAINT CK_RazlProd_DatDok2
  70614.         Set @SSQL = ' ALTER TABLE dbo.RazlProd WITH NOCHECK ADD CONSTRAINT
  70615.         CK_RazlProd_DatDok2 CHECK (Datum_Dok > ''' + Cast(@Zatvoreno_Do as varchar(30)) + ''') '
  70616.         Exec(@SSQL)
  70617.         print @SSQL
  70618.     End
  70619.  
  70620.  
  70621. Go
  70622. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kreiraj_triggeri_ogranicuvanja]'))
  70623. drop procedure [dbo].[sp_kreiraj_triggeri_ogranicuvanja]
  70624.  
  70625. Go
  70626. CREATE PROCEDURE sp_Kreiraj_Triggeri_Ogranicuvanja
  70627. AS
  70628. Declare @SSQL as varchar(8000)
  70629. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70630. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RazlCeni_IzmeniBrisi' AND type = 'TR')
  70631.     Set @SSQL =  ' DROP TRIGGER tr_RazlCeni_IzmeniBrisi '  Exec(@SSQL)
  70632. Set @SSQL = 'CREATE TRIGGER tr_RazlCeni_IzmeniBrisi
  70633. ON dbo.RazlCeni
  70634. FOR DELETE, UPDATE
  70635. AS 
  70636. BEGIN
  70637.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70638.     Begin
  70639.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70640.         Rollback Tran
  70641.     End
  70642. END '
  70643. Exec(@SSQL)
  70644. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70645. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RazlProd_IzmeniBrisi' AND type = 'TR') 
  70646.     Set @SSQL =  'DROP TRIGGER tr_RazlProd_IzmeniBrisi '  Exec(@SSQL)
  70647. Set @SSQL = 'CREATE TRIGGER tr_RazlProd_IzmeniBrisi
  70648. ON dbo.RazlProd
  70649. FOR DELETE, UPDATE
  70650. AS 
  70651. BEGIN
  70652.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70653.     Begin
  70654.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70655.         Rollback Tran
  70656.     End
  70657. END '
  70658. Exec(@SSQL)
  70659. --------------------------------------------------------------------------------------------------------------------------------------------------------------------    
  70660. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_AnFinDok_IzmeniBrisi' AND type = 'TR') 
  70661.     Set @SSQL =  'DROP TRIGGER tr_AnFinDok_IzmeniBrisi '  Exec(@SSQL)
  70662. Set @SSQL =  'CREATE TRIGGER tr_AnFinDok_IzmeniBrisi
  70663. ON dbo.AnFinDok
  70664. FOR DELETE, UPDATE
  70665. AS 
  70666. BEGIN
  70667.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70668.     Begin
  70669.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70670.         Rollback Tran
  70671.     End
  70672. END '
  70673. Exec(@SSQL)
  70674. --------------------------------------------------------------------------------------------------------------------------------------------------------------------    
  70675. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RazlFin_IzmeniBrisi' AND type = 'TR') 
  70676.     Set @SSQL =  'DROP TRIGGER tr_RazlFin_IzmeniBrisi '  Exec(@SSQL)
  70677. Set @SSQL =  'CREATE TRIGGER tr_RazlFin_IzmeniBrisi
  70678. ON dbo.RazlFin
  70679. FOR DELETE, UPDATE
  70680. AS 
  70681. BEGIN
  70682.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70683.     Begin
  70684.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70685.         Rollback Tran
  70686.     End
  70687. END '
  70688. Exec(@SSQL)
  70689. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70690. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_GStav_IzmeniBrisi' AND type = 'TR') 
  70691.     Set @SSQL =  'DROP TRIGGER tr_GStav_IzmeniBrisi '  Exec(@SSQL)
  70692. Set @SSQL =  'CREATE TRIGGER tr_GStav_IzmeniBrisi
  70693. ON dbo.GStav
  70694. FOR DELETE, UPDATE
  70695. AS 
  70696. BEGIN
  70697.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70698.     Begin
  70699.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70700.         Rollback Tran
  70701.     End
  70702. END '
  70703. Exec(@SSQL)
  70704. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70705. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Dokr_IzmeniBrisi' AND type = 'TR') 
  70706.     Set @SSQL =  'DROP TRIGGER tr_Dokr_IzmeniBrisi '  Exec(@SSQL)
  70707. Set @SSQL =  'CREATE TRIGGER tr_Dokr_IzmeniBrisi
  70708. ON dbo.Dokr
  70709. FOR DELETE, UPDATE
  70710. AS 
  70711. BEGIN
  70712.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')
  70713.     Begin
  70714.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70715.         Rollback Tran
  70716.     End
  70717. END '
  70718. Exec(@SSQL)
  70719. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70720. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Naracki_IzmeniBrisi' AND type = 'TR') 
  70721.     Set @SSQL =  'DROP TRIGGER tr_Naracki_IzmeniBrisi ' Exec(@SSQL)
  70722. Set @SSQL =  'CREATE TRIGGER tr_Naracki_IzmeniBrisi
  70723. ON dbo.Naracki
  70724. FOR DELETE, UPDATE
  70725. AS 
  70726. BEGIN
  70727.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70728.     Begin
  70729.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70730.         Rollback Tran
  70731.     End
  70732. END '
  70733. Exec(@SSQL)
  70734. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70735. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_Popis_IzmeniBrisi' AND type = 'TR') 
  70736.     Set @SSQL =  'DROP TRIGGER tr_Popis_IzmeniBrisi '  Exec(@SSQL)
  70737. Set @SSQL =  'CREATE TRIGGER tr_Popis_IzmeniBrisi
  70738. ON dbo.Popis
  70739. FOR DELETE, UPDATE
  70740. AS 
  70741. BEGIN
  70742.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70743.     Begin
  70744.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70745.         Rollback Tran
  70746.     End
  70747. END '
  70748. Exec(@SSQL)
  70749. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70750. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_KasStav_IzmeniBrisi' AND type = 'TR') 
  70751.     Set @SSQL =  'DROP TRIGGER tr_KasStav_IzmeniBrisi '  Exec(@SSQL)
  70752. Set @SSQL =  'CREATE TRIGGER tr_KasStav_IzmeniBrisi
  70753. ON dbo.KasStav
  70754. FOR DELETE, UPDATE
  70755. AS 
  70756. BEGIN
  70757.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70758.     Begin
  70759.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70760.         Rollback Tran
  70761.     End
  70762. END '
  70763. Exec(@SSQL)
  70764. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70765. IF EXISTS (SELECT name FROM sysobjects WHERE name = 'tr_RabNal_IzmeniBrisi' AND type = 'TR') 
  70766.     Set @SSQL =  'DROP TRIGGER tr_RabNal_IzmeniBrisi '  Exec(@SSQL)
  70767. Set @SSQL =  'CREATE TRIGGER tr_RabNal_IzmeniBrisi
  70768. ON dbo.RabNal
  70769. FOR DELETE, UPDATE
  70770. AS 
  70771. BEGIN
  70772.     If Exists(Select Zaklucen From Deleted Where Zaklucen =''D'')   
  70773.     Begin
  70774.         RaisError('' Zapisot e zaklucen i ne moze da se BRISE / MENUVA '' , 16, 1)
  70775.         Rollback Tran
  70776.     End
  70777. END '
  70778. Exec(@SSQL)
  70779. --------------------------------------------------------------------------------------------------------------------------------------------------------------------
  70780.  
  70781.  
  70782. Go
  70783. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kumul_izvzaprod]'))
  70784. drop procedure [dbo].[sp_kumul_izvzaprod]
  70785.  
  70786. Go
  70787.  
  70788. CREATE    PROCEDURE sp_Kumul_IzvZaProd
  70789.     @Sifra_OE Smallint = 1,
  70790.     @KoiOE Varchar(300) = Null,
  70791.     @Pod1 Smallint = Null,
  70792.     @Pod2 Smallint = Null,
  70793.     @Pod3 Smallint = Null,
  70794.     @Pod4 Smallint = Null,
  70795.     @Pod5 Smallint = Null,
  70796.     @Sifra_Tip Smallint = Null,
  70797.     @Datum_Od Smalldatetime = Null,
  70798.     @Datum_Do Smalldatetime = Null,
  70799.     @Sifra_Art_Od Varchar(20)= Null,
  70800.     @Sifra_Art_Do Varchar(20) = Null,
  70801.     @Sifra_Kup_Od Char(6) = Null,
  70802.     @Sifra_Kup_Do Char(6) = Null,
  70803.     @Podred Char(1) = 3,
  70804.     @Sifra_Gr Char(3) = Null,
  70805.     @Sifra_Podg Char(6) = Null,
  70806.     @Lokacija Varchar(10) = Null,
  70807.     @TipKup Varchar(200) = Null,
  70808.     @Sifra_Brand Smallint = Null,
  70809.     @RazbijSostav Char(1) = 'N',
  70810.     @Koi_Gradovi Varchar(200) = Null,
  70811.     @Sifra_Pat    smallint    = Null,
  70812.     @Sifra_Obj    smallint  = Null,
  70813.     @TipDokProd    varchar(200) = Null,
  70814.     @Koi_Regioni    varchar(200) = Null,
  70815.     @Sifra_Mest Int = Null,
  70816.     @KomercKako    char(1) = '',                 -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  70817.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  70818.     @KolkuMesta    smallint = 6,        -- Se Odnesuva na podgrupite    2, 3, 4, 5, 6
  70819.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  70820.     @Drugo1    smallint = Null,
  70821.     @Drugo2    smallint = Null,
  70822.     @Drugo3    smallint = Null,
  70823.     @Drugo4    smallint = Null,
  70824.     @Drugo5    smallint = Null,
  70825.     @Mesecno_Dnevno    char(1) = 'M',    -- M - Mesecno,           D- Dnevno
  70826.     @TipDok_KnOdobr    smallint = Null,
  70827.     @DenKrVrednost    decimal(18,6) = Null Output,
  70828.     @KumKrVrednost    decimal(18,6) = Null Output
  70829. AS
  70830.     Declare @Datum_Od1 smalldatetime
  70831.     Declare @Datum_Do1 Smalldatetime
  70832.     If @Mesecno_Dnevno = 'D'
  70833.     Begin
  70834.         Set @Datum_Od1 = @Datum_Do
  70835.         Set @Datum_Do1 = @Datum_Do + 1
  70836.     End
  70837.     If @Mesecno_Dnevno = 'M'
  70838.     Begin
  70839.         Set @Datum_Od1 = cast(cast(year(@Datum_Do) as varchar(4)) +'-'+ cast(Month(@Datum_Do) as varchar(2)) +'-'+ '01'  as smalldatetime)
  70840.         If Month(@Datum_Do) = 12
  70841.             Set @Datum_Do1 = cast(cast((year(@Datum_do)+1) as varchar(4)) + '-01-01' as smalldatetime)
  70842.         Else 
  70843.             Set @Datum_Do1 = cast(cast(year(@Datum_Do) as varchar(4)) +'-'+ cast((Month(@Datum_Do) + 1) as varchar(2)) +'-'+ '01' as smalldatetime)
  70844. --        Set @Datum_Do1 = @Datum_Do1 - 1
  70845.     End
  70846. --    print @Datum_Od1
  70847. --    print @Datum_Do1
  70848.     If @PoKojDatum = 'V'
  70849.             If @Datum_Do Is Not Null
  70850.         Set @Datum_Do = @Datum_Do + 1
  70851.     Declare @SSQL Varchar(4000)
  70852.     Declare @SSQLUsl Varchar(4000)
  70853.     CREATE           Table #tSostav
  70854.     (    Sifra_Art Varchar(20),
  70855.         Sifra_Sur Varchar(20),
  70856.         Ima_Kolic Decimal(18,6),
  70857.         Cena Decimal(18,6),
  70858.         VkCena Decimal(18,6)
  70859.     )
  70860.     CREATE TABLE #TopLista
  70861.     (
  70862.         Sifra_Art    varchar(20) Null,
  70863.         Sifra_Kup    char(6) Null,
  70864.         Sifra_Pat    smallint Null,
  70865.         Sifra_Podg     char(6) Null,
  70866.         Vr_Osnov    decimal(18, 4) NULL ,
  70867.         ProcRabat    decimal(12,2) NULL,
  70868.         Vr_Neto        decimal(18,6) NULL,
  70869.         Vr_RazVoCena    decimal(18,6) NULL,
  70870.         ProcRazlCena    decimal(12,2) Null,
  70871.         Vr_OsnovPer    decimal(18, 4) NULL ,
  70872.         ProcRabatPer    decimal(12,2) NULL,
  70873.         Vr_NetoPer    decimal(18,6) NULL,        --Per - Period Den ili mesec
  70874.         Vr_RazVoCenaPer    decimal(18,6) NULL,
  70875.         ProcRazlCenaPer    decimal(12,2) Null
  70876.     )
  70877.     CREATE TABLE #TopListaPeriod
  70878.     (
  70879.         Sifra_Art    varchar(20) Null,
  70880.         Sifra_Kup    char(6) Null,
  70881.         Sifra_Pat    smallint Null,
  70882.         Sifra_Podg    char(6) Null,
  70883.         Vr_Osnov    decimal(18, 4) NULL ,
  70884.         ProcRabat    decimal(6,2) NULL,
  70885.         Vr_Neto        decimal(18,6) NULL,
  70886.         Vr_RazVoCena    decimal(18,6) NULL,
  70887.         ProcRazlCena    decimal(6,2) Null
  70888.     )
  70889.     If @RazbijSostav = 'D'
  70890.         Begin
  70891.             Set @SSQL = 'Insert #tSostav
  70892.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  70893.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  70894.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  70895.             Exec(@SSQL)
  70896.         End
  70897.     Set @SSQL = 'Insert #tSostav
  70898.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  70899.         From Katart K '
  70900.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  70901.     If @RazbijSostav = 'D'
  70902.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  70903.     Exec(@SSQL)
  70904. --select * from #tsostav order by sifra_art
  70905. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  70906. ----------------------------------------------------------------------------------------------
  70907.     Set @SSQL = 'Select TS.Sifra_Sur, D.Sifra_Kup, D.Sifra_Pat, ' 
  70908.     If @KolkuMesta Is Not Null        Set @SSQL =  @SSQL + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') as Sifra_Podg, '
  70909.     Else 
  70910.         Set @SSQL =  @SSQL +   ' K.Sifra_Podg, ' 
  70911.     SET @SSQL=@SSQL+' Round(Sum(dbo.fn_vr_Osnov(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) As Vr_Osnov, 0,
  70912.                 Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fn_VratiCenaOsnov (S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Neto,
  70913.                 Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fn_VratiCenaOsnov (S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) - 
  70914.                 Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fn_VratiCenaOsnov (S.NabCena*TS.Cena/TS.VkCena, ''N'', S.POsn, 0, 0)), 4) As Vr_RazlVoCena,
  70915.                 0, 0, 0, 0, 0, 0 '
  70916.     Set @SSQL = @SSQL + 'From #tSostav TS
  70917.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  70918.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  70919.         Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 '
  70920.     If @Sifra_Gr Is Not Null
  70921.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  70922.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  70923.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null Or @KomercKako='T')
  70924.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  70925.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  70926.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  70927.     If @Sifra_OE Is Not NULL
  70928.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  70929.     If @KoiOE Is Not NULL
  70930.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  70931.     If @Sifra_Art_Od Is Not Null
  70932.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  70933.     If @Sifra_Art_Do Is Not Null
  70934.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  70935.     If @Sifra_Kup_Od Is Not NULL
  70936.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  70937.     If @Sifra_Kup_Do Is Not NULL
  70938.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  70939.     If @Koi_Gradovi Is Not NULL    
  70940.         Begin
  70941.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  70942.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  70943.         End
  70944.     If @Koi_Regioni Is Not NULL    
  70945.         Begin
  70946.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  70947.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  70948.         End
  70949.     If @TipKup Is Not NULL
  70950.         Set @SSQL = @SSQL + ' And KUP.TipKup In (' + @TipKup + ') '
  70951.        If @KomercKako = 'I'
  70952.         If @Sifra_Pat IS NOT NULL
  70953.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  70954.        If @KomercKako = 'T'
  70955.         If @Sifra_Pat IS NOT NULL
  70956.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  70957.     If @Sifra_Obj IS NOT NULL
  70958.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  70959.     If @Sifra_Brand Is Not Null
  70960.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  70961.     If @Sifra_Podg Is Not Null
  70962.         If @PocnuvaSo = 'D'
  70963.             Set @SSQL = @SSQL + 'And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  70964.         Else 
  70965.             Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  70966.     If @Sifra_Gr Is Not Null
  70967.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  70968.     If @Pod1 Is Not NULL
  70969.            Begin
  70970.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  70971.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  70972.        End
  70973.     If @Pod2 Is Not NULL
  70974.            Begin
  70975.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  70976.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  70977.            End
  70978.     If @Pod3 Is Not NULL
  70979.            Begin
  70980.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  70981.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  70982.            End
  70983.     If @Pod4 Is Not NULL
  70984.            Begin
  70985.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  70986.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  70987.            End
  70988.     If @Pod5 Is Not NULL
  70989.            Begin
  70990.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  70991.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  70992.            End
  70993.     If @Sifra_Tip Is Not Null
  70994.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  70995.     If @Lokacija Is Not NULL
  70996.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  70997.     If @PoKojDatum = 'V'
  70998.           Begin
  70999.         If @Datum_Od Is Not NULL
  71000.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71001.         If @Datum_Do Is Not NULL
  71002.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71003.           End
  71004.     Else 
  71005.           Begin
  71006.         If @Datum_Od Is Not NULL
  71007.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71008.         If @Datum_Do Is Not NULL
  71009.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71010.            End
  71011.     If @TipDokProd IS NOT NULL
  71012.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  71013.     If @Sifra_Mest Is Not NULL
  71014.         Set @SSQL = @SSQL + ' And D.Sifra_Mest =''' + Cast(@Sifra_Mest As Varchar(6)) + ''' '
  71015.     If @Drugo1 Is Not NULL
  71016.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  71017.     If @Drugo2 Is Not NULL
  71018.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  71019.     If @Drugo3 Is Not NULL
  71020.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  71021.     If @Drugo4 Is Not NULL
  71022.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  71023.     If @Drugo5 Is Not NULL
  71024.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  71025.     Set @SSQL = @SSQL + 'Group By TS.Sifra_Sur, D.Sifra_Pat, D.Sifra_Kup, '
  71026.     If @KolkuMesta Is Not Null
  71027.         Set @SSQL =  @SSQL +   ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ')  '
  71028.     Else 
  71029.         Set @SSQL =  @SSQL +   ' K.Sifra_Podg ' 
  71030.     print (@ssql)
  71031.     Insert #TopLista Exec(@SSQL)
  71032.     --------------------------------------------------------------------------------------------------------------
  71033.     Set @SSQL = 'Select TS.Sifra_Sur, D.Sifra_Kup, D.Sifra_Pat, ' 
  71034.     If @KolkuMesta Is Not Null
  71035.         Set @SSQL =  @SSQL +   '  Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') as Sifra_Podg, '
  71036.     Else 
  71037.         Set @SSQL =  @SSQL +   '  K.Sifra_Podg, ' 
  71038.     SET @SSQL=@SSQL+' Round(Sum(dbo.fn_vr_Osnov(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) As Vr_Osnov, 0,
  71039.                 Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fn_VratiCenaOsnov (S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Neto,
  71040.                 Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fn_VratiCenaOsnov (S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) - 
  71041.                 Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fn_VratiCenaOsnov (S.NabCena*TS.Cena/TS.VkCena, ''N'', S.POsn, 0, 0)), 4) As Vr_RazlVoCena,
  71042.                 0 '
  71043.     Set @SSQL = @SSQL + 'From #tSostav TS
  71044.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  71045.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  71046.         Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 '
  71047.     If @Sifra_Gr Is Not Null
  71048.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  71049.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  71050.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null Or @KomercKako='T')
  71051.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  71052.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  71053.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  71054.     If @Sifra_OE Is Not NULL
  71055.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  71056.     If @KoiOE Is Not NULL
  71057.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  71058.     If @Sifra_Art_Od Is Not Null
  71059.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  71060.     If @Sifra_Art_Do Is Not Null
  71061.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  71062.     If @Sifra_Kup_Od Is Not NULL
  71063.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  71064.     If @Sifra_Kup_Do Is Not NULL
  71065.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  71066.     If @Koi_Gradovi Is Not NULL    
  71067.         Begin
  71068.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  71069.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  71070.         End
  71071.     If @Koi_Regioni Is Not NULL    
  71072.         Begin
  71073.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  71074.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  71075.         End
  71076.     If @TipKup Is Not NULL
  71077.         Set @SSQL = @SSQL + ' And KUP.TipKup In (' + @TipKup + ') '
  71078.        If @KomercKako = 'I'
  71079.         If @Sifra_Pat IS NOT NULL
  71080.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  71081.        If @KomercKako = 'T'
  71082.         If @Sifra_Pat IS NOT NULL
  71083.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  71084.     If @Sifra_Obj IS NOT NULL
  71085.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  71086.     If @Sifra_Brand Is Not Null
  71087.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  71088.     If @Sifra_Podg Is Not Null
  71089.         If @PocnuvaSo = 'D'
  71090.             Set @SSQL = @SSQL + 'And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  71091.         Else 
  71092.             Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  71093.     If @Sifra_Gr Is Not Null
  71094.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  71095.     If @Pod1 Is Not NULL
  71096.            Begin
  71097.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  71098.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  71099.            End
  71100.     If @Pod2 Is Not NULL
  71101.            Begin
  71102.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  71103.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  71104.            End
  71105.     If @Pod3 Is Not NULL
  71106.            Begin
  71107.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  71108.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  71109.            End
  71110.     If @Pod4 Is Not NULL
  71111.            Begin
  71112.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  71113.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  71114.            End
  71115.     If @Pod5 Is Not NULL
  71116.            Begin
  71117.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  71118.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  71119.            End
  71120.     If @Sifra_Tip Is Not Null
  71121.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  71122.     If @Lokacija Is Not NULL
  71123.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  71124.     If @PoKojDatum = 'V'
  71125.           Begin
  71126.         If @Datum_Od Is Not NULL
  71127.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od1 As Varchar(25)) + ''' '
  71128.         If @Datum_Do Is Not NULL
  71129.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do1 As Varchar(25)) + ''' '
  71130.           End
  71131.     Else 
  71132.           Begin
  71133.         If @Datum_Od Is Not NULL
  71134.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od1 As Varchar(25)) + ''' '
  71135.         If @Datum_Do Is Not NULL
  71136.             Set @SSQL = @SSQL + ' And S.Datum_Dok<''' + Cast(@Datum_Do1 As Varchar(25)) + ''' '
  71137.            End
  71138.     If @TipDokProd IS NOT NULL
  71139.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  71140.     If @Sifra_Mest Is Not NULL
  71141.         Set @SSQL = @SSQL + ' And D.Sifra_Mest =''' + Cast(@Sifra_Mest As Varchar(6)) + ''' '
  71142.     If @Drugo1 Is Not NULL
  71143.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  71144.     If @Drugo2 Is Not NULL
  71145.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  71146.     If @Drugo3 Is Not NULL
  71147.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  71148.     If @Drugo4 Is Not NULL
  71149.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  71150.     If @Drugo5 Is Not NULL
  71151.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  71152.     Set @SSQL = @SSQL + 'Group By TS.Sifra_Sur, D.Sifra_Pat, D.Sifra_Kup, '
  71153.     If @KolkuMesta Is Not Null
  71154.         Set @SSQL =  @SSQL +   ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ')  '
  71155.     Else 
  71156.         Set @SSQL =  @SSQL +   ' K.Sifra_Podg ' 
  71157.     print (@ssql)
  71158.     Insert #TopListaPeriod Exec(@SSQL)
  71159.     --------------------------------------------------------------------------------------------
  71160.     Update #TopLista Set ProcRabat =((1- (Vr_Neto/Vr_Osnov)) * 100) Where Vr_Osnov <> 0 
  71161.     Update #TopLista Set ProcRazlCena=Vr_RazVoCena/Vr_Neto*100 Where Vr_Neto<>0
  71162.     Update #TopListaPeriod Set ProcRabat =((1- (Vr_Neto/Vr_Osnov)) * 100) Where Vr_Osnov <> 0
  71163.     Update #TopListaPeriod Set ProcRazlCena=Vr_RazVoCena/Vr_Neto*100 Where Vr_Neto<>0
  71164.     
  71165.     Update #TopLista
  71166.     Set #TopLista.Vr_OsnovPer = #TopListaPeriod.Vr_Osnov,
  71167.         #TopLista.ProcRabatPer=#TopListaPeriod.ProcRabat,
  71168.         #TopLista.Vr_NetoPer=#TopListaPeriod.Vr_Neto,
  71169.         #TopLista.Vr_RazVoCenaPer=#TopListaPeriod.Vr_RazVoCena,
  71170.         #TopLista.ProcRazlCenaPer=#TopListaPeriod.ProcRazlCena
  71171.     From #TopListaPeriod
  71172.     Where #TopListaPeriod.Sifra_Podg=#TopLista.Sifra_Podg and #TopListaPeriod.Sifra_Art=#TopLista.Sifra_Art and #TopListaPeriod.Sifra_Pat=#TopLista.Sifra_Pat
  71173.         and #TopListaPeriod.Sifra_Kup=#TopLista.Sifra_Kup
  71174.     Set @SSQL =  'Select T.Sifra_Podg, P.Ime_Podg, T.Sifra_art, K.ImeArt, T.Sifra_Pat, Pat.ImePat, T.Sifra_Kup, Kup.ImeKup,
  71175.                 Sum(T.Vr_Osnov) Vr_Osnov, Sum(T.ProcRabat) ProcRabat, Sum(T.Vr_Neto) Vr_Neto, Sum(T.Vr_RazVoCena) Vr_RazVoCena,
  71176.                 Sum(T.ProcRazlCena) ProcRazlCena, Sum(T.Vr_OsnovPer) Vr_OsnovPer, Sum(T.ProcRabatPer) ProcRabatPer, Sum(T.Vr_NetoPer) Vr_NetoPer,
  71177.                 Sum(T.Vr_RazVoCenaPer) Vr_RazVoCenaPer, Sum(T.ProcRazlCenaPer) ProcRazlCenaPer 
  71178.                 From #TopLista T
  71179.                 Inner Join Podgrupi P On P.Sifra_Podg = T.Sifra_Podg 
  71180.                 Inner Join Katart K On K.Sifra_art = T.Sifra_art
  71181.                 Left Outer Join Patnici Pat On Pat.Sifra_Pat = T.Sifra_Pat
  71182.                 Left Outer Join Komint Kup On Kup.Sifra_Kup=T.Sifra_Kup
  71183.                 Group By T.Sifra_Podg, P.Ime_Podg, T.Sifra_art, K.ImeArt, T.Sifra_Pat, Pat.ImePat, T.Sifra_Kup, Kup.ImeKup '
  71184.     If @Podred = 'S'
  71185.         Set @SSQL = @SSQL + 'Order By T.Sifra_Podg '
  71186.     Else If @Podred = 'A'
  71187.         Set @SSQL = @SSQL + 'Order By K.Ime_Podg '
  71188.     Else If @Podred = '1'
  71189.         Set @SSQL = @SSQL + 'Order By T.VrOsnov DESC'
  71190.     Else If @Podred = '2'
  71191.         Set @SSQL = @SSQL + 'Order By T.ProcEabat DESC'
  71192.     Else If @Podred = '3'
  71193.         Set @SSQL = @SSQL + 'Order By T.Vr_Neto DESC'
  71194.     Else If @Podred = '4'
  71195.         Set @SSQL = @SSQL + 'Order By Vr_RazlVoCena DESC'
  71196.     Exec(@SSQL)
  71197. -- Gi presmetuvame Output parametrite za Kniznite odobrenija za periodot i kumulativno
  71198. --    Declare @SSQLUsl as VarChar(8000)
  71199.     Set @SSQLUsl = ' '
  71200.     If @TipDok_KnOdobr Is Not Null
  71201.     Begin
  71202.         Create Table #KnzOdobr
  71203.         (
  71204.          OdobrDen    decimal(18,6)
  71205.         )
  71206.         Set @SSQL = 'Select  Sum(D.Dolzi-D.Pobaruva)
  71207.             From AnFinDok D 
  71208.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup '
  71209.         Set @SSQL = @SSQL + 'Where Sifra_Dok = ' + cast(@TipDok_KnOdobr as varchar(10)) + ' '
  71210.         If @PoKojDatum = 'V'
  71211.         Begin
  71212.             If @Datum_Od Is Not NULL
  71213.                 Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71214.             If @Datum_Do Is Not NULL
  71215.                 Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71216.         End
  71217.         Else 
  71218.              Begin
  71219.             If @Datum_Od Is Not NULL
  71220.                 Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71221.             If @Datum_Do Is Not NULL
  71222.                 Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71223.                End
  71224.         If @Sifra_OE Is Not NULL
  71225.                  Set @SSQLUsl  = @SSQLUsl + ' And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  71226.         If @KoiOE Is Not NULL
  71227.                  Set @SSQLUsl  = @SSQLUsl + ' And D.Sifra_OE IN (' + @KoiOE + ') '
  71228.         If @Sifra_Kup_Od Is Not NULL
  71229.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  71230.         If @Sifra_Kup_Do Is Not NULL
  71231.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  71232.         If @Koi_Gradovi Is Not NULL    
  71233.                 Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Grad In ( ' + @Koi_Gradovi + ') '     
  71234.         If @Koi_Regioni Is Not NULL    
  71235.                 Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Reg In ( ' + @Koi_Regioni + ') '     
  71236.         If @TipKup Is Not NULL
  71237.             Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup In (' + @TipKup + ') '
  71238.            If @KomercKako = 'I'
  71239.             If @Sifra_Pat IS NOT NULL
  71240.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  71241.            If @KomercKako = 'T'
  71242.             If @Sifra_Pat IS NOT NULL
  71243.                 SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  71244.         If @Sifra_Obj IS NOT NULL
  71245.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  71246.         If @Pod1 Is Not NULL
  71247.             Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ' '        If @Pod2 Is Not NULL
  71248.             Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ' '
  71249.         If @Pod3 Is Not NULL
  71250.             Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ' '
  71251.         If @Pod4 Is Not NULL
  71252.             Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ' '
  71253.         If @Pod5 Is Not NULL
  71254.             Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ' '
  71255.         If @Sifra_Tip Is Not Null
  71256.             SET @SSQLUsl = @SSQLUsl +'And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  71257.         If @Lokacija Is Not NULL
  71258.             Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  71259.         If @Sifra_Mest Is Not NULL
  71260.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Mest =''' + Cast(@Sifra_Mest As Varchar(6)) + ''' '
  71261.     Insert Into #KnzOdobr exec(@SSQL+@SSQLUsl)
  71262.     Select @DenKrVrednost = OdobrDen From #KnzOdobr
  71263.     --Kumulativno
  71264.         Create Table #KnzOdobrKum
  71265.         (
  71266.          OdobrKum    decimal(18,6)
  71267.         )
  71268.         Set @SSQL = 'Select  Sum(D.Dolzi-D.Pobaruva)
  71269.             From AnFinDok D 
  71270.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup '
  71271.         Set @SSQL = @SSQL + 'Where Sifra_Dok = ' + cast(@TipDok_KnOdobr as varchar(10)) + ' '
  71272.         If @PoKojDatum = 'V'
  71273.         Begin
  71274.             If @Datum_Od1 Is Not NULL
  71275.                 Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od1 As Varchar(25)) + ''' '
  71276.             If @Datum_Do1 Is Not NULL
  71277.                 Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do1 As Varchar(25)) + ''' '
  71278.         End
  71279.         Else 
  71280.              Begin
  71281.             If @Datum_Od1 Is Not NULL
  71282.                 Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Od1 As Varchar(25)) + ''' '
  71283.             If @Datum_Do1 Is Not NULL
  71284.                 Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Do1 As Varchar(25)) + ''' '
  71285.                End
  71286.         Insert Into #KnzOdobrKum Exec(@SSQL+@SSQLUsl)
  71287.         Select @KumKrVrednost = OdobrKum From #KnzOdobrKum
  71288.     End
  71289.  
  71290.  
  71291.  
  71292. Go
  71293. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kup_top10lista]'))
  71294. drop procedure [dbo].[sp_kup_top10lista]
  71295.  
  71296. Go
  71297.  
  71298.  
  71299.  
  71300.  
  71301. CREATE    PROCEDURE sp_Kup_Top10Lista
  71302.     @Sifra_OE Smallint = 1,
  71303.     @KoiOE Varchar(500) = Null,
  71304.     @Pod1 Smallint = Null,
  71305.     @Pod2 Smallint = Null,
  71306.     @Pod3 Smallint = Null,
  71307.     @Pod4 Smallint = Null,
  71308.     @Pod5 Smallint = Null,
  71309.     @Pod6 Smallint = Null,
  71310.     @Pod7 Smallint = Null,
  71311.     @KFPod1 char(1) = Null,
  71312.     @KFPod2 char(1) = Null,
  71313.     @KFPod3 char(1) = Null,
  71314.     @KFPod4 char(1) = Null,
  71315.     @KFPod5 char(1) = Null,
  71316.     @KFPod6 char(1) = Null,
  71317.     @KFPod7 char(1) = Null,
  71318.     @Sifra_Tip Smallint = Null,
  71319.     @Datum_Od Smalldatetime = Null,
  71320.     @Datum_Do Smalldatetime = Null,
  71321.     @Sifra_Art_Od Varchar(20)= Null,
  71322.     @Sifra_Art_Do Varchar(20) = Null,
  71323.     @Sifra_Kup_Od Char(6) = Null,
  71324.     @Sifra_Kup_Do Char(6) = Null,
  71325.     @Podred Char(1) = 3,
  71326.     @Kolku Int = Null,
  71327.     @Kto Char(6) = Null,
  71328.     @Sifra_Gr Char(3) = Null,
  71329.     @Sifra_Podg Char(6) = Null,
  71330.     @Lokacija Varchar(10) = Null,
  71331.     @TipKup Varchar(300) = Null,
  71332.     @Komint_KObj Char(1) = 'K',
  71333.     @Sifra_Brand Smallint = Null,
  71334.     @Sifra_ZBrand Smallint = Null,
  71335.     @RazbijSostav Char(1) = 'D',
  71336.     @ZalihaOdOE Varchar(100)=Null,
  71337.     @Koi_Gradovi Varchar(200) = Null,
  71338.     @SoPodgrupi    char(1) = 'D',
  71339.     @Sifra_Pat    varchar(300)    = Null,
  71340.     @Sifra_Obj    smallint  = Null,
  71341.     @TipDokProd    varchar(200) = Null,
  71342.     @Koi_Regioni    varchar(200) = Null,
  71343.     @KomercKako    char(1) = 'I',             -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  71344.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  71345.     @Drugo1    smallint = Null,
  71346.     @Drugo2    smallint = Null,
  71347.     @Drugo3    smallint = Null,
  71348.     @Drugo4    smallint = Null,
  71349.     @Drugo5    smallint = Null,
  71350.     @Drugo6    smallint = Null,
  71351.     @Drugo7    smallint = Null,
  71352.     @Sifra_Nivo    char(2) = Null,
  71353.     @KojaCena    char(1) = Null,
  71354.     @PoGradovi    char(1) = 'N',
  71355.     @ImeArtDel    varchar(20) = Null,
  71356.     @Sifra_Div    smallint = Null,
  71357.     @GrKup varchar(500)= null,
  71358.     @GrArt    varchar(500)= null
  71359. AS
  71360.     If @PoKojDatum = 'V'
  71361.             If @Datum_Do Is Not Null
  71362.         Set @Datum_Do = @Datum_Do + 1
  71363.     Declare @SSQL Varchar(8000)
  71364.     create    Table #tSostav
  71365.     (    Sifra_Art Varchar(20),
  71366.         Sifra_Sur Varchar(20),
  71367.         Ima_Kolic Decimal(18,6),
  71368.         Cena Decimal(18,6),
  71369.         VkCena Decimal(18,6)
  71370.     )
  71371.     CREATE TABLE #TopLista
  71372.     (    [Sifra_Art] Varchar(20) NULL ,
  71373.         [Sifra_Kup] varchar(6) null,
  71374.         [Kolicina] [decimal](18, 4) NULL ,
  71375.         [UL] [decimal](18, 4) NULL ,
  71376.         [Volumen] [decimal](18, 4) NULL ,
  71377.         [Izlezi] [int] NULL ,
  71378.         [Vr_Osnov] [decimal](18, 4) NULL ,
  71379.         [Vr_SoRabat] [decimal](18, 4) NULL ,
  71380.         [Vr_Krajna] [decimal](18, 4) NULL ,
  71381.         [Vr_NPS] [decimal](18, 4) NULL ,
  71382.         Vr_Rabat    decimal(18,4) NULL,
  71383.         Vr_kasa        decimal(18,4) NULL,
  71384.         Vr_NabBezDDV    decimal(18,4) NULL,
  71385.         Vr_NabSoDDV    decimal(18,4) NULL,
  71386.         [Komintenti] [int] NULL ,
  71387.         [Zaliha] [decimal](18, 4) NULL,
  71388.     )
  71389.     If @RazbijSostav = 'D'
  71390.         Begin
  71391.             Set @SSQL = 'Insert #tSostav
  71392.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  71393.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  71394.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  71395.             Exec(@SSQL)
  71396.         End
  71397.     Set @SSQL = 'Insert #tSostav
  71398.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  71399.         From Katart K '
  71400.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  71401.     If @RazbijSostav = 'D'
  71402.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  71403.     Exec(@SSQL)
  71404. --select * from #tsostav
  71405. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  71406. --------------------------------------------------------------
  71407.     Set @SSQL = 'Select TS.Sifra_Sur As Sifra_Art, D.Sifra_Kup,
  71408.             Round(Sum(S.Kolic*TS.Ima_Kolic), 4) As Kolicina,
  71409.             Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) As UL,
  71410.             Round(Sum(S.Kolic*TS.Ima_Kolic * K.Volumen / 1000), 4) As Volumen,
  71411.             Count(TS.Sifra_Art) As Izlezi,
  71412.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) As Vr_Osnov,
  71413.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_SoRabat,
  71414.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Krajna,
  71415.             Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) As Vr_NPS, 
  71416.             Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces)), 4) As Vr_Rabat,
  71417.             Round(Sum(dbo.fn_VratiKasaBezDDV(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Kasa, 
  71418.             Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV, '
  71419.     If @Komint_KObj = 'K'
  71420.         Set @SSQL =    @SSQL + 
  71421.                 'Count (Distinct(Case Substring(Cast(S.Sifra_Dok As Varchar(6)),1,2)
  71422.                     When ''70'' Then 0
  71423.                     Else D.Sifra_Kup
  71424.                  End)) As Komintenti, '
  71425.     Else If @Komint_KObj = 'P'
  71426.         Set @SSQL =    @SSQL + 
  71427.                 'Count (Distinct(Case Substring(Cast(S.Sifra_Dok As Varchar(6)),1,2)
  71428.                     When ''70'' Then 0
  71429.                     Else D.Sifra_Obj
  71430.                  End)) As Komintenti, '
  71431.     Set @SSQL = @SSQL + 'Null As Zaliha '
  71432.     Set @SSQL = @SSQL + 'From #tSostav TS
  71433.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  71434.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  71435.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 '
  71436.     If @Sifra_Gr Is Not Null
  71437.         Set @SSQL = @SSQL + 'Left Outer Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  71438.     If @Sifra_OE Is Not NULL
  71439.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  71440.     If @KoiOE Is Not NULL
  71441.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  71442.     If @Sifra_ZBrand Is Not Null
  71443.         Set @SSQL = @SSQL + 'Left Outer Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  71444.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  71445.             Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@Sifra_Nivo Is Not Null) Or (@KojaCena Is Not Null)
  71446.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  71447.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  71448.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  71449.     If @Koi_Gradovi Is Not Null
  71450.         Set @SSQL = @SSQL + 'And Kup.Sifra_Grad In (' + @Koi_Gradovi + ') '
  71451.     If @TipKup Is Not NULL    
  71452.         Begin
  71453.             Set @SSQL = @SSQL + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + ')) 
  71454.             OR ( KO.TipKup Is Null and KUP.TipKup In ( ' + @TipKup + '))) '     
  71455.         End
  71456.     If @Sifra_Kup_Od Is Not NULL
  71457.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  71458.     If @Sifra_Kup_Do Is Not NULL
  71459.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  71460.     If @GrKup Is Not Null
  71461.         Set @SSQL = @SSQL + ' And D.Sifra_Kup In (Select Distinct Sifra_Kup From SGrKup Where Sif_GrKup In ( ' + @GrKup + ' )) '
  71462.        If @KomercKako = 'I'
  71463.         If @Sifra_Pat IS NOT NULL
  71464.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  71465.        If @KomercKako = 'T'
  71466.         If @Sifra_Pat IS NOT NULL
  71467.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  71468.                         OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  71469.     If @Sifra_Obj IS NOT NULL
  71470.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  71471.     If @Sifra_Art_Od Is Not Null
  71472.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  71473.     If @Sifra_Art_Do Is Not Null
  71474.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  71475.     If @Sifra_Brand Is Not Null
  71476.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  71477.     If @Sifra_ZBrand Is Not Null
  71478.         Set @SSQL = @SSQL + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  71479.     If @Sifra_Podg Is Not Null
  71480.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  71481.     If @Sifra_Gr Is Not Null
  71482.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  71483.     If @Pod1 Is Not NULL
  71484.         If @KFPod1 = 'D'
  71485.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  71486.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  71487.         Else
  71488.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  71489.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  71490.     If @Pod2 Is Not NULL
  71491.         If @KFPod2 = 'D'
  71492.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  71493.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  71494.         Else
  71495.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  71496.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  71497.     If @Pod3 Is Not NULL
  71498.         If @KFPod3 = 'D'
  71499.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  71500.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  71501.         Else
  71502.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  71503.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  71504.     If @Pod4 Is Not NULL
  71505.         If @KFPod4 = 'D'
  71506.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  71507.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  71508.         Else
  71509.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  71510.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  71511.     If @Pod5 Is Not NULL
  71512.         If @KFPod5 = 'D'
  71513.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  71514.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  71515.         Else
  71516.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  71517.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  71518.     If @Pod6 Is Not NULL
  71519.         If @KFPod6 = 'D'
  71520.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  71521.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  71522.         Else
  71523.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  71524.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  71525.     If @Pod7 Is Not NULL
  71526.         If @KFPod7 = 'D'
  71527.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  71528.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  71529.         Else
  71530.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  71531.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  71532.     If @Sifra_Tip Is Not NULL
  71533.            Begin
  71534.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Tip Is Not Null And KO.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ')
  71535.                       Or (KO.Sifra_Tip Is Null And Kup.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ')) '
  71536.            End
  71537.     If @Sifra_Nivo Is Not NULL
  71538.         Set @SSQL = @SSQL + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  71539.     If @KojaCena Is Not NULL
  71540.         Set @SSQL = @SSQL + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  71541.     If @Lokacija Is Not NULL
  71542.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  71543.     If @Kto Is Not NULL
  71544.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  71545.     If @PoKojDatum = 'V'
  71546.           Begin
  71547.         If @Datum_Od Is Not NULL
  71548.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71549.         If @Datum_Do Is Not NULL
  71550.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71551.           End
  71552.     Else 
  71553.           Begin
  71554.         If @Datum_Od Is Not NULL
  71555.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71556.         If @Datum_Do Is Not NULL
  71557.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71558.           End
  71559.     If @TipDokProd IS NOT NULL
  71560.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  71561.     If @Koi_Gradovi Is Not NULL    
  71562.         Begin
  71563.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  71564.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  71565.         End
  71566.     If @Koi_Regioni Is Not NULL    
  71567.         Begin
  71568.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Regioni + ')) 
  71569.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Regioni + '))) '     
  71570.         End
  71571.     If @Drugo1 Is Not NULL
  71572.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  71573.     If @Drugo2 Is Not NULL
  71574.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  71575.     If @Drugo3 Is Not NULL
  71576.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  71577.     If @Drugo4 Is Not NULL
  71578.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  71579.     If @Drugo5 Is Not NULL
  71580.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  71581.     If @Drugo6 Is Not NULL
  71582.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  71583.     If @Drugo7 Is Not NULL
  71584.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  71585.     If @Sifra_Div Is Not NULL
  71586.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  71587.        If @ImeArtDel IS NOT NULL 
  71588.         If IsNumeric(@ImeArtDel)=1
  71589.             Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  71590.         Else
  71591.             Set @SSQL = @SSQL + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  71592.     Set @SSQL = @SSQL + 'Group By TS.Sifra_Sur, D.Sifra_Kup '
  71593.     Insert #TopLista Exec(@SSQL)
  71594. --    Select * from #TopLista
  71595.     If @ZalihaOdOE Is Not Null
  71596.         Begin
  71597.             Set @SSQL = 'Update #TopLista
  71598.                 Set Zaliha = (Select Sum(Vlez)-Sum(Izlez) From Soart
  71599.                 Where Sifra_OE In (' + @ZalihaOdOE + ')
  71600.                 And #TopLIsta.Sifra_Art=Soart.Sifra_Art) '
  71601.             Exec(@SSQL)
  71602.         End
  71603.     Set @SSQL = 'Select'
  71604.     IF @Kolku IS NOT NULL    
  71605.         Set @SSQL = @SSQL + ' TOP ' + Cast(@Kolku as varchar(15))
  71606.     Set @SSQL = @SSQL +  ' T.Sifra_Art, K.ImeArt, K.ImeArt2, K.EdMera, K.Alt_Sifra,
  71607.             K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, K.ImaBroevi, K.ImaKomerc, K.Tezina, 
  71608.             T.Sifra_Kup, KUP.ImeKup, T.Kolicina, T.UL, T.Volumen, T.Izlezi, T.Vr_Osnov, T.Vr_SoRabat, T.Vr_Krajna,
  71609.             T.Vr_NPS, T.Vr_Rabat, T.Vr_Kasa, T.Vr_NabBezDDV, T.Vr_NabSoDDV, T.Komintenti, T.Zaliha '
  71610.     IF @SoPodgrupi = 'D'
  71611.         Set @SSQL = @SSQL + ', K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, '
  71612.     ELSE
  71613.         Set @SSQL = @SSQL + ', K.Sifra_Podg, '' '' as Ime_Podg, '' '' as Sifra_Gr, '' '' as Ime_Gr, '
  71614.     If @PoGradovi = 'D'
  71615.         Set @SSQL = @SSQL + ' Kup.Sifra_Grad, G.ImeGrad '
  71616.     Else 
  71617.         Set @SSQL = @SSQL + ' Null Sifra_Grad, Null ImeGrad '
  71618.     Set @SSQL = @SSQL + ' From #TopLista T
  71619.         Inner Join Katart K On T.Sifra_Art=K.Sifra_Art
  71620.         Left Outer Join Komint KUP On T.Sifra_Kup = KUP.Sifra_Kup '
  71621.     IF @SoPodgrupi = 'D'
  71622.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG ON K.Sifra_Podg = PG.Sifra_Podg
  71623.                      Inner Join Grupi G ON G.Sifra_Gr = PG.Sifra_Gr '
  71624.     If @PoGradovi = 'D'
  71625.         Set @SSQL = @SSQL + 'Left Outer Join Grad G ON G.Sifra_Grad = Kup.Sifra_Grad '
  71626.     If @Podred = 'S'
  71627.         Set @SSQL = @SSQL + 'Order By T.Sifra_Art '
  71628.     Else If @Podred = 'A'
  71629.         Set @SSQL = @SSQL + 'Order By K.ImeArt '
  71630.     Else If @Podred = '1'
  71631.         Set @SSQL = @SSQL + 'Order By Izlezi DESC'
  71632.     Else If @Podred = '2'
  71633.         Set @SSQL = @SSQL + 'Order By Kolicina DESC'
  71634.     Else If @Podred = '3'
  71635.         Set @SSQL = @SSQL + 'Order By Vr_Krajna DESC'
  71636.     Else If @Podred = '4'
  71637.         Set @SSQL = @SSQL + 'Order By Vr_NPS DESC'
  71638.     Exec(@SSQL)
  71639.  
  71640. Go
  71641. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kup_toplista]'))
  71642. drop procedure [dbo].[sp_kup_toplista]
  71643.  
  71644. Go
  71645.  
  71646.  
  71647.  
  71648. CREATE                                 PROCEDURE sp_Kup_TopLista
  71649.     @Sifra_OE Smallint = Null, 
  71650.     @KoiOE Varchar(500) = Null,
  71651.     @Pod1 Smallint = Null,
  71652.     @Pod2 Smallint = Null,
  71653.     @Pod3 Smallint = Null,
  71654.     @Pod4 Smallint = Null,
  71655.     @Pod5 Smallint = Null,
  71656.     @Pod6 Smallint = Null,
  71657.     @Pod7 Smallint = Null,
  71658.     @KFPod1 char(1) = Null,
  71659.     @KFPod2 char(1) = Null,
  71660.     @KFPod3 char(1) = Null,
  71661.     @KFPod4 char(1) = Null,
  71662.     @KFPod5 char(1) = Null,
  71663.     @KFPod6 char(1) = Null,
  71664.     @KFPod7 char(1) = Null,
  71665.     @Sifra_Tip Smallint = Null,
  71666.     @Datum_Od Smalldatetime = Null,
  71667.     @Datum_Do Smalldatetime = Null,
  71668.     @Sifra_Art_Od Varchar(20) = Null,
  71669.     @Sifra_Art_Do Varchar(20) = Null,
  71670.     @Sifra_Brand Smallint = Null,
  71671.     @Sifra_ZBrand Smallint = Null,
  71672.     @Sifra_Kup_Od Char(6) = Null,             
  71673.     @Sifra_Kup_Do Char(6) = Null,
  71674.     @Podred Char(1) = Null,
  71675.     @Kolku Int = Null,
  71676.     @Kto Char(6) = Null,
  71677.     @Sifra_Gr Char(3) = Null,
  71678.     @Sifra_Podg Char(6) = Null,
  71679.     @Lokacija Varchar(10) = Null,
  71680.     @TipKup VarChar(300) = Null,
  71681.     @Komint_KObj Char(1) = 'K',
  71682.     @RazbijSostav Char(1) = 'N',
  71683.     @Koi_Gradovi Varchar(200) = Null,
  71684.     @Sifra_Pat    varchar(300) = Null,
  71685.     @TipDokProd    varchar(200) = Null,
  71686.     @Koi_Regioni    varchar(200) = Null,
  71687.     @PoProdMesta char(1) = 'N',
  71688.     @Sifra_Mest int = Null,
  71689.     @ProcPoArtikli char(1) = 'D',
  71690.     @KomercKako    char(1) = 'I',             -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  71691.     @PoKojDatum    char(1) = 'D',         -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  71692.     @Drugo1    smallint = Null,
  71693.     @Drugo2    smallint = Null,
  71694.     @Drugo3    smallint = Null,
  71695.     @Drugo4    smallint = Null,
  71696.     @Drugo5    smallint = Null,
  71697.     @Drugo6    smallint = Null,
  71698.     @Drugo7    smallint = Null,
  71699.     @Posrednik    char(6) = Null,
  71700.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N      (Povrzano e so @Sifra_Podg)
  71701.     @PoGodini    char(1) = 'N',
  71702.     @PoMeseci    char(1) = 'N',
  71703.     @Sifra_Nivo    char(2) = Null,
  71704.     @KojaCena     char(1) = Null,
  71705.     @PoGradovi    char(1) = 'D',
  71706.     @ImeArtDel    varchar(20) = Null,
  71707.     @DevCena    char(1) = 'N',        -- Prikazi vrednost po devizna cena D - so danok,  B - bez Danok  N - ne 
  71708.     @PrethBazaOd    char(1) = 'N',        -- K - Konfig (poleto PrethBaza)     ?T? - Nekoja tabela (FirParal ili Nekoja Nova za vo idnina)
  71709.     @ParalenliBazi     varchar(200) = Null,
  71710.     @Sifra_Div    smallint = Null,
  71711.     @GrKup     varchar(500) = Null,
  71712.     @GrArt        varchar(500) = Null
  71713.  
  71714. AS
  71715.     If @PoKojDatum = 'V'
  71716.             If @Datum_Do Is Not Null
  71717.         Set @Datum_Do = @Datum_Do + 1
  71718.     Set Nocount On
  71719.     Declare @SSQL Varchar(8000)
  71720.     Declare @SSQLUsl Varchar(8000)
  71721.     Declare @SSQLFrom Varchar(8000)
  71722.     Declare @SSQLGroup Varchar(8000)
  71723.     Set @SSQLUsl = ' '
  71724.     Set @SSQLFrom = ' '
  71725.     Set @SSQLGroup = ' '
  71726.  
  71727.     If @GrKup Is Not Null
  71728.     Begin
  71729.     CREATE   Table #KupObj
  71730.         (
  71731.             Sifra_Kup    char(6),
  71732.             Sifra_Obj    smallint
  71733.         )
  71734.         CREATE   Table #KupObj1
  71735.         (
  71736.             Sifra_Kup    char(6),
  71737.             Sifra_Obj    smallint
  71738.         )
  71739.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  71740.         Exec(@SSQL)
  71741.  
  71742.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  71743.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  71744.                 From SGrKupObj GK 
  71745.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  71746.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  71747.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  71748.         Exec(@SSQL)
  71749.  
  71750.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  71751.         Exec(@SSQL)
  71752.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  71753.     End
  71754.  
  71755.     If @GrArt Is Not Null
  71756.     Begin
  71757.         Create Table #GrArt
  71758.         (
  71759.             Sifra_Art    varchar(20)
  71760.         )
  71761.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  71762.  
  71763.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  71764.         Exec(@SSQL)
  71765.     End
  71766.  
  71767.  
  71768.     -------------------------------------------------------------------------------- U S L O V ------------------------------------------------------------------------------------------------------------
  71769.     If @Sifra_Brand Is Not Null
  71770.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=' + Cast(@Sifra_BRand As Varchar(6)) + ' '
  71771.     If @Sifra_ZBrand Is Not Null
  71772.         Set @SSQLUsl = @SSQLUsl + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  71773.     If @Lokacija Is Not NULL
  71774.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  71775.     If @Koi_Gradovi Is Not NULL    
  71776.         Begin
  71777.              Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  71778.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  71779.         End
  71780.     If @Koi_Regioni Is Not NULL    
  71781.         Begin
  71782.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  71783.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  71784.         End
  71785.     If @Kto Is Not NULL
  71786.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  71787.     If @Sifra_Podg Is Not Null
  71788.         If @PocnuvaSo ='D'
  71789.             Set @SSQLUsl=@SSQLUsl+'AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  71790.         Else
  71791.             Set @SSQLUsl=@SSQLUsl + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  71792.     If @Sifra_Gr Is Not NULL
  71793.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  71794.     If @PoKojDatum = 'V'
  71795.           Begin
  71796.         If @Datum_Od Is Not NULL
  71797.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71798.         If @Datum_Do Is Not NULL
  71799.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71800.           End
  71801.     Else 
  71802.           Begin
  71803.         If @Datum_Od Is Not NULL
  71804.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71805.         If @Datum_Do Is Not NULL
  71806.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71807.           End
  71808.     If @Sifra_Kup_Od Is Not NULL
  71809.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6)) + ''' '
  71810.     If @Sifra_Kup_Do Is Not NULL
  71811.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6)) + ''' '
  71812.     If @GrKup Is Not Null
  71813.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup In (Select Distinct Sifra_Kup From SGrKup Where Sif_GrKup In ( ' + @GrKup + ' )) '
  71814.     If @Pod1 Is Not NULL
  71815.         If @KFPod1 = 'D'
  71816.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  71817.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  71818.         Else
  71819.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  71820.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  71821.     If @Pod2 Is Not NULL
  71822.         If @KFPod2 = 'D'
  71823.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  71824.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  71825.         Else
  71826.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  71827.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  71828.     If @Pod3 Is Not NULL
  71829.         If @KFPod3 = 'D'
  71830.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  71831.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  71832.         Else
  71833.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  71834.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  71835.     If @Pod4 Is Not NULL
  71836.         If @KFPod4 = 'D'
  71837.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  71838.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  71839.         Else
  71840.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  71841.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  71842.     If @Pod5 Is Not NULL
  71843.         If @KFPod5 = 'D'
  71844.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  71845.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  71846.         Else
  71847.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  71848.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  71849.     If @Pod6 Is Not NULL
  71850.         If @KFPod6 = 'D'
  71851.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  71852.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  71853.         Else
  71854.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  71855.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  71856.     If @Pod7 Is Not NULL
  71857.         If @KFPod7 = 'D'
  71858.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  71859.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  71860.         Else
  71861.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  71862.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  71863.     If @Sifra_Tip Is Not NULL
  71864.            Begin
  71865.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Tip Is Not Null And KO.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ')
  71866.                       Or (KO.Sifra_Tip Is Null And Kup.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ')) '
  71867.            End
  71868.     If @Sifra_Nivo Is Not NULL
  71869.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  71870.     If @KojaCena Is Not NULL
  71871.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KojaCena = ''' + @KojaCena + ''' '
  71872.        If @KomercKako = 'I'
  71873.         If @Sifra_Pat IS NOT NULL
  71874.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat In (' + @Sifra_Pat + ') '
  71875.        If @KomercKako = 'T'
  71876.         If @Sifra_Pat IS NOT NULL
  71877.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @Sifra_Pat + ')) 
  71878.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @Sifra_Pat + '))) '
  71879.     If @Sifra_Mest IS NOT NULL
  71880.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Mest = ' + Cast(@Sifra_Mest as varchar(6)) + ' '
  71881.     If @Sifra_Art_Od Is Not NULL
  71882.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  71883.     If @Sifra_Art_Do Is Not NULL
  71884.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  71885.     If @TipKup Is Not NULL    
  71886.         Begin
  71887.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + ')) 
  71888.             OR ( KO.TipKup Is Null and KUP.TipKup In ( ' + @TipKup + '))) '     
  71889.         End
  71890.     If @Sifra_OE Is Not NULL    
  71891.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  71892.     If @KoiOE Is Not NULL
  71893.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  71894.     If @TipDokProd IS NOT NULL
  71895.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  71896.     If @Drugo1 Is Not NULL
  71897.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  71898.     If @Drugo2 Is Not NULL
  71899.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  71900.     If @Drugo3 Is Not NULL
  71901.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  71902.     If @Drugo4 Is Not NULL
  71903.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  71904.     If @Drugo5 Is Not NULL
  71905.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  71906.     If @Drugo6 Is Not NULL
  71907.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  71908.     If @Drugo7 Is Not NULL
  71909.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  71910.     If @Sifra_Div Is Not NULL
  71911.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  71912.      If @ImeArtDel IS NOT NULL 
  71913.         If IsNumeric(@ImeArtDel)=1
  71914.             Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Art Like ''' + @ImeArtDel + '%'' '
  71915.         Else
  71916.             Set @SSQLUsl = @SSQLUsl + ' And K.ImeArt Like ''' + @ImeArtDel + '%'' '
  71917.     If @Posrednik Is Not NULL
  71918.         Set @SSQLUsl = @SSQLUsl + ' And PM.Posrednik=' + Cast(@Posrednik As Varchar(6)) + ' '
  71919.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  71920.     CREATE    Table #tSostav
  71921.     (    Sifra_Art Varchar(20),
  71922.         Sifra_Sur Varchar(20),
  71923.         Ima_Kolic Decimal(18,6),
  71924.         Cena Decimal(18,6),
  71925.         VkCena Decimal(18,6)
  71926.     )
  71927.     If @RazbijSostav = 'D'
  71928.         Begin
  71929.             Set @SSQL = 'Insert #tSostav
  71930.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  71931.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  71932.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  71933.             Exec(@SSQL)
  71934.         End
  71935.     Set @SSQL = 'Insert #tSostav
  71936.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  71937.         From Katart K '
  71938.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  71939.     If @RazbijSostav = 'D'
  71940.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  71941.     Exec(@SSQL)
  71942. --select * from #tsostav
  71943. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  71944. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  71945.     Declare @VkArt  integer
  71946.     Set @VkArt = 0
  71947.     If @ProcPoArtikli = 'D'
  71948.         Begin
  71949.             Create Table #Tab
  71950.             (
  71951.              Sifra_art varchar(20)
  71952.             )
  71953.             Set @SSQL = ' Select Distinct S.Sifra_art From Stavr S '
  71954.             If @PoKojDatum = 'V'
  71955.                 Set @SSQL = @SSQL + ' Inner Join Dokr D ON S.DokrID=D.DokrID '
  71956.             Set @SSQL = @SSQL + '  Where 1=1 '
  71957.             If @PoKojDatum = 'V'
  71958.             Begin
  71959.                 If @Datum_Od Is Not NULL
  71960.                     Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71961.                 If @Datum_Do Is Not NULL
  71962.                     Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71963.             End
  71964.             Else 
  71965.             Begin
  71966.                 If @Datum_Od Is Not NULL
  71967.                     Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  71968.                 If @Datum_Do Is Not NULL
  71969.                     Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  71970.             End
  71971.             Insert Into #Tab Exec (@SSQL)
  71972.             Set @VkArt = (Select Count (Distinct Sifra_Art) from #Tab)
  71973.         End
  71974.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  71975.     -----------------------------------------------------------------------------  T O P    L I S T A ---------------------------------------------------------------------------------------------------
  71976.     Create Table #TopLista
  71977.     (
  71978.         Sifra_Kup    char(6),
  71979.         Sifra_Obj    smallint,
  71980.         Sifra_Mest    int,
  71981.         Kolicina        decimal(18,4),
  71982.         BrendKolicina    decimal(18,4),
  71983.         Tezina        decimal(18,4),
  71984.         BTezina        decimal(18,4),
  71985.         Volumen    decimal(18,4),
  71986.         Paketi        decimal(18,2),
  71987.         Izlezi        int,
  71988.         Vr_Osnov    decimal(18,4),
  71989.         Vr_SoRabat    decimal(18,4),
  71990.         Vr_Krajna    decimal(18,4),
  71991.         Vk_NPS    decimal(18,4),
  71992.         Fakturi        int,
  71993.         Vr_NabBezDDV    decimal(18,4),
  71994.         Vr_NabSoDDV    decimal(18,4),
  71995.         Vr_PoGotCena    decimal(18,4),
  71996.         Vr_Rabat    decimal(18,4) NULL,
  71997.         Vr_kasa        decimal(18,4) NULL,
  71998.         Vr_Devizna    decimal(18,4),
  71999.         ProcentPoArt    decimal(18,4),
  72000.         Godina        smallint,
  72001.         Mesec        smallint,
  72002.         BrRazlPM smallint,
  72003.         BrStornoF smallint
  72004.     )
  72005.     Set @SSQL = ' Select D.Sifra_Kup, '
  72006.     If @Komint_KObj = 'K'
  72007.         Set @SSQL = @SSQL + ' Null as sifra_obj, '
  72008.     Else If @Komint_KObj = 'O'
  72009.         Set @SSQL = @SSQL + ' D.Sifra_Obj, '
  72010.     If @PoProdMesta = 'D'
  72011.         Set @SSQL = @SSQL + ' D.Sifra_Mest, '
  72012.     Else If @PoProdMesta = 'N'
  72013.         Set @SSQL = @SSQL + ' Null as Sifra_Mest, '
  72014.     Set @SSQL = @SSQL + '
  72015.         Round(Sum(TS.Ima_Kolic*S.Kolic), 4) As Kolicina, 
  72016.         Round(Sum(TS.Ima_Kolic*S.Kolic*K.KolkuDrg), 4) As BrendKolicina, 
  72017.         Round(Sum(TS.Ima_Kolic*S.Kolic*K.Tezina/1000),4) As Tezina,
  72018.         Round(Sum(TS.Ima_Kolic*S.Kolic*K.BTezina/1000),4) As BTezina,
  72019.         Round(Sum(TS.Ima_Kolic*S.Kolic*K.Volumen/1000),4) As Volumen,
  72020.         Round(Sum(TS.Ima_Kolic*S.Kolic/(Case When K.ImaKomerc>0 Then K.ImaKomerc Else 1 End)),2) As Paketi,
  72021.         Count(S.Sifra_Art) As Izlezi,
  72022.         Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  72023.         Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  72024.         Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna,
  72025.         Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) Vk_NPS, Count(Distinct S.DokrID) As Fakturi, 
  72026.         Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV, 
  72027.         Round(Sum(S.Kolic * K.GotCena), 4) Vr_PoGotCena, 
  72028.         Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces)), 4) As Vr_Rabat,
  72029.         Round(Sum(dbo.fn_VratiKasaBezDDV(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Kasa, '
  72030.     If @DevCena In  ('D', 'B')
  72031.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + (Case When @DevCena = 'B' Then 'N' Else 'D' End) + ''') / D.Kurs), 4) Vr_Devizna, ' 
  72032.     Else
  72033.         Set @SSQL = @SSQL + ' Null as Vr_Devizna, '
  72034.     If @ProcPoArtikli = 'D'  -- koga ke se gleda od dve bazi treba da se proveri kako ke raboti
  72035.         Set @SSQL=@SSQL + ' (Count(Distinct S.Sifra_art)/ ' + cast(@VkArt as Varchar(10)) + ')*100 as ProcentPoArt, '
  72036.     Else
  72037.         Set @SSQL=@SSQL + ' 0 as ProcentPoArt, '
  72038.     If @PoGodini = 'D'
  72039.         Set @SSQL=@SSQL + ' Year(S.Datum_Dok) Godina, '
  72040.     Else 
  72041.         Set @SSQL=@SSQL + ' Null as Godina, '
  72042.     If @PoMeseci = 'D'
  72043.         Set @SSQL=@SSQL + ' Month(S.Datum_Dok) Mesec '
  72044.     Else 
  72045.         Set @SSQL=@SSQL + ' Null as Mesec '
  72046.     set @SSQL = @SSQL + ', count(distinct (case when D.Sifra_Obj is null then 0 else D.Sifra_Obj end)),  
  72047.                           count(case when TD.Plus_Minus = ''-'' then D.DokrId end) '
  72048.     ------- From Query
  72049.     Set @SSQLFrom = ' From #tSostav TS
  72050.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  72051.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  72052.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 
  72053.         Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  72054.         Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  72055.         Inner Join TipDok TD ON D.Sifra_Dok = TD.Sifra_Dok '
  72056.     If @PoProdMesta = 'D' or @Posrednik is not null
  72057.         Set @SSQLFrom = @SSQLFrom + ' Inner Join ProdMest PM ON D.Sifra_Mest=PM.Sifra_Mest '   --D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup and 
  72058.     If @Sifra_Gr Is Not Null
  72059.         Set @SSQLFrom = @SSQLFrom + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  72060.     If @Sifra_ZBrand Is Not Null
  72061.         Set @SSQLFrom = @SSQLFrom + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  72062.     If @GrKup Is Not Null
  72063.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  72064.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  72065.     If @GrArt Is Not Null
  72066.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  72067.     Set @SSQLFrom = @SSQLFrom + 'Where K.Iskluci <> ''D'' '
  72068.     --------- Group
  72069.     If @Komint_KObj = 'K'
  72070.         Set @SSQLGroup = @SSQLGroup + 'Group By D.Sifra_Kup   '
  72071.     Else If @Komint_KObj = 'O'
  72072.         Set @SSQLGroup = @SSQLGroup + 'Group By D.Sifra_Kup, D.Sifra_Obj '
  72073.     If @PoProdMesta = 'D' 
  72074.         Set @SSQLGroup = @SSQLGroup + ' ,D.Sifra_Mest, PM.Opis '
  72075.     If @PoGodini = 'D'
  72076.         Set @SSQLGroup=@SSQLGroup + ' ,Year(S.Datum_Dok) '
  72077.     If @PoMeseci = 'D'
  72078.         Set @SSQLGroup=@SSQLGroup + ' ,Month(S.Datum_Dok) '
  72079. --print @SSQL + @SSQLFrom + @SSQLUsl + @SSQLGroup
  72080.     Insert Into #TopLista Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLGroup)
  72081.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  72082.     ------------------------------- P R E T H O D N I   B A Z I ----------------------------------
  72083.     If @PrethBazaOd = 'K' Or @ParalenliBazi Is Not Null
  72084.     Begin
  72085.         Declare @ImeBaza as varchar(30)
  72086.         Create Table #Bazi
  72087.         (
  72088.             ImeBaza    varchar(30)
  72089.         )
  72090.         If @PrethBazaOd = 'K'        
  72091.         Begin 
  72092.             Set @SSQLFrom = ' Insert Into #Bazi Select PrethBaza From Konfig '
  72093.             Exec (@SSQLFrom)
  72094.         End
  72095.         If @ParalenliBazi Is Not Null
  72096.         Begin
  72097.             Declare @Poz_Delim Smallint
  72098.             Declare @Poz_Start Smallint
  72099.             Declare @BazaIme varchar(50)
  72100.             If @ParalenliBazi Is Null 
  72101.                 Set @ParalenliBazi = ''
  72102.             Set @Poz_Start = 0
  72103.             While 1=1
  72104.             Begin
  72105.                 Set @Poz_Delim = Charindex(',', @ParalenliBazi, @Poz_Start)
  72106.                 If @Poz_Delim = 0
  72107.                     Break
  72108.                 Set @BazaIme = SubString(@ParalenliBazi, @Poz_Start, @Poz_Delim-@Poz_Start)
  72109.                 Set @Poz_Start = @Poz_Delim + 1
  72110.                 Insert Into #Bazi Select @BazaIme
  72111.             End
  72112.         End
  72113.         If Exists (Select ImeBaza From #Bazi)
  72114.         Begin
  72115.             Declare CursorBazi Cursor Fast_Forward For Select ImeBaza From #Bazi
  72116.             Open CursorBazi
  72117.             Fetch Next From CursorBazi Into @ImeBaza
  72118.             While @@Fetch_Status = 0
  72119.             Begin
  72120.                 Set @SSQLFrom = ' From #tSostav TS
  72121.                     Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  72122.                     Inner Join ' + @ImeBaza + '..Stavr S On TS.Sifra_Art=S.Sifra_Art
  72123.                     Inner Join ' + @ImeBaza + '..Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 
  72124.                     Left Outer Join ' + @ImeBaza + '..Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  72125.                     Left Outer Join ' + @ImeBaza + '..KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  72126.                     Inner Join ' + @ImeBaza + '..TipDok TD ON D.Sifra_Dok = TD.Sifra_Dok'
  72127.                 If @PoProdMesta = 'D' or @Posrednik is not null
  72128.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join ' + @ImeBaza + '..ProdMest PM ON D.Sifra_Mest=PM.Sifra_Mest '   --D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup and 
  72129.                 If @Sifra_Gr Is Not Null
  72130.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  72131.                 If @Sifra_ZBrand Is Not Null
  72132.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  72133.                 If @GrKup Is Not Null
  72134.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  72135.                                     And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  72136.                 If @GrArt Is Not Null
  72137.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  72138.                 Set @SSQLFrom = @SSQLFrom + ' Where K.Iskluci <> ''D'' '
  72139.                 Insert Into #TopLista Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLGroup)
  72140.                 Fetch Next From CursorBazi Into @ImeBaza
  72141.             End
  72142.             Close CursorBazi
  72143.             Deallocate CursorBazi
  72144.         End
  72145.     End
  72146.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  72147.     ------------------------------------------ R E Z U L T A T -------------------------------------------------------
  72148.     If @Kolku Is Not NULL
  72149.         Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(6)) + ' '
  72150.     Else
  72151.         Set @SSQL = 'Select '
  72152.     Set @SSQL =    @SSQL + ' T.Sifra_Kup, '
  72153.     If @Komint_KObj = 'K'
  72154.         Set @SSQL = @SSQL + ' Null as imeobj, Null as sifra_obj, '
  72155.     Else If @Komint_KObj = 'O'
  72156.         Set @SSQL = @SSQL + ' T.Sifra_Obj, KO.imeobj, '
  72157.     If @PoProdMesta = 'D'
  72158.         Set @SSQL = @SSQL + ' T.Sifra_Mest, PM.Opis OpisMest, '
  72159.     Else If @PoProdMesta = 'N'
  72160.         Set @SSQL = @SSQL + ' Null as Sifra_Mest, Null as OpisMest, '
  72161.     If @PoGradovi = 'D'
  72162.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) Sifra_Grad, G.ImeGrad, '
  72163.     Else 
  72164.         Set @SSQL = @SSQL + ' Null Sifra_Grad, Null ImeGrad, '
  72165.     Set @SSQL = @SSQL + 'KUP.ImeKup, KUP.ImeKup2, Kup.Telefon, 
  72166.         (Case When T.Sifra_Obj is not null Then KO.Adresa Else KUP.Adresa End) Adresa, 
  72167.         (Case When T.Sifra_Obj is not null Then KO.Adresa2 Else KUP.Adresa2 End)Adresa2, 
  72168.         (Case When T.Sifra_Obj is not null Then KO.SMesto Else KUP.SMesto End)SMesto, KUP.Posta, KUP.Zemja, 
  72169.         Sum(Kolicina) Kolicina, Sum(BrendKolicina) BrendKolicina, Sum(Tezina) Tezina, Sum(BTezina) BTezina, Sum(Volumen) Volumen, Sum(Izlezi) Izlezi,
  72170.         Sum(Vr_Osnov) Vr_Osnov, Sum(Vr_SoRabat) Vr_SoRabat, Sum(Vr_Krajna) Vr_Krajna, Sum(Vk_NPS) Vk_NPS, Sum(Fakturi) Fakturi, 
  72171.         Sum(Vr_NabBezDDV) Vr_NabBezDDV, Sum(Vr_NabSoDDV) Vr_NabSoDDV, Sum(Vr_Devizna) Vr_Devizna, SUM(Vr_Rabat) Vr_Rabat, SUM(Vr_Kasa) Vr_Kasa,
  72172.         Sum(Vr_PoGotCena) Vr_PoGotCena,
  72173.         Round(Sum(Tezina/100), 4) Hektolitri, Sum(Paketi) Paketi, KUP.Sifra_Pat,
  72174.         T.Sifra_Kup+(Case When T.Sifra_Obj < 10 Then ''00''+Cast(T.Sifra_Obj as varchar(6)) 
  72175.                             When T.Sifra_Obj >9 And T.Sifra_Obj < 100 Then ''0''+Cast(T.Sifra_Obj as varchar(6))
  72176.                             When T.Sifra_Obj >99 And T.Sifra_Obj < 1000 Then Cast(T.Sifra_Obj as varchar(6)) Else ''000'' End) Sifra, 
  72177.         (Case When KO.KDrugo6 Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End) KDrugo6, K6.Ime_6K, 
  72178.         (Case When KO.KDrugo7 Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End) KDrugo7, K7.Ime_7K, '
  72179.     If @ProcPoArtikli = 'D'
  72180.         Set @SSQL=@SSQL + ' Avg(ProcentPoArt) ProcentPoArt, '
  72181.     Else
  72182.         Set @SSQL=@SSQL + ' 0 as ProcentPoArt, '
  72183.     If @PoGodini = 'D'
  72184.         Set @SSQL=@SSQL + ' Godina, '
  72185.     Else 
  72186.         Set @SSQL=@SSQL + ' Null as Godina, '
  72187.     If @PoMeseci = 'D'
  72188.         Set @SSQL=@SSQL + ' Mesec '
  72189.     Else 
  72190.         Set @SSQL=@SSQL + ' Null as Mesec '
  72191.     set @SSQL = @SSQL + ',BrRazlPM, BrStornoF '
  72192.     Set @SSQL = @SSQL + ' From #TopLista T
  72193.         Left Outer Join Komint KUP ON T.Sifra_Kup=KUP.Sifra_Kup
  72194.         Left Outer Join KObjekti KO ON T.Sifra_obj=KO.Sifra_obj and T.Sifra_kup=KO.Sifra_kup
  72195.         Left Outer Join KDrugo6 K6 On K6.Sifra_6K=(Case When KO.KDrugo6 Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End)
  72196.         Left Outer Join KDrugo7 K7 On K7.Sifra_7K=(Case When KO.KDrugo7 Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End) '
  72197.     If @PoProdMesta = 'D' or @Posrednik is not null
  72198.         Set @SSQL = @SSQL + ' Inner Join ProdMest PM ON T.Sifra_Mest=PM.Sifra_Mest '   --D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup and 
  72199.     If @PoGradovi = 'D'
  72200.         Set @SSQL = @SSQL + ' Left Outer Join Grad G ON G.Sifra_Grad=(Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) '
  72201.     If @Komint_KObj = 'K'
  72202.         Set @SSQL = @SSQL + 'Group By T.Sifra_Kup,  KUP.ImeKup, KUP.ImeKup2, Kup.Telefon,
  72203.                 (Case When T.Sifra_Obj is not null Then KO.Adresa Else KUP.Adresa End), 
  72204.                                 (Case When T.Sifra_Obj is not null Then KO.Adresa2 Else KUP.Adresa2 End), 
  72205.                                 (Case When T.Sifra_Obj is not null Then KO.Smesto Else KUP.Smesto End), KUP.Posta, KUP.Zemja, KUP.Sifra_Pat, 
  72206.                             T.Sifra_Kup+(Case When T.Sifra_Obj < 10 Then ''00''+Cast(T.Sifra_Obj as varchar(6)) 
  72207.                             When T.Sifra_Obj >9 And T.Sifra_Obj < 100 Then ''0''+Cast(T.Sifra_Obj as varchar(6))
  72208.                             When T.Sifra_Obj >99 And T.Sifra_Obj < 1000 Then Cast(T.Sifra_Obj as varchar(6)) Else ''000'' End),BrRazlPM, BrStornoF,  '
  72209.     Else If @Komint_KObj = 'O'
  72210.         Set @SSQL = @SSQL + 'Group By T.Sifra_Kup, T.Sifra_Obj, KO.Imeobj,  KUP.ImeKup, KUP.ImeKup2, Kup.Telefon,
  72211.                 (Case When T.Sifra_Obj is not null Then KO.Adresa Else KUP.Adresa End), 
  72212.                                 (Case When T.Sifra_Obj is not null Then KO.Adresa2 Else KUP.Adresa2 End),
  72213.                                 (Case When T.Sifra_Obj is not null Then KO.Smesto Else KUP.Smesto End), KUP.Posta, KUP.Zemja, KUP.Sifra_Pat,
  72214.                                 T.Sifra_Kup+(Case When T.Sifra_Obj < 10 Then ''00''+Cast(T.Sifra_Obj as varchar(6)) 
  72215.                             When T.Sifra_Obj >9 And T.Sifra_Obj < 100 Then ''0''+Cast(T.Sifra_Obj as varchar(6))
  72216.                             When T.Sifra_Obj >99 And T.Sifra_Obj < 1000 Then Cast(T.Sifra_Obj as varchar(6)) Else ''000'' End),BrRazlPM, BrStornoF, '
  72217.     Set @SSQL = @SSQL + ' (Case When KO.KDrugo6 Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End), K6.Ime_6K, 
  72218.                 (Case When KO.KDrugo7 Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End), K7.Ime_7K '
  72219.  
  72220.     If @PoProdMesta = 'D' 
  72221.         Set @SSQL = @SSQL + ' ,T.Sifra_Mest, PM.Opis '
  72222.     If @PoGradovi = 'D' 
  72223.         Set @SSQL = @SSQL + ' ,(Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End), G.ImeGrad '
  72224.     If @PoGodini = 'D'
  72225.         Set @SSQL=@SSQL + ' ,Godina '
  72226.     If @PoMeseci = 'D'
  72227.         Set @SSQL=@SSQL + ' ,Mesec '
  72228.     If @Podred = 'S'
  72229.         Set @SSQL = @SSQL + 'Order By T.Sifra_Kup '
  72230.     Else If @Podred = 'A'
  72231.         Set @SSQL = @SSQL + 'Order By KUP.ImeKup ' 
  72232.     Else If @Podred = '1'
  72233.         Set @SSQL = @SSQL + 'Order By Izlezi Desc ' 
  72234.     Else If @Podred = '2'
  72235.         Set @SSQL = @SSQL + 'Order By Kolicina Desc ' 
  72236.     Else If @Podred = '3'
  72237.         Set @SSQL = @SSQL + 'Order By Vr_Krajna Desc '
  72238.     Else If @Podred = '4'
  72239.         Set @SSQL = @SSQL + 'Order By Vk_NPS DESC'
  72240.     Exec (@SSQL)
  72241.     Print @SSQL
  72242.     Set Nocount Off
  72243. Go
  72244. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kursnirazliki]'))
  72245. drop procedure [dbo].[sp_kursnirazliki]
  72246.  
  72247. Go
  72248.  
  72249.  
  72250.  
  72251. CREATE    PROCEDURE sp_KursniRazliki
  72252.     @Datum_Do    smalldatetime,
  72253.     @Valuta    char(3),
  72254.     @Sifra_Oe    smallint = Null,
  72255.     @Sifra_Kup_Od    char(6) = Null,
  72256.     @Sifra_Kup_Do    char(6) = Null,
  72257.     @Kto        char(10) = Null,
  72258.     @Sifra_Za    char(1) = Null
  72259. AS
  72260.     IF @Sifra_Za='K' SET @Sifra_Za='1'
  72261.     IF @Sifra_Za='D' SET @Sifra_Za='2'
  72262.     Declare @SSQL as Varchar(8000)
  72263.     Create Table #KursNaDat
  72264.     (
  72265.     SImeVal        char(3),
  72266.     Kurs        decimal(9,6)
  72267.     )
  72268.     Insert Into #KursNaDat Select Top 1 SImeVal, KursSreden
  72269.     From KrsVaznost Where Datum <=  cast(@Datum_Do as varchar(35)) and SImeVal = @Valuta    Order By Datum desc 
  72270.     --SaldoDev=Sum(CASE A.Sifra_Za WHEN ''1'' Then A.Dev_Dolzi-A.Dev_Pobaruva Else A.Dev_Pobaruva-A.Dev_Dolzi End),
  72271.     --SaldoDen=Sum(CASE A.Sifra_Za WHEN ''1'' Then A.Dolzi-A.Pobaruva Else A.Pobaruva-A.Dolzi End) , 
  72272.     Set @SSQL = ' Select A.Kto, A.Sifra_Kup, A.KojaVal, A.Sifra_Za, K.ImeKup,
  72273.             Sum(A.Dev_Dolzi-A.Dev_Pobaruva) SaldoDev,
  72274.             Round(Sum(A.Dolzi-A.Pobaruva),0) SaldoDen, 
  72275.             Round(Sum((A.Dev_Dolzi - A.Dev_Pobaruva) * V.Kurs), 0) SaldoDenKurs, V.Kurs
  72276.             From AnFinDok A
  72277.             INNER JOIN Komint K ON A.Sifra_Kup = K.Sifra_Kup
  72278.             Left Outer Join #KursNaDat V On V.SImeVal = A.KojaVal
  72279.             Where Datum_Dok <= ''' + cast(@Datum_Do as varchar(35)) + ''' and SImeVal = ' + @Valuta + ' '
  72280.     If  @Sifra_Za Is Not Null
  72281.         Set @SSQL = @SSQL + ' and A.Sifra_Za = ' + @Sifra_Za + ' '
  72282.     If  @Valuta Is Not Null
  72283.         Set @SSQL = @SSQL + ' and V.SImeVal = ' + @Valuta + ' '
  72284.     If  @Sifra_Kup_Od Is Not Null
  72285.         Set @SSQL = @SSQL + ' and A.Sifra_Kup >= ' + @Sifra_Kup_Od + ' '
  72286.     If  @Sifra_Kup_Do Is Not Null
  72287.         Set @SSQL = @SSQL + ' and A.Sifra_Kup <= ' + @Sifra_Kup_Do + ' '
  72288.     If  @Kto Is Not Null
  72289.         Set @SSQL = @SSQL + ' and A.Kto = ''' + @Kto + ''' '
  72290.     If @Sifra_Oe Is Not Null
  72291.         Set @SSQL = @SSQL + ' and A.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  72292.     Set @SSQL = @SSQL + ' Group By A.Kto, A.Sifra_Kup, A.KojaVal, A.Sifra_Za, K.ImeKup, V.Kurs 
  72293.             HAVING Sum((A.Dev_Dolzi - A.Dev_Pobaruva) * V.Kurs) - Sum(A.Dolzi - A.Pobaruva) <> 0 
  72294.             Order By A.Sifra_Kup, A.Kto, A.Sifra_Za '
  72295.     Exec(@SSQL)
  72296.  
  72297.  
  72298.  
  72299.  
  72300. Go
  72301. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_kursnirazlikiglk]'))
  72302. drop procedure [dbo].[sp_kursnirazlikiglk]
  72303.  
  72304. Go
  72305.  
  72306.  
  72307.  
  72308. CREATE        PROCEDURE sp_KursniRazlikiGLK
  72309.     @Datum_Do    smalldatetime,
  72310.     @Valuta    char(3),
  72311.     @Sifra_Oe    smallint = Null,
  72312.     @Kto        char(10) = Null
  72313. AS
  72314.     Declare @SSQL as Varchar(8000)
  72315.     CREATE TABLE #TmpKrsRazlGlk
  72316.     (Sifra_OE    smallint,
  72317.     Kto_Anal    char(10),
  72318.     KojaVal        char(3),
  72319.     Sifra_Nal    smallint,
  72320.     Broj_Nal    int,
  72321.     Datum_Nal    smalldatetime,
  72322.     Dolzi        decimal(18,4),
  72323.     Pobaruva    decimal(18,4))
  72324.     SET @SSQL = 'SELECT Sifra_OE, Kto, KojaVal, Sifra_Nal, Broj_Nal, Datum_Nal, Sum(Dolzi), Sum(Pobaruva)
  72325.     FROM AnFinDok WHERE Sifra_Dok IN (809, 810) AND Datum_Dok='''+cast(@Datum_Do as varchar(35)) + ''' '
  72326.     If  @Valuta Is Not Null
  72327.         Set @SSQL = @SSQL + ' and KojaVal = ' + @Valuta + ' '
  72328.     If  @Kto Is Not Null
  72329.         Set @SSQL = @SSQL + ' and Kto = ' + @Kto + ' '
  72330.     If @Sifra_Oe Is Not Null
  72331.         Set @SSQL = @SSQL + ' and Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  72332.     Set @SSQL = @SSQL + ' Group By Sifra_OE, Kto, KojaVal, Sifra_Nal, Broj_Nal, Datum_Nal'
  72333.     INSERT INTO #TmpKrsRazlGlk Exec(@SSQL)
  72334. --------- ova ke bide dopolna za konta bez subanalitiki
  72335. /*    Declare @God as int
  72336.     SET @God = YEAR(@Datum_Do)
  72337.     Create Table #KursNaDat
  72338.     (SImeVal    char(3),
  72339.     Kurs        decimal(9,6))
  72340.     Insert Into #KursNaDat Select Top 1 SImeVal, KursSreden
  72341.     From KrsVaznost Where Datum <=  cast(@Datum_Do as varchar(35)) and SImeVal = @Valuta    Order By Datum desc 
  72342.     CREATE TABLE #TmpGSt
  72343. (    Sifra_OE    smallint,
  72344.     Kto_Anal    char(10),
  72345.     KojaVal        char(3),
  72346.     Dev_Dolzi    decimal(18,4),
  72347.     Dev_Pobaruva decimal(18,4),
  72348.     Dolzi        decimal(18,4),
  72349.     Pobaruva    decimal(18,4)    
  72350. )
  72351.     Set @SSQL = 'Select A.Sifra_OE, A.Kto_Anal, A.KojaVal, Sum(A.Dev_Dolzi), Sum(A.Dev_Pobaruva),
  72352.             Sum(A.Dolzi), Sum(A.Pobaruva) From GStav A
  72353.             Where A.Kto_Anal IN (Select Kto_Anal From Anal Where DaliDev=''D'' AND DaliOrg=''D'' AND (DaliKupuv IS NULL OR DaliKupuv=''N'')) 
  72354.             And A.Datum_Nal <= ''' + cast(@Datum_Do as varchar(35)) + 
  72355.             ''' and A.KojaVal = ' + @Valuta + ' AND Year(A.Datum_Nal)=' + cast(@god as char(4))
  72356.     If  @Valuta Is Not Null
  72357.         Set @SSQL = @SSQL + ' and A.KojaVal = ' + @Valuta + ' '
  72358.     If  @Kto Is Not Null
  72359.         Set @SSQL = @SSQL + ' and A.Kto_Anal = ' + @Kto + ' '
  72360.     If @Sifra_Oe Is Not Null
  72361.         Set @SSQL = @SSQL + ' and A.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  72362.     Set @SSQL = @SSQL + ' Group By A.Sifra_OE, A.Kto_Anal, A.KojaVal Order By A.Kto_Anal '
  72363.     INSERT INTO #TmpGSt Exec(@SSQL)
  72364.     Set @SSQL = 'Select Null, A.Kto_Anal, A.KojaVal, Sum(A.Dev_Dolzi), Sum(A.Dev_Pobaruva),
  72365.             Sum(A.Dolzi), Sum(A.Pobaruva) From GStav A
  72366.             Where A.Kto_Anal IN (Select Kto_Anal From Anal Where DaliDev=''D'' AND DaliOrg=''D'' AND (DaliKupuv IS NULL OR DaliKupuv=''N'')) 
  72367.             And A.Datum_Nal <= ''' + cast(@Datum_Do as varchar(35)) + 
  72368.             ''' and A.KojaVal = ' + @Valuta + ' AND Year(A.Datum_Nal)=' + cast(@god as char(4))
  72369.     If  @Valuta Is Not Null
  72370.         Set @SSQL = @SSQL + ' and A.KojaVal = ' + @Valuta + ' '
  72371.     If  @Kto Is Not Null
  72372.         Set @SSQL = @SSQL + ' and A.Kto_Anal = ' + @Kto + ' '
  72373.     If @Sifra_Oe Is Not Null
  72374.         Set @SSQL = @SSQL + ' and A.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  72375.     Set @SSQL = @SSQL + ' Group By A.Kto_Anal, A.KojaVal Order By A.Kto_Anal '
  72376.     INSERT INTO #TmpGSt Exec(@SSQL)
  72377.     CREATE TABLE #TmpRazl
  72378. (    Kto_Anal    char(10),
  72379.     DP            char(1),
  72380.     KojaVal        char(3),
  72381.     SaldoDev    decimal(18,4),
  72382.     SaldoDen    decimal(18,4),
  72383.     SaldoDenKurs decimal(18,4),
  72384.     Kurs        decimal(18,8))
  72385.     INSERT INTO #TmpRazl SELECT A.Kto_Anal, 'D', A.KojaVal, A.Dev_Dolzi-A.Dev_Pobaruva SaldoDev,
  72386.     A.Dolzi-A.Pobaruva SaldoDen,Round((A.Dev_Dolzi-A.Dev_Pobaruva)*V.Kurs,0) SaldoDenKurs, V.Kurs
  72387.     From #TmpGSt A
  72388.     Left Outer Join #KursNaDat V On V.SImeVal = A.KojaVal
  72389.     Where A.Dev_Dolzi>A.Dev_Pobaruva        
  72390.     INSERT INTO #TmpRazl SELECT A.Kto_Anal, 'P', A.KojaVal, A.Dev_Pobaruva-A.Dev_Dolzi SaldoDev,
  72391.     A.Pobaruva-A.Dolzi SaldoDen,Round((A.Dev_Pobaruva-A.Dev_Dolzi)*V.Kurs,0) SaldoDenKurs, V.Kurs
  72392.     From #TmpGSt A
  72393.     Left Outer Join #KursNaDat V On V.SImeVal = A.KojaVal
  72394.     Where A.Kto_Anal NOT IN (SELECT Kto_Anal FROM #TmpRazl)
  72395.     INSERT INTO #TmpKrsRazlGlk (Sifra_OE,Kto_Anal,KojaVal,Sifra_Nal,Broj_Nal,Datum_Nal,Dolzi,Pobaruva) 
  72396.     SELECT * FROM #TmpRazl WHERE SaldoDev * Kurs - SaldoDen <> 0 order by Kto_Anal
  72397. */    
  72398. ----------
  72399.     SELECT * FROM #TmpKrsRazlGlk WHERE Dolzi <> 0 OR Pobaruva<>0 order by Kto_Anal, KojaVal
  72400.  
  72401.  
  72402.  
  72403.  
  72404. Go
  72405. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lagerlistaporabotnik]'))
  72406. drop procedure [dbo].[sp_lagerlistaporabotnik]
  72407.  
  72408. Go
  72409.  
  72410. CREATE  procedure sp_LagerListaPoRabotnik
  72411.     @Sifra_Rab_Od smallint,
  72412.     @Sifra_Rab_Do smallint
  72413. As
  72414.  
  72415.     Declare @@SSQL as varchar(6000)
  72416.     Set @@SSQL='Select OS.Sifra_rab, R.ImeRab, count(distinct OS.Inv_Broj) BrojPredmeti, Sum(OS.Orig_Nab_Vr) Iznos
  72417.                 From OsnSred OS
  72418.                 Inner Join Rabotnik R on OS.Sifra_rab=R.Sifra_Rab
  72419.                 Where 1=1 and OS.DatPrest is null ' --za otpisanite da ne se zemaat vo lager listata
  72420.     If @Sifra_Rab_Od is not null
  72421.         Set @@SSQL=@@SSQL+ ' And OS.Sifra_Rab>='+cast(@Sifra_Rab_od as varchar(7))+ ' '
  72422.     If @Sifra_Rab_Do is not null
  72423.         Set @@SSQL=@@SSQL+ ' And OS.Sifra_Rab<='+cast(@Sifra_Rab_Do as varchar(7))+ ' '
  72424.     Set @@SSQL=@@SSQL+ 'Group by OS.Sifra_rab, R.ImeRab, OS.DatPrest'
  72425. print @@SSQL
  72426. exec(@@SSQL)
  72427.  
  72428.  
  72429.  
  72430.  
  72431.  
  72432.  
  72433.  
  72434.  
  72435.  
  72436.  
  72437.  
  72438.  
  72439. Go
  72440. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lan_prodazbapoperiodi]'))
  72441. drop procedure [dbo].[sp_lan_prodazbapoperiodi]
  72442.  
  72443. Go
  72444. CREATE PROCEDURE sp_Lan_ProdazbaPoPeriodi
  72445.     @Godina    smallint,
  72446.     @Datum_Od    smalldatetime,
  72447.     @Datum_Do    smalldatetime,
  72448.     @Sifra_Oe    smallint = Null,
  72449.     @KoiOe    varchar(6) = Null,
  72450.     @Sifra_Art_Od    varchar(20) = Null,
  72451.     @Sifra_Art_Do    varchar(20) = Null,
  72452.     @Sifra_Podg    char(6) = Null,
  72453.     @Sifra_Gr    char(3) = Null,
  72454.     @Sifra_Drg    smallint = Null,
  72455.     @ADrugo1    smallint = Null,
  72456.     @ADrugo2    smallint = Null,
  72457.     @ADrugo3    smallint = Null,
  72458.     @ADrugo4    smallint = Null,
  72459.     @ADrugo5    smallint = Null
  72460. AS
  72461.     Declare @SSQL as varchar(8000)
  72462.     Declare @SSQLUsl as varchar(8000)
  72463.     Set @SSQLUsl = ' '
  72464.     If @Sifra_Oe Is Not Null 
  72465.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  72466.     If @KoiOe Is Not Null 
  72467.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Oe In (Select Sifra_Oe From SGrorg Where Sif_GrOrg= ''' + @KoiOe + ''') '
  72468.     If @Sifra_Art_Od Is Not Null 
  72469.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  72470.     If @Sifra_Art_Do Is Not Null 
  72471.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  72472.     If @Sifra_Podg Is Not Null 
  72473.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  72474.     If @Sifra_Gr Is Not Null 
  72475.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  72476.     If @Sifra_Drg Is Not Null 
  72477.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Drg = ' + cast(@Sifra_Drg as varchar(6)) + ' '
  72478.     If @ADrugo1 Is Not Null 
  72479.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1 = ' + cast(@ADrugo1 as varchar(6)) + ' '
  72480.     If @ADrugo2 Is Not Null 
  72481.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2 = ' + cast(@ADrugo2 as varchar(6)) + ' '
  72482.     If @ADrugo3 Is Not Null 
  72483.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3 = ' + cast(@ADrugo3 as varchar(6)) + ' '
  72484.     If @ADrugo4 Is Not Null 
  72485.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4 = ' + cast(@ADrugo4 as varchar(6)) + ' '
  72486.     If @ADrugo5 Is Not Null 
  72487.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5 = ' + cast(@ADrugo5 as varchar(6)) + ' '
  72488.     Create Table #Rez
  72489.     (
  72490.      Sifra_Art    varchar(20),
  72491.      PocSost    decimal(18,6),
  72492.      VkPriem    decimal(18,6),
  72493.      Period1        decimal(18,6),
  72494.      Period2        decimal(18,6),
  72495.      Period3        decimal(18,6),
  72496.      Period4        decimal(18,6),
  72497.      Period5        decimal(18,6),
  72498.      Period6        decimal(18,6),
  72499.      Period7        decimal(18,6),
  72500.      Period8        decimal(18,6),
  72501.      Period9        decimal(18,6),
  72502.      Period10    decimal(18,6),
  72503.      Period11    decimal(18,6),
  72504.      Period12    decimal(18,6),
  72505.      Period13    decimal(18,6),
  72506.      VkProd        decimal(18,6),
  72507.      ImaPaleta    smallint
  72508.     )
  72509.     Set @SSQL = ' Select S.Sifra_Art, 0, 0,
  72510.             Sum(Case When P.Period = 1 Then S.Kolic Else 0 End) Period1, 
  72511.             Sum(Case When P.Period = 2 Then S.Kolic Else 0 End) Period2, 
  72512.             Sum(Case When P.Period = 3 Then S.Kolic Else 0 End) Period3, 
  72513.             Sum(Case When P.Period = 4 Then S.Kolic Else 0 End) Period4, 
  72514.             Sum(Case When P.Period = 5 Then S.Kolic Else 0 End) Period5, 
  72515.             Sum(Case When P.Period = 6 Then S.Kolic Else 0 End) Period6, 
  72516.             Sum(Case When P.Period = 7 Then S.Kolic Else 0 End) Period7, 
  72517.             Sum(Case When P.Period = 8 Then S.Kolic Else 0 End) Period8, 
  72518.             Sum(Case When P.Period = 9 Then S.Kolic Else 0 End) Period9, 
  72519.             Sum(Case When P.Period = 10 Then S.Kolic Else 0 End) Period10, 
  72520.             Sum(Case When P.Period = 11 Then S.Kolic Else 0 End) Period11, 
  72521.             Sum(Case When P.Period = 12 Then S.Kolic Else 0 End) Period12, 
  72522.             Sum(Case When P.Period = 13 Then S.Kolic Else 0 End) Period13, 
  72523.             0 VkProd, 0 ImaPaleta
  72524.             From Dokr D
  72525.         Inner Join Stavr S On S.DokrID=D.DokrId
  72526.         Inner Join Periodi P On P.DatPerOd<=S.Datum_Dok And P.DatPerDo>=S.Datum_Dok 
  72527.         Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  72528.     If @Sifra_Gr Is Not Null
  72529.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  72530.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And Year(S.Datum_DoK) = ' + Cast(@Godina as varchar(4)) + '
  72531.                 And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' and S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  72532.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art, P.Period '
  72533.     Insert Into #Rez Exec(@SSQL)
  72534.     -------------------------------------- PRETHODNA  SOSTOJBA -------------------------------------------------
  72535.     Create Table #Zal
  72536.     (
  72537.      Sifra_Art    varchar(20),
  72538.      Sostojba    decimal(18,6)
  72539.     )
  72540.     Set @SSQL = ' Select S.Sifra_Art, Sum(Case When D.VlIzl=''V'' Then S.Kolic Else -1*S.Kolic End)
  72541.             From Dokr D
  72542.             Inner Join Stavr S On S.DokrID=D.DokrId
  72543.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  72544.     If @Sifra_Gr Is Not Null
  72545.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  72546.     Set @SSQL = @SSQL + ' Where S.Datum_Dok < ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  72547.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art '
  72548.     Insert Into #Zal Exec(@SSQL)
  72549.     -------------------------------------------------------------------------------------------------------------------------------------
  72550.     ----------------------------------------- PRIEM VO PERIODOT -----------------------------------------------------
  72551.     Create Table #Priem
  72552.     (
  72553.      Sifra_Art    varchar(20),
  72554.      Priem        decimal(18,6)
  72555.     )
  72556.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  72557.             From Dokr D
  72558.             Inner Join Stavr S On S.DokrID=D.DokrId
  72559.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  72560.     If @Sifra_Gr Is Not Null
  72561.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  72562.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And Year(S.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  72563.                 And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' and S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  72564.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art '
  72565.     Insert Into #Priem Exec(@SSQL)
  72566.     -------------------------------------------------------------------------------------------------------------------------------------
  72567.     Insert Into #Rez
  72568.     Select Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
  72569.     From #Zal Where Sifra_Art Not In (Select Sifra_Art From #Rez)
  72570.     Insert Into #Rez
  72571.     Select Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
  72572.     From #Priem Where Sifra_Art Not In (Select Sifra_Art From #Rez)
  72573.     Update #Rez Set PocSost=#Zal.Sostojba
  72574.     From #Zal 
  72575.     Where #Zal.Sifra_Art=#Rez.Sifra_Art
  72576.     Update #Rez Set VkPriem=#Priem.Priem
  72577.     From #Priem
  72578.     Where #Priem.Sifra_Art=#Rez.Sifra_Art
  72579.     Create Table #VkProd
  72580.     (
  72581.      Sifra_Art    varchar(20),
  72582.      VkProd        decimal(18,6)
  72583.     )
  72584.     Insert Into #VkProd 
  72585.     Select Sifra_Art, Sum(Period1+Period2+Period3+Period4+Period5+Period6+Period7+Period8+Period9+Period10+Period11+Period12+Period13) 
  72586.     From #Rez
  72587.     Group By Sifra_Art
  72588.     Update #Rez Set VkProd=#VkProd.VkProd
  72589.     From #VkProd
  72590.     Where #VkProd.Sifra_Art=#Rez.Sifra_Art
  72591.     Update #Rez 
  72592.     Set ImaPaleta = (Case When Katart.ImaPaleta Is Null Or Katart.ImaPaleta = 0 Then 1 Else Katart.ImaPaleta End)
  72593.     From Katart 
  72594.     Where Katart.Sifra_Art=#Rez.Sifra_Art
  72595.     Select R.Sifra_Art, K.ImeArt, R.PocSost, R.VkPriem, 
  72596.         Sum(R.Period1) Period1, Sum(R.Period2) Period2, Sum(R.Period3) Period3, Sum(R.Period4) Period4, Sum(R.Period5) Period5, Sum(R.Period6) Period6, 
  72597.         Sum(R.Period7) Period7, Sum(R.Period8) Period8, Sum(R.Period9) Period9, Sum(R.Period10) Period10, Sum(R.Period11) Period11, Sum(R.Period12) Period12, 
  72598.         Sum(R.Period13) Period13, R.VkProd, (R.VkProd/R.ImaPaleta) Paleti
  72599.     From #Rez R
  72600.     Inner Join Katart K On K.Sifra_Art= R.Sifra_Art
  72601.     Group by R.Sifra_Art, K.ImeArt, R.PocSost, R.VkPriem, R.VkProd, R.ImaPaleta
  72602.     Order By R.Sifra_Art
  72603.  
  72604.  
  72605. Go
  72606. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lan_prodazbazaperiod]'))
  72607. drop procedure [dbo].[sp_lan_prodazbazaperiod]
  72608.  
  72609. Go
  72610. CREATE PROCEDURE sp_Lan_ProdazbaZaPeriod 
  72611.     @Godina    smallint,
  72612.     @Period    smallint,
  72613.     @Sifra_Oe    smallint = Null,
  72614.     @KoiOe    varchar(6) = Null,
  72615.     @Sifra_Art_Od    varchar(20) = Null,
  72616.     @Sifra_Art_Do    varchar(20) = Null,
  72617.     @Sifra_Podg    char(6) = Null,
  72618.     @Sifra_Gr    char(3) = Null,
  72619.     @Sifra_Drg    smallint = Null,
  72620.     @ADrugo1    smallint = Null,
  72621.     @ADrugo2    smallint = Null,
  72622.     @ADrugo3    smallint = Null,
  72623.     @ADrugo4    smallint = Null,
  72624.     @ADrugo5    smallint = Null
  72625. AS
  72626.     Declare @SSQL as varchar(8000)
  72627.     Declare @SSQLUsl as varchar(8000)
  72628.     Set @SSQLUsl = ' '
  72629.     If @Sifra_Oe Is Not Null 
  72630.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  72631.     If @KoiOe Is Not Null 
  72632.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Oe In (Select Sifra_Oe From SGrorg Where Sif_GrOrg= ''' + @KoiOe + ''') '
  72633.     If @Sifra_Art_Od Is Not Null 
  72634.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  72635.     If @Sifra_Art_Do Is Not Null 
  72636.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  72637.     If @Sifra_Podg Is Not Null 
  72638.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  72639.     If @Sifra_Gr Is Not Null 
  72640.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  72641.     If @Sifra_Drg Is Not Null 
  72642.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Drg = ' + cast(@Sifra_Drg as varchar(6)) + ' '
  72643.     If @ADrugo1 Is Not Null 
  72644.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1 = ' + cast(@ADrugo1 as varchar(6)) + ' '
  72645.     If @ADrugo2 Is Not Null 
  72646.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2 = ' + cast(@ADrugo2 as varchar(6)) + ' '
  72647.     If @ADrugo3 Is Not Null 
  72648.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3 = ' + cast(@ADrugo3 as varchar(6)) + ' '
  72649.     If @ADrugo4 Is Not Null 
  72650.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4 = ' + cast(@ADrugo4 as varchar(6)) + ' '
  72651.     If @ADrugo5 Is Not Null 
  72652.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5 = ' + cast(@ADrugo5 as varchar(6)) + ' '
  72653.     Declare @DatPerOd Smalldatetime
  72654.     Declare @DatPerDo Smalldatetime
  72655.     Select @DatPerOd = DatPerOd, @DatPerDo=DatPerDo From Periodi Where Godina=@Godina And Period=@Period
  72656.     --Select @DatPerOd, @DatPerDo
  72657.     Create Table #Nedeli
  72658.     (
  72659.      Period        smallint,
  72660.      Nedela        smallint,
  72661.      DatNedOd    smalldatetime,
  72662.      DatNedDo    smalldatetime
  72663.     )
  72664.     Declare @DatNedOd    smalldatetime
  72665.     Declare @DatNedDo    smalldatetime
  72666.     Declare @I as smallint
  72667.     Set @I=1
  72668.     Set @DatNedOd = @DatPerOd
  72669.     While @I <= 4
  72670.     Begin
  72671.         Set @DatNedDo=DateAdd(day, 6, @DatNedOd)
  72672.         If @I=4 And @DatNedDo <> @DatPerDo 
  72673.             Set @DatNedDo = @DatPerDo
  72674.         Insert Into #Nedeli Select @Period, @I, @DatNedOd, @DatNedDo
  72675.         Set @DatNedOd=DateAdd(day, 1, @DatNedDo)
  72676.         Set @I=@I+1
  72677.     End
  72678.     --Select * from #Nedeli
  72679.     Create Table #Rez
  72680.     (
  72681.      Sifra_Art    varchar(20),
  72682.      PocSost    decimal(18,6),
  72683.      VkPriem    decimal(18,6),
  72684.      Nedela1    decimal(18,6),
  72685.      Nedela2    decimal(18,6),
  72686.      Nedela3    decimal(18,6),
  72687.      Nedela4    decimal(18,6),
  72688.      VkProd        decimal(18,6),
  72689.      NedProsProd    decimal(18,6),
  72690.      Zaliha        decimal(18,6),
  72691.      ImaPaleta    smallint
  72692.     )
  72693.     Set @SSQL = ' Select S.Sifra_Art, 0, 0,
  72694.             Sum(Case When N.Nedela = 1 Then S.Kolic Else 0 End) Nedela1, 
  72695.             Sum(Case When N.Nedela = 2 Then S.Kolic Else 0 End) Nedela2, 
  72696.             Sum(Case When N.Nedela = 3 Then S.Kolic Else 0 End) Nedela3, 
  72697.             Sum(Case When N.Nedela = 4 Then S.Kolic Else 0 End) Nedela4,
  72698.             0, 0, 0, 0
  72699.             From Dokr D
  72700.         Inner Join Stavr S On S.DokrID=D.DokrId
  72701.         Inner Join #Nedeli N On N.DatNedOd<=S.Datum_Dok And N.DatNedDo>=S.Datum_Dok 
  72702.         Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  72703.     If @Sifra_Gr Is Not Null
  72704.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  72705.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1''
  72706.                 And S.Datum_Dok >= ''' + Cast(@DatPerOd as varchar(30)) + ''' and S.Datum_Dok <= ''' + Cast(@DatPerDo as varchar(30)) + ''' ' -- ova i ne mora
  72707.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art, N.Nedela '
  72708.     Insert Into #Rez Exec(@SSQL)
  72709.     -------------------------------------- PRETHODNA  SOSTOJBA -------------------------------------------------
  72710.     Create Table #Zal
  72711.     (
  72712.      Sifra_Art    varchar(20),
  72713.      Sostojba    decimal(18,6)
  72714.     )
  72715.     Set @SSQL = ' Select S.Sifra_Art, Sum(Case When D.VlIzl=''V'' Then S.Kolic Else -1*S.Kolic End)
  72716.             From Dokr D
  72717.             Inner Join Stavr S On S.DokrID=D.DokrId
  72718.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  72719.     If @Sifra_Gr Is Not Null
  72720.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  72721.     Set @SSQL = @SSQL + ' Where S.Datum_Dok < ''' + Cast(@DatPerOd as varchar(30)) + ''' '
  72722.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art '
  72723.     Insert Into #Zal Exec(@SSQL)
  72724.     -------------------------------------------------------------------------------------------------------------------------------------
  72725.     ----------------------------------------- PRIEM VO PERIODOT -----------------------------------------------------
  72726.     Create Table #Priem
  72727.     (
  72728.      Sifra_Art    varchar(20),
  72729.      Priem        decimal(18,6)
  72730.     )
  72731.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  72732.             From Dokr D
  72733.             Inner Join Stavr S On S.DokrID=D.DokrId
  72734.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art '
  72735.     If @Sifra_Gr Is Not Null
  72736.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  72737.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''2'' 
  72738.                   And S.Datum_Dok >= ''' + Cast(@DatPerOd as varchar(30)) + ''' and S.Datum_Dok <= ''' + Cast(@DatPerDo as varchar(30)) + ''' '
  72739.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art '
  72740.     Insert Into #Priem Exec(@SSQL)
  72741.     -------------------------------------------------------------------------------------------------------------------------------------
  72742.     Insert Into #Rez
  72743.     Select Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
  72744.     From #Zal Where Sifra_Art Not In (Select Sifra_Art From #Rez)
  72745.     Insert Into #Rez
  72746.     Select Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
  72747.     From #Priem Where Sifra_Art Not In (Select Sifra_Art From #Rez)
  72748.     Update #Rez Set PocSost=#Zal.Sostojba
  72749.     From #Zal 
  72750.     Where #Zal.Sifra_Art=#Rez.Sifra_Art
  72751.     Update #Rez Set VkPriem=#Priem.Priem
  72752.     From #Priem
  72753.     Where #Priem.Sifra_Art=#Rez.Sifra_Art
  72754.     Create Table #VkProd
  72755.     (
  72756.      Sifra_Art    varchar(20),
  72757.      VkProd        decimal(18,6)
  72758.     )
  72759.     Insert Into #VkProd 
  72760.     Select Sifra_Art, Sum(Nedela1+Nedela2+Nedela3+Nedela4) 
  72761.     From #Rez
  72762.     Group By Sifra_Art
  72763.     Update #Rez Set VkProd=#VkProd.VkProd
  72764.     From #VkProd
  72765.     Where #VkProd.Sifra_Art=#Rez.Sifra_Art
  72766.     Update #Rez     
  72767.     Set NedProsProd=(VkProd/4), Zaliha=PocSost+VkPriem-VkProd
  72768.     Update #Rez 
  72769.     Set ImaPaleta = (Case When Katart.ImaPaleta Is Null Or Katart.ImaPaleta = 0 Then 1 Else Katart.ImaPaleta End)
  72770.     From Katart 
  72771.     Where Katart.Sifra_Art=#Rez.Sifra_Art
  72772.     Select R.Sifra_Art, K.ImeArt, R.PocSost, R.VkPriem, Sum(R.Nedela1) Nedela1, Sum(R.Nedela2) Nedela2, Sum(R.Nedela3) Nedela3, Sum(R.Nedela4) Nedela4, 
  72773.         R.NedProsProd, (R.NedProsProd/R.ImaPaleta) NedProsPaleta, R.VkProd, (R.VkProd/R.ImaPaleta) VkProdPaleta,
  72774.         (R.PocSost+R.VkPriem-R.VkProd) Zaliha, (R.PocSost+R.VkPriem-R.VkProd)/R.ImaPaleta ZalihaPaleta, 
  72775.         (Case When R.NedProsProd <> 0 Then ((R.PocSost+R.VkPriem-R.VkProd)/R.NedProsProd) Else 0 End) NedZal, 
  72776.         (Case When R.NedProsProd <> 0 Then (((R.PocSost+R.VkPriem-R.VkProd)/R.NedProsProd)/4) Else 0 End) NedZalPeriodi
  72777.     From #Rez R
  72778.     Inner Join Katart K On K.Sifra_Art= R.Sifra_Art
  72779.     Group by R.Sifra_Art, K.ImeArt, R.PocSost, R.VkPriem, K.ImaPaleta, R.VkProd, R.NedProsProd, R.ImaPaleta
  72780.     Order By R.Sifra_Art
  72781.  
  72782.  
  72783. Go
  72784. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_ekvivart]'))
  72785. drop procedure [dbo].[sp_list_ekvivart]
  72786.  
  72787. Go
  72788.  
  72789. CREATE   PROCEDURE sp_List_ekvivart
  72790.  
  72791. AS
  72792.  
  72793.  
  72794.     select E.*, K.ImeArt, K.EdMera
  72795.     from EkvivArt E
  72796.     inner join Katart K
  72797.         on e.sifra_art = k.sifra_art
  72798.  
  72799.  
  72800.  
  72801. Go
  72802. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_ekvivdezen]'))
  72803. drop procedure [dbo].[sp_list_ekvivdezen]
  72804.  
  72805. Go
  72806.  
  72807. CREATE     PROCEDURE sp_List_ekvivdezen
  72808.  
  72809. AS
  72810.  
  72811.     select E.*, K.ImeArt ImeArtOsn,
  72812.             KK.ImeARt ImeArtMap
  72813.     from EkvivDezen E
  72814.     inner join Katart K 
  72815.         on e.sifra_art_osn = k.sifra_art
  72816.     inner join Katart KK
  72817.         on e.sifra_art_map = kk.sifra_art
  72818.  
  72819.  
  72820.  
  72821.  
  72822. Go
  72823. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_formuli]'))
  72824. drop procedure [dbo].[sp_list_formuli]
  72825.  
  72826. Go
  72827.  
  72828. create   PROCEDURE sp_List_Formuli
  72829. AS
  72830.  
  72831.     select *
  72832.     from FormulaDef
  72833.  
  72834.  
  72835.  
  72836. Go
  72837. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_komintpat]'))
  72838. drop procedure [dbo].[sp_list_komintpat]
  72839.  
  72840. Go
  72841.  
  72842. CREATE  procedure sp_list_komintpat
  72843.     @Sifra smallint
  72844. As
  72845.     Select P.Sifra_Kup, K.ImeKup, P.Sifra_Obj, O.ImeObj, P.Sifra_Pat
  72846.     From KomintPat P 
  72847.     left outer join Komint K on K.Sifra_kup= P.Sifra_Kup
  72848.     left outer join Kobjekti O on O.Sifra_kup= P.Sifra_Kup and O.Sifra_Obj=P.Sifra_Obj
  72849.     Where P.Sifra_Pat= @Sifra
  72850.  
  72851.  
  72852.  
  72853. Go
  72854. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_kreditopomena]'))
  72855. drop procedure [dbo].[sp_list_kreditopomena]
  72856.  
  72857. Go
  72858. create  procedure sp_list_kreditopomena
  72859. As
  72860.     Select * from Kreditopomena
  72861.  
  72862.  
  72863. Go
  72864. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_kreditstatus]'))
  72865. drop procedure [dbo].[sp_list_kreditstatus]
  72866.  
  72867. Go
  72868. CREATE procedure sp_list_kreditstatus
  72869. As
  72870.     Select * from KreditStatus
  72871.  
  72872.  
  72873. Go
  72874. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_kredittipopomena]'))
  72875. drop procedure [dbo].[sp_list_kredittipopomena]
  72876.  
  72877. Go
  72878. CREATE procedure sp_list_kredittipopomena
  72879. As
  72880.     Select * from KreditTipOpomena
  72881.  
  72882.  
  72883. Go
  72884. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_naracki]'))
  72885. drop procedure [dbo].[sp_list_naracki]
  72886.  
  72887. Go
  72888.  
  72889.  
  72890.  
  72891.  
  72892.  
  72893. CREATE     PROCEDURE sp_List_Naracki
  72894.     @Sifra_Nar_List VarChar(100),
  72895.        @Datum_Nar_Od Smalldatetime = Null,
  72896.        @Datum_Nar_Do Smalldatetime = Null
  72897. AS
  72898.     Declare @SSQL Varchar(4000)
  72899.         Set @SSQL = 'Select top 200 N.*, K.ImeKup
  72900.              From Naracki N
  72901.              Left Outer Join Komint K on N.Sifra_Kup = K.SifrA_Kup
  72902.              where Sifra_Nar in ' + @Sifra_Nar_List +
  72903.                      ' order by datum_nar DESC, broj_nar DESC '
  72904.     EXEC(@SSQL)
  72905.  
  72906.  
  72907.  
  72908. Go
  72909. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_proekt]'))
  72910. drop procedure [dbo].[sp_list_proekt]
  72911.  
  72912. Go
  72913.  
  72914.  
  72915. CREATE     PROCEDURE sp_List_Proekt
  72916. AS
  72917.  
  72918.     select K.ImeKUp, P.*
  72919.     from Proekt P
  72920.         left outer join Komint K 
  72921.         on P.Sifra_Kup=K.Sifra_Kup
  72922.  
  72923.  
  72924.  
  72925.  
  72926.  
  72927.  
  72928.  
  72929. Go
  72930. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_rabkalendar]'))
  72931. drop procedure [dbo].[sp_list_rabkalendar]
  72932.  
  72933. Go
  72934. create    PROCEDURE sp_List_rabkalendar
  72935. AS
  72936.  
  72937.     select *
  72938.     from RabKalendar
  72939.  
  72940.  
  72941.  
  72942. Go
  72943. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_tipkatpakuv]'))
  72944. drop procedure [dbo].[sp_list_tipkatpakuv]
  72945.  
  72946. Go
  72947.  
  72948. CREATE  Procedure sp_list_tipkatpakuv
  72949. AS
  72950.     Select Sifra_KatPak, ImeKatPak, Sifra_Pak from TipkatPakuv
  72951.  
  72952.  
  72953.  
  72954. Go
  72955. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_tipkatstatus]'))
  72956. drop procedure [dbo].[sp_list_tipkatstatus]
  72957.  
  72958. Go
  72959.  
  72960. CREATE  Procedure sp_list_TIPkatstatus
  72961. AS
  72962.     Select * from KatStatus
  72963.  
  72964.  
  72965.  
  72966. Go
  72967. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_vozila]'))
  72968. drop procedure [dbo].[sp_list_vozila]
  72969.  
  72970. Go
  72971.  
  72972. CREATE  procedure sp_list_vozila
  72973.  
  72974. as
  72975.     select V.*, K.ImeArt, K.Drugo1, D1.Ime_1, K.Sifra_Drg, DR.Ime, 
  72976.     K.Drugo2, D2.Ime_2, K.Drugo3, D3.Ime_3, K.Kto, K.Drugo4, D4.Ime_4
  72977.     from Vozila V 
  72978.     inner join Katart K on V.Sifra_Art=K.Sifra_Art
  72979.     left outer join Drugo1 D1 on K.Drugo1= D1.Sifra_1
  72980.     left outer join Drugo2 D2 on K.Drugo2= D2.Sifra_2
  72981.     left outer join Drugo3 D3 on K.Drugo3= D3.Sifra_3
  72982.     left outer join Drugo4 D4 on K.Drugo4= D4.Sifra_4
  72983.     left outer join DrgPodel DR on K.Sifra_drg= DR.Sifra_Drg
  72984.  
  72985.  
  72986.  
  72987.  
  72988. Go
  72989. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_vozizjava]'))
  72990. drop procedure [dbo].[sp_list_vozizjava]
  72991.  
  72992. Go
  72993. CREATE procedure sp_list_VozIzjava
  72994. as
  72995.     select V.*, K.ImeArt from VozIzjava V 
  72996.     inner join Katart K on V.Sifra_Art=K.Sifra_Art
  72997.  
  72998.  
  72999. Go
  73000. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_list_whmlokacgrupi]'))
  73001. drop procedure [dbo].[sp_list_whmlokacgrupi]
  73002.  
  73003. Go
  73004. Create procedure sp_list_whmlokacgrupi
  73005.   AS
  73006. select * from whmlokacgrupi
  73007.  
  73008.  
  73009. Go
  73010. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lista_isporaka]'))
  73011. drop procedure [dbo].[sp_lista_isporaka]
  73012.  
  73013. Go
  73014. CREATE                        PROCEDURE sp_Lista_Isporaka
  73015.     @Sifra_Nal Smallint = NULL,
  73016.     @Sifra_Dok Smallint = NULL,
  73017.     @Sifra_OE Smallint = NULL,
  73018.     @KoiOE Varchar(200) = NULL,
  73019.     @Sifra_Prim Smallint = NULL,
  73020.     @Broj_Nal_Od Int = NULL,
  73021.     @Broj_Nal_Do Int = NULL,
  73022.     @Broj_Dok_Od Int = NULL,
  73023.     @Broj_Dok_Do Int = NULL,
  73024.     @Datum_Dok_Od Smalldatetime = NULL,
  73025.     @Datum_Dok_Do Smalldatetime = NULL,
  73026.     @Datum_Nal_Od Smalldatetime = NULL,
  73027.     @Datum_Nal_Do Smalldatetime = NULL,
  73028.     @Sifra_Kup Char(6) = NULL,
  73029.     @Sifra_Za Char(1) = NULL,
  73030.     @VlIzl Char(1)='I',
  73031.     @PecFisc char(1) = 'N',
  73032.     @Sifra_Nivo Char(2) = Null,
  73033.     @KFSifra_Nivo Char(1) = Null,
  73034.     @KFSifra_Prim Char(1) = Null,
  73035.     @Sifra_Pat    smallint = Null,
  73036.     @Koi_Gradovi    varchar(200) = Null,
  73037.     @Koi_Regioni    varchar(200) = Null,
  73038.     @KDrugo1    smallint = Null,
  73039.     @KDrugo2    smallint = Null,
  73040.     @KDrugo3    smallint = Null,
  73041.     @KDrugo4    smallint = Null,
  73042.     @KDrugo5    smallint = Null,
  73043.     @KDrugo6    smallint = Null,
  73044.     @KDrugo7    smallint = Null
  73045. AS
  73046.    Declare @SSQL Varchar(4000)                            
  73047.     SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, 
  73048.                 D.Sifra_Obj, D.Datum_Dok, D.Rok, D.Toc200, D.MagVr, D.MagVrDan, D.Danok1, D.Danok2, 
  73049.                 Sum(S.Kolic) Kolicina, Sum(S.Kolic*S.NabCena) NabVr, Sum(S.Kolic*S.MagCena) MagVrednost, TD.ImeDok,
  73050.                 SUM(S.Kolic * A.Volumen) Volumen, K.ImeKup, K.SMesto, O.ImeOrg As IORG, OP.ImeOrg As IORG_Prima, KO.ImeObj
  73051.                 FROM DOKR D
  73052.                 Inner Join Stavr S On D.DokrID=S.DokrID
  73053.                 INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  73054.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  73055.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  73056.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  73057.                 LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  73058.                 LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE
  73059.                  Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '                        
  73060.     If @Sifra_Nal Is Null
  73061.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  73062.     Else
  73063.         SET @SSQL = @SSQL + 'WHERE TD.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  73064.     If @KFSifra_Nivo Is Null
  73065.         Begin
  73066.             If @Sifra_Nivo Is Not Null
  73067.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  73068.         End
  73069.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  73070.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  73071.     If @PecFisc = 'D'
  73072.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  73073.     If @Sifra_Dok Is NOT NULL
  73074.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  73075.     If @Sifra_OE Is NOT Null
  73076.         SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  73077.     If @KoiOE Is NOT Null
  73078.         SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  73079.     If @KFSifra_Prim Is Null
  73080.         Begin
  73081.             If @Sifra_Prim Is Not Null
  73082.                 SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  73083.         End
  73084.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  73085.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As Varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  73086.     If @Sifra_Pat IS NOT NULL
  73087.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  73088.     /*
  73089.        If @Sifra_Prim Is NOT Null
  73090.               SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  73091.     */
  73092.     If @Broj_Nal_Od Is NOT Null
  73093.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  73094.     If @Broj_Nal_Do Is NOT Null
  73095.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  73096.     If @Broj_Dok_Od Is NOT Null
  73097.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  73098.     If @Broj_Dok_Do Is NOT Null
  73099.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  73100.     If @Datum_Dok_Od Is NOT Null
  73101.         SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  73102.     If @Datum_Dok_Do Is NOT Null
  73103.          SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  73104.     If @Datum_Nal_Od Is NOT Null
  73105.         SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  73106.     If @Datum_Nal_Do Is NOT Null
  73107.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  73108.     If @Sifra_Kup Is NOT Null        SET @SSQL = @SSQL + 'AND D.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  73109.     If @Sifra_Za Is NOT Null
  73110.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  73111.     If @VlIzl Is NOT Null
  73112.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  73113.     If @Koi_Gradovi Is Not NULL    
  73114.         Begin
  73115.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  73116.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  73117.         End
  73118.     If @Koi_Regioni Is Not NULL    
  73119.         Begin
  73120.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  73121.             OR ( KO.Sifra_Reg Is Null and K.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  73122.         End
  73123.     If @KDrugo1 Is Not NULL    
  73124.             Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KDrugo1 as varchar(6)) + ') 
  73125.             OR (KO.KDrugo1 Is Null and K.KDrugo1 = ' + Cast(@KDrugo1 as varchar(6)) + ')) '     
  73126.     If @KDrugo2 Is Not NULL    
  73127.             Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KDrugo2 as varchar(6)) + ') 
  73128.             OR (KO.KDrugo2 Is Null and K.KDrugo2 = ' + Cast(@KDrugo2 as varchar(6)) + ')) '     
  73129.     If @KDrugo3 Is Not NULL    
  73130.             Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KDrugo3 as varchar(6)) + ') 
  73131.             OR (KO.KDrugo3 Is Null and K.KDrugo3 = ' + Cast(@KDrugo3 as varchar(6)) + ')) '     
  73132.     If @KDrugo4 Is Not NULL    
  73133.             Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KDrugo4 as varchar(6)) + ') 
  73134.             OR (KO.KDrugo4 Is Null and K.KDrugo4 = ' + Cast(@KDrugo4 as varchar(6)) + ')) '     
  73135.     If @KDrugo5 Is Not NULL    
  73136.             Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KDrugo5 as varchar(6)) + ') 
  73137.             OR (KO.KDrugo5 Is Null and K.KDrugo5 = ' + Cast(@KDrugo5 as varchar(6)) + ')) '     
  73138.     If @KDrugo6 Is Not NULL    
  73139.             Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@KDrugo6 as varchar(6)) + ') 
  73140.             OR (KO.KDrugo6 Is Null and K.KDrugo6 = ' + Cast(@KDrugo6 as varchar(6)) + ')) '     
  73141.     If @KDrugo7 Is Not NULL    
  73142.             Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@KDrugo7 as varchar(6)) + ') 
  73143.             OR (KO.KDrugo7 Is Null and K.KDrugo7 = ' + Cast(@KDrugo7 as varchar(6)) + ')) '     
  73144.     Set @SSQL = @SSQL + 'Group By D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, 
  73145.                 D.Sifra_Obj, D.Datum_Dok, D.Rok, D.Toc200, D.MagVr, D.MagVrDan, D.Danok1, D.Danok2, 
  73146.                 TD.ImeDok, K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg, KO.ImeObj '
  73147. /*                D.Sifra_Nal,
  73148.                 D.DokrID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.VlIzl, 
  73149.                 D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Ispratnica, 
  73150.                 D.Opis, D.Sifra_Kup, D.Sifra_Obj, D.Datum_Dok, D.Datum_Vnes, D.Datum_Izm, D.Uces, 
  73151.                 D.Kasa, D.Rok, D.Sifra_Pat, D.Sifra_Oper, D.Sifra_OpIz, D.SerBr, D.Kto, D.Kurs, 
  73152.                 D.KojaVal, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, 
  73153.                 D.PDanok2, D.PTrosok, D.DanDokCena, D.DanMagCena, D.CenaIznos, D.ProcMarza, 
  73154.                 D.Kod_Danok, D.TekstPosle, D.VoRekap, D.VoGlk, D.VoAnal, D.Datum_Knz, D.VoTipNal_Glk, 
  73155.                 D.VoBrNal_Glk, D.Prenesen, D.Pec_Fisc, D.Pec_Dok, D.Sifra_Nivo, D.Blokiran, D.KojaSmetka,
  73156.                 D.KasaPoDDV, TD.ImeDok, K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg, D.Spremil, D.Sifra_Nar, 
  73157.                 D.Broj_Nar, D.Sifra_OeNar, D.Usluzna, D.TekstPred, D.Sifra_Mest, D.Izrab_Nar, Dat_Pec_Fisc '
  73158. */
  73159. print @SSQL
  73160.    EXEC(@SSQL)
  73161.  
  73162.  
  73163. Go
  73164. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_listadeklaracii]'))
  73165. drop procedure [dbo].[sp_listadeklaracii]
  73166.  
  73167. Go
  73168. CREATE    PROCEDURE sp_ListaDeklaracii
  73169.     @Koi_OE    varchar(200) = NULL,
  73170.     @Dat_Od_Vlez    SmallDateTime = NULL,
  73171.     @Dat_Do_Vlez    SmallDateTime = NULL,
  73172.     @Dat_Od_Izlez    SmallDateTime = NULL,
  73173.     @Dat_Do_Izlez    SmallDateTime = NULL,
  73174.     @Koi_TipDok    varchar(200) = NULL,
  73175.     @Broj_KonsOd    int = NULL,
  73176.     @Broj_KonsDo    int = NULL,
  73177.     @Sifra_Art_Od    varchar(20) = NULL,
  73178.     @Sifra_Art_Do    varchar(20) = NULL,
  73179.     @Sifra_Kup_Od Char(6) = Null,
  73180.     @Sifra_Kup_Do Char(6) = Null,
  73181.     @Kto        Char(6) = Null,
  73182.     @Sifra_Gr    Char(3) = Null,
  73183.     @Sifra_Podg    Char(6) = Null,
  73184.     @Lokacija    Varchar(15) = Null,
  73185.     @Sifra_Brand    Smallint = Null,
  73186.     @CarBroj    Char(10) = Null,
  73187.     @VoDenari    char(1) = 'N'  --  D / N
  73188. AS
  73189.     CREATE TABLE #TmpKons
  73190. (    Sifra_OE    smallint, 
  73191.     Sifra_Dok    smallint, 
  73192.     Broj_Kons    int, 
  73193.     Sifra_Art    varchar(20),
  73194.     ImeArt        varchar(40),
  73195.     EdMera        char(5),
  73196.     CarBroj        char(10),
  73197.     ECD        varchar(20), 
  73198.     Datum_Mag    smalldatetime, 
  73199.     Identif_Br    varchar(25), 
  73200.     ImeVal        char(20), 
  73201.     ZBroj        varchar(20),
  73202.     SBroj        varchar(20),
  73203.     Lokacija    varchar(10),
  73204.     Alt_Sifra        varchar(15),
  73205.     Kol_Vlez    decimal(18,4), 
  73206.     Kol_Izlez    decimal(18,4), 
  73207.     Pak_Vlez    decimal(18,4), 
  73208.     Pak_Izlez    decimal(18,4), 
  73209.     Bru_Vlez    decimal(18,4), 
  73210.     Bru_Izlez    decimal(18,4), 
  73211.     Neto_Vlez    decimal(18,4), 
  73212.     Neto_Izlez    decimal(18,4), 
  73213.     Vr_Vlez        decimal(18,4), 
  73214.     Vr_Izlez        decimal(18,4)
  73215. )
  73216.     Declare @SSQL varchar(4000)
  73217.     SET @SSQL =  'INSERT INTO #TmpKons (Sifra_OE, Sifra_Dok, Broj_Kons, Sifra_Art, Kol_Vlez, Kol_Izlez, Pak_Vlez, 
  73218.             Pak_Izlez, Bru_Vlez, Bru_Izlez, Neto_Vlez, Neto_Izlez, Vr_Vlez, Vr_Izlez)
  73219.             SELECT S.Sifra_OE, dbo.fn_DajSifraVlez(S.Sifra_Dok, S.Sifra_Dok_Vlez, S.VlIzl) As Sifra_Dok, 
  73220.             dbo.fn_DajBrojVlez(S.Broj_Kons, S.Broj_Kons_Vlez, S.VlIzl) As Broj_Kons, S.Sifra_Art, 
  73221.             SUM(CASE WHEN S.VlIzl  = ''V'' THEN S.Kolic
  73222.                 ELSE 0     END) Kol_Vlez, 
  73223.             SUM(CASE WHEN S.VlIzl  = ''I'' THEN S.Kolic
  73224.                 ELSE 0     END) Kol_Izlez, 
  73225.             SUM(CASE WHEN S.VlIzl  = ''V'' THEN S.Koleti
  73226.                 ELSE 0     END) Pak_Vlez, 
  73227.             SUM(CASE WHEN S.VlIzl  = ''I'' THEN S.Koleti
  73228.                 ELSE 0     END) Pak_Izlez, 
  73229.             SUM(CASE WHEN S.VlIzl  = ''V'' THEN S.Bruto
  73230.                 ELSE 0     END) Bru_Vlez, 
  73231.             SUM(CASE WHEN S.VlIzl  = ''I'' THEN S.Bruto
  73232.                 ELSE 0     END) Bru_Izlez, 
  73233.             SUM(CASE WHEN S.VlIzl  = ''V'' THEN S.Neto
  73234.                 ELSE 0     END) Neto_Vlez, 
  73235.             SUM(CASE WHEN S.VlIzl  = ''I'' THEN S.Neto
  73236.                 ELSE 0     END) Neto_Izlez, '
  73237.     If @VoDenari = 'D'
  73238.         Set @SSQL = @SSQL + ' SUM(CASE WHEN S.VlIzl  = ''V'' THEN S.Kolic * S.DevCena * K.Kurs
  73239.                         ELSE 0     END) Vr_Vlez, 
  73240.                     SUM(CASE WHEN S.VlIzl  = ''I'' THEN S.Kolic * S.DevCena * K.Kurs
  73241.                         ELSE 0     END) Vr_Izlez '
  73242.     Else -- If @VoDenari <> 'D'
  73243.         Set @SSQL = @SSQL + ' SUM(CASE WHEN S.VlIzl  = ''V'' THEN S.Kolic * S.DevCena
  73244.                         ELSE 0     END) Vr_Vlez, 
  73245.                     SUM(CASE WHEN S.VlIzl  = ''I'' THEN S.Kolic * S.DevCena
  73246.                         ELSE 0     END) Vr_Izlez '
  73247.     Set @SSQL = @SSQL + ' FROM DevStavKons S 
  73248.                 INNER JOIN DevKons K ON S.DevKonsID=K.DevKonsID '
  73249.     IF @Kto     IS NOT Null  OR  @Sifra_Gr IS NOT Null  OR  @Sifra_Podg IS NOT Null OR @Lokacija IS NOT Null  OR @Sifra_Brand IS NOT Null OR @CarBroj Is Not Null
  73250.         SET @SSQL = @SSQL + ' INNER JOIN KatArt A ON S.Sifra_Art = A.Sifra_Art '
  73251.     IF @Sifra_Gr IS NOT Null  
  73252.         SET @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON A.Sifra_Podg = P.Sifra_Podg '
  73253.     SET @SSQL = @SSQL + ' WHERE 1=1 '
  73254.     IF @Koi_OE IS NOT NULL
  73255.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN (' + @Koi_OE + ') '
  73256.     IF @Dat_Od_Vlez IS NOT NULL
  73257.         SET @SSQL = @SSQL + ' AND (K.Datum_Mag >=''' + Cast(@Dat_Od_Vlez as varchar(30)) + ''' OR S.VlIzl = ''I'') '
  73258.     IF @Dat_Do_Vlez IS NOT NULL
  73259.         SET @SSQL = @SSQL + ' AND (K.Datum_Mag <=''' + Cast(@Dat_Do_Vlez as varchar(30)) + ''' OR S.VlIzl = ''I'') '
  73260.     IF @Dat_Od_Izlez IS NOT NULL
  73261.         SET @SSQL = @SSQL + ' AND (K.Datum_Mag >=''' + Cast(@Dat_Od_Izlez as varchar(30)) + ''' OR S.VlIzl = ''V'') '
  73262.     IF @Dat_Do_Izlez IS NOT NULL
  73263.         SET @SSQL = @SSQL + ' AND (K.Datum_Mag <=''' + Cast(@Dat_Do_Izlez as varchar(30)) + ''' OR S.VlIzl = ''V'') '
  73264.     IF @Koi_TipDok    IS NOT NULL
  73265.         SET @SSQL = @SSQL + ' AND S.Sifra_Dok IN (' + @Koi_TipDok + ') '
  73266.     IF @Broj_KonsOd IS NOT NULL
  73267.         SET @SSQL = @SSQL + ' AND S.Broj_Kons >=''' + Cast(@Broj_KonsOd as varchar(10)) + ''' '
  73268.     IF @Broj_KonsDo IS NOT NULL
  73269.         SET @SSQL = @SSQL + ' AND S.Broj_Kons <=''' + Cast(@Broj_KonsDo as varchar(10)) + ''' '
  73270.     IF @Sifra_Art_Od IS NOT NULL
  73271.         SET @SSQL = @SSQL + ' AND S.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  73272.     IF @Sifra_Art_Do IS NOT NULL
  73273.         SET @SSQL = @SSQL + ' AND S.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  73274.     IF @Sifra_Kup_Od Is Not Null
  73275.         SET @SSQL = @SSQL + ' AND K.Sifra_Kup >=''' + @Sifra_Kup_Do + ''' '
  73276.     IF @Sifra_Kup_Do Is Not Null
  73277.         SET @SSQL = @SSQL + ' AND K.Sifra_Kup <=''' + @Sifra_Kup_Do + ''' '
  73278.     IF @Kto IS NOT Null
  73279.         SET @SSQL = @SSQL + ' AND A.Kto  =''' + @Kto + ''' '
  73280.     IF @CarBroj IS NOT Null
  73281.         SET @SSQL = @SSQL + ' AND A.CarBroj  =''' + @CarBroj + ''' '
  73282.     IF @Sifra_Gr IS NOT Null
  73283.         SET @SSQL = @SSQL + ' AND P.Sifra_Gr  =''' + @Sifra_Gr + ''' '
  73284.     IF @Sifra_Podg IS NOT Null
  73285.         SET @SSQL = @SSQL + ' AND A.Sifra_Podg  =''' + @Sifra_Podg + ''' '
  73286.     IF @Lokacija IS NOT Null
  73287.         SET @SSQL = @SSQL + ' AND A.Alt_Sifra  =''' + @Lokacija + ''' '
  73288.     IF @Sifra_Brand    IS NOT Null
  73289.         SET @SSQL = @SSQL + ' AND K.Sifra_Drg  =' + Cast(@Sifra_Brand as varchar(7)) + ' '
  73290.     SET @SSQL = @SSQL + ' GROUP BY S.Sifra_OE, dbo.fn_DajSifraVlez(S.Sifra_Dok, S.Sifra_Dok_Vlez, S.VlIzl), 
  73291.                 dbo.fn_DajBrojVlez(S.Broj_Kons, S.Broj_Kons_Vlez, S.VlIzl), S.Sifra_Art'
  73292.     EXEC(@SSQL)
  73293.     UPDATE #TmpKons SET ECD=DevKons.ECD, Datum_Mag=DevKons.Datum_Mag, Identif_Br=DevKons.Identif_Br, SBroj=DevKons.SBroj, ZBroj=DevKons.ZBroj
  73294.     FROM DevKons WHERE #TmpKons.Sifra_OE=DevKons.Sifra_OE AND #TmpKons.Sifra_Dok=DevKons.Sifra_Dok AND #TmpKons.Broj_Kons=DevKons.Broj_Kons 
  73295.     UPDATE #TmpKons SET ImeArt=KatArt.ImeArt, EdMera = KatArt.EdMera, CarBroj=Katart.CarBroj, Lokacija=Katart.Lokacija, Alt_Sifra=Katart.Alt_Sifra
  73296.     FROM KatArt WHERE #TmpKons.Sifra_Art=KatArt.Sifra_Art
  73297.     UPDATE #TmpKons SET ImeVal=KrsLista.ImeVal
  73298.     FROM DevKons, KrsLista WHERE #TmpKons.Sifra_OE=DevKons.Sifra_OE AND #TmpKons.Sifra_Dok=DevKons.Sifra_Dok AND 
  73299.         #TmpKons.Broj_Kons=DevKons.Broj_Kons AND DevKons.KojaVal = KrsLista.SImeVal
  73300.     SELECT Sifra_OE, Sifra_Dok, Broj_Kons, Sifra_Art, ImeArt, EdMera, ECD, Datum_Mag, Identif_Br, ImeVal, CarBroj, SBroj, ZBroj, Lokacija, Alt_Sifra,
  73301.         round((Kol_Vlez),4) Kol_Vlez, round((Kol_Izlez),4) Kol_Izlez, round((Pak_Vlez),4) Pak_Vlez, round((Pak_Izlez),4) Pak_Izlez,
  73302.         round((Bru_Vlez),4) Bru_Vlez, round((Bru_Izlez),4) Bru_Izlez, round((Neto_Vlez),4) Neto_Vlez, round((Neto_Izlez),4) Neto_Izlez,
  73303.         round((Vr_Vlez),4) Vr_Vlez, round((Vr_Izlez),4) Vr_Izlez 
  73304.      FROM #TmpKons
  73305.  
  73306.  
  73307. Go
  73308. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_listajdokr]'))
  73309. drop procedure [dbo].[sp_listajdokr]
  73310.  
  73311. Go
  73312.  
  73313. create    PROCEDURE sp_ListajDokr
  73314.     @KonKade varchar(20),
  73315.  
  73316.     @Sifra_OE Smallint,
  73317.     @Sifra_Dok  smallint,
  73318.     @Broj_Dok int,
  73319.  
  73320.     @Sifra_OE_Sleden Smallint OUTPUT,
  73321.     @Sifra_Dok_Sleden  smallint OUTPUT,
  73322.     @Broj_Dok_Sleden int OUTPUT
  73323.  
  73324. AS
  73325.  
  73326.     Declare @aGjubr int
  73327.  
  73328.     if @Sifra_Oe <= 0
  73329.     begin
  73330.         set @Sifra_Oe_Sleden = 0
  73331.         set @Sifra_Dok_Sleden = 0
  73332.         set @Broj_Dok_Sleden = 0
  73333.  
  73334.         RETURN    
  73335.     end
  73336.     
  73337.     set @Broj_Dok_Sleden = 0
  73338.  
  73339.     if @KonKade = 'Sleden'
  73340.     begin
  73341.         select @Broj_Dok_Sleden = min(Broj_dok)
  73342.         from dokr
  73343.         where Sifra_oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok and Broj_Dok > @Broj_Dok
  73344.     end
  73345.     else if @KonKade = 'Prethoden'
  73346.     begin
  73347.         select @Broj_Dok_Sleden = max(Broj_dok)
  73348.         from dokr
  73349.         where Sifra_oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok and Broj_Dok < @Broj_Dok
  73350.     end
  73351.     else if @KonKade = 'Prv'
  73352.     begin
  73353.         select @Broj_Dok_Sleden = min(Broj_dok)
  73354.         from dokr
  73355.         where Sifra_oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok
  73356.     end
  73357.     else if @KonKade = 'Posleden'
  73358.     begin
  73359.         select @Broj_Dok_Sleden = max(Broj_dok)
  73360.         from dokr
  73361.         where Sifra_oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok
  73362.     end
  73363.  
  73364.     if @Broj_Dok_Sleden is null
  73365.         set @Broj_Dok_Sleden = 0
  73366.  
  73367.     -- Zaradi fleksibinost vrakam i Oe, Dok, Broj -- mozze ke trebaat natamu
  73368.     if @Broj_Dok_Sleden > 0
  73369.     begin
  73370.         set @Sifra_Oe_Sleden = @Sifra_Oe
  73371.         set @Sifra_Dok_Sleden = @Sifra_Dok
  73372.     end
  73373.  
  73374.  
  73375.  
  73376. Go
  73377. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_listboxkta]'))
  73378. drop procedure [dbo].[sp_listboxkta]
  73379.  
  73380. Go
  73381.  
  73382.  
  73383.  
  73384. CREATE    PROCEDURE sp_ListBoxKta
  73385.  AS
  73386.     Select Kto_Anal, ImeAnal, DaliKupuv From Anal 
  73387.     Where DaliKupuv = 'D' Or DaliKupuv = 'K'
  73388.  
  73389.  
  73390.  
  73391. Go
  73392. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_listevdekl]'))
  73393. drop procedure [dbo].[sp_listevdekl]
  73394.  
  73395. Go
  73396. CREATE procedure sp_ListEvDekl
  73397.     @DatumOd smalldatetime,
  73398.     @DatumDo smalldatetime
  73399. As
  73400.     Select E.Godina,E.Rbr,E.Datum_Dok,E.Cas,E.Br_Paketi,0 Sifra_Oe, 0 Sifra_Dok, 0 Broj_Dok, --E.Sifra_Oe, E.Sifra_Dok, E.Broj_Dok, 
  73401.     E.BrojDok,E.Reg_Vozilo,E.R_Broj,E.A_Broj,E.Sifra_Kup,K.ImeKup, E.Gran_Premin,E.W_Broj,E.R_Broj_Dop, 
  73402.     S.CarBroj, C.Ime, S.NetoTez,S.BrutoTez,S.FaktVred,S.StatVred          
  73403.     From EvDekl E
  73404.     Inner Join EvDeklStav S on S.Godina=E.Godina and S.Rbr=E.Rbr
  73405.     Left outer join Komint K on K.Sifra_Kup=E.Sifra_Kup
  73406.     left outer join CBroevi C on C.CarBroj=S.CarBroj
  73407.     Where  E.Datum_Dok >=@DatumOd and E.Datum_Dok <=@DatumDo
  73408.  
  73409.  
  73410. Go
  73411. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_listizmenetiartkom]'))
  73412. drop procedure [dbo].[sp_listizmenetiartkom]
  73413.  
  73414. Go
  73415.  
  73416. CREATE  Procedure sp_ListIzmenetiArtKom
  73417.     @DatumOd smalldatetime,
  73418.     @DatumDo smalldatetime,
  73419.     @Sifra_Art varchar(20)= null,
  73420.     @Sifra_Art_Do varchar(20)= null,
  73421.     @Sifra_Kup char(6)= null,
  73422.     @Sifra_Kup_Do char(6)= null,
  73423.     @Prik char(1)
  73424. As
  73425.     Declare @SSQL as varchar(6000)
  73426. if @Prik='A'
  73427.     Set @SSQL=' Select Sifra_Art, ImeArt, ImeArt2, EdMera, Alt_Ime, Alt_Ime2, Alt_EdMera, Sifra_Podg, Sifra_Tar, Kto, Cena, Sostojba, CarBroj, SMatUsl,
  73428.               Sifra_Drg, KolkuDrg, Drugo1, Drugo2, Drugo3, Drugo4, Drugo5, DaliSurov, Uces, Datum_Cena, Fakturna, Nabavna, DogCena, MalCena, GotCena,
  73429.               SpeCena, PCena4, PCena5, PCena6, Proc_Marza, Nom, SMin_Sost, SMax_Sost, SOpt_Sost, Lokacija, Popust, ImaBroevi, ImaKomerc, Tezina,
  73430.               PopusMar, IzmenetNa, IzmenetOd, Alt_Sifra, Iskluci, SpecRabat, SpecRabatOd, SpecRabatDo, BTezina, Volumen, Rabat_Dali, SodrziEd,
  73431.               Propagiraj, ProcAlk, RokKontrDali, Aktiven, Sifra_Amb, Prenesen, Rok_Tra, ImaPaleta, RokTraDen, PDA_Ime, Sifra_Div, Sif_Depoz_Amb,
  73432.               Sifra_KHier, Kto_Anal, DeklArt, Koef, Drugo6, Drugo7, ProcKalo, VoPDA, MKProiz, AkcijaDali, Sifra_ATC
  73433.               From KatArtH ' 
  73434. If @Prik='K'
  73435.     Set @SSQL=' Select Sifra_Kup, ImeKup, ImeKup2, Adresa, Adresa2, SMesto, Posta, Zemja, ImaObj, IspAdresa, IspAdresa2, IspMesto, IspPosta, IspZemja,
  73436.               Telefon, Tel1, Tel2, TelMobil, Fax, Telex, EMail, AdrWeb, Sopstvenik, LK, Sopst_Mat, Danocen, Ziro, Ziro2, Banka, Banka2, Sifra_Ban,
  73437.               Sifra_Ban2, BRIZJAVA, KONTAKT, Sifra_Pat, Sifra_Grad, TipKup, Sifra_reg, Sifra_Nivo, Sifra_Tip, KDrugo1, KDrugo2, KDrugo3, KDrugo4,
  73438.               KDrugo5, Uces, KojaSmetka, Rok_Dosp, Kasa, KojaCena, BrPoseti, DirDistr, ZemaOd, Zabeleska, Aktiven, BrProdMesta, BrAktProdMesta,
  73439.               IzmenetNa, IzmenetOd, ImaBanka, Alt_ImeKup, Alt_Adresa, DogovorBroj, MozeIsporaka, Garancija, Propagiraj, MatBr, Sifra_Pat2, Sopst_Adr,
  73440.               Sopst_Mesto, Prenesen, ForsUces, Limit_Dolzi, Prioritet, FraRepr, Aneks1, Aneks2, God_Rabat, Spec_Rabat, m2, Sifra_VPJ, Rok_Dobav, 
  73441.               Uces_Kol, SkrOznaka, KDrugo6, KDrugo7, MemoKup, Priv_Lice, VidStalazi, TolerDena_Dosp
  73442.               From KomintH '
  73443.      Set @SSQL=@SSQL+ ' Where 1=1' 
  73444. If @DatumOd Is Not Null
  73445.     Set @SSQL = @SSQL + ' And IzmenetNa>=''' + Cast(@DatumOd As Varchar(35)) + ''' '
  73446. If @DatumDo Is Not Null
  73447.         Set @SSQL = @SSQL + ' And IzmenetNa<=''' + Cast(@DatumDo As Varchar(35)) + ''' '
  73448. If @Sifra_Art Is Not Null
  73449.         Set @SSQL = @SSQL + ' And Sifra_Art >= ''' + @Sifra_Art + ''' '
  73450. If @Sifra_Art_Do Is Not Null
  73451.         Set @SSQL = @SSQL + ' And Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  73452. If @Sifra_Kup Is Not Null
  73453.         Set @SSQL = @SSQL + ' And Sifra_Kup >= ''' + @Sifra_Kup + ''' '
  73454. If @Sifra_Kup_Do Is Not Null
  73455.         Set @SSQL = @SSQL + ' And Sifra_Kup <= ''' + @Sifra_Kup_Do + ''' '
  73456. If @Prik='K'
  73457.     Set @SSQL = @SSQL + ' Order By Sifra_kup, IzmenetNa '
  73458. else
  73459.     Set @SSQL = @SSQL + ' Order By Sifra_Art, IzmenetNa '
  73460.  
  73461. print (@ssqL) 
  73462. exec (@SSQL)
  73463.  
  73464.  
  73465.  
  73466. Go
  73467. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_listkomlimitdiv]'))
  73468. drop procedure [dbo].[sp_listkomlimitdiv]
  73469.  
  73470. Go
  73471.  
  73472. CREATE   procedure sp_ListKomLimitDiv
  73473.     @Sifra_kup char(6)=NULL,
  73474.     @Sifra_Div smallint = NULL
  73475. AS
  73476.  
  73477.  
  73478. declare @SSQL as varchar(1000)
  73479.  
  73480. set @SSQL = ' Select KD.*, K.ImeKup, D.ImeDiv from KomLimitDiv KD
  73481.     Inner Join KOmint K on KD.Sifra_Kup=K.Sifra_Kup
  73482.     Inner Join Divizii D on KD.Sifra_Div=D.Sifra_Div 
  73483.     Where 1=1 '
  73484.  
  73485. IF @Sifra_Kup IS Not NULL
  73486.     set @SSQL = @SSQL + ' AND KD.Sifra_Kup = '+cast(@Sifra_Kup as char(6))+' '
  73487. IF @Sifra_Div IS Not Null
  73488.     set @SSQL = @SSQL + ' AND KD.Sifra_Div = '+cast(@Sifra_Div as varchar(6))+' '
  73489.  
  73490.     set @SSQL = @SSQL + ' ORDER BY KD.Sifra_Kup, KD.Sifra_Div'
  73491. exec(@SSQL)
  73492.  
  73493. Go
  73494. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_listkomlimitdivarh]'))
  73495. drop procedure [dbo].[sp_listkomlimitdivarh]
  73496.  
  73497. Go
  73498.  
  73499.  
  73500. CREATE   procedure sp_ListKomLimitDivArh
  73501.     @Sifra_kup char(6)=NULL
  73502. AS
  73503. IF @Sifra_Kup IS NULL
  73504.     Select KD.*, K.ImeKup, D.ImeDiv from KomLimitDivArh KD
  73505.     Inner Join KOmint K on KD.Sifra_Kup=K.Sifra_Kup
  73506.     Inner Join Divizii D on KD.Sifra_Div=D.Sifra_Div
  73507.     ORDER BY KD.Sifra_Kup, KD.Datum_Vnes, KD.Sifra_Div
  73508. ELSE
  73509.     Select KD.*, K.ImeKup, D.ImeDiv from KomLimitDivArh KD
  73510.     Inner Join KOmint K on KD.Sifra_Kup=K.Sifra_Kup
  73511.     Inner Join Divizii D on KD.Sifra_Div=D.Sifra_Div
  73512.     Where KD.Sifra_kup=@Sifra_Kup
  73513.     ORDER BY KD.Datum_Vnes, KD.Sifra_Div
  73514.  
  73515.  
  73516.  
  73517.  
  73518. Go
  73519. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpbrdok]'))
  73520. drop procedure [dbo].[sp_lkpbrdok]
  73521.  
  73522. Go
  73523.  
  73524. CREATE  PROCEDURE sp_lkpBrdok
  73525.     @Sifra_OE Smallint,
  73526.     @Sifra_Dok Smallint,
  73527.     @Broj_Dok Int OUTPUT
  73528. AS
  73529.    SELECT @Broj_Dok=Broj_Dok FROM Brdok
  73530.       WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok
  73531.    IF @@ERROR=0 AND @@ROWCOUNT=0
  73532.       RETURN 77000
  73533.    ELSE
  73534.       RETURN @@ERROR
  73535.  
  73536.  
  73537.  
  73538. Go
  73539. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpbrkomp]'))
  73540. drop procedure [dbo].[sp_lkpbrkomp]
  73541.  
  73542. Go
  73543.  
  73544. CREATE PROCEDURE sp_lkpBrKomp
  73545.     @Broj_Komp Int OUTPUT
  73546. AS
  73547.   --'SELECT @Broj_Komp=Broj_Komp FROM BrKomp
  73548.   select * from BrKomp
  73549.    IF @@ERROR=0 AND @@ROWCOUNT=0
  73550.       RETURN 77000
  73551.    ELSE
  73552.       RETURN @@ERROR
  73553.  
  73554.  
  73555.  
  73556. Go
  73557. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpbrnal]'))
  73558. drop procedure [dbo].[sp_lkpbrnal]
  73559.  
  73560. Go
  73561.  
  73562. CREATE  PROCEDURE sp_lkpBrnal
  73563.     @Sifra_Nal Smallint,
  73564.     @Broj_Nal Int OUTPUT,
  73565.     @Datum_Nal Smalldatetime OUTPUT
  73566. AS
  73567.    SELECT @Broj_Nal=Broj_Nal, @Datum_Nal=Datum_Nal FROM Brnal
  73568.       WHERE Sifra_Nal=@Sifra_Nal
  73569.    IF @@ERROR=0 AND @@ROWCOUNT=0
  73570.       RETURN 77000
  73571.    ELSE
  73572.       RETURN @@ERROR
  73573.  
  73574.  
  73575.  
  73576. Go
  73577. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpcengrorg]'))
  73578. drop procedure [dbo].[sp_lkpcengrorg]
  73579.  
  73580. Go
  73581.  
  73582.  
  73583. CREATE      PROCEDURE sp_lkpCenGrOrg
  73584.     @Sifra_Art varchar(20),
  73585.     @OznakaGrOrg varchar(10)=NULL
  73586. AS
  73587.     CREATE TABLE #TmpCeni
  73588.     (Sif_GrOrg char(6), 
  73589.      Sifra_Art varchar(20),
  73590.      Cena Decimal(18,6),
  73591.      Dozv char(1),
  73592.      Ispraten varchar(120),
  73593.      CenaR Decimal(18,6),
  73594.      Ime_GrOrg varchar(50),
  73595.      Proc_Marza    decimal(9,2),
  73596.      Zaliha    decimal(18,6))
  73597.     CREATE TABLE #TmpZal
  73598.     (Sif_GrOrg char(6),
  73599.      Zaliha    decimal(18,6))
  73600.  
  73601. IF @OznakaGrOrg IS NULL
  73602. Begin
  73603.     INSERT INTO #TmpCeni (Sif_GrOrg, Sifra_Art, Cena, Dozv, Ispraten, CenaR, Ime_GrOrg)
  73604.     SELECT C.Sif_GrOrg, C.Sifra_Art, C.Cena, C.Dozvoleno, C.Ispraten, C.CenaR, G.Ime_GrOrg 
  73605.     FROM CenGrOrg C    INNER JOIN GrOrg G ON C.Sif_GrOrg = G.Sif_GrOrg
  73606.     WHERE C.Sifra_Art = @Sifra_Art
  73607.  
  73608.     INSERT INTO #TmpCeni (Sif_GrOrg, Ime_GrOrg, Sifra_Art, Cena, Dozv)
  73609.     SELECT Sif_GrOrg, Ime_GrOrg, @Sifra_Art, 0, 'D'
  73610.     FROM GrOrg WHERE Edinstvena = 'D' AND Sif_GrOrg NOT IN (SELECT Sif_GrOrg FROM #TmpCeni)
  73611. End
  73612. ELSE
  73613. Begin
  73614.     INSERT INTO #TmpCeni (Sif_GrOrg, Sifra_Art, Cena, Dozv, Ispraten, CenaR, Ime_GrOrg)
  73615.     SELECT C.Sif_GrOrg, C.Sifra_Art, C.Cena, C.Dozvoleno, C.Ispraten, C.CenaR, G.Ime_GrOrg 
  73616.     FROM CenGrOrg C    INNER JOIN GrOrg G ON C.Sif_GrOrg = G.Sif_GrOrg
  73617.     WHERE C.Sifra_Art = @Sifra_Art AND G.Oznaka=@OznakaGrOrg
  73618.  
  73619.     INSERT INTO #TmpCeni (Sif_GrOrg, Ime_GrOrg, Sifra_Art, Cena, Dozv)
  73620.     SELECT Sif_GrOrg, Ime_GrOrg, @Sifra_Art, 0, 'D'
  73621.     FROM GrOrg WHERE Edinstvena = 'D' AND Sif_GrOrg NOT IN (SELECT Sif_GrOrg FROM #TmpCeni) AND Oznaka=@OznakaGrOrg
  73622. End
  73623.     INSERT INTO #TmpZal    (Sif_GrOrg, Zaliha)
  73624.     SELECT S.Sif_GrOrg, SUM(So.Vlez-So.Izlez) FROM Soart So
  73625.     INNER JOIN SGrOrg S ON S.Sifra_OE=So.Sifra_OE 
  73626.     WHERE So.Sifra_Art=@Sifra_Art AND S.Sif_GrOrg IN (SELECT Sif_GrOrg FROM #TmpCeni)  --GrOrg WHERE Edinstvena = 'D')
  73627.     GROUP BY S.Sif_GrOrg
  73628.  
  73629.     UPDATE #TmpCeni SET Zaliha = Z.Zaliha FROM #TmpZal Z WHERE #TmpCeni.Sif_GrOrg=Z.Sif_GrOrg
  73630.     SELECT * FROM #TmpCeni  ORDER BY  Ime_GrOrg
  73631.     RETURN @@ERROR
  73632.  
  73633.  
  73634.  
  73635.  
  73636. Go
  73637. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpcenpodgr]'))
  73638. drop procedure [dbo].[sp_lkpcenpodgr]
  73639.  
  73640. Go
  73641.  
  73642. CREATE     PROCEDURE sp_lkpCenPodgr
  73643.     @Sifra_Podelba varchar(20),
  73644.     @Tip_Podelba char (1),
  73645.     @TipTipKup    char(1)='T'
  73646. AS
  73647.     CREATE TABLE #TmpCeni
  73648.     (
  73649.      TipKup        varchar(11),
  73650.      Uces        Decimal(6,2),
  73651.      Uces2        Decimal(6,2),
  73652.      Uces3        Decimal(6,2),
  73653.      ImeTipKup    varchar(50)
  73654.     )
  73655.     INSERT INTO #TmpCeni (TipKup, Uces, Uces2, Uces3)
  73656.     SELECT TipKup, Uces, Uces2, Uces3
  73657.     FROM CenPoPodgr 
  73658.     WHERE Tip_Podelba = @Tip_Podelba and Sifra_podelba = @Sifra_podelba
  73659. IF @TipTipKup='5'
  73660. Begin
  73661.     INSERT INTO #TmpCeni (TipKup, Uces, Uces2, Uces3)
  73662.     SELECT Sifra_5K, 0 AS Uces, 0 as Uces2, 0 as Uces3
  73663.     FROM Kdrugo5
  73664.     WHERE Sifra_5K NOT IN (SELECT TipKup FROM #TmpCeni)
  73665.     UPDATE #TmpCeni SET ImeTipKup = KDrugo5.Ime_5K
  73666.     FROM Kdrugo5
  73667.     WHERE #TmpCeni.TipKup=Kdrugo5.Sifra_5K
  73668. End
  73669. Else IF @TipTipKup='K'
  73670. Begin
  73671.     INSERT INTO #TmpCeni (TipKup, Uces, Uces2, Uces3)
  73672.     SELECT Sifra_Kup, 0 AS Uces, 0 as Uces2, 0 as Uces3
  73673.     FROM Komint
  73674.     WHERE Sifra_Kup NOT IN (SELECT TipKup FROM #TmpCeni)
  73675.     UPDATE #TmpCeni SET ImeTipKup = Komint.ImeKup
  73676.     FROM Komint
  73677.     WHERE #TmpCeni.TipKup=Komint.Sifra_Kup
  73678. End
  73679. else
  73680. Begin
  73681.     INSERT INTO #TmpCeni (TipKup, Uces, Uces2, Uces3)
  73682.     SELECT TipKup, 0 AS Uces, 0 as Uces2, 0 as Uces3
  73683.     FROM GTipKup
  73684.     WHERE TipKup NOT IN (SELECT TipKup FROM #TmpCeni)
  73685.     UPDATE #TmpCeni SET ImeTipKup = GTipKup.ImeTipKup
  73686.     FROM GTipKup
  73687.     WHERE #TmpCeni.TipKup=GTipKup.TipKup
  73688. End
  73689.     SELECT * FROM #TmpCeni  ORDER BY TipKup
  73690.     RETURN @@ERROR
  73691.  
  73692.  
  73693.  
  73694.  
  73695. Go
  73696. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpcenpodgr_inv]'))
  73697. drop procedure [dbo].[sp_lkpcenpodgr_inv]
  73698.  
  73699. Go
  73700.  
  73701.  
  73702.  
  73703.  
  73704. CREATE      PROCEDURE sp_lkpCenPodgr_Inv
  73705.     @TipKup     varchar(11),
  73706.     @Tip_Podelba     char (1)
  73707. AS
  73708.     CREATE TABLE #TmpCeni
  73709.     (Sifra_Podelba    varchar(20),
  73710.      Uces        Decimal(6,2),
  73711.      Uces2        Decimal(6,2),
  73712.      Uces3        Decimal(6,2),
  73713.      ImePodelba    varchar(50)    )
  73714.  
  73715.     INSERT INTO #TmpCeni (Sifra_Podelba, Uces, Uces2, Uces3)
  73716.     SELECT Sifra_Podelba, Uces, Uces2, Uces3
  73717.     FROM CenPoPodgr 
  73718.     WHERE Tip_Podelba = @Tip_Podelba and TipKup = @TipKup
  73719.  
  73720. IF @Tip_Podelba='A'
  73721. Begin
  73722.     INSERT INTO #TmpCeni (Sifra_Podelba, Uces, Uces2, Uces3)
  73723.     SELECT Sifra_Art, 0 AS Uces, 0 as Uces2, 0 as Uces3
  73724.     FROM KatArt
  73725.     WHERE Sifra_Art NOT IN (SELECT Sifra_Podelba FROM #TmpCeni)
  73726.  
  73727.     UPDATE #TmpCeni SET ImePodelba = KatArt.ImeArt
  73728.     FROM KatArt
  73729.     WHERE #TmpCeni.Sifra_Podelba = KatArt.Sifra_Art
  73730. End
  73731. ELSE
  73732. Begin
  73733.     INSERT INTO #TmpCeni (Sifra_Podelba, Uces, Uces2, Uces3)
  73734.     SELECT Sifra_Podg, 0 AS Uces, 0 as Uces2, 0 as Uces3
  73735.     FROM Podgrupi
  73736.     WHERE Sifra_Podg NOT IN (SELECT Sifra_Podelba FROM #TmpCeni)
  73737.  
  73738.     UPDATE #TmpCeni SET ImePodelba = Podgrupi.Ime_Podg
  73739.     FROM Podgrupi
  73740.     WHERE #TmpCeni.Sifra_Podelba = Podgrupi.Sifra_Podg
  73741. End
  73742.  
  73743.     SELECT * FROM #TmpCeni  ORDER BY Sifra_Podelba
  73744.  
  73745.     RETURN @@ERROR
  73746.  
  73747.  
  73748.  
  73749.  
  73750.  
  73751.  
  73752. Go
  73753. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpgregion]'))
  73754. drop procedure [dbo].[sp_lkpgregion]
  73755.  
  73756. Go
  73757.  
  73758. CREATE    PROCEDURE sp_lkpGRegion
  73759.     @Sifra_Reg Char(6)
  73760. AS
  73761.     SELECT * FROM GRegion
  73762.     WHERE Sifra_Reg=@Sifra_Reg
  73763.     RETURN @@ERROR
  73764.  
  73765.  
  73766.  
  73767. Go
  73768. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpgtipkup]'))
  73769. drop procedure [dbo].[sp_lkpgtipkup]
  73770.  
  73771. Go
  73772.  
  73773. CREATE    PROCEDURE sp_lkpGTipKup
  73774.     @TipKup Varchar(11)
  73775. AS
  73776.     SELECT * FROM GTipKup
  73777.     WHERE TipKup=@TipKup
  73778.     RETURN @@ERROR
  73779.  
  73780.  
  73781.  
  73782. Go
  73783. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpime]'))
  73784. drop procedure [dbo].[sp_lkpime]
  73785.  
  73786. Go
  73787. CREATE  PROCEDURE sp_lkpIme
  73788.     @Sifra VARCHAR(20),
  73789.     @Tabela VARCHAR(20),
  73790.     @Ime VARCHAR(40) OUTPUT
  73791. AS
  73792.     DECLARE @PKey VARCHAR(20)
  73793.     DECLARE @FIme VARCHAR(20)
  73794.     DECLARE @Greska INT
  73795.     DECLARE @SSQL VARCHAR(200)
  73796.     Set @Tabela = Upper(@Tabela)
  73797.     IF @Tabela = 'KATART'
  73798.         SELECT @Ime=ImeArt FROM KatArt WHERE Sifra_Art=@Sifra
  73799.     Else If @Tabela = 'PODGRUPI'
  73800.         SELECT @Ime=Ime_Podg FROM Podgrupi WHERE Sifra_Podg=@Sifra
  73801.     Else If @Tabela = 'GRUPI'
  73802.         SELECT @Ime=Sifra_Gr FROM Grupi WHERE Sifra_Gr=@Sifra
  73803.     Else If @Tabela = 'TARIFI'
  73804.         SELECT @Ime=ImeTar FROM Tarifi WHERE Sifra_Tar=@Sifra
  73805.     Else If @Tabela = 'KOMINT'
  73806.         SELECT @Ime=ImeKup FROM Komint WHERE Sifra_Kup=@Sifra
  73807.     Else If @Tabela = 'ANAL'
  73808.         SELECT @Ime=ImeAnal FROM Anal WHERE Kto_Anal=@Sifra    
  73809.     Else If @Tabela = 'DRGPODEL'
  73810.         SELECT @Ime=Ime FROM DrgPodel WHERE Sifra_Drg=@Sifra    
  73811.     Else If @Tabela = 'TIPPERCENOVINK'
  73812.         SELECT @Ime=ImeTipC FROM TipPerCenovnik WHERE Sifra_TipC=@Sifra    
  73813.     If Len(@Ime) > 0
  73814.         Set @Greska = 0
  73815.     Else
  73816.         Set @Greska = 100
  73817.     If @@ERROR <> 0
  73818.         Set @Greska = @@ERROR
  73819.     Return @Greska
  73820.  
  73821.  
  73822. Go
  73823. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpkobj]'))
  73824. drop procedure [dbo].[sp_lkpkobj]
  73825.  
  73826. Go
  73827.  
  73828. CREATE   PROCEDURE sp_lkpKObj
  73829.     @Sifra_Kup Char(6),
  73830.     @Sifra_Obj Smallint    
  73831. AS
  73832.     SELECT * FROM KObjekti
  73833.     WHERE Sifra_Kup=@Sifra_Kup AND Sifra_Obj=@Sifra_Obj
  73834.     RETURN @@ERROR
  73835.  
  73836.  
  73837.  
  73838. Go
  73839. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpkomint_celkupuvac]'))
  73840. drop procedure [dbo].[sp_lkpkomint_celkupuvac]
  73841.  
  73842. Go
  73843.  
  73844. CREATE  PROCEDURE sp_lkpKomint_CelKupuvac
  73845.         @Sifra_Kup Char(6)
  73846. AS
  73847.     SET NOCOUNT ON
  73848.     SELECT * FROM Komint WHERE Sifra_Kup=@Sifra_Kup    
  73849.     RETURN @@ERROR
  73850.  
  73851.  
  73852.  
  73853. Go
  73854. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkppodrgrupa_celapodgrupa]'))
  73855. drop procedure [dbo].[sp_lkppodrgrupa_celapodgrupa]
  73856.  
  73857. Go
  73858.  
  73859. CREATE  PROCEDURE sp_lkpPodrgrupa_CelaPodgrupa
  73860.         @Sifra_Podg Char(6)
  73861. AS
  73862.     SET NOCOUNT ON
  73863.     SELECT [Sifra_Podg], [Ime_Podg], [Ime_Podg2], [Sifra_Gr]
  73864.     FROM [Podgrupi]
  73865.     WHERE [Sifra_Podg]=@Sifra_Podg
  73866. RETURN @@ERROR
  73867.  
  73868.  
  73869.  
  73870. Go
  73871. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsgrkup]'))
  73872. drop procedure [dbo].[sp_lkpsgrkup]
  73873.  
  73874. Go
  73875.  
  73876.  
  73877. CREATE    PROCEDURE sp_lkpSGrKup
  73878.     @Sif_GrKup Char(6)
  73879. AS
  73880.     SELECT Sifra_Kup FROM SGrKup
  73881.     WHERE Sif_GrKup = @Sif_GrKup
  73882.     ORDER BY Sifra_Kup
  73883.     RETURN @@ERROR
  73884.  
  73885.  
  73886.  
  73887.  
  73888. Go
  73889. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsgrorg]'))
  73890. drop procedure [dbo].[sp_lkpsgrorg]
  73891.  
  73892. Go
  73893.  
  73894. CREATE   PROCEDURE sp_lkpSGrOrg
  73895.     @Sif_GrOrg Char(6)
  73896. AS
  73897.     SELECT Sifra_OE FROM SGrOrg
  73898.     WHERE Sif_GrOrg = @Sif_GrOrg
  73899.     ORDER BY Sifra_OE
  73900.     RETURN @@ERROR
  73901.  
  73902.  
  73903.  
  73904. Go
  73905. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsgrpat]'))
  73906. drop procedure [dbo].[sp_lkpsgrpat]
  73907.  
  73908. Go
  73909.  
  73910.  
  73911. CREATE    PROCEDURE sp_lkpSGrPat
  73912.     @Sif_GrPat Char(6)
  73913. AS
  73914.     SELECT Sifra_Pat FROM SGrPat
  73915.     WHERE Sif_GrPat = @Sif_GrPat
  73916.     ORDER BY Sifra_Pat
  73917.     RETURN @@ERROR
  73918.  
  73919.  
  73920.  
  73921. Go
  73922. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden]'))
  73923. drop procedure [dbo].[sp_lkpsleden]
  73924.  
  73925. Go
  73926.  
  73927.  
  73928. CREATE                          PROCEDURE [dbo].[sp_lkpSleden]
  73929.     @Sifra        VARCHAR(20),
  73930.     @Tabela        VARCHAR(20),
  73931.     @Nacin        VARCHAR(10),
  73932.     @AlfaMoze    char(1) = 'N',
  73933.     @Sifra2        VARCHAR(20)=null,
  73934.     @SlednaSifra    VARCHAR(20) OUTPUT,
  73935.     @SlednoIme    nVARCHAR(70) OUTPUT,
  73936.     @SlednoIme2    nVARCHAR(70) = Null OUTPUT,
  73937.            @Filter        nvarchar(20) = NULL
  73938. AS
  73939.    Declare @Greska Int
  73940.    Declare @IntSifra Int
  73941.    Set @Tabela=Upper(@Tabela)
  73942.    Set @Nacin=Upper(@Nacin)
  73943.     If @AlfaMoze <> 'D' AND len(@Sifra)<10 AND @Tabela <> 'GTIPKUP'  AND @Tabela <> 'GRORG' AND @Tabela <> 'SYSUSERS' AND @Tabela <> 'NIVO' AND @Tabela <> 'BANKSMETKI'  AND @Tabela <> 'GRPIZBOR' AND @Tabela <> 'VIDVOZILA'
  73944.          AND @Tabela <> 'MIKROLOK' AND @Tabela <> 'MAKROLOK' AND @Tabela <> 'AKCIIPROMO' AND @Tabela <> 'KONFSLAGANJE' AND @Tabela <> 'ANAL'
  73945.          and @Tabela <> 'GRPAT' AND @Tabela <> 'VIDDOG' AND @Tabela <> 'TARMODEL' and @Tabela <> 'NGCOURSETYPE' and @Tabela <> 'NGSCHOOLYEAR' 
  73946.                  and @Tabela <> 'NGBILLCODES' and @Tabela <> 'NGFAMILIJA' and @Tabela <> 'FORMULADEF' AND @Tabela<>'GRKUP' AND @Tabela <> 'DBUSERS' AND @Tabela <> 'VELICSKALA'
  73947.          Set @IntSifra = CONVERT(Int, @Sifra)
  73948.     If @Tabela = 'KATART'
  73949.        Begin
  73950.         If @Nacin = 'SLEDEN'
  73951.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt, @SlednoIme2=ImeArt2 
  73952.             FROM KatArt WITH(NOLOCK)
  73953.             WHERE Sifra_Art>@Sifra
  73954.             ORDER BY Sifra_Art ASC
  73955.         Else If @Nacin = 'PRETHODEN'
  73956.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt, @SlednoIme2=ImeArt2 
  73957.             FROM KatArt WITH(NOLOCK)
  73958.             WHERE Sifra_Art<@Sifra
  73959.             ORDER BY Sifra_Art DESC
  73960.         Else If @Nacin = 'TOCEN'
  73961.             SELECT @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt, @SlednoIme2=ImeArt2 
  73962.             FROM KatArt WITH(NOLOCK)
  73963.             WHERE Sifra_Art=@Sifra
  73964.        End
  73965.     Else If @Tabela = 'SYSUSERS'
  73966.        Begin
  73967.         If @Nacin = 'TOCEN'
  73968.             SELECT @SlednaSifra=Name, @SlednoIme=UID
  73969.             FROM SysUsers
  73970.             WHERE Name=@Sifra AND IsSqlRole=1
  73971.        End
  73972.     Else If @Tabela = 'PODGRUPI'
  73973.        Begin
  73974.         If @Nacin = 'SLEDEN'
  73975.             SELECT Top 1 @SlednaSifra=Sifra_Podg, @SlednoIme=Ime_Podg 
  73976.             FROM Podgrupi WITH(NOLOCK)
  73977.             WHERE Sifra_Podg>@Sifra
  73978.             ORDER BY Sifra_Podg ASC
  73979.         Else If @Nacin = 'PRETHODEN'
  73980.             SELECT Top 1 @SlednaSifra=Sifra_Podg, @SlednoIme=Ime_Podg 
  73981.             FROM Podgrupi WITH(NOLOCK)
  73982.             WHERE Sifra_Podg<@Sifra
  73983.             ORDER BY Sifra_Podg DESC
  73984.         Else If @Nacin = 'TOCEN'
  73985.             SELECT @SlednaSifra=Sifra_Podg, @SlednoIme=Ime_Podg 
  73986.             FROM Podgrupi WITH(NOLOCK)
  73987.             WHERE Sifra_Podg=@Sifra
  73988.        End
  73989.     Else If @Tabela = 'GRUPI'
  73990.        Begin
  73991.         If @Nacin = 'SLEDEN'
  73992.             SELECT Top 1 @SlednaSifra=Sifra_Gr, @SlednoIme=Ime_Gr 
  73993.             FROM Grupi WITH(NOLOCK)
  73994.             WHERE Sifra_Gr>@Sifra
  73995.             ORDER BY Sifra_Gr ASC
  73996.         Else If @Nacin = 'PRETHODEN'
  73997.             SELECT Top 1 @SlednaSifra=Sifra_Gr, @SlednoIme=Ime_Gr 
  73998.             FROM Grupi WITH(NOLOCK)
  73999.             WHERE Sifra_Gr<@Sifra
  74000.             ORDER BY Sifra_Gr DESC
  74001.         Else If @Nacin = 'TOCEN'
  74002.             SELECT @SlednaSifra=Sifra_Gr, @SlednoIme=Ime_Gr 
  74003.             FROM Grupi WITH(NOLOCK)
  74004.             WHERE Sifra_Gr=@Sifra
  74005.        End
  74006.     Else If @Tabela = 'TARIFI'
  74007.        Begin
  74008.         If @Nacin = 'SLEDEN'
  74009.             SELECT Top 1 @SlednaSifra=Sifra_Tar, @SlednoIme=ImeTar 
  74010.             FROM Tarifi WITH(NOLOCK)
  74011.             WHERE Sifra_Tar>@Sifra
  74012.             ORDER BY Sifra_Tar ASC
  74013.         Else If @Nacin = 'PRETHODEN'
  74014.             SELECT Top 1 @SlednaSifra=Sifra_Tar, @SlednoIme=ImeTar 
  74015.             FROM Tarifi WITH(NOLOCK)
  74016.             WHERE Sifra_Tar<@Sifra
  74017.             ORDER BY Sifra_Tar DESC
  74018.         Else If @Nacin = 'TOCEN'
  74019.             SELECT @SlednaSifra=Sifra_Tar, @SlednoIme=ImeTar 
  74020.             FROM Tarifi WITH(NOLOCK)
  74021.             WHERE Sifra_Tar=@Sifra
  74022.        End
  74023.     Else If @Tabela = 'KOMINT'
  74024.        Begin        
  74025.         If @Nacin = 'SLEDEN'
  74026.             SELECT Top 1 @SlednaSifra=Sifra_Kup, @SlednoIme=RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25))+ ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))
  74027.             FROM Komint WITH(NOLOCK)
  74028.             WHERE Sifra_Kup>@Sifra
  74029.             ORDER BY Sifra_Kup ASC
  74030.         Else If @Nacin = 'PRETHODEN'
  74031.             SELECT Top 1 @SlednaSifra=Sifra_Kup, @SlednoIme=RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25)) + ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))
  74032.             FROM Komint WITH(NOLOCK)
  74033.             WHERE Sifra_Kup<@Sifra
  74034.             ORDER BY Sifra_Kup DESC
  74035.         Else If @Nacin = 'TOCEN'
  74036.             SELECT @SlednaSifra=Sifra_Kup, @SlednoIme=RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25)) + ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))
  74037.             FROM Komint WITH(NOLOCK)
  74038.             WHERE Sifra_Kup=@Sifra
  74039.          End
  74040.     Else If @Tabela = 'ORGED'
  74041.        Begin        
  74042.         If @Nacin = 'SLEDEN'
  74043.             SELECT Top 1 @SlednaSifra=Sifra_OE, @SlednoIme=ImeOrg 
  74044.             FROM Orged WITH(NOLOCK)
  74045.             WHERE Sifra_OE>@IntSifra
  74046.             ORDER BY Sifra_OE ASC
  74047.         Else If @Nacin = 'PRETHODEN'
  74048.             SELECT Top 1 @SlednaSifra=Sifra_OE, @SlednoIme=ImeOrg
  74049.             FROM Orged WITH(NOLOCK)
  74050.             WHERE Sifra_OE<@IntSifra
  74051.             ORDER BY Sifra_OE DESC
  74052.         Else If @Nacin = 'TOCEN'
  74053.             SELECT @SlednaSifra=Sifra_OE, @SlednoIme=ImeOrg
  74054.             FROM Orged WITH(NOLOCK)
  74055.             WHERE Sifra_OE=@IntSifra
  74056.        End
  74057.        Else If @Tabela = 'TIPDOK'
  74058.        Begin        
  74059.         If @Nacin = 'SLEDEN'
  74060.             SELECT Top 1 @SlednaSifra=Sifra_Dok, @SlednoIme=ImeDok 
  74061.             FROM TipDok WITH(NOLOCK)
  74062.             WHERE Sifra_Dok>@IntSifra
  74063.             ORDER BY Sifra_Dok ASC
  74064.         Else If @Nacin = 'PRETHODEN'
  74065.             SELECT Top 1 @SlednaSifra=Sifra_Dok, @SlednoIme=ImeDok
  74066.             FROM TipDok WITH(NOLOCK)
  74067.             WHERE Sifra_Dok<@IntSifra
  74068.             ORDER BY Sifra_Dok DESC
  74069.         Else If @Nacin = 'TOCEN'
  74070.             SELECT @SlednaSifra=Sifra_Dok, @SlednoIme=ImeDok
  74071.             FROM TipDok WITH(NOLOCK)
  74072.             WHERE Sifra_Dok=@IntSifra
  74073.        End
  74074.        Else If @Tabela = 'TIPNARAC'
  74075.        Begin        
  74076.         If @Nacin = 'SLEDEN'
  74077.             SELECT Top 1 @SlednaSifra=Sifra_Nar, @SlednoIme=ImeNar 
  74078.             FROM TipNarac WITH(NOLOCK)
  74079.             WHERE Sifra_Nar>@IntSifra
  74080.             ORDER BY Sifra_Nar ASC
  74081.         Else If @Nacin = 'PRETHODEN'
  74082.             SELECT Top 1 @SlednaSifra=Sifra_Nar, @SlednoIme=ImeNar
  74083.             FROM TipNarac WITH(NOLOCK)
  74084.             WHERE Sifra_Nar<@IntSifra
  74085.             ORDER BY Sifra_Nar DESC
  74086.         Else If @Nacin = 'TOCEN'
  74087.             SELECT @SlednaSifra=Sifra_Nar, @SlednoIme=ImeNar
  74088.             FROM TipNarac WITH(NOLOCK)
  74089.             WHERE Sifra_Nar=@IntSifra
  74090.        End
  74091.       Else If @Tabela = 'TIPNAL'
  74092.        Begin        
  74093.         If @Nacin = 'SLEDEN'
  74094.             SELECT Top 1 @SlednaSifra=Sifra_Nal, @SlednoIme=ImeNal 
  74095.             FROM TipNal WITH(NOLOCK)
  74096.             WHERE Sifra_Nal>@IntSifra
  74097.             ORDER BY Sifra_Nal ASC
  74098.         Else If @Nacin = 'PRETHODEN'
  74099.             SELECT Top 1 @SlednaSifra=Sifra_Nal, @SlednoIme=ImeNal
  74100.             FROM TipNal WITH(NOLOCK)
  74101.             WHERE Sifra_Nal<@IntSifra
  74102.             ORDER BY Sifra_Nal DESC
  74103.         Else If @Nacin = 'TOCEN'
  74104.             SELECT @SlednaSifra=Sifra_Nal, @SlednoIme=ImeNal
  74105.             FROM TipNal WITH(NOLOCK)
  74106.             WHERE Sifra_Nal=@IntSifra
  74107.        End
  74108.       Else If @Tabela = 'ANAL'
  74109.        Begin        
  74110.         If @Nacin = 'SLEDEN'
  74111.             SELECT Top 1 @SlednaSifra=Kto_Anal, @SlednoIme=ImeAnal 
  74112.             FROM Anal WITH(NOLOCK)
  74113.             WHERE Kto_Anal>@Sifra
  74114.             ORDER BY Kto_Anal ASC
  74115.         Else If @Nacin = 'PRETHODEN'
  74116.             SELECT Top 1 @SlednaSifra=Kto_Anal, @SlednoIme=ImeAnal 
  74117.             FROM Anal WITH(NOLOCK)
  74118.             WHERE Kto_Anal<@Sifra
  74119.             ORDER BY Kto_Anal DESC
  74120.         Else If @Nacin = 'TOCEN'
  74121.             SELECT @SlednaSifra=Kto_Anal, @SlednoIme=ImeAnal 
  74122.             FROM Anal WITH(NOLOCK)
  74123.             WHERE Kto_Anal=@Sifra
  74124.        End
  74125.       Else If @Tabela = 'KLAS'
  74126.        Begin        
  74127.         If @Nacin = 'SLEDEN'
  74128.             SELECT Top 1 @SlednaSifra=Kto_Klas, @SlednoIme=ImeKlasa
  74129.             FROM Klas WITH(NOLOCK)
  74130.             WHERE Kto_Klas>@Sifra
  74131.             ORDER BY Kto_Klas ASC
  74132.         Else If @Nacin = 'PRETHODEN'
  74133.             SELECT Top 1 @SlednaSifra=Kto_Klas, @SlednoIme=ImeKlasa
  74134.             FROM Klas WITH(NOLOCK)
  74135.             WHERE Kto_Klas<@Sifra
  74136.             ORDER BY Kto_Klas DESC
  74137.         Else If @Nacin = 'TOCEN'
  74138.             SELECT @SlednaSifra=Kto_Klas, @SlednoIme=ImeKlasa
  74139.             FROM Klas WITH(NOLOCK)
  74140.             WHERE Kto_Klas=@Sifra
  74141.        End
  74142.       Else If @Tabela = 'GRANAL'
  74143.        Begin        
  74144.         If @Nacin = 'SLEDEN'
  74145.             SELECT Top 1 @SlednaSifra=Kto_GrAn, @SlednoIme=ImeGrAn 
  74146.             FROM GrAnal WITH(NOLOCK)
  74147.             WHERE Kto_GrAn>@Sifra
  74148.             ORDER BY Kto_GrAn ASC
  74149.         Else If @Nacin = 'PRETHODEN'
  74150.             SELECT Top 1 @SlednaSifra=Kto_GrAn, @SlednoIme=ImeGrAn 
  74151.             FROM GrAnal WITH(NOLOCK)
  74152.             WHERE Kto_GrAn<@Sifra
  74153.             ORDER BY Kto_GrAn DESC
  74154.         Else If @Nacin = 'TOCEN'
  74155.             SELECT @SlednaSifra=Kto_GrAn, @SlednoIme=ImeGrAn 
  74156.             FROM GrAnal WITH(NOLOCK)
  74157.             WHERE Kto_GrAn=@Sifra
  74158.        End
  74159.       Else If @Tabela = 'SINT'
  74160.        Begin        
  74161.         If @Nacin = 'SLEDEN'
  74162.             SELECT Top 1 @SlednaSifra=Kto_Sint, @SlednoIme=ImeSint
  74163.             FROM Sint WITH(NOLOCK)
  74164.             WHERE Kto_Sint>@Sifra
  74165.             ORDER BY Kto_Sint ASC
  74166.         Else If @Nacin = 'PRETHODEN'
  74167.             SELECT Top 1 @SlednaSifra=Kto_Sint, @SlednoIme=ImeSint 
  74168.             FROM Sint WITH(NOLOCK)
  74169.             WHERE Kto_Sint<@Sifra
  74170.             ORDER BY Kto_Sint DESC
  74171.         Else If @Nacin = 'TOCEN'
  74172.             SELECT @SlednaSifra=Kto_Sint, @SlednoIme=ImeSint
  74173.             FROM Sint WITH(NOLOCK)
  74174.             WHERE Kto_Sint=@Sifra
  74175.        End
  74176.       Else If @Tabela = 'GREGION'
  74177.        Begin        
  74178.         If @Nacin = 'SLEDEN'
  74179.             SELECT Top 1 @SlednaSifra=Sifra_Reg, @SlednoIme=ImeRegion
  74180.             FROM GRegion WITH(NOLOCK)
  74181.             WHERE Sifra_Reg>@IntSifra
  74182.             ORDER BY Sifra_Reg ASC
  74183.         Else If @Nacin = 'PRETHODEN'
  74184.             SELECT Top 1 @SlednaSifra=Sifra_Reg, @SlednoIme=ImeRegion
  74185.             FROM GRegion WITH(NOLOCK)
  74186.             WHERE Sifra_Reg<@IntSifra
  74187.             ORDER BY Sifra_Reg DESC
  74188.         Else If @Nacin = 'TOCEN'
  74189.             SELECT @SlednaSifra=Sifra_Reg, @SlednoIme=ImeRegion
  74190.             FROM GRegion WITH(NOLOCK)
  74191.             WHERE Sifra_Reg=@IntSifra
  74192.        End
  74193.       Else If @Tabela = 'GTIPKUP'
  74194.        Begin        
  74195.         If @Nacin = 'SLEDEN'
  74196.             SELECT Top 1 @SlednaSifra=TipKup, @SlednoIme=ImeTipKup
  74197.             FROM gTipKup WITH(NOLOCK)
  74198.             WHERE TipKup>@Sifra
  74199.             ORDER BY TipKup ASC
  74200.         Else If @Nacin = 'PRETHODEN'
  74201.             SELECT Top 1 @SlednaSifra=TipKup, @SlednoIme=ImeTipKup
  74202.             FROM GTipKup WITH(NOLOCK)
  74203.             WHERE TipKup<@Sifra
  74204.             ORDER BY TipKup DESC
  74205.         Else If @Nacin = 'TOCEN'
  74206.             SELECT @SlednaSifra=TipKup, @SlednoIme=ImeTipKup
  74207.             FROM GTipKup WITH(NOLOCK)
  74208.             WHERE TipKup=@Sifra
  74209.        End
  74210.     Else If @Tabela = 'PATNICI'
  74211.        Begin        
  74212.         If @Nacin = 'SLEDEN'
  74213.             SELECT Top 1 @SlednaSifra=Sifra_Pat, @SlednoIme=ImePat
  74214.             FROM Patnici WITH(NOLOCK)
  74215.             WHERE Sifra_Pat>@Sifra
  74216.             ORDER BY Sifra_Pat ASC
  74217.         Else If @Nacin = 'PRETHODEN'
  74218.             SELECT Top 1 @SlednaSifra=Sifra_Pat, @SlednoIme=ImePat
  74219.             FROM Patnici WITH(NOLOCK)
  74220.             WHERE Sifra_Pat<@Sifra
  74221.             ORDER BY Sifra_Pat DESC
  74222.         Else If @Nacin = 'TOCEN'
  74223.             SELECT @SlednaSifra=Sifra_Pat, @SlednoIme=ImePat
  74224.             FROM Patnici WITH(NOLOCK)
  74225.             WHERE Sifra_Pat=@Sifra
  74226.        End
  74227.             Else If @Tabela = 'MARKETI'
  74228.        Begin
  74229.         If @Nacin = 'SLEDEN'
  74230.             SELECT Top 1 @SlednaSifra=Sifra_Mark, @SlednoIme=ImeMark 
  74231.             FROM Marketi WITH(NOLOCK)
  74232.             WHERE Sifra_Mark>@IntSifra
  74233.             ORDER BY Sifra_Mark ASC
  74234.         Else If @Nacin = 'PRETHODEN'
  74235.             SELECT Top 1 @SlednaSifra=Sifra_Mark, @SlednoIme=ImeMark
  74236.             FROM Marketi WITH(NOLOCK)
  74237.             WHERE Sifra_Mark<@IntSifra
  74238.             ORDER BY Sifra_Mark DESC
  74239.         Else If @Nacin = 'TOCEN'
  74240.             SELECT @SlednaSifra=Sifra_Mark, @SlednoIme=ImeMark
  74241.             FROM Marketi WITH(NOLOCK)
  74242.             WHERE Sifra_Mark=@IntSifra
  74243.        End
  74244.     Else If @Tabela = 'DRGPODEL'
  74245.        Begin
  74246.         If @Nacin = 'SLEDEN'
  74247.             SELECT Top 1 @SlednaSifra=Sifra_Drg, @SlednoIme=Ime 
  74248.             FROM DrgPodel WITH(NOLOCK)
  74249.             WHERE Sifra_Drg>@Sifra
  74250.             ORDER BY Sifra_Drg ASC
  74251.         Else If @Nacin = 'PRETHODEN'
  74252.             SELECT Top 1 @SlednaSifra=Sifra_Drg, @SlednoIme=Ime 
  74253.             FROM DrgPodel WITH(NOLOCK)
  74254.             WHERE Sifra_Drg<@Sifra
  74255.             ORDER BY Sifra_Drg DESC
  74256.         Else If @Nacin = 'TOCEN'
  74257.             SELECT @SlednaSifra=Sifra_Drg, @SlednoIme=Ime 
  74258.             FROM DrgPodel WITH(NOLOCK)
  74259.             WHERE Sifra_Drg=@Sifra
  74260.        End
  74261.     Else If @Tabela = 'REKAPITULAR'
  74262.        Begin
  74263.         If @Nacin = 'SLEDEN'
  74264.             SELECT Top 1 @SlednaSifra=Broj_rek, @SlednoIme=''
  74265.             FROM Rekapitular WITH(NOLOCK)
  74266.             WHERE Broj_rek>@Sifra
  74267.             ORDER BY Broj_rek  ASC
  74268.         Else If @Nacin = 'PRETHODEN'
  74269.             SELECT Top 1 @SlednaSifra=Broj_rek, @SlednoIme=''
  74270.             FROM Rekapitular WITH(NOLOCK)
  74271.             WHERE Broj_rek<@Sifra
  74272.             ORDER BY Broj_rek DESC
  74273.         Else If @Nacin = 'TOCEN'
  74274.             SELECT @SlednaSifra=Broj_rek, @SlednoIme=''
  74275.             FROM Rekapitular WITH(NOLOCK)
  74276.             WHERE Broj_rek=@Sifra
  74277.        End
  74278.     Else If @Tabela = 'GRORG'
  74279.        Begin        
  74280.         If @Nacin = 'SLEDEN'
  74281.             SELECT Top 1 @SlednaSifra=Sif_grOrg, @SlednoIme=Ime_GrOrg
  74282.             FROM GrOrg WITH(NOLOCK)
  74283.             WHERE Sif_grOrg >@Sifra
  74284.             ORDER BY Sif_grOrg ASC
  74285.         Else If @Nacin = 'PRETHODEN'
  74286.             SELECT Top 1 @SlednaSifra=Sif_grOrg, @SlednoIme=Ime_GrOrg
  74287.             FROM  GrOrg WITH(NOLOCK)
  74288.             WHERE Sif_grOrg<@Sifra
  74289.             ORDER BY Sif_grOrg DESC
  74290.         Else If @Nacin = 'TOCEN'
  74291.             SELECT @SlednaSifra=Sif_grOrg, @SlednoIme=Ime_GrOrg
  74292.             FROM GrOrg WITH(NOLOCK)
  74293.             WHERE Sif_grOrg=@Sifra
  74294.                  End
  74295.     Else If @Tabela = 'DRGPODEL1'
  74296.        Begin
  74297.         If @Nacin = 'SLEDEN'
  74298.             SELECT Top 1 @SlednaSifra=Sifra_Drg1, @SlednoIme=Ime_Drg1
  74299.             FROM DrgPodel1 WITH(NOLOCK)
  74300.             WHERE Sifra_Drg1>@Sifra
  74301.             ORDER BY Sifra_Drg1 ASC
  74302.         Else If @Nacin = 'PRETHODEN'
  74303.             SELECT Top 1 @SlednaSifra=Sifra_Drg1, @SlednoIme=Ime_Drg1
  74304.             FROM DrgPodel1 WITH(NOLOCK)
  74305.             WHERE Sifra_Drg1<@Sifra
  74306.             ORDER BY Sifra_Drg1 DESC
  74307.         Else If @Nacin = 'TOCEN'
  74308.             SELECT @SlednaSifra=Sifra_Drg1, @SlednoIme=Ime_Drg1
  74309.             FROM DrgPodel1 WITH(NOLOCK)
  74310.             WHERE Sifra_Drg1=@Sifra
  74311.        End
  74312.     Else If @Tabela = 'DRUGO1'
  74313.        Begin
  74314.         If @Nacin = 'SLEDEN'
  74315.             SELECT Top 1 @SlednaSifra=Sifra_1, @SlednoIme=Ime_1
  74316.             FROM Drugo1 WITH(NOLOCK)
  74317.             WHERE Sifra_1>@IntSifra
  74318.             ORDER BY Sifra_1 ASC
  74319.         Else If @Nacin = 'PRETHODEN'            SELECT Top 1 @SlednaSifra=Sifra_1, @SlednoIme=Ime_1
  74320.             FROM Drugo1 WITH(NOLOCK)
  74321.             WHERE Sifra_1<@IntSifra
  74322.             ORDER BY Sifra_1 DESC
  74323.         Else If @Nacin = 'TOCEN'
  74324.             SELECT @SlednaSifra=Sifra_1, @SlednoIme=Ime_1
  74325.             FROM Drugo1 WITH(NOLOCK)
  74326.             WHERE Sifra_1=@IntSifra
  74327.        End
  74328.     Else If @Tabela = 'DRUGO2'
  74329.        Begin
  74330.         If @Nacin = 'SLEDEN'
  74331.             SELECT Top 1 @SlednaSifra=Sifra_2, @SlednoIme=Ime_2
  74332.             FROM Drugo2 WITH(NOLOCK)
  74333.             WHERE Sifra_2>@IntSifra
  74334.             ORDER BY Sifra_2 ASC
  74335.         Else If @Nacin = 'PRETHODEN'            SELECT Top 1 @SlednaSifra=Sifra_2, @SlednoIme=Ime_2
  74336.             FROM Drugo2 WITH(NOLOCK)
  74337.             WHERE Sifra_2<@IntSifra
  74338.             ORDER BY Sifra_2 DESC
  74339.         Else If @Nacin = 'TOCEN'
  74340.             SELECT @SlednaSifra=Sifra_2, @SlednoIme=Ime_2
  74341.             FROM Drugo2 WITH(NOLOCK)
  74342.             WHERE Sifra_2=@IntSifra
  74343.        End
  74344.     Else If @Tabela = 'DRUGO3'
  74345.        Begin
  74346.         If @Nacin = 'SLEDEN'
  74347.             SELECT Top 1 @SlednaSifra=Sifra_3, @SlednoIme=Ime_3
  74348.             FROM Drugo3 WITH(NOLOCK)
  74349.             WHERE Sifra_3>@IntSifra
  74350.             ORDER BY Sifra_3 ASC
  74351.         Else If @Nacin = 'PRETHODEN'            SELECT Top 1 @SlednaSifra=Sifra_3, @SlednoIme=Ime_3
  74352.             FROM Drugo3 WITH(NOLOCK)
  74353.             WHERE Sifra_3<@IntSifra
  74354.             ORDER BY Sifra_3 DESC
  74355.         Else If @Nacin = 'TOCEN'
  74356.             SELECT @SlednaSifra=Sifra_3, @SlednoIme=Ime_3
  74357.             FROM Drugo3 WITH(NOLOCK)
  74358.             WHERE Sifra_3=@IntSifra
  74359.        End
  74360.     Else If @Tabela = 'DRUGO4'
  74361.        Begin
  74362.         If @Nacin = 'SLEDEN'
  74363.             SELECT Top 1 @SlednaSifra=Sifra_4, @SlednoIme=Ime_4
  74364.             FROM Drugo4 WITH(NOLOCK)
  74365.             WHERE Sifra_4>@IntSifra
  74366.             ORDER BY Sifra_4 ASC
  74367.         Else If @Nacin = 'PRETHODEN'            SELECT Top 1 @SlednaSifra=Sifra_4, @SlednoIme=Ime_4
  74368.             FROM Drugo4 WITH(NOLOCK)
  74369.             WHERE Sifra_4<@IntSifra
  74370.             ORDER BY Sifra_4 DESC
  74371.         Else If @Nacin = 'TOCEN'
  74372.             SELECT @SlednaSifra=Sifra_4, @SlednoIme=Ime_4
  74373.             FROM Drugo4 WITH(NOLOCK)
  74374.             WHERE Sifra_4=@IntSifra
  74375.        End
  74376.     Else If @Tabela = 'DRUGO5'
  74377.        Begin
  74378.         If @Nacin = 'SLEDEN'
  74379.             SELECT Top 1 @SlednaSifra=Sifra_5, @SlednoIme=Ime_5
  74380.             FROM Drugo5 WITH(NOLOCK)
  74381.             WHERE Sifra_5>@IntSifra
  74382.             ORDER BY Sifra_5 ASC
  74383.         Else If @Nacin = 'PRETHODEN'            SELECT Top 1 @SlednaSifra=Sifra_5, @SlednoIme=Ime_5
  74384.             FROM Drugo5 WITH(NOLOCK)
  74385.             WHERE Sifra_5<@IntSifra
  74386.             ORDER BY Sifra_5 DESC
  74387.         Else If @Nacin = 'TOCEN'
  74388.             SELECT @SlednaSifra=Sifra_5, @SlednoIme=Ime_5
  74389.             FROM Drugo5 WITH(NOLOCK)
  74390.             WHERE Sifra_5=@IntSifra
  74391.        End
  74392.     Else If @Tabela = 'DRUGO6'
  74393.        Begin
  74394.         If @Nacin = 'SLEDEN'
  74395.             SELECT Top 1 @SlednaSifra=Sifra_6, @SlednoIme=Ime_6
  74396.             FROM Drugo6 WITH(NOLOCK)
  74397.             WHERE Sifra_6>@IntSifra
  74398.             ORDER BY Sifra_6 ASC
  74399.         Else If @Nacin = 'PRETHODEN'            SELECT Top 1 @SlednaSifra=Sifra_6, @SlednoIme=Ime_6
  74400.             FROM Drugo6 WITH(NOLOCK)
  74401.             WHERE Sifra_6<@IntSifra
  74402.             ORDER BY Sifra_6 DESC
  74403.         Else If @Nacin = 'TOCEN'
  74404.             SELECT @SlednaSifra=Sifra_6, @SlednoIme=Ime_6
  74405.             FROM Drugo6 WITH(NOLOCK)
  74406.             WHERE Sifra_6=@IntSifra
  74407.        End
  74408.     Else If @Tabela = 'DRUGO7'
  74409.        Begin
  74410.         If @Nacin = 'SLEDEN'
  74411.             SELECT Top 1 @SlednaSifra=Sifra_7, @SlednoIme=Ime_7
  74412.             FROM Drugo7 WITH(NOLOCK)
  74413.             WHERE Sifra_7>@IntSifra
  74414.             ORDER BY Sifra_7 ASC
  74415.         Else If @Nacin = 'PRETHODEN'            SELECT Top 1 @SlednaSifra=Sifra_7, @SlednoIme=Ime_7
  74416.             FROM Drugo7 WITH(NOLOCK)
  74417.             WHERE Sifra_7<@IntSifra
  74418.             ORDER BY Sifra_7 DESC
  74419.         Else If @Nacin = 'TOCEN'
  74420.             SELECT @SlednaSifra=Sifra_7, @SlednoIme=Ime_7
  74421.             FROM Drugo7 WITH(NOLOCK)
  74422.             WHERE Sifra_7=@IntSifra
  74423.        End  
  74424.         Else If @Tabela = 'KDRUGO1'
  74425.        Begin
  74426.         If @Nacin = 'SLEDEN'
  74427.             SELECT Top 1 @SlednaSifra=Sifra_1K, @SlednoIme=Ime_1K
  74428.             FROM KDrugo1 WITH(NOLOCK)
  74429.             WHERE Sifra_1K>@IntSifra
  74430.             ORDER BY Sifra_1K ASC
  74431.         Else If @Nacin = 'PRETHODEN'
  74432.             SELECT Top 1 @SlednaSifra=Sifra_1K, @SlednoIme=Ime_1K
  74433.             FROM KDrugo1 WITH(NOLOCK)
  74434.             WHERE Sifra_1K<@IntSifra
  74435.             ORDER BY Sifra_1K DESC
  74436.         Else If @Nacin = 'TOCEN'
  74437.             SELECT @SlednaSifra=Sifra_1K, @SlednoIme=Ime_1K
  74438.             FROM KDrugo1 WITH(NOLOCK)
  74439.             WHERE Sifra_1K=@IntSifra
  74440.        End
  74441.     Else If @Tabela = 'KDRUGO2'
  74442.        Begin
  74443.         If @Nacin = 'SLEDEN'
  74444.             SELECT Top 1 @SlednaSifra=Sifra_2K, @SlednoIme=Ime_2K
  74445.             FROM KDrugo2 WITH(NOLOCK)
  74446.             WHERE Sifra_2K>@IntSifra
  74447.             ORDER BY Sifra_2K ASC
  74448.         Else If @Nacin = 'PRETHODEN'
  74449.             SELECT Top 1 @SlednaSifra=Sifra_2K, @SlednoIme=Ime_2K
  74450.             FROM KDrugo2 WITH(NOLOCK)
  74451.             WHERE Sifra_2K<@IntSifra
  74452.             ORDER BY Sifra_2K DESC
  74453.         Else If @Nacin = 'TOCEN'
  74454.             SELECT @SlednaSifra=Sifra_2K, @SlednoIme=Ime_2K
  74455.             FROM KDrugo2 WITH(NOLOCK)
  74456.             WHERE Sifra_2K=@IntSifra
  74457.        End
  74458.     Else If @Tabela = 'KDRUGO3'
  74459.        Begin
  74460.         If @Nacin = 'SLEDEN'
  74461.             SELECT Top 1 @SlednaSifra=Sifra_3K, @SlednoIme=Ime_3K
  74462.             FROM KDrugo3 WITH(NOLOCK)
  74463.             WHERE Sifra_3K>@IntSifra
  74464.             ORDER BY Sifra_3K ASC
  74465.         Else If @Nacin = 'PRETHODEN'
  74466.             SELECT Top 1 @SlednaSifra=Sifra_3K, @SlednoIme=Ime_3K
  74467.             FROM KDrugo3 WITH(NOLOCK)
  74468.             WHERE Sifra_3K<@IntSifra
  74469.             ORDER BY Sifra_3K DESC
  74470.         Else If @Nacin = 'TOCEN'
  74471.             SELECT @SlednaSifra=Sifra_3K, @SlednoIme=Ime_3K
  74472.             FROM KDrugo3 WITH(NOLOCK)
  74473.             WHERE Sifra_3K=@IntSifra
  74474.        End
  74475.     Else If @Tabela = 'KDRUGO4'
  74476.        Begin
  74477.         If @Nacin = 'SLEDEN'
  74478.             SELECT Top 1 @SlednaSifra=Sifra_4K, @SlednoIme=Ime_4K
  74479.             FROM KDrugo4 WITH(NOLOCK)
  74480.             WHERE Sifra_4K>@IntSifra
  74481.             ORDER BY Sifra_4K ASC
  74482.         Else If @Nacin = 'PRETHODEN'
  74483.             SELECT Top 1 @SlednaSifra=Sifra_4K, @SlednoIme=Ime_4K
  74484.             FROM KDrugo4 WITH(NOLOCK)
  74485.             WHERE Sifra_4K<@IntSifra
  74486.             ORDER BY Sifra_4K DESC
  74487.         Else If @Nacin = 'TOCEN'
  74488.             SELECT @SlednaSifra=Sifra_4K, @SlednoIme=Ime_4K
  74489.             FROM KDrugo4 WITH(NOLOCK)
  74490.             WHERE Sifra_4K=@IntSifra
  74491.        End
  74492.     Else If @Tabela = 'KDRUGO5'
  74493.        Begin
  74494.         If @Nacin = 'SLEDEN'
  74495.             SELECT Top 1 @SlednaSifra=Sifra_5K, @SlednoIme=Ime_5K
  74496.             FROM KDrugo5 WITH(NOLOCK)
  74497.             WHERE Sifra_5K>@IntSifra
  74498.             ORDER BY Sifra_5K ASC
  74499.         Else If @Nacin = 'PRETHODEN'
  74500.             SELECT Top 1 @SlednaSifra=Sifra_5K, @SlednoIme=Ime_5K
  74501.             FROM KDrugo5 WITH(NOLOCK)
  74502.             WHERE Sifra_5K<@IntSifra
  74503.             ORDER BY Sifra_5K DESC
  74504.         Else If @Nacin = 'TOCEN'
  74505.             SELECT @SlednaSifra=Sifra_5K, @SlednoIme=Ime_5K
  74506.             FROM KDrugo5 WITH(NOLOCK)
  74507.             WHERE Sifra_5K=@IntSifra
  74508.        End
  74509.         Else If @Tabela = 'KDRUGO6'
  74510.        Begin
  74511.         If @Nacin = 'SLEDEN'
  74512.             SELECT Top 1 @SlednaSifra=Sifra_6K, @SlednoIme=Ime_6K
  74513.             FROM KDrugo6 WITH(NOLOCK)
  74514.             WHERE Sifra_6K>@IntSifra
  74515.             ORDER BY Sifra_6K ASC
  74516.         Else If @Nacin = 'PRETHODEN'
  74517.             SELECT Top 1 @SlednaSifra=Sifra_6K, @SlednoIme=Ime_6K
  74518.             FROM KDrugo6 WITH(NOLOCK)
  74519.             WHERE Sifra_6K<@IntSifra
  74520.             ORDER BY Sifra_6K DESC
  74521.         Else If @Nacin = 'TOCEN'
  74522.             SELECT @SlednaSifra=Sifra_6K, @SlednoIme=Ime_6K
  74523.             FROM KDrugo6 WITH(NOLOCK)
  74524.             WHERE Sifra_6K=@IntSifra
  74525.        End
  74526.         Else If @Tabela = 'KDRUGO7'
  74527.        Begin
  74528.         If @Nacin = 'SLEDEN'
  74529.             SELECT Top 1 @SlednaSifra=Sifra_7K, @SlednoIme=Ime_7K
  74530.             FROM KDrugo7 WITH(NOLOCK)
  74531.             WHERE Sifra_7K>@IntSifra
  74532.             ORDER BY Sifra_7K ASC
  74533.         Else If @Nacin = 'PRETHODEN'
  74534.             SELECT Top 1 @SlednaSifra=Sifra_7K, @SlednoIme=Ime_7K
  74535.             FROM KDrugo7 WITH(NOLOCK)
  74536.             WHERE Sifra_7K<@IntSifra
  74537.             ORDER BY Sifra_7K DESC
  74538.         Else If @Nacin = 'TOCEN'
  74539.             SELECT @SlednaSifra=Sifra_7K, @SlednoIme=Ime_7K
  74540.             FROM KDrugo7 WITH(NOLOCK)
  74541.             WHERE Sifra_7K=@IntSifra
  74542.        End    
  74543.     Else If @Tabela = 'KNIGATRG'
  74544.        Begin
  74545.         If @Nacin = 'SLEDEN'
  74546.             SELECT Top 1 @SlednaSifra=InterenBr, @SlednoIme=Broj
  74547.             FROM KnigaTrg WITH(NOLOCK)
  74548.             WHERE InterenBr > @Sifra
  74549.             ORDER BY InterenBr  ASC
  74550.         Else If @Nacin = 'PRETHODEN'
  74551.             SELECT Top 1 @SlednaSifra=InterenBr, @SlednoIme=Broj
  74552.             FROM  KnigaTrg WITH(NOLOCK)
  74553.             WHERE InterenBr < @Sifra
  74554.             ORDER BY InterenBr DESC
  74555.         Else If @Nacin = 'TOCEN'
  74556.             SELECT @SlednaSifra=InterenBr, @SlednoIme=Broj
  74557.             FROM KnigaTrg WITH(NOLOCK)
  74558.             WHERE  InterenBr=@Sifra
  74559.        End
  74560.     Else If @Tabela = 'KRSLISTA'
  74561.        Begin        
  74562.         If @Nacin = 'SLEDEN'
  74563.             SELECT Top 1 @SlednaSifra=SImeVal, @SlednoIme=ImeVal 
  74564.             FROM KrsLista WITH(NOLOCK)
  74565.             WHERE SImeVal>@Sifra
  74566.             ORDER BY SImeVal ASC
  74567.         Else If @Nacin = 'PRETHODEN'
  74568.             SELECT Top 1 @SlednaSifra=SImeVal, @SlednoIme=ImeVal 
  74569.             FROM KrsLista WITH(NOLOCK)
  74570.             WHERE SImeVal<@Sifra
  74571.             ORDER BY SImeVal DESC
  74572.         Else If @Nacin = 'TOCEN'
  74573.             SELECT @SlednaSifra=SImeVal, @SlednoIme=ImeVal 
  74574.             FROM KrsLista WITH(NOLOCK)
  74575.             WHERE SImeVal=@Sifra
  74576.       End
  74577.     Else If @Tabela = 'CBROEVI'
  74578.        Begin        
  74579.         If @Nacin = 'SLEDEN'
  74580.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  74581.             FROM CBroevi
  74582.             WHERE CarBroj>@Sifra
  74583.             ORDER BY CarBroj ASC
  74584.         Else If @Nacin = 'PRETHODEN'
  74585.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  74586.             FROM CBroevi
  74587.             WHERE CarBroj<@Sifra
  74588.             ORDER BY CarBroj DESC
  74589.         Else If @Nacin = 'TOCEN'
  74590.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime
  74591.             FROM CBroevi
  74592.             WHERE CarBroj=@Sifra
  74593.         end
  74594.     Else If @Tabela = 'GRAD'
  74595.        Begin        
  74596.         If @Nacin = 'SLEDEN'
  74597.             SELECT Top 1 @SlednaSifra=Sifra_Grad, @SlednoIme=ImeGrad 
  74598.             FROM Grad WITH(NOLOCK)
  74599.             WHERE Sifra_Grad>@Sifra
  74600.             ORDER BY Sifra_Grad ASC
  74601.         Else If @Nacin = 'PRETHODEN'
  74602.             SELECT Top 1 @SlednaSifra=Sifra_Grad, @SlednoIme=ImeGrad 
  74603.             FROM Grad WITH(NOLOCK)
  74604.             WHERE Sifra_Grad<@Sifra
  74605.             ORDER BY Sifra_Grad DESC
  74606.         Else If @Nacin = 'TOCEN'
  74607.             SELECT Top 1 @SlednaSifra=Sifra_Grad, @SlednoIme=ImeGrad 
  74608.             FROM Grad WITH(NOLOCK)
  74609.             WHERE Sifra_Grad=@Sifra
  74610.           End      
  74611.     Else If @Tabela = 'NIVO'
  74612.        Begin        
  74613.         If @Nacin = 'SLEDEN'
  74614.             SELECT Top 1 @SlednaSifra=Sifra_Nivo, @SlednoIme=ImeNivo
  74615.             FROM Nivo WITH(NOLOCK)
  74616.             WHERE Sifra_Nivo >@Sifra
  74617.             ORDER BY Sifra_Nivo ASC
  74618.         Else If @Nacin = 'PRETHODEN'
  74619.             SELECT Top 1 @SlednaSifra=Sifra_Nivo, @SlednoIme=ImeNivo
  74620.             FROM  Nivo WITH(NOLOCK)
  74621.             WHERE Sifra_Nivo<@Sifra
  74622.             ORDER BY Sifra_Nivo DESC
  74623.         Else If @Nacin = 'TOCEN'
  74624.             SELECT @SlednaSifra=Sifra_Nivo, @SlednoIme=ImeNivo
  74625.             FROM Nivo WITH(NOLOCK)
  74626.             WHERE Sifra_Nivo=@Sifra
  74627.                  End
  74628.     Else If @Tabela = 'GrNar'
  74629.        Begin        
  74630.         If @Nacin = 'SLEDEN'
  74631.             SELECT Top 1 @SlednaSifra=Sifra_GrNar, @SlednoIme=ImeGrNar
  74632.             FROM GrNar WITH(NOLOCK)
  74633.             WHERE Sifra_GrNar >@Sifra
  74634.             ORDER BY Sifra_GrNar ASC
  74635.         Else If @Nacin = 'PRETHODEN'
  74636.             SELECT Top 1 @SlednaSifra=Sifra_GrNar, @SlednoIme=ImeGrNar
  74637.             FROM  GrNar WITH(NOLOCK)
  74638.             WHERE Sifra_GrNar<@Sifra
  74639.             ORDER BY Sifra_GrNar DESC
  74640.         Else If @Nacin = 'TOCEN'
  74641.             SELECT @SlednaSifra=Sifra_GrNar, @SlednoIme=ImeGrNar
  74642.             FROM GrNar WITH(NOLOCK)
  74643.             WHERE Sifra_GrNar=@Sifra
  74644.                  End
  74645.     Else If @Tabela = 'BANKI'
  74646.        Begin        
  74647.         If @Nacin = 'SLEDEN'
  74648.             SELECT Top 1 @SlednaSifra=Sifra_Ban, @SlednoIme=ImeBanka
  74649.             FROM Banki WITH(NOLOCK)
  74650.             WHERE Sifra_Ban >@Sifra
  74651.             ORDER BY Sifra_Ban ASC
  74652.         Else If @Nacin = 'PRETHODEN'
  74653.             SELECT Top 1 @SlednaSifra=Sifra_Ban, @SlednoIme=ImeBanka
  74654.             FROM  Banki WITH(NOLOCK)
  74655.             WHERE Sifra_Ban<@Sifra
  74656.             ORDER BY Sifra_Ban DESC
  74657.         Else If @Nacin = 'TOCEN'
  74658.             SELECT @SlednaSifra=Sifra_Ban, @SlednoIme=ImeBanka
  74659.             FROM Banki WITH(NOLOCK)
  74660.             WHERE Sifra_Ban=@Sifra
  74661.      End
  74662.     Else If @Tabela = 'PRODMEST'
  74663.        Begin        
  74664.         If @Nacin = 'SLEDEN'
  74665.             SELECT Top 1 @SlednaSifra=Sifra_Mest, @SlednoIme=Opis
  74666.             FROM ProdMest WITH(NOLOCK)
  74667.             WHERE Sifra_Mest >@Sifra
  74668.             ORDER BY Sifra_Mest ASC
  74669.         Else If @Nacin = 'PRETHODEN'
  74670.             SELECT Top 1 @SlednaSifra=Sifra_Mest, @SlednoIme=Opis
  74671.             FROM  ProdMest WITH(NOLOCK)
  74672.             WHERE Sifra_Mest<@Sifra
  74673.             ORDER BY Sifra_Mest DESC
  74674.         Else If @Nacin = 'TOCEN'
  74675.             SELECT @SlednaSifra=Sifra_Mest, @SlednoIme=Opis
  74676.             FROM ProdMest WITH(NOLOCK)
  74677.             WHERE Sifra_Mest=@Sifra
  74678.                  End
  74679.        Else If @Tabela = 'FITABELA'
  74680.        Begin        
  74681.         If @Nacin = 'SLEDEN'
  74682.             SELECT Top 1 @SlednaSifra=FiID, @SlednoIme=Ime
  74683.             FROM FiTabela WITH(NOLOCK)
  74684.             WHERE FiID>@IntSifra
  74685.             ORDER BY FiID ASC
  74686.         Else If @Nacin = 'PRETHODEN'
  74687.             SELECT Top 1 @SlednaSifra=FiID, @SlednoIme=Ime
  74688.             FROM FiTabela WITH(NOLOCK)
  74689.             WHERE FiID<@IntSifra
  74690.             ORDER BY FiID DESC
  74691.         Else If @Nacin = 'TOCEN'
  74692.             SELECT @SlednaSifra=FiID, @SlednoIme=Ime
  74693.             FROM FiTabela WITH(NOLOCK)
  74694.             WHERE FiID=@IntSifra
  74695.        End
  74696.        Else If @Tabela = 'KARTKOR'
  74697.     Begin        
  74698.         If @Nacin = 'SLEDEN'
  74699.         Begin
  74700.             IF @Filter IS NULL
  74701.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  74702.                 FROM KartKor WITH(NOLOCK)
  74703.                 WHERE Sifra_Kor>@Sifra
  74704.                 ORDER BY Sifra_Kor ASC
  74705.             ELSE
  74706.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  74707.                 FROM KartKor WITH(NOLOCK)
  74708.                 WHERE Sifra_Kor>@Sifra AND Sifra_Kup=@Filter
  74709.                 ORDER BY Sifra_Kor ASC
  74710.         End
  74711.         Else If @Nacin = 'PRETHODEN'
  74712.         Begin
  74713.             IF @Filter IS NULL
  74714.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  74715.                 FROM KartKor WITH(NOLOCK)
  74716.                 WHERE Sifra_Kor<@Sifra
  74717.                 ORDER BY Sifra_Kor DESC
  74718.             ELSE
  74719.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  74720.                 FROM KartKor WITH(NOLOCK)
  74721.                 WHERE Sifra_Kor<@Sifra AND Sifra_Kup=@Filter
  74722.                 ORDER BY Sifra_Kor DESC
  74723.         End
  74724.         Else If @Nacin = 'TOCEN'
  74725.             SELECT @SlednaSifra=Sifra_Kor, @SlednoIme=Imekor
  74726.             FROM KartKor WITH(NOLOCK)
  74727.             WHERE Sifra_Kor=@Sifra
  74728.     End
  74729.        Else If @Tabela = 'TIPPERCENOVNIK'
  74730.        Begin        
  74731.         If @Nacin = 'SLEDEN'
  74732.             SELECT Top 1 @SlednaSifra=Sifra_TipC, @SlednoIme=ImeTipC
  74733.             FROM TipPerCenovnik WITH(NOLOCK)
  74734.             WHERE Sifra_TipC>@IntSifra
  74735.             ORDER BY Sifra_TipC ASC
  74736.         Else If @Nacin = 'PRETHODEN'
  74737.             SELECT Top 1 @SlednaSifra=Sifra_TipC, @SlednoIme=ImeTipC
  74738.             FROM TipPerCenovnik WITH(NOLOCK)
  74739.             WHERE Sifra_TipC<@IntSifra
  74740.             ORDER BY Sifra_TipC DESC
  74741.         Else If @Nacin = 'TOCEN'
  74742.             SELECT @SlednaSifra=Sifra_TipC, @SlednoIme=ImeTipC
  74743.             FROM TipPerCenovnik WITH(NOLOCK)
  74744.             WHERE Sifra_TipC=@IntSifra
  74745.        End
  74746.        Else If @Tabela = 'BANKSMETKI'
  74747.        Begin        
  74748.         If @Nacin = 'SLEDEN'
  74749.             SELECT Top 1 @SlednaSifra=KojaSmetka, @SlednoIme=Banka
  74750.             FROM BankSmetki WITH(NOLOCK)
  74751.             WHERE KojaSmetka>@Sifra
  74752.             ORDER BY KojaSmetka ASC
  74753.         Else If @Nacin = 'PRETHODEN'
  74754.             SELECT Top 1 @SlednaSifra=KojaSmetka, @SlednoIme=Banka
  74755.             FROM BankSmetki WITH(NOLOCK)
  74756.             WHERE KojaSmetka<@Sifra
  74757.             ORDER BY KojaSmetka DESC
  74758.         Else If @Nacin = 'TOCEN'
  74759.             SELECT @SlednaSifra=KojaSmetka, @SlednoIme=Banka
  74760.             FROM BankSmetki WITH(NOLOCK)
  74761.             WHERE KojaSmetka=@Sifra
  74762.        End
  74763.        Else If @Tabela = 'UCESDENOVI'
  74764.        Begin        
  74765.         If @Nacin = 'SLEDEN'
  74766.             SELECT Top 1 @SlednaSifra=Denovi, @SlednoIme=Uces 
  74767.             FROM UcesDenovi WITH(NOLOCK)
  74768.             WHERE Denovi>@IntSifra
  74769.             ORDER BY Denovi ASC
  74770.         Else If @Nacin = 'PRETHODEN'
  74771.             SELECT Top 1 @SlednaSifra=Denovi, @SlednoIme=Uces
  74772.             FROM UcesDenovi WITH(NOLOCK)
  74773.             WHERE Denovi<@IntSifra
  74774.             ORDER BY Denovi DESC
  74775.         Else If @Nacin = 'TOCEN'
  74776.             SELECT @SlednaSifra=Denovi, @SlednoIme=Uces
  74777.             FROM UcesDenovi WITH(NOLOCK)
  74778.             WHERE Denovi=@IntSifra
  74779.        End
  74780.        Else If @Tabela = 'DNEVNIK'
  74781.        Begin        
  74782.         If @Nacin = 'SLEDEN'
  74783.             SELECT Top 1 @SlednaSifra=IdDnevnik, @SlednoIme=Sifra_Kup 
  74784.             FROM Dnevnik WITH(NOLOCK)
  74785.             WHERE IdDnevnik>@IntSifra
  74786.             ORDER BY IdDnevnik ASC
  74787.         Else If @Nacin = 'PRETHODEN'
  74788.             SELECT Top 1 @SlednaSifra=IdDnevnik, @SlednoIme=Sifra_Kup
  74789.             FROM Dnevnik WITH(NOLOCK)
  74790.             WHERE IdDnevnik<@IntSifra
  74791.             ORDER BY IdDnevnik DESC
  74792.         Else If @Nacin = 'TOCEN'
  74793.             SELECT @SlednaSifra=IdDnevnik, @SlednoIme=Sifra_Kup
  74794.             FROM Dnevnik WITH(NOLOCK)
  74795.             WHERE IdDnevnik=@IntSifra
  74796.        End
  74797.     Else If @Tabela = 'CBROEVI'
  74798.        Begin
  74799.         If @Nacin = 'SLEDEN'
  74800.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime
  74801.             FROM CBroevi WITH(NOLOCK)
  74802.             WHERE CarBroj>@Sifra
  74803.             ORDER BY CarBroj ASC
  74804.         Else If @Nacin = 'PRETHODEN'
  74805.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime
  74806.             FROM CBroevi WITH(NOLOCK)
  74807.             WHERE CarBroj<@Sifra
  74808.             ORDER BY CarBroj DESC
  74809.         Else If @Nacin = 'TOCEN'
  74810.             SELECT @SlednaSifra=CarBroj, @SlednoIme=Ime
  74811.             FROM CBroevi WITH(NOLOCK)
  74812.             WHERE CarBroj=@Sifra
  74813.        End
  74814.     Else If @Tabela = 'KATAMB'
  74815.        Begin
  74816.         If @Nacin = 'SLEDEN'
  74817.             SELECT Top 1 @SlednaSifra=Sifra_Amb, @SlednoIme=ImeAmb
  74818.             FROM KatAmb WITH(NOLOCK)
  74819.             WHERE Sifra_Amb>@Sifra
  74820.             ORDER BY Sifra_Amb ASC
  74821.         Else If @Nacin = 'PRETHODEN'
  74822.             SELECT Top 1 @SlednaSifra=Sifra_Amb, @SlednoIme=ImeAmb
  74823.             FROM KatAmb WITH(NOLOCK)
  74824.             WHERE Sifra_Amb<@Sifra
  74825.             ORDER BY Sifra_Amb DESC
  74826.         Else If @Nacin = 'TOCEN'
  74827.             SELECT @SlednaSifra=Sifra_Amb, @SlednoIme=ImeAmb
  74828.             FROM KatAmb WITH(NOLOCK)
  74829.             WHERE Sifra_Amb=@Sifra
  74830.        End
  74831.     Else If @Tabela = 'KATGAMB'
  74832.        Begin
  74833.         If @Nacin = 'SLEDEN'
  74834.             SELECT Top 1 @SlednaSifra=Sifra_GAmb, @SlednoIme=ImeGAmb
  74835.             FROM KatGAmb WITH(NOLOCK)
  74836.             WHERE Sifra_GAmb>@Sifra
  74837.             ORDER BY Sifra_GAmb ASC
  74838.         Else If @Nacin = 'PRETHODEN'
  74839.             SELECT Top 1 @SlednaSifra=Sifra_GAmb, @SlednoIme=ImeGAmb
  74840.             FROM KatGAmb WITH(NOLOCK)
  74841.             WHERE Sifra_GAmb<@Sifra
  74842.             ORDER BY Sifra_GAmb DESC
  74843.         Else If @Nacin = 'TOCEN'
  74844.             SELECT @SlednaSifra=Sifra_GAmb, @SlednoIme=ImeGAmb
  74845.             FROM KatGAmb WITH(NOLOCK)
  74846.             WHERE Sifra_GAmb=@Sifra
  74847.        End
  74848.     Else If @Tabela = 'LOKACIJA'
  74849.        Begin
  74850.         If @Nacin = 'SLEDEN'
  74851.             SELECT Top 1 @SlednaSifra=Sifra_Lok, @SlednoIme=ImeLok
  74852.             FROM Lokacija WITH(NOLOCK)
  74853.             WHERE Sifra_Lok>@Sifra
  74854.             ORDER BY Sifra_Lok ASC
  74855.         Else If @Nacin = 'PRETHODEN'
  74856.             SELECT Top 1 @SlednaSifra=Sifra_Lok, @SlednoIme=ImeLok
  74857.             FROM Lokacija WITH(NOLOCK)
  74858.             WHERE Sifra_Lok<@Sifra
  74859.             ORDER BY Sifra_Lok DESC
  74860.         Else If @Nacin = 'TOCEN'
  74861.             SELECT @SlednaSifra=Sifra_Lok, @SlednoIme=ImeLok
  74862.             FROM Lokacija WITH(NOLOCK)
  74863.             WHERE Sifra_Lok=@Sifra
  74864.        End
  74865.     Else If @Tabela = 'AMORGRP'
  74866.        Begin
  74867.         If @Nacin = 'SLEDEN'
  74868.             SELECT Top 1 @SlednaSifra=Sifra_Amor, @SlednoIme=rtrim(Ime)+' '+cast(stapka as varchar(8))+'%'
  74869.             FROM AmorGrp WITH(NOLOCK)
  74870.             WHERE Sifra_Amor>@Sifra
  74871.             ORDER BY Sifra_Amor ASC
  74872.         Else If @Nacin = 'PRETHODEN'
  74873.             SELECT Top 1 @SlednaSifra=Sifra_Amor, @SlednoIme=rtrim(Ime)+' '+cast(stapka as varchar(8))+'%'
  74874.             FROM AmorGrp WITH(NOLOCK)
  74875.             WHERE Sifra_Amor<@Sifra
  74876.             ORDER BY Sifra_Amor DESC
  74877.         Else If @Nacin = 'TOCEN'
  74878.             SELECT @SlednaSifra=Sifra_Amor, @SlednoIme=rtrim(Ime)+' '+cast(stapka as varchar(8))+'%'
  74879.             FROM AmorGrp WITH(NOLOCK)
  74880.             WHERE Sifra_Amor=@Sifra
  74881.        End
  74882.     Else If @Tabela = 'OSNSRED'
  74883.        Begin
  74884.         If @Nacin = 'SLEDEN'
  74885.             SELECT Top 1 @SlednaSifra=Inv_Broj, @SlednoIme=Ime
  74886.             FROM OsnSred WITH(NOLOCK)
  74887.             WHERE Inv_Broj>@Sifra
  74888.             ORDER BY Inv_Broj ASC
  74889.         Else If @Nacin = 'PRETHODEN'
  74890.             SELECT Top 1 @SlednaSifra=Inv_Broj, @SlednoIme=Ime
  74891.             FROM OsnSred WITH(NOLOCK)
  74892.             WHERE Inv_Broj<@Sifra
  74893.             ORDER BY Inv_Broj DESC
  74894.         Else If @Nacin = 'TOCEN'
  74895.             SELECT @SlednaSifra=Inv_Broj, @SlednoIme=Ime
  74896.             FROM OsnSred WITH(NOLOCK)
  74897.             WHERE Inv_Broj=@Sifra
  74898.        End
  74899.     Else If @Tabela = 'MAKROLOK'
  74900.        Begin
  74901.         If @Nacin = 'SLEDEN'
  74902.             SELECT Top 1 @SlednaSifra=Sifra_MakLok, @SlednoIme=Ime_MakLok
  74903.             FROM MakroLok WITH(NOLOCK)
  74904.             WHERE Sifra_MakLok>@Sifra
  74905.             ORDER BY Sifra_MakLok ASC
  74906.         Else If @Nacin = 'PRETHODEN'
  74907.             SELECT Top 1 @SlednaSifra=Sifra_MakLok, @SlednoIme=Ime_MakLok
  74908.             FROM MakroLok WITH(NOLOCK)
  74909.             WHERE Sifra_MakLok<@Sifra
  74910.             ORDER BY Sifra_MakLok DESC
  74911.         Else If @Nacin = 'TOCEN'
  74912.             SELECT @SlednaSifra=Sifra_MakLok, @SlednoIme=Ime_MakLok
  74913.             FROM MakroLok WITH(NOLOCK)
  74914.             WHERE Sifra_MakLok=@Sifra
  74915.        End
  74916.     Else If @Tabela = 'MIKROLOK'
  74917.        Begin
  74918.         If @Nacin = 'SLEDEN'
  74919.             SELECT Top 1 @SlednaSifra=Sifra_MikLok, @SlednoIme=Ime_MikLok
  74920.             FROM MikroLok WITH(NOLOCK)
  74921.             WHERE Sifra_MikLok>@Sifra
  74922.             ORDER BY Sifra_MikLok ASC
  74923.         Else If @Nacin = 'PRETHODEN'
  74924.             SELECT Top 1 @SlednaSifra=Sifra_MikLok, @SlednoIme=Ime_MikLok
  74925.             FROM MikroLok WITH(NOLOCK)
  74926.             WHERE Sifra_MikLok<@Sifra
  74927.             ORDER BY Sifra_MikLok DESC
  74928.         Else If @Nacin = 'TOCEN'
  74929.             SELECT @SlednaSifra=Sifra_MikLok, @SlednoIme=Ime_MikLok
  74930.             FROM MikroLok WITH(NOLOCK)
  74931.             WHERE Sifra_MikLok=@Sifra
  74932.        End
  74933.     Else If @Tabela = 'RABOTNIK'
  74934.        Begin
  74935.         If @Nacin = 'SLEDEN'
  74936.             SELECT Top 1 @SlednaSifra=Sifra_Rab, @SlednoIme=ImeRab
  74937.             FROM Rabotnik WITH(NOLOCK)
  74938.             WHERE Sifra_Rab>@Sifra
  74939.             ORDER BY Sifra_Rab ASC
  74940.         Else If @Nacin = 'PRETHODEN'
  74941.             SELECT Top 1 @SlednaSifra=Sifra_Rab, @SlednoIme=ImeRab
  74942.             FROM Rabotnik WITH(NOLOCK)
  74943.             WHERE Sifra_Rab<@Sifra
  74944.             ORDER BY Sifra_Rab DESC
  74945.         Else If @Nacin = 'TOCEN'
  74946.             SELECT @SlednaSifra=Sifra_Rab, @SlednoIme=ImeRab
  74947.             FROM Rabotnik WITH(NOLOCK)
  74948.             WHERE Sifra_Rab=@Sifra
  74949.        End
  74950.     Else If @Tabela = 'PREVOZNIK'
  74951.        Begin
  74952.         If @Nacin = 'SLEDEN'
  74953.             SELECT Top 1 @SlednaSifra=Sifra_Prev, @SlednoIme=ImePrev
  74954.             FROM Prevoznik WITH(NOLOCK)
  74955.             WHERE Sifra_Prev>@Sifra
  74956.             ORDER BY Sifra_Prev ASC
  74957.         Else If @Nacin = 'PRETHODEN'
  74958.             SELECT Top 1 @SlednaSifra=Sifra_Prev, @SlednoIme=ImePrev
  74959.             FROM Prevoznik WITH(NOLOCK)
  74960.             WHERE Sifra_Prev<@Sifra
  74961.             ORDER BY Sifra_Prev DESC
  74962.         Else If @Nacin = 'TOCEN'
  74963.             SELECT @SlednaSifra=Sifra_Prev, @SlednoIme=ImePrev
  74964.             FROM Prevoznik WITH(NOLOCK)
  74965.             WHERE Sifra_Prev=@Sifra
  74966.        End
  74967.     Else If @Tabela = 'DOZNAKI'
  74968.        Begin
  74969.         If @Nacin = 'SLEDEN'
  74970.             SELECT Top 1 @SlednaSifra=Sifra_Prev
  74971.             FROM Prevoznik WITH(NOLOCK)
  74972.             WHERE Sifra_Prev>@Sifra + 1
  74973.             ORDER BY Sifra_Prev ASC
  74974.         Else If @Nacin = 'PRETHODEN'
  74975.             SELECT Top 1 @SlednaSifra=Sifra_Prev
  74976.             FROM Prevoznik WITH(NOLOCK)
  74977.             WHERE Sifra_Prev<@Sifra
  74978.             ORDER BY Sifra_Prev DESC
  74979.         Else If @Nacin = 'TOCEN'
  74980.             SELECT @SlednaSifra=Sifra_Prev
  74981.             FROM Prevoznik WITH(NOLOCK)
  74982.             WHERE Sifra_Prev=@Sifra
  74983.        End
  74984.     Else If @Tabela = 'OPSTINI'
  74985.        Begin
  74986.         If @Nacin = 'SLEDEN'
  74987.             SELECT Top 1 @SlednaSifra=Sif_Opstina, @SlednoIme=Ime_Opstina
  74988.             FROM Opstini WITH(NOLOCK)
  74989.             WHERE Sif_Opstina>@Sifra
  74990.             ORDER BY Sif_Opstina ASC
  74991.         Else If @Nacin = 'PRETHODEN'
  74992.             SELECT Top 1 @SlednaSifra=Sif_Opstina, @SlednoIme=Ime_Opstina
  74993.             FROM Opstini WITH(NOLOCK)
  74994.             WHERE Sif_Opstina<@Sifra
  74995.             ORDER BY Sif_Opstina DESC
  74996.         Else If @Nacin = 'TOCEN'
  74997.             SELECT @SlednaSifra=Sif_Opstina, @SlednoIme=Ime_Opstina
  74998.             FROM Opstini WITH(NOLOCK)
  74999.             WHERE Sif_Opstina=@Sifra
  75000.        End
  75001.     Else If @Tabela = 'PROGRAMI'
  75002.        Begin
  75003.         If @Nacin = 'SLEDEN'
  75004.             SELECT Top 1 @SlednaSifra=Sif_Progr, @SlednoIme=Ime_Progr
  75005.             FROM Programi WITH(NOLOCK)
  75006.             WHERE Sif_Progr>@Sifra
  75007.             ORDER BY Sif_Progr ASC
  75008.         Else If @Nacin = 'PRETHODEN'
  75009.             SELECT Top 1 @SlednaSifra=Sif_Progr, @SlednoIme=Ime_Progr
  75010.             FROM Programi WITH(NOLOCK)
  75011.             WHERE Sif_Progr<@Sifra
  75012.             ORDER BY Sif_Progr DESC
  75013.         Else If @Nacin = 'TOCEN'
  75014.             SELECT @SlednaSifra=Sif_Progr, @SlednoIme=Ime_Progr
  75015.             FROM Programi WITH(NOLOCK)
  75016.             WHERE Sif_Progr=@Sifra
  75017.        End
  75018.     Else If @Tabela = 'PRIMATELI'
  75019.        Begin
  75020.         If @Nacin = 'SLEDEN'
  75021.             SELECT Top 1 @SlednaSifra=Sif_Primatel, @SlednoIme=Ime_Primatel
  75022.             FROM Primateli WITH(NOLOCK)
  75023.             WHERE Sif_Primatel>@Sifra
  75024.             ORDER BY Sif_Primatel ASC
  75025.         Else If @Nacin = 'PRETHODEN'
  75026.             SELECT Top 1 @SlednaSifra=Sif_Primatel, @SlednoIme=Ime_Primatel
  75027.             FROM Primateli WITH(NOLOCK)
  75028.             WHERE Sif_Primatel<@Sifra
  75029.             ORDER BY Sif_Primatel DESC
  75030.         Else If @Nacin = 'TOCEN'
  75031.             SELECT @SlednaSifra=Sif_Primatel, @SlednoIme=Ime_Primatel
  75032.             FROM Primateli WITH(NOLOCK)
  75033.             WHERE Sif_Primatel=@Sifra
  75034.        End
  75035.     Else If @Tabela = 'ZADRSKI'
  75036.      Begin
  75037.         If @Nacin = 'SLEDEN'
  75038.             SELECT Top 1 @SlednaSifra=Sif_Zadr, @SlednoIme=Ime_Zadr
  75039.             FROM Zadrski WITH(NOLOCK)
  75040.             WHERE Sif_Zadr>@Sifra
  75041.             ORDER BY Sif_Zadr ASC
  75042.         Else If @Nacin = 'PRETHODEN'
  75043.             SELECT Top 1 @SlednaSifra=Sif_Zadr, @SlednoIme=Ime_Zadr
  75044.             FROM Zadrski WITH(NOLOCK)
  75045.             WHERE Sif_Zadr<@Sifra
  75046.             ORDER BY Sif_Zadr DESC
  75047.         Else If @Nacin = 'TOCEN'
  75048.             SELECT @SlednaSifra=Sif_Zadr, @SlednoIme=Ime_Zadr
  75049.             FROM Zadrski WITH(NOLOCK)
  75050.             WHERE Sif_Zadr=@Sifra
  75051.        End
  75052.     Else If @Tabela = 'ZARAB'
  75053.        Begin
  75054.         If @Nacin = 'SLEDEN'
  75055.             SELECT Top 1 @SlednaSifra=Sif_Zarab, @SlednoIme=Ime_Zarab
  75056.             FROM Zarab WITH(NOLOCK)
  75057.             WHERE Sif_Zarab>@Sifra
  75058.             ORDER BY Sif_Zarab ASC
  75059.         Else If @Nacin = 'PRETHODEN'
  75060.             SELECT Top 1 @SlednaSifra=Sif_Zarab, @SlednoIme=Ime_Zarab
  75061.             FROM Zarab WITH(NOLOCK)
  75062.             WHERE Sif_Zarab<@Sifra
  75063.             ORDER BY Sif_Zarab DESC
  75064.         Else If @Nacin = 'TOCEN'
  75065.             SELECT @SlednaSifra=Sif_Zarab, @SlednoIme=Ime_Zarab
  75066.             FROM Zarab WITH(NOLOCK)
  75067.             WHERE Sif_Zarab=@Sifra
  75068.        End
  75069.     Else If @Tabela = 'OPERATORI'
  75070.        Begin
  75071.         If @Nacin = 'SLEDEN'
  75072.             SELECT Top 1 @SlednaSifra=Sifra_Oper, @SlednoIme=Ime_Oper
  75073.             FROM Operatori WITH(NOLOCK)
  75074.             WHERE Sifra_Oper>@Sifra
  75075.             ORDER BY Sifra_Oper ASC
  75076.         Else If @Nacin = 'PRETHODEN'
  75077.             SELECT Top 1 @SlednaSifra=Sifra_Oper, @SlednoIme=Ime_Oper
  75078.             FROM Operatori WITH(NOLOCK)
  75079.             WHERE Sifra_Oper<@Sifra
  75080.             ORDER BY Sifra_Oper DESC
  75081.         Else If @Nacin = 'TOCEN'
  75082.             SELECT @SlednaSifra=Sifra_Oper, @SlednoIme=Ime_Oper
  75083.             FROM Operatori WITH(NOLOCK)
  75084.             WHERE Sifra_Oper=@Sifra
  75085.        End
  75086.     Else If @Tabela = 'NACPLAK'
  75087.        Begin
  75088.         If @Nacin = 'SLEDEN'
  75089.             SELECT Top 1 @SlednaSifra=Sifra_Nac, @SlednoIme=ImeNac
  75090.             FROM NacPlak WITH(NOLOCK)
  75091.             WHERE Sifra_Nac>@Sifra
  75092.             ORDER BY Sifra_Nac ASC
  75093.         Else If @Nacin = 'PRETHODEN'
  75094.             SELECT Top 1 @SlednaSifra=Sifra_Nac, @SlednoIme=ImeNac
  75095.             FROM NacPlak WITH(NOLOCK)
  75096.             WHERE Sifra_Nac<@Sifra
  75097.             ORDER BY Sifra_Nac DESC
  75098.         Else If @Nacin = 'TOCEN'
  75099.             SELECT @SlednaSifra=Sifra_Nac, @SlednoIme=ImeNac
  75100.             FROM NacPlak WITH(NOLOCK)
  75101.             WHERE Sifra_Nac=@Sifra
  75102.        End
  75103.     Else If @Tabela = 'INTERNIKART'
  75104.        Begin
  75105.         If @Nacin = 'SLEDEN'
  75106.             SELECT Top 1 @SlednaSifra=Interna_Kart, @SlednoIme=Ima_Limit
  75107.             FROM InterniKart WITH(NOLOCK)
  75108.             WHERE Interna_Kart>@Sifra
  75109.             ORDER BY Interna_Kart ASC
  75110.         Else If @Nacin = 'PRETHODEN'
  75111.             SELECT Top 1 @SlednaSifra=Interna_Kart, @SlednoIme=Ima_Limit
  75112.             FROM InterniKart WITH(NOLOCK)
  75113.             WHERE Interna_Kart<@Sifra
  75114.             ORDER BY Interna_Kart DESC
  75115.         Else If @Nacin = 'TOCEN'
  75116.             SELECT @SlednaSifra=Interna_Kart, @SlednoIme=Ima_Limit
  75117.             FROM InterniKart WITH(NOLOCK)
  75118.             WHERE Interna_Kart=@Sifra
  75119.        End
  75120.     Else If @Tabela = 'FIRMI'
  75121.        Begin
  75122.         If @Nacin = 'SLEDEN'
  75123.             SELECT Top 1 @SlednaSifra=Sifra_Firma, @SlednoIme=ImeFirma
  75124.             FROM Firmi WITH(NOLOCK)
  75125.             WHERE Sifra_Firma>@Sifra
  75126.             ORDER BY Sifra_Firma ASC
  75127.         Else If @Nacin = 'PRETHODEN'
  75128.             SELECT Top 1 @SlednaSifra=Sifra_Firma, @SlednoIme=ImeFirma
  75129.             FROM Firmi WITH(NOLOCK)
  75130.             WHERE Sifra_Firma<@Sifra
  75131.             ORDER BY Sifra_Firma DESC
  75132.         Else If @Nacin = 'TOCEN'
  75133.             SELECT @SlednaSifra=Sifra_Firma, @SlednoIme=ImeFirma
  75134.             FROM Firmi WITH(NOLOCK)
  75135.             WHERE Sifra_Firma=@Sifra
  75136.        End
  75137.     Else If @Tabela = 'NACINPRESMZ'
  75138.        Begin
  75139.         If @Nacin = 'SLEDEN'
  75140.             SELECT Top 1 @SlednaSifra=Sif_NacPresZ, @SlednoIme=Ime_NacPresZ
  75141.             FROM NacinPresmZ WITH(NOLOCK)
  75142.             WHERE Sif_NacPresZ>@Sifra
  75143.             ORDER BY Sif_NacPresZ ASC
  75144.         Else If @Nacin = 'PRETHODEN'
  75145.             SELECT Top 1 @SlednaSifra=Sif_NacPresZ, @SlednoIme=Ime_NacPresZ
  75146.             FROM NacinPresmZ WITH(NOLOCK)
  75147.             WHERE Sif_NacPresZ<@Sifra
  75148.             ORDER BY Sif_NacPresZ DESC
  75149.         Else If @Nacin = 'TOCEN'
  75150.             SELECT @SlednaSifra=Sif_NacPresZ, @SlednoIme=Ime_NacPresZ
  75151.             FROM NacinPresmZ WITH(NOLOCK)
  75152.             WHERE Sif_NacPresZ=@Sifra
  75153.        End
  75154.     Else If @Tabela = 'GRPIZBOR'
  75155.        Begin
  75156.         If @Nacin = 'SLEDEN'
  75157.             SELECT Top 1 @SlednaSifra=Sifra_GrpIzb, @SlednoIme=Ime_GrpIzb
  75158.             FROM GrpIzbor WITH(NOLOCK)
  75159.             WHERE Sifra_GrpIzb>@Sifra
  75160.             ORDER BY Sifra_GrpIzb ASC
  75161.         Else If @Nacin = 'PRETHODEN'
  75162.             SELECT Top 1 @SlednaSifra=Sifra_GrpIzb, @SlednoIme=Ime_GrpIzb
  75163.             FROM GrpIzbor WITH(NOLOCK)
  75164.             WHERE Sifra_GrpIzb<@Sifra
  75165.             ORDER BY Sifra_GrpIzb DESC
  75166.         Else If @Nacin = 'TOCEN'
  75167.             SELECT @SlednaSifra=Sifra_GrpIzb, @SlednoIme=Ime_GrpIzb
  75168.             FROM GrpIzbor WITH(NOLOCK)
  75169.             WHERE Sifra_GrpIzb=@Sifra
  75170.        End
  75171.     Else If @Tabela = 'VIDVOZILA'
  75172.        Begin
  75173.         If @Nacin = 'SLEDEN'
  75174.             SELECT Top 1 @SlednaSifra=Sifra_Vid_Voz, @SlednoIme=Ime_Vid_Voz
  75175.             FROM VidVozila WITH(NOLOCK)
  75176.             WHERE Sifra_Vid_Voz>@Sifra
  75177.             ORDER BY Sifra_Vid_Voz ASC
  75178.         Else If @Nacin = 'PRETHODEN'
  75179.             SELECT Top 1 @SlednaSifra=Sifra_Vid_Voz, @SlednoIme=Ime_Vid_Voz
  75180.             FROM VidVozila WITH(NOLOCK)
  75181.             WHERE Sifra_Vid_Voz<@Sifra
  75182.             ORDER BY Sifra_Vid_Voz DESC
  75183.         Else If @Nacin = 'TOCEN'
  75184.             SELECT @SlednaSifra=Sifra_Vid_Voz, @SlednoIme=Ime_Vid_Voz
  75185.             FROM VidVozila WITH(NOLOCK)
  75186.             WHERE Sifra_Vid_Voz=@Sifra
  75187.        End
  75188.     Else If @Tabela = 'DIVIZII'
  75189.        Begin
  75190.         If @Nacin = 'SLEDEN'
  75191.             SELECT Top 1 @SlednaSifra=Sifra_Div, @SlednoIme=ImeDiv
  75192.             FROM Divizii WITH(NOLOCK)
  75193.             WHERE Sifra_Div>@Sifra
  75194.             ORDER BY Sifra_Div ASC
  75195.         Else If @Nacin = 'PRETHODEN'
  75196.             SELECT Top 1 @SlednaSifra=Sifra_Div, @SlednoIme=ImeDiv
  75197.             FROM Divizii WITH(NOLOCK)
  75198.             WHERE Sifra_Div<@Sifra
  75199.             ORDER BY Sifra_Div DESC
  75200.         Else If @Nacin = 'TOCEN'
  75201.             SELECT @SlednaSifra=Sifra_Div, @SlednoIme=ImeDiv
  75202.             FROM Divizii WITH(NOLOCK)
  75203.             WHERE Sifra_Div=@Sifra
  75204.        End
  75205.     Else If @Tabela = 'NIVOCENIKARTKOR'
  75206.        Begin
  75207.         If @Nacin = 'SLEDEN'
  75208.             SELECT Top 1 @SlednaSifra=Sifra_CeniKartKor, @SlednoIme=ImeCeniKartKor
  75209.             FROM NivoCeniKartKor WITH(NOLOCK)
  75210.             WHERE Sifra_CeniKartKor>@Sifra
  75211.             ORDER BY Sifra_CeniKartKor ASC
  75212.         Else If @Nacin = 'PRETHODEN'
  75213.             SELECT Top 1 @SlednaSifra=Sifra_CeniKartKor, @SlednoIme=ImeCeniKartKor
  75214.             FROM NivoCeniKartKor WITH(NOLOCK)
  75215.             WHERE Sifra_CeniKartKor<@Sifra
  75216.             ORDER BY Sifra_CeniKartKor DESC
  75217.         Else If @Nacin = 'TOCEN'
  75218.             SELECT @SlednaSifra=Sifra_CeniKartKor, @SlednoIme=ImeCeniKartKor
  75219.             FROM NivoCeniKartKor WITH(NOLOCK)
  75220.             WHERE Sifra_CeniKartKor=@Sifra
  75221.        End
  75222.     Else If @Tabela = 'TIPKARTKOR'
  75223.        Begin
  75224.         If @Nacin = 'SLEDEN'
  75225.             SELECT Top 1 @SlednaSifra=Sifra_TipKartKor, @SlednoIme=ImeKartKor
  75226.             FROM TipKartKor WITH(NOLOCK)
  75227.             WHERE Sifra_TipKartKor>@Sifra
  75228.             ORDER BY Sifra_TipKartKor ASC
  75229.         Else If @Nacin = 'PRETHODEN'
  75230.             SELECT Top 1 @SlednaSifra=Sifra_TipKartKor, @SlednoIme=ImeKartKor
  75231.             FROM TipKartKor WITH(NOLOCK)
  75232.             WHERE Sifra_TipKartKor<@Sifra
  75233.             ORDER BY Sifra_TipKartKor DESC
  75234.         Else If @Nacin = 'TOCEN'
  75235.             SELECT @SlednaSifra=Sifra_TipKartKor, @SlednoIme=ImeKartKor
  75236.             FROM TipKartKor WITH(NOLOCK)
  75237.             WHERE Sifra_TipKartKor=@Sifra
  75238.        End
  75239.     Else If @Tabela = 'GRUPIOPER'
  75240.        Begin
  75241.         If @Nacin = 'SLEDEN'
  75242.             SELECT Top 1 @SlednaSifra=Sifra_GrOper, @SlednoIme=ImeGrOper
  75243.             FROM GrupiOper WITH(NOLOCK)
  75244.             WHERE Sifra_GrOper>@Sifra
  75245.             ORDER BY Sifra_GrOper ASC
  75246.         Else If @Nacin = 'PRETHODEN'
  75247.             SELECT Top 1 @SlednaSifra=Sifra_GrOper, @SlednoIme=ImeGrOper
  75248.             FROM GrupiOper WITH(NOLOCK)
  75249.             WHERE Sifra_GrOper<@Sifra
  75250.             ORDER BY Sifra_GrOper DESC
  75251.         Else If @Nacin = 'TOCEN'
  75252.             SELECT @SlednaSifra=Sifra_GrOper, @SlednoIme=ImeGrOper
  75253.             FROM GrupiOper WITH(NOLOCK)
  75254.             WHERE Sifra_GrOper=@Sifra
  75255.        End
  75256.     Else If @Tabela = 'DEPOZAMB'
  75257.        Begin
  75258.         If @Nacin = 'SLEDEN'
  75259.             SELECT Top 1 @SlednaSifra=Sif_Depoz_Amb, @SlednoIme=Null
  75260.             FROM DepozAmb WITH(NOLOCK)
  75261.             WHERE Sif_Depoz_Amb>@Sifra
  75262.             ORDER BY Sif_Depoz_Amb ASC
  75263.         Else If @Nacin = 'PRETHODEN'
  75264.             SELECT Top 1 @SlednaSifra=Sif_Depoz_Amb, @SlednoIme=Null
  75265.             FROM DepozAmb WITH(NOLOCK)
  75266.             WHERE Sif_Depoz_Amb<@Sifra
  75267.             ORDER BY Sif_Depoz_Amb DESC
  75268.         Else If @Nacin = 'TOCEN'
  75269.             SELECT @SlednaSifra=Sif_Depoz_Amb, @SlednoIme=Null
  75270.             FROM DepozAmb WITH(NOLOCK)
  75271.             WHERE Sif_Depoz_Amb=@Sifra
  75272.        End
  75273.     Else If @Tabela = 'RELACISPOR'
  75274.        Begin
  75275.         If @Nacin = 'SLEDEN'
  75276.             SELECT Top 1 @SlednaSifra=Sifra_RelIspor, @SlednoIme=Ime_RelIspor
  75277.             FROM RelacIspor WITH(NOLOCK)
  75278.             WHERE Sifra_RelIspor>@Sifra
  75279.             ORDER BY Sifra_RelIspor ASC
  75280.         Else If @Nacin = 'PRETHODEN'
  75281.             SELECT Top 1 @SlednaSifra=Sifra_RelIspor, @SlednoIme=Ime_RelIspor
  75282.             FROM RelacIspor WITH(NOLOCK)
  75283.             WHERE Sifra_RelIspor<@Sifra
  75284.             ORDER BY Sifra_RelIspor DESC
  75285.         Else If @Nacin = 'TOCEN'
  75286.             SELECT @SlednaSifra=Sifra_RelIspor, @SlednoIme=Ime_RelIspor
  75287.             FROM RelacIspor WITH(NOLOCK)
  75288.             WHERE Sifra_RelIspor=@Sifra
  75289.        End
  75290.     Else If @Tabela = 'VIDPRODOBJ'
  75291.        Begin
  75292.         If @Nacin = 'SLEDEN'
  75293.             SELECT Top 1 @SlednaSifra=Sifra_VPJ, @SlednoIme=Ime_VPJ
  75294.             FROM VidProdObj WITH(NOLOCK)
  75295.             WHERE Sifra_VPJ>@Sifra
  75296.             ORDER BY Sifra_VPJ ASC
  75297.         Else If @Nacin = 'PRETHODEN'
  75298.             SELECT Top 1 @SlednaSifra=Sifra_VPJ, @SlednoIme=Ime_VPJ
  75299.             FROM VidProdObj WITH(NOLOCK)
  75300.             WHERE Sifra_VPJ<@Sifra
  75301.             ORDER BY Sifra_VPJ DESC
  75302.         Else If @Nacin = 'TOCEN'
  75303.             SELECT @SlednaSifra=Sifra_VPJ, @SlednoIme=Ime_VPJ
  75304.             FROM VidProdObj WITH(NOLOCK)
  75305.             WHERE Sifra_VPJ=@Sifra
  75306.        End
  75307.     Else If @Tabela = 'TIPKOMINT'
  75308.        Begin
  75309.         If @Nacin = 'SLEDEN'
  75310.             SELECT Top 1 @SlednaSifra=Sifra_Tip, @SlednoIme=ImeTip
  75311.             FROM TipKomint WITH(NOLOCK)
  75312.             WHERE Sifra_Tip>@Sifra
  75313.             ORDER BY Sifra_Tip ASC
  75314.         Else If @Nacin = 'PRETHODEN'
  75315.             SELECT Top 1 @SlednaSifra=Sifra_Tip, @SlednoIme=ImeTip
  75316.             FROM TipKomint WITH(NOLOCK)
  75317.             WHERE Sifra_Tip<@Sifra
  75318.             ORDER BY Sifra_Tip DESC
  75319.         Else If @Nacin = 'TOCEN'
  75320.             SELECT @SlednaSifra=Sifra_Tip, @SlednoIme=ImeTip
  75321.             FROM TipKomint WITH(NOLOCK)
  75322.             WHERE Sifra_Tip=@Sifra
  75323.        End
  75324.     Else If @Tabela = 'SMENI'
  75325.        Begin
  75326.         If @Nacin = 'SLEDEN'
  75327.             SELECT Top 1 @SlednaSifra=Sifra_Smena, @SlednoIme=Ime_Smena
  75328.             FROM Smeni WITH(NOLOCK)
  75329.             WHERE Sifra_Smena>@Sifra
  75330.             ORDER BY Sifra_Smena ASC
  75331.         Else If @Nacin = 'PRETHODEN'
  75332.             SELECT Top 1 @SlednaSifra=Sifra_Smena, @SlednoIme=Ime_Smena
  75333.             FROM Smeni WITH(NOLOCK)
  75334.             WHERE Sifra_Smena<@Sifra
  75335.             ORDER BY Sifra_Smena DESC
  75336.         Else If @Nacin = 'TOCEN'
  75337.             SELECT @SlednaSifra=Sifra_Smena, @SlednoIme=Ime_Smena
  75338.             FROM Smeni WITH(NOLOCK)
  75339.             WHERE Sifra_Smena=@Sifra
  75340.        End
  75341.     Else If @Tabela = 'HILZNI'
  75342.        Begin
  75343.         If @Nacin = 'SLEDEN'
  75344.             SELECT Top 1 @SlednaSifra=Sifra_Hilzna, @SlednoIme=Ime_Hilzna
  75345.             FROM Hilzni WITH(NOLOCK)
  75346.             WHERE Sifra_Hilzna>@Sifra
  75347.             ORDER BY Sifra_Hilzna ASC
  75348.         Else If @Nacin = 'PRETHODEN'
  75349.             SELECT Top 1 @SlednaSifra=Sifra_Hilzna, @SlednoIme=Ime_Hilzna
  75350.             FROM Hilzni WITH(NOLOCK)
  75351.             WHERE Sifra_Hilzna<@Sifra
  75352.             ORDER BY Sifra_Hilzna DESC
  75353.         Else If @Nacin = 'TOCEN'
  75354.             SELECT @SlednaSifra=Sifra_Hilzna, @SlednoIme=Ime_Hilzna
  75355.             FROM Hilzni WITH(NOLOCK)
  75356.             WHERE Sifra_Hilzna=@Sifra
  75357.        End
  75358.     Else If @Tabela = 'FAZI'
  75359.        Begin
  75360.         If @Nacin = 'SLEDEN'
  75361.             SELECT Top 1 @SlednaSifra=Sifra_Faza, @SlednoIme=Ime_Faza
  75362.             FROM Fazi WITH(NOLOCK)
  75363.             WHERE Sifra_Faza>@Sifra
  75364.             ORDER BY Sifra_Faza ASC
  75365.         Else If @Nacin = 'PRETHODEN'
  75366.             SELECT Top 1 @SlednaSifra=Sifra_Faza, @SlednoIme=Ime_Faza
  75367.             FROM Fazi WITH(NOLOCK)
  75368.             WHERE Sifra_Faza<@Sifra
  75369.             ORDER BY Sifra_Faza DESC
  75370.         Else If @Nacin = 'TOCEN'
  75371.             SELECT @SlednaSifra=Sifra_Faza, @SlednoIme=Ime_Faza
  75372.             FROM Fazi WITH(NOLOCK)
  75373.             WHERE Sifra_Faza=@Sifra
  75374.        End
  75375.     Else If @Tabela = 'MASINI'
  75376.        Begin
  75377.         If @Nacin = 'SLEDEN'
  75378.             SELECT Top 1 @SlednaSifra=Sifra_Mas, @SlednoIme=ImeMas
  75379.             FROM Masini WITH(NOLOCK)
  75380.             WHERE Sifra_Mas>@Sifra
  75381.             ORDER BY Sifra_Mas ASC
  75382.         Else If @Nacin = 'PRETHODEN'
  75383.             SELECT Top 1 @SlednaSifra=Sifra_Mas, @SlednoIme=ImeMas
  75384.             FROM Masini WITH(NOLOCK)
  75385.             WHERE Sifra_Mas<@Sifra
  75386.             ORDER BY Sifra_Mas DESC
  75387.         Else If @Nacin = 'TOCEN'
  75388.             SELECT @SlednaSifra=Sifra_Mas, @SlednoIme=ImeMas
  75389.             FROM Masini WITH(NOLOCK)
  75390.             WHERE Sifra_Mas=@Sifra
  75391.        End
  75392.     Else If @Tabela = 'AKCIIPROMO'
  75393.        Begin
  75394.         If @Nacin = 'SLEDEN'
  75395.             SELECT Top 1 @SlednaSifra=Ozn_Akcija, @SlednoIme=Opis_Akcija
  75396.             FROM AkciiPromo WITH(NOLOCK)
  75397.             WHERE Ozn_Akcija>@Sifra
  75398.             ORDER BY Ozn_Akcija ASC
  75399.         Else If @Nacin = 'PRETHODEN'
  75400.             SELECT Top 1 @SlednaSifra=Ozn_Akcija, @SlednoIme=Opis_Akcija
  75401.             FROM AkciiPromo WITH(NOLOCK)
  75402.             WHERE Ozn_Akcija<@Sifra
  75403.             ORDER BY Ozn_Akcija DESC
  75404.         Else If @Nacin = 'TOCEN'
  75405.             SELECT @SlednaSifra=Ozn_Akcija, @SlednoIme=Opis_Akcija
  75406.             FROM AkciiPromo WITH(NOLOCK)
  75407.             WHERE Ozn_Akcija=@Sifra
  75408.        End
  75409.     Else If @Tabela = 'GRPMARZA'
  75410.        Begin
  75411.         If @Nacin = 'SLEDEN'
  75412.             SELECT Top 1 @SlednaSifra=Grupa_Marza, @SlednoIme=Ime_GrM
  75413.             FROM GrpMarza WITH(NOLOCK)
  75414.             WHERE Grupa_Marza>@Sifra
  75415.             ORDER BY Grupa_Marza ASC
  75416.         Else If @Nacin = 'PRETHODEN'
  75417.             SELECT Top 1 @SlednaSifra=Grupa_Marza, @SlednoIme=Ime_GrM
  75418.             FROM GrpMarza WITH(NOLOCK)
  75419.             WHERE Grupa_Marza<@Sifra
  75420.             ORDER BY Grupa_Marza DESC
  75421.         Else If @Nacin = 'TOCEN'
  75422.             SELECT @SlednaSifra=Grupa_Marza, @SlednoIme=Ime_GrM
  75423.             FROM GrpMarza WITH(NOLOCK)
  75424.             WHERE Grupa_Marza=@Sifra
  75425.        End
  75426.          Else If @Tabela = 'KONFSLAGANJE'
  75427.        Begin
  75428.         If @Nacin = 'SLEDEN'
  75429.             SELECT Top 1 @SlednaSifra=Sifra_Slag, @SlednoIme=ImeSlag
  75430.             FROM KonfSlaganje WITH(NOLOCK)
  75431.             WHERE Sifra_slag>@Sifra
  75432.             ORDER BY Sifra_Slag ASC
  75433.         Else If @Nacin = 'PRETHODEN'
  75434.             SELECT Top 1 @SlednaSifra=Sifra_Slag, @SlednoIme=ImeSlag
  75435.             FROM KonfSlaganje WITH(NOLOCK)
  75436.             WHERE Sifra_Slag<@Sifra
  75437.             ORDER BY Sifra_Slag DESC
  75438.         Else If @Nacin = 'TOCEN'
  75439.             SELECT @SlednaSifra=Sifra_Slag, @SlednoIme=ImeSlag
  75440.             FROM KonfSlaganje WITH(NOLOCK)
  75441.             WHERE Sifra_Slag=@Sifra
  75442.        End
  75443.          Else If @Tabela = 'GRUPAWEB'
  75444.        Begin
  75445.         If @Nacin = 'SLEDEN'
  75446.             SELECT Top 1 @SlednaSifra=Sifra_GrWeb, @SlednoIme=Ime_GrWeb
  75447.             FROM GrupaWeb WITH(NOLOCK)
  75448.             WHERE Sifra_GrWeb>@Sifra
  75449.             ORDER BY Sifra_GrWeb ASC
  75450.         Else If @Nacin = 'PRETHODEN'
  75451.             SELECT Top 1 @SlednaSifra=Sifra_GrWeb, @SlednoIme=Ime_GrWeb
  75452.             FROM GrupaWeb WITH(NOLOCK)
  75453.             WHERE Sifra_GrWeb<@Sifra
  75454.             ORDER BY Sifra_GrWeb DESC
  75455.         Else If @Nacin = 'TOCEN'
  75456.             SELECT @SlednaSifra=Sifra_GrWeb, @SlednoIme=Ime_GrWeb
  75457.             FROM Sifra_GrWeb WITH(NOLOCK)
  75458.             WHERE Sifra_GrWeb=@Sifra
  75459.        End
  75460.          Else If @Tabela = 'PODGRWEB'
  75461.        Begin
  75462.         If @Nacin = 'SLEDEN'
  75463.             SELECT Top 1 @SlednaSifra=Sifra_PodgrWeb, @SlednoIme=Ime_PodgrWeb
  75464.             FROM PodgrWeb WITH(NOLOCK)
  75465.             WHERE Sifra_PodgrWeb>@Sifra
  75466.             ORDER BY Sifra_PodgrWeb ASC
  75467.         Else If @Nacin = 'PRETHODEN'
  75468.             SELECT Top 1 @SlednaSifra=Sifra_PodgrWeb, @SlednoIme=Ime_PodgrWeb
  75469.             FROM PodgrWeb WITH(NOLOCK)
  75470.             WHERE Sifra_PodgrWeb<@Sifra
  75471.             ORDER BY Sifra_PodgrWeb DESC
  75472.         Else If @Nacin = 'TOCEN'
  75473.             SELECT @SlednaSifra=Sifra_PodgrWeb, @SlednoIme=Ime_PodgrWeb
  75474.             FROM PodgrWeb WITH(NOLOCK)
  75475.             WHERE Sifra_PodgrWeb=@Sifra
  75476.        End
  75477.     Else If @Tabela = 'GRPAT'
  75478.        Begin        
  75479.         If @Nacin = 'SLEDEN'
  75480.             SELECT Top 1 @SlednaSifra=Sif_GrPat, @SlednoIme=Ime_GrPat
  75481.             FROM GrPat WITH(NOLOCK)
  75482.             WHERE Sif_GrPat >@Sifra
  75483.             ORDER BY Sif_GrPat ASC
  75484.         Else If @Nacin = 'PRETHODEN'
  75485.             SELECT Top 1 @SlednaSifra=Sif_GrPat, @SlednoIme=Ime_GrPat
  75486.             FROM  GrPat WITH(NOLOCK)
  75487.             WHERE Sif_GrPat<@Sifra
  75488.             ORDER BY Sif_GrPat DESC
  75489.         Else If @Nacin = 'TOCEN'
  75490.             SELECT @SlednaSifra=Sif_GrPat, @SlednoIme=Ime_GrPat
  75491.             FROM GrPat WITH(NOLOCK)
  75492.             WHERE Sif_GrPat=@Sifra
  75493.                  End
  75494.     Else If @Tabela = 'KATSTATUS'
  75495.        Begin        
  75496.         If @Nacin = 'SLEDEN'
  75497.             SELECT Top 1 @SlednaSifra=Sifra_KatStatus, @SlednoIme=ImeKatStatus
  75498.             FROM KatStatus WITH(NOLOCK)
  75499.             WHERE Sifra_KatStatus >@Sifra
  75500.             ORDER BY Sifra_KatStatus ASC
  75501.         Else If @Nacin = 'PRETHODEN'
  75502.             SELECT Top 1 @SlednaSifra=Sifra_KatStatus, @SlednoIme=ImeKatStatus
  75503.             FROM  KatStatus WITH(NOLOCK)
  75504.             WHERE Sifra_KatStatus<@Sifra
  75505.             ORDER BY Sifra_KatStatus DESC
  75506.         Else If @Nacin = 'TOCEN'
  75507.             SELECT @SlednaSifra=Sifra_KatStatus, @SlednoIme=ImeKatStatus
  75508.             FROM KatStatus WITH(NOLOCK)
  75509.             WHERE Sifra_KatStatus=@Sifra
  75510.                  End
  75511.     Else If @Tabela = 'TIPKATPAKUV'
  75512.        Begin        
  75513.         If @Nacin = 'SLEDEN'
  75514.             SELECT Top 1 @SlednaSifra=Sifra_KatPak, @SlednoIme=ImeKatPak
  75515.             FROM TipKatPakuv WITH(NOLOCK)
  75516.             WHERE Sifra_KatPak >@Sifra
  75517.             ORDER BY Sifra_KatPak ASC
  75518.         Else If @Nacin = 'PRETHODEN'
  75519.             SELECT Top 1 @SlednaSifra=Sifra_KatPak, @SlednoIme=ImeKatPak
  75520.             FROM  TipKatPakuv WITH(NOLOCK)
  75521.             WHERE Sifra_KatPak<@Sifra
  75522.             ORDER BY Sifra_KatPak DESC
  75523.         Else If @Nacin = 'TOCEN'
  75524.             SELECT @SlednaSifra=Sifra_KatPak, @SlednoIme=ImeKatPak
  75525.             FROM TipKatPakuv WITH(NOLOCK)
  75526.             WHERE Sifra_KatPak=@Sifra
  75527.                  End
  75528.     Else If @Tabela = 'VIDDOG'
  75529.        Begin        
  75530.         If @Nacin = 'SLEDEN'
  75531.             SELECT Top 1 @SlednaSifra=Sifra_VidDog, @SlednoIme=Ime_VidDog
  75532.             FROM VidDog WITH(NOLOCK)
  75533.             WHERE Sifra_VidDog >@Sifra
  75534.             ORDER BY Sifra_VidDog ASC
  75535.         Else If @Nacin = 'PRETHODEN'
  75536.             SELECT Top 1 @SlednaSifra=Sifra_VidDog, @SlednoIme=Ime_VidDog
  75537.             FROM  VidDog WITH(NOLOCK)
  75538.             WHERE Sifra_VidDog<@Sifra
  75539.             ORDER BY Sifra_VidDog DESC
  75540.         Else If @Nacin = 'TOCEN'
  75541.             SELECT @SlednaSifra=Sifra_VidDog, @SlednoIme=Ime_VidDog
  75542.             FROM VidDog WITH(NOLOCK)
  75543.             WHERE Sifra_VidDog=@Sifra
  75544.             End
  75545.     Else If @Tabela = 'VERNTRAENJE'
  75546.        Begin        
  75547.         If @Nacin = 'SLEDEN'
  75548.             SELECT Top 1 @SlednaSifra=Sifra_Vernost, @SlednoIme=Ime_Vernost
  75549.             FROM VernTraenje WITH(NOLOCK)
  75550.             WHERE Sifra_Vernost >@Sifra
  75551.             ORDER BY Sifra_Vernost ASC
  75552.         Else If @Nacin = 'PRETHODEN'
  75553.             SELECT Top 1 @SlednaSifra=Sifra_Vernost, @SlednoIme=Ime_Vernost
  75554.             FROM  VernTraenje WITH(NOLOCK)
  75555.             WHERE Sifra_Vernost<@Sifra
  75556.             ORDER BY Sifra_Vernost DESC
  75557.         Else If @Nacin = 'TOCEN'
  75558.             SELECT @SlednaSifra=Sifra_Vernost, @SlednoIme=Ime_Vernost
  75559.             FROM VernTraenje WITH(NOLOCK)
  75560.             WHERE Sifra_Vernost=@Sifra
  75561.             End
  75562.     Else If @Tabela = 'TARMODEL'
  75563.        Begin        
  75564.         If @Nacin = 'SLEDEN'
  75565.             SELECT Top 1 @SlednaSifra=Sifra_TarModel, @SlednoIme=Ime_TarModel
  75566.             FROM TarModel WITH(NOLOCK)
  75567.             WHERE Sifra_TarModel >@Sifra
  75568.             ORDER BY Sifra_TarModel ASC
  75569.         Else If @Nacin = 'PRETHODEN'
  75570.             SELECT Top 1 @SlednaSifra=Sifra_TarModel, @SlednoIme=Ime_TarModel
  75571.             FROM  TarModel WITH(NOLOCK)
  75572.             WHERE Sifra_TarModel<@Sifra
  75573.             ORDER BY Sifra_TarModel DESC
  75574.         Else If @Nacin = 'TOCEN'
  75575.             SELECT @SlednaSifra=Sifra_TarModel, @SlednoIme=Ime_TarModel
  75576.             FROM TarModel WITH(NOLOCK)
  75577.             WHERE Sifra_TarModel=@Sifra
  75578.             End
  75579.         Else If @Tabela = 'RKASGRUPAOPERAC'
  75580.        Begin        
  75581.         If @Nacin = 'SLEDEN'
  75582.             SELECT Top 1 @SlednaSifra=Sifra_GrOperac, @SlednoIme=ImeGrupaOperac
  75583.             FROM RKASGRUPAOPERAC WITH(NOLOCK)
  75584.             WHERE Sifra_GrOperac >@Sifra
  75585.             ORDER BY Sifra_GrOperac ASC
  75586.         Else If @Nacin = 'PRETHODEN'
  75587.             SELECT Top 1 @SlednaSifra=Sifra_GrOperac, @SlednoIme=ImeGrupaOperac
  75588.             FROM  RKASGRUPAOPERAC WITH(NOLOCK)
  75589.             WHERE Sifra_GrOperac<@Sifra
  75590.             ORDER BY Sifra_GrOperac DESC
  75591.         Else If @Nacin = 'TOCEN'
  75592.             SELECT @SlednaSifra=Sifra_GrOperac, @SlednoIme=ImeGrupaOperac
  75593.             FROM RKASGRUPAOPERAC WITH(NOLOCK)
  75594.             WHERE Sifra_GrOperac=@Sifra
  75595.                  End
  75596.     else If @Tabela = 'ARKAKAT'
  75597.        Begin
  75598.         If @Nacin = 'SLEDEN'
  75599.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt
  75600.             FROM ArkaKat WITH(NOLOCK)
  75601.             WHERE Sifra_Art>@Sifra
  75602.             ORDER BY Sifra_Art ASC
  75603.         Else If @Nacin = 'PRETHODEN'
  75604.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt
  75605.             FROM ArkaKat WITH(NOLOCK)
  75606.             WHERE Sifra_Art<@Sifra
  75607.             ORDER BY Sifra_Art DESC
  75608.         Else If @Nacin = 'TOCEN'
  75609.             SELECT @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt
  75610.             FROM ArkaKat WITH(NOLOCK)
  75611.             WHERE Sifra_Art=@Sifra
  75612.        End
  75613.     Else If @Tabela = 'CRRKODOVI'
  75614.        Begin
  75615.         If @Nacin = 'SLEDEN'
  75616.             SELECT Top 1 @SlednaSifra=Sifra_Crr, @SlednoIme=ImeCrr
  75617.             FROM CRRKodovi WITH(NOLOCK)
  75618.             WHERE Sifra_CRR > @IntSifra
  75619.             ORDER BY Sifra_CRR ASC
  75620.         Else If @Nacin = 'PRETHODEN'
  75621.             SELECT Top 1 @SlednaSifra=Sifra_Crr, @SlednoIme=ImeCrr
  75622.             FROM CRRKodovi WITH(NOLOCK)
  75623.             WHERE Sifra_CRR < @IntSifra
  75624.             ORDER BY Sifra_CRR DESC
  75625.         Else If @Nacin = 'TOCEN'
  75626.             SELECT @SlednaSifra=Sifra_CRR, @SlednoIme=ImeCrr
  75627.             FROM CRRKodovi WITH(NOLOCK)
  75628.             WHERE Sifra_CRR = @IntSifra
  75629.        End
  75630.     Else If @Tabela = 'FORMULADEF'
  75631.        Begin
  75632.         If @Nacin = 'SLEDEN'
  75633.             SELECT Top 1 @SlednaSifra=Sifra_Formula, @SlednoIme=Ime_Formula
  75634.             FROM FormulaDef WITH(NOLOCK)
  75635.             WHERE Sifra_Formula > @Sifra
  75636.             ORDER BY Sifra_Formula ASC
  75637.         Else If @Nacin = 'PRETHODEN'
  75638.             SELECT Top 1 @SlednaSifra=Sifra_Formula, @SlednoIme=Ime_Formula
  75639.             FROM FormulaDef WITH(NOLOCK)
  75640.             WHERE Sifra_Formula < @Sifra
  75641.             ORDER BY Sifra_Formula DESC
  75642.         Else If @Nacin = 'TOCEN'
  75643.             SELECT @SlednaSifra=Sifra_Formula, @SlednoIme=Ime_Formula
  75644.             FROM FormulaDef WITH(NOLOCK)
  75645.             WHERE Sifra_Formula = @Sifra
  75646.        End
  75647.         Else If @Tabela = 'KARAKTERIST'
  75648.        Begin
  75649.         If @Nacin = 'SLEDEN'
  75650.             SELECT Top 1 @SlednaSifra=Sifra_Karakt, @SlednoIme=ImeKarakt
  75651.             FROM Karakterist WITH(NOLOCK)
  75652.             WHERE Sifra_Karakt > @Sifra
  75653.             ORDER BY Sifra_KArakt ASC
  75654.         Else If @Nacin = 'PRETHODEN'
  75655.             SELECT Top 1 @SlednaSifra=Sifra_Karakt, @SlednoIme=ImeKarakt
  75656.             FROM Karakterist WITH(NOLOCK)
  75657.             WHERE Sifra_Karakt < @Sifra
  75658.             ORDER BY Sifra_Karakt DESC
  75659.         Else If @Nacin = 'TOCEN'
  75660.             SELECT @SlednaSifra=Sifra_Karakt, @SlednoIme=ImeKarakt
  75661.             FROM Karakterist WITH(NOLOCK)
  75662.             WHERE Sifra_Karakt = @Sifra
  75663.        End
  75664.     Else If @Tabela = 'ATCKODOVI'
  75665.        Begin
  75666.         If @Nacin = 'SLEDEN'
  75667.             SELECT Top 1 @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC
  75668.             FROM ATCKodovi WITH(NOLOCK)
  75669.             WHERE Sifra_ATC>@Sifra
  75670.             ORDER BY Sifra_ATC ASC
  75671.         Else If @Nacin = 'PRETHODEN'
  75672.             SELECT Top 1 @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC
  75673.             FROM ATCKodovi WITH(NOLOCK)
  75674.             WHERE Sifra_ATC<@Sifra
  75675.             ORDER BY Sifra_ATC DESC
  75676.         Else If @Nacin = 'TOCEN'
  75677.             SELECT @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC
  75678.             FROM ATCKodovi WITH(NOLOCK)
  75679.             WHERE Sifra_ATC=@Sifra
  75680.        End
  75681.     Else If @Tabela = 'VOZIZJAVA'
  75682.        Begin
  75683.         If @Nacin = 'SLEDEN'
  75684.             SELECT Top 1 @SlednaSifra=Broj_Izjava
  75685.             FROM VozIzjava WITH(NOLOCK)
  75686.             WHERE Broj_Izjava>@Sifra
  75687.             ORDER BY Broj_Izjava ASC
  75688.         Else If @Nacin = 'PRETHODEN'
  75689.             SELECT Top 1 @SlednaSifra=Broj_Izjava
  75690.             FROM VozIzjava WITH(NOLOCK)
  75691.             WHERE Broj_Izjava<@Sifra
  75692.             ORDER BY Broj_Izjava DESC
  75693.         Else If @Nacin = 'TOCEN'
  75694.             SELECT @SlednaSifra=Broj_Izjava
  75695.             FROM VozIzjava WITH(NOLOCK)
  75696.             WHERE Broj_Izjava=@Sifra
  75697.        End
  75698.     Else If @Tabela = 'KREDITSTATUS'
  75699.        Begin
  75700.         If @Nacin = 'SLEDEN'
  75701.             SELECT Top 1 @SlednaSifra=Status_Kredit
  75702.             FROM KreditStatus WITH(NOLOCK)
  75703.             WHERE Status_Kredit>@Sifra
  75704.             ORDER BY Status_Kredit ASC
  75705.         Else If @Nacin = 'PRETHODEN'
  75706.             SELECT Top 1 @SlednaSifra=Status_Kredit
  75707.             FROM KreditStatus WITH(NOLOCK)
  75708.             WHERE Status_Kredit<@Sifra
  75709.             ORDER BY Status_Kredit DESC
  75710.         Else If @Nacin = 'TOCEN'
  75711.             SELECT @SlednaSifra=Status_Kredit
  75712.             FROM KreditStatus WITH(NOLOCK)
  75713.             WHERE Status_Kredit=@Sifra
  75714.        End
  75715.         Else If @Tabela = 'KREDITTIPOPOMENA'
  75716.        Begin
  75717.         If @Nacin = 'SLEDEN'
  75718.             SELECT Top 1 @SlednaSifra=Tip_Opomena, @SlednoIme=ImeTipOpomena
  75719.             FROM KreditTipOpomena WITH(NOLOCK)
  75720.             WHERE Tip_Opomena>@Sifra
  75721.             ORDER BY Tip_Opomena ASC
  75722.         Else If @Nacin = 'PRETHODEN'
  75723.             SELECT Top 1 @SlednaSifra=Tip_Opomena, @SlednoIme=ImeTipOpomena
  75724.             FROM KreditTipOpomena WITH(NOLOCK)
  75725.             WHERE Tip_Opomena<@Sifra
  75726.             ORDER BY Tip_Opomena DESC
  75727.         Else If @Nacin = 'TOCEN'
  75728.             SELECT @SlednaSifra=Tip_Opomena, @SlednoIme=ImeTipOpomena
  75729.             FROM KreditTipOpomena WITH(NOLOCK)
  75730.             WHERE Tip_Opomena=@Sifra
  75731.        End
  75732.         Else If @Tabela = 'OSNGRPODEL'
  75733.        Begin
  75734.         If @Nacin = 'SLEDEN'
  75735.             SELECT Top 1 @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  75736.             FROM OsnGrPodel WITH(NOLOCK)
  75737.             WHERE Sifra_OsnGrPodel>@Sifra
  75738.             ORDER BY Sifra_OsnGrPodel ASC
  75739.         Else If @Nacin = 'PRETHODEN'
  75740.             SELECT Top 1 @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  75741.             FROM OsnGrPodel WITH(NOLOCK)
  75742.             WHERE Sifra_OsnGrPodel<@Sifra
  75743.             ORDER BY Sifra_OsnGrPodel DESC
  75744.         Else If @Nacin = 'TOCEN'
  75745.             SELECT @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  75746.             FROM OsnGrPodel WITH(NOLOCK)
  75747.             WHERE Sifra_OsnGrPodel=@Sifra
  75748.        End
  75749.          Else If @Tabela = 'OSNPODELBI'
  75750.        Begin
  75751.         If @Nacin = 'SLEDEN'
  75752.             SELECT Top 1 @SlednaSifra=Sifra_OsnPodel, @SlednoIme=Vrednost
  75753.             FROM OsnPodelbi WITH(NOLOCK)
  75754.             WHERE Sifra_OsnPodel>@Sifra and Sifra_OsnGrPodel=@Sifra2
  75755.             ORDER BY Sifra_OsnPodel ASC
  75756.         Else If @Nacin = 'PRETHODEN'
  75757.             SELECT Top 1 @SlednaSifra=Sifra_OsnPodel, @SlednoIme=Vrednost
  75758.             FROM OsnPodelbi WITH(NOLOCK)
  75759.             WHERE Sifra_OsnPodel<@Sifra and Sifra_OsnGrPodel=@Sifra2
  75760.             ORDER BY Sifra_OsnPodel DESC
  75761.         Else If @Nacin = 'TOCEN'
  75762.             SELECT @SlednaSifra=Sifra_OsnPodel, @SlednoIme=Vrednost
  75763.             FROM OsnPodelbi WITH(NOLOCK)
  75764.             WHERE Sifra_OsnPodel=@Sifra and Sifra_OsnGrPodel=@Sifra2
  75765.        End 
  75766.          Else If @Tabela = 'TROSOKVID'
  75767.        Begin
  75768.         If @Nacin = 'SLEDEN'
  75769.             SELECT Top 1 @SlednaSifra=Sifra_TrosV, @SlednoIme=ImeTrosV
  75770.             FROM TROSOKVID WITH(NOLOCK)
  75771.             WHERE Sifra_TrosV>@Sifra
  75772.             ORDER BY Sifra_TrosV ASC
  75773.         Else If @Nacin = 'PRETHODEN'
  75774.             SELECT Top 1 @SlednaSifra=Sifra_TrosV, @SlednoIme=ImeTrosV
  75775.             FROM TROSOKVID WITH(NOLOCK)
  75776.             WHERE Sifra_TrosV<@Sifra
  75777.             ORDER BY Sifra_TrosV DESC
  75778.         Else If @Nacin = 'TOCEN'
  75779.             SELECT @SlednaSifra=Sifra_TrosV, @SlednoIme=ImeTrosV
  75780.             FROM TROSOKVID WITH(NOLOCK)
  75781.             WHERE Sifra_TrosV=@Sifra
  75782.        End
  75783.      Else If @Tabela = 'TROSOKMESTO'
  75784.        Begin
  75785.         If @Nacin = 'SLEDEN'
  75786.             SELECT Top 1 @SlednaSifra=Sifra_TrosM, @SlednoIme=ImeTrosM
  75787.             FROM TROSOKMESTO WITH(NOLOCK)
  75788.             WHERE Sifra_TrosM>@Sifra
  75789.             ORDER BY Sifra_TrosM ASC
  75790.         Else If @Nacin = 'PRETHODEN'
  75791.             SELECT Top 1 @SlednaSifra=Sifra_TrosM, @SlednoIme=ImeTrosM
  75792.             FROM TROSOKMESTO WITH(NOLOCK)
  75793.             WHERE Sifra_TrosM<@Sifra
  75794.             ORDER BY Sifra_TrosM DESC
  75795.         Else If @Nacin = 'TOCEN'
  75796.             SELECT @SlednaSifra=Sifra_TrosM, @SlednoIme=ImeTrosM
  75797.             FROM TROSOKMESTO WITH(NOLOCK)
  75798.             WHERE Sifra_TrosM=@Sifra
  75799.        end
  75800.      Else If @Tabela = 'TROSOK4TIP'
  75801.        Begin
  75802.         If @Nacin = 'SLEDEN'
  75803.             SELECT Top 1 @SlednaSifra=Sifra_4Tros, @SlednoIme=Ime4Tros
  75804.             FROM TROSOK4TIP WITH(NOLOCK)
  75805.             WHERE Sifra_4Tros>@Sifra
  75806.             ORDER BY Sifra_4Tros ASC
  75807.         Else If @Nacin = 'PRETHODEN'
  75808.             SELECT Top 1 @SlednaSifra=Sifra_4Tros, @SlednoIme=Ime4Tros
  75809.             FROM TROSOK4TIP WITH(NOLOCK)
  75810.             WHERE Sifra_4Tros<@Sifra
  75811.             ORDER BY Sifra_4Tros DESC
  75812.         Else If @Nacin = 'TOCEN'
  75813.             SELECT @SlednaSifra=Sifra_4Tros, @SlednoIme=Ime4Tros
  75814.             FROM TROSOK4TIP WITH(NOLOCK)
  75815.             WHERE Sifra_4Tros=@Sifra
  75816.        End
  75817.     Else If @Tabela = 'GRKUP'
  75818.        Begin        
  75819.         If @Nacin = 'SLEDEN'
  75820.             SELECT Top 1 @SlednaSifra=Sif_GrKup, @SlednoIme=Ime_GrKup
  75821.             FROM GrKup WITH(NOLOCK)
  75822.             WHERE Sif_GrKup >@Sifra
  75823.             ORDER BY Sif_GrKup ASC
  75824.         Else If @Nacin = 'PRETHODEN'
  75825.             SELECT Top 1 @SlednaSifra=Sif_GrKup, @SlednoIme=Ime_GrKup
  75826.             FROM  GrKup WITH(NOLOCK)
  75827.             WHERE Sif_GrKup<@Sifra
  75828.             ORDER BY Sif_GrKup DESC
  75829.         Else If @Nacin = 'TOCEN'
  75830.             SELECT @SlednaSifra=Sif_GrKup, @SlednoIme=Ime_GrKup
  75831.             FROM GrKup WITH(NOLOCK)
  75832.             WHERE Sif_GrKup=@Sifra
  75833.         End
  75834.     Else If @Tabela = 'SPREMAC'
  75835.        Begin        
  75836.         If @Nacin = 'SLEDEN'
  75837.             SELECT Top 1 @SlednaSifra=Sif_Spremac, @SlednoIme=ImeSpremac
  75838.             FROM Spremac WITH(NOLOCK)
  75839.             WHERE Sif_Spremac >@Sifra
  75840.             ORDER BY Sif_Spremac ASC
  75841.         Else If @Nacin = 'PRETHODEN'
  75842.             SELECT Top 1 @SlednaSifra=Sif_Spremac, @SlednoIme=ImeSpremac
  75843.             FROM Spremac WITH(NOLOCK)
  75844.             WHERE Sif_Spremac<@Sifra
  75845.             ORDER BY Sif_Spremac DESC
  75846.         Else If @Nacin = 'TOCEN'
  75847.             SELECT @SlednaSifra=Sif_Spremac, @SlednoIme=ImeSpremac
  75848.             FROM Spremac WITH(NOLOCK)
  75849.             WHERE Sif_Spremac=@Sifra
  75850.       End
  75851.     Else If @Tabela = 'BOJA'
  75852.        Begin        
  75853.         If @Nacin = 'SLEDEN'
  75854.             SELECT Top 1 @SlednaSifra=Sifra_Boja, @SlednoIme=ImeBoja
  75855.             FROM Boja WITH(NOLOCK)
  75856.             WHERE Sifra_Boja >@Sifra
  75857.             ORDER BY Sifra_Boja ASC
  75858.         Else If @Nacin = 'PRETHODEN'
  75859.             SELECT Top 1 @SlednaSifra=Sifra_Boja, @SlednoIme=ImeBoja
  75860.             FROM Boja WITH(NOLOCK)
  75861.             WHERE Sifra_Boja<@Sifra
  75862.             ORDER BY Sifra_Boja DESC
  75863.         Else If @Nacin = 'TOCEN'
  75864.             SELECT @SlednaSifra=Sifra_Boja, @SlednoIme=ImeBoja
  75865.             FROM Boja WITH(NOLOCK)
  75866.             WHERE Sifra_Boja=@Sifra
  75867.         End
  75868.     Else If @Tabela = 'VELICINA'
  75869.        Begin        
  75870.         If @Nacin = 'SLEDEN'
  75871.             SELECT Top 1 @SlednaSifra=Sifra_Velic, @SlednoIme=ImeVelic
  75872.             FROM Velicina WITH(NOLOCK)
  75873.             WHERE Sifra_Velic >@Sifra
  75874.             ORDER BY Sifra_Velic ASC
  75875.         Else If @Nacin = 'PRETHODEN'
  75876.             SELECT Top 1 @SlednaSifra=Sifra_Velic, @SlednoIme=ImeVelic
  75877.             FROM Velicina WITH(NOLOCK)
  75878.             WHERE Sifra_Velic<@Sifra
  75879.             ORDER BY Sifra_Velic DESC
  75880.         Else If @Nacin = 'TOCEN'
  75881.             SELECT @SlednaSifra=Sifra_Velic, @SlednoIme=ImeVelic
  75882.             FROM Velicina WITH(NOLOCK)
  75883.             WHERE Sifra_Velic=@Sifra
  75884.         End
  75885.     Else If @Tabela = 'VELICSKALA'
  75886.        Begin        
  75887.         If @Nacin = 'SLEDEN'
  75888.             SELECT Top 1 @SlednaSifra=Sifra_VelSkala, @SlednoIme=Ime_VelSkala
  75889.             FROM VelicSkala WITH(NOLOCK)
  75890.             WHERE Sifra_VelSkala >@Sifra
  75891.             ORDER BY Sifra_VelSkala ASC
  75892.         Else If @Nacin = 'PRETHODEN'
  75893.             SELECT Top 1 @SlednaSifra=Sifra_VelSkala, @SlednoIme=Ime_VelSkala
  75894.             FROM VelicSkala WITH(NOLOCK)
  75895.             WHERE Sifra_VelSkala<@Sifra
  75896.             ORDER BY Sifra_VelSkala DESC
  75897.         Else If @Nacin = 'TOCEN'
  75898.             SELECT @SlednaSifra=Sifra_VelSkala, @SlednoIme=Ime_VelSkala
  75899.             FROM VelicSkala WITH(NOLOCK)
  75900.             WHERE Sifra_VelSkala=@Sifra
  75901.         End    
  75902.      Else If @Tabela = 'KATSPECTIPMAT'
  75903.         Begin        
  75904.          If @Nacin = 'SLEDEN'
  75905.             SELECT Top 1 @SlednaSifra=Sifra_TipMat, @SlednoIme=ImeTipMat
  75906.             FROM KATSPECTIPMAT WITH(NOLOCK)
  75907.             WHERE Sifra_TipMat>@Sifra
  75908.             ORDER BY Sifra_TipMat ASC
  75909.          Else If @Nacin = 'TOCEN'
  75910.             SELECT @SlednaSifra=Sifra_TipMat, @SlednoIme=ImeTipMat
  75911.             FROM KATSPECTIPMAT WITH(NOLOCK)
  75912.             WHERE Sifra_TipMat=@Sifra
  75913.          End 
  75914.      Else If @Tabela = 'DBUSERS'
  75915.          Begin
  75916.           If @Nacin = 'TOCEN'
  75917.             SELECT @SlednaSifra=Name, @SlednoIme=UID
  75918.             FROM SysUsers
  75919.             WHERE Name=@Sifra AND IsSqlUser=1
  75920.           End
  75921. --     else If @Tabela = 'MCKATPOZICIJA'
  75922. --       Begin        
  75923. --        If @Nacin = 'SLEDEN'
  75924. --            SELECT Top 1 @SlednaSifra=Sif_MCPozicija, @SlednoIme=ImeMCPozicija
  75925. --            FROM MCKatPozicija WITH(NOLOCK)
  75926. --            WHERE Sif_MCPozicija >@Sifra
  75927. --            ORDER BY Sif_MCPozicija ASC
  75928. --        Else If @Nacin = 'PRETHODEN'
  75929. --            SELECT Top 1 @SlednaSifra=Sif_MCPozicija, @SlednoIme=ImeMCPozicija
  75930. --            FROM MCKatPozicija WITH(NOLOCK)
  75931. --            WHERE Sif_MCPozicija<@Sifra
  75932. --            ORDER BY Sif_MCPozicija DESC
  75933. --        Else If @Nacin = 'TOCEN'
  75934. --            SELECT @SlednaSifra=Sif_MCPozicija, @SlednoIme=ImeMCPozicija
  75935. --            FROM MCKatPozicija
  75936. --            WHERE Sif_MCPozicija=@Sifra
  75937. --        End
  75938.        
  75939.    IF @@ERROR=0 AND @@ROWCOUNT=0
  75940.       RETURN 77000
  75941.    ELSE
  75942.       RETURN @@ERROR
  75943.  
  75944.  
  75945.  
  75946.  
  75947.  
  75948.  
  75949.  
  75950.  
  75951.  
  75952.  
  75953. Go
  75954. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden_alt]'))
  75955. drop procedure [dbo].[sp_lkpsleden_alt]
  75956.  
  75957. Go
  75958.  
  75959. CREATE    PROCEDURE [dbo].[sp_lkpSleden_Alt]
  75960.     @Sifra        VARCHAR(20),
  75961.     @Tabela        VARCHAR(20),
  75962.     @Nacin        VARCHAR(10),
  75963.     @AlfaMoze    char(1) = 'N',
  75964.     @Sifra2        VARCHAR(20)=null,
  75965.     @SlednaSifra    VARCHAR(20) OUTPUT,
  75966.     @SlednoIme    nVARCHAR(70) OUTPUT,
  75967.     @SlednoIme2    nVARCHAR(70) = Null OUTPUT,
  75968.            @Filter        nvarchar(20) = NULL
  75969.  
  75970. AS
  75971.  
  75972.    Declare @Greska Int
  75973.    Declare @IntSifra Int
  75974.    Set @Tabela=Upper(@Tabela)
  75975.    Set @Nacin=Upper(@Nacin)
  75976.     If @AlfaMoze <> 'D' AND len(@Sifra)<10 AND @Tabela <> 'VOZILA'  
  75977.          Set @IntSifra = CONVERT(Int, @Sifra)
  75978.  
  75979.     If @Tabela = 'VOZILA'
  75980.        Begin
  75981.         If @Nacin = 'SLEDEN'
  75982.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=KomOznaka
  75983.             FROM Vozila WITH(NOLOCK)
  75984.             WHERE Sifra_Art>@Sifra
  75985.             ORDER BY Sifra_Art ASC
  75986.         Else If @Nacin = 'PRETHODEN'
  75987.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=KomOznaka
  75988.             FROM Vozila WITH(NOLOCK)
  75989.             WHERE Sifra_Art<@Sifra
  75990.             ORDER BY Sifra_Art DESC
  75991.         Else If @Nacin = 'TOCEN'
  75992.             SELECT @SlednaSifra=Sifra_Art, @SlednoIme=KomOznaka
  75993.             FROM Vozila WITH(NOLOCK)
  75994.             WHERE Sifra_Art=@Sifra
  75995.        End
  75996.  
  75997.    IF @@ERROR=0 AND @@ROWCOUNT=0
  75998.       RETURN 77000
  75999.    ELSE
  76000.       RETURN @@ERROR
  76001.  
  76002.  
  76003.  
  76004.  
  76005. Go
  76006. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden_ime]'))
  76007. drop procedure [dbo].[sp_lkpsleden_ime]
  76008.  
  76009. Go
  76010.  
  76011.  
  76012.  
  76013.  
  76014.  
  76015. --    Opis na Parametri
  76016. --    @Ime: Najmnogu 40 Karakteri.
  76017. --
  76018. --    @Tabela: Ime na tabelata po koja prebaruvame, case-sensitive.
  76019. --        Prifakja: Katart, Podgrupi, Grupi, Tarifi, Komint
  76020. --    @Nacin: Nacin na prebaruvanje.
  76021. --        Prifakja: Sleden, SledenEdnakov, Prethoden
  76022. --    @SlednaSifra: povraten parametar
  76023. --    @SlednoIme: povraten parametar
  76024. CREATE                 PROCEDURE [dbo].[sp_lkpSleden_Ime]
  76025.     @Ime VARCHAR(70),        --ne stavaj nvarchar zatoa sto ne raboti sledenednakov 
  76026.     @Tabela VARCHAR(20),
  76027.     @Nacin VARCHAR(15),
  76028.     @SlednaSifra VARCHAR(20) OUTPUT,
  76029.     @SlednoIme nVARCHAR(70) OUTPUT,
  76030.     @SlednoIme2 nVARCHAR(70) = Null OUTPUT,
  76031.     @OpcPrethSifra VARCHAR(20) = Null,
  76032.     @Filter        nvarchar(20)=NULL
  76033. AS
  76034.     Declare @Greska Int
  76035.     If @Nacin = 'SledenEdnakov'
  76036.         Set @Ime =  Replace(@Ime, '[', '[[]') 
  76037.     Set @Ime = Ltrim(Rtrim(@Ime))
  76038.              Set @Tabela = Upper(@Tabela)
  76039.  
  76040.      If @Tabela = 'KATART'
  76041.        Begin
  76042.         If @Nacin = 'Sleden'
  76043.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt, @SlednoIme2=ImeArt2
  76044.             FROM KatArt WITH(NOLOCK)
  76045.             WHERE ImeArt>@Ime or (ImeArt=@Ime and @OpcPrethSifra is not null and Sifra_art > @OpcPrethSifra)
  76046.             ORDER BY ImeArt, Sifra_Art ASC
  76047.         Else If @Nacin = 'SledenEdnakov'
  76048.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt, @SlednoIme2=ImeArt2
  76049.             FROM KatArt WITH(NOLOCK)
  76050.             WHERE ImeArt>=@Ime
  76051.             ORDER BY ImeArt, Sifra_Art ASC        
  76052.         Else If @Nacin = 'Prethoden'
  76053.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt, @SlednoIme2=ImeArt2
  76054.             FROM KatArt WITH(NOLOCK)
  76055.             WHERE ImeArt<@Ime or (ImeArt=@Ime and @OpcPrethSifra is not null and Sifra_art < @OpcPrethSifra)
  76056.             ORDER BY ImeArt DESC, Sifra_Art DESC
  76057.        End
  76058.     Else If @Tabela = 'PODGRUPI'
  76059.        Begin
  76060.         If @Nacin = 'Sleden'
  76061.             SELECT Top 1 @SlednaSifra=Sifra_Podg, @SlednoIme=Ime_Podg 
  76062.             FROM Podgrupi WITH(NOLOCK)
  76063.             WHERE Ime_Podg>@Ime
  76064.             ORDER BY Ime_Podg ASC, Sifra_Podg ASC
  76065.         Else If @Nacin = 'SledenEdnakov'
  76066.             SELECT Top 1 @SlednaSifra=Sifra_Podg, @SlednoIme=Ime_Podg 
  76067.             FROM Podgrupi WITH(NOLOCK)
  76068.             WHERE Ime_Podg>=@Ime
  76069.             ORDER BY Ime_Podg ASC, Sifra_Podg ASC
  76070.         Else If @Nacin = 'Prethoden'
  76071.             SELECT Top 1 @SlednaSifra=Sifra_Podg, @SlednoIme=Ime_Podg 
  76072.             FROM Podgrupi WITH(NOLOCK)
  76073.             WHERE Ime_Podg<@Ime
  76074.             ORDER BY Ime_Podg DESC, Sifra_Podg DESC
  76075.        End
  76076.     Else If @Tabela = 'GRUPI'
  76077.        Begin
  76078.         If @Nacin = 'Sleden'
  76079.             SELECT Top 1 @SlednaSifra=Sifra_Gr, @SlednoIme=Ime_Gr 
  76080.             FROM Grupi WITH(NOLOCK)
  76081.             WHERE Ime_Gr>@Ime
  76082.             ORDER BY Ime_Gr ASC, Sifra_Gr ASC
  76083.         Else If @Nacin = 'SledenEdnakov'
  76084.             SELECT Top 1 @SlednaSifra=Sifra_Gr, @SlednoIme=Ime_Gr 
  76085.             FROM Grupi WITH(NOLOCK)
  76086.             WHERE Ime_Gr>=@Ime
  76087.             ORDER BY Ime_Gr ASC, Sifra_Gr ASC
  76088.         Else If @Nacin = 'Prethoden'
  76089.             SELECT Top 1 @SlednaSifra=Sifra_Gr, @SlednoIme=Ime_Gr 
  76090.             FROM Grupi WITH(NOLOCK)
  76091.             WHERE Ime_Gr<@Ime
  76092.             ORDER BY Ime_Gr DESC, Sifra_Gr DESC
  76093.        End
  76094.     Else If @Tabela = 'TARIFI'
  76095.        Begin
  76096.         If @Nacin = 'Sleden'
  76097.             SELECT Top 1 @SlednaSifra=Sifra_Tar, @SlednoIme=ImeTar 
  76098.             FROM Tarifi WITH(NOLOCK)
  76099.             WHERE ImeTar>@Ime
  76100.             ORDER BY ImeTar ASC, Sifra_Tar ASC
  76101.         Else If @Nacin = 'SledenEdnakov'
  76102.             SELECT Top 1 @SlednaSifra=Sifra_Tar, @SlednoIme=ImeTar 
  76103.             FROM Tarifi WITH(NOLOCK)
  76104.             WHERE ImeTar>=@Ime
  76105.             ORDER BY ImeTar ASC, Sifra_Tar ASC
  76106.         Else If @Nacin = 'Prethoden'
  76107.             SELECT Top 1 @SlednaSifra=Sifra_Tar, @SlednoIme=ImeTar 
  76108.             FROM Tarifi WITH(NOLOCK)
  76109.             WHERE ImeTar<@Ime
  76110.             ORDER BY ImeTar DESC, Sifra_Tar DESC
  76111.        End
  76112.     Else If @Tabela = 'KOMINT'
  76113.        Begin
  76114.         If @Nacin = 'Sleden'
  76115.             SELECT Top 1 @SlednaSifra=Sifra_Kup, @SlednoIme=RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25))+ ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))
  76116.             FROM Komint WITH(NOLOCK)
  76117.             WHERE RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25))+ ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))>@Ime
  76118.             ORDER BY ImeKup ASC, Sifra_Kup ASC
  76119.         Else If @Nacin = 'SledenEdnakov'
  76120.             SELECT Top 1 @SlednaSifra=Sifra_Kup, @SlednoIme=RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25))+ ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))
  76121.             FROM Komint WITH(NOLOCK)
  76122.             WHERE RTrim(ImeKup)+ ' /' + IsNull(RTrim(SMesto),'') + ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))>=@Ime
  76123.             ORDER BY ImeKup ASC
  76124.         Else If @Nacin = 'Prethoden'
  76125.             SELECT Top 1 @SlednaSifra=Sifra_Kup, @SlednoIme=RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25))+ ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))
  76126.             FROM Komint WITH(NOLOCK)
  76127.             WHERE RTrim(ImeKup)+ ' /' + Cast(IsNull(SMesto, '') as Varchar(25))+ ' ' + Cast(IsNull(Sifra_Pat, '') As Varchar(6))<@Ime
  76128.             ORDER BY ImeKup DESC, Sifra_Kup DESC
  76129.        End
  76130.     Else If @Tabela = 'TIPDOK'
  76131.        Begin
  76132.         If @Nacin = 'Sleden'
  76133.             SELECT Top 1 @SlednaSifra=Sifra_Dok, @SlednoIme=ImeDok
  76134.             FROM TipDok WITH(NOLOCK)
  76135.             WHERE ImeDok>@Ime             ORDER BY ImeDok ASC, Sifra_Dok ASC
  76136.         Else If @Nacin = 'SledenEdnakov'
  76137.             SELECT Top 1 @SlednaSifra=Sifra_Dok, @SlednoIme=ImeDok
  76138.             FROM TipDok WITH(NOLOCK)
  76139.             WHERE ImeDok>=@Ime
  76140.             ORDER BY ImeDok ASC
  76141.         Else If @Nacin = 'Prethoden'
  76142.             SELECT Top 1 @SlednaSifra=Sifra_Dok, @SlednoIme=ImeDok
  76143.             FROM TipDok WITH(NOLOCK)
  76144.             WHERE ImeDok<@Ime             ORDER BY ImeDok DESC, Sifra_Dok DESC
  76145.        End
  76146.     Else If @Tabela = 'TIPNARAC'
  76147.        Begin
  76148.         If @Nacin = 'Sleden'
  76149.             SELECT Top 1 @SlednaSifra=Sifra_Nar, @SlednoIme=ImeNar
  76150.             FROM TipNarac WITH(NOLOCK)
  76151.             WHERE ImeNar>@Ime             ORDER BY ImeNar ASC, Sifra_Nar ASC
  76152.         Else If @Nacin = 'SledenEdnakov'
  76153.             SELECT Top 1 @SlednaSifra=Sifra_Nar, @SlednoIme=ImeNar
  76154.             FROM TipNarac WITH(NOLOCK)
  76155.             WHERE ImeNar>=@Ime
  76156.             ORDER BY ImeNar ASC
  76157.         Else If @Nacin = 'Prethoden'
  76158.             SELECT Top 1 @SlednaSifra=Sifra_Nar, @SlednoIme=ImeNar
  76159.             FROM TipNarac WITH(NOLOCK)
  76160.             WHERE ImeNar<@Ime             ORDER BY ImeNar DESC, Sifra_Nar DESC
  76161.        End
  76162.     Else If @Tabela = 'TIPNAL'
  76163.        Begin
  76164.         If @Nacin = 'Sleden'
  76165.             SELECT Top 1 @SlednaSifra=Sifra_Nal, @SlednoIme=ImeNal
  76166.             FROM TipNal WITH(NOLOCK)
  76167.             WHERE ImeNal>@Ime
  76168.             ORDER BY ImeNal ASC, Sifra_Nal ASC
  76169.         Else If @Nacin = 'SledenEdnakov'
  76170.             SELECT Top 1 @SlednaSifra=Sifra_Nal, @SlednoIme=ImeNal
  76171.             FROM TipNal WITH(NOLOCK)
  76172.             WHERE ImeNal>=@Ime
  76173.             ORDER BY ImeNal ASC
  76174.         Else If @Nacin = 'Prethoden'
  76175.             SELECT Top 1 @SlednaSifra=Sifra_Nal, @SlednoIme=ImeNal
  76176.             FROM TipNal WITH(NOLOCK)
  76177.             WHERE ImeNal<@Ime
  76178.             ORDER BY ImeNal DESC, Sifra_Nal DESC
  76179.        End
  76180.     Else If @Tabela = 'ORGED'
  76181.        Begin
  76182.         If @Nacin = 'Sleden'
  76183.             SELECT Top 1 @SlednaSifra=Sifra_OE, @SlednoIme=ImeOrg
  76184.             FROM Orged WITH(NOLOCK)
  76185.             WHERE ImeOrg>@Ime
  76186.             ORDER BY ImeOrg ASC, Sifra_OE ASC
  76187.         Else If @Nacin = 'SledenEdnakov'
  76188.             SELECT Top 1 @SlednaSifra=Sifra_OE, @SlednoIme=ImeOrg
  76189.             FROM Orged WITH(NOLOCK)
  76190.             WHERE ImeOrg>=@Ime
  76191.             ORDER BY ImeOrg ASC
  76192.         Else If @Nacin = 'Prethoden'
  76193.             SELECT Top 1 @SlednaSifra=Sifra_OE, @SlednoIme=ImeOrg
  76194.             FROM Orged WITH(NOLOCK)
  76195.             WHERE ImeOrg<@Ime
  76196.             ORDER BY ImeOrg DESC, Sifra_OE DESC
  76197.        End
  76198.     Else If @Tabela = 'GREGION'
  76199.        Begin
  76200.         If @Nacin = 'Sleden'
  76201.             SELECT Top 1 @SlednaSifra=Sifra_reg, @SlednoIme=ImeRegion
  76202.             FROM GRegion WITH(NOLOCK)
  76203.             WHERE ImeRegion>@Ime
  76204.             ORDER BY ImeRegion ASC, Sifra_reg ASC
  76205.         Else If @Nacin = 'SledenEdnakov'
  76206.             SELECT Top 1 @SlednaSifra=Sifra_reg, @SlednoIme=ImeRegion
  76207.             FROM GRegion WITH(NOLOCK)
  76208.             WHERE ImeRegion>=@Ime
  76209.             ORDER BY ImeRegion ASC
  76210.         Else If @Nacin = 'Prethoden'
  76211.             SELECT Top 1 @SlednaSifra=Sifra_reg, @SlednoIme=ImeRegion
  76212.             FROM GRegion WITH(NOLOCK)
  76213.             WHERE ImeRegion<@Ime
  76214.             ORDER BY ImeRegion DESC, Sifra_reg DESC
  76215.        End
  76216.     Else If @Tabela = 'PATNICI'
  76217.        Begin
  76218.         If @Nacin = 'Sleden'
  76219.             SELECT Top 1 @SlednaSifra=Sifra_Pat, @SlednoIme=ImePat
  76220.             FROM Patnici WITH(NOLOCK)
  76221.             WHERE ImePat>@Ime
  76222.             ORDER BY ImePat ASC, Sifra_Pat ASC
  76223.         Else If @Nacin = 'SledenEdnakov'
  76224.             SELECT Top 1 @SlednaSifra=Sifra_Pat, @SlednoIme=ImePat
  76225.             FROM Patnici WITH(NOLOCK)
  76226.             WHERE ImePat>=@Ime
  76227.             ORDER BY ImePat ASC
  76228.         Else If @Nacin = 'Prethoden'
  76229.             SELECT Top 1 @SlednaSifra=Sifra_Pat, @SlednoIme=ImePat
  76230.             FROM Patnici WITH(NOLOCK)
  76231.             WHERE ImePat<@Ime
  76232.             ORDER BY ImePat DESC, Sifra_Pat DESC    
  76233.        End
  76234.     Else If @Tabela = 'MARKETI'
  76235.        Begin
  76236.         If @Nacin = 'Sleden'
  76237.             SELECT Top 1 @SlednaSifra=Sifra_Mark, @SlednoIme=ImeMark
  76238.             FROM Marketi WITH(NOLOCK)
  76239.             WHERE ImeMark>@Ime
  76240.             ORDER BY ImeMark ASC, Sifra_Mark ASC
  76241.         Else If @Nacin = 'SledenEdnakov'
  76242.             SELECT Top 1 @SlednaSifra=Sifra_Mark, @SlednoIme=ImeMark
  76243.             FROM Marketi WITH(NOLOCK)
  76244.             WHERE ImeMark>=@Ime
  76245.             ORDER BY ImeMark ASC
  76246.         Else If @Nacin = 'Prethoden'
  76247.             SELECT Top 1 @SlednaSifra=Sifra_Mark, @SlednoIme=ImeMark
  76248.             FROM Marketi WITH(NOLOCK)
  76249.             WHERE ImeMark<@Ime
  76250.             ORDER BY ImeMark DESC, Sifra_Mark DESC
  76251.                  End
  76252.     Else If @Tabela = 'DRGPODEL'
  76253.        Begin
  76254.         If @Nacin = 'Sleden'
  76255.             SELECT Top 1 @SlednaSifra=Sifra_Drg, @SlednoIme=Ime
  76256.             FROM DrgPodel WITH(NOLOCK)
  76257.             WHERE Ime>@Ime
  76258.             ORDER BY Ime ASC, Sifra_Drg ASC
  76259.         Else If @Nacin = 'SledenEdnakov'
  76260.             SELECT Top 1 @SlednaSifra=Sifra_Drg, @SlednoIme=Ime
  76261.             FROM DrgPodel WITH(NOLOCK)
  76262.             WHERE Ime>=@Ime
  76263.             ORDER BY Ime ASC
  76264.         Else If @Nacin = 'Prethoden'
  76265.             SELECT Top 1 @SlednaSifra=Sifra_Drg, @SlednoIme=Ime
  76266.             FROM DrgPodel WITH(NOLOCK)
  76267.             WHERE Ime<@Ime
  76268.             ORDER BY Ime DESC, Sifra_Drg DESC
  76269.        End
  76270.             Else If @Tabela = 'GRORG'
  76271.        Begin        
  76272.         If @Nacin = 'SLEDEN'
  76273.             SELECT Top 1 @SlednaSifra=Sif_grOrg, @SlednoIme=Ime_GrOrg
  76274.             FROM GrOrg WITH(NOLOCK)
  76275.             WHERE Sif_grOrg >@Ime
  76276.             ORDER BY Sif_grOrg ASC
  76277.         Else If @Nacin = 'PRETHODEN'
  76278.             SELECT Top 1 @SlednaSifra=Sif_grOrg, @SlednoIme=Ime_GrOrg
  76279.             FROM  GrOrg WITH(NOLOCK)
  76280.             WHERE Sif_grOrg<@Ime
  76281.             ORDER BY Sif_grOrg DESC
  76282.         Else If @Nacin = 'TOCEN'
  76283.             SELECT @SlednaSifra=Sif_grOrg, @SlednoIme=Ime_GrOrg
  76284.             FROM GrOrg WITH(NOLOCK)
  76285.             WHERE Sif_grOrg=@Ime
  76286.                  End
  76287.     Else If @Tabela = 'DRGPODEL1'
  76288.        Begin
  76289.         If @Nacin = 'Sleden'
  76290.             SELECT Top 1 @SlednaSifra=Sifra_Drg1, @SlednoIme=Ime_Drg1
  76291.             FROM DrgPodel1 WITH(NOLOCK)
  76292.             WHERE Ime_Drg1>@Ime
  76293.             ORDER BY Ime_Drg1 ASC, Sifra_Drg1 ASC
  76294.         Else If @Nacin = 'SledenEdnakov'
  76295.             SELECT Top 1 @SlednaSifra=Sifra_Drg1, @SlednoIme=Ime_Drg1
  76296.             FROM DrgPodel1 WITH(NOLOCK)
  76297.             WHERE Ime_Drg1>=@Ime
  76298.             ORDER BY Ime_Drg1 ASC
  76299.         Else If @Nacin = 'Prethoden'
  76300.             SELECT Top 1 @SlednaSifra=Sifra_Drg1, @SlednoIme=Ime_Drg1
  76301.             FROM DrgPodel1 WITH(NOLOCK)
  76302.             WHERE Ime_Drg1<@Ime
  76303.             ORDER BY Ime_Drg1 DESC, Sifra_Drg1 DESC
  76304.        End
  76305.     Else If @Tabela = 'DRUGO1'
  76306.        Begin
  76307.         If @Nacin = 'Sleden'
  76308.             SELECT Top 1 @SlednaSifra=Sifra_1, @SlednoIme=Ime_1
  76309.             FROM Drugo1 WITH(NOLOCK)
  76310.             WHERE Ime_1>@Ime
  76311.             ORDER BY Ime_1 ASC, Sifra_1 ASC
  76312.         Else If @Nacin = 'SledenEdnakov'
  76313.             SELECT Top 1 @SlednaSifra=Sifra_1, @SlednoIme=Ime_1
  76314.             FROM Drugo1 WITH(NOLOCK)
  76315.             WHERE Ime_1>=@Ime
  76316.             ORDER BY Ime_1 ASC
  76317.         Else If @Nacin = 'Prethoden'
  76318.             SELECT Top 1 @SlednaSifra=Sifra_1, @SlednoIme=Ime_1
  76319.             FROM Drugo1 WITH(NOLOCK)
  76320.             WHERE Ime_1<@Ime
  76321.             ORDER BY Ime_1 DESC, Sifra_1 DESC
  76322.        End
  76323.     Else If @Tabela = 'DRUGO2'
  76324.        Begin
  76325.         If @Nacin = 'Sleden'
  76326.             SELECT Top 1 @SlednaSifra=Sifra_2, @SlednoIme=Ime_2
  76327.             FROM Drugo2 WITH(NOLOCK)
  76328.             WHERE Ime_2>@Ime
  76329.             ORDER BY Ime_2 ASC, Sifra_2 ASC
  76330.         Else If @Nacin = 'SledenEdnakov'
  76331.             SELECT Top 1 @SlednaSifra=Sifra_2, @SlednoIme=Ime_2
  76332.             FROM Drugo2 WITH(NOLOCK)
  76333.             WHERE Ime_2>=@Ime
  76334.             ORDER BY Ime_2 ASC
  76335.         Else If @Nacin = 'Prethoden'
  76336.             SELECT Top 1 @SlednaSifra=Sifra_2, @SlednoIme=Ime_2
  76337.             FROM Drugo2 WITH(NOLOCK)
  76338.             WHERE Ime_2<@Ime
  76339.             ORDER BY Ime_2 DESC, Sifra_2 DESC
  76340.        End
  76341.     Else If @Tabela = 'DRUGO3'
  76342.        Begin
  76343.         If @Nacin = 'Sleden'
  76344.             SELECT Top 1 @SlednaSifra=Sifra_3, @SlednoIme=Ime_3
  76345.             FROM Drugo3 WITH(NOLOCK)
  76346.             WHERE Ime_3>@Ime
  76347.             ORDER BY Ime_3 ASC, Sifra_3 ASC
  76348.         Else If @Nacin = 'SledenEdnakov'
  76349.             SELECT Top 1 @SlednaSifra=Sifra_3, @SlednoIme=Ime_3
  76350.             FROM Drugo3 WITH(NOLOCK)
  76351.             WHERE Ime_3>=@Ime
  76352.             ORDER BY Ime_3 ASC
  76353.         Else If @Nacin = 'Prethoden'
  76354.             SELECT Top 1 @SlednaSifra=Sifra_3, @SlednoIme=Ime_3
  76355.             FROM Drugo3 WITH(NOLOCK)
  76356.             WHERE Ime_3<@Ime
  76357.             ORDER BY Ime_3 DESC, Sifra_3 DESC
  76358.        End
  76359.     Else If @Tabela = 'DRUGO4'
  76360.        Begin
  76361.         If @Nacin = 'Sleden'
  76362.             SELECT Top 1 @SlednaSifra=Sifra_4, @SlednoIme=Ime_4
  76363.             FROM Drugo4 WITH(NOLOCK)
  76364.             WHERE Ime_4>@Ime
  76365.             ORDER BY Ime_4 ASC, Sifra_4 ASC
  76366.         Else If @Nacin = 'SledenEdnakov'
  76367.             SELECT Top 1 @SlednaSifra=Sifra_4, @SlednoIme=Ime_4
  76368.             FROM Drugo4 WITH(NOLOCK)
  76369.             WHERE Ime_4>=@Ime
  76370.             ORDER BY Ime_4 ASC
  76371.         Else If @Nacin = 'Prethoden'
  76372.             SELECT Top 1 @SlednaSifra=Sifra_4, @SlednoIme=Ime_4
  76373.             FROM Drugo4 WITH(NOLOCK)
  76374.             WHERE Ime_4<@Ime
  76375.             ORDER BY Ime_4 DESC, Sifra_4 DESC
  76376.        End
  76377.     Else If @Tabela = 'DRUGO5'
  76378.        Begin
  76379.         If @Nacin = 'Sleden'
  76380.             SELECT Top 1 @SlednaSifra=Sifra_5, @SlednoIme=Ime_5
  76381.             FROM Drugo5 WITH(NOLOCK)
  76382.             WHERE Ime_5>@Ime
  76383.             ORDER BY Ime_5 ASC, Sifra_5 ASC
  76384.         Else If @Nacin = 'SledenEdnakov'
  76385.             SELECT Top 1 @SlednaSifra=Sifra_5, @SlednoIme=Ime_5
  76386.             FROM Drugo5 WITH(NOLOCK)
  76387.             WHERE Ime_5>=@Ime
  76388.             ORDER BY Ime_5 ASC
  76389.         Else If @Nacin = 'Prethoden'
  76390.             SELECT Top 1 @SlednaSifra=Sifra_5, @SlednoIme=Ime_5
  76391.             FROM Drugo5 WITH(NOLOCK)
  76392.             WHERE Ime_5<@Ime
  76393.             ORDER BY Ime_5 DESC, Sifra_5 DESC
  76394.        End
  76395.     Else If @Tabela = 'DRUGO6'
  76396.        Begin
  76397.         If @Nacin = 'Sleden'
  76398.             SELECT Top 1 @SlednaSifra=Sifra_6, @SlednoIme=Ime_6
  76399.             FROM Drugo6 WITH(NOLOCK)
  76400.             WHERE Ime_6>@Ime
  76401.             ORDER BY Ime_6 ASC, Sifra_6 ASC
  76402.         Else If @Nacin = 'SledenEdnakov'
  76403.             SELECT Top 1 @SlednaSifra=Sifra_6, @SlednoIme=Ime_6
  76404.             FROM Drugo6 WITH(NOLOCK)
  76405.             WHERE Ime_6>=@Ime
  76406.             ORDER BY Ime_6 ASC
  76407.         Else If @Nacin = 'Prethoden'
  76408.             SELECT Top 1 @SlednaSifra=Sifra_6, @SlednoIme=Ime_6
  76409.             FROM Drugo6 WITH(NOLOCK)
  76410.             WHERE Ime_6<@Ime
  76411.             ORDER BY Ime_6 DESC, Sifra_6 DESC
  76412.        End
  76413.         Else If @Tabela = 'DRUGO7'
  76414.        Begin
  76415.         If @Nacin = 'Sleden'
  76416.             SELECT Top 1 @SlednaSifra=Sifra_7, @SlednoIme=Ime_7
  76417.             FROM Drugo7 WITH(NOLOCK)
  76418.             WHERE Ime_7>@Ime
  76419.             ORDER BY Ime_7 ASC, Sifra_7 ASC
  76420.         Else If @Nacin = 'SledenEdnakov'
  76421.             SELECT Top 1 @SlednaSifra=Sifra_7, @SlednoIme=Ime_7
  76422.             FROM Drugo7 WITH(NOLOCK)
  76423.             WHERE Ime_7>=@Ime
  76424.             ORDER BY Ime_7 ASC
  76425.         Else If @Nacin = 'Prethoden'
  76426.             SELECT Top 1 @SlednaSifra=Sifra_7, @SlednoIme=Ime_7
  76427.             FROM Drugo7 WITH(NOLOCK)
  76428.             WHERE Ime_7<@Ime
  76429.             ORDER BY Ime_7 DESC, Sifra_7 DESC
  76430.        End 
  76431.         Else If @Tabela = 'KDRUGO1'
  76432.        Begin
  76433.         If @Nacin = 'Sleden'
  76434.             SELECT Top 1 @SlednaSifra=Sifra_1k, @SlednoIme=Ime_1k
  76435.             FROM KDrugo1 WITH(NOLOCK)
  76436.             WHERE Ime_1k>@Ime
  76437.             ORDER BY Ime_1k ASC, Sifra_1k ASC
  76438.         Else If @Nacin = 'SledenEdnakov'
  76439.             SELECT Top 1 @SlednaSifra=Sifra_1k, @SlednoIme=Ime_1k
  76440.             FROM KDrugo1 WITH(NOLOCK)
  76441.             WHERE Ime_1K>=@Ime
  76442.             ORDER BY Ime_1k ASC
  76443.         Else If @Nacin = 'Prethoden'
  76444.             SELECT Top 1 @SlednaSifra=Sifra_1k, @SlednoIme=Ime_1k
  76445.             FROM KDrugo1 WITH(NOLOCK)
  76446.             WHERE Ime_1k<@Ime
  76447.             ORDER BY Ime_1k DESC, Sifra_1k DESC
  76448.        End
  76449.     Else If @Tabela = 'KDRUGO2'
  76450.        Begin
  76451.         If @Nacin = 'Sleden'
  76452.             SELECT Top 1 @SlednaSifra=Sifra_2k, @SlednoIme=Ime_2k
  76453.             FROM KDrugo2 WITH(NOLOCK)
  76454.             WHERE Ime_2k>@Ime
  76455.             ORDER BY Ime_2k ASC, Sifra_2k ASC
  76456.         Else If @Nacin = 'SledenEdnakov'
  76457.             SELECT Top 1 @SlednaSifra=Sifra_2k, @SlednoIme=Ime_2k
  76458.             FROM KDrugo2 WITH(NOLOCK)
  76459.             WHERE Ime_2K>=@Ime
  76460.             ORDER BY Ime_2k ASC
  76461.         Else If @Nacin = 'Prethoden'
  76462.             SELECT Top 1 @SlednaSifra=Sifra_2k, @SlednoIme=Ime_2k
  76463.             FROM KDrugo2 WITH(NOLOCK)
  76464.             WHERE Ime_2k<@Ime
  76465.             ORDER BY Ime_2k DESC, Sifra_2k DESC
  76466.        End
  76467.     Else If @Tabela = 'KDRUGO3'
  76468.        Begin
  76469.         If @Nacin = 'Sleden'
  76470.             SELECT Top 1 @SlednaSifra=Sifra_3k, @SlednoIme=Ime_3k
  76471.             FROM KDrugo3 WITH(NOLOCK)
  76472.             WHERE Ime_3k>@Ime
  76473.             ORDER BY Ime_3k ASC, Sifra_3k ASC
  76474.         Else If @Nacin = 'SledenEdnakov'
  76475.             SELECT Top 1 @SlednaSifra=Sifra_3k, @SlednoIme=Ime_3k
  76476.             FROM KDrugo3 WITH(NOLOCK)
  76477.             WHERE Ime_3K>=@Ime
  76478.             ORDER BY Ime_3k ASC
  76479.         Else If @Nacin = 'Prethoden'
  76480.             SELECT Top 1 @SlednaSifra=Sifra_3k, @SlednoIme=Ime_3k
  76481.             FROM KDrugo3 WITH(NOLOCK)
  76482.             WHERE Ime_3k<@Ime
  76483.             ORDER BY Ime_3k DESC, Sifra_3k DESC
  76484.        End
  76485.     Else If @Tabela = 'KDRUGO4'
  76486.        Begin
  76487.         If @Nacin = 'Sleden'
  76488.             SELECT Top 1 @SlednaSifra=Sifra_4k, @SlednoIme=Ime_4k
  76489.             FROM KDrugo4 WITH(NOLOCK)
  76490.             WHERE Ime_4k>@Ime
  76491.             ORDER BY Ime_4k ASC, Sifra_4k ASC
  76492.         Else If @Nacin = 'SledenEdnakov'
  76493.             SELECT Top 1 @SlednaSifra=Sifra_4k, @SlednoIme=Ime_4k
  76494.             FROM KDrugo4 WITH(NOLOCK)
  76495.             WHERE Ime_4K>=@Ime
  76496.             ORDER BY Ime_4k ASC
  76497.         Else If @Nacin = 'Prethoden'
  76498.             SELECT Top 1 @SlednaSifra=Sifra_4k, @SlednoIme=Ime_4k
  76499.             FROM KDrugo4 WITH(NOLOCK)
  76500.             WHERE Ime_4k<@Ime
  76501.             ORDER BY Ime_4k DESC, Sifra_4k DESC
  76502.        End
  76503.     Else If @Tabela = 'KDRUGO5'
  76504.        Begin
  76505.         If @Nacin = 'Sleden'
  76506.             SELECT Top 1 @SlednaSifra=Sifra_5k, @SlednoIme=Ime_5k
  76507.             FROM KDrugo5 WITH(NOLOCK)
  76508.             WHERE Ime_5k>@Ime
  76509.             ORDER BY Ime_5k ASC, Sifra_5k ASC
  76510.         Else If @Nacin = 'SledenEdnakov'
  76511.             SELECT Top 1 @SlednaSifra=Sifra_5k, @SlednoIme=Ime_5k
  76512.             FROM KDrugo5 WITH(NOLOCK)
  76513.             WHERE Ime_5K>=@Ime
  76514.             ORDER BY Ime_5k ASC
  76515.         Else If @Nacin = 'Prethoden'
  76516.             SELECT Top 1 @SlednaSifra=Sifra_5k, @SlednoIme=Ime_5k
  76517.             FROM KDrugo5 WITH(NOLOCK)
  76518.             WHERE Ime_5k<@Ime
  76519.             ORDER BY Ime_5k DESC, Sifra_5k DESC
  76520.        End
  76521.         Else If @Tabela = 'KDRUGO6'
  76522.        Begin
  76523.         If @Nacin = 'Sleden'
  76524.             SELECT Top 1 @SlednaSifra=Sifra_6k, @SlednoIme=Ime_6k
  76525.             FROM KDrugo6 WITH(NOLOCK)
  76526.             WHERE Ime_6k>@Ime
  76527.             ORDER BY Ime_6k ASC, Sifra_6k ASC
  76528.         Else If @Nacin = 'SledenEdnakov'
  76529.             SELECT Top 1 @SlednaSifra=Sifra_6k, @SlednoIme=Ime_6k
  76530.             FROM KDrugo6 WITH(NOLOCK)
  76531.             WHERE Ime_6K>=@Ime
  76532.             ORDER BY Ime_6k ASC
  76533.         Else If @Nacin = 'Prethoden'
  76534.             SELECT Top 1 @SlednaSifra=Sifra_6k, @SlednoIme=Ime_6k
  76535.             FROM KDrugo6 WITH(NOLOCK)
  76536.             WHERE Ime_6k<@Ime
  76537.             ORDER BY Ime_6k DESC, Sifra_6k DESC
  76538.        End  
  76539.         Else If @Tabela = 'KDRUGO7'
  76540.        Begin
  76541.         If @Nacin = 'Sleden'
  76542.             SELECT Top 1 @SlednaSifra=Sifra_7k, @SlednoIme=Ime_7k
  76543.             FROM KDrugo7 WITH(NOLOCK)
  76544.             WHERE Ime_7k>@Ime
  76545.             ORDER BY Ime_7k ASC, Sifra_7k ASC
  76546.         Else If @Nacin = 'SledenEdnakov'
  76547.             SELECT Top 1 @SlednaSifra=Sifra_7k, @SlednoIme=Ime_7k
  76548.             FROM KDrugo7 WITH(NOLOCK)
  76549.             WHERE Ime_7K>=@Ime
  76550.             ORDER BY Ime_7k ASC
  76551.         Else If @Nacin = 'Prethoden'
  76552.             SELECT Top 1 @SlednaSifra=Sifra_7k, @SlednoIme=Ime_7k
  76553.             FROM KDrugo7 WITH(NOLOCK)
  76554.             WHERE Ime_7k<@Ime
  76555.             ORDER BY Ime_7k DESC, Sifra_7k DESC
  76556.        End     
  76557.         Else If @Tabela = 'KNIGATRG'
  76558.        Begin
  76559.         If @Nacin = 'Sleden'
  76560.             SELECT Top 1 @SlednaSifra=InterenBr, @SlednoIme=Broj
  76561.             FROM KnigaTrg WITH(NOLOCK)
  76562.             WHERE Broj > @Ime
  76563.             ORDER BY Broj ASC, InterenBr ASC
  76564.         Else If @Nacin = 'SledenEdnakov'
  76565.             SELECT Top 1 @SlednaSifra=InterenBr, @SlednoIme=Broj
  76566.             FROM KnigaTrg WITH(NOLOCK)
  76567.             WHERE Broj >= @Ime
  76568.             ORDER BY Broj ASC
  76569.         Else If @Nacin = 'Prethoden'
  76570.             SELECT Top 1 @SlednaSifra=InterenBr, @SlednoIme=Broj
  76571.             FROM KnigaTrg WITH(NOLOCK)
  76572.             WHERE Broj < @Ime
  76573.             ORDER BY Broj DESC, InterenBr DESC
  76574.        End
  76575.      Else If @Tabela = 'KRSLISTA'
  76576.       Begin
  76577.         If @Nacin = 'Sleden'
  76578.             SELECT Top 1 @SlednaSifra=SImeVal, @SlednoIme=ImeVal 
  76579.             FROM KrsLista WITH(NOLOCK)
  76580.             WHERE ImeVal>@Ime
  76581.             ORDER BY ImeVal ASC, SImeVal ASC
  76582.         Else If @Nacin = 'SledenEdnakov'
  76583.             SELECT Top 1 @SlednaSifra=SImeVal, @SlednoIme=ImeVal 
  76584.             FROM KrsLista WITH(NOLOCK)
  76585.             WHERE ImeVal>=@Ime
  76586.             ORDER BY ImeVal ASC
  76587.         Else If @Nacin = 'Prethoden'
  76588.             SELECT Top 1 @SlednaSifra=SImeVal, @SlednoIme=ImeVal 
  76589.             FROM KrsLista WITH(NOLOCK)
  76590.             WHERE ImeVal<@Ime
  76591.             ORDER BY ImeVal DESC, SImeVal DESC
  76592.        End
  76593.      Else If @Tabela = 'CBROEVI'
  76594.       Begin
  76595.         If @Nacin = 'Sleden'
  76596.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  76597.             FROM CBroevi
  76598.             WHERE Ime>@Ime
  76599.             ORDER BY CarBroj ASC, Ime ASC
  76600.         Else If @Nacin = 'SledenEdnakov'
  76601.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  76602.             FROM CBroevi
  76603.             WHERE Ime>=@Ime
  76604.             ORDER BY Ime ASC
  76605.         Else If @Nacin = 'Prethoden'
  76606.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  76607.             FROM CBroevi
  76608.             WHERE Ime<@Ime
  76609.             ORDER BY Ime DESC, CarBroj DESC
  76610.        End
  76611.     Else If @Tabela = 'GRAD'
  76612.       Begin
  76613.         If @Nacin = 'Sleden'
  76614.             SELECT Top 1 @SlednaSifra=Sifra_Grad, @SlednoIme=ImeGrad 
  76615.             FROM Grad WITH(NOLOCK)
  76616.             WHERE ImeGrad>@Ime
  76617.             ORDER BY Sifra_Grad ASC, ImeGrad ASC
  76618.         Else If @Nacin = 'SledenEdnakov'
  76619.             SELECT Top 1 @SlednaSifra=Sifra_Grad, @SlednoIme=ImeGrad
  76620.             FROM Grad WITH(NOLOCK)
  76621.             WHERE ImeGrad>=@Ime
  76622.             ORDER BY ImeGrad ASC
  76623.         Else If @Nacin = 'Prethoden'
  76624.             SELECT Top 1 @SlednaSifra=Sifra_Grad, @SlednoIme=ImeGrad
  76625.             FROM Grad WITH(NOLOCK)
  76626.             WHERE ImeGrad<@Ime
  76627.             ORDER BY ImeGrad DESC, Sifra_Grad DESC
  76628.        End
  76629.     Else If @Tabela = 'NIVO'
  76630.       Begin
  76631.         If @Nacin = 'Sleden'
  76632.             SELECT Top 1 @SlednaSifra=Sifra_Nivo, @SlednoIme=ImeNivo
  76633.             FROM Nivo WITH(NOLOCK)
  76634.             WHERE ImeNivo>@Ime
  76635.             ORDER BY Sifra_Nivo ASC, ImeNivo ASC
  76636.         Else If @Nacin = 'SledenEdnakov'
  76637.             SELECT Top 1 @SlednaSifra=Sifra_Nivo, @SlednoIme=ImeNivo
  76638.             FROM Nivo WITH(NOLOCK)
  76639.             WHERE ImeNivo>=@Ime
  76640.             ORDER BY ImeNivo ASC
  76641.         Else If @Nacin = 'Prethoden'
  76642.             SELECT Top 1 @SlednaSifra=Sifra_Nivo, @SlednoIme=ImeNivo
  76643.             FROM Nivo WITH(NOLOCK)
  76644.             WHERE ImeNivo<@Ime
  76645.             ORDER BY ImeNivo DESC, Sifra_Nivo DESC
  76646.        End
  76647.     Else If @Tabela = 'KLAS'
  76648.       Begin
  76649.         If @Nacin = 'Sleden'
  76650.             SELECT Top 1 @SlednaSifra=Kto_Klas, @SlednoIme=ImeKlasa
  76651.             FROM Klas
  76652.             WHERE ImeKlasa>@Ime
  76653.             ORDER BY Kto_Klas ASC, ImeKlasa ASC
  76654.         Else If @Nacin = 'SledenEdnakov'
  76655.             SELECT Top 1 @SlednaSifra=Kto_Klas, @SlednoIme=ImeKlasa
  76656.             FROM Klas
  76657.             WHERE ImeKlasa>=@Ime
  76658.             ORDER BY ImeKlasa ASC
  76659.         Else If @Nacin = 'Prethoden'
  76660.             SELECT Top 1 @SlednaSifra=Kto_Klas, @SlednoIme=ImeKlasa
  76661.             FROM Klas
  76662.             WHERE ImeKlasa<@Ime
  76663.             ORDER BY ImeKlasa DESC, Kto_Klas DESC
  76664.        End
  76665.     Else If @Tabela = 'GRANAL'
  76666.       Begin
  76667.         If @Nacin = 'Sleden'
  76668.             SELECT Top 1 @SlednaSifra=Kto_GrAn, @SlednoIme=ImeGrAn
  76669.             FROM GrAnal WITH(NOLOCK)
  76670.             WHERE ImeGrAn>@Ime
  76671.             ORDER BY Kto_GrAn ASC, ImeGrAn ASC
  76672.         Else If @Nacin = 'SledenEdnakov'
  76673.             SELECT Top 1 @SlednaSifra=Kto_GrAn, @SlednoIme=ImeGrAn
  76674.             FROM GrAnal WITH(NOLOCK)
  76675.             WHERE ImeGrAn>=@Ime
  76676.             ORDER BY ImeGrAn ASC
  76677.         Else If @Nacin = 'Prethoden'
  76678.             SELECT Top 1 @SlednaSifra=Kto_GrAn, @SlednoIme=ImeGrAn
  76679.             FROM GrAnal WITH(NOLOCK)
  76680.             WHERE ImeGrAn<@Ime
  76681.             ORDER BY ImeGrAn DESC, Kto_GrAn DESC
  76682.        End
  76683.     Else If @Tabela = 'SINT'
  76684.       Begin
  76685.         If @Nacin = 'Sleden'
  76686.             SELECT Top 1 @SlednaSifra=Kto_Sint, @SlednoIme=ImeSint
  76687.             FROM Sint WITH(NOLOCK)
  76688.             WHERE ImeSint>@Ime
  76689.             ORDER BY Kto_Sint ASC, ImeSint ASC
  76690.         Else If @Nacin = 'SledenEdnakov'
  76691.             SELECT Top 1 @SlednaSifra=Kto_Sint, @SlednoIme=ImeSint
  76692.             FROM Sint WITH(NOLOCK)
  76693.             WHERE ImeSint>=@Ime
  76694.             ORDER BY ImeSint ASC
  76695.         Else If @Nacin = 'Prethoden'
  76696.             SELECT Top 1 @SlednaSifra=Kto_Sint, @SlednoIme=ImeSint
  76697.             FROM Sint WITH(NOLOCK)
  76698.             WHERE ImeSint<@Ime
  76699.             ORDER BY ImeSint DESC, Kto_Sint DESC
  76700.        End
  76701.     Else If @Tabela = 'ANAL'
  76702.       Begin
  76703.         If @Nacin = 'Sleden'
  76704.             SELECT Top 1 @SlednaSifra=Kto_Anal, @SlednoIme=ImeAnal
  76705.             FROM Anal WITH(NOLOCK)
  76706.             WHERE ImeAnal>@Ime
  76707.             ORDER BY  ImeAnal ASC, Kto_Anal ASC
  76708.         Else If @Nacin = 'SledenEdnakov'
  76709.             SELECT Top 1 @SlednaSifra=Kto_Anal, @SlednoIme=ImeAnal
  76710.             FROM Anal WITH(NOLOCK)
  76711.             WHERE ImeAnal>=@Ime
  76712.             ORDER BY ImeAnal ASC
  76713.         Else If @Nacin = 'Prethoden'
  76714.             SELECT Top 1 @SlednaSifra=Kto_Anal, @SlednoIme=ImeAnal
  76715.             FROM Anal WITH(NOLOCK)
  76716.             WHERE ImeAnal<@Ime
  76717.             ORDER BY ImeAnal DESC, Kto_Anal DESC
  76718.        End
  76719.     Else If @Tabela = 'GrNar'
  76720.       Begin
  76721.         If @Nacin = 'Sleden'
  76722.             SELECT Top 1 @SlednaSifra=Sifra_GrNar, @SlednoIme=ImeGrNar
  76723.             FROM GrNar WITH(NOLOCK)
  76724.             WHERE ImeGrNar>@Ime
  76725.             ORDER BY ImeGrNar ASC, Sifra_GrNar ASC
  76726.         Else If @Nacin = 'SledenEdnakov'
  76727.             SELECT Top 1 @SlednaSifra=Sifra_GrNar, @SlednoIme=ImeGrNar
  76728.             FROM GrNar WITH(NOLOCK)
  76729.             WHERE ImeGrNar>=@Ime
  76730.             ORDER BY ImeGrNar ASC
  76731.         Else If @Nacin = 'Prethoden'
  76732.             SELECT Top 1 @SlednaSifra=Sifra_GrNar, @SlednoIme=ImeGrNar
  76733.             FROM GrNar WITH(NOLOCK)
  76734.             WHERE ImeGrNar<@Ime
  76735.             ORDER BY ImeGrNar DESC, Sifra_GrNar DESC
  76736.        End
  76737.     Else If @Tabela = 'BANKI'
  76738.       Begin
  76739.         If @Nacin = 'Sleden'
  76740.             SELECT Top 1 @SlednaSifra=Sifra_Ban, @SlednoIme=ImeBanka
  76741.             FROM Banki WITH(NOLOCK)
  76742.             WHERE ImeBanka>@Ime
  76743.             ORDER BY ImeBanka ASC, Sifra_Ban ASC
  76744.         Else If @Nacin = 'SledenEdnakov'
  76745.             SELECT Top 1 @SlednaSifra=Sifra_Ban, @SlednoIme=ImeBanka
  76746.             FROM Banki WITH(NOLOCK)
  76747.             WHERE ImeBanka>=@Ime
  76748.             ORDER BY ImeBanka ASC
  76749.         Else If @Nacin = 'Prethoden'
  76750.             SELECT Top 1 @SlednaSifra=Sifra_Ban, @SlednoIme=ImeBanka
  76751.             FROM Banki WITH(NOLOCK)
  76752.             WHERE ImeBanka<@Ime
  76753.             ORDER BY ImeBanka DESC, Sifra_Ban DESC
  76754.        End
  76755.     Else If @Tabela = 'PRODMEST'
  76756.       Begin
  76757.         If @Nacin = 'Sleden'
  76758.             SELECT Top 1 @SlednaSifra=Sifra_Mest, @SlednoIme=Opis
  76759.             FROM ProdMest WITH(NOLOCK)
  76760.             WHERE Opis>@Ime
  76761.             ORDER BY  Opis ASC, Sifra_Mest ASC
  76762.         Else If @Nacin = 'SledenEdnakov'
  76763.             SELECT Top 1 @SlednaSifra=Sifra_Mest, @SlednoIme=Opis
  76764.             FROM ProdMest WITH(NOLOCK)
  76765.             WHERE Opis>=@Ime
  76766.             ORDER BY Opis ASC
  76767.         Else If @Nacin = 'Prethoden'
  76768.             SELECT Top 1 @SlednaSifra=Sifra_Mest, @SlednoIme=Opis
  76769.             FROM ProdMest WITH(NOLOCK)
  76770.             WHERE Opis<@Ime
  76771.             ORDER BY Opis DESC, Sifra_Mest DESC
  76772.        End
  76773.     Else If @Tabela = 'FITABELA'
  76774.       Begin
  76775.         If @Nacin = 'Sleden'
  76776.             SELECT Top 1 @SlednaSifra=FiID, @SlednoIme=Ime
  76777.             FROM FiTabela WITH(NOLOCK)
  76778.             WHERE Ime>@Ime
  76779.             ORDER BY  Ime ASC, FiID ASC
  76780.         Else If @Nacin = 'SledenEdnakov'
  76781.             SELECT Top 1 @SlednaSifra=FiID, @SlednoIme=Ime
  76782.             FROM FiTabela WITH(NOLOCK)
  76783.             WHERE Ime>=@Ime
  76784.             ORDER BY Ime ASC
  76785.         Else If @Nacin = 'Prethoden'
  76786.             SELECT Top 1 @SlednaSifra=FiID, @SlednoIme=Ime
  76787.             FROM FiTabela WITH(NOLOCK)
  76788.             WHERE Ime<@Ime
  76789.             ORDER BY Ime DESC, FiID DESC
  76790.        End
  76791.     Else If @Tabela = 'KARTKOR'
  76792.     Begin
  76793.         If @Nacin = 'Sleden'
  76794.         BEGIN
  76795.             IF @Filter IS NULL
  76796.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  76797.                 FROM KartKor WITH(NOLOCK)
  76798.                 WHERE ImeKor>@Ime 
  76799.                 ORDER BY  ImeKor ASC, Sifra_Kor ASC
  76800.             ELSE
  76801.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  76802.                 FROM KartKor WITH(NOLOCK)
  76803.                 WHERE ImeKor>@Ime AND Sifra_Kup=@Filter
  76804.                 ORDER BY  ImeKor ASC, Sifra_Kor ASC
  76805.         END
  76806.         Else If @Nacin = 'SledenEdnakov'
  76807.         BEGIN
  76808.             IF @Filter IS NULL
  76809.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  76810.                 FROM KartKor WITH(NOLOCK)
  76811.                 WHERE ImeKor>=@Ime
  76812.                 ORDER BY ImeKor ASC
  76813.             ELSE
  76814.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  76815.                 FROM KartKor WITH(NOLOCK)
  76816.                 WHERE ImeKor>=@Ime AND Sifra_Kup=@Filter
  76817.                 ORDER BY ImeKor ASC
  76818.         END
  76819.         Else If @Nacin = 'Prethoden'
  76820.         BEGIN
  76821.             IF @Filter IS NULL
  76822.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  76823.                 FROM KartKor WITH(NOLOCK)
  76824.                 WHERE ImeKor<@Ime
  76825.                 ORDER BY ImeKor DESC, Sifra_Kor DESC
  76826.             ELSE
  76827.                 SELECT Top 1 @SlednaSifra=Sifra_Kor, @SlednoIme=ImeKor
  76828.                 FROM KartKor WITH(NOLOCK)
  76829.                 WHERE ImeKor<@Ime AND Sifra_Kup=@Filter
  76830.                 ORDER BY ImeKor DESC, Sifra_Kor DESC
  76831.         END
  76832.     End
  76833.     Else If @Tabela = 'TIPPERCENOVNIK'
  76834.       Begin
  76835.         If @Nacin = 'Sleden'
  76836.             SELECT Top 1 @SlednaSifra=Sifra_TipC, @SlednoIme=ImeTipC
  76837.             FROM TipPerCenovnik WITH(NOLOCK)
  76838.             WHERE ImeTipC>@Ime
  76839.             ORDER BY  ImeTipC ASC, Sifra_TipC ASC
  76840.         Else If @Nacin = 'SledenEdnakov'
  76841.             SELECT Top 1 @SlednaSifra=Sifra_TipC, @SlednoIme=ImeTipC
  76842.             FROM TipPerCenovnik WITH(NOLOCK)
  76843.             WHERE ImeTipC>=@Ime
  76844.             ORDER BY ImeTipC ASC
  76845.         Else If @Nacin = 'Prethoden'
  76846.             SELECT Top 1 @SlednaSifra=Sifra_TipC, @SlednoIme=ImeTipC
  76847.             FROM TipPerCenovnik WITH(NOLOCK)
  76848.             WHERE ImeTipC<@Ime
  76849.             ORDER BY ImeTipC DESC, Sifra_TipC DESC
  76850.        End
  76851.     Else If @Tabela = 'BANKSMETKI'
  76852.       Begin
  76853.         If @Nacin = 'Sleden'
  76854.             SELECT Top 1 @SlednaSifra=KojaSmetka, @SlednoIme=Banka
  76855.             FROM BankSmetki WITH(NOLOCK)
  76856.             WHERE Banka>@Ime
  76857.             ORDER BY  Banka ASC, KojaSmetka ASC
  76858.         Else If @Nacin = 'SledenEdnakov'
  76859.             SELECT Top 1 @SlednaSifra=KojaSmetka, @SlednoIme=Banka
  76860.             FROM BankSmetki WITH(NOLOCK)
  76861.             WHERE Banka>=@Ime
  76862.             ORDER BY Banka ASC
  76863.         Else If @Nacin = 'Prethoden'
  76864.             SELECT Top 1 @SlednaSifra=KojaSmetka, @SlednoIme=Banka
  76865.             FROM BankSmetki WITH(NOLOCK)
  76866.             WHERE Banka<@Ime
  76867.             ORDER BY Banka DESC, KojaSmetka DESC
  76868.        End
  76869.     Else If @Tabela = 'CBROEVI'
  76870.        Begin
  76871.         If @Nacin = 'Sleden'
  76872.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  76873.             FROM CBroevi WITH(NOLOCK)
  76874.             WHERE Ime>@Ime
  76875.             ORDER BY Ime ASC, CarBroj ASC
  76876.         Else If @Nacin = 'SledenEdnakov'
  76877.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  76878.             FROM CBroevi WITH(NOLOCK)
  76879.             WHERE Ime>=@Ime
  76880.             ORDER BY Ime ASC, CarBroj ASC
  76881.         Else If @Nacin = 'Prethoden'
  76882.             SELECT Top 1 @SlednaSifra=CarBroj, @SlednoIme=Ime 
  76883.             FROM CBroevi WITH(NOLOCK)
  76884.             WHERE Ime<@Ime
  76885.             ORDER BY Ime DESC, CarBroj DESC
  76886.        End
  76887.     Else If @Tabela = 'KATAMB'
  76888.        Begin
  76889.         If @Nacin = 'Sleden'
  76890.             SELECT Top 1 @SlednaSifra=Sifra_Amb, @SlednoIme=ImeAmb 
  76891.             FROM KatAmb WITH(NOLOCK)
  76892.             WHERE ImeAmb>@Ime
  76893.             ORDER BY ImeAmb ASC, Sifra_Amb ASC
  76894.         Else If @Nacin = 'SledenEdnakov'
  76895.             SELECT Top 1 @SlednaSifra=Sifra_Amb, @SlednoIme=ImeAmb 
  76896.             FROM KatAmb WITH(NOLOCK)
  76897.             WHERE ImeAmb>=@Ime
  76898.             ORDER BY ImeAmb ASC, Sifra_Amb ASC
  76899.         Else If @Nacin = 'Prethoden'
  76900.             SELECT Top 1 @SlednaSifra=Sifra_Amb, @SlednoIme=ImeAmb 
  76901.             FROM KatAmb WITH(NOLOCK)
  76902.             WHERE ImeAmb<@Ime
  76903.             ORDER BY ImeAmb DESC, Sifra_Amb DESC
  76904.        End
  76905.     Else If @Tabela = 'KATGAMB'
  76906.        Begin
  76907.         If @Nacin = 'Sleden'
  76908.             SELECT Top 1 @SlednaSifra=Sifra_GAmb, @SlednoIme=ImeGAmb 
  76909.             FROM KatGAmb WITH(NOLOCK)
  76910.             WHERE ImeGAmb>@Ime
  76911.             ORDER BY ImeGAmb ASC, Sifra_GAmb ASC
  76912.         Else If @Nacin = 'SledenEdnakov'
  76913.             SELECT Top 1 @SlednaSifra=Sifra_GAmb, @SlednoIme=ImeGAmb 
  76914.             FROM KatGAmb WITH(NOLOCK)
  76915.             WHERE ImeGAmb>=@Ime
  76916.             ORDER BY ImeGAmb ASC, Sifra_GAmb ASC
  76917.         Else If @Nacin = 'Prethoden'
  76918.             SELECT Top 1 @SlednaSifra=Sifra_GAmb, @SlednoIme=ImeGAmb 
  76919.             FROM KatGAmb WITH(NOLOCK)
  76920.             WHERE ImeGAmb<@Ime
  76921.             ORDER BY ImeGAmb DESC, Sifra_GAmb DESC
  76922.        End
  76923.     Else If @Tabela = 'LOKACIJA'
  76924.        Begin
  76925.         If @Nacin = 'Sleden'
  76926.             SELECT Top 1 @SlednaSifra=Sifra_Lok, @SlednoIme=ImeLok 
  76927.             FROM Lokacija WITH(NOLOCK)
  76928.             WHERE ImeLok>@Ime
  76929.             ORDER BY ImeLok ASC, Sifra_Lok ASC
  76930.         Else If @Nacin = 'SledenEdnakov'
  76931.             SELECT Top 1 @SlednaSifra=Sifra_Lok, @SlednoIme=ImeLok 
  76932.             FROM Lokacija WITH(NOLOCK)
  76933.             WHERE ImeLok>=@Ime
  76934.             ORDER BY ImeLok ASC, Sifra_Lok ASC
  76935.         Else If @Nacin = 'Prethoden'
  76936.             SELECT Top 1 @SlednaSifra=Sifra_Lok, @SlednoIme=ImeLok 
  76937.             FROM Lokacija WITH(NOLOCK)
  76938.             WHERE ImeLok<@Ime
  76939.             ORDER BY ImeLok DESC, Sifra_Lok DESC
  76940.        End
  76941.     Else If @Tabela = 'AMORGRP'
  76942.        Begin
  76943.         If @Nacin = 'Sleden'
  76944.             SELECT Top 1 @SlednaSifra=Sifra_Amor, @SlednoIme=rtrim(Ime)+' '+cast(stapka as varchar(8))+'%'
  76945.             FROM AmorGrp WITH(NOLOCK)
  76946.             WHERE Ime>@Ime
  76947.             ORDER BY Ime ASC, Sifra_Amor ASC
  76948.         Else If @Nacin = 'SledenEdnakov'
  76949.             SELECT Top 1 @SlednaSifra=Sifra_Amor, @SlednoIme=rtrim(Ime)+' '+cast(stapka as varchar(8))+'%'
  76950.             FROM AmorGrp WITH(NOLOCK)
  76951.             WHERE Ime>=@Ime
  76952.             ORDER BY Ime ASC, Sifra_Amor ASC
  76953.         Else If @Nacin = 'Prethoden'
  76954.             SELECT Top 1 @SlednaSifra=Sifra_Amor, @SlednoIme=rtrim(Ime)+' '+cast(stapka as varchar(8))+'%'
  76955.             FROM AmorGrp WITH(NOLOCK)
  76956.             WHERE Ime<@Ime
  76957.             ORDER BY Ime DESC, Sifra_Amor DESC
  76958.        End
  76959.     Else If @Tabela = 'OSNSRED'
  76960.        Begin
  76961.         If @Nacin = 'Sleden'
  76962.             SELECT Top 1 @SlednaSifra=Inv_Broj, @SlednoIme=Ime 
  76963.             FROM OsnSred WITH(NOLOCK)
  76964.             WHERE Ime>@Ime
  76965.             ORDER BY Ime ASC, Inv_Broj ASC
  76966.         Else If @Nacin = 'SledenEdnakov'
  76967.             SELECT Top 1 @SlednaSifra=Inv_Broj, @SlednoIme=Ime 
  76968.             FROM OsnSred WITH(NOLOCK)
  76969.             WHERE Ime>=@Ime
  76970.             ORDER BY Ime ASC, Inv_Broj ASC
  76971.         Else If @Nacin = 'Prethoden'
  76972.             SELECT Top 1 @SlednaSifra=Inv_Broj, @SlednoIme=Ime 
  76973.             FROM OsnSred WITH(NOLOCK)
  76974.             WHERE Ime<@Ime
  76975.             ORDER BY Ime DESC, Inv_Broj DESC
  76976.        End
  76977.     Else If @Tabela = 'MAKROLOK'
  76978.        Begin
  76979.         If @Nacin = 'Sleden'
  76980.             SELECT Top 1 @SlednaSifra=Sifra_MakLok, @SlednoIme=Ime_MakLok
  76981.             FROM MakroLok WITH(NOLOCK)
  76982.             WHERE Ime_MakLok>@Ime
  76983.             ORDER BY Ime_MakLok ASC, Sifra_MakLok ASC
  76984.         Else If @Nacin = 'SledenEdnakov'
  76985.             SELECT Top 1 @SlednaSifra=Sifra_MakLok, @SlednoIme=Ime_MakLok 
  76986.             FROM MakroLok WITH(NOLOCK)
  76987.             WHERE Ime_MakLok>=@Ime
  76988.             ORDER BY Ime_MakLok ASC, Sifra_MakLok ASC
  76989.         Else If @Nacin = 'Prethoden'
  76990.             SELECT Top 1 @SlednaSifra=Sifra_MakLok, @SlednoIme=Ime_MakLok 
  76991.             FROM MakroLok WITH(NOLOCK)
  76992.             WHERE Ime_MakLok<@Ime
  76993.             ORDER BY Ime_MakLok DESC, Sifra_MakLok DESC
  76994.        End
  76995.     Else If @Tabela = 'MIKROLOK'
  76996.        Begin
  76997.         If @Nacin = 'Sleden'
  76998.             SELECT Top 1 @SlednaSifra=Sifra_MikLok, @SlednoIme=Ime_MikLok
  76999.             FROM MikroLok WITH(NOLOCK)
  77000.             WHERE Ime_MikLok>@Ime
  77001.             ORDER BY Ime_MikLok ASC, Sifra_MikLok ASC
  77002.         Else If @Nacin = 'SledenEdnakov'
  77003.             SELECT Top 1 @SlednaSifra=Sifra_MikLok, @SlednoIme=Ime_MikLok 
  77004.             FROM MikroLok WITH(NOLOCK)
  77005.             WHERE Ime_MikLok>=@Ime
  77006.             ORDER BY Ime_MikLok ASC, Sifra_MikLok ASC
  77007.         Else If @Nacin = 'Prethoden'
  77008.             SELECT Top 1 @SlednaSifra=Sifra_MikLok, @SlednoIme=Ime_MikLok 
  77009.             FROM MikroLok WITH(NOLOCK)
  77010.             WHERE Ime_MikLok<@Ime
  77011.             ORDER BY Ime_MikLok DESC, Sifra_MikLok DESC
  77012.        End
  77013.     Else If @Tabela = 'RABOTNIK'
  77014.        Begin
  77015.         If @Nacin = 'Sleden'
  77016.             SELECT Top 1 @SlednaSifra=Sifra_Rab, @SlednoIme=ImeRab
  77017.             FROM Rabotnik WITH(NOLOCK)
  77018.             WHERE ImeRab>@Ime
  77019.             ORDER BY ImeRab ASC, Sifra_Rab ASC
  77020.         Else If @Nacin = 'SledenEdnakov'
  77021.             SELECT Top 1 @SlednaSifra=Sifra_Rab, @SlednoIme=ImeRab 
  77022.             FROM Rabotnik WITH(NOLOCK)
  77023.             WHERE ImeRab>=@Ime
  77024.             ORDER BY ImeRab ASC, Sifra_Rab ASC
  77025.         Else If @Nacin = 'Prethoden'
  77026.             SELECT Top 1 @SlednaSifra=Sifra_Rab, @SlednoIme=ImeRab 
  77027.             FROM Rabotnik WITH(NOLOCK)
  77028.             WHERE ImeRab<@Ime
  77029.             ORDER BY ImeRab DESC, Sifra_Rab DESC
  77030.        End
  77031.     Else If @Tabela = 'PREVOZNIK'
  77032.        Begin
  77033.         If @Nacin = 'Sleden'
  77034.             SELECT Top 1 @SlednaSifra=Sifra_Prev, @SlednoIme=ImePrev
  77035.             FROM Prevoznik WITH(NOLOCK)
  77036.             WHERE ImePrev>@Ime
  77037.             ORDER BY ImePrev ASC, Sifra_Prev ASC
  77038.         Else If @Nacin = 'SledenEdnakov'
  77039.             SELECT Top 1 @SlednaSifra=Sifra_Prev, @SlednoIme=ImePrev 
  77040.             FROM Prevoznik WITH(NOLOCK)
  77041.             WHERE ImePrev>=@Ime
  77042.             ORDER BY ImePrev ASC, Sifra_Prev ASC
  77043.         Else If @Nacin = 'Prethoden'
  77044.             SELECT Top 1 @SlednaSifra=Sifra_Prev, @SlednoIme=ImePrev 
  77045.             FROM Prevoznik WITH(NOLOCK)
  77046.             WHERE ImePrev<@Ime
  77047.             ORDER BY ImePrev DESC, Sifra_Prev DESC
  77048.        End
  77049.     Else If @Tabela = 'OPSTINI'
  77050.        Begin
  77051.         If @Nacin = 'Sleden'
  77052.             SELECT Top 1 @SlednaSifra=Sif_Opstina, @SlednoIme=Ime_Opstina
  77053.             FROM Opstini WITH(NOLOCK)
  77054.             WHERE Ime_Opstina>@Ime
  77055.             ORDER BY Ime_Opstina ASC, Sif_Opstina ASC
  77056.         Else If @Nacin = 'SledenEdnakov'
  77057.             SELECT Top 1 @SlednaSifra=Sif_Opstina, @SlednoIme=Ime_Opstina 
  77058.             FROM Opstini WITH(NOLOCK)
  77059.             WHERE Ime_Opstina>=@Ime
  77060.             ORDER BY Ime_Opstina ASC, Sif_Opstina ASC
  77061.         Else If @Nacin = 'Prethoden'
  77062.             SELECT Top 1 @SlednaSifra=Sif_Opstina, @SlednoIme=Ime_Opstina 
  77063.             FROM Opstini WITH(NOLOCK)
  77064.             WHERE Ime_Opstina<@Ime
  77065.             ORDER BY Ime_Opstina DESC, Sif_Opstina DESC
  77066.        End
  77067.     Else If @Tabela = 'PROGRAMI'
  77068.        Begin
  77069.         If @Nacin = 'Sleden'
  77070.             SELECT Top 1 @SlednaSifra=Sif_Progr, @SlednoIme=Ime_Progr
  77071.             FROM Programi WITH(NOLOCK)
  77072.             WHERE Ime_Progr>@Ime
  77073.             ORDER BY Ime_Progr ASC, Sif_Progr ASC
  77074.         Else If @Nacin = 'SledenEdnakov'
  77075.             SELECT Top 1 @SlednaSifra=Sif_Progr, @SlednoIme=Ime_Progr 
  77076.             FROM Programi WITH(NOLOCK)
  77077.             WHERE Ime_Progr>=@Ime
  77078.             ORDER BY Ime_Progr ASC, Sif_Progr ASC
  77079.         Else If @Nacin = 'Prethoden'
  77080.             SELECT Top 1 @SlednaSifra=Sif_Progr, @SlednoIme=Ime_Progr 
  77081.             FROM Programi WITH(NOLOCK)
  77082.             WHERE Ime_Progr<@Ime
  77083.             ORDER BY Ime_Progr DESC, Sif_Progr DESC
  77084.        End
  77085.     Else If @Tabela = 'PRIMATELI'
  77086.        Begin
  77087.         If @Nacin = 'Sleden'
  77088.             SELECT Top 1 @SlednaSifra=Sif_Primatel, @SlednoIme=Ime_Primatel
  77089.             FROM Primateli WITH(NOLOCK)
  77090.             WHERE Ime_Primatel>@Ime
  77091.             ORDER BY Ime_Primatel ASC, Sif_Primatel ASC
  77092.         Else If @Nacin = 'SledenEdnakov'
  77093.             SELECT Top 1 @SlednaSifra=Sif_Primatel, @SlednoIme=Ime_Primatel 
  77094.             FROM Primateli WITH(NOLOCK)
  77095.             WHERE Ime_Primatel>=@Ime
  77096.             ORDER BY Ime_Primatel ASC, Sif_Primatel ASC
  77097.         Else If @Nacin = 'Prethoden'
  77098.             SELECT Top 1 @SlednaSifra=Sif_Primatel, @SlednoIme=Ime_Primatel 
  77099.             FROM Primateli WITH(NOLOCK)
  77100.             WHERE Ime_Primatel<@Ime
  77101.             ORDER BY Ime_Primatel DESC, Sif_Primatel DESC
  77102.        End
  77103.     Else If @Tabela = 'ZADRSKI'
  77104.        Begin
  77105.         If @Nacin = 'Sleden'
  77106.             SELECT Top 1 @SlednaSifra=Sif_Zadr, @SlednoIme=Ime_Zadr
  77107.             FROM Zadrski WITH(NOLOCK)
  77108.             WHERE Ime_Zadr>@Ime
  77109.             ORDER BY Ime_Zadr ASC, Sif_Zadr ASC
  77110.         Else If @Nacin = 'SledenEdnakov'
  77111.             SELECT Top 1 @SlednaSifra=Sif_Zadr, @SlednoIme=Ime_Zadr 
  77112.             FROM Zadrski WITH(NOLOCK)
  77113.             WHERE Ime_Zadr>=@Ime
  77114.             ORDER BY Ime_Zadr ASC, Sif_Zadr ASC
  77115.         Else If @Nacin = 'Prethoden'
  77116.             SELECT Top 1 @SlednaSifra=Sif_Zadr, @SlednoIme=Ime_Zadr 
  77117.             FROM Zadrski WITH(NOLOCK)
  77118.             WHERE Ime_Zadr<@Ime
  77119.             ORDER BY Ime_Zadr DESC, Sif_Zadr DESC
  77120.        End
  77121.     Else If @Tabela = 'ZARAB'
  77122.        Begin
  77123.         If @Nacin = 'Sleden'
  77124.             SELECT Top 1 @SlednaSifra=Sif_Zarab, @SlednoIme=Ime_Zarab
  77125.             FROM Zarab WITH(NOLOCK)
  77126.             WHERE Ime_Zarab>@Ime
  77127.             ORDER BY Ime_Zarab ASC, Sif_Zarab ASC
  77128.         Else If @Nacin = 'SledenEdnakov'
  77129.             SELECT Top 1 @SlednaSifra=Sif_Zarab, @SlednoIme=Ime_Zarab 
  77130.             FROM Zarab WITH(NOLOCK)
  77131.             WHERE Ime_Zarab>=@Ime
  77132.             ORDER BY Ime_Zarab ASC, Sif_Zarab ASC
  77133.         Else If @Nacin = 'Prethoden'
  77134.             SELECT Top 1 @SlednaSifra=Sif_Zarab, @SlednoIme=Ime_Zarab 
  77135.             FROM Zarab WITH(NOLOCK)
  77136.             WHERE Ime_Zarab<@Ime
  77137.             ORDER BY Ime_Zarab DESC, Sif_Zarab DESC
  77138.        End
  77139.     Else If @Tabela = 'OPERATORI'
  77140.        Begin
  77141.         If @Nacin = 'Sleden'
  77142.             SELECT Top 1 @SlednaSifra=Sifra_Oper, @SlednoIme=Ime_Oper
  77143.             FROM Operatori WITH(NOLOCK)
  77144.             WHERE Ime_Oper>@Ime
  77145.             ORDER BY Ime_Oper ASC, Sifra_Oper ASC
  77146.         Else If @Nacin = 'SledenEdnakov'
  77147.             SELECT Top 1 @SlednaSifra=Sifra_Oper, @SlednoIme=Ime_Oper 
  77148.             FROM Operatori WITH(NOLOCK)
  77149.             WHERE Ime_Oper>=@Ime
  77150.             ORDER BY Ime_Oper ASC, Sifra_Oper ASC
  77151.         Else If @Nacin = 'Prethoden'
  77152.             SELECT Top 1 @SlednaSifra=Sifra_Oper, @SlednoIme=Ime_Oper 
  77153.             FROM Operatori WITH(NOLOCK)
  77154.             WHERE Ime_Oper<@Ime
  77155.             ORDER BY Ime_Oper DESC, Sifra_Oper DESC
  77156.        End
  77157.     Else If @Tabela = 'NACPLAK'
  77158.        Begin
  77159.         If @Nacin = 'Sleden'
  77160.             SELECT Top 1 @SlednaSifra=Sifra_Nac, @SlednoIme=ImeNac
  77161.             FROM NacPlak WITH(NOLOCK)
  77162.             WHERE ImeNac>@Ime
  77163.             ORDER BY ImeNac ASC, Sifra_Nac ASC
  77164.         Else If @Nacin = 'SledenEdnakov'
  77165.             SELECT Top 1 @SlednaSifra=Sifra_Nac, @SlednoIme=ImeNac 
  77166.             FROM NacPlak WITH(NOLOCK)
  77167.             WHERE ImeNac>=@Ime
  77168.             ORDER BY ImeNac ASC, Sifra_Nac ASC
  77169.         Else If @Nacin = 'Prethoden'
  77170.             SELECT Top 1 @SlednaSifra=Sifra_Nac, @SlednoIme=ImeNac 
  77171.             FROM NacPlak WITH(NOLOCK)
  77172.             WHERE ImeNac<@Ime
  77173.             ORDER BY ImeNac DESC, Sifra_Nac DESC
  77174.        End
  77175.     Else If @Tabela = 'INTERNIKART'
  77176.        Begin
  77177.         If @Nacin = 'Sleden'
  77178.             SELECT Top 1 @SlednaSifra=Interna_Kart, @SlednoIme=Interna_Kart
  77179.             FROM InterniKart WITH(NOLOCK)
  77180.             WHERE Interna_Kart>@Ime
  77181.             ORDER BY Interna_Kart ASC
  77182.         Else If @Nacin = 'SledenEdnakov'
  77183.             SELECT Top 1 @SlednaSifra=Interna_Kart, @SlednoIme=Interna_Kart 
  77184.             FROM InterniKart WITH(NOLOCK)
  77185.             WHERE Interna_Kart>=@Ime
  77186.             ORDER BY Interna_Kart ASC
  77187.         Else If @Nacin = 'Prethoden'
  77188.             SELECT Top 1 @SlednaSifra=Interna_Kart, @SlednoIme=Interna_Kart 
  77189.             FROM InterniKart WITH(NOLOCK)
  77190.             WHERE Interna_Kart<@Ime
  77191.             ORDER BY Interna_Kart DESC
  77192.        End
  77193.     Else If @Tabela = 'FIRMI'
  77194.        Begin
  77195.         If @Nacin = 'Sleden'
  77196.             SELECT Top 1 @SlednaSifra=Sifra_Firma, @SlednoIme=ImeFirma
  77197.             FROM Firmi WITH(NOLOCK)
  77198.             WHERE ImeFirma>@Ime
  77199.             ORDER BY ImeFirma ASC, Sifra_Firma ASC
  77200.         Else If @Nacin = 'SledenEdnakov'
  77201.             SELECT Top 1 @SlednaSifra=Sifra_Firma, @SlednoIme=ImeFirma 
  77202.             FROM Firmi WITH(NOLOCK)
  77203.             WHERE ImeFirma>=@Ime
  77204.             ORDER BY ImeFirma ASC, Sifra_Firma ASC
  77205.         Else If @Nacin = 'Prethoden'
  77206.             SELECT Top 1 @SlednaSifra=Sifra_Firma, @SlednoIme=ImeFirma 
  77207.             FROM Firmi WITH(NOLOCK)
  77208.             WHERE ImeFirma<@Ime
  77209.             ORDER BY ImeFirma DESC, Sifra_Firma DESC
  77210.        End
  77211.     Else If @Tabela = 'NACINPRESMZ'
  77212.        Begin
  77213.         If @Nacin = 'Sleden'
  77214.             SELECT Top 1 @SlednaSifra=Sif_NacPresZ, @SlednoIme=Ime_NacPresZ
  77215.             FROM NacinPresmZ WITH(NOLOCK)
  77216.             WHERE Ime_NacPresZ>@Ime
  77217.             ORDER BY Ime_NacPresZ ASC, Sif_NacPresZ ASC
  77218.         Else If @Nacin = 'SledenEdnakov'
  77219.             SELECT Top 1 @SlednaSifra=Sif_NacPresZ, @SlednoIme=Ime_NacPresZ 
  77220.             FROM NacinPresmZ WITH(NOLOCK)
  77221.             WHERE Ime_NacPresZ>=@Ime
  77222.             ORDER BY Ime_NacPresZ ASC, Sif_NacPresZ ASC
  77223.         Else If @Nacin = 'Prethoden'
  77224.             SELECT Top 1 @SlednaSifra=Sif_NacPresZ, @SlednoIme=Ime_NacPresZ 
  77225.             FROM NacinPresZ WITH(NOLOCK)
  77226.             WHERE Ime_NacPresmZ<@Ime
  77227.             ORDER BY Ime_NacPresZ DESC, Sif_NacPresZ DESC
  77228.        End
  77229.     Else If @Tabela = 'GRPIZBOR'
  77230.        Begin
  77231.         If @Nacin = 'Sleden'
  77232.             SELECT Top 1 @SlednaSifra=Sifra_GrpIzb, @SlednoIme=Ime_GrpIzb
  77233.             FROM GrpIzbor WITH(NOLOCK)
  77234.             WHERE Ime_GrpIzb>@Ime
  77235.             ORDER BY Ime_GrpIzb ASC, Sifra_GrpIzb ASC
  77236.         Else If @Nacin = 'SledenEdnakov'
  77237.             SELECT Top 1 @SlednaSifra=Sifra_GrpIzb, @SlednoIme=Ime_GrpIzb 
  77238.             FROM GrpIzbor WITH(NOLOCK)
  77239.             WHERE Ime_GrpIzb>=@Ime
  77240.             ORDER BY Ime_GrpIzb ASC, Sifra_GrpIzb ASC
  77241.         Else If @Nacin = 'Prethoden'
  77242.             SELECT Top 1 @SlednaSifra=Sifra_GrpIzb, @SlednoIme=Ime_GrpIzb 
  77243.             FROM GrpIzbor WITH(NOLOCK)
  77244.             WHERE Ime_GrpIzb<@Ime
  77245.             ORDER BY Ime_GrpIzb DESC, Sifra_GrpIzb DESC
  77246.        End
  77247.     Else If @Tabela = 'VIDVOZILA'
  77248.        Begin
  77249.         If @Nacin = 'Sleden'
  77250.             SELECT Top 1 @SlednaSifra=Sifra_Vid_Voz, @SlednoIme=Ime_Vid_Voz
  77251.             FROM VidVozila WITH(NOLOCK)
  77252.             WHERE Ime_Vid_Voz>@Ime
  77253.             ORDER BY Ime_Vid_Voz ASC, Sifra_Vid_Voz ASC
  77254.         Else If @Nacin = 'SledenEdnakov'
  77255.             SELECT Top 1 @SlednaSifra=Sifra_Vid_Voz, @SlednoIme=Ime_Vid_Voz 
  77256.             FROM VidVozila WITH(NOLOCK)
  77257.             WHERE Ime_Vid_Voz>=@Ime
  77258.             ORDER BY Ime_Vid_Voz ASC, Sifra_Vid_Voz ASC
  77259.         Else If @Nacin = 'Prethoden'
  77260.             SELECT Top 1 @SlednaSifra=Sifra_Vid_Voz, @SlednoIme=Ime_Vid_Voz 
  77261.             FROM VidVozila WITH(NOLOCK)
  77262.             WHERE Ime_Vid_Voz<@Ime
  77263.             ORDER BY Ime_Vid_Voz DESC, Sifra_Vid_Voz DESC
  77264.        End
  77265.     Else If @Tabela = 'DIVIZII'
  77266.        Begin
  77267.         If @Nacin = 'Sleden'
  77268.             SELECT Top 1 @SlednaSifra=Sifra_Div, @SlednoIme=ImeDiv
  77269.             FROM Divizii WITH(NOLOCK)
  77270.             WHERE ImeDiv>@Ime
  77271.             ORDER BY ImeDiv ASC, Sifra_Div ASC
  77272.         Else If @Nacin = 'SledenEdnakov'
  77273.             SELECT Top 1 @SlednaSifra=Sifra_Div, @SlednoIme=ImeDiv 
  77274.             FROM Divizii WITH(NOLOCK)
  77275.             WHERE ImeDiv>=@Ime
  77276.             ORDER BY ImeDiv ASC, Sifra_Div ASC
  77277.         Else If @Nacin = 'Prethoden'
  77278.             SELECT Top 1 @SlednaSifra=Sifra_Div, @SlednoIme=ImeDiv 
  77279.             FROM Divizii WITH(NOLOCK)
  77280.             WHERE ImeDiv<@Ime
  77281.             ORDER BY ImeDiv DESC, Sifra_Div DESC
  77282.        End
  77283.     Else If @Tabela = 'NIVOCENIKARTKOR'
  77284.        Begin
  77285.         If @Nacin = 'Sleden'
  77286.             SELECT Top 1 @SlednaSifra=Sifra_CeniKartKor, @SlednoIme=ImeCeniKartKor
  77287.             FROM NivoCeniKartKor WITH(NOLOCK)
  77288.             WHERE ImeCeniKartKor>@Ime
  77289.             ORDER BY ImeCeniKartKor ASC, Sifra_CeniKartKor ASC
  77290.         Else If @Nacin = 'SledenEdnakov'
  77291.             SELECT Top 1 @SlednaSifra=Sifra_CeniKartKor, @SlednoIme=ImeCeniKartKor 
  77292.             FROM NivoCeniKartKor WITH(NOLOCK)
  77293.             WHERE ImeCeniKartKor>=@Ime
  77294.             ORDER BY ImeCeniKartKor ASC, Sifra_CeniKartKor ASC
  77295.         Else If @Nacin = 'Prethoden'
  77296.             SELECT Top 1 @SlednaSifra=Sifra_CeniKartKor, @SlednoIme=ImeCeniKartKor 
  77297.             FROM NivoCeniKartKor WITH(NOLOCK)
  77298.             WHERE ImeCeniKartKor<@Ime
  77299.             ORDER BY ImeCeniKartKor DESC, Sifra_CeniKartKor DESC
  77300.        End
  77301.     Else If @Tabela = 'TIPKARTKOR'
  77302.        Begin
  77303.         If @Nacin = 'Sleden'
  77304.             SELECT Top 1 @SlednaSifra=Sifra_TipKartKor, @SlednoIme=ImeKartKor
  77305.             FROM TipKartKor WITH(NOLOCK)
  77306.             WHERE ImeKartKor>@Ime
  77307.             ORDER BY ImeKartKor ASC, Sifra_TipKartKor ASC
  77308.         Else If @Nacin = 'SledenEdnakov'
  77309.             SELECT Top 1 @SlednaSifra=Sifra_TipKartKor, @SlednoIme=ImeKartKor 
  77310.             FROM TipKartKor WITH(NOLOCK)
  77311.             WHERE ImeKartKor>=@Ime
  77312.             ORDER BY ImeKartKor ASC, Sifra_TipKartKor ASC
  77313.         Else If @Nacin = 'Prethoden'
  77314.             SELECT Top 1 @SlednaSifra=Sifra_TipKartKor, @SlednoIme=ImeKartKor 
  77315.             FROM TipKartKor WITH(NOLOCK)
  77316.             WHERE ImeKartKor<@Ime
  77317.             ORDER BY ImeKartKor DESC, Sifra_TipKartKor DESC
  77318.        End
  77319.     Else If @Tabela = 'GRUPIOPER'
  77320.        Begin
  77321.         If @Nacin = 'Sleden'
  77322.             SELECT Top 1 @SlednaSifra=Sifra_GrOper, @SlednoIme=ImeGrOper
  77323.             FROM GrupiOper WITH(NOLOCK)
  77324.             WHERE ImeGrOper>@Ime
  77325.             ORDER BY ImeGrOper ASC, Sifra_GrOper ASC
  77326.         Else If @Nacin = 'SledenEdnakov'
  77327.             SELECT Top 1 @SlednaSifra=Sifra_GrOper, @SlednoIme=ImeGrOper 
  77328.             FROM GrupiOper WITH(NOLOCK)
  77329.             WHERE ImeGrOper>=@Ime
  77330.             ORDER BY ImeGrOper ASC, Sifra_GrOper ASC
  77331.         Else If @Nacin = 'Prethoden'
  77332.             SELECT Top 1 @SlednaSifra=Sifra_GrOper, @SlednoIme=ImeGrOper 
  77333.             FROM GrupiOper WITH(NOLOCK)
  77334.             WHERE ImeGrOper<@Ime
  77335.             ORDER BY ImeGrOper DESC, Sifra_GrOper DESC
  77336.        End
  77337.     Else If @Tabela = 'RELACISPOR'
  77338.        Begin
  77339.         If @Nacin = 'Sleden'
  77340.             SELECT Top 1 @SlednaSifra=Sifra_RelIspor, @SlednoIme=Ime_RelIspor
  77341.             FROM RelacIspor WITH(NOLOCK)
  77342.             WHERE Ime_RelIspor>@Ime
  77343.             ORDER BY Ime_RelIspor ASC, Sifra_RelIspor ASC
  77344.         Else If @Nacin = 'SledenEdnakov'
  77345.             SELECT Top 1 @SlednaSifra=Sifra_RelIspor, @SlednoIme=Ime_RelIspor 
  77346.             FROM RelacIspor WITH(NOLOCK)
  77347.             WHERE Ime_RelIspor>=@Ime
  77348.             ORDER BY Ime_RelIspor ASC, Sifra_RelIspor ASC
  77349.         Else If @Nacin = 'Prethoden'
  77350.             SELECT Top 1 @SlednaSifra=Sifra_RelIspor, @SlednoIme=Ime_RelIspor 
  77351.             FROM RelacIspor WITH(NOLOCK)
  77352.             WHERE Ime_RelIspor<@Ime
  77353.             ORDER BY Ime_RelIspor DESC, Sifra_RelIspor DESC
  77354.        End
  77355.     Else If @Tabela = 'VIDPRODOBJ'
  77356.        Begin
  77357.         If @Nacin = 'Sleden'
  77358.             SELECT Top 1 @SlednaSifra=Sifra_VPJ, @SlednoIme=Ime_VPJ
  77359.             FROM VidProdObj WITH(NOLOCK)
  77360.             WHERE Ime_VPJ>@Ime
  77361.             ORDER BY Ime_VPJ ASC, Sifra_VPJ ASC
  77362.         Else If @Nacin = 'SledenEdnakov'
  77363.             SELECT Top 1 @SlednaSifra=Sifra_VPJ, @SlednoIme=Ime_VPJ 
  77364.             FROM VidProdObj WITH(NOLOCK)
  77365.             WHERE Ime_VPJ>=@Ime
  77366.             ORDER BY Ime_VPJ ASC, Sifra_VPJ ASC
  77367.         Else If @Nacin = 'Prethoden'
  77368.             SELECT Top 1 @SlednaSifra=Sifra_VPJ, @SlednoIme=Ime_VPJ 
  77369.             FROM VidProdObj WITH(NOLOCK)
  77370.             WHERE Ime_VPJ<@Ime
  77371.             ORDER BY Ime_VPJ DESC, Sifra_VPJ DESC
  77372.        End
  77373.     Else If @Tabela = 'TIPKOMINT'
  77374.        Begin
  77375.         If @Nacin = 'Sleden'
  77376.             SELECT Top 1 @SlednaSifra=Sifra_Tip, @SlednoIme=ImeTip
  77377.             FROM TipKomint WITH(NOLOCK)
  77378.             WHERE ImeTip>@Ime
  77379.             ORDER BY ImeTip ASC, Sifra_Tip ASC
  77380.         Else If @Nacin = 'SledenEdnakov'
  77381.             SELECT Top 1 @SlednaSifra=Sifra_Tip, @SlednoIme=ImeTip 
  77382.             FROM TipKomint WITH(NOLOCK)
  77383.             WHERE ImeTip>=@Ime
  77384.             ORDER BY ImeTip ASC, Sifra_Tip ASC
  77385.         Else If @Nacin = 'Prethoden'
  77386.             SELECT Top 1 @SlednaSifra=Sifra_Tip, @SlednoIme=ImeTip 
  77387.             FROM TipKomint WITH(NOLOCK)
  77388.             WHERE ImeTip<@Ime
  77389.             ORDER BY ImeTip DESC, Sifra_Tip DESC
  77390.        End
  77391.     Else If @Tabela = 'SMENI'
  77392.        Begin
  77393.         If @Nacin = 'Sleden'
  77394.             SELECT Top 1 @SlednaSifra=Sifra_Smena, @SlednoIme=Ime_Smena
  77395.             FROM Smeni WITH(NOLOCK)
  77396.             WHERE Ime_Smena>@Ime
  77397.             ORDER BY Ime_Smena ASC, Sifra_Smena ASC
  77398.         Else If @Nacin = 'SledenEdnakov'
  77399.             SELECT Top 1 @SlednaSifra=Sifra_Smena, @SlednoIme=Ime_Smena 
  77400.             FROM Smeni WITH(NOLOCK)
  77401.             WHERE Ime_Smena>=@Ime
  77402.             ORDER BY Ime_Smena ASC, Sifra_Smena ASC
  77403.         Else If @Nacin = 'Prethoden'
  77404.             SELECT Top 1 @SlednaSifra=Sifra_Smena, @SlednoIme=Ime_Smena 
  77405.             FROM Smeni WITH(NOLOCK)
  77406.             WHERE Ime_Smena<@Ime
  77407.             ORDER BY Ime_Smena DESC, Sifra_Smena DESC
  77408.        End
  77409.     Else If @Tabela = 'HILZNI'
  77410.        Begin
  77411.         If @Nacin = 'Sleden'
  77412.             SELECT Top 1 @SlednaSifra=Sifra_Hilzna, @SlednoIme=Ime_Hilzna
  77413.             FROM Hilzni WITH(NOLOCK)
  77414.             WHERE Ime_Hilzna>@Ime
  77415.             ORDER BY Ime_Hilzna ASC, Sifra_Hilzna ASC
  77416.         Else If @Nacin = 'SledenEdnakov'
  77417.             SELECT Top 1 @SlednaSifra=Sifra_Hilzna, @SlednoIme=Ime_Hilzna 
  77418.             FROM Hilzni WITH(NOLOCK)
  77419.             WHERE Ime_Hilzna>=@Ime
  77420.             ORDER BY Ime_Hilzna ASC, Sifra_Hilzna ASC
  77421.         Else If @Nacin = 'Prethoden'
  77422.             SELECT Top 1 @SlednaSifra=Sifra_Hilzna, @SlednoIme=Ime_Hilzna 
  77423.             FROM Hilzni WITH(NOLOCK)
  77424.             WHERE Ime_Hilzna<@Ime
  77425.             ORDER BY Ime_Hilzna DESC, Sifra_Hilzna DESC
  77426.        End
  77427.     Else If @Tabela = 'FAZI'
  77428.        Begin
  77429.         If @Nacin = 'Sleden'
  77430.             SELECT Top 1 @SlednaSifra=Sifra_Faza, @SlednoIme=Ime_Faza
  77431.             FROM Fazi WITH(NOLOCK)
  77432.             WHERE Ime_Faza>@Ime
  77433.             ORDER BY Ime_Faza ASC, Sifra_Faza ASC
  77434.         Else If @Nacin = 'SledenEdnakov'
  77435.             SELECT Top 1 @SlednaSifra=Sifra_Faza, @SlednoIme=Ime_Faza 
  77436.             FROM Fazi WITH(NOLOCK)
  77437.             WHERE Ime_Faza>=@Ime
  77438.             ORDER BY Ime_Faza ASC, Sifra_Faza ASC
  77439.         Else If @Nacin = 'Prethoden'
  77440.             SELECT Top 1 @SlednaSifra=Sifra_Faza, @SlednoIme=Ime_Faza 
  77441.             FROM Fazi WITH(NOLOCK)
  77442.             WHERE Ime_Faza<@Ime
  77443.             ORDER BY Ime_Faza DESC, Sifra_Faza DESC
  77444.        End
  77445.     Else If @Tabela = 'MASINI'
  77446.        Begin
  77447.         If @Nacin = 'Sleden'
  77448.             SELECT Top 1 @SlednaSifra=Sifra_Mas, @SlednoIme=ImeMas
  77449.             FROM Masini WITH(NOLOCK)
  77450.             WHERE ImeMas>@Ime
  77451.             ORDER BY ImeMas ASC, Sifra_Mas ASC
  77452.         Else If @Nacin = 'SledenEdnakov'
  77453.             SELECT Top 1 @SlednaSifra=Sifra_Mas, @SlednoIme=ImeMas 
  77454.             FROM Masini WITH(NOLOCK)
  77455.             WHERE ImeMas>=@Ime
  77456.             ORDER BY ImeMas ASC, Sifra_Mas ASC
  77457.         Else If @Nacin = 'Prethoden'
  77458.             SELECT Top 1 @SlednaSifra=Sifra_Mas, @SlednoIme=ImeMas 
  77459.             FROM Masini WITH(NOLOCK)
  77460.             WHERE ImeMas<@Ime
  77461.             ORDER BY ImeMas DESC, Sifra_Mas DESC
  77462.        End
  77463.     Else If @Tabela = 'AKCIIPROMO'
  77464.        Begin
  77465.         If @Nacin = 'Sleden'
  77466.             SELECT Top 1 @SlednaSifra=Ozn_Akcija, @SlednoIme=Opis_Akcija
  77467.             FROM AkciiPromo WITH(NOLOCK)
  77468.             WHERE Opis_Akcija>@Ime
  77469.             ORDER BY Opis_Akcija ASC, Ozn_Akcija ASC
  77470.         Else If @Nacin = 'SledenEdnakov'
  77471.             SELECT Top 1 @SlednaSifra=Ozn_Akcija, @SlednoIme=Opis_Akcija 
  77472.             FROM AkciiPromo WITH(NOLOCK)
  77473.             WHERE Opis_Akcija>=@Ime
  77474.             ORDER BY Opis_Akcija ASC, Ozn_Akcija ASC
  77475.         Else If @Nacin = 'Prethoden'
  77476.             SELECT Top 1 @SlednaSifra=Ozn_Akcija, @SlednoIme=Opis_Akcija 
  77477.             FROM AkciiPromo WITH(NOLOCK)
  77478.             WHERE Opis_Akcija<@Ime
  77479.             ORDER BY Opis_Akcija DESC, Ozn_Akcija DESC
  77480.        End
  77481.     Else If @Tabela = 'GRPMARZA'
  77482.        Begin
  77483.         If @Nacin = 'Sleden'
  77484.             SELECT Top 1 @SlednaSifra=Grupa_Marza, @SlednoIme=Ime_GrM
  77485.             FROM GrpMarza WITH(NOLOCK)
  77486.             WHERE Ime_GrM>@Ime
  77487.             ORDER BY Ime_GrM ASC, Grupa_Marza ASC
  77488.         Else If @Nacin = 'SledenEdnakov'
  77489.             SELECT Top 1 @SlednaSifra=Grupa_Marza, @SlednoIme=Ime_GrM 
  77490.             FROM GrpMarza WITH(NOLOCK)
  77491.             WHERE Ime_GrM>=@Ime
  77492.             ORDER BY Ime_GrM ASC, Grupa_Marza ASC
  77493.         Else If @Nacin = 'Prethoden'
  77494.             SELECT Top 1 @SlednaSifra=Grupa_Marza, @SlednoIme=Ime_GrM 
  77495.             FROM GrpMarza WITH(NOLOCK)
  77496.             WHERE Ime_GrM<@Ime
  77497.             ORDER BY Ime_GrM DESC, Grupa_Marza DESC
  77498.        End
  77499.          Else If @Tabela = 'KONFSLAGANJE'
  77500.        Begin
  77501.         If @Nacin = 'Sleden'
  77502.             SELECT Top 1 @SlednaSifra=Sifra_Slag, @SlednoIme=ImeSlag
  77503.             FROM KonfSlaganje WITH(NOLOCK)
  77504.             WHERE ImeSlag>@Ime
  77505.             ORDER BY ImeSlag ASC, Sifra_Slag ASC
  77506.         Else If @Nacin = 'SledenEdnakov'
  77507.             SELECT Top 1 @SlednaSifra=Sifra_Slag, @SlednoIme=ImeSlag 
  77508.             FROM KonfSlaganje WITH(NOLOCK)
  77509.             WHERE ImeSlag>=@Ime
  77510.             ORDER BY ImeSlag ASC, Sifra_Slag ASC
  77511.         Else If @Nacin = 'Prethoden'
  77512.             SELECT Top 1 @SlednaSifra=Sifra_Slag, @SlednoIme=ImeSlag 
  77513.             FROM KonfSlaganje WITH(NOLOCK)
  77514.             WHERE ImeSlag<@Ime
  77515.             ORDER BY ImeSlag DESC, Sifra_Slag DESC
  77516.        End    
  77517.          Else If @Tabela = 'GRUPAWEB'
  77518.        Begin
  77519.         If @Nacin = 'Sleden'
  77520.             SELECT Top 1 @SlednaSifra=Sifra_GrWeb, @SlednoIme=Ime_GrWeb
  77521.             FROM GrupaWeb WITH(NOLOCK)
  77522.             WHERE Ime_GrWeb>@Ime
  77523.             ORDER BY Ime_GrWeb ASC, Sifra_GrWeb ASC
  77524.         Else If @Nacin = 'SledenEdnakov'
  77525.             SELECT Top 1 @SlednaSifra=Sifra_GrWeb, @SlednoIme=Ime_GrWeb 
  77526.             FROM GrupaWeb WITH(NOLOCK)
  77527.             WHERE Ime_GrWeb>=@Ime
  77528.             ORDER BY Ime_GrWeb ASC, Sifra_GrWeb ASC
  77529.         Else If @Nacin = 'Prethoden'
  77530.             SELECT Top 1 @SlednaSifra=Sifra_GrWeb, @SlednoIme=Ime_GrWeb 
  77531.             FROM GrupaWeb WITH(NOLOCK)
  77532.             WHERE Ime_GrWeb<@Ime
  77533.             ORDER BY Ime_GrWeb DESC, Sifra_GrWeb DESC
  77534.        End    
  77535.          Else If @Tabela = 'PODGRWEB'
  77536.        Begin
  77537.         If @Nacin = 'Sleden'
  77538.             SELECT Top 1 @SlednaSifra=Sifra_PodgrWeb, @SlednoIme=Ime_PodgrWeb
  77539.             FROM PodgrWeb WITH(NOLOCK)
  77540.             WHERE Ime_PodgrWeb>@Ime
  77541.             ORDER BY Ime_PodgrWeb ASC, Sifra_PodgrWeb ASC
  77542.         Else If @Nacin = 'SledenEdnakov'
  77543.             SELECT Top 1 @SlednaSifra=Sifra_PodgrWeb, @SlednoIme=Ime_PodgrWeb 
  77544.             FROM PodgrWeb WITH(NOLOCK)
  77545.             WHERE Ime_PodgrWeb>=@Ime
  77546.             ORDER BY Ime_PodgrWeb ASC, Sifra_PodgrWeb ASC
  77547.         Else If @Nacin = 'Prethoden'
  77548.             SELECT Top 1 @SlednaSifra=Sifra_PodgrWeb, @SlednoIme=Ime_PodgrWeb 
  77549.             FROM PodgrWeb WITH(NOLOCK)
  77550.             WHERE Ime_PodgrWeb<@Ime
  77551.             ORDER BY Ime_PodgrWeb DESC, Sifra_PodgrWeb DESC
  77552.        End    
  77553.             Else If @Tabela = 'GRPAT'
  77554.        Begin        
  77555.         If @Nacin = 'SLEDEN'
  77556.             SELECT Top 1 @SlednaSifra=Sif_GrPat, @SlednoIme=Ime_GrPat
  77557.             FROM GrPat WITH(NOLOCK)
  77558.             WHERE Sif_GrPat >@Ime
  77559.             ORDER BY Sif_GrPat ASC
  77560.         Else If @Nacin = 'PRETHODEN'
  77561.             SELECT Top 1 @SlednaSifra=Sif_GrPat, @SlednoIme=Ime_GrPat
  77562.             FROM  GrPat WITH(NOLOCK)
  77563.             WHERE Sif_GrPat<@Ime
  77564.             ORDER BY Sif_GrPat DESC
  77565.         Else If @Nacin = 'TOCEN'
  77566.             SELECT @SlednaSifra=Sif_GrPat, @SlednoIme=Ime_GrPat
  77567.             FROM GrPat WITH(NOLOCK)
  77568.             WHERE Sif_GrPat=@Ime
  77569.                  End
  77570.             Else If @Tabela = 'KATSTATUS'
  77571.        Begin        
  77572.         If @Nacin = 'SLEDEN'
  77573.             SELECT Top 1 @SlednaSifra=Sifra_KatStatus, @SlednoIme=ImeKatStatus
  77574.             FROM KatStatus WITH(NOLOCK)
  77575.             WHERE Sifra_KatStatus >@Ime
  77576.             ORDER BY Sifra_KatStatus ASC
  77577.         Else If @Nacin = 'PRETHODEN'
  77578.             SELECT Top 1 @SlednaSifra=Sifra_KatStatus, @SlednoIme=ImeKatStatus
  77579.             FROM  KatStatus WITH(NOLOCK)
  77580.             WHERE Sifra_KatStatus<@Ime
  77581.             ORDER BY Sifra_KatStatus DESC
  77582.         Else If @Nacin = 'TOCEN'
  77583.             SELECT @SlednaSifra=Sifra_KatStatus, @SlednoIme=ImeKatStatus
  77584.             FROM KatStatus WITH(NOLOCK)
  77585.             WHERE Sifra_KatStatus=@Ime
  77586.                  End
  77587.       Else If @Tabela = 'TIPKATPAKUV'
  77588.        Begin        
  77589.         If @Nacin = 'SLEDEN'
  77590.             SELECT Top 1 @SlednaSifra=Sifra_KatPak, @SlednoIme=ImeKatPak
  77591.             FROM TipKatPakuv WITH(NOLOCK)
  77592.             WHERE Sifra_KatPak >@Ime
  77593.             ORDER BY Sifra_KatPak ASC
  77594.         Else If @Nacin = 'PRETHODEN'
  77595.             SELECT Top 1 @SlednaSifra=Sifra_KatPak, @SlednoIme=ImeKatPak
  77596.             FROM  TipKatPakuv WITH(NOLOCK)
  77597.             WHERE Sifra_KatPak<@Ime
  77598.             ORDER BY Sifra_KatPak DESC
  77599.         Else If @Nacin = 'TOCEN'
  77600.             SELECT @SlednaSifra=Sifra_KatPak, @SlednoIme=ImeKatPak
  77601.             FROM Sifra_KatPak WITH(NOLOCK)
  77602.             WHERE Sifra_KatPak=@Ime
  77603.        End
  77604.     Else If @Tabela = 'VIDDOG'
  77605.        Begin        
  77606.         If @Nacin = 'SLEDEN'
  77607.             SELECT Top 1 @SlednaSifra=Sifra_VidDog, @SlednoIme=Ime_VidDog
  77608.             FROM VidDog WITH(NOLOCK)
  77609.             WHERE Sifra_VidDog >@Ime
  77610.             ORDER BY Sifra_VidDog ASC
  77611.         Else If @Nacin = 'PRETHODEN'
  77612.             SELECT Top 1 @SlednaSifra=Sifra_VidDog, @SlednoIme=Ime_VidDog
  77613.             FROM  VidDog WITH(NOLOCK)
  77614.             WHERE Sifra_VidDog<@Ime
  77615.             ORDER BY Sifra_VidDog DESC
  77616.         Else If @Nacin = 'TOCEN'
  77617.             SELECT @SlednaSifra=Sifra_VidDog, @SlednoIme=Ime_VidDog
  77618.             FROM VidDog WITH(NOLOCK)
  77619.             WHERE Sifra_VidDog=@Ime
  77620.             End
  77621.     Else If @Tabela = 'VERNTRAENJE'
  77622.        Begin        
  77623.         If @Nacin = 'SLEDEN'
  77624.             SELECT Top 1 @SlednaSifra=Sifra_Vernost, @SlednoIme=Ime_Vernost
  77625.             FROM VernTraenje WITH(NOLOCK)
  77626.             WHERE Sifra_Vernost >@Ime
  77627.             ORDER BY Sifra_Vernost ASC
  77628.         Else If @Nacin = 'PRETHODEN'
  77629.             SELECT Top 1 @SlednaSifra=Sifra_Vernost, @SlednoIme=Ime_Vernost
  77630.             FROM  VernTraenje WITH(NOLOCK)
  77631.             WHERE Sifra_Vernost<@Ime
  77632.             ORDER BY Sifra_Vernost DESC
  77633.         Else If @Nacin = 'TOCEN'
  77634.             SELECT @SlednaSifra=Sifra_Vernost, @SlednoIme=Ime_Vernost
  77635.             FROM VernTraenje WITH(NOLOCK)
  77636.             WHERE Sifra_Vernost=@Ime
  77637.             End
  77638.     Else If @Tabela = 'TARMODEL'
  77639.        Begin        
  77640.         If @Nacin = 'SLEDEN'
  77641.             SELECT Top 1 @SlednaSifra=Sifra_TarModel, @SlednoIme=Ime_TarModel
  77642.             FROM TarModel WITH(NOLOCK)
  77643.             WHERE Sifra_TarModel >@Ime
  77644.             ORDER BY Sifra_TarModel ASC
  77645.         Else If @Nacin = 'PRETHODEN'
  77646.             SELECT Top 1 @SlednaSifra=Sifra_TarModel, @SlednoIme=Ime_TarModel
  77647.             FROM  TarModel WITH(NOLOCK)
  77648.             WHERE Sifra_TarModel<@Ime
  77649.             ORDER BY Sifra_TarModel DESC
  77650.         Else If @Nacin = 'TOCEN'
  77651.             SELECT @SlednaSifra=Sifra_TarModel, @SlednoIme=Ime_TarModel
  77652.             FROM TarModel WITH(NOLOCK)
  77653.             WHERE Sifra_TarModel=@Ime
  77654.             End
  77655.         Else If @Tabela = 'RKASGRUPAOPERAC'
  77656.        Begin        
  77657.         If @Nacin = 'SLEDEN'
  77658.             SELECT Top 1 @SlednaSifra=Sifra_GrOperac, @SlednoIme=ImeGrupaOperac
  77659.             FROM  RKASGRUPAOPERAC WITH(NOLOCK)
  77660.             WHERE Sifra_GrOperac >@Ime
  77661.             ORDER BY Sifra_GrOperac ASC
  77662.         Else If @Nacin = 'PRETHODEN'
  77663.             SELECT Top 1 @SlednaSifra=Sifra_GrOperac, @SlednoIme=ImeGrupaOperac
  77664.             FROM  RKASGRUPAOPERAC WITH(NOLOCK)
  77665.             WHERE Sifra_GrOperac<@Ime
  77666.             ORDER BY Sifra_GrOperac DESC
  77667.         Else If @Nacin = 'TOCEN'
  77668.             SELECT @SlednaSifra=Sifra_GrOperac, @SlednoIme=ImeGrupaOperac
  77669.             FROM RKASGRUPAOPERAC WITH(NOLOCK)
  77670.             WHERE Sifra_GrOperac=@Ime
  77671.        End
  77672.      else If @Tabela = 'ARKAKAT'
  77673.        Begin
  77674.         If @Nacin = 'Sleden'
  77675.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt
  77676.             FROM ArkaKat WITH(NOLOCK)
  77677.             WHERE ImeArt>@Ime or (ImeArt=@Ime and @OpcPrethSifra is not null and Sifra_art > @OpcPrethSifra)
  77678.             ORDER BY ImeArt, Sifra_Art ASC
  77679.         Else If @Nacin = 'SledenEdnakov'
  77680.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt
  77681.             FROM ArkaKat WITH(NOLOCK)
  77682.             WHERE ImeArt>=@Ime
  77683.             ORDER BY ImeArt, Sifra_Art ASC        
  77684.         Else If @Nacin = 'Prethoden'
  77685.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=ImeArt
  77686.             FROM ArkaKat WITH(NOLOCK)
  77687.             WHERE ImeArt<@Ime or (ImeArt=@Ime and @OpcPrethSifra is not null and Sifra_art < @OpcPrethSifra)
  77688.             ORDER BY ImeArt DESC, Sifra_Art DESC
  77689.        End
  77690.         Else If @Tabela = 'CRRKODOVI'
  77691.        Begin
  77692.         If @Nacin = 'Sleden'
  77693.             SELECT Top 1 @SlednaSifra=Sifra_Crr, @SlednoIme=ImeCrr
  77694.             FROM CRRKodovi WITH(NOLOCK)
  77695.             WHERE ImeCrr > @Ime
  77696.             ORDER BY ImeCrr ASC, Sifra_Crr ASC
  77697.         Else If @Nacin = 'SledenEdnakov'
  77698.             SELECT Top 1 @SlednaSifra=Sifra_Crr, @SlednoIme=ImeCrr
  77699.             FROM CRRKodovi WITH(NOLOCK)
  77700.             WHERE ImeCrr >= @Ime
  77701.             ORDER BY ImeCrr ASC
  77702.         Else If @Nacin = 'Prethoden'
  77703.             SELECT Top 1 @SlednaSifra=Sifra_Crr, @SlednoIme=ImeCrr
  77704.             FROM CRRKodovi WITH(NOLOCK)
  77705.             WHERE ImeCrr < @Ime
  77706.             ORDER BY ImeCrr DESC, Sifra_Crr DESC
  77707.        End
  77708.         Else If @Tabela = 'FORMULADEF'
  77709.        Begin
  77710.         If @Nacin = 'Sleden'
  77711.             SELECT Top 1 @SlednaSifra=Sifra_Formula, @SlednoIme=Ime_Formula
  77712.             FROM FormulaDef WITH(NOLOCK)
  77713.             WHERE Ime_Formula > @Ime
  77714.             ORDER BY Ime_Formula ASC, Sifra_Formula ASC
  77715.         Else If @Nacin = 'SledenEdnakov'
  77716.             SELECT Top 1 @SlednaSifra=Sifra_Formula, @SlednoIme=Ime_Formula
  77717.             FROM FormulaDef WITH(NOLOCK)
  77718.             WHERE Ime_Formula >= @Ime
  77719.             ORDER BY Ime_Formula ASC
  77720.         Else If @Nacin = 'Prethoden'
  77721.             SELECT Top 1 @SlednaSifra=Sifra_Formula, @SlednoIme=Ime_Formula
  77722.             FROM FormulaDef WITH(NOLOCK)
  77723.             WHERE Ime_Formula < @Ime
  77724.             ORDER BY Ime_Formula DESC, Sifra_Formula DESC
  77725.         End
  77726.        Else If @Tabela = 'KARAKTERIST'
  77727.        Begin
  77728.         If @Nacin = 'Sleden'
  77729.             SELECT Top 1 @SlednaSifra=Sifra_Karakt, @SlednoIme=ImeKarakt
  77730.             FROM Karakterist WITH(NOLOCK)
  77731.             WHERE ImeKarakt > @Ime
  77732.             ORDER BY ImeKarakt ASC, Sifra_Karakt ASC
  77733.         Else If @Nacin = 'SledenEdnakov'
  77734.             SELECT Top 1 @SlednaSifra=Sifra_Karakt, @SlednoIme=ImeKarakt
  77735.             FROM Karakterist WITH(NOLOCK)
  77736.             WHERE ImeKarakt >= @Ime
  77737.             ORDER BY ImeKarakt ASC
  77738.         Else If @Nacin = 'Prethoden'
  77739.             SELECT Top 1 @SlednaSifra=Sifra_Karakt, @SlednoIme=ImeKarakt
  77740.             FROM Karakterist WITH(NOLOCK)
  77741.             WHERE ImeKarakt < @Ime
  77742.             ORDER BY ImeKarakt DESC, Sifra_Karakt DESC
  77743.        End             
  77744.        Else If @Tabela = 'KREDITSTATUS'
  77745.        Begin
  77746.         If @Nacin = 'Sleden'
  77747.             SELECT Top 1 @SlednaSifra=Status_Kredit, @SlednoIme=ImeStatusKredit
  77748.             FROM Kreditstatus WITH(NOLOCK)
  77749.             WHERE ImeStatusKredit > @Ime
  77750.             ORDER BY ImeStatusKredit ASC, Status_Kredit ASC
  77751.         Else If @Nacin = 'SledenEdnakov'
  77752.             SELECT Top 1 @SlednaSifra=Status_Kredit, @SlednoIme=ImeStatusKredit
  77753.             FROM Kreditstatus WITH(NOLOCK)
  77754.             WHERE ImeStatusKredit >= @Ime
  77755.             ORDER BY ImeStatusKredit ASC
  77756.         Else If @Nacin = 'Prethoden'
  77757.             SELECT Top 1 @SlednaSifra=Status_Kredit, @SlednoIme=ImeStatusKredit
  77758.             FROM Kreditstatus WITH(NOLOCK)
  77759.             WHERE ImeStatusKredit < @Ime
  77760.             ORDER BY ImeStatusKredit DESC, Status_Kredit DESC
  77761.        End     
  77762.       Else If @Tabela = 'KREDITTIPOPOMENA'
  77763.        Begin
  77764.         If @Nacin = 'Sleden'
  77765.             SELECT Top 1 @SlednaSifra=Tip_Opomena, @SlednoIme=ImeTipOpomena
  77766.             FROM KREDITTIPOPOMENA WITH(NOLOCK)
  77767.             WHERE ImeTipOpomena > @Ime
  77768.             ORDER BY ImeTipOpomena ASC, Tip_Opomena ASC
  77769.         Else If @Nacin = 'SledenEdnakov'
  77770.             SELECT Top 1 @SlednaSifra=Tip_Opomena, @SlednoIme=ImeTipOpomena
  77771.             FROM KREDITTIPOPOMENA WITH(NOLOCK)
  77772.             WHERE ImeTipOpomena >= @Ime
  77773.             ORDER BY ImeTipOpomena ASC
  77774.         Else If @Nacin = 'Prethoden'
  77775.             SELECT Top 1 @SlednaSifra=Tip_Opomena, @SlednoIme=ImeTipOpomena
  77776.             FROM KREDITTIPOPOMENA WITH(NOLOCK)
  77777.             WHERE ImeTipOpomena < @Ime
  77778.             ORDER BY ImeTipOpomena DESC, Tip_Opomena DESC
  77779.        End     
  77780.         Else If @Tabela = 'OSNGRPODEL'
  77781.        Begin
  77782.         If @Nacin = 'Sleden'
  77783.             SELECT Top 1 @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  77784.             FROM OSNGRPODEL WITH(NOLOCK)
  77785.             WHERE ImeOsnGrPodel > @Ime
  77786.             ORDER BY ImeOsnGrPodel ASC, Sifra_OsnGrPodel ASC
  77787.         Else If @Nacin = 'SledenEdnakov'
  77788.             SELECT Top 1 @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  77789.             FROM OSNGRPODEL WITH(NOLOCK)
  77790.             WHERE ImeOsnGrPodel >= @Ime
  77791.             ORDER BY ImeOsnGrPodel ASC
  77792.         Else If @Nacin = 'Prethoden'
  77793.             SELECT Top 1 @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  77794.             FROM OSNGRPODEL WITH(NOLOCK)
  77795.             WHERE ImeOsnGrPodel < @Ime
  77796.             ORDER BY ImeOsnGrPodel DESC, Sifra_OsnGrPodel DESC
  77797.        End        
  77798.         Else If @Tabela = 'TROSOK4TIP'
  77799.        Begin
  77800.         If @Nacin = 'Sleden'
  77801.             SELECT Top 1 @SlednaSifra=Sifra_4Tros, @SlednoIme=Ime4Tros
  77802.             FROM TROSOK4TIP WITH(NOLOCK)
  77803.             WHERE Ime4Tros > @Ime
  77804.             ORDER BY Ime4Tros ASC, Sifra_4Tros ASC
  77805.         Else If @Nacin = 'SledenEdnakov'
  77806.             SELECT Top 1 @SlednaSifra=Sifra_4Tros, @SlednoIme=Ime4Tros
  77807.             FROM TROSOK4TIP WITH(NOLOCK)
  77808.             WHERE Ime4Tros >= @Ime
  77809.             ORDER BY Ime4Tros ASC
  77810.         Else If @Nacin = 'Prethoden'
  77811.             SELECT Top 1 @SlednaSifra=Sifra_4Tros, @SlednoIme=Ime4Tros
  77812.             FROM TROSOK4TIP WITH(NOLOCK)
  77813.             WHERE Ime4Tros < @Ime
  77814.             ORDER BY Ime4Tros DESC, Sifra_4Tros DESC
  77815.        End        
  77816.         Else If @Tabela = 'TROSOKMESTO'
  77817.        Begin
  77818.         If @Nacin = 'Sleden'
  77819.             SELECT Top 1 @SlednaSifra=Sifra_TrosM, @SlednoIme=ImeTrosM
  77820.             FROM TROSOKMESTO WITH(NOLOCK)
  77821.             WHERE ImeTrosM > @Ime
  77822.             ORDER BY ImeTrosM ASC, Sifra_TrosM ASC
  77823.         Else If @Nacin = 'SledenEdnakov'
  77824.             SELECT Top 1 @SlednaSifra=Sifra_TrosM, @SlednoIme=ImeTrosM
  77825.             FROM TROSOKMESTO WITH(NOLOCK)
  77826.             WHERE ImeTrosM >= @Ime
  77827.             ORDER BY ImeTrosM ASC
  77828.         Else If @Nacin = 'Prethoden'
  77829.             SELECT Top 1 @SlednaSifra=Sifra_TrosM, @SlednoIme=ImeTrosM
  77830.             FROM TROSOKMESTO WITH(NOLOCK)
  77831.             WHERE ImeTrosM < @Ime
  77832.             ORDER BY ImeTrosM DESC, Sifra_TrosM DESC
  77833.        End        
  77834.         Else If @Tabela = 'TROSOKVID'
  77835.        Begin
  77836.         If @Nacin = 'Sleden'
  77837.             SELECT Top 1 @SlednaSifra=Sifra_TrosV, @SlednoIme=ImeTrosV
  77838.             FROM TROSOKVID WITH(NOLOCK)
  77839.             WHERE ImeTrosV > @Ime
  77840.             ORDER BY ImeTrosV ASC, Sifra_TrosV ASC
  77841.         Else If @Nacin = 'SledenEdnakov'
  77842.             SELECT Top 1 @SlednaSifra=Sifra_TrosV, @SlednoIme=ImeTrosV
  77843.             FROM TROSOKVID WITH(NOLOCK)
  77844.             WHERE ImeTrosV >= @Ime
  77845.             ORDER BY ImeTrosV ASC
  77846.         Else If @Nacin = 'Prethoden'
  77847.             SELECT Top 1 @SlednaSifra=Sifra_TrosV, @SlednoIme=ImeTrosV
  77848.             FROM TROSOKVID WITH(NOLOCK)
  77849.             WHERE ImeTrosV < @Ime
  77850.             ORDER BY ImeTrosV DESC, Sifra_TrosV DESC
  77851.        End
  77852.       Else If @Tabela = 'GRKUP'
  77853.        Begin        
  77854.         If @Nacin = 'Sleden'
  77855.             SELECT Top 1 @SlednaSifra=Sif_GrKup, @SlednoIme=Ime_GrKup
  77856.             FROM GrKup WITH(NOLOCK)
  77857.             WHERE Ime_GrKup > @Ime
  77858.             ORDER BY Ime_GrKup ASC
  77859.         Else If @Nacin = 'SledenEdnakov'
  77860.             SELECT Top 1 @SlednaSifra=Sif_GrKup, @SlednoIme=Ime_GrKup
  77861.             FROM  GrKup WITH(NOLOCK)
  77862.             WHERE Ime_GrKup >= @Ime
  77863.             ORDER BY Ime_GrKup ASC
  77864.         Else If @Nacin = 'Prethoden'
  77865.             SELECT top 1 @SlednaSifra=Sif_GrKup, @SlednoIme=Ime_GrKup
  77866.             FROM GrKup WITH(NOLOCK)
  77867.             WHERE Ime_GrKup < @Ime
  77868.             ORDER BY Ime_GrKup DESC
  77869.        End      
  77870.       Else If @Tabela = 'BOJA'
  77871.        Begin        
  77872.         If @Nacin = 'Sleden'
  77873.             SELECT Top 1 @SlednaSifra=Sifra_Boja, @SlednoIme=ImeBoja
  77874.             FROM Boja WITH(NOLOCK)
  77875.             WHERE ImeBoja > @Ime
  77876.             ORDER BY ImeBoja ASC
  77877.         Else If @Nacin = 'SledenEdnakov'
  77878.             SELECT Top 1 @SlednaSifra=Sifra_Boja, @SlednoIme=ImeBoja
  77879.             FROM  Boja WITH(NOLOCK)
  77880.             WHERE ImeBoja >= @Ime
  77881.             ORDER BY ImeBoja ASC
  77882.         Else If @Nacin = 'Prethoden'
  77883.             SELECT top 1 @SlednaSifra=Sifra_Boja, @SlednoIme=ImeBoja
  77884.             FROM Boja WITH(NOLOCK)
  77885.             WHERE ImeBoja < @Ime
  77886.             ORDER BY ImeBoja DESC
  77887.        End         
  77888.       Else If @Tabela = 'VELICINA'
  77889.        Begin        
  77890.         If @Nacin = 'Sleden'
  77891.             SELECT Top 1 @SlednaSifra=Sifra_Velic, @SlednoIme=ImeVelic
  77892.             FROM Velicina WITH(NOLOCK)
  77893.             WHERE ImeVelic > @Ime
  77894.             ORDER BY ImeVelic ASC
  77895.         Else If @Nacin = 'SledenEdnakov'
  77896.             SELECT Top 1 @SlednaSifra=Sifra_Velic, @SlednoIme=ImeVelic
  77897.             FROM Velicina WITH(NOLOCK)
  77898.             WHERE ImeVelic >= @Ime
  77899.             ORDER BY ImeVelic ASC
  77900.         Else If @Nacin = 'Prethoden'
  77901.             SELECT top 1 @SlednaSifra=Sifra_Velic, @SlednoIme=ImeVelic
  77902.             FROM Velicina WITH(NOLOCK)
  77903.             WHERE ImeVelic < @Ime
  77904.             ORDER BY ImeVelic DESC
  77905.        End            
  77906.        Else If @Tabela = 'KATSPECTIPMAT'
  77907.        Begin        
  77908.         If @Nacin = 'Sleden'
  77909.             SELECT Top 1 @SlednaSifra=Sifra_TipMat, @SlednoIme=ImeTipMat
  77910.             FROM KATSPECTIPMAT WITH(NOLOCK)
  77911.             WHERE ImeTipMat > @Ime
  77912.             ORDER BY ImeTipMat ASC
  77913.         Else If @Nacin = 'SledenEdnakov'
  77914.             SELECT Top 1 @SlednaSifra=Sifra_TipMat, @SlednoIme=ImeTipMat
  77915.             FROM KATSPECTIPMAT WITH(NOLOCK)
  77916.             WHERE ImeTipMat >= @Ime
  77917.             ORDER BY ImeTipMat ASC
  77918.         Else If @Nacin = 'Prethoden'
  77919.             SELECT top 1 @SlednaSifra=Sifra_TipMat, @SlednoIme=ImeTipMat
  77920.             FROM KATSPECTIPMAT WITH(NOLOCK)
  77921.             WHERE ImeTipMat < @Ime
  77922.             ORDER BY ImeTipMat DESC
  77923.        End   
  77924.     Else If @Tabela = 'MCKATPOZICIJA'
  77925.        Begin        
  77926.         If @Nacin = 'Sleden'
  77927.             SELECT Top 1 @SlednaSifra=Sif_MCPozicija, @SlednoIme=ImeMCPozicija
  77928.             FROM MCKatPozicija WITH(NOLOCK)
  77929.             WHERE ImeMCPozicija > @Ime
  77930.             ORDER BY ImeMCPozicija ASC, Sif_MCPozicija ASC
  77931.         Else If @Nacin = 'SledenEdnakov'
  77932.             SELECT Top 1 @SlednaSifra=Sif_MCPozicija, @SlednoIme=ImeMCPozicija
  77933.             FROM MCKatPozicija WITH(NOLOCK)
  77934.             WHERE ImeMCPozicija >= @Ime
  77935.             ORDER BY ImeMCPozicija ASC
  77936.         Else If @Nacin = 'Prethoden'
  77937.             SELECT top 1 @SlednaSifra=Sif_MCPozicija, @SlednoIme=ImeMCPozicija
  77938.             FROM MCKatPozicija WITH(NOLOCK)
  77939.             WHERE ImeMCPozicija < @Ime
  77940.             ORDER BY ImeMCPozicija DESC, Sif_MCPozicija DESC
  77941.        End          
  77942.  
  77943.    IF @@ERROR=0 AND @@ROWCOUNT=0
  77944.       RETURN 77000
  77945.    ELSE
  77946.       RETURN @@ERROR
  77947.  
  77948.  
  77949.  
  77950.  
  77951.  
  77952.  
  77953.  
  77954.  
  77955.  
  77956.  
  77957. Go
  77958. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden_ime_alt]'))
  77959. drop procedure [dbo].[sp_lkpsleden_ime_alt]
  77960.  
  77961. Go
  77962.  
  77963. --    Opis na Parametri
  77964. --    @Ime: Najmnogu 40 Karakteri.
  77965. --
  77966. --    @Tabela: Ime na tabelata po koja prebaruvame, case-sensitive.
  77967. --    @Nacin: Nacin na prebaruvanje.
  77968. --        Prifakja: Sleden, SledenEdnakov, Prethoden
  77969. --    @SlednaSifra: povraten parametar
  77970. --    @SlednoIme: povraten parametar
  77971.  
  77972. Create PROCEDURE sp_lkpSleden_Ime_Alt
  77973.     @Ime VARCHAR(70),        --ne stavaj nvarchar zatoa sto ne raboti sledenednakov 
  77974.     @Tabela VARCHAR(20),
  77975.     @Nacin VARCHAR(15),
  77976.     @SlednaSifra VARCHAR(20) OUTPUT,
  77977.     @SlednoIme nVARCHAR(70) OUTPUT,
  77978.     @SlednoIme2 nVARCHAR(70) = Null OUTPUT,
  77979.     @OpcPrethSifra VARCHAR(20) = Null,
  77980.     @Filter        nvarchar(20)=NULL
  77981.  
  77982. AS
  77983.  
  77984.     Declare @Greska Int
  77985.     If @Nacin = 'SledenEdnakov'
  77986.         Set @Ime =  Replace(@Ime, '[', '[[]') 
  77987.     Set @Ime = Ltrim(Rtrim(@Ime))
  77988.              Set @Tabela = Upper(@Tabela)
  77989.  
  77990.      If @Tabela = 'VOZILA'
  77991.        Begin
  77992.         If @Nacin = 'Sleden'
  77993.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=KomOznaka
  77994.             FROM Vozila WITH(NOLOCK)
  77995.             WHERE KomOznaka>@Ime or (KomOznaka=@Ime and @OpcPrethSifra is not null and Sifra_art > @OpcPrethSifra)
  77996.             ORDER BY KomOznaka, Sifra_Art ASC
  77997.         Else If @Nacin = 'SledenEdnakov'
  77998.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=KomOznaka
  77999.             FROM Vozila WITH(NOLOCK)
  78000.             WHERE KomOznaka>=@Ime
  78001.             ORDER BY KomOznaka, Sifra_Art ASC        
  78002.         Else If @Nacin = 'Prethoden'
  78003.             SELECT Top 1 @SlednaSifra=Sifra_Art, @SlednoIme=KomOznaka
  78004.             FROM Vozila WITH(NOLOCK)
  78005.             WHERE KomOznaka<@Ime or (KomOznaka=@Ime and @OpcPrethSifra is not null and Sifra_art < @OpcPrethSifra)
  78006.             ORDER BY KomOznaka DESC, Sifra_Art DESC
  78007.        End
  78008.  
  78009.    IF @@ERROR=0 AND @@ROWCOUNT=0
  78010.       RETURN 77000
  78011.    ELSE
  78012.       RETURN @@ERROR
  78013.  
  78014.  
  78015. Go
  78016. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden_ime_mk]'))
  78017. drop procedure [dbo].[sp_lkpsleden_ime_mk]
  78018.  
  78019. Go
  78020.  
  78021.  
  78022.  
  78023.  
  78024.  
  78025.  
  78026. --    Opis na Parametri
  78027. --    @Ime: Najmnogu 40 Karakteri.
  78028. --
  78029. --    @Tabela: Ime na tabelata po koja prebaruvame, case-sensitive.
  78030. --        Prifakja: Katart, Podgrupi, Grupi, Tarifi, Komint
  78031. --    @Nacin: Nacin na prebaruvanje.
  78032. --        Prifakja: Sleden, SledenEdnakov, Prethoden
  78033. --    @SlednaSifra: povraten parametar
  78034. --    @SlednoIme: povraten parametar
  78035. CREATE      PROCEDURE sp_lkpSleden_Ime_MK
  78036.     @Ime NVARCHAR(70),
  78037.     @Tabela VARCHAR(20),
  78038.     @Nacin VARCHAR(15),
  78039.     @SlednaSifra NVARCHAR(20) OUTPUT,
  78040.     @SlednoIme NVARCHAR(70) OUTPUT,
  78041.     @SlednoIme2 NVARCHAR(70) = Null OUTPUT,
  78042.     @OpcPrethSifra NVARCHAR(20) = Null
  78043. AS
  78044.     Declare @Greska Int
  78045.     If @Nacin = 'SledenEdnakov'
  78046.         Set @Ime =  Replace(@Ime, '[', '[[]') 
  78047.     Set @Ime = Ltrim(Rtrim(@Ime))
  78048.              Set @Tabela = Upper(@Tabela)
  78049.     If @Tabela = 'KATHIER'
  78050.        Begin
  78051.         If @Nacin = 'Sleden'
  78052.             SELECT Top 1 @SlednaSifra=Sifra_KHier, @SlednoIme=Ime_KHier 
  78053.             FROM KatHier WITH(NOLOCK)
  78054.             WHERE Ime_KHier > @Ime
  78055.             ORDER BY Ime_KHier ASC, Sifra_KHier ASC
  78056.         Else If @Nacin = 'SledenEdnakov'
  78057.             SELECT Top 1 @SlednaSifra=Sifra_KHier, @SlednoIme=Ime_KHier 
  78058.             FROM KatHier WITH(NOLOCK)
  78059.             WHERE Ime_KHier >= @Ime
  78060.             ORDER BY Ime_KHier ASC, Sifra_KHier ASC
  78061.         Else If @Nacin = 'Prethoden'
  78062.             SELECT Top 1 @SlednaSifra=Sifra_KHier, @SlednoIme=Ime_KHier 
  78063.             FROM KatHier WITH(NOLOCK)
  78064.             WHERE Ime_KHier < @Ime
  78065.             ORDER BY Ime_KHier DESC, Sifra_KHier DESC
  78066.        End
  78067.     Else If @Tabela = 'XFODDEL'
  78068.        Begin        
  78069.         If @Nacin = 'SLEDEN'
  78070.             SELECT Top 1 @SlednaSifra=Sifra_Oddel, @SlednoIme=ImeOddel
  78071.             FROM XFOddel WITH(NOLOCK)
  78072.             WHERE Sifra_Oddel >@Ime
  78073.             ORDER BY Sifra_Oddel ASC
  78074.         Else If @Nacin = 'PRETHODEN'
  78075.             SELECT Top 1 @SlednaSifra=Sifra_Oddel, @SlednoIme=ImeOddel
  78076.             FROM  XFOddel WITH(NOLOCK)
  78077.             WHERE Sifra_Oddel<@Ime
  78078.             ORDER BY Sifra_Oddel DESC
  78079.         Else If @Nacin = 'TOCEN'
  78080.             SELECT @SlednaSifra=Sifra_Oddel, @SlednoIme=ImeOddel
  78081.             FROM XFOddel WITH(NOLOCK)
  78082.             WHERE Sifra_Oddel=@Ime
  78083.        End
  78084.     Else If @Tabela = 'XFTIPPREDMET'
  78085.        Begin        
  78086.         If @Nacin = 'SLEDEN'
  78087.             SELECT Top 1 @SlednaSifra=Sifra_TipPredmet, @SlednoIme=ImeTipPredmet
  78088.             FROM XFTipPredmet WITH(NOLOCK)
  78089.             WHERE Sifra_TipPredmet >@Ime
  78090.             ORDER BY Sifra_TipPredmet ASC
  78091.         Else If @Nacin = 'PRETHODEN'
  78092.             SELECT Top 1 @SlednaSifra=Sifra_TipPredmet, @SlednoIme=ImeTipPredmet
  78093.             FROM  XFTipPredmet WITH(NOLOCK)
  78094.             WHERE Sifra_TipPredmet<@Ime
  78095.             ORDER BY Sifra_TipPredmet DESC
  78096.         Else If @Nacin = 'TOCEN'
  78097.             SELECT @SlednaSifra=Sifra_TipPredmet, @SlednoIme=ImeTipPredmet
  78098.             FROM XFTipPredmet WITH(NOLOCK)
  78099.             WHERE Sifra_TipPredmet=@Ime
  78100.        End
  78101.     Else If @Tabela = 'XFOBLAST'
  78102.        Begin        
  78103.         If @Nacin = 'SLEDEN'
  78104.             SELECT Top 1 @SlednaSifra=Sifra_Oblast, @SlednoIme=ImeOblast
  78105.             FROM XFOblast WITH(NOLOCK)
  78106.             WHERE Sifra_Oblast >@Ime
  78107.             ORDER BY Sifra_Oblast ASC
  78108.         Else If @Nacin = 'PRETHODEN'
  78109.             SELECT Top 1 @SlednaSifra=Sifra_Oblast, @SlednoIme=ImeOblast
  78110.             FROM  XFOblast WITH(NOLOCK)
  78111.             WHERE Sifra_Oblast<@Ime
  78112.             ORDER BY Sifra_Oblast DESC
  78113.         Else If @Nacin = 'TOCEN'
  78114.             SELECT @SlednaSifra=Sifra_Oblast, @SlednoIme=ImeOblast
  78115.             FROM XFOblast WITH(NOLOCK)
  78116.             WHERE Sifra_Oblast=@Ime
  78117.        End
  78118.     Else If @Tabela = 'XFNAPRAVENO'
  78119.        Begin        
  78120.         If @Nacin = 'SLEDEN'
  78121.             SELECT Top 1 @SlednaSifra=Sifra_Napraveno, @SlednoIme=ImeNapraveno
  78122.             FROM XFNapraveno WITH(NOLOCK)
  78123.             WHERE Sifra_Napraveno >@Ime
  78124.             ORDER BY Sifra_Napraveno ASC
  78125.         Else If @Nacin = 'PRETHODEN'
  78126.             SELECT Top 1 @SlednaSifra=Sifra_Napraveno, @SlednoIme=ImeNapraveno
  78127.             FROM  XFNapraveno WITH(NOLOCK)
  78128.             WHERE Sifra_Napraveno<@Ime
  78129.             ORDER BY Sifra_Napraveno DESC
  78130.         Else If @Nacin = 'TOCEN'
  78131.             SELECT @SlednaSifra=Sifra_Napraveno, @SlednoIme=ImeNapraveno
  78132.             FROM XFNapraveno WITH(NOLOCK)
  78133.             WHERE Sifra_Napraveno=@Ime
  78134.         End
  78135.     Else If @Tabela = 'XFSTATUSBARANJE'
  78136.        Begin        
  78137.         If @Nacin = 'SLEDEN'
  78138.             SELECT Top 1 @SlednaSifra=Sifra_StatusBaranje, @SlednoIme=ImeStatusBaranje
  78139.             FROM XFStatusBaranje WITH(NOLOCK)
  78140.             WHERE Sifra_StatusBaranje >@Ime
  78141.             ORDER BY Sifra_StatusBaranje ASC
  78142.         Else If @Nacin = 'PRETHODEN'
  78143.             SELECT Top 1 @SlednaSifra=Sifra_StatusBaranje, @SlednoIme=ImeStatusBaranje
  78144.             FROM  XFStatusBaranje WITH(NOLOCK)
  78145.             WHERE Sifra_StatusBaranje<@Ime
  78146.             ORDER BY Sifra_StatusBaranje DESC
  78147.         Else If @Nacin = 'TOCEN'
  78148.             SELECT @SlednaSifra=Sifra_StatusBaranje, @SlednoIme=ImeStatusBaranje
  78149.             FROM XFStatusBaranje WITH(NOLOCK)
  78150.             WHERE Sifra_StatusBaranje=@Ime
  78151.         end 
  78152.     Else If @Tabela = 'NGSTUDENTS'        -- Pazi treba da e vo .... _MK
  78153.        Begin        
  78154.         If @Nacin = 'SLEDEN'
  78155.             SELECT Top 1 @SlednaSifra=Sifra_Student, @SlednoIme=ImeStudent
  78156.             FROM NGStudents WITH(NOLOCK)
  78157.             WHERE ImeStudent >@Ime
  78158.             ORDER BY ImeStudent ASC
  78159.         Else If @Nacin = 'PRETHODEN'
  78160.             SELECT Top 1 @SlednaSifra=Sifra_Student, @SlednoIme=ImeStudent
  78161.             FROM  NGStudents WITH(NOLOCK)
  78162.             WHERE ImeStudent<@Ime
  78163.             ORDER BY ImeStudent DESC
  78164.         Else If @Nacin = 'TOCEN'
  78165.             SELECT @SlednaSifra=Sifra_Student, @SlednoIme=ImeStudent
  78166.             FROM NGStudents WITH(NOLOCK)
  78167.             WHERE ImeStudent=@Ime
  78168.        End
  78169.     Else If @Tabela = 'DIJAGNOZI'
  78170.        Begin
  78171.         If @Nacin = 'Sleden'
  78172.             SELECT Top 1 @SlednaSifra=Sifra_Dijagn, @SlednoIme=ImeDijagn
  78173.             FROM Dijagnozi WITH(NOLOCK)
  78174.             WHERE ImeDijagn>@Ime
  78175.             ORDER BY ImeDijagn ASC, Sifra_Dijagn ASC
  78176.         Else If @Nacin = 'SledenEdnakov'
  78177.             SELECT Top 1 @SlednaSifra=Sifra_Dijagn, @SlednoIme=ImeDijagn 
  78178.             FROM Dijagnozi WITH(NOLOCK)
  78179.             WHERE ImeDijagn>=@Ime
  78180.             ORDER BY ImeDijagn ASC, Sifra_Dijagn ASC
  78181.         Else If @Nacin = 'Prethoden'
  78182.             SELECT Top 1 @SlednaSifra=Sifra_Dijagn, @SlednoIme=ImeDijagn 
  78183.             FROM Dijagnozi WITH(NOLOCK)
  78184.             WHERE ImeDijagn<@Ime
  78185.             ORDER BY ImeDijagn DESC, Sifra_Dijagn DESC
  78186.        End
  78187.     Else If @Tabela = 'LEKARI'
  78188.        Begin
  78189.         If @Nacin = 'Sleden'
  78190.             SELECT Top 1 @SlednaSifra=Sifra_Lekar, @SlednoIme=ImeLekar
  78191.             FROM Lekari WITH(NOLOCK)
  78192.             WHERE ImeLekar>@Ime
  78193.             ORDER BY ImeLekar ASC, Sifra_Lekar ASC
  78194.         Else If @Nacin = 'SledenEdnakov'
  78195.             SELECT Top 1 @SlednaSifra=Sifra_Lekar, @SlednoIme=ImeLekar 
  78196.             FROM Lekari WITH(NOLOCK)
  78197.             WHERE ImeLekar>=@Ime
  78198.             ORDER BY ImeLekar ASC, Sifra_Lekar ASC
  78199.         Else If @Nacin = 'Prethoden'
  78200.             SELECT Top 1 @SlednaSifra=Sifra_Lekar, @SlednoIme=ImeLekar 
  78201.             FROM Lekari WITH(NOLOCK)
  78202.             WHERE ImeLekar<@Ime
  78203.             ORDER BY ImeLekar DESC, Sifra_Lekar DESC
  78204.        End
  78205.     Else If @Tabela = 'FARMACEVT'
  78206.        Begin
  78207.         If @Nacin = 'Sleden'
  78208.             SELECT Top 1 @SlednaSifra=Sifra_Farmacevt, @SlednoIme=ImeFarmacevt
  78209.             FROM Farmacevt WITH(NOLOCK)
  78210.             WHERE ImeFarmacevt>@Ime
  78211.             ORDER BY ImeFarmacevt ASC, Sifra_Farmacevt ASC
  78212.         Else If @Nacin = 'SledenEdnakov'
  78213.             SELECT Top 1 @SlednaSifra=Sifra_Farmacevt, @SlednoIme=ImeFarmacevt 
  78214.             FROM Farmacevt WITH(NOLOCK)
  78215.             WHERE ImeFarmacevt>=@Ime
  78216.             ORDER BY ImeFarmacevt ASC, Sifra_Farmacevt ASC
  78217.         Else If @Nacin = 'Prethoden'
  78218.             SELECT Top 1 @SlednaSifra=Sifra_Farmacevt, @SlednoIme=ImeFarmacevt 
  78219.             FROM Farmacevt WITH(NOLOCK)
  78220.             WHERE ImeFarmacevt<@Ime
  78221.             ORDER BY ImeFarmacevt DESC, Sifra_Farmacevt DESC
  78222.        End
  78223.     Else If @Tabela = 'APTEKA'
  78224.        Begin
  78225.         If @Nacin = 'Sleden'
  78226.             SELECT Top 1 @SlednaSifra=Sifra_Apteka, @SlednoIme=ImeApteka
  78227.             FROM Apteka WITH(NOLOCK)
  78228.             WHERE ImeApteka>@Ime
  78229.             ORDER BY ImeApteka ASC, Sifra_Apteka ASC
  78230.         Else If @Nacin = 'SledenEdnakov'
  78231.             SELECT Top 1 @SlednaSifra=Sifra_Apteka, @SlednoIme=ImeApteka 
  78232.             FROM Apteka WITH(NOLOCK)
  78233.             WHERE ImeApteka>=@Ime
  78234.             ORDER BY ImeApteka ASC, Sifra_Apteka ASC
  78235.         Else If @Nacin = 'Prethoden'
  78236.             SELECT Top 1 @SlednaSifra=Sifra_Apteka, @SlednoIme=ImeApteka 
  78237.             FROM Apteka WITH(NOLOCK)
  78238.             WHERE ImeApteka<@Ime
  78239.             ORDER BY ImeApteka DESC, Sifra_Apteka DESC
  78240.        End
  78241.     Else If @Tabela = 'OSNOVOSIG'
  78242.        Begin
  78243.         If @Nacin = 'Sleden'
  78244.             SELECT Top 1 @SlednaSifra=Sifra_OsnovOsig, @SlednoIme=ImeOsnovOsig
  78245.             FROM OsnovOsig WITH(NOLOCK)
  78246.             WHERE ImeOsnovOsig>@Ime
  78247.             ORDER BY ImeOsnovOsig ASC, Sifra_OsnovOsig ASC
  78248.         Else If @Nacin = 'SledenEdnakov'
  78249.             SELECT Top 1 @SlednaSifra=Sifra_OsnovOsig, @SlednoIme=ImeOsnovOsig 
  78250.             FROM OsnovOsig WITH(NOLOCK)
  78251.             WHERE ImeOsnovOsig>=@Ime
  78252.             ORDER BY ImeOsnovOsig ASC, Sifra_OsnovOsig ASC
  78253.         Else If @Nacin = 'Prethoden'
  78254.             SELECT Top 1 @SlednaSifra=Sifra_OsnovOsig, @SlednoIme=ImeOsnovOsig 
  78255.             FROM OsnovOsig WITH(NOLOCK)
  78256.             WHERE ImeOsnovOsig<@Ime
  78257.             ORDER BY ImeOsnovOsig DESC, Sifra_OsnovOsig DESC
  78258.        End
  78259.     Else If @Tabela = 'PODRACNISLUZBI'
  78260.        Begin
  78261.         If @Nacin = 'Sleden'
  78262.             SELECT Top 1 @SlednaSifra=Sifra_PodrSluzba, @SlednoIme=ImePodrSluzba
  78263.             FROM PodracniSluzbi WITH(NOLOCK)
  78264.             WHERE ImePodrSluzba>@Ime
  78265.             ORDER BY ImePodrSluzba ASC, Sifra_PodrSluzba ASC
  78266.         Else If @Nacin = 'SledenEdnakov'
  78267.             SELECT Top 1 @SlednaSifra=Sifra_PodrSluzba, @SlednoIme=ImePodrSluzba 
  78268.             FROM PodracniSluzbi WITH(NOLOCK)
  78269.             WHERE ImePodrSluzba>=@Ime
  78270.             ORDER BY ImePodrSluzba ASC, Sifra_PodrSluzba ASC
  78271.         Else If @Nacin = 'Prethoden'
  78272.             SELECT Top 1 @SlednaSifra=Sifra_PodrSluzba, @SlednoIme=ImePodrSluzba 
  78273.             FROM PodracniSluzbi WITH(NOLOCK)
  78274.             WHERE ImePodrSluzba<@Ime
  78275.             ORDER BY ImePodrSluzba DESC, Sifra_PodrSluzba DESC
  78276.        End
  78277.     Else If @Tabela = 'ATCKODOVI'
  78278.        Begin
  78279.         If @Nacin = 'Sleden'
  78280.             SELECT Top 1 @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC
  78281.             FROM ATCKodovi WITH(NOLOCK)
  78282.             WHERE ImeATC>@Ime
  78283.             ORDER BY ImeATC ASC, Sifra_ATC ASC
  78284.         Else If @Nacin = 'SledenEdnakov'
  78285.             SELECT Top 1 @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC 
  78286.             FROM ATCKodovi WITH(NOLOCK)
  78287.             WHERE ImeATC>=@Ime
  78288.             ORDER BY ImeATC ASC, Sifra_ATC ASC
  78289.         Else If @Nacin = 'Prethoden'
  78290.             SELECT Top 1 @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC 
  78291.             FROM ATCKodovi WITH(NOLOCK)
  78292.             WHERE ImeATC<@Ime
  78293.             ORDER BY ImeATC DESC, Sifra_ATC DESC
  78294.        End
  78295.     Else If @Tabela = 'PACIENTI'
  78296.        Begin
  78297.         If @Nacin = 'Sleden'
  78298.             SELECT Top 1 @SlednaSifra=EMBG, @SlednoIme=ImePacient
  78299.             FROM Pacienti WITH(NOLOCK)
  78300.             WHERE ImePacient>@Ime
  78301.             ORDER BY ImePacient ASC, EMBG ASC
  78302.         Else If @Nacin = 'SledenEdnakov'
  78303.             SELECT Top 1 @SlednaSifra=EMBG, @SlednoIme=ImePacient 
  78304.             FROM Pacienti WITH(NOLOCK)
  78305.             WHERE ImePacient>=@Ime
  78306.             ORDER BY ImePacient ASC, EMBG ASC
  78307.         Else If @Nacin = 'Prethoden'
  78308.             SELECT Top 1 @SlednaSifra=EMBG, @SlednoIme=ImePacient 
  78309.             FROM Pacienti WITH(NOLOCK)
  78310.             WHERE ImePacient<@Ime
  78311.             ORDER BY ImePacient DESC, EMBG DESC
  78312.        End
  78313.       Else If @Tabela = 'PROEKT'
  78314.        Begin    
  78315.              If @Nacin = 'Sleden'
  78316.             SELECT Top 1 @SlednaSifra=Broj_Proekt, @SlednoIme=ImeProekt
  78317.             FROM Proekt WITH(NOLOCK)
  78318.             WHERE ImeProekt > @Ime
  78319.             ORDER BY ImeProekt ASC, Broj_Proekt ASC
  78320.         Else If @Nacin = 'SledenEdnakov'
  78321.             SELECT Top 1 @SlednaSifra=Broj_Proekt, @SlednoIme=ImeProekt
  78322.             FROM Proekt WITH(NOLOCK)
  78323.             WHERE ImeProekt >= @Ime
  78324.             ORDER BY ImeProekt ASC, Broj_Proekt ASC
  78325.         Else If @Nacin = 'Prethoden'
  78326.             SELECT top 1 @SlednaSifra=Broj_Proekt, @SlednoIme=ImeProekt
  78327.             FROM Proekt WITH(NOLOCK)
  78328.             WHERE ImeProekt < @Ime
  78329.             ORDER BY ImeProekt DESC, Broj_Proekt DESC
  78330.        End
  78331.  
  78332.  
  78333.  IF @@ERROR=0 AND @@ROWCOUNT=0
  78334.       RETURN 77000
  78335.    ELSE
  78336.       RETURN @@ERROR
  78337.  
  78338.  
  78339. Go
  78340. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden_ime_ng]'))
  78341. drop procedure [dbo].[sp_lkpsleden_ime_ng]
  78342.  
  78343. Go
  78344.  
  78345. --    Opis na Parametri
  78346. --    @Ime: Najmnogu 40 Karakteri.
  78347. --
  78348. --    @Tabela: Ime na tabelata po koja prebaruvame, case-sensitive.
  78349. --        Prifakja: Katart, Podgrupi, Grupi, Tarifi, Komint
  78350. --    @Nacin: Nacin na prebaruvanje.
  78351. --        Prifakja: Sleden, SledenEdnakov, Prethoden
  78352. --    @SlednaSifra: povraten parametar
  78353. --    @SlednoIme: povraten parametar
  78354.  
  78355. create PROCEDURE sp_lkpSleden_Ime_NG
  78356.     @Ime VARCHAR(70),
  78357.     @Tabela VARCHAR(20),
  78358.     @Nacin VARCHAR(15),
  78359.     @SlednaSifra VARCHAR(20) OUTPUT,
  78360.     @SlednoIme VARCHAR(70) OUTPUT,
  78361.     @SlednoIme2 VARCHAR(70) = Null OUTPUT,
  78362.     @OpcPrethSifra VARCHAR(20) = Null,
  78363.     @Filter        varchar(20)=NULL
  78364. AS
  78365.     Declare @Greska Int
  78366.     If @Nacin = 'SledenEdnakov'
  78367.         Set @Ime =  Replace(@Ime, '[', '[[]') 
  78368.     Set @Ime = Ltrim(Rtrim(@Ime))
  78369.              Set @Tabela = Upper(@Tabela)
  78370.  
  78371.     If @Tabela = 'NGBILLCODES'
  78372.        Begin        
  78373.         If @Nacin = 'SLEDEN'
  78374.             SELECT Top 1 @SlednaSifra=Sifra_BillCode, @SlednoIme=ImeBillCode
  78375.             FROM NGBillCodes WITH(NOLOCK)
  78376.             WHERE ImeBillCode >@Ime
  78377.             ORDER BY ImeBillCode ASC
  78378.         Else If @Nacin = 'PRETHODEN'
  78379.             SELECT Top 1 @SlednaSifra=Sifra_BillCode, @SlednoIme=ImeBillCode
  78380.             FROM  NGBillCodes WITH(NOLOCK)
  78381.             WHERE ImeBillCode<@Ime
  78382.             ORDER BY ImeBillCode DESC
  78383.         Else If @Nacin = 'TOCEN'
  78384.             SELECT @SlednaSifra=Sifra_BillCode, @SlednoIme=ImeBillCode
  78385.             FROM NGBillCodes WITH(NOLOCK)
  78386.             WHERE ImeBillCode=@Ime
  78387.             End
  78388.     Else If @Tabela = 'NGFAMILIJA'
  78389.        Begin        
  78390.         If @Nacin = 'SLEDEN'
  78391.             SELECT Top 1 @SlednaSifra=Sifra_Famil, @SlednoIme=ImeFamil
  78392.             FROM NGFamilija WITH(NOLOCK)
  78393.             WHERE ImeFamil >@Ime
  78394.             ORDER BY ImeFamil ASC
  78395.         Else If @Nacin = 'PRETHODEN'
  78396.             SELECT Top 1 @SlednaSifra=Sifra_Famil, @SlednoIme=ImeFamil
  78397.             FROM  NGFamilija WITH(NOLOCK)
  78398.             WHERE ImeFamil<@Ime
  78399.             ORDER BY ImeFamil DESC
  78400.         Else If @Nacin = 'TOCEN'
  78401.             SELECT @SlednaSifra=Sifra_Famil, @SlednoIme=ImeFamil
  78402.             FROM NGFamilija WITH(NOLOCK)
  78403.             WHERE ImeFamil=@Ime
  78404.             End
  78405.     Else If @Tabela = 'NGCOURSETYPE'
  78406.        Begin        
  78407.         If @Nacin = 'SLEDEN'
  78408.             SELECT Top 1 @SlednaSifra=Sifra_CourseType, @SlednoIme=ImeCourseType
  78409.             FROM NGCourseType WITH(NOLOCK)
  78410.             WHERE ImeCourseType >@Ime
  78411.             ORDER BY ImeCourseType ASC
  78412.         Else If @Nacin = 'PRETHODEN'
  78413.             SELECT Top 1 @SlednaSifra=Sifra_CourseType, @SlednoIme=ImeCourseType
  78414.             FROM  NGCourseType WITH(NOLOCK)
  78415.             WHERE ImeCourseType<@Ime
  78416.             ORDER BY ImeCourseType DESC
  78417.         Else If @Nacin = 'TOCEN'
  78418.             SELECT @SlednaSifra=Sifra_CourseType, @SlednoIme=ImeCourseType
  78419.             FROM NGCourseType WITH(NOLOCK)
  78420.             WHERE ImeCourseType=@Ime
  78421.             End
  78422.     Else If @Tabela = 'NGSCHOOLCODE'
  78423.        Begin        
  78424.         If @Nacin = 'SLEDEN'
  78425.             SELECT Top 1 @SlednaSifra=Sifra_SchoolYear, @SlednoIme=ImeSchoolYear
  78426.             FROM NGSchoolYear WITH(NOLOCK)
  78427.             WHERE ImeSchoolYear > @Ime
  78428.             ORDER BY ImeSchoolYear ASC
  78429.         Else If @Nacin = 'PRETHODEN'
  78430.             SELECT Top 1 @SlednaSifra=Sifra_SchoolYear, @SlednoIme=ImeSchoolYear
  78431.             FROM  NGSchoolYear WITH(NOLOCK)
  78432.             WHERE ImeSchoolYear < @Ime
  78433.             ORDER BY ImeSchoolYear DESC
  78434.         Else If @Nacin = 'TOCEN'
  78435.             SELECT @SlednaSifra=Sifra_SchoolYear, @SlednoIme=ImeSchoolYear
  78436.             FROM NGSchoolYear WITH(NOLOCK)
  78437.             WHERE ImeSchoolYear=@Ime
  78438.        End
  78439.  
  78440.    IF @@ERROR=0 AND @@ROWCOUNT=0
  78441.       RETURN 77000
  78442.    ELSE
  78443.       RETURN @@ERROR
  78444.  
  78445.  
  78446.  
  78447. Go
  78448. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden_mk]'))
  78449. drop procedure [dbo].[sp_lkpsleden_mk]
  78450.  
  78451. Go
  78452.  
  78453.  
  78454.  
  78455. --    Opis na Parametri
  78456. --    @Sifra: 3 ili 6 Karakteri, 3 za Grupi, 6 za Podgrupi, KatArt.
  78457. --        Mora da gi sodrzi vodeckite nuli.
  78458. --    @Tabela: Ime na tabelata po koja prebaruvame, case-sensitive.
  78459. --        Prifakja: Katart, Podgrupi, Grupi, Tarifi, Komint
  78460. --    @Nacin: Nacin na prebaruvanje.
  78461. --        Prifakja: SLEDEN, PRETHODEN, TOCEN
  78462. --    @SlednaSifra: povraten parametar
  78463. --    @SlednoIme: povraten parametar
  78464. CREATE     PROCEDURE sp_lkpSleden_MK
  78465.     @Sifra        NVARCHAR(20),
  78466.     @Tabela        VARCHAR(20),
  78467.     @Nacin        VARCHAR(10),
  78468.     @AlfaMoze    char(1) = 'N',
  78469.     @SlednaSifra    NVARCHAR(20) OUTPUT,
  78470.     @SlednoIme    NVARCHAR(70) OUTPUT,
  78471.     @SlednoIme2    NVARCHAR(70) = Null OUTPUT
  78472. AS
  78473.    Declare @Greska Int
  78474.    Declare @IntSifra Int
  78475.    Set @Tabela=Upper(@Tabela)
  78476.    Set @Nacin=Upper(@Nacin)
  78477.     If @AlfaMoze <> 'D' AND len(@Sifra) < 10
  78478.         Set @IntSifra = CONVERT(Int, @Sifra)
  78479.     If @Tabela = 'KATHIER'
  78480.        Begin
  78481.         If @Nacin = 'SLEDEN'
  78482.             SELECT Top 1 @SlednaSifra=Sifra_KHier, @SlednoIme=Ime_KHier, @SlednoIme2=Alt_ImeKHier 
  78483.             FROM KatHier WITH(NOLOCK)
  78484.             WHERE Sifra_KHier > @Sifra
  78485.             ORDER BY Sifra_KHier ASC
  78486.         Else If @Nacin = 'PRETHODEN'
  78487.             SELECT Top 1 @SlednaSifra=Sifra_KHier, @SlednoIme=Ime_KHier, @SlednoIme2=Alt_ImeKHier 
  78488.             FROM KatHier WITH(NOLOCK)
  78489.             WHERE Sifra_KHier < @Sifra
  78490.             ORDER BY Sifra_KHier DESC
  78491.         Else If @Nacin = 'TOCEN'
  78492.             SELECT @SlednaSifra=Sifra_KHier, @SlednoIme=Ime_KHier, @SlednoIme2=Alt_ImeKHier 
  78493.             FROM KatHier WITH(NOLOCK)
  78494.             WHERE Sifra_KHier=@Sifra
  78495.        End
  78496.     Else If @Tabela = 'XFIZVRSITEL'
  78497.        Begin        
  78498.         If @Nacin = 'SLEDEN'
  78499.             SELECT Top 1 @SlednaSifra=Sifra_Izvrs, @SlednoIme=ImeIzvrs
  78500.             FROM XFIzvrsitel WITH(NOLOCK)
  78501.             WHERE Sifra_Izvrs >@Sifra
  78502.             ORDER BY Sifra_Izvrs ASC
  78503.         Else If @Nacin = 'PRETHODEN'
  78504.             SELECT Top 1 @SlednaSifra=Sifra_Izvrs, @SlednoIme=ImeIzvrs
  78505.             FROM   XFIzvrsitel WITH(NOLOCK)
  78506.             WHERE Sifra_Izvrs<@Sifra
  78507.             ORDER BY Sifra_Izvrs  DESC
  78508.         Else If @Nacin = 'TOCEN'
  78509.             SELECT @SlednaSifra=Sifra_Izvrs, @SlednoIme=ImeIzvrs
  78510.             FROM  XFIzvrsitel WITH(NOLOCK)
  78511.             WHERE Sifra_Izvrs =@Sifra
  78512.                  End
  78513.     Else If @Tabela = 'XFODDEL'
  78514.        Begin        
  78515.         If @Nacin = 'SLEDEN'
  78516.             SELECT Top 1 @SlednaSifra=Sifra_Oddel, @SlednoIme=ImeOddel
  78517.             FROM XFOddel WITH(NOLOCK)
  78518.             WHERE Sifra_Oddel >@Sifra
  78519.             ORDER BY Sifra_Oddel ASC
  78520.         Else If @Nacin = 'PRETHODEN'
  78521.             SELECT Top 1 @SlednaSifra=Sifra_Oddel, @SlednoIme=ImeOddel
  78522.             FROM   XFOddel WITH(NOLOCK)
  78523.             WHERE Sifra_Oddel<@Sifra
  78524.             ORDER BY Sifra_Oddel  DESC
  78525.         Else If @Nacin = 'TOCEN'
  78526.             SELECT @SlednaSifra=Sifra_Oddel, @SlednoIme=ImeOddel
  78527.             FROM  XFOddel WITH(NOLOCK)
  78528.             WHERE Sifra_Oddel =@Sifra
  78529.                  End
  78530.     Else If @Tabela = 'XFVIDBARANJE'
  78531.        Begin        
  78532.         If @Nacin = 'SLEDEN'
  78533.             SELECT Top 1 @SlednaSifra=Sifra_VidBaranje, @SlednoIme=ImeVidBaranje
  78534.             FROM XFVidBaranje WITH(NOLOCK)
  78535.             WHERE Sifra_VidBaranje >@Sifra
  78536.             ORDER BY Sifra_VidBaranje ASC
  78537.         Else If @Nacin = 'PRETHODEN'
  78538.             SELECT Top 1 @SlednaSifra=Sifra_VidBaranje, @SlednoIme=ImeVidBaranje
  78539.             FROM   XFVidBaranje WITH(NOLOCK)
  78540.             WHERE Sifra_VidBaranje<@Sifra
  78541.             ORDER BY Sifra_VidBaranje  DESC
  78542.         Else If @Nacin = 'TOCEN'
  78543.             SELECT @SlednaSifra=Sifra_VidBaranje, @SlednoIme=ImeVidBaranje
  78544.             FROM  XFVidBaranje WITH(NOLOCK)
  78545.             WHERE Sifra_VidBaranje =@Sifra
  78546.     End
  78547.     Else If @Tabela = 'XFTIPPREDMET'
  78548.        Begin        
  78549.         If @Nacin = 'SLEDEN'
  78550.             SELECT Top 1 @SlednaSifra=Sifra_TipPredmet, @SlednoIme=ImeTipPredmet
  78551.             FROM XFTipPredmet WITH(NOLOCK)
  78552.             WHERE Sifra_TipPredmet >@Sifra
  78553.             ORDER BY Sifra_TipPredmet ASC
  78554.         Else If @Nacin = 'PRETHODEN'
  78555.             SELECT Top 1 @SlednaSifra=Sifra_TipPredmet, @SlednoIme=ImeTipPredmet
  78556.             FROM   XFTipPredmet WITH(NOLOCK)
  78557.             WHERE Sifra_TipPredmet < @Sifra
  78558.             ORDER BY Sifra_TipPredmet  DESC
  78559.         Else If @Nacin = 'TOCEN'
  78560.             SELECT @SlednaSifra=Sifra_TipPredmet, @SlednoIme=ImeTipPredmet
  78561.             FROM  XFTipPredmet WITH(NOLOCK)
  78562.             WHERE Sifra_TipPredmet =@Sifra
  78563.     End
  78564.     Else If @Tabela = 'XFSTATUSPREDMET'
  78565.        Begin        
  78566.         If @Nacin = 'SLEDEN'
  78567.             SELECT Top 1 @SlednaSifra=Sifra_StatusPredmet, @SlednoIme=ImeStatusPredmet
  78568.             FROM XFStatusPredmet WITH(NOLOCK)
  78569.             WHERE Sifra_StatusPredmet >@Sifra
  78570.             ORDER BY Sifra_StatusPredmet ASC
  78571.         Else If @Nacin = 'PRETHODEN'
  78572.             SELECT Top 1 @SlednaSifra=Sifra_StatusPredmet, @SlednoIme=ImeStatusPredmet
  78573.             FROM   XFStatusPredmet WITH(NOLOCK)
  78574.             WHERE Sifra_StatusPredmet < @Sifra
  78575.             ORDER BY Sifra_StatusPredmet  DESC
  78576.         Else If @Nacin = 'TOCEN'
  78577.             SELECT @SlednaSifra=Sifra_StatusPredmet, @SlednoIme=ImeStatusPredmet
  78578.             FROM  XFStatusPredmet WITH(NOLOCK)
  78579.             WHERE Sifra_StatusPredmet =@Sifra
  78580.     End
  78581.     Else If @Tabela = 'XFOBLAST'
  78582.        Begin        
  78583.         If @Nacin = 'SLEDEN'
  78584.             SELECT Top 1 @SlednaSifra=Sifra_Oblast, @SlednoIme=ImeOblast
  78585.             FROM XFOblast WITH(NOLOCK)
  78586.             WHERE Sifra_Oblast >@Sifra
  78587.             ORDER BY Sifra_Oblast ASC
  78588.         Else If @Nacin = 'PRETHODEN'
  78589.             SELECT Top 1 @SlednaSifra=Sifra_Oblast, @SlednoIme=ImeOblast
  78590.             FROM   XFOblast WITH(NOLOCK)
  78591.             WHERE Sifra_Oblast<@Sifra
  78592.             ORDER BY Sifra_Oblast  DESC
  78593.         Else If @Nacin = 'TOCEN'
  78594.             SELECT @SlednaSifra=Sifra_Oblast, @SlednoIme=ImeOblast
  78595.             FROM  XFOblast WITH(NOLOCK)
  78596.             WHERE Sifra_Oblast =@Sifra
  78597.         End
  78598.     Else If @Tabela = 'XFNAPRAVENO'
  78599.        Begin        
  78600.         If @Nacin = 'SLEDEN'
  78601.             SELECT Top 1 @SlednaSifra=Sifra_Napraveno, @SlednoIme=ImeNapraveno
  78602.             FROM XFNapraveno WITH(NOLOCK)
  78603.             WHERE Sifra_Napraveno >@Sifra
  78604.             ORDER BY Sifra_Napraveno ASC
  78605.         Else If @Nacin = 'PRETHODEN'
  78606.             SELECT Top 1 @SlednaSifra=Sifra_Napraveno, @SlednoIme=ImeNapraveno
  78607.             FROM   XFNapraveno WITH(NOLOCK)
  78608.             WHERE Sifra_Napraveno<@Sifra
  78609.             ORDER BY Sifra_Napraveno  DESC
  78610.         Else If @Nacin = 'TOCEN'
  78611.             SELECT @SlednaSifra=Sifra_Napraveno, @SlednoIme=ImeNapraveno
  78612.             FROM  XFNapraveno WITH(NOLOCK)
  78613.             WHERE Sifra_Napraveno =@Sifra
  78614.         End
  78615.     Else If @Tabela = 'XFSTATUSBARANJE'
  78616.        Begin        
  78617.         If @Nacin = 'SLEDEN'
  78618.             SELECT Top 1 @SlednaSifra=Sifra_StatusBaranje, @SlednoIme=ImeStatusBaranje
  78619.             FROM XFStatusBaranje WITH(NOLOCK)
  78620.             WHERE Sifra_StatusBaranje >@Sifra
  78621.             ORDER BY Sifra_StatusBaranje ASC
  78622.         Else If @Nacin = 'PRETHODEN'
  78623.             SELECT Top 1 @SlednaSifra=Sifra_StatusBaranje, @SlednoIme=ImeStatusBaranje
  78624.             FROM   XFStatusBaranje WITH(NOLOCK)
  78625.             WHERE Sifra_StatusBaranje<@Sifra
  78626.             ORDER BY Sifra_StatusBaranje  DESC
  78627.         Else If @Nacin = 'TOCEN'
  78628.             SELECT @SlednaSifra=Sifra_StatusBaranje, @SlednoIme=ImeStatusBaranje
  78629.             FROM  XFStatusBaranje WITH(NOLOCK)
  78630.             WHERE Sifra_StatusBaranje =@Sifra
  78631.         End
  78632.     Else If @Tabela = 'NGSTUDENTS'
  78633.        Begin        
  78634.         If @Nacin = 'SLEDEN'
  78635.             SELECT Top 1 @SlednaSifra=Sifra_Student, @SlednoIme=ImeStudent
  78636.             FROM NGStudents WITH(NOLOCK)
  78637.             WHERE Sifra_Student >@Sifra
  78638.             ORDER BY Sifra_Student ASC
  78639.         Else If @Nacin = 'PRETHODEN'
  78640.             SELECT Top 1 @SlednaSifra=Sifra_Student, @SlednoIme=ImeStudent
  78641.             FROM  NGStudents WITH(NOLOCK)
  78642.             WHERE Sifra_Student<@Sifra
  78643.             ORDER BY Sifra_Student DESC
  78644.         Else If @Nacin = 'TOCEN'
  78645.             SELECT @SlednaSifra=Sifra_Student, @SlednoIme=ImeStudent
  78646.             FROM NGStudents WITH(NOLOCK)
  78647.             WHERE Sifra_Student=@Sifra
  78648.        End
  78649.     Else If @Tabela = 'DIJAGNOZI'
  78650.        Begin
  78651.         If @Nacin = 'SLEDEN'
  78652.             SELECT Top 1 @SlednaSifra=Sifra_Dijagn, @SlednoIme=ImeDijagn
  78653.             FROM Dijagnozi WITH(NOLOCK)
  78654.             WHERE Sifra_Dijagn>@Sifra
  78655.             ORDER BY Sifra_Dijagn ASC
  78656.         Else If @Nacin = 'PRETHODEN'
  78657.             SELECT Top 1 @SlednaSifra=Sifra_Dijagn, @SlednoIme=ImeDijagn
  78658.             FROM Dijagnozi WITH(NOLOCK)
  78659.             WHERE Sifra_Dijagn<@Sifra
  78660.             ORDER BY Sifra_Dijagn DESC
  78661.         Else If @Nacin = 'TOCEN'
  78662.             SELECT @SlednaSifra=Sifra_Dijagn, @SlednoIme=ImeDijagn
  78663.             FROM Dijagnozi WITH(NOLOCK)
  78664.             WHERE Sifra_Dijagn=@Sifra
  78665.        End
  78666.     Else If @Tabela = 'LEKARI'
  78667.        Begin
  78668.         If @Nacin = 'SLEDEN'
  78669.             SELECT Top 1 @SlednaSifra=Sifra_Lekar, @SlednoIme=ImeLekar
  78670.             FROM Lekari WITH(NOLOCK)
  78671.             WHERE Sifra_Lekar>@Sifra
  78672.             ORDER BY Sifra_Lekar ASC
  78673.         Else If @Nacin = 'PRETHODEN'
  78674.             SELECT Top 1 @SlednaSifra=Sifra_Lekar, @SlednoIme=ImeLekar
  78675.             FROM Lekari WITH(NOLOCK)
  78676.             WHERE Sifra_Lekar<@Sifra
  78677.             ORDER BY Sifra_Lekar DESC
  78678.         Else If @Nacin = 'TOCEN'
  78679.             SELECT @SlednaSifra=Sifra_Lekar, @SlednoIme=ImeLekar
  78680.             FROM Lekari WITH(NOLOCK)
  78681.             WHERE Sifra_Lekar=@Sifra
  78682.        End
  78683.     Else If @Tabela = 'FARMACEVT'
  78684.        Begin
  78685.         If @Nacin = 'SLEDEN'
  78686.             SELECT Top 1 @SlednaSifra=Sifra_Farmacevt, @SlednoIme=ImeFarmacevt
  78687.             FROM Farmacevt WITH(NOLOCK)
  78688.             WHERE Sifra_Farmacevt>@Sifra
  78689.             ORDER BY Sifra_Farmacevt ASC
  78690.         Else If @Nacin = 'PRETHODEN'
  78691.             SELECT Top 1 @SlednaSifra=Sifra_Farmacevt, @SlednoIme=ImeFarmacevt
  78692.             FROM Farmacevt WITH(NOLOCK)
  78693.             WHERE Sifra_Farmacevt<@Sifra
  78694.             ORDER BY Sifra_Farmacevt DESC
  78695.         Else If @Nacin = 'TOCEN'
  78696.             SELECT @SlednaSifra=Sifra_Farmacevt, @SlednoIme=ImeFarmacevt
  78697.             FROM Farmacevt WITH(NOLOCK)
  78698.             WHERE Sifra_Farmacevt=@Sifra
  78699.        End
  78700.     Else If @Tabela = 'APTEKA'
  78701.        Begin
  78702.         If @Nacin = 'SLEDEN'
  78703.             SELECT Top 1 @SlednaSifra=Sifra_Apteka, @SlednoIme=ImeApteka
  78704.             FROM Apteka WITH(NOLOCK)
  78705.             WHERE Sifra_Apteka>@Sifra
  78706.             ORDER BY Sifra_Apteka ASC
  78707.         Else If @Nacin = 'PRETHODEN'
  78708.             SELECT Top 1 @SlednaSifra=Sifra_Apteka, @SlednoIme=ImeApteka
  78709.             FROM Apteka WITH(NOLOCK)
  78710.             WHERE Sifra_Apteka<@Sifra
  78711.             ORDER BY Sifra_Apteka DESC
  78712.         Else If @Nacin = 'TOCEN'
  78713.             SELECT @SlednaSifra=Sifra_Apteka, @SlednoIme=ImeApteka
  78714.             FROM Apteka WITH(NOLOCK)
  78715.             WHERE Sifra_Apteka=@Sifra
  78716.        End
  78717.     Else If @Tabela = 'OSNOVOSIG'
  78718.        Begin
  78719.         If @Nacin = 'SLEDEN'
  78720.             SELECT Top 1 @SlednaSifra=Sifra_OsnovOsig, @SlednoIme=ImeOsnovOsig
  78721.             FROM OsnovOsig WITH(NOLOCK)
  78722.             WHERE Sifra_OsnovOsig>@Sifra
  78723.             ORDER BY Sifra_OsnovOsig ASC
  78724.         Else If @Nacin = 'PRETHODEN'
  78725.             SELECT Top 1 @SlednaSifra=Sifra_OsnovOsig, @SlednoIme=ImeOsnovOsig
  78726.             FROM OsnovOsig WITH(NOLOCK)
  78727.             WHERE Sifra_OsnovOsig<@Sifra
  78728.             ORDER BY Sifra_OsnovOsig DESC
  78729.         Else If @Nacin = 'TOCEN'
  78730.             SELECT @SlednaSifra=Sifra_OsnovOsig, @SlednoIme=ImeOsnovOsig
  78731.             FROM OsnovOsig WITH(NOLOCK)
  78732.             WHERE Sifra_OsnovOsig=@Sifra
  78733.        End
  78734.     Else If @Tabela = 'PODRACNISLUZBI'
  78735.        Begin
  78736.         If @Nacin = 'SLEDEN'
  78737.             SELECT Top 1 @SlednaSifra=Sifra_PodrSluzba, @SlednoIme=ImePodrSluzba
  78738.             FROM PodracniSluzbi WITH(NOLOCK)
  78739.             WHERE Sifra_PodrSluzba>@Sifra
  78740.             ORDER BY Sifra_PodrSluzba ASC
  78741.         Else If @Nacin = 'PRETHODEN'
  78742.             SELECT Top 1 @SlednaSifra=Sifra_PodrSluzba, @SlednoIme=ImePodrSluzba
  78743.             FROM PodracniSluzbi WITH(NOLOCK)
  78744.             WHERE Sifra_PodrSluzba<@Sifra
  78745.             ORDER BY Sifra_PodrSluzba DESC
  78746.         Else If @Nacin = 'TOCEN'
  78747.             SELECT @SlednaSifra=Sifra_PodrSluzba, @SlednoIme=ImePodrSluzba
  78748.             FROM PodracniSluzbi WITH(NOLOCK)
  78749.             WHERE Sifra_PodrSluzba=@Sifra
  78750.        End
  78751.     Else If @Tabela = 'ATCKODOVI'
  78752.        Begin
  78753.         If @Nacin = 'SLEDEN'
  78754.             SELECT Top 1 @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC
  78755.             FROM ATCKodovi WITH(NOLOCK)
  78756.             WHERE Sifra_ATC>@Sifra
  78757.             ORDER BY Sifra_ATC ASC
  78758.         Else If @Nacin = 'PRETHODEN'
  78759.             SELECT Top 1 @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC
  78760.             FROM ATCKodovi WITH(NOLOCK)
  78761.             WHERE Sifra_ATC<@Sifra
  78762.             ORDER BY Sifra_ATC DESC
  78763.         Else If @Nacin = 'TOCEN'
  78764.             SELECT @SlednaSifra=Sifra_ATC, @SlednoIme=ImeATC
  78765.             FROM ATCKodovi WITH(NOLOCK)
  78766.             WHERE Sifra_ATC=@Sifra
  78767.        End
  78768.     Else If @Tabela = 'PACIENTI'
  78769.        Begin
  78770.         If @Nacin = 'SLEDEN'
  78771.             SELECT Top 1 @SlednaSifra=EMBG, @SlednoIme=ImePacient
  78772.             FROM Pacienti WITH(NOLOCK)
  78773.             WHERE Cast(EMBG as varchar(20))>@Sifra
  78774.             ORDER BY EMBG ASC
  78775.         Else If @Nacin = 'PRETHODEN'
  78776.             SELECT Top 1 @SlednaSifra=EMBG, @SlednoIme=ImePacient
  78777.             FROM Pacienti WITH(NOLOCK)
  78778.             WHERE Cast(EMBG as varchar(20))<@Sifra
  78779.             ORDER BY EMBG DESC
  78780.         Else If @Nacin = 'TOCEN'
  78781.             SELECT @SlednaSifra=EMBG, @SlednoIme=ImePacient
  78782.             FROM Pacienti WITH(NOLOCK)
  78783.             WHERE Cast(EMBG as varchar(20))=@Sifra
  78784.        End
  78785.         Else If @Tabela = 'OSNGRPODEL'
  78786.        Begin
  78787.         If @Nacin = 'SLEDEN'
  78788.             SELECT Top 1 @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  78789.             FROM OsnGrPodel WITH(NOLOCK)
  78790.             WHERE Sifra_OsnGrPodel>@Sifra
  78791.             ORDER BY Sifra_OsnGrPodel ASC
  78792.         Else If @Nacin = 'PRETHODEN'
  78793.             SELECT Top 1 @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  78794.             FROM OsnGrPodel WITH(NOLOCK)
  78795.             WHERE Sifra_OsnGrPodel<@Sifra
  78796.             ORDER BY Sifra_OsnGrPodel DESC
  78797.         Else If @Nacin = 'TOCEN'
  78798.             SELECT @SlednaSifra=Sifra_OsnGrPodel, @SlednoIme=ImeOsnGrPodel
  78799.             FROM OsnGrPodel WITH(NOLOCK)
  78800.             WHERE Sifra_OsnGrPodel=@Sifra
  78801.        End
  78802.     Else If @Tabela = 'PROEKT'
  78803.        Begin        
  78804.         If @Nacin = 'SLEDEN'
  78805.             SELECT Top 1 @SlednaSifra=Broj_Proekt, @SlednoIme=ImeProekt
  78806.             FROM Proekt WITH(NOLOCK)
  78807.             WHERE Broj_Proekt > @Sifra
  78808.             ORDER BY Broj_Proekt ASC
  78809.         Else If @Nacin = 'PRETHODEN'
  78810.             SELECT Top 1 @SlednaSifra=Broj_Proekt, @SlednoIme=ImeProekt
  78811.             FROM  Proekt WITH(NOLOCK)
  78812.             WHERE Broj_Proekt < @Sifra
  78813.             ORDER BY Broj_Proekt DESC
  78814.         Else If @Nacin = 'TOCEN'
  78815.             SELECT @SlednaSifra=Broj_Proekt, @SlednoIme=ImeProekt
  78816.             FROM Proekt WITH(NOLOCK)
  78817.             WHERE Broj_Proekt = @Sifra
  78818.         End
  78819.  
  78820.  
  78821.    IF @@ERROR=0 AND @@ROWCOUNT=0
  78822.       RETURN 77000
  78823.    ELSE
  78824.       RETURN @@ERROR
  78825.  
  78826.  
  78827.  
  78828. Go
  78829. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpsleden_ng]'))
  78830. drop procedure [dbo].[sp_lkpsleden_ng]
  78831.  
  78832. Go
  78833.  
  78834. CREATE PROCEDURE sp_lkpSleden_NG
  78835.     @Sifra        VARCHAR(20),
  78836.     @Tabela        VARCHAR(20),
  78837.     @Nacin        VARCHAR(10),
  78838.     @AlfaMoze    char(1) = 'N',
  78839.         @Sifra2        VARCHAR(20)=null,
  78840.     @SlednaSifra    VARCHAR(20) OUTPUT,
  78841.     @SlednoIme    VARCHAR(70) OUTPUT,
  78842.     @SlednoIme2    VARCHAR(70) = Null OUTPUT,
  78843.            @Filter        varchar(20) = NULL
  78844.  
  78845. AS
  78846.  
  78847.    Declare @Greska Int
  78848.    Declare @IntSifra Int
  78849.    Set @Tabela=Upper(@Tabela)
  78850.    Set @Nacin=Upper(@Nacin)
  78851.     If @AlfaMoze <> 'D' AND len(@Sifra)<10 AND @Tabela <> 'GTIPKUP'  AND @Tabela <> 'GRORG' AND @Tabela <> 'SYSUSERS' AND @Tabela <> 'NIVO' AND @Tabela <> 'BANKSMETKI'  AND @Tabela <> 'GRPIZBOR' AND @Tabela <> 'VIDVOZILA'
  78852.          AND @Tabela <> 'MIKROLOK' AND @Tabela <> 'MAKROLOK' AND @Tabela <> 'AKCIIPROMO' AND @Tabela <> 'KONFSLAGANJE' AND @Tabela <> 'ANAL'
  78853.          and @Tabela <> 'GRPAT' AND @Tabela <> 'VIDDOG' AND @Tabela <> 'TARMODEL' and @Tabela <> 'NGCOURSETYPE' and @Tabela <> 'NGSCHOOLYEAR' 
  78854.                  and @Tabela <> 'NGBILLCODES' and @Tabela <> 'NGFAMILIJA' and @Tabela <> 'FORMULADEF'
  78855.          Set @IntSifra = CONVERT(Int, @Sifra)
  78856.     If @Tabela = 'NGBILLCODES'
  78857.        Begin        
  78858.         If @Nacin = 'SLEDEN'
  78859.             SELECT Top 1 @SlednaSifra=Sifra_BillCode, @SlednoIme=ImeBillCode
  78860.             FROM NGBillCodes WITH(NOLOCK)
  78861.             WHERE Cast(Sifra_BillCode as varchar(20)) >@Sifra
  78862.             ORDER BY Sifra_BillCode ASC
  78863.         Else If @Nacin = 'PRETHODEN'
  78864.             SELECT Top 1 @SlednaSifra=Sifra_BillCode, @SlednoIme=ImeBillCode
  78865.             FROM  NGBillCodes WITH(NOLOCK)
  78866.             WHERE  Cast(Sifra_BillCode as varchar(20))<@Sifra
  78867.             ORDER BY Sifra_BillCode DESC
  78868.         Else If @Nacin = 'TOCEN'
  78869.             SELECT @SlednaSifra=Sifra_BillCode, @SlednoIme=ImeBillCode
  78870.             FROM NGBillCodes WITH(NOLOCK)
  78871.             WHERE  Cast(Sifra_BillCode as varchar(20))=@Sifra
  78872.             End
  78873.     Else If @Tabela = 'NGFAMILIJA'
  78874.        Begin        
  78875.         If @Nacin = 'SLEDEN'
  78876.             SELECT Top 1 @SlednaSifra=Sifra_Famil, @SlednoIme=ImeFamil
  78877.             FROM NGFamilija WITH(NOLOCK)
  78878.             WHERE Sifra_Famil >@Sifra
  78879.             ORDER BY Sifra_Famil ASC
  78880.         Else If @Nacin = 'PRETHODEN'
  78881.             SELECT Top 1 @SlednaSifra=Sifra_Famil, @SlednoIme=ImeFamil
  78882.             FROM  NGFamilija WITH(NOLOCK)
  78883.             WHERE Sifra_Famil<@Sifra
  78884.             ORDER BY Sifra_Famil DESC
  78885.         Else If @Nacin = 'TOCEN'
  78886.             SELECT @SlednaSifra=Sifra_Famil, @SlednoIme=ImeFamil
  78887.             FROM NGFamilija WITH(NOLOCK)
  78888.             WHERE Sifra_Famil=@Sifra
  78889.             End
  78890.     Else If @Tabela = 'NGCOURSETYPE'
  78891.        Begin        
  78892.         If @Nacin = 'SLEDEN'
  78893.             SELECT Top 1 @SlednaSifra=Sifra_CourseType, @SlednoIme=ImeCourseType
  78894.             FROM NGCourseType WITH(NOLOCK)
  78895.             WHERE Sifra_CourseType >@Sifra
  78896.             ORDER BY Sifra_CourseType ASC
  78897.         Else If @Nacin = 'PRETHODEN'
  78898.             SELECT Top 1 @SlednaSifra=Sifra_CourseType, @SlednoIme=ImeCourseType
  78899.             FROM  NGCourseType WITH(NOLOCK)
  78900.             WHERE Sifra_CourseType<@Sifra
  78901.             ORDER BY Sifra_CourseType DESC
  78902.         Else If @Nacin = 'TOCEN'
  78903.             SELECT @SlednaSifra=Sifra_CourseType, @SlednoIme=ImeCourseType
  78904.             FROM NGCourseType WITH(NOLOCK)
  78905.             WHERE Sifra_CourseType=@Sifra
  78906.             End
  78907.     Else If @Tabela = 'NGSCHOOLYEAR'
  78908.        Begin        
  78909.         If @Nacin = 'SLEDEN'
  78910.             SELECT Top 1 @SlednaSifra=Sifra_SchoolYear, @SlednoIme=ImeSchoolYear
  78911.             FROM NGSchoolYear WITH(NOLOCK)
  78912.             WHERE Sifra_SchoolYear > @Sifra
  78913.             ORDER BY Sifra_SchoolYear ASC
  78914.         Else If @Nacin = 'PRETHODEN'
  78915.             SELECT Top 1 @SlednaSifra=Sifra_SchoolYear, @SlednoIme=ImeSchoolYear
  78916.             FROM  NGSchoolYear WITH(NOLOCK)
  78917.             WHERE Sifra_SchoolYear < @Sifra
  78918.             ORDER BY Sifra_SchoolYear DESC
  78919.         Else If @Nacin = 'TOCEN'
  78920.             SELECT @SlednaSifra=Sifra_SchoolYear, @SlednoIme=ImeSchoolYear
  78921.             FROM NGSchoolYear WITH(NOLOCK)
  78922.             WHERE Sifra_SchoolYear = @Sifra
  78923.             End
  78924.  
  78925.    IF @@ERROR=0 AND @@ROWCOUNT=0
  78926.       RETURN 77000
  78927.    ELSE
  78928.       RETURN @@ERROR
  78929.  
  78930.  
  78931.  
  78932. Go
  78933. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lkpstipkarakt]'))
  78934. drop procedure [dbo].[sp_lkpstipkarakt]
  78935.  
  78936. Go
  78937.  
  78938.  
  78939. CREATE    PROCEDURE sp_lkpSTipKarakt
  78940.     @Sifra_7     SMALLINT
  78941. AS
  78942.     SELECT Sifra_Karakt FROM TipKarakt
  78943.     WHERE Sifra_7 = @Sifra_7
  78944.     ORDER BY Sifra_Karakt
  78945.     RETURN @@ERROR
  78946.  
  78947.  
  78948.  
  78949. Go
  78950. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lot_art_od_somag]'))
  78951. drop procedure [dbo].[sp_lot_art_od_somag]
  78952.  
  78953. Go
  78954.  
  78955. CREATE  PROCEDURE sp_lot_art_od_somag
  78956.     @Sifra_Oe    smallint,
  78957.     @Sifra_Art    varchar (20),
  78958.         @PickLokSamo    char(1)    = Null,
  78959.     @SostOpc    char(1) = 'S'
  78960. AS
  78961. Declare @NomKomerc  varchar(50)
  78962. select @NomKomerc = Nom_Pakuv
  78963. from KatPakuv
  78964. where Sifra_Art = @Sifra_Art and Sifra_KatPak = 2
  78965. if @NomKomerc is not null
  78966.    if @PickLokSamo = 'D'
  78967.      Select distinct Sifra_Art, LotBr, RokRed from SoMag
  78968.      where Sifra_Oe = @Sifra_Oe
  78969.            And Sifra_Art in (select Sifra_Art from KatPakuv where Sifra_KatPak = 2 And Nom_Pakuv = @NomKomerc)
  78970.            And cast (Lokacija as smallint) <= 50
  78971.            And Sostojba > 0
  78972.      Order By RokRed DESC
  78973.    else
  78974.      Select distinct Sifra_Art, LotBr, RokRed from SoMag
  78975.      where Sifra_Oe = @Sifra_Oe
  78976.            And Sifra_Art in (select Sifra_Art from KatPakuv where Sifra_KatPak = 2 And Nom_Pakuv = @NomKomerc)
  78977.      Order By RokRed DESC
  78978. else
  78979.    if @PickLokSamo = 'D'
  78980.      Select distinct Sifra_Art, LotBr, RokRed from SoMag
  78981.      where Sifra_Oe = @Sifra_Oe
  78982.          And Sifra_Art = @Sifra_Art
  78983.          And cast (Lokacija as smallint) <= 50
  78984.            And Sostojba > 0
  78985.      Order By RokRed DESC
  78986.    else
  78987.      Select distinct Sifra_Art, LotBr, RokRed from SoMag
  78988.      where Sifra_Oe = @Sifra_Oe
  78989.          And Sifra_Art = @Sifra_Art
  78990.      Order By RokRed DESC
  78991.  
  78992.  
  78993.  
  78994. Go
  78995. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_lot_art_od_whmsost]'))
  78996. drop procedure [dbo].[sp_lot_art_od_whmsost]
  78997.  
  78998. Go
  78999.  
  79000.  
  79001. CREATE    PROCEDURE sp_lot_art_od_WhmSost
  79002.     @Sifra_Oe    smallint,
  79003.     @Sifra_Art    varchar (20),
  79004.         @PickLokSamo    char(1)    = Null,
  79005.     @SostOpc    char(1) = 'S'
  79006. AS
  79007.  
  79008.      Select distinct Sifra_Art, LotBr, RokRed 
  79009.      from WhmSost
  79010.      where Sifra_Oe = @Sifra_Oe And Sifra_Art = @Sifra_Art
  79011.            And Sostojba > 0
  79012.      Order By RokRed
  79013.  
  79014.  
  79015.  
  79016. Go
  79017. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_maglistazbirnopoart]'))
  79018. drop procedure [dbo].[sp_maglistazbirnopoart]
  79019.  
  79020. Go
  79021.  
  79022.  
  79023.  
  79024. CREATE    PROCEDURE sp_MagListaZbirnoPoArt
  79025.     @Sifra_OE    smallint,
  79026.     @Sifra_Dok    smallint,
  79027.     @Broj_Dok    varchar(1000)
  79028. AS
  79029. Declare     @DokrID        varchar(1000)
  79030. Declare @SSQL varchar(2000)
  79031. CREATE TABLE #TmpDokrID
  79032. (DokrID    int)
  79033. SET @SSQL = 'SELECT DokrID FROM Dokr WHERE Sifra_OE=' +cast(@Sifra_OE as varchar(5))+'
  79034.  AND Sifra_Dok=' +cast(@Sifra_Dok as varchar(5))+ ' AND Broj_Dok IN ('+@Broj_Dok +')'
  79035. INSERT INTO #TmpDokrID EXEC (@SSQL)
  79036. SELECT P.Sifra_Art, A.ImeArt, A.EdMera, A.ImaKomerc, A.Lokacija, 
  79037. A.Sifra_Tar, S.POsn, CASE WHEN S.DanCena='D' THEN S.Cena ELSE Round(S.Cena*(1+S.POsn/100),4) END as Cena,   -- Round(S.NNabCena*(1+S.POsn/100),4 ) Cena, bese do 11.06.08
  79038. SUM(P.Kolic) Kolicina, SUM(P.Paketi) Paketi FROM MagStavr P
  79039. INNER JOIN KatArt A ON A.Sifra_Art=P.Sifra_Art
  79040. LEFT OUTER JOIN SoArt S ON S.Sifra_Art=P.Sifra_Art AND S.Sifra_OE= @Sifra_OE
  79041. WHERE P.DokrID IN (SELECT DokrID FROM #TmpDokrID)
  79042. GROUP BY P.Sifra_Art, A.ImeArt, A.EdMera, A.ImaKomerc, A.Lokacija, A.Sifra_Tar, S.Cena, S.DanCena, S.POsn 
  79043.  
  79044.  
  79045.  
  79046. Go
  79047. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_mark_0_pec_dok]'))
  79048. drop procedure [dbo].[sp_mark_0_pec_dok]
  79049.  
  79050. Go
  79051.  
  79052.  
  79053. CREATE     PROCEDURE sp_Mark_0_Pec_Dok
  79054.     @Sifra_Oe    smallint,
  79055.     @Sifra_Dok    smallint,
  79056.     @Broj_Dok    int
  79057.  
  79058. AS
  79059.  
  79060.     update dokr
  79061.     set Pec_Dok = null
  79062.     Where Sifra_Oe = @Sifra_oe and Sifra_Dok = @Sifra_Dok and Broj_Dok = @Broj_Dok
  79063.  
  79064.  
  79065.  
  79066.  
  79067. Go
  79068. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_mark_dokrlikvid]'))
  79069. drop procedure [dbo].[sp_mark_dokrlikvid]
  79070.  
  79071. Go
  79072.  
  79073.  
  79074.  
  79075.  
  79076.  
  79077. CREATE     PROCEDURE sp_Mark_DokrLikvid 
  79078.     @Sifra_Oe    smallint,
  79079.     @Sifra_dok    smallint,
  79080.     @Broj_Dok    int,
  79081.     @DaliLikvid    char(1)
  79082. AS
  79083.     Update Dokr Set Likvid = @DaliLikvid
  79084.     Where Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_dok=@Broj_Dok 
  79085.  
  79086.  
  79087.  
  79088. Go
  79089. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_mark_odjaven]'))
  79090. drop procedure [dbo].[sp_mark_odjaven]
  79091.  
  79092. Go
  79093.  
  79094.  
  79095. CREATE PROCEDURE sp_Mark_Odjaven
  79096.  
  79097.     @ListaDokrId varchar(7000)
  79098.  
  79099. AS
  79100.  
  79101.     Declare @SSQL varchar(7500)
  79102.  
  79103.     set @SSQL = '
  79104.         Update Dokr
  79105.         set Spck_Stat = ''F'' 
  79106.         where dokrid in (' + @ListaDokrId + ') '
  79107.  
  79108.     exec (@SSQL)
  79109.  
  79110.  
  79111.  
  79112. Go
  79113. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_mark_scanlista]'))
  79114. drop procedure [dbo].[sp_mark_scanlista]
  79115.  
  79116. Go
  79117.  
  79118. CREATE  PROCEDURE sp_Mark_ScanLista
  79119.     @Sifra_OE    smallint,
  79120.     @Tip_Lista    smallint,
  79121.     @Broj_Lista    int,
  79122.     @DokrId        int
  79123. AS
  79124.     update ScanLista
  79125.     set DokrId = @DokrId
  79126.     WHERE Sifra_OE=@Sifra_OE AND Tip_Lista=@Tip_Lista AND Broj_Lista=@Broj_Lista
  79127.  
  79128.  
  79129.  
  79130. Go
  79131. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_mark_storniran]'))
  79132. drop procedure [dbo].[sp_mark_storniran]
  79133.  
  79134. Go
  79135.  
  79136. CREATE PROCEDURE [dbo].[sp_Mark_Storniran]
  79137.     @DokrId int
  79138.  
  79139. AS
  79140.  
  79141.     Declare @SSQL varchar(7500)
  79142.  
  79143.     Update Dokr
  79144.     set Spck_Stat = 'S'
  79145.     where dokrid = @DokrId
  79146.  
  79147.  
  79148.  
  79149.  
  79150.  
  79151. Go
  79152. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_markblokirani]'))
  79153. drop procedure [dbo].[sp_markblokirani]
  79154.  
  79155. Go
  79156. CREATE   PROCEDURE sp_MarkBlokirani
  79157.     @KoiOE    varchar(300), 
  79158.     @KoiTipDok    varchar(100),
  79159.     @Datum_Do    smalldatetime,
  79160.     @Sifra_Kup    char(6) = NULL,
  79161.     @Sifra_Obj    smallint = NULL,
  79162.     @IskluciMes    char(1) = 'N'
  79163. AS
  79164.     Declare @SSQL    varchar(4000)
  79165.     SET @SSQL = 'UPDATE Dokr SET Blokiran = ''T'' WHERE Sifra_OE IN (' + @KoiOE + 
  79166.     ') AND Sifra_Dok IN (' + @KoiTipDok + ') AND Datum_Dok <= ''' + 
  79167.     Cast(@Datum_Do as varchar(35)) + ''' AND (Blokiran <> ''D''  OR Blokiran IS NULL) '
  79168.     IF @Sifra_Kup IS NOT NULL
  79169.         SET @SSQL = @SSQL + ' AND Sifra_Kup = ' + @Sifra_Kup
  79170.     IF @Sifra_Obj IS NOT NULL
  79171.         SET @SSQL = @SSQL + ' AND Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6))
  79172.     IF @IskluciMes = 'D'
  79173.         SET @SSQL = @SSQL + ' AND Sifra_Kup NOT IN (SELECT Sifra_Kup FROM Komint WHERE KDrugo5 IS NULL OR KDrugo5 <> 1)'
  79174.     EXEC(@SSQL)
  79175.  
  79176.  
  79177. Go
  79178. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_material_export]'))
  79179. drop procedure [dbo].[sp_material_export]
  79180.  
  79181. Go
  79182.  
  79183.  
  79184.  
  79185. CREATE    PROCEDURE sp_Material_Export
  79186.     @Sifra_Oe smallint,
  79187.     @Datum_Dok smalldatetime
  79188. AS
  79189.     IF EXISTS ( SELECT * FROM tempdb..sysobjects WHERE name='##TmpMaterExp') DROP TABLE ##TmpMaterExp
  79190.     CREATE TABLE ##TmpMaterExp
  79191.     (    
  79192.         Sifra_Art CHAR(18), 
  79193.         PlivaMaterial CHAR(18) NULL, 
  79194.         EdMera CHAR(3), 
  79195.         ImeArt CHAR(40), 
  79196.         MaterialType CHAR(4),
  79197.         StandardPrice CHAR(11) NULL,    
  79198.         CurrencyKey CHAR(3) NULL
  79199.     )
  79200.  
  79201.     CREATE TABLE #TmpNabVred
  79202.     (Sifra_Art    varchar(20),
  79203.      NabVrednost    decimal(18,2),
  79204.      NabKolic    decimal(18,2))
  79205.  
  79206.     INSERT INTO #TmpNabVred (Sifra_Art, NabVrednost, NabKolic) 
  79207.     SELECT Sifra_Art, Round(Sum(Case VlIzl When 'V' Then Kolic*NabCena Else -1*Kolic*NabCena End),2), Sum(Case VlIzl When 'V' Then Kolic Else -1*Kolic End)
  79208.     From Stavr 
  79209.     Where Sifra_Oe=101 And Datum_Dok<=@Datum_Dok 
  79210.     Group By Sifra_Art 
  79211.     Having  Sum(Case VlIzl When 'V' Then Kolic Else -1*Kolic End) > 0
  79212.  
  79213.     INSERT INTO #TmpNabVred (Sifra_Art, NabVrednost, NabKolic)
  79214.     Select Sifra_Art, Sum(Case When VlIzl='V' Then Iznos_Razl Else -1*Iznos_Razl End), 0 
  79215.     From RazlFin
  79216.     Where Sifra_Oe=101 And Datum_Dok<=@Datum_Dok 
  79217.     Group By Sifra_Art 
  79218.  
  79219.     Create Table #TmpPom
  79220.     (Sifra_Art    varchar(20),
  79221.      NabVrednost    decimal(18,2),
  79222.      NabKolic    decimal(18,2))
  79223.  
  79224.     Insert Into #TmpPom
  79225.     Select Sifra_Art, Sum(NabVrednost), Sum(NabKolic)
  79226.     From #TmpNabVred
  79227.     Group By Sifra_Art
  79228.         
  79229.     
  79230.     CREATE TABLE #TmpNabC
  79231.     (Sifra_Art    varchar(20),
  79232.      NabCena    decimal(9,2))
  79233.  
  79234.     INSERT INTO #TmpNabC (Sifra_Art, NabCena) 
  79235.     SELECT Sifra_Art, Round(Sum(Case When NabKolic > 0 Then NabVrednost/NabKolic Else 0 End),4)
  79236.     From #TmpPom 
  79237.     Group By Sifra_Art
  79238.  
  79239. --UPDATE ##TmpMaterExp set StandardPrice = C.NabCena FROM #TmpNabC C WHERE ##TmpMaterExp.Sifra_Art = C.Sifra_Art
  79240.     INSERT INTO ##TmpMaterExp 
  79241.     SELECT K.Sifra_Art, K.Sifra_Art, 'PC', K.ImeArt, 'FERT', T.NabCena, NULL 
  79242.     FROM KatArt K LEFT OUTER JOIN #TmpNabC T ON K.Sifra_Art=T.Sifra_Art  WHERE K.Aktiven='D'
  79243. -- SELECT Sifra_Art, ImeArt, CAST(CAST(ROUND(Nabavna,2) AS DECIMAL(9,2))AS CHAR(11)) from Katart Where Aktiven='D' Order By Nabavna DESC
  79244.  
  79245. Go
  79246. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_materijalno_finansovo]'))
  79247. drop procedure [dbo].[sp_materijalno_finansovo]
  79248.  
  79249. Go
  79250.  
  79251.  
  79252.  
  79253. CREATE     PROCEDURE sp_Materijalno_Finansovo
  79254.     @Kto            varchar(300) = Null,
  79255.     @Datum_Nal_Od    smalldatetime = Null,
  79256.     @Datum_Nal_Do    smalldatetime = Null,
  79257.     @SamoOdOrged    char(1) = Null,
  79258.     @Sifra_Oe        smallint = Null,
  79259.     @Koi_Oe        varchar(10) = Null,
  79260.     @PoKojaCena        char(1) = 'D',       -- N - NabCena,  M - MagCena,    D - (Mag.cena na Vlez, Prodazna na Izlez)
  79261.     @CenaSoDanok    char(1) = 'N',
  79262.     @Sifra_Nal        smallint = Null,
  79263.     @PoMeseci        char(1) = Null,
  79264.     @BezBrNal        char(1) = Null,
  79265.     @Datum_DokOd    smalldatetime = Null,       -- se odnesuva na dokumenti bez broj na nalog (period od\do)
  79266.     @Datum_DokDo    smalldatetime = Null,       -- se odnesuva na dokumenti bez broj na nalog (period od\do)
  79267.     @PrikRazlCeni        char(1) = 'N'
  79268. AS
  79269.     Declare @SSQL as varchar(4000)
  79270.     Declare @SSQLUslMat as varchar(4000)
  79271.     Declare @SSQLUslFin as varchar(4000)
  79272.  
  79273.     Set @SSQLUslMat = ' '
  79274.     Set @SSQLUslFin = ' '
  79275.  
  79276.  
  79277.     Create Table #Tab
  79278.     (
  79279.         Sifra_Nal    smallint,
  79280.         Broj_Nal    int,
  79281.         Datum_Nal    smalldatetime,
  79282.         MatDolzi    decimal(18,6),
  79283.         MatPobaruva    decimal(18,6),
  79284.         GkDolzi        decimal(18,6),
  79285.         GkPobaruva    decimal(18,6),
  79286.         Rabat        decimal(18,6)
  79287.     )
  79288.  
  79289.         ---------------------------------------------------------------------
  79290.         Set @SSQL = @SSQL + ' (Case When TD.ImaDanok = ''N'' And S.DanMagCena = ''D'' And S.Posn = 0
  79291.                         Then 
  79292.                             (Case When T.ProcOsn < 15 Then DS.Stapka2 Else DS.Stapka1 End) 
  79293.                         Else 
  79294.                             S.Posn 
  79295.                         End) Posn '
  79296.         -- ova do ovde ne znam zossto e staveno zatoa ssto vo nikoj slucaj ne se izvrssuvat
  79297.  
  79298.  
  79299.         Set @SSQL = ' Select D.Sifra_Nal, D.Broj_Nal, '
  79300.         If @PoMeseci = 'D'
  79301.             Set @SSQL = @SSQL + ' N.Datum_Nal, '
  79302.         Else 
  79303.             Set @SSQL = @SSQL + ' N.Datum_Nal, '
  79304.         If @PoKojaCena = 'N'
  79305.         Begin
  79306.             Set @SSQL=@SSQL + ' Sum(Case D.VlIzl When ''V'' Then (S.Kolic* dbo.fn_VratiCena(S.NabCena, S.Posn, ''N'', ''' + @CenaSoDanok + ''' )) Else 0 End), 
  79307.                         Sum(Case D.VlIzl When ''I'' Then (S.Kolic* dbo.fn_VratiCena(S.NabCena, S.Posn, ''N'', ''' + @CenaSoDanok + ''')) Else 0 End), '
  79308.         End
  79309.         Else If @PoKojaCena = 'M'
  79310.         Begin
  79311.             Set @SSQL=@SSQL + ' Sum(Case D.VlIzl When ''V'' Then (S.Kolic* dbo.fn_VratiCena(S.MagCena, 
  79312.                                         (Case When TD.ImaDanok = ''N'' And S.DanMagCena = ''D'' And S.Posn = 0 
  79313.                                          Then (Case When T.ProcOsn < 15 Then DS.Stapka2 Else DS.Stapka1 End) Else S.Posn End), 
  79314.                                         S.DanMagCena, ''' + @CenaSoDanok + ''')) Else 0 End), 
  79315.                         Sum(Case D.VlIzl When ''I'' Then (S.Kolic* dbo.fn_VratiCena(S.MagCena, 
  79316.                                         (Case When TD.ImaDanok = ''N'' And S.DanMagCena = ''D'' And S.Posn = 0 
  79317.                                          Then (Case When T.ProcOsn < 15 Then DS.Stapka2 Else DS.Stapka1 End) Else S.Posn End), 
  79318.                                         S.DanMagCena, ''' + @CenaSoDanok + ''')) Else 0 End), '
  79319.         End
  79320.         Else If @PoKojaCena = 'D'
  79321.         Begin
  79322.             Set @SSQL=@SSQL + ' Sum(Case D.VlIzl When ''V'' Then (S.Kolic* dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ''' + @CenaSoDanok + ''')) Else 0 End), 
  79323.                         Sum(Case D.VlIzl When ''I'' Then (S.Kolic* dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @CenaSoDanok + ''')) Else 0 End), '
  79324.         End
  79325.         Set @SSQL = @SSQL + ' Sum(dbo.fn_VratiRabatBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces)) as Rabat '
  79326.         Set @SSQL = @SSQL + ' From Dokr D
  79327.                     Inner Join Stavr S On S.DokrID=D.DokrID
  79328.                     Left Outer Join Nalozi N On N.Sifra_Nal = D.Sifra_Nal and N.Broj_Nal = D.Broj_Nal 
  79329.                     INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  79330.                     INNER JOIN Katart K ON K.Sifra_Art=S.Sifra_Art
  79331.                     Inner Join Tarifi T On T.Sifra_Tar = K.Sifra_Tar 
  79332.                     Left Outer Join DDVStapki DS On S.Datum_Dok >= DS.Datum_Od And S.Datum_Dok <= DS.Datum_Do   
  79333.                     Where 1=1 '
  79334.  
  79335.     If @Sifra_Nal Is Not Null
  79336.         Set @SSQLUslMat = @SSQLUslMat + ' And D.Sifra_Nal = ''' + Cast(@Sifra_Nal as varchar(10)) + ''' '
  79337.     If @Datum_Nal_Od Is Not Null 
  79338.     Begin
  79339.         If @BezBrNal <> 'D' Or @BezBrNal Is Null
  79340.             Set @SSQLUslMat = @SSQLUslMat + ' And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od as varchar(30)) + ''' '
  79341.         Else 
  79342.             Set @SSQLUslMat = @SSQLUslMat + ' And (N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od as varchar(30)) + ''' Or Datum_Nal Is Null)'
  79343.     End
  79344.     If @Datum_Nal_Do Is Not Null
  79345.     Begin
  79346.         If @BezBrNal <> 'D' Or @BezBrNal Is Null
  79347.             Set @SSQLUslMat = @SSQLUslMat + ' And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do as varchar(30)) + ''' '
  79348.         Else 
  79349.             Set @SSQLUslMat = @SSQLUslMat + ' And (N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do as varchar(30)) + ''' Or Datum_Nal Is Null)'
  79350.     End
  79351.     If @BezBrNal = 'D' and @Datum_DokOd Is Not Null
  79352.         Set @SSQLUslMat = @SSQLUslMat + ' And D.Datum_Dok >= ''' + Cast(@Datum_DokOd as varchar(30)) + ''' '
  79353.     If @BezBrNal = 'D' and @Datum_DokDo Is Not Null
  79354.         Set @SSQLUslMat = @SSQLUslMat + ' And D.Datum_Dok <= ''' + Cast(@Datum_DokDo as varchar(30)) + ''' '
  79355. /*    If @BezBrNal<>'D'  -- koga se bara izvestaj za onie stavki bez broj na nalog se isklucuvaat datumite
  79356.     Begin
  79357.         If @Datum_Nal_Od Is Not Null
  79358.             Set @SSQL = @SSQL + ' And N.Datum_Nal >= ''' + Cast(@Datum_Nal_Od as varchar(30)) + ''' '
  79359.         If @Datum_Nal_Do Is Not Null
  79360.             Set @SSQL = @SSQL + ' And N.Datum_Nal <= ''' + Cast(@Datum_Nal_Do as varchar(30)) + ''' '
  79361.     End
  79362. */    If @Sifra_Oe Is Not Null
  79363.         Set @SSQLUslMat = @SSQLUslMat + ' And D.Sifra_Oe = ''' + Cast(@Sifra_Oe as varchar(10)) + ''' '
  79364.     If @Koi_OE Is Not NULL
  79365.              Set @SSQLUslMat = @SSQLUslMat + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  79366.     
  79367.     Set @SSQL = @SSQL + @SSQLUslMat
  79368.  
  79369.     If @PoMeseci = 'D'
  79370.         Set @SSQL = @SSQL + ' Group By D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal '
  79371.     Else
  79372.         Set @SSQL = @SSQL + ' Group By D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal '
  79373.     Insert Into #Tab(Sifra_Nal, Broj_Nal, Datum_Nal, MatDolzi, MatPobaruva, Rabat) Exec(@SSQL)
  79374.  
  79375.  
  79376.     Set @SSQL = ' Select Sifra_Nal, Broj_Nal, Datum_Nal, sum(Dolzi), Sum(pobaruva)
  79377.             From GStav 
  79378.             Where 1=1 '    
  79379.     If @Kto Is Not Null 
  79380.         Set @SSQL = @SSQL + ' And Kto_Anal In ( ' + @Kto + ') '
  79381.     If @Sifra_Nal Is Not Null
  79382.         Set @SSQL = @SSQL + ' And Sifra_Nal = ''' + Cast(@Sifra_Nal as varchar(10)) + ''' '
  79383.     If @Datum_Nal_Od Is Not Null
  79384.         Set @SSQL = @SSQL + ' And Datum_Nal >= ''' + Cast(@Datum_Nal_Od as varchar(30)) + ''' '
  79385.     If @Datum_Nal_Do Is Not Null
  79386.         Set @SSQL = @SSQL + ' And Datum_Nal <= ''' + Cast(@Datum_Nal_Do as varchar(30)) + ''' '
  79387.     If @SamoOdOrged = 'D'
  79388.     Begin
  79389.         If @Sifra_Oe Is Not Null
  79390.             Set @SSQL = @SSQL + ' And Sifra_Oe = ''' + Cast(@Sifra_Oe as varchar(10)) + ''' '
  79391.         If @Koi_OE Is Not NULL
  79392.                  Set @SSQL = @SSQL + ' And Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  79393.     End
  79394.     Set @SSQL = @SSQL + ' Group By  Sifra_Nal, Broj_Nal, Datum_Nal '
  79395. --    If @BezBrNal <> 'D'    --  (='N' ili Null)  Da ne se izvrsuva dzabe ako sakame da gi vidime samo dok. bez br.na nalog, zatoa sto vo GStav sekogas ima broj na nalog
  79396.     Insert Into #Tab(Sifra_Nal, Broj_Nal, Datum_Nal, GkDolzi, GkPobaruva) Exec(@SSQL)
  79397.  
  79398.     If @PrikRazlCeni = 'D'
  79399.     Begin
  79400.         If @PoKojaCena = 'D'
  79401.         Begin
  79402.             Set @SSQL = ' Select D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, 
  79403. Sum(D.Kolic*(dbo.fn_VratiCena(D.KrCena,D.POsn,D.DanKrCena,'''+@CenaSoDanok+''')-dbo.fn_VratiCena(D.PocCena,D.POsn,D.DanPocCena,'''+@CenaSoDanok+'''))), 0
  79404.                     From RazlCeni D
  79405.                     Left Outer Join Nalozi N On N.Sifra_Nal = D.Sifra_Nal and N.Broj_Nal = D.Broj_Nal 
  79406.                     Where 1=1 ' + @SSQLUslMat + ' Group By D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal '
  79407. --            print @SSQL
  79408.             Insert Into #Tab(Sifra_Nal, Broj_Nal, Datum_Nal, MatDolzi, MatPobaruva) Exec(@SSQL)            
  79409.         End
  79410.         Else If @PoKojaCena = 'N'
  79411.         Begin
  79412.             Set @SSQL = ' Select D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, 
  79413.                         Sum(Case When D.VlIzl=''V'' Then D.Iznos_Razl Else 0 End),
  79414.                         Sum(Case When D.VlIzl=''I'' Then D.Iznos_Razl Else 0 End) 
  79415.                     From RazlFin D
  79416.                     Left Outer Join Nalozi N On N.Sifra_Nal = D.Sifra_Nal and N.Broj_Nal = D.Broj_Nal 
  79417.                     Where 1=1 ' + @SSQLUslMat + ' Group By D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal '
  79418. --            print @SSQL
  79419.             Insert Into #Tab(Sifra_Nal, Broj_Nal, Datum_Nal, MatDolzi, MatPobaruva) Exec(@SSQL)
  79420.         End
  79421.         ELSE IF @PoKojaCena='M'
  79422.         Begin
  79423.             Set @SSQL = ' Select D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal, 
  79424.                         Sum(Case When D.VlIzl=''V'' Then D.Iznos_Razl Else 0 End),
  79425.                         Sum(Case When D.VlIzl=''I'' Then D.Iznos_Razl Else 0 End) 
  79426.                     From RazlProd D
  79427.                     Left Outer Join Nalozi N On N.Sifra_Nal = D.Sifra_Nal and N.Broj_Nal = D.Broj_Nal 
  79428.                     Where 1=1 ' + @SSQLUslMat + ' Group By D.Sifra_Nal, D.Broj_Nal, N.Datum_Nal '
  79429.             Insert Into #Tab(Sifra_Nal, Broj_Nal, Datum_Nal, MatDolzi, MatPobaruva) Exec(@SSQL)
  79430.         End
  79431.     End    
  79432.  
  79433.  
  79434.     Set @SSQL = ' Select T.Sifra_Nal, T.Broj_Nal, T.Datum_Nal, ' 
  79435.         If @PoMeseci = 'D'
  79436.             Set @SSQL = @SSQL + ' Month(T.Datum_Nal) as Mesec, Year(T.Datum_Nal) Godina, '
  79437.         Else 
  79438.             Set @SSQL = @SSQL + ' Null as Mesec, Null as Godina, '
  79439.     Set @SSQL = @SSQL + ' 0 as Kto, '' '' as ImeAnal, 
  79440.                 Round(Sum(T.MatDolzi), 4) MatDolzi, Round(Sum(T.MatPobaruva), 4) MatPobaruva, Round(Sum(T.MatDolzi-T.MatPobaruva), 4) MatSaldo,
  79441.                 Round(Sum(T.GkDolzi), 4) GkDolzi, Round(Sum(T.GkPobaruva), 4) GkPobaruva, Round(Sum(T.GkDolzi-T.GkPobaruva), 4) GkSaldo, Round(Sum(T.Rabat), 4) as Rabat
  79442.                 From #Tab T '
  79443. --        If @BezBrNal = 'D'
  79444. --            Set @SSQL = @SSQL + ' Where T.Datum_Nal Is Null '
  79445.         If @PoMeseci = 'D'
  79446.             Set @SSQL = @SSQL + ' Group By T.Sifra_Nal, T.Broj_Nal, Month(T.Datum_Nal), Year(T.Datum_Nal), T.Datum_Nal
  79447.                         Order by T.Sifra_Nal, T.Broj_Nal, Year(T.Datum_Nal), Month(T.Datum_Nal) '
  79448.         Else 
  79449.             Set @SSQL = @SSQL + ' Group By T.Sifra_Nal, T.Broj_Nal, T.Datum_Nal
  79450.                         Order by  T.Sifra_Nal, T.Broj_Nal '
  79451.     Exec(@SSQL)
  79452.  
  79453.  
  79454.  
  79455. Go
  79456. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matic_pregled]'))
  79457. drop procedure [dbo].[sp_matic_pregled]
  79458.  
  79459. Go
  79460.  
  79461.  
  79462.  
  79463.  
  79464.  
  79465.  
  79466.  
  79467. CREATE       PROCEDURE [dbo].[sp_Matic_Pregled]
  79468.     @Tabela VARCHAR(20),
  79469.         @Opc_Param_Int as integer = Null
  79470. AS
  79471.  
  79472.    Set @Tabela=Upper(@Tabela)
  79473.  
  79474.    If @Tabela='ORGED'
  79475.       Select * From Orged Order By Sifra_OE
  79476.    Else If @Tabela='GRUPI'
  79477.       Select * From Grupi Order By Sifra_Gr
  79478.    Else If @Tabela='USL_KOLRAB_FRA'
  79479.       Select * From Usl_KolRab_Fra 
  79480.    Else If @Tabela='PODGRUPI'
  79481.       Select P.*, G.Ime_Gr
  79482.       From Podgrupi P
  79483.       Inner Join Grupi G ON P.Sifra_Gr=G.Sifra_Gr
  79484.       Order By P.Sifra_Podg
  79485.    Else If @Tabela='TIPDOK'
  79486.       Select TD.*, TN.ImeNal
  79487.       From TipDok TD
  79488.       Inner Join  TipNal TN ON TD.Sifra_Nal=TN.Sifra_Nal
  79489.       Order By Sifra_Dok
  79490.    Else If @Tabela='TIPNAL' 
  79491.       Select * From TipNal Order by Sifra_Nal
  79492.    Else If @Tabela='TARIFI' 
  79493.       Select * From Tarifi
  79494.       Order by Sifra_Tar
  79495.    Else if @Tabela='MARKETI'
  79496.        Select * FROM Marketi
  79497.        Order by Sifra_Mark
  79498.    Else If @Tabela='KOBJEKTI'
  79499.         Select K.Sifra_Kup, K.ImeKup, KO.*
  79500.         From KObjekti KO
  79501.         Inner Join Komint K On KO.Sifra_Kup=K.Sifra_Kup
  79502.         Where Sifra_Obj <> 0
  79503.         Order By KO.Sifra_Kup, KO.Sifra_Obj
  79504.    Else If @Tabela='GREGION'
  79505.         Select * From GRegion
  79506.    Else If @Tabela='GTIPKUP'
  79507.         Select * From GTipKup
  79508.    Else If @Tabela='ANAL'
  79509.         Select * From ANAL ORDER BY KTO_ANAL
  79510.    Else If @Tabela='GRAD'
  79511.         Select * From GRAD
  79512.     Else If @Tabela='PATNICI'
  79513.           begin
  79514.                if @Opc_Param_Int is null  Or  @Opc_Param_Int = 0
  79515.                 Select * From Patnici
  79516.                else if @Opc_Param_Int = 5
  79517.                 Select * From Patnici where Sifra_Div IN (5, 6)
  79518.                else
  79519.                 Select * From Patnici where Sifra_Div = @Opc_Param_Int
  79520.           end
  79521. --    Else If @Tabela='PATNICI'
  79522.  --         begin
  79523.   --            if @Opc_Param_Int is null  Or  @Opc_Param_Int = 0
  79524. --        Select * From Patnici
  79525.  --             else
  79526.   --              Select * From Patnici where Sifra_Div = @Opc_Param_Int
  79527.    --       end
  79528.     Else If @Tabela='DRGPODEL'
  79529.         Select B.*, ZB.Ime_Drg1 From DrgPodel B
  79530.             Left Outer Join DrgPodel1 ZB On B.Sifra_Drg1=ZB.Sifra_Drg1
  79531.     Else If @Tabela = 'DRGPODEL1'
  79532.         Select * From DrgPodel1
  79533.     Else If @Tabela='KOMINT'
  79534.         Select * From Komint ORDER BY ImeKup
  79535.     Else If @Tabela='GRORG'
  79536.         Select * from GrOrg    
  79537.     Else If @Tabela='KDRUGO1'
  79538.         Select * from KDrugo1    
  79539.     Else If @Tabela='KDRUGO2'
  79540.         Select * from KDrugo2    
  79541.     Else If @Tabela='KDRUGO3'
  79542.         Select * from KDrugo3    
  79543.     Else If @Tabela='KDRUGO4'
  79544.         Select * from KDrugo4    
  79545.     Else If @Tabela='KDRUGO5'
  79546.         Select * from KDrugo5
  79547.     Else If @Tabela='KDRUGO6'
  79548.         Select * from KDrugo6
  79549.     Else If @Tabela='KDRUGO7'
  79550.         Select * from KDrugo7
  79551.     Else If @Tabela = 'POPIS'
  79552.         SELECT P.*, O.ImeOrg
  79553.         FROM Popis P 
  79554.         LEFT OUTER JOIN OrgEd O ON P.Sifra_OE = O.Sifra_OE
  79555.         ORDER BY IDPopis
  79556.     Else If @Tabela='KNIGATRG'
  79557.         Select * from KnigaTrg    
  79558.     Else If @Tabela='CBROEVI'
  79559.         Select * from CBroevi
  79560.     Else If @Tabela='KRSLISTA'
  79561.         Select * from KrsLista
  79562.     Else If @Tabela='GRAD'
  79563.         Select * from Grad
  79564.     Else If @Tabela = 'NIVO'
  79565.         Select * FROM Nivo
  79566.     Else If @Tabela = 'KONFCENI'
  79567.         Select * FROM KonfCeni
  79568.     Else If @Tabela = 'GRANAL'
  79569.         Select * FROM GrAnal ORDER BY Kto_GrAn
  79570.     Else If @Tabela = 'SINT'
  79571.         Select * FROM Sint  ORDER BY Kto_Sint
  79572.     Else If @Tabela = 'KLAS'
  79573.         Select * FROM Klas  ORDER BY Kto_Klas
  79574.     Else If @Tabela = 'LOGO'
  79575.         Select * FROM Logo
  79576.     Else If @Tabela = 'GRNAR'
  79577.         Select * FROM GrNar
  79578.     Else If @Tabela = 'PRODMEST'
  79579.         Select * FROM ProdMest
  79580.     Else If @Tabela = 'DRUGO1'
  79581.         Select * FROM Drugo1    
  79582.     Else If @Tabela = 'DRUGO2'
  79583.         Select * FROM Drugo2    
  79584.     Else If @Tabela = 'DRUGO3'
  79585.         Select * FROM Drugo3    
  79586.     Else If @Tabela = 'DRUGO4'
  79587.         Select * FROM Drugo4    
  79588.     Else If @Tabela = 'DRUGO5'
  79589.         Select * FROM Drugo5
  79590.     Else If @Tabela = 'DRUGO6'
  79591.         Select * FROM Drugo6
  79592.     Else If @Tabela = 'DRUGO7'
  79593.         Select * FROM Drugo7   
  79594.     Else If @Tabela = 'FIXTEKST'
  79595.         Select * FROM FixTekst        
  79596.     Else If @Tabela = 'FIXTEKSTN'
  79597.         Select * FROM FixTekstN        
  79598.     Else If @Tabela = 'TIPNARAC'
  79599.         Select TN.*, GN.ImeGrNar 
  79600.                 from TipNarac TN     
  79601.                 Left Outer Join GrNar GN On TN.Sifra_GrNar=GN.Sifra_GrNar   
  79602.     Else If @Tabela = 'TIPPERCENOVNIK'
  79603.         Select T.*, V.Sifra_OE, G.ImeOrg FROM TipPerCenovnik T 
  79604.         INNER JOIN TipPerCenVaziZa V ON T.Sifra_TipC = V.Sifra_TipC
  79605.         INNER JOIN Orged G ON V.Sifra_OE = G.Sifra_OE
  79606.     Else If @Tabela = 'UCESDENOVI'
  79607.         Select * FROM UcesDenovi
  79608.     Else If @Tabela = 'PROIZVTROSFIX'
  79609.             Select PTF.*, KA.ImeArt
  79610.                     From PROIZVTROSFIX PTF
  79611.                     Inner Join  KatArt KA ON PTF.Sifra_Art=KA.Sifra_Art
  79612.                     Order By Proiz_Sema
  79613.     Else If @Tabela = 'KSTAPKI'
  79614.         Select * FROM KStapki
  79615.     Else If @Tabela = 'KATAMB'
  79616.     Select GKA.ImeAmb ImeGAmb, KA.*                from KatAmb KA     
  79617.                 Left Outer Join KatAmb GKA On KA.Sifra_GAmb=GKA.Sifra_Amb   
  79618.     Else If @Tabela = 'KATGAMB'
  79619.         Select * FROM KatGAmb
  79620.     Else If @Tabela = 'AMORGRP'
  79621.         Select * FROM AmorGrp
  79622.     Else If @Tabela = 'OSNSRED'
  79623.     Select A.Ime ImeAmor, M.Ime_MikLok, O.* from 
  79624.         OsnSred O
  79625.         Left Outer Join AmorGrp A On A.Sifra_Amor=O.Sifra_Amor  
  79626.         Left Outer Join MikroLok M On M.Sifra_MikLok=O.Sifra_MikLok 
  79627.     Else If @Tabela = 'LOKACIJA'
  79628.         Select * FROM Lokacija
  79629.     Else If @Tabela = 'DOGRADBA'
  79630.         Select * FROM Dogradba
  79631.     Else If @Tabela = 'RABOTNIK'
  79632.         Select * FROM Rabotnik
  79633.     Else If @Tabela = 'RABMESTA'
  79634.         Select * FROM RabMesta
  79635.     Else If @Tabela = 'BANKI'
  79636.         Select * FROM Banki
  79637.     Else If @Tabela = 'PODGOD'
  79638.         Select * FROM PodGod
  79639.     Else If @Tabela = 'FIRMI'
  79640.                 Select B.ImeBanka ImeBanka, F.*                from Firmi F     
  79641.                 Left Outer Join Banki B On F.Sifra_Ban=B.Sifra_Ban            
  79642.     Else If @Tabela = 'PODMES'
  79643.         Select * FROM PodMes
  79644.     Else If @Tabela = 'PRIMATELI'
  79645.         Select * FROM Primateli
  79646.     Else If @Tabela = 'OPSTINI'
  79647.         Select * FROM Opstini
  79648.     Else If @Tabela = 'PROGRAMI'
  79649.         Select * FROM Programi
  79650.     Else If @Tabela = 'NACINPRESMZ'
  79651.         Select * FROM NacinPresmZ
  79652.     Else If @Tabela = 'ZADRSKI'
  79653.         Select * FROM Zadrski
  79654.     Else If @Tabela = 'ZARAB'
  79655.         Select * FROM Zarab
  79656.     Else If @Tabela = 'BankSmetki'
  79657.         Select * FROM BankSmetki
  79658.     Else If @Tabela = 'Divizii'
  79659.         Select * FROM Divizii
  79660.     Else If @Tabela = 'VidVozila'
  79661.         Select * FROM VidVozila
  79662.     Else If @Tabela = 'TipKartKor'
  79663.         Select * FROM TipKartKor
  79664.     Else If @Tabela = 'NivoCeniKartKor'
  79665.         Select * FROM NivoCeniKartKor
  79666.     Else If @Tabela = 'CenVidVozila'
  79667.         Select V.Ime_Vid_Voz ImeVoz, CVV.*                from CenVidVozila CVV     
  79668.                 Left Outer Join VidVozila v On CVV.Sifra_Vid_Voz=V.Sifra_Vid_Voz      
  79669.     Else If @Tabela = 'Prevoznik'
  79670.         Select K.ImeKup ImeKup, P.*                from Prevoznik P     
  79671.                 Left Outer Join Komint K On P.Sifra_Kup=K.Sifra_Kup  
  79672.     Else If @Tabela = 'MAKROLOK'
  79673.         SELECT MA.*, L.ImeLok
  79674.         FROM MakroLok MA
  79675.         LEFT OUTER JOIN Lokacija L ON MA.Sifra_Lok = L.Sifra_Lok 
  79676.     Else If @Tabela = 'KRSVAZNOST'
  79677.         SELECT KV.*, K.ImeVal
  79678.         FROM KrsVaznost KV
  79679.         LEFT OUTER JOIN KrsLista K ON KV.SImeVal = K.SImeVal 
  79680.     Else If @Tabela = 'GOTOVSUROVORG'
  79681.         SELECT GS.*, GOE.ImeOrg, SOE.ImeOrg ImeSurOrg
  79682.         FROM GotovSurovOrg GS
  79683.         LEFT OUTER JOIN OrgEd GOE ON GS.Sifra_OE_Got = GOE.Sifra_OE 
  79684.                 LEFT OUTER JOIN OrgEd SOE ON GS.Sifra_OE_Sur = SOE.Sifra_OE         
  79685.     Else If @Tabela = 'MIKROLOK'
  79686.         Select MA.Ime_MakLok, MA.Sifra_MakLok, L.Sifra_Lok, L.ImeLok, MI.Sifra_MikLok, MI.Ime_MikLok        from Lokacija L
  79687.         Left Outer Join MakroLok MA On MA.Sifra_Lok=L.Sifra_Lok  
  79688.         Left Outer Join MikroLok MI On MI.Sifra_MakLok=MA.Sifra_MakLok 
  79689.     Else If @Tabela = 'KATLISTI'
  79690.     Select A.Imeart ImeArt, KA.*                from KatListi KA     
  79691.                 Left Outer Join KatArt A On KA.Sifra_art=A.Sifra_Art  
  79692.    Else If @Tabela='OPERATORI'
  79693.         SELECT *        --Sifra_oper, Ime_Oper, Sifra_OE, Login_Ime, Aktiven 
  79694.         FROM OPERATORI
  79695.     Else If @Tabela='RELACISPOR'
  79696.         SELECT R.*, RS.Rbr, RS.Sifra_Grad, RS.Prior_poseta, G.ImeGrad
  79697.         FROM RELACISPOR R INNER JOIN RelacIsporStav RS ON R.Sifra_RelIspor=RS.Sifra_RelIspor
  79698.         INNER JOIN Grad G ON RS.Sifra_grad=G.Sifra_Grad
  79699.     Else If @Tabela = 'VIDPRODOBJ'
  79700.         Select * FROM VidProdObj
  79701.     Else If @Tabela = 'TIPKOMINT'
  79702.         Select * FROM TipKomint
  79703.     Else If @Tabela = 'SMENI'
  79704.         Select * FROM SMENI
  79705.     Else If @Tabela = 'MASINI'
  79706.         Select * FROM MASINI
  79707.     Else If @Tabela = 'HILZNI'
  79708.         Select * FROM HILZNI
  79709.     Else If @Tabela = 'KATSTATUS'
  79710.         Select * FROM KATSTATUS
  79711.     Else If @Tabela = 'LSTPARTIC'
  79712.         Select * FROM LSTPARTIC
  79713.     Else If @Tabela = 'KATPAKUV'
  79714.         Select K.*, A.Imeart, T.ImeKatPak ImePak, T1.ImeKatPak ImePakMalo
  79715.         FROM KATPAKUV K
  79716.         INNER JOIN TipKatPakuv T ON T.Sifra_KatPak=K.Sifra_KatPak
  79717.         LEFT OUTER JOIN TipKatPakuv T1 ON T1.Sifra_KatPak=K.Sifra_KatPak_Pomalo
  79718.         Left Outer Join KatArt A On K.Sifra_Art = A.Sifra_Art
  79719.     Else If @Tabela = 'FAZI'
  79720.         Select F.*, O.ImeOrg 
  79721.         FROM FAZI F
  79722.         Left Outer Join OrgEd O On F.Sifra_Oe = O.Sifra_Oe
  79723.     Else If @Tabela = 'PLANPAT'
  79724.         Select P.*, N.ImeNar as ImePlan
  79725.         FROM PLANPAT P
  79726.         Left Outer Join TipNarac N On N.Sifra_Nar = P.Sifra_Plan
  79727.     Else If @Tabela='GRPMARZA'
  79728.         SELECT R.*, G.Ime_GrOrg
  79729.         FROM GRPMARZA R 
  79730.                 INNER JOIN GrOrg G ON R.Sif_GrOrg=G.Sif_GrOrg    
  79731.     Else If @Tabela = 'TARIFMODEL'
  79732.         Select * FROM TmTarifModel    
  79733.     Else If @Tabela = 'USLUGI'
  79734.         Select * FROM TmUslugi
  79735.     Else If @Tabela = 'XFIZVRSITEL'
  79736.         Select * FROM XFIzvrsitel
  79737.     Else If @Tabela = 'XFODDEL'
  79738.         Select * FROM XFOddel
  79739.     Else If @Tabela = 'XFVRABODDEL'
  79740.         Select V.*, O.ImeOddel, I.ImeIzvrs
  79741.         FROM XFVRABODDEL V
  79742.         LEFT OUTER JOIN XFOddel O ON O.Sifra_Oddel=V.Sifra_Oddel
  79743.         LEFT OUTER JOIN XFIzvrsitel I ON I.Sifra_Izvrs=V.Sifra_Izvrs
  79744.     Else If @Tabela = 'XFTIPPREDMET'
  79745.         Select * FROM XFTipPredmet
  79746.     Else If @Tabela = 'XFSTATUSPREDMET'
  79747.         Select * FROM XFStatusPredmet
  79748.     Else If @Tabela = 'XFOBLAST'
  79749.     Select * FROM XFOblast
  79750.     Else If @Tabela = 'XFNAPRAVENO'
  79751.     Select * FROM XFNapraveno
  79752.     Else If @Tabela = 'XFSTATUSBARANJE'
  79753.     Select * FROM XFStatusBaranje
  79754.     Else If @Tabela = 'XFVIDBARANJE'
  79755.     Select * FROM XFVidBaranje
  79756.     Else If @Tabela = 'TARMODEL'
  79757.     Select * FROM TARMODEL
  79758.     Else If @Tabela = 'VERNTRAENJE'
  79759.     Select * FROM VERNTRAENJE
  79760.     Else If @Tabela = 'VIDDOG'
  79761.     Select * FROM VIDDOG
  79762.     Else If @Tabela = 'KARAKTERIST'
  79763.     Select * FROM Karakterist
  79764.     Else If @Tabela = 'NGBILLCODES'
  79765.     Select * FROM NGBillCodes
  79766.     Else If @Tabela = 'NGOTHERCODES'
  79767.     Select * FROM NGOtherCodes
  79768.     Else If @Tabela = 'NGFAMILIJA'
  79769.     Select * FROM NGFamilija
  79770.     Else If @Tabela = 'NGCOURSETYPE'
  79771.     Select * FROM NGCourseType
  79772.     Else If @Tabela = 'NGSTUDENTS'
  79773.     Select * FROM NGStudents
  79774.     Else If @Tabela = 'NGSCHOOLYEAR'
  79775.     Select * FROM NGSchoolYear
  79776.     Else If @Tabela = 'GRPAT'
  79777.     Select * FROM grpat 
  79778.     Else if @Tabela= 'FORMULADEF'
  79779.         Select * from FormulaDef 
  79780.     Else If @Tabela='WHMSEKCIJA'
  79781.          Select * from WhmSekcija 
  79782.      order by sifra_Oe, Sekc_Id
  79783.     
  79784.     -- Moram vaka, zassto e ogromen IF-ot gore --
  79785.     -- da se napravi pointeligentna okolina...
  79786.     If @Tabela='NACPLAK'
  79787.          SELECT * FROM NACPLAK
  79788.     else if @Tabela = 'NACKONKART'
  79789.         select * from Nackonkart
  79790.     else if @Tabela = 'CENPOPODGR'
  79791.         select * from CenPoPodgr
  79792.     else if @Tabela = 'KREDITSTATUS'
  79793.     begin
  79794.         if @Opc_Param_Int = 1
  79795.             select * from KreditStatus
  79796.             where DaliZatvoren is null or DaliZatvoren <> 'D'
  79797.         else if @Opc_Param_Int = 2
  79798.             select * from KreditStatus
  79799.             where DaliZatvoren = 'D'
  79800.         else
  79801.             select * from KreditStatus
  79802.     end
  79803.     else if @Tabela = 'KREDITTIPOPOMENA'
  79804.         select * from KreditTipOpomena
  79805.     else if @Tabela = 'TROSOKVID'
  79806.         select * from trosokvid
  79807.     else if @Tabela = 'TROSOKMESTO'
  79808.         select * from trosokmesto
  79809.     else if @Tabela = 'TROSOK4TIP'
  79810.         select * from Trosok4Tip
  79811.      Else If @Tabela='GRkup'
  79812.         Select * from GrKUP    
  79813.      Else If @Tabela='FiRaspredelba'
  79814.         SELECT F.*,  D.ImeDiv
  79815.             FROM  FiRaspredelba F
  79816.             INNER JOIN Divizii D ON F.Sifra_Div = D.Sifra_Div
  79817.      Else If @Tabela='WHMLOKACIJA'
  79818.          Select * from WhmLokacija 
  79819.      order by sifra_Oe, Lokac_Id
  79820.      Else If @Tabela = 'ATCKODOVI'
  79821.         Select * FROM AtcKodovi
  79822.      Else If @Tabela = 'SIFAKC'
  79823.         Select * FROM SifAkc  
  79824.     Else If @Tabela = 'KLUCSODRZ'
  79825.         Select distinct KlucSodrz, '' from sPrometADH
  79826.      Else If @Tabela = 'KLUCSPROMETADH'
  79827.         Select * FROM KlucSPrometAdh
  79828.     Else If @Tabela = 'SPREMAC'
  79829.              Select * FROM Spremac
  79830.     Else If @Tabela = 'BOJA'
  79831.         Select * FROM Boja
  79832.     Else If @Tabela = 'VELICINA'
  79833.         Select * FROM Velicina
  79834.     else if @Tabela='GRART'
  79835.         Select * from GrArt
  79836.     Else If @Tabela = 'KATSPECTIPMAT'
  79837.         Select * FROM KATSPECTIPMAT
  79838.     Else If @Tabela='KatSpecPakuv'
  79839.         SELECT F.*,  D.ImeTipMat, A.ImeArt
  79840.             FROM  KatSpecPakuv F
  79841.             INNER JOIN KatSpecTipMat D ON F.Sifra_TipMat = D.Sifra_TipMat
  79842.                 INNER JOIN Katart A ON F.Sifra_Art = A.Sifra_Art
  79843.     Else If @Tabela = 'WHMPRIVOPER'
  79844.         Select W.*, O.Ime_Oper, OE.ImeOrg 
  79845.                 FROM WHMPRIVOPER W
  79846.                 INNER JOIN Operatori O ON W.Sifra_Oper = O.Sifra_Oper
  79847.                 INNER JOIN OrgEd OE ON W.Sifra_Oe_WHM = OE.Sifra_Oe
  79848.                 ORDER BY W.SIFRA_OPER, W.SIFRA_OE_WHM 
  79849.     Else If @Tabela = 'MCKATPOZICIJA'
  79850.         Select * FROM MCKatPozicija
  79851.     Else If @Tabela = 'MCLISTA'
  79852.         Select L.*, P.ImeMCPozicija FROM MCLista L LEFT OUTER JOIN MCKatPozicija P 
  79853.             ON L.Sif_MCPozicija = P.Sif_MCPozicija 
  79854.     ELSE IF @Tabela='KATPODSIFRA'
  79855.         SELECT K.*, B.ImeBoja, V.ImeVelic, KA.ImeArt 
  79856.         FROM KatPodSifra K with (NOLOCK) INNER JOIN
  79857.             KatArt KA ON KA.Sifra_Art = K.Sifra_Art LEFT OUTER JOIN
  79858.             Boja B ON K.Sifra_Boja = B.Sifra_Boja LEFT OUTER JOIN
  79859.             Velicina V ON V.Sifra_Velic = K.Sifra_Velic
  79860.     ELSE IF @Tabela = 'DEKLART'
  79861.         SELECT    D.*, K.ImeArt
  79862.         FROM    DeklArt D INNER JOIN
  79863.                 KatArt K ON K.Sifra_Art = D.Sifra_Art
  79864.     If @@ROWCOUNT=0
  79865.         RETURN 77000
  79866.     Else
  79867.         RETURN @@ERROR
  79868.  
  79869.  
  79870.  
  79871.  
  79872.  
  79873.  
  79874.  
  79875.  
  79876.  
  79877.  
  79878. Go
  79879. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matic_pregled_rcp]'))
  79880. drop procedure [dbo].[sp_matic_pregled_rcp]
  79881.  
  79882. Go
  79883.  
  79884.  
  79885. CREATE   PROCEDURE sp_Matic_Pregled_RCP
  79886.  
  79887.     @Tabela VARCHAR(20),
  79888.         @Opc_Param_Int as integer = Null
  79889.  
  79890. AS
  79891.  
  79892.    Set @Tabela = Upper(@Tabela)
  79893.  
  79894.     If @Tabela = 'DIJAGNOZI'
  79895.         Select * FROM Dijagnozi
  79896.     Else If @Tabela = 'LEKARI'
  79897.         Select * FROM Lekari
  79898.     Else If @Tabela = 'FARMACEVT'
  79899.         Select * FROM Farmacevt
  79900.     Else If @Tabela = 'APTEKA'
  79901.         Select * FROM Apteka
  79902.     Else If @Tabela = 'OSNOVOSIG'
  79903.         Select * FROM OsnovOsig
  79904.     Else If @Tabela = 'PODRACNISLUZBI'
  79905.         Select * FROM PodracniSluzbi
  79906.     Else If @Tabela = 'ATCKODOVI'
  79907.         Select * FROM AtcKodovi
  79908.     Else If @Tabela = 'LSTPARTICMARZA'
  79909.         Select * FROM LstPartic
  79910.     Else If @Tabela = 'LSTPARTICSKALA'
  79911.         Select * FROM LstParticSkala
  79912.     
  79913.  
  79914.     If @@ROWCOUNT=0
  79915.       RETURN 77000
  79916.     Else
  79917.       RETURN @@ERROR
  79918.  
  79919.  
  79920.  
  79921. Go
  79922. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matic_pregled2]'))
  79923. drop procedure [dbo].[sp_matic_pregled2]
  79924.  
  79925. Go
  79926.  
  79927.  
  79928.  
  79929. create                            PROCEDURE sp_Matic_Pregled2
  79930.     @Tabela VARCHAR(20),
  79931.         @Opc_Param_Int as integer = Null
  79932. AS
  79933.  
  79934.    Set @Tabela=Upper(@Tabela)
  79935.  
  79936.    If @Tabela='OSNGRPODEL'
  79937.       Select * From OsnGrPodel Order By Sifra_OsnGrPodel
  79938.    Else If @Tabela = 'OSNPODELBI'
  79939.       Select OP.*, OG.ImeOsnGrPodel 
  79940.       from OsnPodelbi OP     
  79941.       Left Outer Join OsnGrPodel OG On OP.Sifra_OsnGrPodel=OG.Sifra_OsnGrPodel          
  79942.  
  79943.     If @@ROWCOUNT=0
  79944.       RETURN 77000
  79945.     Else
  79946.       RETURN @@ERROR
  79947.  
  79948.  
  79949.  
  79950.  
  79951. Go
  79952. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevfra]'))
  79953. drop procedure [dbo].[sp_matstavkioddevfra]
  79954.  
  79955. Go
  79956.  
  79957.  
  79958.  
  79959.  
  79960. CREATE             PROCEDURE sp_MatStavkiOdDevFra
  79961.    @DevFraID integer
  79962. AS
  79963.     SELECT S.*, K.ImeArt, K.ImeArt2, K.Edmera As SEdmera, K.Sifra_Tar, K.Carbroj, T.ProcOsn, K.Tezina, Kup.ImeKup
  79964.     FROM DevFraStavk S
  79965.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  79966.     LEFT OUTER JOIN Komint Kup ON S.Dobav=Kup.Sifra_Kup
  79967.     WHERE S.DevFraID= @DevFraID
  79968.     ORDER BY S.DevFraStID
  79969.  
  79970.  
  79971.  
  79972.  
  79973. Go
  79974. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevfra_mag]'))
  79975. drop procedure [dbo].[sp_matstavkioddevfra_mag]
  79976.  
  79977. Go
  79978.  
  79979. CREATE             PROCEDURE sp_MatStavkiOdDevFra_Mag
  79980.     @DevFraID    integer
  79981. AS
  79982. Declare @DokrID        integer
  79983. SELECT @DokrID=DokrID FROM Dokr D INNER JOIN DevFra DF ON D.Sifra_Oe=DF.Sifra_OE AND D.Sifra_Dok=DF.Sifra_Dok AND D.Broj_Dok=DF.Broj_DevF WHERE DF.DevFraID=@DevFraID
  79984.  
  79985. CREATE TABLE #TmpMagStavr
  79986. (Sifra_Art    varchar(20),
  79987. Kolic        decimal(18,6),
  79988. SpecOzn        varchar(60),
  79989. Rbr            smallint,
  79990. LotBr        varchar(30), 
  79991. Lokacija    varchar(50),
  79992. Sifra_Boja    smallint,
  79993. Sifra_Velic smallint)
  79994. INSERT INTO #TmpMagStavr (Sifra_Art, Kolic, SpecOzn, Rbr, LotBr, Lokacija) SELECT Sifra_Art, Kolic, SpecOzn, Rbr, LotBr, Lokacija FROM MagStavr WHERE DokrID=@DokrID
  79995. UPDATE #TmpMagStavr SET Sifra_Velic = Substring(LotBr, PatIndex('%:%', LotBr)+1, 5)
  79996. UPDATE #TmpMagStavr SET Sifra_Boja = Substring(LotBr, PatIndex('% %', LotBr)+1, PatIndex('%:%', LotBr)-PatIndex('% %', LotBr)-1)
  79997.  
  79998.     SELECT S.DevFraStID, S.DevFraID, S.Sifra_Art, CASE WHEN MS.LotBr IS NULL THEN S.Kolic ELSE Ms.Kolic END AS Kolic, S.DevCena, S.Uces, 
  79999.     S.CenaIznos, S.PTar, S.POsn, S.DenCena, S.ImeMat, S.KontrSer, S.MagCena, S.Paleti, S.Alt_Kolic, S.Dobav,
  80000.     K.ImeArt, K.ImeArt2, K.Edmera As SEdmera, K.Sifra_Tar, K.Carbroj, T.ProcOsn, K.Tezina, Kup.ImeKup,
  80001.     MS.SpecOzn, MS.LotBr, MS.Lokacija, B.ImeBoja, V.ImeVelic
  80002.     FROM DevFraStavk S
  80003.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  80004.     LEFT OUTER JOIN Komint Kup ON S.Dobav=Kup.Sifra_Kup
  80005.     LEFT OUTER JOIN #TmpMagStavr MS ON S.Sifra_Art=MS.Sifra_Art
  80006.     LEFT OUTER JOIN Boja B ON B.Sifra_Boja=MS.Sifra_Boja
  80007.     LEFT OUTER JOIN Velicina V ON V.Sifra_Velic=MS.Sifra_Velic
  80008.     WHERE S.DevFraID= @DevFraID
  80009.     ORDER BY S.DevFraStID, MS.Sifra_Boja, MS.Sifra_Velic
  80010.  
  80011.  
  80012.  
  80013.  
  80014.  
  80015. Go
  80016. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevkalk]'))
  80017. drop procedure [dbo].[sp_matstavkioddevkalk]
  80018.  
  80019. Go
  80020.  
  80021.  
  80022.  
  80023.  
  80024.  
  80025.  
  80026. CREATE                           PROCEDURE sp_MatStavkiOdDevKalk
  80027.     @Sifra_OE smallint,
  80028.     @Sifra_Dok smallint=132,
  80029.     @Broj_Kalk int
  80030. AS
  80031.     SELECT S.IDDevSt, S.Sifra_Oe, S.Broj_Kalk, S.Sifra_art, S.Kolic, S.DevCena  DevCena, S.Uces, S.CenaIznos, S.Ptar, S.Posn, S.CarBroj, 
  80032.             S.CarProc, Round(S.TrPredCar,4) TrPredCar, Round(S.TrPoCar,4) TrPoCar, S.ProdCena, S.DanProdCena, S.NabCena, round(S.EdPlatDan,4) EdPlatDan, Round(S.EdTrosok,4) EdTrosok,
  80033.             S.Prelevman, S.KaloProc, S.Carina, Round(S.DrugiTros,4) DrugiTros,
  80034.                     Round(S.EdPrelevman, 4) EdPrelevman, Round(S.EdSpedicija, 4) EdSpedicija, Round(EdBankProviz, 4) EdBankProviz, EdKalo, 
  80035.             K.ImeArt, K.ImeArt2, K.Edmera As SEdmera, K.Sifra_Tar, K.Carbroj CarBroj1, T.ProcOsn,
  80036.             K.Cena, K.DogCena, K.MalCena, K.GotCena, K.SpeCena, S.KontrSer, D.Kasa, S.FaktKolic,
  80037.             S.Alt_Kolic, K.Tezina, S.SpecCena
  80038.     FROM DevStavk S
  80039.     Inner Join DevKalk D On D.Sifra_Oe=S.Sifra_Oe and D.Broj_Kalk=S.Broj_Kalk AND D.Sifra_Dok=S.Sifra_Dok  -- dod 20.10.2005
  80040.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  80041.     INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  80042.     WHERE S.Sifra_OE= @Sifra_OE  AND S.Broj_Kalk= @Broj_Kalk AND S.Sifra_Dok=@Sifra_Dok
  80043.     ORDER BY S.IDDevSt
  80044.  
  80045.  
  80046.  
  80047.  
  80048.  
  80049.  
  80050.  
  80051.  
  80052.  
  80053.  
  80054.  
  80055.  
  80056.  
  80057. Go
  80058. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevkalk_mag]'))
  80059. drop procedure [dbo].[sp_matstavkioddevkalk_mag]
  80060.  
  80061. Go
  80062.  
  80063.  
  80064.  
  80065.  
  80066.  
  80067. CREATE PROCEDURE sp_MatStavkiOdDevKalk_Mag
  80068.     @Sifra_OE smallint,
  80069.     @Sifra_Dok smallint=132,
  80070.     @Broj_Kalk int
  80071. AS
  80072. Declare @DokrID        integer
  80073. SELECT @DokrID=DokrID FROM Dokr WHERE Sifra_Oe=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Kalk 
  80074.  
  80075. CREATE TABLE #TmpMagStavr
  80076. (Sifra_Art    varchar(20),
  80077. Kolic        decimal(18,6),
  80078. SpecOzn        varchar(60),
  80079. Rbr            smallint,
  80080. LotBr        varchar(30), 
  80081. Lokacija    varchar(50),
  80082. Sifra_Boja    smallint,
  80083. Sifra_Velic smallint)
  80084. INSERT INTO #TmpMagStavr (Sifra_Art, Kolic, SpecOzn, Rbr, LotBr, Lokacija) SELECT Sifra_Art, Kolic, SpecOzn, Rbr, LotBr, Lokacija FROM MagStavr WHERE DokrID=@DokrID
  80085. UPDATE #TmpMagStavr SET Sifra_Velic = Substring(LotBr, PatIndex('%:%', LotBr)+1, 5)
  80086. UPDATE #TmpMagStavr SET Sifra_Boja = Substring(LotBr, PatIndex('% %', LotBr)+1, PatIndex('%:%', LotBr)-PatIndex('% %', LotBr)-1)
  80087.  
  80088.     SELECT S.IDDevSt, S.Sifra_Oe, S.Broj_Kalk, S.Sifra_art, CASE WHEN MS.LotBr IS NULL THEN S.Kolic ELSE Ms.Kolic END AS Kolic, S.DevCena, S.Uces, S.CenaIznos, S.Ptar, S.Posn, S.CarBroj, 
  80089.             S.CarProc, Round(S.TrPredCar,4) TrPredCar, Round(S.TrPoCar,4) TrPoCar, S.ProdCena, S.DanProdCena, S.NabCena, round(S.EdPlatDan,4) EdPlatDan, Round(S.EdTrosok,4) EdTrosok,
  80090.             S.Prelevman, S.KaloProc, S.Carina, Round(S.DrugiTros,4) DrugiTros,
  80091.                     Round(S.EdPrelevman, 4) EdPrelevman, S.EdSpedicija, EdBankProviz, EdKalo, 
  80092.             K.ImeArt, K.ImeArt2, K.Edmera As SEdmera, K.Sifra_Tar, K.Carbroj CarBroj1, T.ProcOsn,
  80093.             K.Cena, K.DogCena, K.MalCena, K.GotCena, K.SpeCena, S.KontrSer, D.Kasa, S.FaktKolic,
  80094.             S.Alt_Kolic, K.Tezina, S.SpecCena,     MS.SpecOzn, MS.LotBr, MS.Lokacija, B.ImeBoja, V.ImeVelic
  80095.     FROM DevStavk S
  80096.     Inner Join DevKalk D On D.Sifra_Oe=S.Sifra_Oe and D.Broj_Kalk=S.Broj_Kalk AND D.Sifra_Dok=S.Sifra_Dok  -- dod 20.10.2005
  80097.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  80098.     INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  80099.     LEFT OUTER JOIN #TmpMagStavr MS ON S.Sifra_Art=MS.Sifra_Art
  80100.     LEFT OUTER JOIN Boja B ON B.Sifra_Boja=MS.Sifra_Boja
  80101.     LEFT OUTER JOIN Velicina V ON V.Sifra_Velic=MS.Sifra_Velic
  80102.     WHERE S.Sifra_OE= @Sifra_OE  AND S.Broj_Kalk= @Broj_Kalk AND S.Sifra_Dok=@Sifra_Dok
  80103.     ORDER BY S.IDDevSt, MS.Sifra_Boja, MS.Sifra_Velic
  80104.  
  80105.  
  80106.  
  80107.  
  80108.  
  80109.  
  80110.  
  80111.  
  80112.  
  80113.  
  80114.  
  80115.  
  80116. Go
  80117. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevkalkpoart]'))
  80118. drop procedure [dbo].[sp_matstavkioddevkalkpoart]
  80119.  
  80120. Go
  80121.  
  80122.  
  80123. CREATE                PROCEDURE sp_MatStavkiOdDevKalkPoArt
  80124.     @Sifra_Nal Smallint = Null,
  80125.     @Sifra_Dok Smallint = Null,
  80126.     @Sifra_OE Smallint = Null,
  80127.     @KoiOE Varchar(200) = Null,
  80128.     @Broj_Nal_Od Int = Null,
  80129.     @Broj_Nal_Do Int = Null,
  80130.     @Broj_Dok_Od Int = Null,
  80131.     @Broj_Dok_Do Int = Null,
  80132.     @Datum_Dok_Od Smalldatetime = Null,
  80133.     @Datum_Dok_Do Smalldatetime = Null,
  80134.     @Sifra_Kup     Char(6) = Null,
  80135.     @Uces_Od    decimal(6,2) = Null,
  80136.     @Uces_Do    decimal(6,2) = Null,
  80137.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  80138.     @Sifra_Art_Od    varchar(20) = Null,
  80139.     @Sifra_Art_Do    varchar(20) = Null
  80140. AS
  80141.     Declare @TipDokKonf smallint
  80142.     Select @TipDokKonf = Devk_Tipd_MatFra From Konfig
  80143.     Declare @SSQL as VArchar(8000)
  80144.     Set @SSQL =  ' SELECT S.Sifra_Oe, D.Sifra_Dok, S.Broj_Kalk, D.KojaVal, V.ImeVal, D.Datum_Dok, S.Sifra_Art, K.ImeArt,
  80145.                S.Kolic, S.DevCena, S.Uces, D.Kasa, S.NabCena, S.Posn, D.Kurs, K.EdMera,
  80146.                        DO.Sifra_Kup, Kom.ImeKup
  80147.     FROM [DevStavk] S
  80148.     INNER JOIN DevKalk D On D.Sifra_Oe=S.Sifra_Oe and D.Broj_Kalk=S.Broj_Kalk AND D.Sifra_Dok=S.Sifra_Dok
  80149.         INNER JOIN Dokr DO On DO.Sifra_Oe=S.Sifra_Oe and DO.Broj_Dok=S.Broj_Kalk AND DO.Sifra_Dok=S.Sifra_Dok
  80150.     Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  80151.     Left Outer Join KrsLista V On V.SImeVal = D.KojaVal
  80152.         Left Outer Join Komint Kom On Kom.Sifra_Kup = DO.Sifra_Kup '
  80153.     If @Sifra_Nal Is Null
  80154.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  80155.     Else
  80156.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  80157.     If @Sifra_Dok Is NOT NULL
  80158.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  80159.        If @Sifra_OE Is NOT Null
  80160.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  80161.        If @KoiOE Is NOT Null
  80162.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  80163.     If @Broj_Nal_Od Is NOT Null
  80164.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  80165.        If @Broj_Nal_Do Is NOT Null
  80166.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  80167.     If @Broj_Dok_Od Is NOT Null
  80168.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  80169.        If @Broj_Dok_Do Is NOT Null
  80170.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  80171.     If @PoKojDatum = 'V'
  80172.           Begin
  80173.         If @Datum_Dok_Od Is NOT Null
  80174.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  80175.         If @Datum_Dok_Do Is NOT Null
  80176.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  80177.           End
  80178.     Else
  80179.           Begin
  80180.         If @Datum_Dok_Od Is NOT Null
  80181.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  80182.            If @Datum_Dok_Do Is NOT Null
  80183.              SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  80184.           End
  80185.     If @Sifra_Kup Is NOT Null
  80186.         SET @SSQL = @SSQL + 'AND (Cast(S.Sifra_Oe as char(3)) + Cast(S.Broj_Kalk as char(8))) in (Select (Cast(A.Sifra_Oe as char(3)) + Cast(A.Broj_Kalk as char(8))) From AnFinDok A Where A.Sifra_Kup=''' + @Sifra_Kup + ''' 
  80187.                                 And A.Sifra_Dok = ' + cast(@TipDokKonf as varchar(6)) + ') '
  80188. --    INNER Join Anfindok A On A.Sifra_Oe=D.Sifra_Oe and A.Broj_Kalk=D.Broj_Kalk and A.Sifra_Dok = ' + cast(@TipDokKonf as varchar(6)) + '  
  80189.        If @Uces_Od Is NOT Null
  80190.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  80191.        If @Uces_Do Is NOT Null
  80192.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  80193.        If @Sifra_Art_Od Is NOT Null
  80194.               SET @SSQL = @SSQL + 'AND S.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  80195.        If @Sifra_Art_Do Is NOT Null
  80196.               SET @SSQL = @SSQL + 'AND S.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  80197. --    Set @SSQL = @SSQL + ' GROUP BY  S.Sifra_Oe, D.Sifra_Dok, S.Broj_Kalk, D.KojaVal, V.ImeVal, D.Datum_Dok, D.Kurs '
  80198. print @SSQL
  80199. /*            Sum(case S.CenaIznos
  80200.                 When  ''N'' Then (S.DevCena*Kolic) 
  80201.                 Else S.DevCena
  80202.                 End) DevIznos,
  80203.             Sum(S.DevCena*(1-S.Uces/100)*(1-D.Kasa/100)*D.Kurs*S.Kolic) DenIznos,
  80204.             Sum(S.TrPredCar) TrPredCar,
  80205.             Sum(S.Carina*S.Kolic) Carina,
  80206.             Sum(S.EdSpedicija*S.Kolic) Spedicija,
  80207.             Sum(S.EdBankProviz*S.Kolic) BankProv,
  80208.             Sum(S.DrugiTros*S.Kolic) DrTros,
  80209.             Sum(S.EdPrelevman*S.Kolic) Prelevman,
  80210.             Sum(S.EdPlatDan*S.Kolic) PlatDan,
  80211.             Sum(S.EdKalo) Kalo,
  80212.             Sum(S.TrPoCar+S.TrPredCar) Tros,
  80213.             Sum(S.NabCena*S.Kolic) NabIznos
  80214. */
  80215.     Exec(@SSQL)
  80216.  
  80217.  
  80218.  
  80219.  
  80220. Go
  80221. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevkalksum]'))
  80222. drop procedure [dbo].[sp_matstavkioddevkalksum]
  80223.  
  80224. Go
  80225.  
  80226.  
  80227. CREATE                PROCEDURE sp_MatStavkiOdDevKalkSum
  80228.     @Sifra_Nal Smallint = Null,
  80229.     @Sifra_Dok Smallint = Null,
  80230.     @Sifra_OE Smallint = Null,
  80231.     @KoiOE Varchar(200) = Null,
  80232.     @Broj_Nal_Od Int = Null,
  80233.     @Broj_Nal_Do Int = Null,
  80234.     @Broj_Dok_Od Int = Null,
  80235.     @Broj_Dok_Do Int = Null,
  80236.     @Datum_Dok_Od Smalldatetime = Null,
  80237.     @Datum_Dok_Do Smalldatetime = Null,
  80238. --    @Datum_Nal_Od Smalldatetime,
  80239. --    @Datum_Nal_Do Smalldatetime,
  80240.     @Sifra_Kup     Char(6) = Null,
  80241.     @Uces_Od    decimal(6,2) = Null,
  80242.     @Uces_Do    decimal(6,2) = Null,
  80243.     @PoKojDatum    char(1) = 'D'     -- D - Datum_Dok,      V - Datum_Vnes
  80244. AS
  80245.     Declare @TipDokKonf smallint
  80246.     Select @TipDokKonf = Devk_Tipd_MatFra From Konfig
  80247.     Declare @SSQL as VArchar(8000)
  80248.     Set @SSQL =  ' SELECT S.Sifra_Oe, D.Sifra_Dok, S.Broj_Kalk, D.KojaVal, V.ImeVal, D.Datum_Dok, D.Kurs, D.ECD, D.Opis, D.Akciza,
  80249.             Sum(case S.CenaIznos When  ''N'' Then (S.DevCena*Kolic) Else S.DevCena End) DevIznos,
  80250.             Sum(S.DevCena*(1-S.Uces/100)*(1-D.Kasa/100)*D.Kurs*S.Kolic) DenIznos,
  80251.             Sum(S.TrPredCar) TrPredCar, Sum(S.Carina*S.Kolic) Carina, Sum(S.EdSpedicija*S.Kolic) Spedicija,
  80252.             Sum(S.EdBankProviz*S.Kolic) BankProv, Sum(S.DrugiTros*S.Kolic) DrTros, Sum(S.EdPrelevman*S.Kolic) Prelevman,
  80253.             Sum(S.EdPlatDan*S.Kolic) PlatDan, Sum(S.EdKalo) Kalo, Sum(S.TrPoCar+S.TrPredCar) Tros, Sum(S.NabCena*S.Kolic) NabIznos,
  80254.                         DO.Sifra_Kup, K.ImeKup
  80255.     FROM [DevStavk] S
  80256.     INNER JOIN DevKalk D On D.Sifra_Oe=S.Sifra_Oe and D.Broj_Kalk=S.Broj_Kalk AND D.Sifra_Dok=S.Sifra_Dok
  80257.         INNER JOIN Dokr DO On DO.Sifra_Oe=S.Sifra_Oe and DO.Broj_Dok=S.Broj_Kalk AND DO.Sifra_Dok=S.Sifra_Dok
  80258.     Left Outer Join Komint K On K.Sifra_Kup = DO.Sifra_Kup
  80259.         Left Outer Join KrsLista V On V.SImeVal = D.KojaVal '
  80260.     If @Sifra_Nal Is Null
  80261.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  80262.     Else
  80263.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  80264.     If @Sifra_Dok Is NOT NULL
  80265.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  80266.        If @Sifra_OE Is NOT Null
  80267.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  80268.        If @KoiOE Is NOT Null
  80269.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  80270.     If @Broj_Nal_Od Is NOT Null
  80271.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  80272.        If @Broj_Nal_Do Is NOT Null
  80273.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  80274.     If @Broj_Dok_Od Is NOT Null
  80275.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  80276.        If @Broj_Dok_Do Is NOT Null
  80277.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  80278.     If @PoKojDatum = 'V'
  80279.           Begin
  80280.         If @Datum_Dok_Od Is NOT Null
  80281.             SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  80282.         If @Datum_Dok_Do Is NOT Null
  80283.              SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  80284.           End
  80285.     Else
  80286.           Begin
  80287.         If @Datum_Dok_Od Is NOT Null
  80288.             SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  80289.            If @Datum_Dok_Do Is NOT Null
  80290.              SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  80291.           End
  80292. /*    If @Datum_Nal_Od Is NOT Null
  80293.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  80294.        If @Datum_Nal_Do Is NOT Null
  80295.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  80296. */
  80297.     If @Sifra_Kup Is NOT Null
  80298.         SET @SSQL = @SSQL + 'AND (Cast(S.Sifra_Oe as char(3)) + Cast(S.Broj_Kalk as char(8))) in (Select (Cast(A.Sifra_Oe as char(3)) + Cast(A.Broj_Kalk as char(8))) From AnFinDok A Where A.Sifra_Kup=''' + @Sifra_Kup + ''' 
  80299.                                 And A.Sifra_Dok = ' + cast(@TipDokKonf as varchar(6)) + ') '
  80300. --    INNER Join Anfindok A On A.Sifra_Oe=D.Sifra_Oe and A.Broj_Kalk=D.Broj_Kalk and A.Sifra_Dok = ' + cast(@TipDokKonf as varchar(6)) + '  
  80301.        If @Uces_Od Is NOT Null
  80302.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  80303.        If @Uces_Do Is NOT Null
  80304.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  80305.     Set @SSQL = @SSQL + ' GROUP BY  S.Sifra_Oe, D.Sifra_Dok, S.Broj_Kalk, D.KojaVal, V.ImeVal, D.Datum_Dok, D.Kurs, D.ECD, 
  80306.                                         D.Opis, D.Akciza, DO.Sifra_Kup, K.ImeKup 
  80307.                       ORDER BY D.Datum_Dok, S.Sifra_Oe '
  80308. print @SSQL
  80309.     Exec(@SSQL)
  80310.  
  80311.  
  80312.  
  80313. Go
  80314. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevkons]'))
  80315. drop procedure [dbo].[sp_matstavkioddevkons]
  80316.  
  80317. Go
  80318.  
  80319.  
  80320. create          PROCEDURE sp_MatStavkiOdDevKons
  80321.    @DevKonsID integer
  80322. AS
  80323.     SELECT S.*, 
  80324.     K.ImeArt, K.ImeArt2, K.Edmera As SEdmera, K.Sifra_Tar, 
  80325.     K.Carbroj, T.ProcOsn 
  80326.     FROM [DevStavKons] S
  80327.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  80328.     INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  80329.     WHERE S.[DevKonsID]= @DevKonsID
  80330.     ORDER BY S.[DevStavKonsID]
  80331.  
  80332.  
  80333.  
  80334. Go
  80335. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_matstavkioddevnar]'))
  80336. drop procedure [dbo].[sp_matstavkioddevnar]
  80337.  
  80338. Go
  80339.  
  80340. CREATE           PROCEDURE sp_MatStavkiOdDevNar
  80341.    @DevNarID integer
  80342. AS
  80343.     SELECT S.*, 
  80344.     K.ImeArt, K.ImeArt2, K.Edmera As SEdmera, K.Sifra_Tar, 
  80345.     K.Carbroj, T.ProcOsn, K.Tezina
  80346.     FROM DevNarStavk S
  80347.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  80348.     INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  80349.     WHERE S.DevNarID= @DevNarID
  80350.     ORDER BY S.DevNarStID
  80351.  
  80352.  
  80353.  
  80354. Go
  80355. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_maxiddnevnik]'))
  80356. drop procedure [dbo].[sp_maxiddnevnik]
  80357.  
  80358. Go
  80359. CREATE PROCEDURE sp_MaxIDDnevnik
  80360.     @MaxIDDnevnik  int = 0 OUTPUT
  80361. AS
  80362.     SELECT @MaxIDDnevnik = MAX(IDDnevnik) FROM Dnevnik
  80363.  
  80364.  
  80365.  
  80366. Go
  80367. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_maxrbrzanalog]'))
  80368. drop procedure [dbo].[sp_maxrbrzanalog]
  80369.  
  80370. Go
  80371.  
  80372.  
  80373. CREATE  PROCEDURE sp_MaxRbrZaNalog
  80374.     @Sifra_Nal    Smallint,
  80375.     @Broj_Nal    int,
  80376.     @Max1    int OUTPUT,
  80377.     @Max2    int OUTPUT
  80378. AS
  80379.     SELECT @Max1=MAX(RbrNalog) FROM GStav 
  80380.     WHERE Sifra_Nal = @Sifra_Nal  AND Broj_Nal = @Broj_Nal
  80381.     SELECT @Max2=MAX(V.RbrNalog) FROM FAvtVrski V
  80382.     INNER JOIN GStav G ON V.GstID = G.GStID AND
  80383.     G.Sifra_Nal = @Sifra_Nal AND G.Broj_Nal = @Broj_Nal
  80384.  
  80385.  
  80386.  
  80387. Go
  80388. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_mcsostojbadatum]'))
  80389. drop procedure [dbo].[sp_mcsostojbadatum]
  80390.  
  80391. Go
  80392.  
  80393. CREATE          procedure [dbo].[sp_MCSostojbaDatum]
  80394.     @Datum as smalldatetime = null,
  80395.     @Sifra_Pat as varchar(10) =  null,
  80396.     @Sif_GrPat as varchar(10) = null,
  80397.     @Sifra_Kup as char(6) = null
  80398. As
  80399.  
  80400.     DECLARE @SSQL as varchar(3000)
  80401.  
  80402.     create table #Tmp
  80403.         (
  80404.         Sifra_Pat smallint,
  80405.         ImePat varchar(30),
  80406.         Sifra_Kup char(6),
  80407.         ImeKup varchar(40),
  80408.         Sifra_Obj smallint,
  80409.         ImeObj varchar(40),
  80410.         cDatum_MC char(6),
  80411.         Sif_MCPozicija integer,
  80412.         ImeMCPozicija nvarchar(50),
  80413.         Br_MCLista integer,
  80414.         VRednostN integer,
  80415.         VrednostC nvarchar(50),
  80416.         Datum smalldatetime    
  80417.         )
  80418.  
  80419.     SET @SSQL = '
  80420.  
  80421.     SELECT  S.Sifra_Pat, P.ImePat, S.Sifra_Kup, K.ImeKup, S.Sifra_Obj, KO.IMeObj,
  80422.                    max(S.cDatum_MC), S.Sif_MCPozicija, KP.ImeMCPozicija, S.Br_MCLista 
  80423.     FROM         MCStavki AS S 
  80424.                           LEFT OUTER JOIN MCKatPozicija AS KP ON S.Sif_MCPozicija = KP.Sif_MCPozicija 
  80425.                           LEFT OUTER JOIN Patnici P ON P.Sifra_Pat = S.Sifra_Pat
  80426.                           LEFT OUTER JOIN Komint K ON S.Sifra_Kup = K.Sifra_Kup
  80427.                           LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup = S.Sifra_Kup and KO.SIfra_Obj = S.SIfra_Obj    
  80428.     WHERE        1 = 1 '
  80429.  
  80430.     IF @Datum IS NOT NULL
  80431.         SET @SSQL = @SSQL + ' AND CAST (''20''+ substring(S.cDatum_MC, 1, 2) + ''-'' + substring(S.cDatum_MC, 3, 2) + ''-'' + substring(S.cDatum_MC, 5, 2) AS SMALLDATETIME) < = '''+cast(@Datum as varchar(35))+''' '    
  80432.     IF @Sifra_Pat IS NOT NULL
  80433.         SET @SSQL = @SSQL + ' AND S.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(5))+ ' '
  80434.     IF (@Sif_GrPat IS NOT NULL)
  80435.         SET @SSQL = @SSQL + ' AND S.Sifra_Pat IN (SELECT Sifra_Pat FROM SGrPat WHERE Sif_GrPat = ''' + cast(@Sif_GrPat as varchar(15)) + ''') '
  80436.     
  80437.     SET @SSQL = @SSQL + ' GROUP BY  S.Sifra_Pat, P.ImePat, S.Sifra_Kup, K.ImeKup, S.Sifra_Obj, KO.IMeObj, S.Sif_MCPozicija, KP.ImeMCPozicija, S.Br_MCLista '
  80438.     SET @SSQL = @SSQL + ' ORDER BY  S.Sifra_Pat, P.ImePat, S.Sifra_Kup, S.Sifra_Obj, S.Sif_MCPozicija, S.Br_MCLista '
  80439.  
  80440.  
  80441.     insert into #Tmp(Sifra_Pat, ImePat, Sifra_Kup, ImeKup,Sifra_Obj,ImeObj, cDatum_MC,Sif_MCPozicija,ImeMCPozicija, Br_MCLista)
  80442.     EXEC(@SSQL)
  80443.  
  80444.     update #Tmp set Datum = M.Datum, VrednostN = M.VrednostN, VrednostC = M.VrednostC from MCStavki M 
  80445.     where #Tmp.Sifra_Pat = M.Sifra_Pat and #Tmp.Sifra_Kup = M.Sifra_Kup and #Tmp.Sifra_Obj = M.Sifra_Obj and #Tmp.cDatum_MC = M.cDatum_MC and #Tmp.Sif_MCPozicija = M.Sif_MCPozicija and #Tmp.Br_MCLista = M.Br_MCLista 
  80446.     
  80447.     select * from #Tmp
  80448.  
  80449.     return @@error
  80450.  
  80451.  
  80452.  
  80453.  
  80454.  
  80455.  
  80456.  
  80457.  
  80458.  
  80459.  
  80460.  
  80461.  
  80462. Go
  80463. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_mozedelumenotpis]'))
  80464. drop procedure [dbo].[sp_mozedelumenotpis]
  80465.  
  80466. Go
  80467. CREATE PROCEDURE sp_MozeDelumenOtpis
  80468.     @Inv_Broj char(10),
  80469.     @Delov_God smallint
  80470. AS 
  80471.     Select (Osn_amor-Otpis_pret) VredPocGod
  80472.     From PocSostOsn 
  80473.     Where Inv_Broj=@Inv_Broj and Godina=@Delov_GOd
  80474.  
  80475.  
  80476. Go
  80477. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nab_pooe]'))
  80478. drop procedure [dbo].[sp_nab_pooe]
  80479.  
  80480. Go
  80481.  
  80482. CREATE     PROCEDURE sp_Nab_PoOE
  80483.     @Sifra_OE Smallint = Null,
  80484.     @KoiOE Varchar(300) = Null,
  80485.     @Pod1 Smallint = Null,
  80486.     @Pod2 Smallint = Null,
  80487.     @Pod3 Smallint = Null,
  80488.     @Pod4 Smallint = Null,
  80489.     @Pod5 Smallint = Null,
  80490.     @Pod6 Smallint = Null,
  80491.     @Pod7 Smallint = Null,
  80492.     @Sifra_Tip Smallint = Null,
  80493.     @Datum_Od Smalldatetime = Null,
  80494.     @Datum_Do Smalldatetime = Null,
  80495.     @Sifra_Art_Od Varchar(20) = Null,
  80496.     @Sifra_Art_Do Varchar(20) = Null,
  80497.     @Sifra_Kup_Od Char(6) = Null,
  80498.     @Sifra_Kup_Do Char(6) = Null,
  80499.     @Podred Char(1) = Null,
  80500.     @Kto Char(6) = Null,
  80501.     @Sifra_Gr Char(3) = Null,
  80502.     @Sifra_Podg Char(6) = Null,
  80503.     @Lokacija Varchar(10) = Null,
  80504.     @TipKup Char(11) = Null,
  80505.     @Sifra_Brand Smallint = Null,
  80506.     @RazbijSostav Char(1) = 'N',
  80507.     @Koi_Gradovi Varchar(200) = Null,
  80508.     @Koi_Regioni Varchar(200) = Null,
  80509.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  80510.     @Drugo1    smallint = Null,
  80511.     @Drugo2    smallint = Null,
  80512.     @Drugo3    smallint = Null,
  80513.     @Drugo4    smallint = Null,
  80514.     @Drugo5    smallint = Null,
  80515.     @Drugo6    smallint = Null,
  80516.     @Drugo7    smallint = Null,
  80517.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N      (Povrzano e so @Sifra_Podg)
  80518.     @GrKup     varchar(500) = Null,
  80519.     @GrArt        varchar(500) = Null
  80520.  
  80521. AS
  80522.     If @PoKojDatum = 'V'
  80523.             If @Datum_Do Is Not Null
  80524.         Set @Datum_Do = @Datum_Do + 1
  80525.     Set Nocount On
  80526.     Declare @SSQL Varchar(8000)
  80527.     CREATE    Table #tSostav
  80528.     (    Sifra_Art Varchar(20),
  80529.         Sifra_Sur Varchar(20),
  80530.         Ima_Kolic Decimal(18,6),
  80531.         Cena Decimal(18,6),
  80532.         VkCena Decimal(18,6)
  80533.     )
  80534.     If @RazbijSostav = 'D'
  80535.         Begin
  80536.             Set @SSQL = 'Insert #tSostav
  80537.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  80538.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  80539.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  80540.             Exec(@SSQL)
  80541.         End
  80542.     Set @SSQL = 'Insert #tSostav
  80543.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  80544.         From Katart K '
  80545.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  80546.     If @RazbijSostav = 'D'
  80547.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  80548.     Exec(@SSQL)
  80549. --select * from #tsostav
  80550. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  80551.  
  80552.     If @GrKup Is Not Null
  80553.     Begin
  80554.     CREATE   Table #KupObj
  80555.         (
  80556.             Sifra_Kup    char(6),
  80557.             Sifra_Obj    smallint
  80558.         )
  80559.         CREATE   Table #KupObj1
  80560.         (
  80561.             Sifra_Kup    char(6),
  80562.             Sifra_Obj    smallint
  80563.         )
  80564.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  80565.         Exec(@SSQL)
  80566.  
  80567.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  80568.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  80569.                 From SGrKupObj GK 
  80570.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  80571.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  80572.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  80573.         Exec(@SSQL)
  80574.  
  80575.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  80576.         Exec(@SSQL)
  80577.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  80578.     End
  80579.  
  80580.     If @GrArt Is Not Null
  80581.     Begin
  80582.         Create Table #GrArt
  80583.         (
  80584.             Sifra_Art    varchar(20)
  80585.         )
  80586.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  80587.  
  80588.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  80589.         Exec(@SSQL)
  80590.     End
  80591.  
  80592. --------------------------------------------------------------
  80593.     Set @SSQL = 'Select S.Sifra_OE, O.ImeOrg,
  80594.             Count(Distinct(S.DokrID)) As Br_Fri,
  80595.             Count(Distinct(S.DokID)) As Br_Stavki,
  80596.             Count(Distinct(D.Sifra_Kup)) As Br_Komint,
  80597.             Round(Avg(S.Kolic), 4) As Pros_Kolic,
  80598.             Round(Avg(S.DokCena), 4) As Pros_Cena,
  80599.             Round(Avg(K.GotCena), 4) As Pros_NPS,
  80600.             Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) UL_Edinici,
  80601.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as DVr_Osnov, 
  80602.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_SoRabat,
  80603.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as DVr_Krajna,
  80604.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn)), 4) as MVr_Osnov, 
  80605.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0, 0)), 4) as MVr_SoRabat,
  80606.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.MagCena*TS.Cena/TS.VkCena, S.DanMagCena, S.POsn, 0,0)), 4) as MVr_Krajna,
  80607.             Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) Vk_NPS
  80608.         From #tSostav TS
  80609.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  80610.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  80611.         Inner Join Dokr D On S.DokrID=D.DokrID
  80612.         Inner Join Orged O On D.Sifra_OE=O.Sifra_OE '
  80613.     If @Sifra_Gr Is Not Null
  80614.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  80615.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  80616.         Or (@Pod5 Is Not Null) Or (@Pod6 Is Not Null) Or (@Pod7 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null)
  80617.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  80618.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  80619.     If @GrKup Is Not Null
  80620.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  80621.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  80622.     If @GrArt Is Not Null
  80623.         Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  80624.     Set @SSQL = @SSQL + 'Where D.VlIzl=''V'' And D.Sifra_Za=2 And K.Iskluci <> ''D'' '
  80625.     If @Sifra_Brand Is Not Null
  80626.         Set @SSQL  = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(5)) + ' '
  80627.     If @Lokacija Is Not NULL
  80628.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + ''' '
  80629.     If @Kto Is Not NULL
  80630.         Set @SSQL = @SSQL + 'And K.Kto=' + @Kto + ' '
  80631.     If @Sifra_Podg Is Not Null
  80632.         If @PocnuvaSo ='D'
  80633.             Set @SSQL=@SSQL+'AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  80634.         Else
  80635.             Set @SSQL=@SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  80636. --    If @Sifra_Podg Is Not NULL
  80637. --        Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  80638.     If @Sifra_Gr Is Not NULL
  80639.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  80640.     If @PoKojDatum = 'V'
  80641.           Begin
  80642.         If @Datum_Od Is Not NULL
  80643.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  80644.         If @Datum_Do Is Not NULL
  80645.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  80646.           End
  80647.     Else 
  80648.           Begin
  80649.         If @Datum_Od Is Not NULL
  80650.             Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  80651.         If @Datum_Do Is Not NULL
  80652.             Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  80653.            End
  80654.     If @Sifra_OE Is Not Null
  80655.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  80656.     If @KoiOE Is Not Null
  80657.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (' + @KoiOE + ') '
  80658.     If @Pod1 Is Not NULL
  80659.            Begin
  80660.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  80661.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  80662.            End
  80663.     If @Pod2 Is Not NULL
  80664.            Begin
  80665.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  80666.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  80667.            End
  80668.     If @Pod3 Is Not NULL
  80669.         Begin
  80670.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  80671.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  80672.            End
  80673.     If @Pod4 Is Not NULL
  80674.            Begin
  80675.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  80676.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  80677.            End
  80678.     If @Pod5 Is Not NULL
  80679.            Begin
  80680.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  80681.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  80682.            End
  80683.     If @Pod6 Is Not NULL
  80684.            Begin
  80685.         Set @SSQL = @SSQL + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  80686.                       Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  80687.            End
  80688.     If @Pod7 Is Not NULL
  80689.            Begin
  80690.         Set @SSQL = @SSQL + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  80691.                       Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  80692.            End
  80693. --    If @Pod5 Is Not NULL
  80694. --        Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  80695.     If @Sifra_Tip Is Not Null
  80696.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  80697.     If @Sifra_Kup_Od Is Not NULL
  80698.         Set @SSQL = @SSQL + 'And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  80699.     If @Sifra_Kup_Do Is Not NULL
  80700.         Set @SSQL = @SSQL + 'And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  80701.     If @Sifra_Art_Od Is Not NULL
  80702.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  80703.     If @Sifra_Art_Do Is Not NULL
  80704.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  80705.     If @TipKup Is Not NULL
  80706.         Set @SSQL = @SSQL + 'And KUP.TipKup=''' + @TipKup + ''' '
  80707.     If @Koi_Gradovi Is Not NULL    
  80708.         Begin
  80709.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  80710.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  80711.         End
  80712.     If @Koi_Regioni Is Not NULL    
  80713.         Begin
  80714.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  80715.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  80716.         End
  80717.     If @Drugo1 Is Not NULL
  80718.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  80719.     If @Drugo2 Is Not NULL
  80720.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  80721.     If @Drugo3 Is Not NULL
  80722.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  80723.     If @Drugo4 Is Not NULL
  80724.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  80725.     If @Drugo5 Is Not NULL
  80726.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  80727.     If @Drugo6 Is Not NULL
  80728.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  80729.     If @Drugo7 Is Not NULL
  80730.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  80731.     Set @SSQL = @SSQL + 'Group By S.Sifra_OE, O.ImeOrg '
  80732.     If @Podred = 'S'
  80733.         Set @SSQL = @SSQL + 'Order By S.Sifra_OE '
  80734.     Else If @Podred = 'A'
  80735.         Set @SSQL = @SSQL + 'Order By O.ImeOrg ' 
  80736.     Else If @Podred = '1'
  80737.         Set @SSQL = @SSQL + 'Order By Br_Fri Desc ' 
  80738.     Else If @Podred = '2'
  80739.         Set @SSQL = @SSQL + 'Order By UL_Edinici Desc ' 
  80740.     Else If @Podred = '3'
  80741.         Set @SSQL = @SSQL + 'Order By MVr_Krajna Desc, DVr_Krajna Desc '
  80742.     Exec(@SSQL)
  80743.     Set Nocount Off
  80744.  
  80745. Go
  80746. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nab_voizlnamalo]'))
  80747. drop procedure [dbo].[sp_nab_voizlnamalo]
  80748.  
  80749. Go
  80750. CREATE   PROCEDURE sp_Nab_VoIzlNaMalo
  80751. AS
  80752.     Update Stavr
  80753.     Set NabCena=(Select Nabavna From Katart Where Stavr.Sifra_Art=Katart.Sifra_Art)/(1+POsn/100),  RNabC='D'
  80754.     Where (RNabC Is Null Or RNabC<>'D')  And VlIzl='I'
  80755.       And Sifra_OE In (Select Sifra_OE From Orged Where GolMal='M' Or Sifra_OE=301 or sifra_OE=102)
  80756.     Update Stavr Set RNabC = 'X'  Where NabCena = 0  And VlIzl='I'
  80757.       And Sifra_OE In (Select Sifra_OE From Orged Where GolMal='M' Or Sifra_OE=301 or sifra_oe=102)
  80758.  
  80759.  
  80760. Go
  80761. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nabavki]'))
  80762. drop procedure [dbo].[sp_nabavki]
  80763.  
  80764. Go
  80765. CREATE     PROCEDURE sp_Nabavki
  80766.     @Sifra_OE Smallint = Null,
  80767.     @KoiOE Varchar(100) = Null,
  80768.     @Pod1 Smallint = Null,
  80769.     @Pod2 Smallint = Null,
  80770.     @Pod3 Smallint = Null,
  80771.     @Pod4 Smallint = Null,
  80772.     @Pod5 Smallint = Null,
  80773.     @Sifra_Tip Smallint = Null,
  80774.     @Datum_Od Smalldatetime = Null,
  80775.     @Datum_Do Smalldatetime = Null,
  80776.     @Sifra_Art_Od Varchar(20) = Null,
  80777.     @Sifra_Art_Do Varchar(20) = Null,
  80778.     @Sifra_Kup_Od Char(6) = Null,
  80779.     @Sifra_Kup_Do Char(6) = Null,
  80780.     @Podred Char(1) = 'S',
  80781.     @Kto Char(6) = Null,
  80782.     @Sifra_Gr Char(3) = Null,
  80783.     @Sifra_Podg Char(6) = Null,
  80784.     @Lokacija Varchar(10) = Null,
  80785.     @TipKup Char(11) = Null,
  80786.     @Sifra_Brand Smallint = Null,
  80787.     @RazbijSostav Char(1) = 'N',
  80788.     @Koi_Gradovi Varchar(200) = Null,
  80789.     @Koi_Regioni Varchar(200) = Null,
  80790.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  80791.     @Drugo1    smallint = Null,
  80792.     @Drugo2    smallint = Null,
  80793.     @Drugo3    smallint = Null,
  80794.     @Drugo4    smallint = Null,
  80795.     @Drugo5    smallint = Null
  80796. AS
  80797.     If @PoKojDatum = 'V'
  80798.             If @Datum_Do Is Not Null
  80799.         Set @Datum_Do = @Datum_Do + 1
  80800.     Set Nocount On
  80801.     Declare @SSQL Varchar(8000)
  80802.     CREATE    Table #tSostav
  80803.     (    Sifra_Art Varchar(20),
  80804.         Sifra_Sur Varchar(20),
  80805.         Ima_Kolic Decimal(18,6),
  80806.         Cena Decimal(18,6),
  80807.         VkCena Decimal(18,6)
  80808.     )
  80809.     If @RazbijSostav = 'D'
  80810.         Begin
  80811.             Set @SSQL = 'Insert #tSostav
  80812.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  80813.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  80814.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  80815.             Exec(@SSQL)
  80816.         End
  80817.     Set @SSQL = 'Insert #tSostav
  80818.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  80819.         From Katart K '
  80820.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  80821.     If @RazbijSostav = 'D'
  80822.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  80823.     Exec(@SSQL)
  80824. --------------------------------------------------------------
  80825.     Set @SSQL = 'Select K.Sifra_Art, K.ImeArt, K.EdMera, T.ProcOsn, K.DogCena, 
  80826.             K.Sifra_Podg, P.Ime_Podg, G.Sifra_Gr, G.Ime_Gr, 
  80827.             Sum(Kolic) Kolic, Round(Sum(S.Kolic*TS.Ima_Kolic * S.NabCena), 4) as NabVredBezDDV
  80828.         From #tSostav TS
  80829.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  80830.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  80831.         Inner Join Tarifi T ON T.Sifra_Tar = K.Sifra_Tar
  80832.         Inner Join Dokr D On S.DokrID=D.DokrID 
  80833.         Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg 
  80834.         Inner Join Grupi G ON P.Sifra_Gr = G.Sifra_Gr '
  80835.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  80836.         Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null)
  80837.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  80838.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  80839.     Set @SSQL = @SSQL + 'Where D.VlIzl=''V'' And D.Sifra_Za=2 And K.Iskluci <> ''D'' '
  80840.     If @Sifra_Brand Is Not Null
  80841.         Set @SSQL  = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(5)) + ' '
  80842.     If @Lokacija Is Not NULL
  80843.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + ''' '
  80844.     If @Kto Is Not NULL
  80845.         Set @SSQL = @SSQL + 'And K.Kto=' + @Kto + ' '
  80846.     If @Sifra_Podg Is Not NULL
  80847.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  80848.     If @Sifra_Gr Is Not NULL
  80849.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  80850.     If @PoKojDatum = 'V'
  80851.           Begin
  80852.         If @Datum_Od Is Not NULL
  80853.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  80854.         If @Datum_Do Is Not NULL
  80855.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  80856.           End
  80857.     Else 
  80858.           Begin
  80859.         If @Datum_Od Is Not NULL
  80860.             Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  80861.         If @Datum_Do Is Not NULL
  80862.             Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  80863.            End
  80864.     If @Sifra_OE Is Not Null
  80865.         Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  80866.     If @KoiOE Is Not Null
  80867.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (' + @KoiOE + ') '
  80868.     If @Pod1 Is Not NULL
  80869.         Set @SSQL = @SSQL + ' And KUP.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  80870.     If @Pod2 Is Not NULL
  80871.         Set @SSQL = @SSQL + ' And KUP.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  80872.     If @Pod3 Is Not NULL
  80873.         Set @SSQL = @SSQL + ' And KUP.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  80874.     If @Pod4 Is Not NULL
  80875.         Set @SSQL = @SSQL + ' And KUP.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  80876.     If @Pod5 Is Not NULL
  80877.         Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  80878.     If @Sifra_Tip Is Not Null
  80879.         SET @SSQL = @SSQL +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  80880.     If @Sifra_Kup_Od Is Not NULL
  80881.         Set @SSQL = @SSQL + 'And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  80882.     If @Sifra_Kup_Do Is Not NULL
  80883.         Set @SSQL = @SSQL + 'And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  80884.     If @Sifra_Art_Od Is Not NULL
  80885.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  80886.     If @Sifra_Art_Do Is Not NULL
  80887.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  80888.     If @TipKup Is Not NULL
  80889.         Set @SSQL = @SSQL + 'And KUP.TipKup=''' + @TipKup + ''' '
  80890.     If @Koi_Gradovi Is Not NULL    
  80891.         Begin
  80892.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  80893.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  80894.         End
  80895.     If @Koi_Regioni Is Not NULL    
  80896.         Begin
  80897.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  80898.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  80899.         End
  80900.     If @Drugo1 Is Not NULL
  80901.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  80902.     If @Drugo2 Is Not NULL
  80903.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  80904.     If @Drugo3 Is Not NULL
  80905.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  80906.     If @Drugo4 Is Not NULL
  80907.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  80908.     If @Drugo5 Is Not NULL
  80909.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  80910.     Set @SSQL = @SSQL + 'Group By K.Sifra_Art, K.ImeArt, K.EdMera, T.ProcOsn, K.DogCena,K.Sifra_Podg, P.Ime_Podg, G.Sifra_Gr, G.Ime_Gr '
  80911.     If @Podred = 'S'
  80912.         Set @SSQL = @SSQL + 'Order By K.Sifra_Art '
  80913.     Else If @Podred = 'A'
  80914.         Set @SSQL = @SSQL + 'Order By K.ImeArt ' 
  80915.     Exec(@SSQL)
  80916.     Set Nocount Off
  80917.  
  80918.  
  80919. Go
  80920. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nabcenaodkatart]'))
  80921. drop procedure [dbo].[sp_nabcenaodkatart]
  80922.  
  80923. Go
  80924. CREATE  PROCEDURE sp_NabCenaOdKatArt
  80925.     @Sifra_art   varchar(20),
  80926.     @NabCenaBezDDV   decimal(18,2)  OUTPUT,
  80927.     @NabCenaSoDDV   decimal(18,2)  OUTPUT
  80928.  AS
  80929.     SELECT @NabCenaBezDDV = Round(K.Nabavna, 2), @NabCenaSoDDV = Round(K.Nabavna *(1+ T.ProcOsn/100), 2)
  80930.     FROM KatArt K
  80931.     INNER JOIN Tarifi T ON K.Sifra_Tar = T.Sifra_Tar
  80932.     WHERE K.Sifra_Art = @Sifra_Art
  80933.  
  80934.  
  80935. Go
  80936. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nabceni_fifo]'))
  80937. drop procedure [dbo].[sp_nabceni_fifo]
  80938.  
  80939. Go
  80940. CREATE     PROCEDURE sp_NabCeni_Fifo
  80941.     @PocDatum Smalldatetime,
  80942.     @Datum_Od Smalldatetime = Null,
  80943.     @Datum_Do Smalldatetime = Null
  80944. AS
  80945.     Declare @SSQL Varchar(4000)
  80946.     Declare @Sifra_Art Varchar(20)
  80947.     Declare @NCID Int
  80948.     Declare @VkVlez Decimal(18,4)
  80949.     Declare @NabCena Decimal(18,4)
  80950.     Declare @DokID Int
  80951.     Declare @Izlez Decimal(18,4)
  80952.     Declare @Kumul Decimal(18,4)
  80953.     Declare @tRec Int
  80954.     Declare @tNabavni Int
  80955.     Declare @SegaVlez Decimal(18,4)
  80956.     Create Table #NabCeni
  80957.     (    NCID Int IDENTITY(1, 1),
  80958.         Sifra_Art Varchar(20),
  80959.         Kolic Decimal(18, 4),
  80960.         NabCena Decimal(18, 4),
  80961.         Datum_Dok Smalldatetime
  80962.     )
  80963.     Declare Artikli Cursor Fast_Forward For
  80964.         Select Distinct Sifra_Art From Stavr
  80965.     Open Artikli
  80966.     Fetch Next From Artikli Into @Sifra_Art
  80967.     While @@Fetch_Status = 0
  80968.     Begin
  80969.         Insert #NabCeni
  80970.         Select Sifra_Art, Kolic, NabCena, Datum_Dok
  80971.         From Stavr
  80972.         Where Sifra_Dok  In (132, 15)
  80973.             And Sifra_OE  = 1
  80974.             And Sifra_Art = @Sifra_Art
  80975.             And Datum_Dok>= @PocDatum
  80976.             And Kolic    <> 0
  80977.         Union Select Sifra_Art, Kolic, NabCena, '2003-01-01'
  80978.         From PocCeni
  80979.         Where Sifra_Art = @Sifra_Art
  80980.         Order By Datum_Dok
  80981.         Set @tRec = @@RowCount
  80982.         If @tRec>0    --Imam nabavki za ovaj Artikl
  80983.             Begin
  80984.                 Declare Stavki Cursor For
  80985.                     Select DokID, Kolic From Stavr
  80986.                         Where Sifra_Art   = @Sifra_Art
  80987.                             And Sifra_OE  In (Select Sifra_OE From SGrOrg Where Sif_GrOrg='9')
  80988.                             And VlIzl      = 'I'
  80989.                             And (ImaDodatna Is Null Or ImaDodatna = '')
  80990.                             And Datum_Dok >= @PocDatum
  80991.                             And Kolic     <> 0
  80992.                         Order By Datum_Dok
  80993.                 Open Stavki
  80994.                 Fetch Next From Stavki
  80995.                 Into @DokID, @Izlez
  80996.                 Set @VkVlez = 0
  80997.                 Set @Kumul = 0
  80998.                 Set @Nabcena = 0
  80999.                 While 1=1    --Istrcaj go kursorot so prodazbi za ovaj Artikl
  81000.                 Begin
  81001.                     If @@Fetch_Status <> 0    --Nema prodazba
  81002.                         Begin                            
  81003.                             Close Stavki
  81004.                             Deallocate Stavki
  81005.                             Break
  81006.                         End
  81007.                     Else    --@@Fetch_Status=0 => Ima Prodazba, pa da istrcame
  81008.                         Begin
  81009.                             While @VkVlez<@Izlez Or @VkVlez<=0
  81010.                             Begin
  81011.                                 Select @tNabavni=Count(*) From #NabCeni
  81012.                                 If @tNabavni > 0
  81013.                                     Begin                        
  81014.                                         Select Top 1 @NCID=NCID, @SegaVlez=Kolic, @NabCena=NabCena
  81015.                                         From #NabCeni
  81016.                                         Order By Datum_Dok
  81017.                                         Delete #NabCeni Where NCID=@NCID
  81018.                                     End
  81019.                                 Else
  81020.                                     Break
  81021.                                 Set @Kumul = @Kumul + @SegaVlez*@NabCena
  81022.                                 Set @VkVlez = @VkVlez + @SegaVlez
  81023.                             End
  81024.                             If @VkVlez<>0
  81025.                                 Set @NabCena = @Kumul/@VkVlez
  81026.                             If @Nabcena < 0
  81027.                                 Set @Nabcena = 0
  81028.                             Update Stavr Set NabCena=@NabCena
  81029.                             Where DokID=@DokID
  81030.                             Set @Kumul = @Kumul - (@Izlez*@NabCena)
  81031.                             Set @VkVlez = @VkVlez - @Izlez
  81032.                             Fetch Next From Stavki
  81033.                             Into @DokID, @Izlez
  81034.                             If @@Fetch_Status <> 0
  81035.                                 Begin
  81036.                                     Close Stavki
  81037.                                     Deallocate Stavki
  81038.                                     Break
  81039.                                 End
  81040.                         End
  81041.                 End    --Za kursorot so prodazbi za ovaj Artikl
  81042.                 --Zavrsivme so ovoj artikl, pa cistime gjubre
  81043.                 --i zemame nov
  81044.                 Truncate Table #NabCeni
  81045.                 Fetch Next From Artikli Into @Sifra_Art
  81046.             End --If @@RowCount>0
  81047.         Else    --Nemam nabavki za ovaj Artikl
  81048.             Begin
  81049.                 Print 'Ne najdov niedna nabavna cena za ovaj artikl'
  81050.                 Print 'Sifra_Art='+ @Sifra_Art
  81051.                 Fetch Next From Artikli Into @Sifra_Art
  81052.             End
  81053.     End    --Za Kursorot so Artikli
  81054.     Close Artikli
  81055.     Deallocate Artikli
  81056.  
  81057.  
  81058. Go
  81059. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nagraduvanje_komerc_et]'))
  81060. drop procedure [dbo].[sp_nagraduvanje_komerc_et]
  81061.  
  81062. Go
  81063.  
  81064.  
  81065.  
  81066. CREATE           PROCEDURE sp_Nagraduvanje_Komerc_ET
  81067.     @Sifra_Pat    int = Null,
  81068.     @Datum_Dok_Od Smalldatetime = NULL,
  81069.     @Datum_Dok_Do Smalldatetime = NULL,
  81070.     @SoStavki    char(1) = 'N',
  81071.     @KomercKako    char(1) = 'T',       -- I - Istoriski od Dokr,    T - tekovno od komint
  81072.     @TipDokKgr    varchar(200) = '6,29,606,629',
  81073.     @DenariPoKgr    decimal(9,2) = 1,
  81074.     @ProcentNapl    decimal(9,2) = 0
  81075. AS
  81076.     Declare @SSQL        Varchar(4000)
  81077.     Create Table #Uplati
  81078.     (
  81079.      AnIDUpl    int,
  81080.      PlatenDel    decimal(18,6),
  81081.      SifOeFak    smallint,
  81082.      SifDokFak    smallint,
  81083.      BrDokFak    int,
  81084.      DolziFak    decimal(18,6),
  81085.      ProcZatv    decimal(9,2)
  81086.     )
  81087.     Set @SSQL = ' Select A.AnID, AZ.Iznos, F.Sifra_Oe, F.Sifra_Dok, F.Broj_Dok, F.Dolzi, 0
  81088.             FROM AnFinDok A
  81089.             Inner Join AnZatv AZ On AZ.AnID1=A.AnID
  81090.             Inner Join AnFinDok F On F.AnID=AZ.ANID2
  81091.             INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok= ''2''
  81092.             INNER JOIN TipDok TDF ON F.Sifra_Dok=TDF.Sifra_Dok And TDF.DaliMater = ''D''
  81093.             Where A.Sifra_Za=1 '
  81094.     If @Datum_Dok_Od Is Not Null
  81095.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  81096.     If @Datum_Dok_Do Is Not Null
  81097.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  81098.     Insert Into #Uplati Exec(@SSQL)
  81099.  
  81100.     Set @SSQL = ' Select A.AnID, AZ.Iznos, F.Sifra_Oe, F.Sifra_Dok, F.Broj_Dok, F.Dolzi, 0
  81101.             FROM AnFinDok A
  81102.             Inner Join AnZatv AZ On AZ.AnID2=A.AnID
  81103.             Inner Join AnFinDok F On F.AnID=AZ.ANID1
  81104.             INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok= ''2''
  81105.             INNER JOIN TipDok TDF ON F.Sifra_Dok=TDF.Sifra_Dok And TDF.DaliMater = ''D''
  81106.             Where A.Sifra_Za=1 '
  81107.     If @Datum_Dok_Od Is Not Null
  81108.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  81109.     If @Datum_Dok_Do Is Not Null
  81110.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  81111.     Insert Into #Uplati Exec(@SSQL)
  81112.  
  81113.     Update #Uplati Set ProcZatv=Round((PlatenDel/DolziFak), 2) Where DolziFak > 0
  81114.  
  81115.     Create Table #UplPoDok
  81116.     (
  81117.      DokrID        int,
  81118.      Sifra_Oe    smallint,
  81119.      Sifra_Dok    smallint,
  81120.      Broj_Dok    int,
  81121.      Sifra_Kup    char(6),
  81122.      Sifra_Pat    int, 
  81123.      VkKolic        decimal(18,6),      -- Vkupno kolicina na dokumentot za onie dokumenti kaj koi nagraduvanjto GO zemame spored kolicinata
  81124. --     PlatKolic    decimal(18,6),      -- platena kolicina od dokumentot za onie dokumenti kaj koi nagraduvanjto GO zemame spored kolicinata
  81125.      IznosUplata    decimal(18,6),      -- iznos na uplata za dokumentite za onie dokumenti kaj koi nagraduvanjeto NE GO zemame spored kolicinata
  81126.      ProcZatv    decimal(9,2)      -- procent na uplaten del od dokumentot 
  81127. --     NagradaKomerc decimal(18,6)     
  81128.     )
  81129.  
  81130.     Set @SSQL = ' Select S.DokrID, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, D.Sifra_Kup, '
  81131.     If @KomercKako = 'T' 
  81132.         Set @SSQL = @SSQL + ' Pat.Sifra_Pat, ' --(Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End), '
  81133.     Else 
  81134.         Set @SSQL = @SSQL + ' D.Sifra_Pat, '
  81135.     Set @SSQL = @SSQL + ' Sum(S.Kolic) VkKolic, U.PlatenDel, U.ProcZatv
  81136.         From Dokr D
  81137.         Inner Join Stavr S On S.DokrID=D.DokrID
  81138.         Inner Join #Uplati U On U.SifOeFak=S.Sifra_Oe And U.SifDokFak=S.Sifra_Dok And U.BrDokFak=S.Broj_Dok
  81139.         Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  81140.         Left Outer Join KObjekti KO On KO.Sifra_Kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj 
  81141.         Left Outer Join Patnici Pat On Pat.Sifra_Pat = (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End)
  81142.         Where D.Sifra_Za=1 '
  81143.     If @TipDokKgr Is Not Null 
  81144.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDokKgr + ') '
  81145.     If @Sifra_Pat Is Not Null
  81146.         If @KomercKako = 'T' 
  81147.             Set @SSQL = @SSQL + ' And Pat.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  81148.         Else
  81149.             Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  81150.     Set @SSQL = @SSQL + ' Group By S.DokrID, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, U.ProcZatv, U.PlatenDel, D.Sifra_Kup, '
  81151.     If @KomercKako = 'T' 
  81152.         Set @SSQL = @SSQL + ' Pat.Sifra_Pat  '
  81153.     Else 
  81154.         Set @SSQL = @SSQL + ' D.Sifra_Pat '
  81155.     Insert Into #UplPoDok Exec(@SSQL)
  81156.  
  81157.     Set @SSQL = ' Select S.DokrID, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, D.Sifra_Kup, '
  81158.     If @KomercKako = 'T' 
  81159.         Set @SSQL = @SSQL + ' Pat.Sifra_Pat, ' --(Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End), '
  81160.     Else 
  81161.         Set @SSQL = @SSQL + ' D.Sifra_Pat, '
  81162.     Set @SSQL = @SSQL + ' 0 as VkKolic, U.PlatenDel, U.ProcZatv
  81163.         From Dokr D
  81164.         Inner Join Stavr S On S.DokrID=D.DokrID
  81165.         Inner Join #Uplati U On U.SifOeFak=S.Sifra_Oe And U.SifDokFak=S.Sifra_Dok And U.BrDokFak=S.Broj_Dok
  81166.         Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  81167.         Left Outer Join KObjekti KO On KO.Sifra_Kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj 
  81168.         Left Outer Join Patnici Pat On Pat.Sifra_Pat = (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End)
  81169.         Where D.Sifra_Za=1 '
  81170.     If @TipDokKgr Is Not Null 
  81171.         Set @SSQL = @SSQL + ' And D.Sifra_Dok Not In (' + @TipDokKgr + ') '
  81172.     If @Sifra_Pat Is Not Null
  81173.         If @KomercKako = 'T' 
  81174.             Set @SSQL = @SSQL + ' And Pat.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  81175.         Else
  81176.             Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  81177.     Set @SSQL = @SSQL + ' Group By S.DokrID, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, U.ProcZatv, U.PlatenDel, D.Sifra_Kup, '
  81178.     If @KomercKako = 'T' 
  81179.         Set @SSQL = @SSQL + ' Pat.Sifra_Pat  '
  81180.     Else 
  81181.         Set @SSQL = @SSQL + ' D.Sifra_Pat '
  81182.     Insert Into #UplPoDok Exec(@SSQL)
  81183.  
  81184.     If @SoStavki = 'D'
  81185.         Set @SSQL = ' Select U.Sifra_Oe, U.Sifra_Dok, U.Broj_Dok,  '
  81186.     Else
  81187.         Set @SSQL = ' Select Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok,  '
  81188.     Set @SSQL = @SSQL + ' U.Sifra_Pat, P.ImePat, '
  81189.     If @SoStavki = 'D'     Set @SSQL = @SSQL + ' U.Sifra_Kup, KOM.ImeKup, ' 
  81190.     Set @SSQL = @SSQL + ' Sum(Case When U.VkKolic<>0 Then (U.VkKolic*U.ProcZatv) Else 0 End) NaplateniKgr,
  81191.             Sum(Case When U.VkKolic<>0 Then (U.VkKolic*U.ProcZatv*' + Cast(@DenariPoKgr as varchar(10)) + ') Else 0 End) NagradaZaKgr,
  81192.             Sum(Case When U.VkKolic=0 And IznosUplata <> 0 Then (U.IznosUplata*U.ProcZatv) Else 0 End) NaplateniFakturi,
  81193.             Sum(Case When U.VkKolic=0 And IznosUplata <> 0 Then (U.IznosUplata*U.ProcZatv*' + Cast(@ProcentNapl as varchar(10)) + '/100) Else 0 End) NagradaZaFakturi
  81194.         From #UplPoDok U
  81195.         Left Outer Join Patnici P On P.Sifra_Pat = U.Sifra_Pat '
  81196.     If @SoStavki = 'D'
  81197.         Set @SSQL = @SSQL + ' Left Outer Join Komint KOM On KOM.Sifra_Kup = U.Sifra_Kup 
  81198.         Group By U.Sifra_Pat, P.ImePat, U.Sifra_Kup, KOM.ImeKup, U.Sifra_Oe, U.Sifra_Dok, U.Broj_Dok'
  81199.     ELSE
  81200.         Set @SSQL = @SSQL + ' Group By U.Sifra_Pat, P.ImePat '
  81201. print (@ssql)
  81202.     Exec(@SSQL)
  81203.  
  81204.  
  81205.  
  81206.  
  81207.  
  81208. Go
  81209. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nagraduvanje_komerc_poart]'))
  81210. drop procedure [dbo].[sp_nagraduvanje_komerc_poart]
  81211.  
  81212. Go
  81213. CREATE        PROCEDURE sp_Nagraduvanje_Komerc_PoArt
  81214.     @Sifra_Pat    int = Null,
  81215.     @Datum_Dok_Od Smalldatetime = NULL,
  81216.     @Datum_Dok_Do Smalldatetime = NULL,
  81217.     @SoStavki    char(1) = 'N',
  81218.     @EkstraBonus3    char(1) = 'D',    -- za SwissLion Mak - za komintentite koi ne spagaat vo podelba 3 sifra 1 treba da se dade ekstra rabat 
  81219.     @EkstraBonusProc smallint = 30,  -- procent na ekstra bonus 
  81220.     @Sifra_OE    Smallint = NULL,
  81221.     @KoiOe    varchar(10) = Null,
  81222.     @Koi_Gradovi     varchar(300) = Null
  81223. --    @VratiPod    Char(1) = 'O',        --U-po Uplata, D-Detalno po zatvoranja, P-po Patnici, K-po Komint, O-po Organizacioni edinici,  I-Detalno po fakturi i zatvaranja, X-plateno pred/po rok+neplateno 
  81224. --    @KoiUpl    Char(1) = 'S',        --S-Site, N-samo Neplateni, P-samo PLATENI,      D - Delimicno plateni
  81225. --    @KomercKako    char(1) = 'I',                -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  81226. --    @Fra_Uplata    char(1) = '2',        -- 1- Faktupa,    2 - Uplata
  81227. AS
  81228.     Declare @SSQL        Varchar(4000)
  81229.     Create Table #Uplati
  81230.     (
  81231.      AnIDUpl    int,
  81232.      PlatenDel    decimal(18,6),
  81233.      SifOeFak    smallint,
  81234.      SifDokFak    smallint,
  81235.      BrDokFak    int,
  81236.      DolziFak    decimal(18,6),
  81237.      ProcZatv    decimal(9,2)
  81238.     )
  81239.  
  81240.     Set @SSQL = ' Select A.AnID, AZ.Iznos, F.Sifra_Oe, F.Sifra_Dok, F.Broj_Dok, F.Dolzi, 0
  81241.             FROM AnFinDok A
  81242.             Inner Join AnZatv AZ On AZ.AnID1=A.AnID
  81243.             Inner Join AnFinDok F On F.AnID=AZ.ANID2
  81244.             INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok= ''2''
  81245.             INNER JOIN TipDok TDF ON F.Sifra_Dok=TDF.Sifra_Dok And TDF.DaliMater = ''D''
  81246.             Where A.Sifra_Za=1 '
  81247.     If @Datum_Dok_Od Is Not Null
  81248.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  81249.     If @Datum_Dok_Do Is Not Null
  81250.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  81251.     Insert Into #Uplati Exec(@SSQL)
  81252.  
  81253.     Set @SSQL = ' Select A.AnID, AZ.Iznos, F.Sifra_Oe, F.Sifra_Dok, F.Broj_Dok, F.Dolzi, 0
  81254.             FROM AnFinDok A
  81255.             Inner Join AnZatv AZ On AZ.AnID2=A.AnID
  81256.             Inner Join AnFinDok F On F.AnID=AZ.ANID1
  81257.             INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok And TD.TipDok= ''2''
  81258.             INNER JOIN TipDok TDF ON F.Sifra_Dok=TDF.Sifra_Dok And TDF.DaliMater = ''D''
  81259.             Where A.Sifra_Za=1 '
  81260.     If @Datum_Dok_Od Is Not Null
  81261.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  81262.     If @Datum_Dok_Do Is Not Null
  81263.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  81264.     Insert Into #Uplati Exec(@SSQL)
  81265.  
  81266.     Update #Uplati Set ProcZatv=Round((PlatenDel/DolziFak), 2) Where DolziFak > 0
  81267.  
  81268.     Create Table #UplPoArt
  81269.     (
  81270.      DokrID        int,
  81271.      Sifra_Oe    smallint,
  81272.      Sifra_Dok    smallint,
  81273.      Broj_Dok    int,
  81274.      Sifra_Art    varchar(20),
  81275.      IznosPoArt    decimal(18,6),
  81276.      ProcZatv    decimal(9,2),
  81277.      UplPoArt    decimal(18,6)
  81278.     )
  81279.     Set @SSQL = ' Select S.DokrID, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Sifra_Art, 
  81280.             Sum(S.Kolic * S.DokCena * (1-S.Uces/100) * (1-D.Kasa/100)) IznosPoArt, 
  81281.             U.ProcZatv, Sum((S.Kolic * S.DokCena * (1-S.Uces/100) * (1-D.Kasa/100)) * U.ProcZatv) UplPoArt
  81282.         From Dokr D
  81283.         Inner Join Stavr S On S.DokrID=D.DokrID
  81284.         Inner Join #Uplati U On U.SifOeFak=S.Sifra_Oe And U.SifDokFak=S.Sifra_Dok And U.BrDokFak=S.Broj_Dok
  81285.         Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  81286.         Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  81287.         Where D.Sifra_Za=1 '
  81288.     If @Sifra_Pat Is Not Null
  81289.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  81290.     If @Sifra_Oe Is Not Null
  81291.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  81292.     If @KoiOe Is Not Null
  81293.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe + ''') '
  81294.     If @Koi_Gradovi Is Not NULL    
  81295.          Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  81296.                     OR ( KO.Sifra_Grad Is Null and Kup.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  81297.     Set @SSQL = @SSQL + ' Group By S.DokrID, S.Sifra_Oe, S.Sifra_Dok, S.Broj_Dok, S.Sifra_Art, U.ProcZatv '
  81298.     Insert Into #UplPoArt Exec(@SSQL)
  81299.  
  81300. /*            Round(Sum(Case When K.Drugo1 = 1 Then (UplPoArt * 0.4/100) Else 0 End), 4) Proc04,
  81301.             Round(Sum(Case When K.Drugo1 = 2 Then (UplPoArt * 0.52/100) Else 0 End), 4) Proc052,
  81302.             Round(Sum(Case When K.Drugo1 = 3 Then (UplPoArt * 0.65/100) Else 0 End), 4) Proc065,
  81303.             Round(Sum(Case When K.Drugo1 = 4 Then (UplPoArt * 0.80/100) Else 0 End), 4) Proc080
  81304. */
  81305.     If @SoStavki = 'D'
  81306.         Set @SSQL = ' Select U.Sifra_Oe, U.Sifra_Dok, U.Broj_Dok, U.Sifra_Art, K.ImeArt, '
  81307.     Else
  81308.         Set @SSQL = ' Select Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok, Null Sifra_Art, Null ImeArt, '
  81309.     Set @SSQL = @SSQL + ' D.Sifra_Pat, P.ImePat, 
  81310.             Sum(U.IznosPoArt) IznosPoArt,
  81311.             Sum(U.UplPoArt) IznosNaplataPoArt, 
  81312.             Round(Sum(UplPoArt * D3.Tezina/100), 4) Nagrada, 
  81313.             D3.Tezina ProcNagraduv, '
  81314.     If @EkstraBonus3 = 'D' And @EkstraBonusProc <> 0
  81315.         Set @SSQL = @SSQL + ' Round(Sum(Case When Kup.KDrugo3 = 1 Then 0 Else (UplPoArt * D3.Tezina/100 * ' + Cast(@EkstraBonusProc as varchar(6)) + '/100) End), 4)  EkstraNagrada '
  81316.     Else 
  81317.         Set @SSQL = @SSQL + ' 0 as EkstraNagrada '
  81318.     Set @SSQL = @SSQL + ', kup.kdrugo3 From #UplPoArt U
  81319.         Inner Join Dokr D On D.DokrID = U.DokrID
  81320.         Inner Join Katart K On K.Sifra_Art = U.Sifra_Art
  81321.         Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3
  81322.         Left Outer Join Patnici P On P.Sifra_Pat = D.Sifra_Pat
  81323.         Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup 
  81324.         Group By D.Sifra_Pat, P.ImePat, D3.Tezina, kup.kdrugo3 '
  81325.     If @SoStavki = 'D'
  81326.         Set @SSQL = @SSQL + ' , U.Sifra_Oe, U.Sifra_Dok, U.Broj_Dok, U.Sifra_Art, K.ImeArt '
  81327. print @SSQL
  81328.     Exec(@SSQL)
  81329. Go
  81330. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nagraduvanje_komercijalisti]'))
  81331. drop procedure [dbo].[sp_nagraduvanje_komercijalisti]
  81332.  
  81333. Go
  81334.  
  81335.  
  81336.  
  81337.  
  81338.  
  81339. CREATE                  PROCEDURE sp_Nagraduvanje_Komercijalisti
  81340.     @Sifra_Pat    int = Null,
  81341.     @Sif_GrOrg    char(6) = Null,
  81342.     @Mesec    smallint = Null,
  81343.     @Godina    smallint = Null,
  81344.     @SoStavki    char(1) = 'N'
  81345. AS
  81346.     Declare @SSQL as varchar(8000)
  81347.     Create Table #Komerc
  81348.     (
  81349.      Sifra_Pat    int,
  81350.      ImePat        varchar(40),
  81351.      PlanRC        decimal(18,4),
  81352.      OstvRC    decimal(18,4),
  81353.      NaplRC    decimal(18,4),
  81354.      TenderiRC    decimal(18,4),
  81355.      PobarNad60d    decimal(18,4),
  81356.      GodRabat    decimal(18,4),
  81357.      NeisplGodRab    decimal(18,4),        --vo ova pole od 02.06.09 se staveni povrat.16
  81358.      FinOdobr    decimal(18,4),
  81359.      FinOdobrDr    decimal(18,4),
  81360.      FinOdobr10    decimal(18,4),
  81361.      FinOdobr3    decimal(18,4),
  81362.      Trosoci        decimal(18,4),
  81363.      GodOdmor    decimal(18,4),
  81364.      CistaRC    decimal(18,4),
  81365.      ProcNagrad    decimal(6,2),
  81366.      OsnovnaPlata decimal(18,2)
  81367.     )
  81368.     Set @SSQL = ' Select Sifra_Pat, ImePat, ProcNagr, OsnovnaPlata, 0, 0 From Patnici Where 1=1 '
  81369.     If @Sifra_Pat Is Not Null 
  81370.         Set @SSQL=@SSQL + ' And Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81371.     IF @Sif_GrOrg IS NOT NULL
  81372.         Set @SSQL=@SSQL + ' And Sifra_Pat IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=''' + @Sif_GrOrg + ''') '
  81373.     Insert Into #Komerc(Sifra_Pat, ImePat, ProcNagrad, OsnovnaPlata, GodRabat, FinOdobrDr) Exec(@SSQL)
  81374.     Create Table #Tab
  81375.     (
  81376.      Sifra_Pat    int,
  81377.      Iznos        decimal(18,4)
  81378.     )
  81379.     If @SoStavki = 'D'
  81380.         Create Table #Stavki
  81381.         (
  81382.          Stavka        smallint,
  81383.          Sifra_Pat    int,
  81384.          Sifra_Oe    smallint,
  81385.          Sifra_Dok    smallint,
  81386.          Broj_Dok    int,
  81387.          Datum_Dok    smalldatetime,
  81388.          Iznos        decimal(18,4),
  81389.          Sifra_Kup    char(6)
  81390.         )
  81391.     --------------------------------------------- 2. Planirana razlika vo cena -------------------------------------------------------
  81392.     If @SoStavki = 'N'
  81393.     Begin
  81394.         Set @SSQL = ' Select Sifra_OE, Plan_Kol From PlanMes
  81395.                  Where ImePlan=''RAZLC'' AND Godina= ' + Cast(@Godina as varchar(4)) + '
  81396.                     And Mesec= ' + Cast(@Mesec as varchar(2)) + ' '
  81397.         If @Sifra_Pat Is Not Null
  81398.             Set @SSQL=@SSQL + ' And Sifra_OE = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81399.         Insert Into #Tab Exec(@SSQL)
  81400.         Update #Komerc 
  81401.         Set PlanRC = #Tab.Iznos
  81402.         From #Tab 
  81403.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81404.         Delete From #Tab
  81405.     End
  81406.     Else 
  81407.     Begin
  81408.         Set @SSQL = ' Select 2 as Stavka, Null, Null, Null, Null, P.Sifra_Pat, P.PlanRC 
  81409.                 From NekojPlan P
  81410.                 Where P.Godina= ' + Cast(@Godina as varchar(4)) + '
  81411.                     And P.Mesec= ' + Cast(@Mesec as varchar(2)) + ' '
  81412.         If @Sifra_Pat Is Not Null
  81413.             Set @SSQL=@SSQL + ' And P.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81414.     --    Insert Into #Stavki Exec(@SSQL)
  81415.     End
  81416.     ---------------------------------------------------------------------------------------------------------------------------------------------
  81417.     --------------------------------------------- 3. Ostvarena razlika vo cena -------------------------------------------------
  81418.     If @SoStavki = 'N'
  81419.     Begin
  81420.         Set @SSQL = ' Select D.Sifra_Pat,
  81421.                 Round(Sum((dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)-S.NabCena)*S.Kolic), 2) Iznos 
  81422.                 From Dokr D
  81423.                 Inner Join Stavr S On S.DokrID=D.DokrID
  81424.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81425.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81426.                     And D.VlIzl=''I'' AND D.Sifra_Za=1 '
  81427.                     --And D.Sifra_Dok In (1, 71, 73, 81, 82, 83, 84, 19) '
  81428.         If @Sifra_Pat Is Not Null
  81429.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81430.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81431.         Insert Into #Tab Exec(@SSQL)
  81432.         Update #Komerc 
  81433.         Set OstvRC = #Tab.Iznos
  81434.         From #Tab 
  81435.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81436.         Delete From #Tab
  81437.     End
  81438. /*    Else 
  81439.     Begin
  81440.         Set @SSQL = ' Select 3 as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81441.                 Round(Sum((dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)-S.NabCena)*S.Kolic), 2) Iznos, D.Sifra_Kup
  81442.                 From Dokr D
  81443.                 Inner Join Stavr S On S.DokrID=D.DokrID
  81444.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81445.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81446.                        And D.Sifra_Dok In (1, 71, 73, 81, 82, 83, 84) '
  81447.         If @Sifra_Pat Is Not Null
  81448.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81449.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81450.         Insert Into #Stavki Exec(@SSQL)
  81451.     End          */
  81452.     ---------------------------------------------------------------------------------------------------------------------------------------------
  81453.     --------------------------------------------- 3. Naplatena razlika vo cena -------------------------------------------------   SEGA PO NOVO od 10.10.06   
  81454.     CREATE TABLE #TmpRazlC
  81455.     (Sifra_Pat    smallint, 
  81456.     DokrID        int,
  81457.     Sifra_Oe    smallint, 
  81458.     Sifra_Dok    smallint, 
  81459.     Broj_Dok    int, 
  81460.     Datum_Dok    smalldatetime,
  81461.     Toc200        decimal(18,2),
  81462.     RazlCena    decimal(18,2), 
  81463.     Sifra_Kup    char(6),
  81464.     Izn_Naplat    decimal(18,2))
  81465.     Set @SSQL = ' Select D.Sifra_Pat, D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Toc200,
  81466.             Round(Sum((dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)-S.NabCena)*S.Kolic), 2) Iznos, D.Sifra_Kup,0 
  81467.             From Dokr D
  81468.             Inner Join Stavr S On S.DokrID=D.DokrID
  81469.             Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81470.                 And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81471.                 And D.Sifra_Dok In (1, 71, 73, 81, 82, 83, 84, 19) '
  81472.     If @Sifra_Pat Is Not Null
  81473.         Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81474.     Set @SSQL = @SSQL + ' Group By D.Sifra_Pat, D.DokrID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Toc200, D.Sifra_Kup '
  81475.     INSERT INTO #TmpRazlC EXEC(@SSQL)
  81476.     UPDATE #TmpRazlC SET Izn_Naplat = Toc200 WHERE Sifra_Dok IN (71,73,82,74) --gotov.ne odat vo fin
  81477.     UPDATE #TmpRazlC SET Izn_Naplat = F.Plateno_Dolzi FROM AnFinDok F WHERE #TmpRazlC.Sifra_OE=F.Sifra_OE AND #TmpRazlC.Sifra_Dok=F.Sifra_Dok AND #TmpRazlC.Broj_Dok=F.Broj_Dok
  81478.     UPDATE #TmpRazlC SET Izn_Naplat = F.Plateno_Dolzi * #TmpRazlC.Toc200/F.Dolzi FROM AnFinDok F, DokrZb Z, DokrZbSta ZS WHERE ZS.DokrID=#TmpRazlC.DokrID AND ZS.DokrZbID=Z.DokrZbID
  81479.     AND Z.Sifra_OE=F.Sifra_OE AND Z.Sifra_Dok=F.Sifra_Dok AND Z.Broj_Dok=F.Broj_Dok AND F.Dolzi<>0
  81480.     If @SoStavki = 'N'
  81481.     Begin
  81482.         Insert Into #Tab SELECT Sifra_Pat, SUM(RazlCena * Izn_Naplat / Toc200) FROM #TmpRazlC WHERE Toc200<>0 GROUP BY Sifra_Pat
  81483.         Update #Komerc 
  81484.         Set NaplRC = #Tab.Iznos
  81485.         From #Tab 
  81486.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81487.         Delete From #Tab
  81488.     End
  81489.     Else 
  81490.     Begin
  81491.         Insert Into #Stavki  Select 3 as Stavka, Sifra_Pat, Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, RazlCena * Izn_Naplat / Toc200, Sifra_Kup From #TmpRazlC WHERE Toc200<>0
  81492.     End
  81493.     ---------------------------------------------------------------------------------------------------------------------------------------------
  81494.     -- 4. Razlika vo cena - Tenderi
  81495.     --------------------------------------------- 5. Nenaplateni Pobaruvanja nad 60 dena -----------------------------------------------------
  81496. /*    If @SoStavki = 'N'
  81497.     Begin
  81498.         Set @SSQL = ' Select D.Sifra_Pat, Sum(D.Dolzi-D.Plateno_Dolzi) Iznos From AnFinDok D
  81499.                 Where DateAdd(day, D.Rok, D.Datum_Dok) < dbo.fn_VratiDatumOdDo( ' + Cast(@Godina as varchar(4)) + ',' + Cast(@Mesec as varchar(2)) + ',31)
  81500.                     And Datum_Dok > dbo.fn_VratiDatumOdDo( ' + Cast((@Godina-1) as varchar(4)) + ',' + Cast(@Mesec as varchar(2)) + ',31)
  81501.                     And D.Sifra_Za = ''1''
  81502.                     And (D.Dolzi - D.Plateno_Dolzi) > 0 And D.Dolzi > 0 '
  81503.         If @Sifra_Pat Is Not Null
  81504.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81505.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81506.         Insert Into #Tab Exec(@SSQL)
  81507.         Update #Komerc 
  81508.         Set PobarNad60d = #Tab.Iznos
  81509.         From #Tab 
  81510.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81511.         Delete From #Tab
  81512.     End
  81513.     Else 
  81514.     Begin
  81515.         Set @SSQL = ' Select 5 as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81516.                 Sum(D.Dolzi-D.Plateno_Dolzi) Iznos, D.Sifra_Kup 
  81517.                 From AnFinDok D
  81518.                 Where DateAdd(day, D.Rok, D.Datum_Dok) < dbo.fn_VratiDatumOdDo( ' + Cast(@Godina as varchar(4)) + ',' + Cast(@Mesec as varchar(2)) + ',31)
  81519.                     And Datum_Dok > dbo.fn_VratiDatumOdDo( ' + Cast((@Godina-1) as varchar(4)) + ',' + Cast(@Mesec as varchar(2)) + ',31)
  81520.                     And D.Sifra_Za = ''1''
  81521.                     And (D.Dolzi - D.Plateno_Dolzi) > 0  And D.Dolzi > 0 '
  81522.         If @Sifra_Pat Is Not Null
  81523.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81524.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81525.         Insert Into #Stavki Exec(@SSQL)
  81526.     End        */
  81527.     Declare @KrDat as smalldatetime
  81528.     Declare @DatDoUpl as smalldatetime
  81529.     --SET @KrDat = DateAdd(day, -90, dbo.fn_VratiDatumOd(@Godina, @Mesec))        trgnato 10.10.06 - ke se gleda nanazad 3 meseci
  81530.     SET @KrDat = dbo.fn_VratiDatumOdDo(@Godina, @Mesec,31)
  81531.     SET @DatDoUpl =  GetDate()                             --dbo.fn_VratiDatumOdDo(@Godina, @Mesec,31)
  81532.     CREATE TABLE #NeplFak
  81533.     (AnID    int,
  81534.     Sifra_OE smallint,
  81535.     Sifra_Dok smallint,
  81536.     Broj_Dok int,
  81537.     Sifra_Pat int,
  81538.     Datum_Dok smalldatetime,
  81539.     Iznos decimal(18,4),
  81540.     Plateno decimal(18,4),
  81541.     Sifra_Kup char(6))
  81542.     CREATE TABLE #Plak
  81543.     (AnID    int,
  81544.      Iznos    decimal(18,4))
  81545.     SET @SSQL = 'SELECT AnID, Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Pat, Datum_Dok, Dolzi, 0, Sifra_Kup
  81546.         FROM AnFinDok WHERE Dolzi>0 AND Sifra_Pat IN (Select Sifra_Pat FROM #Komerc) AND
  81547.         Datum_Dok<='''+cast(@KrDat as varchar(35))+''' AND Datum_Dok>='''+Cast(DateAdd(day, -365, @KrDat) as varchar(35))+
  81548.         ''' AND Datum_Dok>=''2006-01-01'' '
  81549.     If @Sifra_Pat Is Not Null
  81550.         Set @SSQL=@SSQL + ' And Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81551.     INSERT INTO #NeplFak EXEC(@SSQL)
  81552.     INSERT INTO #Plak SELECT Z.AnID1, Sum(Abs(Z.Iznos)) FROM AnZatv Z
  81553.     INNER JOIN #NeplFak F ON F.AnID=Z.AnID1
  81554.     INNER JOIN AnFinDok U ON U.AnID=Z.AnID2
  81555.     WHERE U.Datum_Dok<=@DatDoUpl GROUP BY Z.AnID1
  81556.     UPDATE #NeplFak SET Plateno = P.Iznos FROM #Plak P WHERE #NeplFak.AnID=P.AnID
  81557.     DELETE FROM #Plak    
  81558.     INSERT INTO #Plak SELECT Z.AnID2, Sum(Abs(Z.Iznos)) FROM AnZatv Z
  81559.     INNER JOIN #NeplFak F ON F.AnID=Z.AnID2
  81560.     INNER JOIN AnFinDok U ON U.AnID=Z.AnID1
  81561.     WHERE U.Datum_Dok<=@DatDoUpl GROUP BY Z.AnID2
  81562.     UPDATE #NeplFak SET Plateno = Plateno+P.Iznos FROM #Plak P WHERE #NeplFak.AnID=P.AnID
  81563.     DELETE FROM #Plak    
  81564.     If @SoStavki = 'N'
  81565.     Begin
  81566.         INSERT INTO #Tab SELECT Sifra_Pat, Sum(Iznos-Plateno) FROM #NeplFak GROUP BY Sifra_Pat
  81567.         Update #Komerc Set PobarNad60d = #Tab.Iznos
  81568.         From #Tab Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81569.         Delete From #Tab
  81570.     End
  81571.     Else
  81572.     Begin
  81573.         INSERT INTO #Stavki    (Stavka,Sifra_Pat,Sifra_Oe,Sifra_Dok,Broj_Dok,Datum_Dok,Iznos,Sifra_Kup)
  81574.         SELECT 5,Sifra_Pat,Sifra_Oe,Sifra_Dok,Broj_Dok,Datum_Dok,Iznos-Plateno,Sifra_Kup 
  81575.         FROM #NeplFak WHERE Iznos-Plateno>0
  81576.     End    
  81577.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  81578.     -- 6. Godisen rabat
  81579.     If @SoStavki = 'N'
  81580.     Begin
  81581.         Set @SSQL = ' Select D.Sifra_Pat, Sum(Round(D.Toc200 * K.God_Rabat/100, 2)) Iznos 
  81582.                 From Dokr D
  81583.                 Inner Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  81584.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81585.                 And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + '
  81586.                 AND K.God_Rabat IS NOT NULL AND K.God_Rabat>0 '
  81587.         If @Sifra_Pat Is Not Null
  81588.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81589.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81590.         Insert Into #Tab Exec(@SSQL)
  81591.         Update #Komerc 
  81592.         Set GodRabat = #Tab.Iznos
  81593.         From #Tab 
  81594.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81595.         Delete From #Tab
  81596.         Set @SSQL = ' Select D.Sifra_Pat, 
  81597.                 Sum(Round(dbo.fn_VratiCena(S.DokCena,S.Posn,S.DanDokCena,''D'')*(1-S.Uces/100)*(1-D.Kasa/100)*S.Kolic * K.Spec_Rabat/100, 2))
  81598.                 From Dokr D
  81599.                 Inner Join Stavr S ON S.DokrID=D.DokrID
  81600.                 Inner Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  81601.                 Inner Join KatArt A ON S.Sifra_Art=A.Sifra_Art
  81602.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81603.                 And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + '
  81604.                 AND K.Spec_Rabat IS NOT NULL AND K.Spec_Rabat>0 AND A.Drugo1=1 '
  81605.         If @Sifra_Pat Is Not Null
  81606.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81607.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81608.         Insert Into #Tab Exec(@SSQL)
  81609.         Update #Komerc 
  81610.         Set GodRabat = GodRabat + #Tab.Iznos
  81611.         From #Tab 
  81612.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81613.         Delete From #Tab
  81614.     End
  81615.     Else 
  81616.     Begin
  81617.         Set @SSQL = 'Select 6 as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81618.                 Round(D.Toc200 * K.God_Rabat/100, 2) Iznos, D.Sifra_Kup
  81619.                 From Dokr D
  81620.                 Inner Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  81621.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81622.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81623.                        AND K.God_Rabat IS NOT NULL AND K.God_Rabat>0 '
  81624.         If @Sifra_Pat Is Not Null
  81625.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81626.         Insert Into #Stavki Exec(@SSQL)
  81627.         Set @SSQL = ' Select 6 as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81628.                 Sum(Round(dbo.fn_VratiCena(S.DokCena,S.Posn,S.DanDokCena,''D'')*(1-S.Uces/100)*(1-D.Kasa/100)*S.Kolic * K.Spec_Rabat/100, 2)), D.Sifra_Kup  
  81629.                 From Dokr D
  81630.                 Inner Join Stavr S ON S.DokrID=D.DokrID
  81631.                 Inner Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  81632.                 Inner Join KatArt A ON S.Sifra_Art=A.Sifra_Art
  81633.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81634.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81635.                        AND K.Spec_Rabat IS NOT NULL AND K.Spec_Rabat>0 AND A.Drugo1=1 '
  81636.         If @Sifra_Pat Is Not Null
  81637.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81638.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81639.         Insert Into #Stavki Exec(@SSQL)
  81640.     End
  81641.     -- 7. Neisplaten godisen rabat
  81642.     --------------------------------------------- 8. Finansiski odobrenija za navremeno plakanje --------------------------------------------------
  81643.     If @SoStavki = 'N'
  81644.     Begin
  81645.         Set @SSQL = ' Select F.Sifra_Pat,
  81646.                 Sum( (S.Iznos_Fra * S.Proc_Odobr /100)/ (1+ S.POsn/100) ) Iznos 
  81647.                 From StaOdobr S
  81648.                 Inner Join AnFinDok D On D.AnID=S.AnID_Odob
  81649.                 Left Outer Join AnFinDok F On F.AnID=S.AnID_Fak
  81650.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81651.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81652.                     And D.Sifra_Za = ''1''
  81653.                     And D.Dolzi < 0 '           --And D.Sifra_Dok = 311 
  81654.         If @Sifra_Pat Is Not Null
  81655.             Set @SSQL=@SSQL + ' And F.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81656.         Set @SSQL = @SSQL + ' Group By F.Sifra_Pat '
  81657.         Insert Into #Tab Exec(@SSQL)
  81658.         Update #Komerc 
  81659.         Set FinOdobr = #Tab.Iznos
  81660.         From #Tab 
  81661.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81662.         Delete From #Tab
  81663.     End
  81664.     Else 
  81665.     Begin
  81666.         Set @SSQL = ' Select 8 as Stavka, F.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81667.                 Sum( (S.Iznos_Fra * S.Proc_Odobr /100)/ (1+ S.POsn/100) ) Iznos, D.Sifra_Kup 
  81668.                 From StaOdobr S
  81669.                 Inner Join AnFinDok D On D.AnID=S.AnID_Odob
  81670.                 Left Outer Join AnFinDok F On F.AnID=S.AnID_Fak
  81671.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81672.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81673.                     And D.Sifra_Za = ''1'' 
  81674.                     And D.Dolzi < 0 '   --                    And D.Sifra_Dok = 311 
  81675.         If @Sifra_Pat Is Not Null
  81676.             Set @SSQL=@SSQL + ' And F.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81677.         Set @SSQL = @SSQL + ' Group By  F.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81678.         Insert Into #Stavki Exec(@SSQL)
  81679.     End
  81680.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  81681.     ----------------------------------------------------- 9. Drugi Finansiski odobrenija --------------------------------------------------------------------------
  81682.     If @SoStavki = 'N'
  81683.     Begin
  81684.         Set @SSQL = ' Select D.Sifra_OE, 
  81685.                 Sum(-1* (D.Dolzi - D.Danok1 - D.Danok2)) Iznos From AnFinDok D
  81686.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81687.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81688.                     And D.Sifra_Dok > 800 And D.Sifra_Za = ''1'' And D.Dolzi < 0 
  81689.                     And D.Sifra_OE IN (Select Sifra_Pat FROM #Komerc)'
  81690.         If @Sifra_Pat Is Not Null
  81691.             Set @SSQL=@SSQL + ' And D.Sifra_OE = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81692.         Set @SSQL = @SSQL + ' Group By D.Sifra_OE '
  81693.         Insert Into #Tab Exec(@SSQL)
  81694.         Update #Komerc     Set FinOdobrDr = FinOdobrDr+#Tab.Iznos
  81695.         From #Tab Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81696.         Delete From #Tab
  81697.         /*Set @SSQL = 'Select D.Sifra_Pat, Sum(-1*(D.Toc200 - D.Danok1 - D.Danok2)) Iznos 
  81698.                 From Dokr D
  81699.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81700.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81701.                        And D.Sifra_Dok = 3 And D.Sifra_Pat IN (Select Sifra_Pat FROM #Komerc) '
  81702.         If @Sifra_Pat Is Not Null
  81703.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81704.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81705.         Insert Into #Tab Exec(@SSQL)
  81706.         Update #Komerc     Set FinOdobrDr = FinOdobrDr+#Tab.Iznos
  81707.         From #Tab Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81708.         Delete From #Tab
  81709.         */
  81710.     End
  81711.     Else 
  81712.     Begin
  81713.         Set @SSQL = ' Select 9 as Stavka, D.Sifra_OE Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81714.                 Sum(-1*(D.Dolzi - D.Danok1 - D.Danok2)) Iznos, D.Sifra_Kup
  81715.                 From AnFinDok D
  81716.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81717.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81718.                     And D.Sifra_Dok > 800 And D.Sifra_Za = ''1'' And D.Dolzi < 0 
  81719.                     And D.Sifra_OE IN (Select Sifra_Pat FROM #Komerc)'
  81720.         If @Sifra_Pat Is Not Null
  81721.             Set @SSQL=@SSQL + ' And D.Sifra_OE = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81722.         Set @SSQL = @SSQL + ' Group By D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81723.         /*Set @SSQL = @SSQL + ' Union All
  81724.                 Select 9 as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81725.                 Sum(-1*(D.Toc200 - D.Danok1 - D.Danok2)) Iznos, D.Sifra_Kup 
  81726.                 From Dokr D
  81727.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81728.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81729.                        And D.Sifra_Dok= 3 And D.Sifra_Pat IN (Select Sifra_Pat FROM #Komerc) '
  81730.         If @Sifra_Pat Is Not Null
  81731.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81732.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81733.         */
  81734.         Insert Into #Stavki Exec(@SSQL)
  81735.     End
  81736.     --------------------------------------------------------------------------------------------------------------------------------------------------
  81737.     --------------------------------------------- 10. Finansiski odobrenija so 10%  -----------------------------------------------------
  81738.     If @SoStavki = 'N'
  81739.     Begin
  81740.         Set @SSQL = ' Select D.Sifra_Pat,
  81741.                 Sum(-1 * D.Toc200) Iznos 
  81742.                 From Dokr D
  81743.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81744.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81745.                     And D.Sifra_Dok In (6) '
  81746.         If @Sifra_Pat Is Not Null
  81747.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81748.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81749.         Insert Into #Tab Exec(@SSQL)
  81750.         Update #Komerc 
  81751.         Set FinOdobr10 = #Tab.Iznos
  81752.         From #Tab 
  81753.         Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81754.         Delete From #Tab
  81755.     End
  81756.     Else 
  81757.     Begin
  81758.         Set @SSQL = ' Select 10 as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81759.                 Sum(-1 * D.Toc200) Iznos, D.Sifra_Kup 
  81760.                 From Dokr D
  81761.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81762.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81763.                     And D.Sifra_Dok In (6) '
  81764.         If @Sifra_Pat Is Not Null
  81765.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81766.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81767.         Insert Into #Stavki Exec(@SSQL)
  81768.     End
  81769.     ----------------------------------------------------- 10.1. Storno --------------------------------------------------------------------------
  81770.     If @SoStavki = 'N'
  81771.     Begin
  81772.         Set @SSQL = 'Select D.Sifra_Pat, Sum(-1*(D.Toc200 - D.Danok1 - D.Danok2)) Iznos 
  81773.                 From Dokr D
  81774.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81775.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81776.                        And D.Sifra_Dok = 3 And D.Sifra_Pat IN (Select Sifra_Pat FROM #Komerc) '
  81777.         If @Sifra_Pat Is Not Null
  81778.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81779.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81780.         Insert Into #Tab Exec(@SSQL)
  81781.         Update #Komerc     Set FinOdobr3 = #Tab.Iznos
  81782.         From #Tab Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81783.         Delete From #Tab
  81784.     End
  81785.     Else 
  81786.     Begin
  81787.         Set @SSQL = '     Select ''11'' as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81788.                 Sum(-1*(D.Toc200 - D.Danok1 - D.Danok2)) Iznos, D.Sifra_Kup 
  81789.                 From Dokr D
  81790.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81791.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81792.                        And D.Sifra_Dok= 3 And D.Sifra_Pat IN (Select Sifra_Pat FROM #Komerc) '
  81793.         If @Sifra_Pat Is Not Null
  81794.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81795.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81796.         Insert Into #Stavki Exec(@SSQL)
  81797.     End
  81798.     ----------------------------------------------------- Povratnici tip dok.16 -----------------------------------------------------------------
  81799.     If @SoStavki = 'N'
  81800.     Begin
  81801.         Set @SSQL = 'Select D.Sifra_Pat, Sum(-1*(D.Toc200 - D.Danok1 - D.Danok2)) Iznos 
  81802.                 From Dokr D
  81803.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81804.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81805.                        And D.Sifra_Dok = 16 And D.Sifra_Pat IN (Select Sifra_Pat FROM #Komerc) '
  81806.         If @Sifra_Pat Is Not Null
  81807.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81808.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat '
  81809.         Insert Into #Tab Exec(@SSQL)
  81810.         Update #Komerc     Set NeisplGodRab = #Tab.Iznos
  81811.         From #Tab Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81812.         Delete From #Tab
  81813.     End
  81814.     Else 
  81815.     Begin
  81816.         Set @SSQL = '     Select ''7'' as Stavka, D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  81817.                 Sum(-1*(D.Toc200 - D.Danok1 - D.Danok2)) Iznos, D.Sifra_Kup 
  81818.                 From Dokr D
  81819.                 Where Year(D.Datum_Dok) = ' + Cast(@Godina as varchar(4)) + '
  81820.                     And Month(D.Datum_Dok) = ' + Cast(@Mesec as varchar(2)) + ' 
  81821.                        And D.Sifra_Dok= 16 And D.Sifra_Pat IN (Select Sifra_Pat FROM #Komerc) '
  81822.         If @Sifra_Pat Is Not Null
  81823.             Set @SSQL=@SSQL + ' And D.Sifra_Pat = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81824.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup '
  81825.         Insert Into #Stavki Exec(@SSQL)
  81826.     End  
  81827.     --------------------------------------------------------------------------------------------------------------------------------------------------
  81828.     --------------------------------------------- 12. Trosoci  -----------------------------------------------------
  81829.     If @SoStavki = 'N'
  81830.     Begin
  81831.         Set @SSQL = ' Select Sifra_OE, Sum(Dolzi) From GStav
  81832.                 Where Year(Datum_Nal) = ' + Cast(@Godina as varchar(4)) + '
  81833.                     And Month(Datum_Nal) = ' + Cast(@Mesec as varchar(2)) + ' 
  81834.                     And Sifra_OE IN (Select Sifra_Pat FROM #Komerc) AND Kto_Anal LIKE ''4%'' '
  81835.         If @Sifra_Pat Is Not Null
  81836.             Set @SSQL=@SSQL + ' And Sifra_OE = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81837.         Set @SSQL = @SSQL + ' Group By Sifra_OE '
  81838.         Insert Into #Tab Exec(@SSQL)
  81839.         Update #Komerc Set Trosoci = #Tab.Iznos
  81840.         From #Tab Where #Komerc.Sifra_Pat=#Tab.Sifra_Pat
  81841.         Delete From #Tab
  81842.     End
  81843.     Else 
  81844.     Begin
  81845.         Set @SSQL = ' Select 12 as Stavka, Sifra_OE, Sifra_Oe, Null, Null, Datum_Nal, Dolzi, Null
  81846.                 From GStav
  81847.                 Where Year(Datum_Nal) = ' + Cast(@Godina as varchar(4)) + '
  81848.                     And Month(Datum_Nal) = ' + Cast(@Mesec as varchar(2)) + ' 
  81849.                     And Sifra_OE IN (Select Sifra_Pat FROM #Komerc)  AND Kto_Anal LIKE ''4%'' '
  81850.         If @Sifra_Pat Is Not Null
  81851.             Set @SSQL=@SSQL + ' And Sifra_OE = ' + cast(@Sifra_Pat as varchar(6)) + ' '
  81852.         Insert Into #Stavki Exec(@SSQL)
  81853.     End
  81854.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  81855.     If @SoStavki = 'N'
  81856.         Select * from #Komerc ORDER BY Sifra_Pat
  81857.     Else 
  81858.         Select S.*, P.ImePat, K.ImeKup
  81859.         From #Stavki S
  81860.         Left Outer Join Patnici P On P.Sifra_Pat = S.Sifra_Pat
  81861.         Left Outer Join Komint K ON S.Sifra_Kup = K.Sifra_Kup ORDER BY S.Sifra_Pat, S.Stavka, S.Datum_Dok
  81862.  
  81863.  
  81864.  
  81865.  
  81866.  
  81867.  
  81868.  
  81869.  
  81870. Go
  81871. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_art_brz]'))
  81872. drop procedure [dbo].[sp_najdi_art_brz]
  81873.  
  81874. Go
  81875.  
  81876.  
  81877. CREATE    PROCEDURE sp_Najdi_Art_Brz
  81878.     @Sifra_Art         varchar(20),
  81879.     @Sifra_Art_Najden     varchar(20) = NULL OUTPUT,
  81880.     @Nom            varchar(50) = NULL OUTPUT,
  81881.     @ImeArt            varchar(40) = NULL OUTPUT,
  81882.         @EdMera         varchar(5)  = NULL OUTPUT
  81883. AS
  81884.  
  81885.     select @Sifra_Art_Najden = Sifra_Art, @Nom = Nom, 
  81886.         @ImeArt = ImeArt, @EdMera = EdMera
  81887.     from Katart
  81888.     where Sifra_Art = @Sifra_Art
  81889.  
  81890.  
  81891.  
  81892.  
  81893. Go
  81894. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_art_od_serbr]'))
  81895. drop procedure [dbo].[sp_najdi_art_od_serbr]
  81896.  
  81897. Go
  81898.  
  81899.  
  81900. create   PROCEDURE sp_Najdi_Art_Od_SerBr
  81901.     @SerBr        varchar(50),
  81902.     @Sifra_Art    varchar(20) = NULL OUTPUT,
  81903.     @ImeArt        varchar(50) = NULL OUTPUT,
  81904.     @BrZapisi    int = NULL OUTPUT
  81905. AS
  81906.     Set @BrZapisi = (Select Count(*) FROM SoMag L    WHERE LotBr = @SerBr)
  81907.     SELECT Top 1 @Sifra_Art = L.Sifra_Art, @ImeArt = K.ImeArt 
  81908.     FROM SoMag L
  81909.     Inner Join Katart K on L.Sifra_Art = K.Sifra_Art
  81910.     WHERE LotBr = @SerBr
  81911.     Order By L.Sifra_Art
  81912.  
  81913.  
  81914.  
  81915. Go
  81916. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_brojkasa_tip_org_datum]'))
  81917. drop procedure [dbo].[sp_najdi_brojkasa_tip_org_datum]
  81918.  
  81919. Go
  81920.  
  81921.  
  81922.  
  81923. CREATE PROCEDURE sp_Najdi_BrojKasa_Tip_Org_Datum
  81924.         @Sifra_Nal    smallint,
  81925.     @P_I        char(1), 
  81926.     @Sifra_Oe    smallint,
  81927.     @Datum_Nal    smalldatetime,
  81928.     @Broj_Dok        int Output
  81929. AS
  81930.     Select @Broj_Dok = Broj_Dok 
  81931.     From KasStav K 
  81932.     Inner Join Nalozi N
  81933.     on K.Sifra_Nal = N.Sifra_Nal And K.Broj_Nal = N.Broj_Nal
  81934.     Where K.Sifra_Nal = @Sifra_Nal And P_I = @P_I And N.Datum_Nal = @Datum_Nal
  81935.               And Sifra_Oe = @Sifra_Oe
  81936.     Return @@ERROR
  81937.  
  81938.  
  81939.  
  81940. Go
  81941. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_dok_za_art]'))
  81942. drop procedure [dbo].[sp_najdi_dok_za_art]
  81943.  
  81944. Go
  81945.  
  81946. CREATE   PROCEDURE sp_Najdi_Dok_Za_Art
  81947.  
  81948.     @KodObr        varchar(50),
  81949.     @KodOperator    varchar(50),
  81950.  
  81951.     @PodTip        varchar (20) = null,
  81952.  
  81953.     @Sifra_Art    varchaR(20),
  81954.  
  81955.     @Datum_Dok_Od    smalldatetime,
  81956.     @Datum_Dok_Do    smalldatetime,
  81957.  
  81958.     @Sifra_Oe    smallint = null OUTPUT,
  81959.     @Sifra_Dok    smallint = null OUTPUT,
  81960.     @Broj_Dok    int = null OUTPUT
  81961.  
  81962. AS
  81963.  
  81964.     select top 1 @Sifra_oe = S.Sifra_oe, 
  81965.              @SifrA_Dok = S.SifrA_DOk,
  81966.              @Broj_Dok = S.Broj_Dok
  81967.     from stavr S
  81968.     left outer join PomBrojDok P
  81969.         on s.Sifra_oe = P.Sifra_Oe and s.Sifra_DOk = P.Sifra_Dok and S.Broj_Dok = P.Broj_Dok
  81970.             and P.KodObr = @KodObr and P.KodOperator = @KodOperator 
  81971.     where S.Sifra_Art = @Sifra_Art 
  81972.        and S.Sifra_Dok in (6,83,84)
  81973.        and S.Datum_Dok >= @Datum_Dok_Od and S.Datum_Dok <= @Datum_Dok_Do
  81974.        and P.Sifra_oe is null    -- znacci onie koi gi NEMA
  81975.     order by S.Datum_Dok desc
  81976.  
  81977.  
  81978.  
  81979.  
  81980. Go
  81981. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_dokr_za_dokr]'))
  81982. drop procedure [dbo].[sp_najdi_dokr_za_dokr]
  81983.  
  81984. Go
  81985.  
  81986. CREATE PROCEDURE sp_Najdi_Dokr_Za_Dokr
  81987.  
  81988.     @DokrIdOrig    int,
  81989.     @DokrId        int = null Output,
  81990.     @Sifra_Oe    smallint = null Output,
  81991.     @Sifra_Dok    smallint = null Output,
  81992.     @Broj_Dok    int = null Output,
  81993.     @Realiziran    char(1) = null Output
  81994.  
  81995. AS
  81996.  
  81997.     -- DK   Rutinava e malku cudna, ama e napravena da e slicna so SP_Najdi_Dokr_Za_Nar
  81998.     -- inaku DokrIDOrig = DokrId realno sekogas
  81999.     Select top 1 @DokrID = N.DokrId, @Sifra_Oe = D.Sifra_Oe, @Sifra_Dok = D.Sifra_Dok, 
  82000.              @Broj_Dok = D.Broj_Dok, @Realiziran = N.Realiziran
  82001.     From NarRealDokDokr N
  82002.     inner join Dokr D
  82003.         on N.DokrId = D.DokrId
  82004.     Where DokrIdOrig = @DokrIdOrig
  82005.     Order By N.DokrID Desc
  82006.  
  82007.  
  82008.  
  82009.  
  82010. Go
  82011. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_dokr_za_nar]'))
  82012. drop procedure [dbo].[sp_najdi_dokr_za_nar]
  82013.  
  82014. Go
  82015.  
  82016. create   PROCEDURE sp_Najdi_Dokr_Za_Nar
  82017.  
  82018.     @NarId        int,
  82019.     @DokrId        int = null Output,
  82020.     @Sifra_Oe    smallint = null Output,
  82021.     @Sifra_Dok    smallint = null Output,
  82022.     @Broj_Dok    int = null Output,
  82023.     @Realiziran    char(1) = null Output
  82024.  
  82025. AS
  82026.  
  82027.     Select top 1 @DokrID = N.DokrId, @Sifra_Oe = D.Sifra_Oe, @Sifra_Dok = D.Sifra_Dok, 
  82028.              @Broj_Dok = D.Broj_Dok, @Realiziran = N.Realiziran
  82029.     From NarRealDok N
  82030.     inner join Dokr D
  82031.         on N.DokrId = D.DokrId
  82032.     Where NarId = @NarId
  82033.     Order By N.DokrID Desc
  82034.  
  82035.  
  82036. Go
  82037. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_ekvivart_podezen]'))
  82038. drop procedure [dbo].[sp_najdi_ekvivart_podezen]
  82039.  
  82040. Go
  82041.  
  82042.  
  82043. create  PROCEDURE sp_Najdi_EkvivArt_PoDezen
  82044.     @Sifra_Art_Osn    varchar(20),
  82045.     @Dezen        varchar(30),
  82046.     @Sifra_Art_Map    varchar(20) = NULL OUTPUT
  82047.  
  82048. AS
  82049.  
  82050.     Declare @OsnArt varchar (4)
  82051.  
  82052.     set @OsnArt = substring(@Sifra_Art_Osn, 1, 4)
  82053.  
  82054.     SELECT Top 1 @Sifra_Art_Map = Sifra_Art_Map
  82055.      FROM EkvivDezen 
  82056.     WHERE substring(Sifra_Art_Osn, 1, 4) = @OsnArt
  82057.           and Dezen = @Dezen
  82058.  
  82059.  
  82060.  
  82061.  
  82062. Go
  82063. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_faktura_za_art]'))
  82064. drop procedure [dbo].[sp_najdi_faktura_za_art]
  82065.  
  82066. Go
  82067.  
  82068.  
  82069. CREATE    PROCEDURE sp_Najdi_Faktura_Za_Art
  82070.     @Sifra_Art    varchar(20),
  82071.     @Sifra_Oe    smallint = null OUTPUT,
  82072.     @Sifra_Dok    smallint = null OUTPUT,
  82073.     @Broj_Dok    int = null OUTPUT
  82074.  
  82075. AS
  82076.  
  82077.     select top 1 @Sifra_Oe = SifrA_Oe,
  82078.              @Sifra_Dok = Sifra_DOk,
  82079.              @Broj_Dok = Broj_Dok    
  82080.     from Stavr S
  82081.     where S.Sifra_Art = @Sifra_Art
  82082.         and S.SifrA_Dok in (1, 18, 100)
  82083.  
  82084.  
  82085.  
  82086.  
  82087.  
  82088. Go
  82089. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_faktura_za_art_ser]'))
  82090. drop procedure [dbo].[sp_najdi_faktura_za_art_ser]
  82091.  
  82092. Go
  82093.  
  82094.  
  82095.  
  82096. CREATE     PROCEDURE [dbo].[sp_Najdi_Faktura_Za_Art_Ser]
  82097.     @Sifra_Art    varchar(20),
  82098.     @KontrSer    varchar(30),
  82099.     @Sifra_Oe    smallint = null OUTPUT,
  82100.     @Sifra_Dok    smallint = null OUTPUT,
  82101.     @Broj_Dok    int = null OUTPUT
  82102.  
  82103. AS
  82104.  
  82105.     select top 1 @Sifra_Oe = D.SifrA_Oe,
  82106.              @Sifra_Dok = D.Sifra_DOk,
  82107.              @Broj_Dok = D.Broj_Dok    
  82108.     from MagStavr MS
  82109.     inner join Dokr D
  82110.         on MS.DokrId = D.DokrId
  82111.     where MS.Sifra_Art = @Sifra_Art
  82112.         and MS.SpecOzn = @KontrSer
  82113.         and D.SifrA_Dok in (18, 100)
  82114.  
  82115.     if @Sifra_Oe is null
  82116.         select top 1 @Sifra_Oe = D.SifrA_Oe,
  82117.                      @Sifra_Dok = D.Sifra_DOk,
  82118.                      @Broj_Dok = D.Broj_Dok    
  82119.         from MagStavr MS
  82120.         inner join Dokr D
  82121.             on MS.DokrId = D.DokrId
  82122.         where MS.Sifra_Art = @Sifra_Art
  82123.                 and MS.SpecOzn = @KontrSer
  82124.                 and D.SifrA_Dok in (1, 110)
  82125.  
  82126.  
  82127.  
  82128.  
  82129. Go
  82130. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_faktura_za_art_ser_fra]'))
  82131. drop procedure [dbo].[sp_najdi_faktura_za_art_ser_fra]
  82132.  
  82133. Go
  82134.  
  82135. CREATE   PROCEDURE [dbo].[sp_Najdi_Faktura_Za_Art_Ser_Fra]
  82136.     @Sifra_Art    varchar(20),
  82137.     @KontrSer    varchar(30),
  82138.     @Sifra_Oe    smallint = null OUTPUT,
  82139.     @Sifra_Dok    smallint = null OUTPUT,
  82140.     @Broj_Dok    int = null OUTPUT
  82141.  
  82142. AS
  82143.  
  82144.     select top 1 @Sifra_Oe = D.SifrA_Oe,
  82145.              @Sifra_Dok = D.Sifra_DOk,
  82146.              @Broj_Dok = D.Broj_Dok    
  82147.     from MagStavr MS
  82148.     inner join Dokr D
  82149.         on MS.DokrId = D.DokrId
  82150.     where MS.Sifra_Art = @Sifra_Art
  82151.         and MS.SpecOzn = @KontrSer
  82152.         and D.SifrA_Dok in (1, 100, 110)
  82153.  
  82154.     if @Sifra_Oe is null
  82155.         select top 1 @Sifra_Oe = D.SifrA_Oe,
  82156.                      @Sifra_Dok = D.Sifra_DOk,
  82157.                      @Broj_Dok = D.Broj_Dok    
  82158.         from MagStavr MS
  82159.         inner join Dokr D
  82160.             on MS.DokrId = D.DokrId
  82161.         where MS.Sifra_Art = @Sifra_Art
  82162.                 and MS.SpecOzn = @KontrSer
  82163.                 and D.SifrA_Dok in (18)
  82164.  
  82165.  
  82166.  
  82167.  
  82168. Go
  82169. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_fra_za_odj]'))
  82170. drop procedure [dbo].[sp_najdi_fra_za_odj]
  82171.  
  82172. Go
  82173.  
  82174. create PROCEDUrE [dbo].[sp_Najdi_Fra_Za_Odj]
  82175.     @DokrId_Odj    int,
  82176.     @DokrId_Fra    int = NUll OUTPUT,
  82177.     @Sifra_Oe    smallint = NUll OUTPUT,
  82178.     @Sifra_Dok    smallint = NUll OUTPUT,
  82179.     @Broj_Dok    int = NUll OUTPUT
  82180.  
  82181. AS
  82182.  
  82183.     select @DokrId_Fra = DO.DokrId_Fra,
  82184.            @Sifra_Oe = D.Sifra_Oe, @Sifra_Dok = D.Sifra_Dok, @Broj_Dok = D.Broj_Dok
  82185.     From DokrOdj DO
  82186.     inner Join Dokr D
  82187.         on DO.DokrId_Fra = D.DokrId
  82188.     where DO.DokrId_Odj = @DokrId_Odj
  82189.  
  82190.  
  82191.  
  82192.  
  82193.  
  82194.  
  82195.  
  82196. Go
  82197. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_narid_art]'))
  82198. drop procedure [dbo].[sp_najdi_narid_art]
  82199.  
  82200. Go
  82201.  
  82202.  
  82203. CREATE  PROCEDURE sp_Najdi_NarID_Art
  82204.         @NarId        int,
  82205.     @Sifra_Art    varchar(20), 
  82206.     @Kolic        decimal(18,6) OUTPUT
  82207. AS
  82208.     Select @Kolic = Kolic 
  82209.     From StaNarac
  82210.     Where NarId=@NarID And Sifra_Art=@Sifra_Art
  82211.     Return @@ERROR
  82212.  
  82213.  
  82214.  
  82215. Go
  82216. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_narid_poreal]'))
  82217. drop procedure [dbo].[sp_najdi_narid_poreal]
  82218.  
  82219. Go
  82220.  
  82221.  
  82222. CREATE  PROCEDURE sp_Najdi_NarID_PoReal
  82223.         @DokrId        int,
  82224.     @Sifra_Art    varchar(20), 
  82225.     @Kolic        decimal(18,6),
  82226.     @NarID        int Output
  82227. AS
  82228.     Select @NarID = NarId 
  82229.     From StaNaracReal 
  82230.     Where DokrId=@DokrID And Sifra_Art=@Sifra_Art And Kolic=@Kolic
  82231.     Return @@ERROR
  82232.  
  82233.  
  82234.  
  82235. Go
  82236. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_oedokbr_podokrid]'))
  82237. drop procedure [dbo].[sp_najdi_oedokbr_podokrid]
  82238.  
  82239. Go
  82240.  
  82241.  
  82242. create  PROCEDURE sp_Najdi_OeDokBr_PoDokrID
  82243.     @DokrId        int,
  82244.     @DokrIdDrFirma  int OUTPUT,
  82245.     @Sifra_Oe    smallint OUTPUT,
  82246.     @Sifra_Dok    smallint OUTPUT,
  82247.     @Broj_Dok    int OUTPUT
  82248. AS
  82249.  
  82250.     select  @DokrIdDrFirma = DokrIdDrFirma, @Sifra_Oe = Sifra_Oe, @Sifra_Dok = Sifra_Dok,
  82251.         @Broj_Dok = Broj_Dok
  82252.     from Dokr
  82253.     where DokrId = @DokrId
  82254.  
  82255.  
  82256.  
  82257. Go
  82258. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdi_zadolz_za_odj]'))
  82259. drop procedure [dbo].[sp_najdi_zadolz_za_odj]
  82260.  
  82261. Go
  82262.  
  82263. create PROCEDUrE [dbo].[sp_Najdi_Zadolz_Za_Odj]
  82264.     @Identif_Br    varchar(20),
  82265.     @Iznos        decimal(18,6) = NUll OUTPUT,
  82266.     @Sifra_Kup    char(6) = NUll OUTPUT
  82267.  
  82268. AS
  82269.  
  82270.     select top 1 @Iznos = Dolzi,
  82271.                  @Sifra_Kup = Sifra_Kup
  82272.     from anFinDok
  82273.     where BrojDok = @Identif_Br
  82274.           and Sifra_Dok = 150 and Sifra_Oe = 1
  82275.           and Dolzi <> 0
  82276.  
  82277.  
  82278.  
  82279. Go
  82280. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiart_vopakuv]'))
  82281. drop procedure [dbo].[sp_najdiart_vopakuv]
  82282.  
  82283. Go
  82284.  
  82285. CREATE  PROCEDURE sp_NajdiArt_VoPakuv
  82286.     @KontrSer_Pak        varchar(30)
  82287. AS
  82288.     SELECT *
  82289.     From PakuvArt
  82290.     Where KontrSer_Pak = @KontrSer_Pak
  82291.  
  82292.  
  82293.  
  82294. Go
  82295. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiartikal]'))
  82296. drop procedure [dbo].[sp_najdiartikal]
  82297.  
  82298. Go
  82299.  
  82300.  
  82301. CREATE        PROCEDURE sp_NajdiArtikal
  82302.     @Nom    varchar(50) = NULL,
  82303.     @ImeArt    varchar(40) = NULL,
  82304.     @ImeArt2    varchar(40) = NULL,
  82305.     @Sifra_Drg    smallint = NULL,
  82306.     @Sifra_Gr    char(3) = NULL,
  82307.     @Sifra_Podg    varchar(10) = NULL,
  82308.     @KoiOE    varchar(200) = NULL
  82309. AS
  82310.     Declare @SSQL varchar(1000)
  82311.     SET @SSQL = 'SELECT A.Sifra_Art, A.ImeArt, P.Ime_Podg Podgrupa, 
  82312.     SUM(S.Vlez-S.Izlez) AS Zaliha, A.DogCena, B.Ime_2 Brend, BK.Nom Nom
  82313.     FROM KatArt A 
  82314.     LEFT OUTER JOIN Podgrupi P ON A.Sifra_Podg = P.Sifra_Podg 
  82315.         LEFT OUTER JOIN AbarKod BK ON A.Sifra_Art = BK.Sifra_Art 
  82316.     LEFT OUTER JOIN Drugo2 B ON BK.Drugo2 = B.Sifra_2
  82317.     LEFT OUTER JOIN SoArt S ON S.Sifra_Art = A.Sifra_Art '
  82318.     SET @SSQL = @SSQL + '  WHERE 1=1 '
  82319.     IF @Nom IS NOT NULL
  82320.         SET @SSQL = @SSQL + ' AND (BK.Nom LIKE ''%' + @Nom + '%'' OR A.Nom LIKE ''%' + @Nom + '%'') '
  82321.     IF @ImeArt IS NOT NULL
  82322.         SET @SSQL = @SSQL + ' AND A.ImeArt LIKE ''%' + @ImeArt + '%'' '
  82323.     IF @KoiOE IS NOT NULL
  82324.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN ('+ @KoiOE + ') '
  82325.     IF @ImeArt2 IS NOT  NULL
  82326.     Begin
  82327.         IF Substring(@ImeArt2,1,1) = '*'  OR Substring(@ImeArt2,1,1) = '%'
  82328.         Begin
  82329.             IF Substring(@ImeArt2,1,1) = '*' 
  82330.                 SET @ImeArt2 = '%' + Substring(@ImeArt2,2, Len(@ImeArt2)-1)
  82331.             SET @SSQL = @SSQL + ' AND (A.ImeArt2 LIKE ''' + @ImeArt2 + '%'' OR A.ImeArt2 LIKE ''' + @Nom + '%'') '
  82332.         End
  82333.         Else
  82334.             SET @SSQL = @SSQL + ' AND (A.ImeArt2 = ''' + @ImeArt2 + ''' OR A.ImeArt2 = ''' + @ImeArt2 + ''') '
  82335.     End
  82336. --        SET @SSQL = @SSQL + ' AND A.ImeArt2 LIKE ''%' + @ImeArt2 + '%'' '
  82337.     IF @Sifra_Drg IS NOT  NULL
  82338.         SET @SSQL = @SSQL + ' AND BK.Drugo2 = ' + Cast(@Sifra_Drg as varchar(9)) + ' '
  82339.     IF @Sifra_Gr IS NOT NULL
  82340.         SET @SSQL = @SSQL + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  82341.     IF @Sifra_Podg IS NOT NULL
  82342.         SET @SSQL = @SSQL +  ' AND A.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  82343.     SET @SSQL = @SSQL + ' GROUP BY A.Sifra_Art, A.ImeArt, P.Ime_Podg, A.DogCena, B.Ime_2, BK.Nom, A.Nom'
  82344.     EXEC(@SSQL)
  82345.  
  82346.  
  82347.  
  82348.  
  82349. Go
  82350. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiartikal_oem]'))
  82351. drop procedure [dbo].[sp_najdiartikal_oem]
  82352.  
  82353. Go
  82354.  
  82355. CREATE PROCEDURE [dbo].[sp_NajdiArtikal_OEM]
  82356.     @Nom    varchar(50) = NULL,
  82357.     @ImeArt    varchar(40) = NULL,
  82358.     @ImeArt2    varchar(40) = NULL,
  82359.     @Sifra_Drg    smallint = NULL,
  82360.     @Sifra_Gr    char(3) = NULL,
  82361.     @Sifra_Podg    varchar(10) = NULL,
  82362.     @KoiOE        varchar(200) = NULL,
  82363.     @OEMBroj    varchar(50) = NULL,
  82364.     @PrikZameni    char(1) = Null
  82365.  
  82366. AS
  82367.  
  82368.     Declare @SSQL_Usl varchar(2000)
  82369.  
  82370.     --SET @SSQL_Usl = ' (BK.Nom is null or BK.Drugo2 is not null) '
  82371.     SET @SSQL_Usl = ' 1 = 1 '
  82372.  
  82373.     if @OEMBroj is not null
  82374.         set @SSQL_Usl = @SSQL_Usl + ' and A.Sifra_Art in (select Sifra_Art from KatartOEM
  82375.                               where OemBroj = ''' + @OEMBroj + ''') '
  82376.  
  82377. --    IF @Nom IS NOT NULL
  82378. --        SET @SSQL_Usl = @SSQL_Usl + ' AND BK.Nom LIKE ''%' + @Nom + '%'' '
  82379.  
  82380.     IF @ImeArt IS NOT NULL
  82381.         SET @SSQL_Usl = @SSQL_Usl + ' AND A.ImeArt LIKE ''%' + @ImeArt + '%'' '
  82382.  
  82383.     IF @ImeArt2 IS NOT  NULL
  82384.     Begin
  82385.         set @ImeArt2 = ltrim(rtrim(@ImeArt2))
  82386.         -- Vaka bese do Fev 6, 2011  SET @ImeArt2 = '%' + Substring(@ImeArt2, 2, Len(@ImeArt2)-1) + '%'
  82387.         SET @ImeArt2 = '%' + @ImeArt2 + '%'
  82388.         SET @SSQL_Usl = @SSQL_Usl + ' AND A.Sifra_Art LIKE ''' + @ImeArt2 + ''' '
  82389.     End
  82390.  
  82391. --    IF @Sifra_Drg IS NOT  NULL
  82392. --        SET @SSQL_Usl = @SSQL_Usl + ' AND BK.Drugo2 = ' + Cast(@Sifra_Drg as varchar(9)) + ' '
  82393.     IF @Sifra_Gr IS NOT NULL
  82394.         SET @SSQL_Usl = @SSQL_Usl + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  82395.     IF @Sifra_Podg IS NOT NULL
  82396.         SET @SSQL_Usl = @SSQL_Usl +  ' AND A.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  82397.  
  82398.     Declare @SSQL varchar(2000)
  82399.  
  82400.     if @PrikZameni = 'D'
  82401.        begin
  82402.         Create Table #tArt
  82403.         (    Sifra_Art     Varchar(20)
  82404.             )
  82405.  
  82406.         Declare @SSQL_ARt varchar(2000)
  82407.         SET @SSQL_Art = ' SELECT distinct A.Sifra_Art
  82408.                   FROM KatArt A '
  82409. ----                       LEFT OUTER JOIN AbarKod BK ON A.Sifra_Art = BK.Sifra_Art '
  82410.         if @Sifra_Podg is not null
  82411.             set @SSQL_Art = @SSQL_Art + '  LEFT OUTER JOIN Podgrupi P ON A.Sifra_Podg = P.Sifra_Podg '
  82412.  
  82413.         set @SSQL_Art = @SSQL_Art + ' Where ' + @SSQL_Usl
  82414.  
  82415.         -- Vo #tArt se site artikli koi go zadovoluvaat ORIGINALNIOT uslov od baranjeto
  82416.         -- Tie artikli imaat nekoi OEM broevi
  82417.         insert into #TArt
  82418.             exec (@SSQL_Art)
  82419.  
  82420.         -- Sega gi dodavame site artikli koi imaat OEM broevi zaednicki so artiklite veke vo #tArt
  82421.         insert into #tArt
  82422.             select KOem.Sifra_Art
  82423.             from KatartOem KOem
  82424.             where KOem.OemBroj in (select OemBroj 
  82425.                            from KatartOem KO
  82426.                            inner join #tArt TA
  82427.                             on TA.Sifra_Art = KO.Sifra_Art)
  82428.  
  82429.         -- Ke ima dosta duplikati, i zatoa vo posebna tabela ke gi iscistam
  82430.         Create Table #tArtEkv
  82431.         (    Sifra_Art     Varchar(20)
  82432.             )
  82433.  
  82434.         insert into #tArtEkv
  82435.             select distinct Sifra_Art
  82436.             from #tArt
  82437.         
  82438.         SET @SSQL = 'SELECT A.Sifra_Art, A.ImeArt, P.Ime_Podg Podgrupa, 
  82439.                     SUM(S.Vlez-S.Izlez) AS Zaliha, A.DogCena, '''' Brend, '''' Nom,
  82440.                     case when S.Sifra_Oe is null then 1 else S.Sifra_Oe end Sifra_Oe,
  82441.                     Koem.OEMBroj
  82442.             FROM KatArt A 
  82443.             inner join #tArtEkv TA
  82444.                 on A.Sifra_Art = TA.Sifra_Art
  82445.             LEFT OUTER JOIN Podgrupi P ON A.Sifra_Podg = P.Sifra_Podg '
  82446.         --                LEFT OUTER JOIN AbarKod BK ON A.Sifra_Art = BK.Sifra_Art 
  82447.               --  LEFT OUTER JOIN Drugo2 B ON BK.Drugo2 = B.Sifra_2
  82448.         set @SSQL = @SSQL + ' LEFT OUTER JOIN SoArt S ON S.Sifra_Art = A.Sifra_Art 
  82449.             LEFT Outer Join KatartOem KOem 
  82450.                 on KOem.Sifra_Art = A.Sifra_Art
  82451.             Where (1 = 1) '
  82452.        end
  82453.     else
  82454.        begin
  82455.         SET @SSQL = 'SELECT A.Sifra_Art, A.ImeArt, P.Ime_Podg Podgrupa, 
  82456.                     SUM(S.Vlez-S.Izlez) AS Zaliha, A.DogCena, '''' Brend, '''' Nom,
  82457.                     case when S.Sifra_Oe is null then 1 else S.Sifra_Oe end Sifra_Oe,
  82458.                     Koem.OEMBroj
  82459.             FROM KatArt A 
  82460.             LEFT OUTER JOIN Podgrupi P ON A.Sifra_Podg = P.Sifra_Podg '
  82461.                 -- LEFT OUTER JOIN AbarKod BK ON A.Sifra_Art = BK.Sifra_Art 
  82462.          -- '     LEFT OUTER JOIN Drugo2 B ON BK.Drugo2 = B.Sifra_2
  82463.         set @SSQL = @SSQL + ' LEFT OUTER JOIN SoArt S ON S.Sifra_Art = A.Sifra_Art 
  82464.             LEFT Outer Join KatartOem KOem 
  82465.                 on KOem.Sifra_Art = A.Sifra_Art
  82466.             Where '
  82467.  
  82468.         set @SSQL = @SSQL + @SSQL_Usl
  82469.        end
  82470.  
  82471.     IF @KoiOE IS NOT NULL
  82472.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN ('+ @KoiOE + ') '
  82473.  
  82474.     SET @SSQL = @SSQL + ' GROUP BY A.Sifra_Art, A.ImeArt, P.Ime_Podg, A.Sifra_Podg, A.DogCena,  
  82475.                        S.Sifra_Oe, KOem.OemBroj'
  82476.  
  82477.     EXEC(@SSQL)
  82478.  
  82479.  
  82480.  
  82481.  
  82482. Go
  82483. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiartikal_oem_kol]'))
  82484. drop procedure [dbo].[sp_najdiartikal_oem_kol]
  82485.  
  82486. Go
  82487.  
  82488. CREATE PROCEDURE [dbo].[sp_NajdiArtikal_OEM_Kol]
  82489.     @Nom    varchar(50) = NULL,
  82490.     @ImeArt    varchar(40) = NULL,
  82491.     @ImeArt2    varchar(40) = NULL,
  82492.     @Sifra_Drg    smallint = NULL,
  82493.     @Sifra_Gr    char(3) = NULL,
  82494.     @Sifra_Podg    varchar(10) = NULL,
  82495.     @KoiOE        varchar(200) = NULL,
  82496.     @OEMBroj    varchar(50) = NULL,
  82497.     @PrikZameni    char(1) = Null
  82498.  
  82499. AS
  82500.  
  82501.     Declare @SSQL_Usl varchar(2000)
  82502.  
  82503.     --SET @SSQL_Usl = ' (BK.Nom is null or BK.Drugo2 is not null) '
  82504.     SET @SSQL_Usl = ' (1 = 1) '
  82505.  
  82506.     if @OEMBroj is not null
  82507.         set @SSQL_Usl = @SSQL_Usl + ' and A.Sifra_Art in (select Sifra_Art from KatartOEM
  82508.                               where OemBroj = ''' + @OEMBroj + ''') '
  82509.  
  82510.     IF @Nom IS NOT NULL
  82511.         SET @SSQL_Usl = @SSQL_Usl + ' AND BK.Nom LIKE ''%' + @Nom + '%'' '
  82512.  
  82513.     IF @ImeArt IS NOT NULL
  82514.         SET @SSQL_Usl = @SSQL_Usl + ' AND A.ImeArt LIKE ''%' + @ImeArt + '%'' '
  82515.  
  82516.     IF @ImeArt2 IS NOT  NULL
  82517.     Begin
  82518.         set @ImeArt2 = ltrim(rtrim(@ImeArt2))
  82519.         SET @ImeArt2 = '%' + Substring(@ImeArt2, 2, Len(@ImeArt2)-1) + '%'
  82520.         SET @SSQL_Usl = @SSQL_Usl + ' AND A.Sifra_Art LIKE ''' + @ImeArt2 + ''' '
  82521.     End
  82522.  
  82523.     IF @Sifra_Drg IS NOT  NULL
  82524.         SET @SSQL_Usl = @SSQL_Usl + ' AND BK.Drugo2 = ' + Cast(@Sifra_Drg as varchar(9)) + ' '
  82525.     IF @Sifra_Gr IS NOT NULL
  82526.         SET @SSQL_Usl = @SSQL_Usl + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  82527.     IF @Sifra_Podg IS NOT NULL
  82528.         SET @SSQL_Usl = @SSQL_Usl +  ' AND A.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  82529.  
  82530.     Declare @SSQL varchar(2000)
  82531.  
  82532.     Create Table #tArt
  82533.     (    Sifra_Art     Varchar(20)
  82534.         )
  82535.  
  82536.     Declare @SSQL_ARt varchar(2000)
  82537.     SET @SSQL_Art = ' SELECT distinct A.Sifra_Art
  82538.               FROM KatArt A 
  82539.                       LEFT OUTER JOIN AbarKod BK ON A.Sifra_Art = BK.Sifra_Art '
  82540.     if @Sifra_Podg is not null
  82541.         set @SSQL_Art = @SSQL_Art + '  LEFT OUTER JOIN Podgrupi P ON A.Sifra_Podg = P.Sifra_Podg '
  82542.  
  82543.     set @SSQL_Art = @SSQL_Art + ' Where ' + @SSQL_Usl
  82544.  
  82545.     -- Vo #tArt se site artikli koi go zadovoluvaat ORIGINALNIOT uslov od baranjeto
  82546.     -- Tie artikli imaat nekoi OEM broevi
  82547.     insert into #TArt
  82548.         exec (@SSQL_Art)
  82549.  
  82550.     -- Ke ima dosta duplikati, i zatoa vo posebna tabela ke gi iscistam
  82551.     Create Table #tArtEkv
  82552.     (    Sifra_Art     Varchar(20)
  82553.         )
  82554.  
  82555.     -- Sega gi dodavame site artikli koi imaat OEM broevi zaednicki so artiklite veke vo #tArt
  82556.     if @PrikZameni = 'D'
  82557.         insert into #tArt
  82558.             select KOem.Sifra_Art
  82559.             from KatartOem KOem
  82560.             where KOem.OemBroj in (select OemBroj 
  82561.                            from KatartOem KO
  82562.                            inner join #tArt TA
  82563.                             on TA.Sifra_Art = KO.Sifra_Art)
  82564.  
  82565.  
  82566.     insert into #tArtEkv
  82567.         select distinct Sifra_Art
  82568.         from #tArt
  82569.         
  82570.     SET @SSQL = 'SELECT A.Sifra_Art, A.ImeArt, P.Ime_Podg Podgrupa, 
  82571.                 SUM(S.Vlez-S.Izlez) AS Zaliha, A.DogCena, B.Ime_2 Brend, BK.Nom Nom,
  82572.                 Koem.OEMBroj, KOemEkv.Sifra_Art Sifra_Art_Ekv, A.Sifra_Podg,
  82573.                 AEkv.Sifra_Podg Sifra_Podg_Ekv, PEkv.Ime_POdg Podgrupa_Ekv
  82574.              FROM KatArt A 
  82575.             inner join #tArtEkv TA
  82576.                 on A.Sifra_Art = TA.Sifra_Art
  82577.             LEFT OUTER JOIN Podgrupi P ON A.Sifra_Podg = P.Sifra_Podg 
  82578.                 LEFT OUTER JOIN AbarKod BK ON A.Sifra_Art = BK.Sifra_Art 
  82579.             LEFT OUTER JOIN Drugo2 B ON BK.Drugo2 = B.Sifra_2
  82580.             LEFT OUTER JOIN SoArt S ON S.Sifra_Art = A.Sifra_Art 
  82581.             LEFT Outer Join KatartOem KOem 
  82582.                 on KOem.Sifra_Art = A.Sifra_Art
  82583.             LEFT Outer Join KatartOem KOemEkv
  82584.                 on KOem.OemBroj = KOemEkv.OemBroj
  82585.             Left Outer Join Katart AEkv
  82586.                 on AEkv.Sifra_Art = KOemEkv.Sifra_Art
  82587.             LEFT OUTER JOIN Podgrupi PEkv 
  82588.                 ON AEkv.Sifra_Podg = PEkv.Sifra_Podg 
  82589.  
  82590.             Where (1 = 1) '
  82591.  
  82592.     IF @KoiOE IS NOT NULL
  82593.         SET @SSQL = @SSQL + ' AND S.Sifra_OE IN ('+ @KoiOE + ') '
  82594.  
  82595.     SET @SSQL = @SSQL + ' GROUP BY A.Sifra_Art, A.ImeArt, P.Ime_Podg, A.Sifra_Podg, A.DogCena, B.Ime_2, BK.Nom,
  82596.                        KOem.OemBroj, KoemEkv.Sifra_Art, PEkv.Ime_Podg, AEkv.Sifra_Podg
  82597.                   Having KOemEkv.Sifra_Art is null or KOemEkv.Sifra_Art <> A.Sifra_Art '
  82598.     
  82599.     EXEC(@SSQL)
  82600.  
  82601.  
  82602.  
  82603. Go
  82604. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiartikalavto]'))
  82605. drop procedure [dbo].[sp_najdiartikalavto]
  82606.  
  82607. Go
  82608.  
  82609.  
  82610.  
  82611.  
  82612. CREATE              PROCEDURE sp_NajdiArtikalAvto
  82613.     @BrSasija    varchar(30) = NULL,
  82614.     @BrMotor    varchar(30) = NULL,
  82615.     @DelOdSasija    varchar(30) = NULL,
  82616.     @DelOdMotor    varchar(30) = NULL,
  82617.     @Drugo1        smallint = NULL,
  82618.     @Drugo2        smallint = NULL,
  82619.     @Drugo3        smallint = NULL,
  82620.     @Drugo4        smallint = NULL,
  82621.         @Registracija     varchar(20)= null,
  82622.     @Sopstvenik     varchar(40) = null,
  82623.     @Adresa        varchar(40) = Null,
  82624.     @Telefon    varchar(40) = Null,
  82625.     @SamoVozilo    char(1) = Null
  82626.  
  82627. AS
  82628.  
  82629.     Declare @SSQL varchar(1000)
  82630.     SET @SSQL = 'SELECT A.Sifra_Art, A.ImeArt, V.Registracija, V.BrSasija, V.BrMotor
  82631.             FROM KatArt A '
  82632.  
  82633.     if @SamoVozilo = 'D'
  82634.         set @SSQL = @SSQL + ' INNER JOIN Vozila V ON A.Sifra_Art=V.Sifra_Art '
  82635.     else
  82636.         set @SSQL = @SSQL + ' LEFT OUTER JOIN Vozila V ON A.Sifra_Art=V.Sifra_Art '
  82637.  
  82638.     SET @SSQL = @SSQL + '  WHERE 1=1 '
  82639.     IF @Drugo1 IS NOT  NULL
  82640.         SET @SSQL = @SSQL + ' AND A.Drugo1 = ' + Cast(@Drugo1 as varchar(9)) + ' '
  82641.     IF @Drugo2 IS NOT  NULL
  82642.         SET @SSQL = @SSQL + ' AND A.Drugo2 = ' + Cast(@Drugo2 as varchar(9)) + ' '
  82643.     IF @Drugo3 IS NOT  NULL
  82644.         SET @SSQL = @SSQL + ' AND A.Drugo3 = ' + Cast(@Drugo3 as varchar(9)) + ' '
  82645.     IF @Drugo4 IS NOT  NULL
  82646.         SET @SSQL = @SSQL + ' AND A.Drugo4 = ' + Cast(@Drugo4 as varchar(9)) + ' '
  82647.     IF @BrSasija IS NOT  NULL
  82648.         SET @SSQL = @SSQL + ' AND V.BrSasija like ''%' + @BrSasija + '%'' '--= ''' + @BrSasija + ''' '
  82649.     IF @BrMotor IS NOT  NULL
  82650.         SET @SSQL = @SSQL + ' AND V.BrMotor like ''%' + @DelOdMOtor + '%'' '--= ''' + @BrMOtor + ''' '
  82651.     --IF @DelOdSasija IS NOT  NULL
  82652.         --SET @SSQL = @SSQL + ' AND V.BrSasija like ''%' + @DelODSasija + '%'' '
  82653.     --IF @DelOdMotor IS NOT  NULL
  82654.         --SET @SSQL = @SSQL + ' AND V.BrMotor like ''%' + @DelOdMOtor + '%'' '
  82655.     IF @Registracija IS NOT  NULL
  82656.         SET @SSQL = @SSQL + ' AND V.Registracija like ''%' + @Registracija + '%'' '
  82657.     IF @Sopstvenik IS NOT  NULL
  82658.         SET @SSQL = @SSQL + ' AND V.Sopstvenik like ''%' + @Sopstvenik + '%'' '
  82659.  
  82660.     IF @Adresa IS NOT  NULL
  82661.         SET @SSQL = @SSQL + ' AND V.Adresa like ''%' + @Adresa + '%'' '
  82662.     IF @Telefon IS NOT  NULL
  82663.         SET @SSQL = @SSQL + ' AND V.Telefon like ''%' + @Telefon + '%'' '
  82664.  
  82665.     SET @SSQL = @SSQL + ' ORDER BY A.Sifra_Art'
  82666.  
  82667.  
  82668.     EXEC(@SSQL)
  82669.  
  82670.  
  82671.  
  82672.  
  82673.  
  82674.  
  82675.  
  82676.  
  82677.  
  82678.  
  82679. Go
  82680. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiartodabarpak]'))
  82681. drop procedure [dbo].[sp_najdiartodabarpak]
  82682.  
  82683. Go
  82684. CREATE PROCEDURE sp_NajdiArtOdABarPak
  82685.     @Nom varchar(50) 
  82686. As
  82687.     SELECT * FROM ABarPak WHERE Nom=@Nom
  82688.  
  82689.  
  82690.  
  82691. Go
  82692. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiartodkatpodsifra]'))
  82693. drop procedure [dbo].[sp_najdiartodkatpodsifra]
  82694.  
  82695. Go
  82696. CREATE PROCEDURE sp_NajdiArtOdKatPodSifra
  82697.     @Nom    varchar(50),
  82698.     @Sifra_Art    varchar(20)=NULL OUTPUT,
  82699.     @Sifra_Boja    smallint=NULL OUTPUT,
  82700.     @Sifra_Velic smallint=NULL OUTPUT
  82701. AS
  82702.     SELECT @Sifra_Art=Sifra_Art, @Sifra_Boja=Sifra_Boja, @Sifra_Velic=Sifra_Velic 
  82703.     FROM KatPodSifra WHERE Sifra_PodSif_Art = @Nom
  82704.     
  82705.  
  82706.  
  82707. Go
  82708. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiartpokontrser]'))
  82709. drop procedure [dbo].[sp_najdiartpokontrser]
  82710.  
  82711. Go
  82712.  
  82713.  
  82714.  
  82715. CREATE    PROCEDURE sp_NajdiArtPoKontrSer
  82716.     @KontrSer    varchar(25),
  82717.     @Sifra_Oe    smallint = Null,
  82718.     @Sifra_Art    varchar(20) = Null Output,
  82719.     @ImeArt        varchar(40) = '' Output,
  82720.     @EdMera        char(5)='' Output,
  82721.     @Tezina_Bruto    decimal(18,0) = Null Output,
  82722.     @Tezina_Neto    decimal(18,0) = Null Output,
  82723.     @Nom        varchar(50) = Null Output
  82724. AS
  82725.     If @Sifra_Oe Is Not Null
  82726.         Select Top 1 @Sifra_Art=E.Sifra_Art, @ImeArt=K.ImeArt, @EdMera=K.EdMera, @Tezina_Bruto=Tezina_Bruto, @Tezina_Neto=Tezina_Neto, 
  82727.             @KontrSer=E.KontrSer, @Nom=K.Nom
  82728.         From EvProizvod E
  82729.         Inner Join Katart K On K.Sifra_Art = E.Sifra_Art
  82730.         Inner Join Dokr D On D.DokrID=E.DokrID
  82731.         Where  E.KontrSer=@KontrSer and D.Vlizl='V' 
  82732.         and D.SifrA_oe=@Sifra_Oe
  82733.     Else
  82734.         Select Top 1 @Sifra_Art=E.Sifra_Art, @ImeArt=K.ImeArt, @EdMera=K.EdMera, @Tezina_Bruto=Tezina_Bruto, @Tezina_Neto=Tezina_Neto, 
  82735.             @KontrSer=E.KontrSer, @Nom=K.Nom
  82736.         From EvProizvod E
  82737.         Inner Join Katart K On K.Sifra_Art = E.Sifra_Art
  82738.         Inner Join Dokr D On D.DokrID=E.DokrID
  82739.         Where  E.KontrSer=@KontrSer and D.Vlizl='V' 
  82740.         --and D.SifrA_oe=631
  82741.  
  82742.  
  82743.  
  82744.  
  82745.  
  82746.  
  82747.  
  82748. Go
  82749. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdibarkodpaket]'))
  82750. drop procedure [dbo].[sp_najdibarkodpaket]
  82751.  
  82752. Go
  82753.  
  82754. CREATE  PROCEDURE sp_NajdiBarKodPaket
  82755.     @Sifra_Art    varchar(20),
  82756.     @Nom        varchar(50)='' OUTPUT,
  82757.     @ZaKolic    decimal(9,2)=0 OUTPUT
  82758. AS
  82759. SELECT @ZaKolic=MAX(ZaKolic) FROM ABarKod WHERE Sifra_Art=@Sifra_Art
  82760. SELECT @Nom=Nom FROM ABarKod WHERE Sifra_Art=@Sifra_Art AND ZaKolic=@ZaKolic
  82761.  
  82762.  
  82763.  
  82764. Go
  82765. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdibrnaracpopat]'))
  82766. drop procedure [dbo].[sp_najdibrnaracpopat]
  82767.  
  82768. Go
  82769.  
  82770. CREATE PROCEDURE sp_NajdiBrNaracPoPat
  82771.     @Sifra_OE    Smallint,
  82772.     @Sifra_Nar    Smallint,
  82773.     @Sifra_Pat    Smallint,
  82774.     @Broj_Nar    int OUTPUT
  82775. AS
  82776.     SELECT @Broj_Nar = MAX(Broj_Nar) FROM Naracki
  82777.     WHERE Sifra_OE = @Sifra_OE AND Sifra_Nar = @Sifra_Nar AND Sifra_Pat = @Sifra_Pat
  82778.  
  82779.  
  82780.  
  82781. Go
  82782. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiddvstapkizadatum]'))
  82783. drop procedure [dbo].[sp_najdiddvstapkizadatum]
  82784.  
  82785. Go
  82786.  
  82787. create PROCEDURE sp_NajdiDDVStapkiZaDatum
  82788.     @Datum    smalldatetime
  82789.  AS
  82790.         SELECT Stapka1, Stapka2 FROM DDVStapki 
  82791.         WHERE @Datum >= datum_od and @Datum <= datum_do
  82792.  
  82793.  
  82794.  
  82795. Go
  82796. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdidokzaprendrbaza]'))
  82797. drop procedure [dbo].[sp_najdidokzaprendrbaza]
  82798.  
  82799. Go
  82800.  
  82801. CREATE     PROCEDURE sp_NajdiDokZaPrenDrBaza
  82802.     @ImeTabela    varchar(20),
  82803.     @Datum_Do    smalldatetime
  82804. As
  82805.     Declare @SSQL varchar(1000)
  82806. CREATE TABLE #TmpKomb
  82807. (Sifra_OE    smallint,
  82808. Sifra_Dok    smallint,
  82809. Sifra_Kup    char(6),
  82810. Sifra_Obj    smallint, 
  82811. Moze        char(1))
  82812.     INSERT INTO #TmpKomb
  82813.     SELECT DISTINCT Sifra_OE, Sifra_Dok, Sifra_Kup, Sifra_Obj, 'D'
  82814.     FROM  Dokr WHERE (PrenDrFirma IS NULL OR PrenDrFirma<>'D') AND Datum_Dok<=@Datum_Do
  82815.     AND Sifra_Kup IN (SELECT DISTINCT ISifra_Kup FROM KonfDokPrenos WHERE Turni='D') 
  82816.     AND Sifra_Dok IN (SELECT DISTINCT ISifra_Dok FROM KonfDokPrenos WHERE Turni='D')
  82817. UPDATE #TmpKomb SET Moze='N' FROM KonfDokPrenos K 
  82818. WHERE #TmpKomb.Sifra_OE=K.ISifra_OE AND #TmpKomb.Sifra_Dok=K.ISifra_Dok AND 
  82819. #TmpKomb.Sifra_Kup=K.ISifra_Kup AND #TmpKomb.Sifra_Obj=K.ISifra_Obj AND K.Turni='N'
  82820. UPDATE #TmpKomb SET Moze='N' FROM KonfDokPrenos K 
  82821. WHERE (K.ISifra_OE=0 OR K.ISifra_Dok=0) AND 
  82822. #TmpKomb.Sifra_Kup=K.ISifra_Kup AND #TmpKomb.Sifra_Obj=K.ISifra_Obj AND K.Turni='N'
  82823. SELECT Sifra_OE, Sifra_Dok, Sifra_Kup, Sifra_Obj FROM #TmpKomb WHErE Moze='D'
  82824.  
  82825.  
  82826.  
  82827. Go
  82828. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdifindokzatv]'))
  82829. drop procedure [dbo].[sp_najdifindokzatv]
  82830.  
  82831. Go
  82832. CREATE PROCEDURE sp_NajdiFinDokZatv
  82833.     @AnID        int,
  82834.     @AnIDZatv    int=0 OUTPUT
  82835. AS
  82836. SELECT @AnIdZatv=AnID2 FROM AnZatv WHERE AnID1=@AnID
  82837. IF @@RowCount<1
  82838.     SELECT @AnIdZatv=AnID1 FROM AnZatv WHERE AnID2=@AnID
  82839.  
  82840.  
  82841. Go
  82842. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdifinrazl]'))
  82843. drop procedure [dbo].[sp_najdifinrazl]
  82844.  
  82845. Go
  82846.  
  82847. CREATE   PROCEDURE sp_NajdiFinRazl
  82848.     @Sifra_OE    smallint,
  82849.     @Sifra_Art_Od    varchar(20),
  82850.     @Sifra_Art_Do    varchar(20),
  82851.     @Datum_Do    smalldatetime,
  82852.     @AzurProsCena    char(1) = 'N',
  82853.     @Datum_Poc    smalldatetime = null,
  82854.     @AzurNabCStavr    char (1) = 'N',    -- D=azuriraj kade sto ne se azurirani, 
  82855.                     -- F=forsiraj azuriranje na site dokumenti, bez ogled na azurirani
  82856.     @Datum_Od    smalldatetime = null,
  82857.     @Azur_DokMagCena char (1) = null,
  82858.     @Azur_DokMag_TipDok varchar (50) = null,
  82859.     @Podr char (1) = Null
  82860.  
  82861. AS
  82862.  
  82863.     Set Nocount On
  82864.     Declare @SSQL as varchar(8000)
  82865.     CREATE TABLE #TmpArt
  82866. (    Sifra_Art    varchar(20),
  82867.     Razlika        decimal(18,6)
  82868. )
  82869.  
  82870.     SET @SSQL = 'INSERT INTO #TmpArt (sifrA_art) 
  82871.              SELECT DISTINCT s.Sifra_Art 
  82872.              FROM SoArt S Inner Join Katart K  on S.sifra_art = K.sifra_art 
  82873.                      WHERE S.Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + ' and K.smatusl <> ''U'' '
  82874.     If @Sifra_Art_Od IS NOT NULL
  82875.         SET @SSQL = @SSQL + ' AND S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  82876.     If @Sifra_Art_Do IS NOT NULL
  82877.         SET @SSQL = @SSQL + ' AND S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  82878.     EXEC(@SSQL)
  82879.  
  82880.     CREATE TABLE #TmpVlez
  82881. (    Datum_Dok    smalldatetime,
  82882.     Tip        char(1),
  82883.     VlIzl        char(1),
  82884.     Kolic        decimal(18,6),
  82885.     Vrednost    decimal(18,6),
  82886.     OrigTip        char(1),
  82887.     NabCena        decimal(18, 6)        -- Fev 21, 2010  DK
  82888. )
  82889.  
  82890.     CREATE TABLE #TmpIzlez
  82891. (    Datum_Dok    smalldatetime,
  82892.     Kolic        decimal(18,6),
  82893.     Vrednost    decimal(18,6),
  82894.         DokId           int,
  82895.         Broj_Nal        int,
  82896.         Sifra_Dok       smallint,
  82897.         Broj_dok        int,
  82898.         Sifra_Prim      smallint,
  82899.         Imadodatna      char (1)
  82900. )
  82901.  
  82902.     Declare @Sifra_Art    varchar(20)
  82903.     Declare @Razlika    decimal(18,6)
  82904.     Declare @ProsCena    decimal(18,6)
  82905.     Declare @PoslPros    decimal(18,6)
  82906.     Declare @VlIma        char(1)
  82907.     Declare @IzlIma        char(1)
  82908.     Declare @Vr_Vlez    decimal(18,6)
  82909.     Declare @Vr_Izlez    decimal(18,6)
  82910.     Declare @Vlez        decimal(18,6)
  82911.     Declare @Izlez        decimal(18,6)
  82912.     Declare @VrIzl_Kart    decimal(18,6)
  82913.     Declare @Vr_Treba    decimal(18,6)
  82914.         Declare @Vr_Kartica     decimal(18,6)
  82915.         Declare @Vr_Razl        decimal(18,6)
  82916.     Declare @VDatum_Dok    smalldatetime
  82917.     Declare @VTip        char(1)
  82918.     Declare @VVlIzl        char(1)
  82919.     Declare @VKolic        decimal(18,6)
  82920.     Declare @VVrednost    decimal(18,6)
  82921.     Declare @IDatum_Dok    smalldatetime
  82922.     Declare @IKolic        decimal(18,6)
  82923.     Declare @IVrednost    decimal(18,6)
  82924.         Declare @IDokID        int
  82925.         Declare @IBroj_Nal    int
  82926.     Declare @GledajVlez    char(1)
  82927.     Declare @GledajIzlez    char(1)
  82928.         Declare @VlImaPoc       char(1)
  82929.         Declare @IzlImaPoc      char(1)
  82930.     Declare @Gjubr            int
  82931.         Declare @Sifra_Dok      smallint
  82932.         Declare @Broj_Dok       int
  82933.         Declare @Sifra_Prim     smallint
  82934.         Declare @Imadodatna     char (1)
  82935.         Declare @SpecSQL        varchar (2000)
  82936.         Declare @OrigVlIzl      char (1)
  82937.  
  82938.     -- Fev 21, 2010 DK
  82939.     Declare @TekMinCena    decimal(18,6)
  82940.     Declare @TekMaxCena    decimal(18,6)
  82941.     Declare    @VNabCena    decimal(18,6)
  82942.     Declare @ImaVlFinRazl    int
  82943.  
  82944. DECLARE Artikli CURSOR FAST_FORWARD 
  82945. FOR SELECT * FROM #TmpArt
  82946.  
  82947. OPEN Artikli
  82948. FETCH NEXT FROM Artikli INTO @Sifra_Art, @Razlika
  82949. WHILE @@FETCH_STATUS = 0
  82950. Begin
  82951.     DELETE FROM #TmpVlez
  82952.     DELETE FROM #TmpIzlez
  82953.  
  82954.     INSERT INTO #TmpVlez 
  82955.         SELECT Datum_Dok, 'V', VlIzl, Kolic, Kolic*NabCena, 'V', NabCena
  82956.     FROM Stavr 
  82957.         WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art AND 
  82958.           Datum_Dok <= @Datum_Do AND VlIzl = 'V'
  82959.  
  82960.     INSERT INTO #TmpVlez 
  82961.         SELECT Datum_Dok, 'F', VlIzl, 0, Iznos_Razl, VlIzl, 0
  82962.     FROM RazlFin 
  82963.         WHERE Sifra_OE = @Sifra_OE AND Sifra_Art = @Sifra_Art AND 
  82964.           Datum_Dok <= @Datum_Do
  82965.  
  82966.     UPDATE #TmpVlez 
  82967.         SET VlIzl='V', Vrednost = Vrednost * -1 
  82968.     WHERE Tip='F' AND VlIzl='I'
  82969.     
  82970.         INSERT INTO #TmpIzlez 
  82971.         SELECT S.Datum_Dok, S.Kolic, S.Kolic*S.NabCena, S.DokID, D.Broj_Nal, 
  82972.                S.Sifra_dok, S.Broj_dok, S.Sifra_Prim, S.Imadodatna
  82973.     FROM Stavr S, Dokr D 
  82974.         WHERE S.Sifra_OE = @Sifra_OE AND S.Sifra_Art = @Sifra_Art AND
  82975.             S.Datum_Dok <= @Datum_Do AND S.VlIzl = 'I' and S.DokrId = D.DokrId
  82976.     
  82977.         SET @ProsCena    = 0
  82978.     SET @PoslPros    = 0
  82979.     SET @VlIma        = 'D'
  82980.     SET @IzlIma        = 'D'
  82981.     SET @Vr_Vlez    = 0
  82982.     SET @Vr_Izlez    = 0
  82983.     SET @Vlez        = 0
  82984.     SET @Izlez        = 0
  82985.     SET @VrIzl_Kart    = 0
  82986.  
  82987.     set @TekMinCena = 0
  82988.     set @TekMaxCena = 0
  82989.     set @ImaVlFinRazl = 0
  82990.  
  82991.     DECLARE Vlezovi CURSOR FAST_FORWARD 
  82992.         FOR SELECT * FROM #TmpVlez 
  82993.         order by datum_dok
  82994.     
  82995.         OPEN Vlezovi
  82996.  
  82997.     FETCH NEXT FROM Vlezovi 
  82998.         INTO @VDatum_Dok, @VTip, @VVlIzl, @VKolic, @VVrednost, @OrigVlIzl, @VNabCena
  82999.     IF @@FETCH_STATUS <> 0 
  83000.         SET @VlIma = 'N'
  83001.  
  83002.     DECLARE Izlezi CURSOR FAST_FORWARD 
  83003.         FOR SELECT * FROM #TmpIzlez 
  83004.         order by datum_dok
  83005.  
  83006.     OPEN Izlezi
  83007.  
  83008.     FETCH NEXT FROM Izlezi 
  83009.         INTO @IDatum_Dok, @IKolic, @IVrednost, @IDokID, @IBroj_Nal, 
  83010.              @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @Imadodatna
  83011.     IF @@FETCH_STATUS <> 0 
  83012.         SET @IzlIma = 'N'
  83013.  
  83014.     -- Dodadeno Aug 22, 2004 za da gleda od nekoja pocetna sostojba, bez da uprosecuva idealno do nea
  83015.         ---------------------------------------------------------------------------------------------------
  83016.     if @Datum_Poc is NOT NULL and @VlIma = 'D'
  83017.         begin
  83018.            set @VlImaPoc = 'D'
  83019.        WHILE @VlImaPoc = 'D' -- istrcaj gi site vlezovi
  83020.        BEGIN
  83021.                if @VDatum_Dok >= @Datum_Poc
  83022.            set @VlImaPoc = 'N'
  83023.                else
  83024.                begin
  83025.                    if @VTip = 'F'
  83026.                    begin
  83027.                       set @VrIzl_Kart = @VrIzl_Kart + (- @VVrednost)
  83028.                       set @Vr_Izlez = @Vr_Izlez + (- @VVrednost)
  83029.                    end
  83030.                    else
  83031.                    begin
  83032.               SET @Vr_Vlez = @Vr_Vlez + @VVrednost
  83033.               SET @Vlez = @Vlez + @VKolic
  83034.                       if @VKolic <> 0        -- aproksimacija vo slucaj na kraj na poceten period da ne mozam da presmetam prosecna cena
  83035.                          set @PoslPros = @VVrednost / @VKolic
  83036.                    end
  83037.  
  83038.            FETCH NEXT FROM Vlezovi 
  83039.            INTO @VDatum_Dok, @VTip, @VVlIzl, @VKolic, @VVrednost, @OrigVlIzl, @VNabCena
  83040.            IF @@FETCH_STATUS <> 0
  83041.                    begin
  83042.                       SET @VlImaPoc = 'N'
  83043.                       SET @VlIma = 'N'
  83044.                    end
  83045.                end                            
  83046.            END
  83047.         end
  83048.  
  83049.     if @Datum_Poc is NOT NULL and @IzlIma = 'D'
  83050.         begin
  83051.            set @IzlImaPoc = 'D'
  83052.        WHILE @IzlImaPoc = 'D' -- istrcaj gi site izlezi
  83053.        BEGIN
  83054.                if @IDatum_Dok >= @Datum_Poc
  83055.            set @IzlImaPoc = 'N'
  83056.                else
  83057.                begin
  83058.                    SET @VrIzl_Kart = @VrIzl_Kart + @IVrednost
  83059.            SET @Vr_Izlez = @Vr_Izlez + @IVrednost
  83060.            SET @Izlez = @Izlez + @IKolic
  83061.                FETCH NEXT FROM Izlezi 
  83062.                    INTO @IDatum_Dok, @IKolic, @IVrednost, @IDokID, @IBroj_Nal, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @Imadodatna
  83063.            IF @@FETCH_STATUS <> 0
  83064.                    begin
  83065.                      SET @IzlImaPoc = 'N'
  83066.                      SET @IzlIma = 'N'
  83067.                    end
  83068.                end
  83069.            END
  83070.         end
  83071.  
  83072.     if @Datum_Poc is NOT NULL
  83073.         begin
  83074.           IF @Vlez - @Izlez <> 0
  83075.       Begin
  83076.          SET @ProsCena = (@Vr_Vlez - @Vr_Izlez) / (@Vlez - @Izlez)
  83077.          If @ProsCena < 0 
  83078.         SET @ProsCena = 0
  83079.           End
  83080.       ELSE
  83081.          SET @ProsCena = 0
  83082.         
  83083.       IF @ProsCena > 0 
  83084.         SET @PoslPros = @ProsCena
  83085.           set @ProsCena = @PoslPros    -- za da go opfatam slucajot koga od gore se prenesuva 
  83086.         end  
  83087.         -- Gotovo so Dodadeno Aug 22, 2004
  83088.      ----------------------------------------------------------------------------------------
  83089.  
  83090.     -----------------------------------------------------------------------------------------
  83091.     ---- Ova e GLAVNATA LUPA ZA UPROSECCUVANJE VO NORMALNI USLOVI ZA EDEN ARTIKL
  83092.     WHILE @VlIma = 'D' or @IzlIma = 'D'
  83093.     BEGIN
  83094.         -----IF @VlIma = 'N' AND @IzlIma = 'N' EXIT 
  83095.         SET @GledajVlez    = 'N'
  83096.         SET @GledajIzlez = 'N'
  83097.         IF @VlIma = 'N'
  83098.             SET @GledajIzlez = 'D'
  83099.         Else IF @IzlIma = 'N'
  83100.             SET @GledajVlez = 'D'
  83101.         Else IF @VDatum_Dok <= @IDatum_Dok
  83102.             SET @GledajVlez = 'D'
  83103.         Else IF @ProsCena <= 0
  83104.             SET @GledajVlez = 'D'
  83105.                 else if @IKolic > 0 and @Vlez - @Izlez < @IKolic
  83106.             SET @GledajVlez = 'D'
  83107.         Else
  83108.             SET @GledajIzlez = 'D'
  83109.  
  83110.         IF @GledajVlez = 'D'
  83111.         Begin
  83112.                         IF @VTip = 'F' and @OrigVlIzl <> 'V'        -- Ova <> 'V' e dodadeno Maj 3, 2009 za VLEZNI FIN.RAZLIKI koi vlijaat na cenata
  83113.                         begin
  83114.                             set @VrIzl_Kart = @VrIzl_Kart + (- @VVrednost)
  83115.                         end
  83116.                         ELSE
  83117.                         begin
  83118.  
  83119.                 if @VTip = 'F' and @OrigVlIzl = 'V'
  83120.                 set @ImaVlFinRazl = 1
  83121.                 else
  83122.                 set @ImaVlFinRazl = 0        -- DK Okt 7, 10  else-to
  83123.  
  83124.                 SET @Vr_Vlez = @Vr_Vlez + @VVrednost
  83125.                 SET @Vlez = @Vlez + @VKolic        -- Ne e problem i kaj vlezni Fin.Razl, zassto se 0
  83126.  
  83127.                 -- Tekovno presmetuvaj ja MAX NAB i MIN NAB cena zaradi zasstita od 
  83128.                 -- sindromot na mali-koliccini-ima-nekoj-vlez-imalo-finansiska-razlika-dava-ogromna-cena
  83129.                 -- Fev 21, 2010 DK
  83130.                 if @VTip <> 'F'        -- Znacci normalen vlez e (ne e finansiska razilika)
  83131.                 begin    
  83132.                 if @VNabCena >= 0 and @ImaVlFinRazl = 0    -- Nabavnata cena od STAVR
  83133.                 begin
  83134.                     if @VNabCena < @TekMinCena
  83135.                         set @TekMinCena = @VNabCena 
  83136.                     if @VNabCena > @TekMaxCena
  83137.                         set @TekMaxCena = @VNabCena 
  83138.                 end
  83139.                 end
  83140.  
  83141.                 IF @Vlez - @Izlez <> 0
  83142.                   Begin
  83143.                 SET @ProsCena = (@Vr_Vlez - @Vr_Izlez) / (@Vlez - @Izlez)
  83144.                 If @ProsCena < 0 
  83145.                     SET @ProsCena = 0
  83146.                 else if @VTip = 'F'    -- Ako e Fin.Razlika, ke mora Min/Max Cena da se smeni, nema da e greska
  83147.                   begin        -- DK Okt 7, 10
  83148.                     if @ProsCena < @TekMinCena
  83149.                         set @TekMinCena = @ProsCena 
  83150.                     if @ProsCena > @TekMaxCena
  83151.                         set @TekMaxCena = @ProsCena 
  83152.                   end
  83153.                 else if @ProsCena < @TekMinCena 
  83154.                     SET @ProsCena = @TekMinCena
  83155.                 else if @ProsCena > @TekMaxCena 
  83156.                     SET @ProsCena = @TekMaxCena
  83157.                   End
  83158.                 ELSE
  83159.                 SET @ProsCena = 0
  83160.  
  83161.                 IF @ProsCena > 0 
  83162.                 SET @PoslPros = @ProsCena
  83163.                         end
  83164.  
  83165.             FETCH NEXT FROM Vlezovi 
  83166.             INTO @VDatum_Dok, @VTip, @VVlIzl, @VKolic, @VVrednost, @OrigVlIzl, @VNabCena
  83167.             IF @@FETCH_STATUS <> 0 
  83168.                 SET @VlIma = 'N'
  83169.         End
  83170.         ELSE
  83171.         Begin
  83172.             SET @VrIzl_Kart = @VrIzl_Kart + @IVrednost
  83173.             SET @Vr_Izlez = @Vr_Izlez + @PoslPros * @IKolic
  83174.             SET @Izlez = @Izlez + @IKolic
  83175.             -- Dodadeno Okt 11, 2004
  83176.             if @AzurNabCStavr = 'D' or @AzurNabCStavr = 'F'
  83177.                         begin
  83178.                            if dbo.fix_uproseci_izlez (@Sifra_Art, @Sifra_Oe, @Sifra_Dok, @Sifra_Prim) = 'N'
  83179.                              set @Gjubr = 0
  83180.                            else if (@Datum_Od is not null) and @IDatum_Dok < @Datum_Od
  83181.                              set @Gjubr = 0
  83182.                            else if @AzurNabCStavr = 'D' and (@IBroj_Nal is not null)
  83183.                              set @Gjubr = 0
  83184.                            else if @PoslPros <= 0
  83185.                              set @Gjubr = 0
  83186.                            else
  83187.                              begin
  83188.                                  update stavr set NabCena = @PoslPros where DokId = @IDokId
  83189.                                  if @Azur_DokMagCena = 'D'
  83190.                  begin
  83191.                                      set @SpecSQL = 'update stavr set DokCena=' + cast(@PoslPros as varchar(18)) + ', MagCena=' + cast(@PoslPros as varchar(18)) + ', DanDokCena = ''N'', DanMagCena = ''N'' where DokId=' + cast(@IDokId as varchar(12)) + ' and Sifra_Dok in (' + cast(@Azur_DokMag_TipDok as varchar(50)) + ')'
  83192.                      EXEC(@SpecSQL)
  83193.                                  end
  83194.                  if @Imadodatna = 'D'
  83195.                                    begin
  83196.                                      update stavr set NabCena = @PoslPros
  83197.                                      where Sifra_art = @Sifra_art and Sifra_Oe = @Sifra_Prim and Sifra_Dok = @Sifra_Dok and Broj_dok = @Broj_dok and Sifra_Prim = @Sifra_oe and Imadodatna = 'P'
  83198.                                      if @Azur_DokMagCena = 'D'
  83199.                       begin
  83200.                                         --set @SpecSQL = 'q'
  83201.                                         set @SpecSQL = 'update stavr set DokCena=' + cast(@PoslPros as varchar(18)) + ', MagCena=' + cast(@PoslPros as varchar(18)) + ', DanDokCena = ''N'', DanMagCena = ''N'' where Sifra_art=' + cast(@Sifra_art as varchar(20)) + ' and Sifra_Oe=' + cast(@Sifra_Prim as varchar(5)) + ' and Sifra_Dok=' + cast(@Sifra_Dok as varchar(5)) + ' and Broj_dok=' + cast(@Broj_dok as varchar(10)) + ' and Sifra_Prim=' + cast(@Sifra_oe as varchar(5)) + ' and Imadodatna = ''P'' and Sifra_Dok in (' + cast(@Azur_DokMag_TipDok as varchar(50)) + ')'
  83202.                         EXEC(@SpecSQL)
  83203.                                      end
  83204.                                    end
  83205.                              end
  83206.                         end
  83207.  
  83208.                         -- Gotovo so dodadeno Okt 11, 2004 
  83209.             FETCH NEXT FROM Izlezi 
  83210.             INTO @IDatum_Dok, @IKolic, @IVrednost, @IDokID, @IBroj_Nal, 
  83211.                  @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @Imadodatna
  83212.             IF @@FETCH_STATUS <> 0 
  83213.                 SET @IzlIma = 'N'
  83214.         End
  83215.     END        --while
  83216.     ---- Gotovo so GLAVNATA LUPA ZA UPROSECCUVANJE VO NORMALNI USLOVI ZA EDEN ARTIKL
  83217.     -----------------------------------------------------------------------------------------
  83218.  
  83219.     CLOSE Vlezovi
  83220.     DEALLOCATE Vlezovi
  83221.  
  83222.     CLOSE Izlezi
  83223.     DEALLOCATE Izlezi
  83224.  
  83225. --print @Vr_Vlez
  83226. --print @Vr_Izlez
  83227. --print @PoslPros
  83228. --print 'qwe'
  83229. --print @Vr_Vlez
  83230. --print @VrIzl_Kart
  83231.     SET @Vr_Treba = (@Vlez - @Izlez) * @PoslPros
  83232.     SET @Vr_Kartica = @Vr_Vlez - @VrIzl_Kart
  83233.         set @Vr_Razl = @Vr_Treba - @Vr_Kartica
  83234.     if dbo.fix_uproseci_izlez (@Sifra_Art, @Sifra_Oe, null, null) = 'N'
  83235.           set @Gjubr = 0
  83236.     else
  83237.     begin
  83238.           if abs(@vr_razl) > 0.009
  83239.           begin
  83240.             update #TmpArt
  83241.             set Razlika = - @Vr_Razl
  83242.             where sifrA_art = @sifra_art
  83243.           end  
  83244.  
  83245.           if @AzurProsCena = 'D' and @PoslPros > 0
  83246.           begin
  83247.          update soart
  83248.              set nnabcena = @PoslPRos
  83249.              where sifra_oe = @Sifra_oe and sifra_art = @sifrA_art
  83250.           end
  83251.  
  83252.       if @POslPros > 0
  83253.       begin
  83254.         -- Dodadeno Maj 3, 2009 -- vo sekoj sluccaj da ja proveruva Posl.Min,MaxCena vo SOART
  83255.         Declare @nMinSoa decimal (18,6)
  83256.         Declare @nMaxSoa decimal (18,6)
  83257.     
  83258.         select @nMinSoa = NMinCena, @nMaxSoa = NMaxCena
  83259.         from Soart
  83260.             where sifra_oe = @Sifra_oe and sifra_art = @sifrA_art
  83261.  
  83262.         if @nMinSoa is null or @nMinSoa <= 0 or @PoslPros < @nMinSoa
  83263.         update soart
  83264.         set NMinCena = @PoslPros
  83265.                 where sifra_oe = @Sifra_oe and sifra_art = @sifrA_art
  83266.  
  83267.         if @nMaxSoa is null or @nMaxSoa <= 0 or @PoslPros > @nMaxSoa
  83268.         update soart
  83269.         set NMaxCena = @PoslPros
  83270.                 where sifra_oe = @Sifra_oe and sifra_art = @sifrA_art
  83271.  
  83272.       end
  83273.         end
  83274.  
  83275.     FETCH NEXT FROM Artikli
  83276.     INTO @Sifra_Art, @Razlika
  83277.  
  83278. End
  83279. CLOSE Artikli
  83280. DEALLOCATE Artikli
  83281.  
  83282. if @Podr = 'V'
  83283.   SELECT * FROM #TmpArt 
  83284.   where abs(razlika) > 0.009
  83285.   order by abs(razlika) DESC
  83286. else
  83287.   SELECT * FROM #TmpArt 
  83288.   where abs(razlika) > 0.009
  83289.  
  83290.  
  83291.  
  83292.  
  83293.  
  83294.  
  83295.  
  83296. Go
  83297. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdifinrazl_grupa]'))
  83298. drop procedure [dbo].[sp_najdifinrazl_grupa]
  83299.  
  83300. Go
  83301.  
  83302.  
  83303.  
  83304. CREATE    PROCEDURE sp_NajdiFinRazl_Grupa
  83305.     @KoiOe        varchar(10),
  83306.     @Sifra_OE_Baza    smallint,
  83307.     @Sifra_Art_Od    varchar(20),
  83308.     @Sifra_Art_Do    varchar(20),
  83309.     @Datum_Do    smalldatetime,
  83310.     @AzurProsCena    char(1) = 'N',
  83311.     @Datum_Poc    smalldatetime = null,
  83312.         @AzurNabCStavr    char (1) = 'N',    -- D=azuriraj kade sto ne se azurirani, 
  83313.                     -- F=forsiraj azuriranje na site dokumenti, bez ogled na azurirani
  83314.     @Datum_Od    smalldatetime = null,
  83315.         @Azur_DokMagCena char (1) = null,
  83316.         @Azur_DokMag_TipDok varchar (50) = null
  83317. AS
  83318.     Set Nocount On
  83319.     Declare @SSQL as varchar(8000)
  83320. ------
  83321. DECLARE @Sifra_oe as smallint
  83322. ------    
  83323.     CREATE TABLE #TmpArt
  83324. (    Sifra_Art    varchar(20),
  83325.     Razlika        decimal(18,6)
  83326. )
  83327.     -- ABC
  83328.     SET @SSQL = 'INSERT INTO #TmpArt (sifrA_art) SELECT DISTINCT s.Sifra_Art FROM SoArt S Inner Join Katart K  on S.sifra_art = K.sifra_art 
  83329.              WHERE S.Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe + ''') and K.smatusl <> ''U'' '
  83330.     If @Sifra_Art_Od IS NOT NULL
  83331.         SET @SSQL = @SSQL + ' AND S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  83332.     If @Sifra_Art_Do IS NOT NULL
  83333.         SET @SSQL = @SSQL + ' AND S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  83334.     EXEC(@SSQL)
  83335.     CREATE TABLE #TmpVlez
  83336. (    Datum_Dok    smalldatetime,
  83337.     Tip            char(1),
  83338.     VlIzl        char(1),
  83339.     Kolic        decimal(18,6),
  83340.     Vrednost    decimal(18,6)
  83341. )
  83342.     CREATE TABLE #TmpIzlez
  83343. (    Datum_Dok    smalldatetime,
  83344.     Kolic        decimal(18,6),
  83345.     Vrednost    decimal(18,6),
  83346.         DokId           int,
  83347.         Broj_Nal        int,
  83348.         Sifra_Dok       smallint,
  83349.         Broj_dok        int,
  83350.         Sifra_Prim      smallint,
  83351.         Imadodatna      char (1),
  83352.         Sifra_Oe    smallint
  83353. )
  83354.     Declare @Sifra_Art    varchar(20)
  83355.     Declare @Razlika    decimal(18,6)
  83356.     Declare @ProsCena    decimal(18,6)
  83357.     Declare @PoslPros    decimal(18,6)
  83358.     Declare @VlIma        char(1)
  83359.     Declare @IzlIma        char(1)
  83360.     Declare @Vr_Vlez    decimal(18,6)
  83361.     Declare @Vr_Izlez    decimal(18,6)
  83362.     Declare @Vlez        decimal(18,6)
  83363.     Declare @Izlez        decimal(18,6)
  83364.     Declare @VrIzl_Kart    decimal(18,6)
  83365.     Declare @Vr_Treba    decimal(18,6)
  83366.         Declare @Vr_Kartica     decimal(18,6)
  83367.         Declare @Vr_Razl        decimal(18,6)
  83368.     Declare @VDatum_Dok    smalldatetime
  83369.     Declare @VTip        char(1)
  83370.     Declare @VVlIzl        char(1)
  83371.     Declare @VKolic        decimal(18,6)
  83372.     Declare @VVrednost    decimal(18,6)
  83373.     Declare @IDatum_Dok    smalldatetime
  83374.     Declare @IKolic        decimal(18,6)
  83375.     Declare @IVrednost    decimal(18,6)
  83376.         Declare @IDokID        int
  83377.         Declare @IBroj_Nal    int
  83378.     Declare @GledajVlez    char(1)
  83379.     Declare @GledajIzlez    char(1)
  83380.         Declare @VlImaPoc       char(1)
  83381.         Declare @IzlImaPoc      char(1)
  83382.     Declare @Gjubr            int
  83383.         Declare @Sifra_Dok      smallint
  83384.         Declare @Broj_Dok       int
  83385.         Declare @Sifra_Prim     smallint
  83386.         Declare @Imadodatna     char (1)
  83387.         Declare @SpecSQL        varchar (2000)
  83388. DECLARE Artikli CURSOR FAST_FORWARD FOR SELECT * FROM #TmpArt
  83389. OPEN Artikli
  83390. FETCH NEXT FROM Artikli INTO @Sifra_Art, @Razlika
  83391. WHILE @@FETCH_STATUS = 0
  83392. Begin
  83393.     DELETE FROM #TmpVlez
  83394.     DELETE FROM #TmpIzlez
  83395.     -- ABC
  83396.     INSERT INTO #TmpVlez 
  83397.     SELECT Datum_Dok, 'V', VlIzl, Kolic, Kolic*NabCena
  83398.     FROM Stavr 
  83399.     WHERE Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = @KoiOe)
  83400.     AND Sifra_Art = @Sifra_Art AND Datum_Dok <= @Datum_Do AND VlIzl = 'V'
  83401.     -- ABC
  83402.     INSERT INTO #TmpVlez SELECT Datum_Dok, 'F', VlIzl, 0, Iznos_Razl
  83403.     FROM RazlFin 
  83404.     WHERE Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = @KoiOe)
  83405.     AND Sifra_Art = @Sifra_Art AND Datum_Dok <= @Datum_Do
  83406.     UPDATE #TmpVlez SET VlIzl='V', Vrednost = Vrednost * -1 WHERE Tip='F' AND VlIzl='I'
  83407.     -- ABC
  83408.     INSERT INTO #TmpIzlez 
  83409.     SELECT S.Datum_Dok, S.Kolic, S.Kolic*S.NabCena, S.DokID, D.Broj_Nal, S.Sifra_dok, S.Broj_dok, S.Sifra_Prim, S.Imadodatna, S.Sifra_Oe
  83410.     FROM Stavr S, Dokr D 
  83411.     WHERE S.Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = @KoiOe) 
  83412.     AND S.Sifra_Art = @Sifra_Art AND S.Datum_Dok <= @Datum_Do AND S.VlIzl = 'I' and S.DokrId = D.DokrId
  83413.     SET @ProsCena    = 0
  83414.     SET @PoslPros    = 0
  83415.     SET @VlIma        = 'D'
  83416.     SET @IzlIma        = 'D'
  83417.     SET @Vr_Vlez    = 0
  83418.     SET @Vr_Izlez    = 0
  83419.     SET @Vlez        = 0
  83420.     SET @Izlez        = 0
  83421.     SET @VrIzl_Kart    = 0
  83422.     DECLARE Vlezovi CURSOR FAST_FORWARD FOR SELECT * FROM #TmpVlez order by datum_dok
  83423.     OPEN Vlezovi
  83424.     FETCH NEXT FROM Vlezovi INTO @VDatum_Dok, @VTip, @VVlIzl, @VKolic, @VVrednost
  83425.     IF @@FETCH_STATUS <> 0 SET @VlIma = 'N'
  83426.     DECLARE Izlezi CURSOR FAST_FORWARD FOR SELECT * FROM #TmpIzlez order by datum_dok
  83427.     OPEN Izlezi
  83428.     FETCH NEXT FROM Izlezi INTO @IDatum_Dok, @IKolic, @IVrednost, @IDokID, @IBroj_Nal, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @Imadodatna, @Sifra_Oe
  83429.     IF @@FETCH_STATUS <> 0 SET @IzlIma = 'N'
  83430.     -- Dodadeno Aug 22, 2004 za da gleda od nekoja pocetna sostojba, bez da uprosecuva idealno do nea
  83431.         ---------------------------------------------------------------------------------------------------
  83432.     if @Datum_Poc is NOT NULL and @VlIma = 'D'
  83433.         begin
  83434.            set @VlImaPoc = 'D'
  83435.        WHILE @VlImaPoc = 'D' -- istrcaj gi site vlezovi
  83436.        BEGIN
  83437.                if @VDatum_Dok >= @Datum_Poc
  83438.            set @VlImaPoc = 'N'
  83439.                else
  83440.                begin
  83441.                    if @VTip = 'F'
  83442.                    begin
  83443.                       set @VrIzl_Kart = @VrIzl_Kart + (- @VVrednost)
  83444.                       set @Vr_Izlez = @Vr_Izlez + (- @VVrednost)
  83445.                    end
  83446.                    else
  83447.                    begin
  83448.               SET @Vr_Vlez = @Vr_Vlez + @VVrednost
  83449.               SET @Vlez = @Vlez + @VKolic
  83450.                       if @VKolic <> 0        -- aproksimacija vo slucaj na kraj na poceten period da ne mozam da presmetam prosecna cena
  83451.                          set @PoslPros = @VVrednost / @VKolic
  83452.                    end
  83453.            FETCH NEXT FROM Vlezovi INTO @VDatum_Dok, @VTip, @VVlIzl, @VKolic, @VVrednost
  83454.            IF @@FETCH_STATUS <> 0
  83455.                    begin
  83456.                       SET @VlImaPoc = 'N'
  83457.                       SET @VlIma = 'N'
  83458.                    end
  83459.                end                            
  83460.            END
  83461.         end
  83462.     if @Datum_Poc is NOT NULL and @IzlIma = 'D'
  83463.         begin
  83464.            set @IzlImaPoc = 'D'
  83465.        WHILE @IzlImaPoc = 'D' -- istrcaj gi site izlezi
  83466.        BEGIN
  83467.                if @IDatum_Dok >= @Datum_Poc
  83468.            set @IzlImaPoc = 'N'
  83469.                else
  83470.                begin
  83471.                    SET @VrIzl_Kart = @VrIzl_Kart + @IVrednost
  83472.            SET @Vr_Izlez = @Vr_Izlez + @IVrednost
  83473.            SET @Izlez = @Izlez + @IKolic
  83474.                FETCH NEXT FROM Izlezi INTO @IDatum_Dok, @IKolic, @IVrednost, @IDokID, @IBroj_Nal, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @Imadodatna, @Sifra_Oe
  83475.            IF @@FETCH_STATUS <> 0
  83476.                    begin
  83477.                      SET @IzlImaPoc = 'N'
  83478.                      SET @IzlIma = 'N'
  83479.                    end
  83480.                end
  83481.            END
  83482.         end
  83483.     if @Datum_Poc is NOT NULL
  83484.         begin
  83485.           IF @Vlez - @Izlez <> 0
  83486.       Begin
  83487.          SET @ProsCena = (@Vr_Vlez - @Vr_Izlez) / (@Vlez - @Izlez)
  83488.          If @ProsCena < 0 SET @ProsCena = 0
  83489.           End
  83490.       ELSE
  83491.          SET @ProsCena = 0
  83492.           IF @ProsCena > 0 SET @PoslPros = @ProsCena
  83493.           set @ProsCena = @PoslPros    -- za da go opfatam slucajot koga od gore se prenesuva 
  83494.         end  
  83495.         -- Gotovo so Dodadeno Aug 22, 2004
  83496.      ----------------------------------------------------------------------------------------
  83497.     WHILE @VlIma = 'D' or @IzlIma = 'D'
  83498.     BEGIN
  83499.         -----IF @VlIma = 'N' AND @IzlIma = 'N' EXIT 
  83500.         SET @GledajVlez    = 'N'
  83501.         SET @GledajIzlez = 'N'
  83502.         IF @VlIma = 'N'
  83503.             SET @GledajIzlez = 'D'
  83504.         Else IF @IzlIma = 'N'
  83505.             SET @GledajVlez = 'D'
  83506.         Else IF @VDatum_Dok <= @IDatum_Dok
  83507.             SET @GledajVlez = 'D'
  83508.         Else IF @ProsCena <= 0
  83509.             SET @GledajVlez = 'D'
  83510.                 else if @IKolic > 0 and @Vlez - @Izlez < @IKolic
  83511.             SET @GledajVlez = 'D'
  83512.         Else
  83513.             SET @GledajIzlez = 'D'
  83514.         IF @GledajVlez = 'D'
  83515.         Begin
  83516.                         if @VTip = 'F'
  83517.                           begin
  83518.                          set @VrIzl_Kart = @VrIzl_Kart + (- @VVrednost)
  83519.                             ----set @Vr_Izlez = @Vr_Izlez + (- @VVrednost)   -- Dodadeno Sept 27, 2006 DK, zasto toa e REALEN IZLEZ napraven
  83520.                           end
  83521.                         else
  83522.                           begin
  83523.                 SET @Vr_Vlez = @Vr_Vlez + @VVrednost
  83524.                 SET @Vlez = @Vlez + @VKolic
  83525.                 IF @Vlez - @Izlez <> 0
  83526.                   Begin
  83527.                 SET @ProsCena = (@Vr_Vlez - @Vr_Izlez) / (@Vlez - @Izlez)
  83528.                 If @ProsCena < 0 SET @ProsCena = 0
  83529.                   End
  83530.                 ELSE
  83531.                 SET @ProsCena = 0
  83532.                 IF @ProsCena > 0 SET @PoslPros = @ProsCena
  83533.                           end
  83534.             FETCH NEXT FROM Vlezovi INTO @VDatum_Dok, @VTip, @VVlIzl, @VKolic, @VVrednost
  83535.             IF @@FETCH_STATUS <> 0 SET @VlIma = 'N'
  83536.         End
  83537.         ELSE
  83538.         Begin
  83539.             SET @VrIzl_Kart = @VrIzl_Kart + @IVrednost
  83540.             SET @Vr_Izlez = @Vr_Izlez + @PoslPros * @IKolic
  83541.             SET @Izlez = @Izlez + @IKolic
  83542.             -- Dodadeno Okt 11, 2004
  83543.             if @AzurNabCStavr = 'D' or @AzurNabCStavr = 'F'
  83544.                         begin
  83545.                            if dbo.fix_uproseci_izlez (@Sifra_Art, @Sifra_Oe, @Sifra_Dok, @Sifra_Prim) = 'N'
  83546.                              set @Gjubr = 0
  83547.                            else if (@Datum_Od is not null) and @IDatum_Dok < @Datum_Od
  83548.                              set @Gjubr = 0
  83549.                            else if @AzurNabCStavr = 'D' and (@IBroj_Nal is not null)
  83550.                              set @Gjubr = 0
  83551.                            else if @PoslPros <= 0
  83552.                              set @Gjubr = 0
  83553.                            else
  83554.                              begin
  83555.                                  update stavr set NabCena = @PoslPros where DokId = @IDokId
  83556.                                  if @Azur_DokMagCena = 'D'
  83557.                  begin
  83558.                                      set @SpecSQL = 'update stavr set DokCena=' + cast(@PoslPros as varchar(18)) + ', MagCena=' + cast(@PoslPros as varchar(18)) + ', DanDokCena = ''N'', DanMagCena = ''N'' where DokId=' + cast(@IDokId as varchar(12)) + ' and Sifra_Dok in (' + cast(@Azur_DokMag_TipDok as varchar(50)) + ')'
  83559.                      EXEC(@SpecSQL)
  83560.                                  end
  83561.                  if @Imadodatna = 'D'
  83562.                                    begin
  83563.                                      update stavr set NabCena = @PoslPros
  83564.                                      where Sifra_art = @Sifra_art and Sifra_Oe = @Sifra_Prim and Sifra_Dok = @Sifra_Dok and Broj_dok = @Broj_dok and Sifra_Prim = @Sifra_oe and Imadodatna = 'P'
  83565.                                      if @Azur_DokMagCena = 'D'
  83566.                       begin
  83567.                                         --set @SpecSQL = 'q'
  83568.                                         set @SpecSQL = 'update stavr set DokCena=' + cast(@PoslPros as varchar(18)) + ', MagCena=' + cast(@PoslPros as varchar(18)) + ', DanDokCena = ''N'', DanMagCena = ''N'' where Sifra_art=' + cast(@Sifra_art as varchar(20)) + ' and Sifra_Oe=' + cast(@Sifra_Prim as varchar(5)) + ' and Sifra_Dok=' + cast(@Sifra_Dok as varchar(5)) + ' and Broj_dok=' + cast(@Broj_dok as varchar(10)) + ' and Sifra_Prim=' + cast(@Sifra_oe as varchar(5)) + ' and Imadodatna = ''P'' and Sifra_Dok in (' + cast(@Azur_DokMag_TipDok as varchar(50)) + ')'
  83569.                         EXEC(@SpecSQL)
  83570.                                      end
  83571.                                    end
  83572.                              end
  83573.                         end
  83574.                         -- Gotovo so dodadeno Okt 11, 2004 
  83575.             FETCH NEXT FROM Izlezi INTO @IDatum_Dok, @IKolic, @IVrednost, @IDokID, @IBroj_Nal, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @Imadodatna, @Sifra_Oe
  83576.             IF @@FETCH_STATUS <> 0 SET @IzlIma = 'N'
  83577.         End
  83578.     END        --while
  83579.     CLOSE Vlezovi
  83580.     DEALLOCATE Vlezovi
  83581.     CLOSE Izlezi
  83582.     DEALLOCATE Izlezi
  83583. --print @Vr_Vlez
  83584. --print @Vr_Izlez
  83585. --print @PoslPros
  83586. --print 'qwe'
  83587. --print @Vr_Vlez
  83588. --print @VrIzl_Kart
  83589.     SET @Vr_Treba = (@Vlez - @Izlez) * @PoslPros
  83590.     SET @Vr_Kartica = @Vr_Vlez - @VrIzl_Kart
  83591.         set @Vr_Razl = @Vr_Treba - @Vr_Kartica
  83592.     if dbo.fix_uproseci_izlez (@Sifra_Art, @Sifra_Oe_Baza, null, null) = 'N'
  83593.           set @Gjubr = 0
  83594.     else
  83595.     begin
  83596.           if abs(@vr_razl) > 0.009
  83597.           begin
  83598.             update #TmpArt
  83599.             set Razlika = - @Vr_Razl
  83600.             where sifrA_art = @sifra_art
  83601.           end  
  83602.           if @AzurProsCena = 'D' and @PoslPros > 0
  83603.           begin
  83604.          -- ABC
  83605.              update soart
  83606.              set nnabcena = @PoslPRos
  83607.              where Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = @KoiOe) 
  83608.         and sifra_art = @sifrA_art
  83609.           end
  83610.         end
  83611.     FETCH NEXT FROM Artikli INTO @Sifra_Art, @Razlika    
  83612. End
  83613. CLOSE Artikli
  83614. DEALLOCATE Artikli
  83615. SELECT * FROM #TmpArt where abs(razlika) > 0.009
  83616.  
  83617.  
  83618.  
  83619. Go
  83620. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikolicrabat]'))
  83621. drop procedure [dbo].[sp_najdikolicrabat]
  83622.  
  83623. Go
  83624.  
  83625.  
  83626. CREATE PROCEDURE sp_NajdiKolicRabat
  83627.     @Paketi decimal (18, 4),
  83628.     @KolRabat Decimal(9,4) OUTPUT
  83629. AS
  83630.     Select @KolRabat=Rabat From Usl_KolRab_Fra
  83631.         Where Od_Kolic<@Paketi AND Do_Kolic>=@Paketi
  83632.  
  83633.  
  83634.  
  83635. Go
  83636. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikolicrabatsopodelart]'))
  83637. drop procedure [dbo].[sp_najdikolicrabatsopodelart]
  83638.  
  83639. Go
  83640.  
  83641.  
  83642.  
  83643. CREATE  PROCEDURE sp_NajdiKolicRabatSoPodelArt
  83644.     @Paketi            decimal (18, 4),
  83645.     @Sifra_Podelba    varchar(20),
  83646.     @Sifra_Tip        smallint,    
  83647.     @KolRabat        Decimal(9,4) OUTPUT
  83648. AS
  83649.     Select @KolRabat=Rabat From Usl_KolRab_Fra
  83650.     Where Od_Kolic<@Paketi AND Do_Kolic>=@Paketi AND Sifra_Podelba=@Sifra_Podelba AND Sifra_Tip=@Sifra_Tip
  83651.  
  83652.  
  83653.  
  83654.  
  83655. Go
  83656. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikomint]'))
  83657. drop procedure [dbo].[sp_najdikomint]
  83658.  
  83659. Go
  83660.  
  83661.  
  83662.  
  83663.  
  83664.  
  83665. CREATE           PROCEDURE sp_NajdiKomint
  83666.     @Smetka    varchar(35) = NULL,
  83667.     @Danocen    varchar(15) = NULL,
  83668.     @MatBr        varchar(7) = NULL,
  83669.     @Adresa    varchar(40) = NULL,
  83670.     @DelIme        varchar(40)=NULL,
  83671.     @Sifra_Grad    smallint = NULL,
  83672.     @Smesto        varchar(30) = NULL
  83673. AS
  83674.     Declare @SSQL varchar(1000)
  83675.     SET @SSQL = 'SELECT Sifra_Kup, ImeKup, Adresa, SMesto, Danocen, MatBr
  83676.     FROM Komint  WHERE 1=1 '
  83677.     IF @DelIme IS NOT NULL
  83678.         SET @SSQL = @SSQL + ' AND ImeKup LIKE ''%' + @DelIme + '%'' '
  83679.     IF @Danocen IS NOT NULL
  83680.         SET @SSQL = @SSQL + ' AND Danocen LIKE ''%' + @Danocen + '%'' '
  83681.     IF @MatBr IS NOT NULL
  83682.         SET @SSQL = @SSQL + ' AND MatBr LIKE ''%' + @MatBr + '%'' '
  83683.     IF @Adresa IS NOT NULL
  83684.         SET @SSQL = @SSQL + ' AND Adresa LIKE ''%' + @Adresa + '%'' '
  83685.     IF @Smesto IS NOT NULL
  83686.         SET @SSQL = @SSQL + ' AND Smesto LIKE ''%' + @Smesto + '%'' '
  83687.     IF @Smetka IS NOT NULL
  83688.         SET @SSQL = @SSQL + ' AND (Ziro LIKE ''%' + @Smetka + '%'' OR Ziro2 LIKE  ''%' + @Smetka + 
  83689.         '%'' OR Sifra_Kup IN (SELECT Sifra_Kup FROM KBanki WHERE ZiroSka LIKE ''%' + @Smetka + '%'' )) '
  83690.         ---OR Ziro2 LIKE  ''%' + @Smetka +     '%'' ))'
  83691.     IF @Sifra_Grad IS NOT NULL 
  83692.         SET @SSQL = @SSQL + ' AND Sifra_Grad=' + cast(@Sifra_Grad as varchar(6))
  83693.     EXEC(@SSQL)
  83694.  
  83695.  
  83696.  
  83697.  
  83698.  
  83699. Go
  83700. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikomintposmetka]'))
  83701. drop procedure [dbo].[sp_najdikomintposmetka]
  83702.  
  83703. Go
  83704. CREATE PROCEDURE sp_NajdiKomintPoSmetka
  83705.     @Smetka    varchar(50),
  83706.     @Sifra_Kup Char (6)='' OUTPUT,
  83707.     @KlkZapisi int =0 OUTPUT
  83708. AS
  83709.  
  83710. SET @Smetka = Replace(@Smetka, '-', '')
  83711. SET @Smetka = Replace(@Smetka, ' ', '')
  83712.  
  83713. CREATE TABLE #TmpK
  83714. (Sifra_Kup    char(6))
  83715.  
  83716. INSERT INTO #TmpK SELECT Sifra_Kup FROM KBanki WHERE Replace(Replace(ZiroSka, '-', ''), ' ', '')=@Smetka
  83717. INSERT INTO #TmpK SELECT Sifra_Kup FROM Komint WHERE Replace(Replace(Ziro, '-', ''), ' ', '')=@Smetka
  83718. INSERT INTO #TmpK SELECT Sifra_Kup FROM Komint WHERE Replace(Replace(Ziro2, '-', ''), ' ', '')=@Smetka
  83719.  
  83720. SELECT @KlkZapisi=COUNT(DISTINCT Sifra_Kup) FROM #TmpK
  83721. IF @KlkZapisi IS NULL SET @KlkZapisi=0
  83722. SELECT @Sifra_Kup = Sifra_Kup FROM #TmpK
  83723.  
  83724.  
  83725. Go
  83726. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikonfazurtros]'))
  83727. drop procedure [dbo].[sp_najdikonfazurtros]
  83728.  
  83729. Go
  83730. CREATE   PROCEDURE sp_NajdiKonfAzurTros
  83731.     @Sifra_Dok    Smallint,
  83732.     @Sifra_OE    Smallint,
  83733.     @Sifra_Pat    Smallint,
  83734.     @Sifra_TrosM smallint =NULL OUTPUT
  83735. AS
  83736.               -- Prvo komvbinacija cela dali odgovara
  83737.     SELECT @Sifra_TrosM = Sifra_TrosM FROM KonfAzurTros
  83738.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Pat = @Sifra_Pat
  83739.     IF @@RowCount = 1 RETURN
  83740.              -- Potoa moznite kombinacii od 2 - po - 2  
  83741.     SELECT @Sifra_TrosM = Sifra_TrosM FROM KonfAzurTros
  83742.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND Sifra_Pat = @Sifra_Pat    
  83743.     IF  @@RowCount = 1 RETURN
  83744.     SELECT @Sifra_TrosM = Sifra_TrosM FROM KonfAzurTros
  83745.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Pat = 0
  83746.     IF  @@RowCount = 1 RETURN
  83747.     SELECT @Sifra_TrosM = Sifra_TrosM FROM KonfAzurTros
  83748.     WHERE Sifra_dok = 0 AND Sifra_OE = @Sifra_OE AND Sifra_Pat = @Sifra_Pat
  83749.     IF  @@RowCount = 1 RETURN
  83750.             -- I na kraj kombinaciite so samo eden podatok
  83751.     IF @Sifra_dok  <> 0
  83752.         Begin
  83753.             SELECT @Sifra_TrosM = Sifra_TrosM FROM KonfAzurTros
  83754.             WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND Sifra_Pat = 0
  83755.             IF @@RowCount = 1 RETURN
  83756.         End
  83757.     IF @Sifra_Pat  <> 0
  83758.         Begin
  83759.             SELECT @Sifra_TrosM = Sifra_TrosM FROM KonfAzurTros
  83760.             WHERE Sifra_dok = 0 AND Sifra_OE = 0 AND Sifra_Pat = @Sifra_Pat
  83761.             IF @@RowCount = 1 RETURN
  83762.         End
  83763.     IF @Sifra_OE  <> 0
  83764.         Begin
  83765.             SELECT @Sifra_TrosM = Sifra_TrosM FROM KonfAzurTros
  83766.             WHERE Sifra_dok = 0 AND Sifra_OE = @Sifra_OE AND Sifra_Pat = 0
  83767.             IF @@RowCount = 1 RETURN
  83768.         End
  83769.     Set @Sifra_TrosM = NULL
  83770.  
  83771.  
  83772.  
  83773. Go
  83774. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikonfceni]'))
  83775. drop procedure [dbo].[sp_najdikonfceni]
  83776.  
  83777. Go
  83778.  
  83779. CREATE   PROCEDURE sp_NajdiKonfCeni
  83780.     @Sifra_Dok    Smallint,
  83781.     @Sifra_OE    Smallint,
  83782.     @Sifra_Prim    Smallint,
  83783.     @KojaCena     varchar(20)  OUTPUT,
  83784.     @KojaCenaM     varchar(20)  OUTPUT,
  83785.     @DaliMoze    char(1)         OUTPUT,
  83786.              @VleziCena       char(1)          OUTPUT,
  83787.              @VleziCena1     char(1)          OUTPUT
  83788. AS
  83789.               -- Prvo komvbinacija cela dali odgovara
  83790.     SELECT @KojaCena = KojaCena, @KojaCenaM = KojaCenaM, @DaliMoze = DaliMoze, @VleziCena = VleziCena, @VleziCena1 = VleziCena1
  83791.     FROM KonfCeni
  83792.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Prim = @Sifra_Prim
  83793.     IF @@RowCount = 1 RETURN
  83794.              -- Potoa moznite kombinacii od 2 - po - 2  
  83795.     SELECT @KojaCena = KojaCena, @KojaCenaM = KojaCenaM, @DaliMoze = DaliMoze, @VleziCena = VleziCena, @VleziCena1 = VleziCena1
  83796.     FROM KonfCeni
  83797.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND Sifra_Prim = @Sifra_Prim    
  83798.     IF  @@RowCount = 1 RETURN
  83799.     SELECT @KojaCena = KojaCena, @KojaCenaM = KojaCenaM, @DaliMoze = DaliMoze, @VleziCena = VleziCena, @VleziCena1 = VleziCena1
  83800.     FROM KonfCeni
  83801.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Prim = 0
  83802.     IF  @@RowCount = 1 RETURN
  83803.     SELECT @KojaCena = KojaCena, @KojaCenaM = KojaCenaM, @DaliMoze = DaliMoze, @VleziCena = VleziCena, @VleziCena1 = VleziCena1
  83804.     FROM KonfCeni
  83805.     WHERE Sifra_dok = 0 AND Sifra_OE = @Sifra_OE AND Sifra_Prim = @Sifra_Prim
  83806.     IF  @@RowCount = 1 RETURN
  83807.             -- I na kraj kombinaciite so samo eden podatok
  83808.     IF @Sifra_dok  <> 0
  83809.         Begin
  83810.                                  SELECT @KojaCena = KojaCena, @KojaCenaM = KojaCenaM, @DaliMoze = DaliMoze, @VleziCena = VleziCena, @VleziCena1 = VleziCena1
  83811.             FROM KonfCeni
  83812.             WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND Sifra_Prim = 0
  83813.                                IF @@RowCount = 1 RETURN
  83814.         End
  83815.     IF @Sifra_Prim  <> 0
  83816.         Begin
  83817.                                  SELECT @KojaCena = KojaCena, @KojaCenaM = KojaCenaM, @DaliMoze = DaliMoze, @VleziCena = VleziCena, @VleziCena1 = VleziCena1
  83818.             FROM KonfCeni
  83819.             WHERE Sifra_dok = 0 AND Sifra_OE = 0 AND Sifra_Prim = @Sifra_Prim
  83820.             IF @@RowCount = 1 RETURN
  83821.         End
  83822.     IF @Sifra_OE  <> 0
  83823.         Begin
  83824.                                  SELECT @KojaCena = KojaCena, @KojaCenaM = KojaCenaM, @DaliMoze = DaliMoze, @VleziCena = VleziCena, @VleziCena1 = VleziCena1
  83825.             FROM KonfCeni
  83826.             WHERE Sifra_dok = 0 AND Sifra_OE = @Sifra_OE AND Sifra_Prim = 0
  83827.             IF @@RowCount = 1 RETURN
  83828.         End
  83829.     Set @KojaCena = ''
  83830.     Set @DaliMoze = 'D'
  83831.  
  83832.  
  83833.  
  83834. Go
  83835. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikonfdokprenos]'))
  83836. drop procedure [dbo].[sp_najdikonfdokprenos]
  83837.  
  83838. Go
  83839. CREATE    PROCEDURE sp_NajdiKonfDokPrenos
  83840.     @Tabela    char(20),
  83841.     @ISifra_Dok    Smallint,
  83842.     @ISifra_OE    Smallint,
  83843.     @ISifra_Kup    char(6),
  83844.     @ISifra_Obj    smallint = NULL,
  83845.     @Izvor        char(1)    OUTPUT,
  83846.     @Sinhr_Bris    char(1)    OUTPUT,
  83847.              @PrenosVoObj    char(10)    OUTPUT,
  83848.              @Vleci        char(1)    OUTPUT,
  83849.     @Turni        char(1)    OUTPUT,
  83850.     @PSifra_Oe    smallint OUTPUT,
  83851.     @PSifra_Dok    smallint OUTPUT,
  83852.     @PGolMal    char(1) OUTPUT,
  83853.     @PSifra_Kup    char(6) OUTPUT,
  83854.     @PImeBaza    varchar(20) OUTPUT,
  83855.     @PUrl        varchar(50) OUTPUT
  83856. AS    
  83857.               -- Prvo komvbinacija cela dali odgovara
  83858. SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83859.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83860. FROM KonfDokPrenos
  83861. WHERE ISifra_dok = @ISifra_Dok AND ISifra_OE = @ISifra_OE AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = @ISifra_Obj AND Tabela=@Tabela
  83862. IF @@RowCount = 1 RETURN
  83863.      -- Potoa moznite kombinacii od 2 - po - 2  
  83864. SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83865.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83866. FROM KonfDokPrenos
  83867. WHERE ISifra_dok = @ISifra_Dok AND ISifra_OE = 0 AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = @ISifra_Obj AND Tabela=@Tabela
  83868. IF  @@RowCount = 1 RETURN
  83869. SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83870.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83871. FROM KonfDokPrenos
  83872. WHERE ISifra_dok = 0 AND ISifra_OE = @ISifra_OE AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = @ISifra_Obj AND Tabela=@Tabela
  83873. IF  @@RowCount = 1 RETURN
  83874. SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83875.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83876. FROM KonfDokPrenos
  83877. WHERE ISifra_dok = @ISifra_Dok AND ISifra_OE = @ISifra_OE AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = 0 AND Tabela=@Tabela
  83878. IF  @@RowCount = 1 RETURN
  83879.     -- I na kraj kombinaciite so samo eden podatok
  83880. IF @ISifra_dok  <> 0
  83881.     Begin
  83882.     SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83883.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83884.     FROM KonfDokPrenos
  83885.     WHERE ISifra_dok = @ISifra_Dok AND ISifra_OE = 0 AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = 0 AND Tabela=@Tabela
  83886.     IF @@RowCount = 1 RETURN
  83887.     End
  83888. IF @ISifra_Obj  <> 0
  83889.     Begin
  83890.     SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83891.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83892.     FROM KonfDokPrenos
  83893.     WHERE ISifra_dok = 0 AND ISifra_OE = 0 AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = @ISifra_Obj AND Tabela=@Tabela
  83894.     IF @@RowCount = 1 RETURN
  83895.     End
  83896. IF @ISifra_OE  <> 0
  83897.     Begin
  83898.     SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83899.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83900.     FROM KonfDokPrenos
  83901.     WHERE ISifra_dok = 0 AND ISifra_OE = @ISifra_OE AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = 0 AND Tabela=@Tabela
  83902.     IF @@RowCount = 1 RETURN
  83903.     End
  83904. SELECT @PSifra_OE=PSifra_OE, @PSifra_Dok=PSifra_Dok, @PSifra_Kup=PSifra_Kup, @PGolMal=PGolMal, @PImeBaza=PImeBaza, @PUrl=PUrl,
  83905.     @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor
  83906. FROM KonfDokPrenos
  83907. WHERE ISifra_dok = 0 AND ISifra_OE = 0 AND ISifra_Kup = @ISifra_Kup AND ISifra_Obj = 0 AND Tabela=@Tabela
  83908. IF @@RowCount = 1 RETURN
  83909.     SET @Izvor=''
  83910.  
  83911.  
  83912. Go
  83913. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikonfnasobjdok]'))
  83914. drop procedure [dbo].[sp_najdikonfnasobjdok]
  83915.  
  83916. Go
  83917.  
  83918. CREATE     PROCEDURE sp_NajdiKonfNasObjDok
  83919.     @Tabela    char(20),
  83920.     @Sifra_Dok    Smallint,
  83921.     @Sifra_OE    Smallint,
  83922.     @Sifra_Prim    Smallint,
  83923.     @Izvor        char(1)    OUTPUT,
  83924.     @Azur_Izvor     char(1)  OUTPUT,
  83925.     @Azur_Drug    char(1)  OUTPUT,
  83926.     @Sinhr_Bris    char(1)    OUTPUT,
  83927.     @PrenosVoObj    char(10)    OUTPUT,
  83928.     @Vleci        char(1)    OUTPUT,
  83929.     @Turni        char(1)    OUTPUT,
  83930.     @Vo_Sifra_Dok smallint = 0 OUTPUT
  83931. AS
  83932.               -- Prvo komvbinacija cela dali odgovara
  83933. SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83934. FROM KonfNasObjDok
  83935. WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Prim = @Sifra_Prim AND Tabela=@Tabela
  83936. IF @@RowCount = 1 RETURN
  83937.      -- Potoa moznite kombinacii od 2 - po - 2  
  83938. SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83939. FROM KonfNasObjDok
  83940. WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND Sifra_Prim = @Sifra_Prim    AND Tabela=@Tabela
  83941. IF  @@RowCount = 1 RETURN
  83942. SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83943. FROM KonfNasObjDok
  83944. WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Prim = 0 AND Tabela=@Tabela
  83945. IF  @@RowCount = 1 RETURN
  83946. SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83947. FROM KonfNasObjDok
  83948. WHERE Sifra_dok = 0 AND Sifra_OE = @Sifra_OE AND Sifra_Prim = @Sifra_Prim AND Tabela=@Tabela
  83949. IF  @@RowCount = 1 RETURN
  83950.     -- I na kraj kombinaciite so samo eden podatok
  83951. IF @Sifra_dok  <> 0
  83952.     Begin
  83953.     SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83954.     FROM KonfNasObjDok
  83955.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND Sifra_Prim = 0 AND Tabela=@Tabela
  83956.     IF @@RowCount = 1 RETURN
  83957.     End
  83958. IF @Sifra_Prim  <> 0
  83959.     Begin
  83960.     SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83961.     FROM KonfNasObjDok
  83962.     WHERE Sifra_dok = 0 AND Sifra_OE = 0 AND Sifra_Prim = @Sifra_Prim AND Tabela=@Tabela
  83963.     IF @@RowCount = 1 RETURN
  83964.     End
  83965. IF @Sifra_OE  <> 0
  83966.     Begin
  83967.     SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83968.     FROM KonfNasObjDok
  83969.     WHERE Sifra_dok = 0 AND Sifra_OE = @Sifra_OE AND Sifra_Prim = 0 AND Tabela=@Tabela
  83970.     IF @@RowCount = 1 RETURN
  83971.     End
  83972. SELECT @Azur_Izvor=Azur_Izvor, @Azur_Drug=Azur_Drug, @Sinhr_Bris=Sinhr_Bris, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni, @Izvor=Izvor, @Vo_Sifra_Dok=Vo_Sifra_Dok
  83973. FROM KonfNasObjDok
  83974. WHERE Sifra_dok = 0 AND Sifra_OE = 0 AND Sifra_Prim = 0 AND Tabela=@Tabela
  83975. IF @@RowCount = 1 RETURN
  83976.     SET @Izvor=''
  83977.  
  83978.  
  83979.  
  83980. Go
  83981. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikonfnasobjmatic]'))
  83982. drop procedure [dbo].[sp_najdikonfnasobjmatic]
  83983.  
  83984. Go
  83985.  
  83986.  
  83987. CREATE    PROCEDURE sp_NajdiKonfNasObjMatic
  83988.     @Tabela            char(20),
  83989.     @SifraI            int,
  83990.     @SifraS            varchar(20),
  83991.     @Izvor            char(1)    OUTPUT,
  83992.     @OdmaPrenos     char(1) OUTPUT,
  83993.     @PrenosVoObj    char(1) OUTPUT,
  83994.     @Vleci            char(1)    OUTPUT,
  83995.     @Turni            char(1)    OUTPUT
  83996. AS
  83997. IF @SifraI IS NOT NULL
  83998. Begin
  83999.               -- Prvo komvbinacija cela dali odgovara
  84000.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84001.     FROM KonfNasObjMatic
  84002.     WHERE Poc_int <= @SifraI AND Kr_int >= @SifraI AND Tabela=@Tabela
  84003.     IF @@RowCount = 1 RETURN
  84004.          -- Potoa moznite kombinacii 
  84005.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84006.     FROM KonfNasObjMatic
  84007.     WHERE Poc_int <= @SifraI AND Kr_int = 0 AND Tabela=@Tabela
  84008.     IF  @@RowCount = 1 RETURN
  84009.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84010.     FROM KonfNasObjMatic
  84011.     WHERE Poc_int = 0 AND Kr_int >= @SifraI AND Tabela=@Tabela
  84012.     IF  @@RowCount = 1 RETURN
  84013.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84014.     FROM KonfNasObjMatic
  84015.     WHERE Poc_int = 0 AND Kr_int = 0 AND Tabela=@Tabela
  84016.     IF @@RowCount = 1 RETURN
  84017. End
  84018. ELSE
  84019. Begin
  84020.               -- Prvo komvbinacija cela dali odgovara
  84021.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84022.     FROM KonfNasObjMatic
  84023.     WHERE Poc_char <= @SifraS AND Kr_char >= @SifraS AND Tabela=@Tabela
  84024.     IF @@RowCount = 1 RETURN
  84025.          -- Potoa moznite kombinacii 
  84026.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84027.     FROM KonfNasObjMatic
  84028.     WHERE Poc_char <= @SifraS AND Kr_char = '' AND Tabela=@Tabela
  84029.     IF  @@RowCount = 1 RETURN
  84030.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84031.     FROM KonfNasObjMatic
  84032.     WHERE Poc_char = '' AND Kr_char >= @SifraS AND Tabela=@Tabela
  84033.     IF  @@RowCount = 1 RETURN
  84034.     SELECT @Izvor=Izvor, @OdmaPrenos=OdmaPrenos, @PrenosVoObj=PrenosVoObj, @Vleci=Vleci, @Turni=Turni
  84035.     FROM KonfNasObjMatic
  84036.     WHERE Poc_char = '' AND Kr_char = '' AND Tabela=@Tabela
  84037.     IF @@RowCount = 1 RETURN
  84038. END
  84039.     SET @Izvor=''
  84040.  
  84041.  
  84042.  
  84043. Go
  84044. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikorisnik]'))
  84045. drop procedure [dbo].[sp_najdikorisnik]
  84046.  
  84047. Go
  84048.  
  84049.  
  84050.  
  84051.  
  84052. CREATE   PROCEDURE sp_NajdiKorisnik
  84053.     @Sifra_Kup    char(6) = NULL,
  84054.     @LK        varchar(15) = NULL,
  84055.     @RegBrLK    varchar(10)=NULL
  84056. AS
  84057.     Declare @SSQL varchar(1000)
  84058.     SET @SSQL = 'SELECT Sifra_Kor, ImeKor, Sifra_Oe
  84059.     FROM KartKor  WHERE 1=1 '
  84060.     IF @LK IS NOT NULL
  84061.         SET @SSQL = @SSQL + ' AND LK LIKE ''%' + @LK + '%'' '
  84062.     IF @Sifra_Kup IS NOT NULL
  84063.         SET @SSQL = @SSQL + ' AND Sifra_Kup = ''' + @Sifra_Kup + ''' '
  84064.     IF @RegBrLK IS NOT NULL
  84065.     Begin     
  84066.         SET @SSQL = @SSQL+' AND (RegBrLK = '''+@RegBrLK+''' OR RegBrKor2='''+@RegBrLK + ''' OR RegBrKor3= ''' + @RegBrLK + ''') '
  84067.     End
  84068.     EXEC(@SSQL)
  84069.  
  84070.  
  84071.  
  84072.  
  84073. Go
  84074. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdikorisnikid]'))
  84075. drop procedure [dbo].[sp_najdikorisnikid]
  84076.  
  84077. Go
  84078.  
  84079. CREATE  PROCEDURE sp_NajdiKorisnikID
  84080.     @ImeNaKorisnik   varchar(20),
  84081.     @IDKOrisnik         int  OUTPUT
  84082. AS
  84083.     SELECT @IDKOrisnik=UID FROM SysUsers WHERE Name=@ImeNaKorisnik
  84084.  
  84085.  
  84086.  
  84087. Go
  84088. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdilogo]'))
  84089. drop procedure [dbo].[sp_najdilogo]
  84090.  
  84091. Go
  84092.  
  84093.  
  84094. CREATE    PROCEDURE sp_NajdiLogo
  84095.     @TipObr    Char(2),
  84096.     @Sifra_OE    Smallint,
  84097.     @Sifra_Dok    Smallint     
  84098. AS
  84099.               -- Prvo komvbinacija cela dali odgovara
  84100. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr AND Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE)
  84101. Begin
  84102.     SELECT * FROM Logo
  84103.     WHERE TipObr = @TipObr AND Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE 
  84104.     IF @@RowCount = 1 RETURN
  84105. End    
  84106.              -- Potoa moznite kombinacii
  84107. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr AND Sifra_OE = @Sifra_OE AND Sifra_Dok = 0)
  84108. Begin
  84109.     SELECT * FROM Logo
  84110.     WHERE TipObr = @TipObr AND Sifra_OE = @Sifra_OE AND Sifra_Dok = 0
  84111.     IF  @@RowCount = 1 RETURN
  84112. End
  84113. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr AND Sifra_dok = @Sifra_Dok  AND Sifra_OE = 0)
  84114. Begin
  84115.     SELECT * FROM Logo
  84116.     WHERE TipObr = @TipObr AND Sifra_dok = @Sifra_Dok  AND Sifra_OE = 0
  84117.     IF  @@RowCount = 1 RETURN
  84118. End
  84119. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr  AND Sifra_OE = 0 AND Sifra_Dok = 0)
  84120. Begin
  84121.     SELECT * FROM Logo
  84122.     WHERE TipObr = @TipObr  AND Sifra_OE = 0 AND Sifra_Dok = 0
  84123.     IF  @@RowCount = 1 RETURN
  84124. End
  84125. IF EXISTS (SELECT * FROM Logo WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND TipObr = '  ')
  84126. Begin
  84127.     SELECT * FROM Logo
  84128.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND TipObr = '  '
  84129.     IF @@RowCount = 1 RETURN
  84130. End
  84131. IF @Sifra_Dok <> 0
  84132. Begin
  84133.     IF EXISTS (SELECT * FROM Logo WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND TipObr = '  ')
  84134.     Begin
  84135.         SELECT * FROM Logo
  84136.         WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND TipObr = '  '
  84137.         IF @@RowCount = 1 RETURN
  84138.     End
  84139. End
  84140. IF @Sifra_OE <> 0
  84141. Begin
  84142.     IF EXISTS (SELECT * FROM Logo WHERE Sifra_OE = @Sifra_OE AND Sifra_Dok = 0 AND TipObr='  ')
  84143.     Begin
  84144.         SELECT * FROM Logo
  84145.         WHERE Sifra_OE = @Sifra_OE AND Sifra_Dok = 0 AND TipObr='  '
  84146.         IF @@RowCount = 1 RETURN
  84147.     End
  84148. End
  84149.     Declare @TipObr1 char(2)
  84150.     Set @TipObr1 = 'FA'
  84151.               -- Prvo komvbinacija cela dali odgovara
  84152. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr1 AND Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE)
  84153. Begin
  84154.     SELECT * FROM Logo
  84155.     WHERE TipObr = @TipObr1 AND Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE 
  84156.     IF @@RowCount = 1 RETURN
  84157. End    
  84158.              -- Potoa moznite kombinacii
  84159. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr1 AND Sifra_OE = @Sifra_OE AND Sifra_Dok = 0)
  84160. Begin
  84161.     SELECT * FROM Logo
  84162.     WHERE TipObr = @TipObr1 AND Sifra_OE = @Sifra_OE AND Sifra_Dok = 0
  84163.     IF  @@RowCount = 1 RETURN
  84164. End
  84165. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr1 AND Sifra_dok = @Sifra_Dok  AND Sifra_OE = 0)
  84166. Begin
  84167.     SELECT * FROM Logo
  84168.     WHERE TipObr = @TipObr1 AND Sifra_dok = @Sifra_Dok  AND Sifra_OE = 0
  84169.     IF  @@RowCount = 1 RETURN
  84170. End
  84171. IF EXISTS (SELECT * FROM Logo WHERE TipObr = @TipObr1  AND Sifra_OE = 0 AND Sifra_Dok = 0)
  84172. Begin
  84173.     SELECT * FROM Logo
  84174.     WHERE TipObr = @TipObr1  AND Sifra_OE = 0 AND Sifra_Dok = 0
  84175.     IF  @@RowCount = 1 RETURN
  84176. End
  84177. IF EXISTS (SELECT * FROM Logo WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND TipObr = '  ')
  84178. Begin
  84179.     SELECT * FROM Logo
  84180.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND TipObr = '  '
  84181.     IF @@RowCount = 1 RETURN
  84182. End
  84183. IF @Sifra_Dok <> 0
  84184. Begin
  84185.     IF EXISTS (SELECT * FROM Logo WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND TipObr = '  ')
  84186.     Begin
  84187.         SELECT * FROM Logo
  84188.         WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = 0 AND TipObr = '  '
  84189.         IF @@RowCount = 1 RETURN
  84190.     End
  84191. End
  84192. IF @Sifra_OE <> 0
  84193. Begin
  84194.     IF EXISTS (SELECT * FROM Logo WHERE Sifra_OE = @Sifra_OE AND Sifra_Dok = 0 AND TipObr='  ')
  84195.     Begin
  84196.         SELECT * FROM Logo
  84197.         WHERE Sifra_OE = @Sifra_OE AND Sifra_Dok = 0 AND TipObr='  '
  84198.         IF @@RowCount = 1 RETURN
  84199.     End
  84200. End
  84201. SELECT * FROM Logo where TipObr = '  '
  84202.  
  84203.  
  84204.  
  84205. Go
  84206. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdilok_vo_org]'))
  84207. drop procedure [dbo].[sp_najdilok_vo_org]
  84208.  
  84209. Go
  84210.  
  84211. CREATE     PROCEDURE sp_NajdiLok_Vo_Org
  84212.     @Sifra_OE     Smallint,
  84213.        @Lokac_BarKod    varchar(30),
  84214.     @Lokac_Ime      nvarchar(40) = null OUTPUT,
  84215.     @Lokac_ID       varchar(30) = null OUTPUT,
  84216.     @Sifra_Art      varchar(20) = null OUTPUT,
  84217.     @ImeArt         varchar(40) = null OUTPUT, 
  84218.     @Sostojba       decimal (18,4) = null OUTPUT,
  84219.     @KolkuSoSost    int = null OUTPUT,
  84220.     @LotBr        varchar(50) = Null OUTPUT,
  84221.     @Sifra_KatStatus smallint = Null OUTPUT,
  84222.     @RokRed        varchar(10) = Null OUTPUT,
  84223.     @ImeKatStatus    varchar(30) = Null OUTPUT
  84224.  
  84225. AS
  84226.     
  84227.     select @Lokac_Id = Lokac_Id, @Lokac_Ime = Lokac_Ime
  84228.     from WhmLokacija 
  84229.     where Sifra_Oe = @Sifra_Oe and Lokac_BarKod = @Lokac_BarKod
  84230.  
  84231.     select @KolkuSoSost = count(*)
  84232.     from WhmSost W
  84233.     inner join Katart K on K.Sifra_Art = W.Sifra_Art
  84234.     where W.Sifra_Oe = @SifrA_Oe and W.Lokac_Id = @Lokac_ID
  84235.         and W.Sostojba <> 0
  84236.  
  84237.     select top 1 
  84238.         @Sifra_Art = W.Sifra_Art, @ImeArt = K.ImeArt, @Sostojba = W.Sostojba,
  84239.         @LotBr = W.LotBr, @Sifra_KatStatus = W.Sifra_KatStatus, @RokRed = W.RokRed,
  84240.         @ImeKatStatus = KS.ImeKatStatus
  84241.     from WhmSost W
  84242.     inner join Katart K 
  84243.         on K.Sifra_Art = W.Sifra_Art
  84244.     left outer join KatStatus KS
  84245.         on KS.Sifra_KatStatus = W.Sifra_KatStatus
  84246.     where W.Sifra_Oe = @SifrA_Oe and W.Lokac_Id = @Lokac_ID
  84247.         and W.Sostojba <> 0
  84248.     order by W.Sostojba Desc
  84249.  
  84250.  
  84251.  
  84252. Go
  84253. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdilokac]'))
  84254. drop procedure [dbo].[sp_najdilokac]
  84255.  
  84256. Go
  84257.  
  84258.  
  84259. CREATE PROCEDURE sp_NajdiLokac
  84260.     @Sifra_Art    varchar(20),
  84261.         @LOkacija       varchar (10) OUTPUT
  84262. AS
  84263.     SELECT @Lokacija = Lokacija FROM KatArt 
  84264.     WHERE Sifra_Art = @Sifra_Art
  84265.  
  84266.  
  84267.  
  84268. Go
  84269. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdilotser_tugaozn]'))
  84270. drop procedure [dbo].[sp_najdilotser_tugaozn]
  84271.  
  84272. Go
  84273. CREATE   PROCEDURE sp_NajdiLotSer_TugaOzn
  84274.     @TugaOzn    varchar(30),
  84275.     @SpecOzn    varchar(30) = Null OUTPUT,
  84276.     @Sifra_Art    varchar(20) = NULL OUTPUT,
  84277.     @ImeArt    varchar(50) = NULL OUTPUT,
  84278.     @Tip_Set    smallint = NULL OUTPUT,
  84279.     @RbrVoSet    smallint = NULL OUTPUT,
  84280.     @KolkuVoSet    smallint = NULL OUTPUT,
  84281.     @Status_Spec    char(1) = NULL OUTPUT,
  84282.     @BrZapisi    int = NULL OUTPUT
  84283. AS
  84284.     Set @BrZapisi = (Select Count(*) FROM LotSer L    WHERE TugaOzn = @TugaOzn)
  84285.     SELECT Top 1 @Sifra_Art = L.Sifra_Art, @SpecOzn = SpecOzn, @ImeArt = K.ImeArt, @Tip_Set=Tip_Set, 
  84286.             @RbrVoSet=RbrVoSet, @KolkuVoSet=KolkuVoSet, @Status_Spec=Status_Spec
  84287.     FROM LotSer L
  84288.     Inner Join Katart K on L.Sifra_Art = K.Sifra_Art
  84289.     WHERE TugaOzn = @TugaOzn
  84290.     Order By L.Sifra_Art, L.SpecOzn
  84291.  
  84292.  
  84293. Go
  84294. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdimapartimport]'))
  84295. drop procedure [dbo].[sp_najdimapartimport]
  84296.  
  84297. Go
  84298. CREATE PROCEDURE sp_NajdiMapArtImport
  84299.  
  84300.     @SifArtImport    varchar(20),
  84301.     @SifArtNasa    varchar(20) = Null Output
  84302.  AS
  84303.     Select @SifArtNasa = Sifra_Art From MapArtImport Where Sifra_Art_Import=@SifArtImport
  84304. Go
  84305. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdimozeprenoskonfdrbaza]'))
  84306. drop procedure [dbo].[sp_najdimozeprenoskonfdrbaza]
  84307.  
  84308. Go
  84309. CREATE  PROCEDURE sp_NajdiMozePrenosKonfDrBaza
  84310.     @Tabela    char(20),
  84311.     @KojObj    char(1),
  84312.     @Vleci        char(1)    OUTPUT,
  84313.     @Turni        char(1)    OUTPUT
  84314. AS
  84315.     SET @Vleci = 'N'
  84316.     SET @Turni = 'N'
  84317.     SELECT @Vleci = Vleci FROM KonfDokPrenos WHERE PatIndex('%'+@KojObj + '%', PrenosVoObj)<>0 AND Tabela = @Tabela AND Vleci='D'
  84318.     SELECT @Turni = Turni FROM KonfDokPrenos WHERE Izvor = @KojObj AND Tabela = @Tabela AND Turni='D'
  84319.  
  84320.  
  84321.  
  84322. Go
  84323. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdimozeprenoskonfobj]'))
  84324. drop procedure [dbo].[sp_najdimozeprenoskonfobj]
  84325.  
  84326. Go
  84327.  
  84328. CREATE  PROCEDURE sp_NajdiMozePrenosKonfObj
  84329.     @Tabela    char(20),
  84330.     @KojObj    char(1),
  84331.     @Vleci        char(1)    OUTPUT,
  84332.     @Turni        char(1)    OUTPUT
  84333. AS
  84334.     SET @Vleci = 'N'
  84335.     SET @Turni = 'N'
  84336.     SELECT @Vleci = Vleci FROM KonfNasObjDok WHERE PatIndex('%'+@KojObj + '%', PrenosVoObj)<>0 AND Tabela = @Tabela AND Vleci='D'
  84337.     SELECT @Turni = Turni FROM KonfNasObjDok WHERE Izvor = @KojObj AND Tabela = @Tabela AND Turni='D'
  84338.  
  84339.  
  84340.  
  84341. Go
  84342. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdinarednakreditopomena]'))
  84343. drop procedure [dbo].[sp_najdinarednakreditopomena]
  84344.  
  84345. Go
  84346. CREATE  PROCEDURE sp_NajdiNarednaKreditOpomena
  84347.     @Sifra_Oe smallint,
  84348.     @Broj_kredit int,
  84349.     @Rbr      int OUTPUT
  84350. AS
  84351.     SELECT TOP 1 @Rbr = Broj_Opomena FROM KreditOpomena WHERE Sifra_OE=@Sifra_OE AND Broj_Kredit=@Broj_Kredit 
  84352.     ORDER BY Broj_Opomena Desc
  84353.  
  84354.  
  84355.  
  84356. Go
  84357. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdinarednakredittrans]'))
  84358. drop procedure [dbo].[sp_najdinarednakredittrans]
  84359.  
  84360. Go
  84361.  
  84362. CREATE PROCEDURE sp_NajdiNarednaKreditTrans
  84363.     @Sifra_Oe smallint,
  84364.     @Broj_kredit int,
  84365.     @Rbr      int OUTPUT
  84366. AS
  84367.     SELECT TOP 1 @Rbr = Rbr_KreditTrans FROM KreditTransakc WHERE Sifra_OE=@Sifra_OE AND Broj_Kredit=@Broj_Kredit 
  84368.     ORDER BY Rbr_KreditTrans Desc
  84369.  
  84370.  
  84371.  
  84372. Go
  84373. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiosnrabatsopodelart]'))
  84374. drop procedure [dbo].[sp_najdiosnrabatsopodelart]
  84375.  
  84376. Go
  84377. CREATE  PROCEDURE sp_NajdiOsnRabatSoPodelArt
  84378.     @Datum_Dok        smalldatetime,
  84379.     @Rok            smallint,
  84380.     @Sifra_Podelba    varchar(20),
  84381.     @Sifra_Tip        smallint,
  84382.     @OsnRabat        Decimal(9,4) OUTPUT
  84383. AS
  84384. IF @Datum_Dok IS NULL   SET @Datum_Dok=GetDate()
  84385.  
  84386. Select TOP 1 @OsnRabat=Uces From Usl_Komerc_Per
  84387. Where Sif_Art_Gen=@Sifra_Podelba AND Sif_Kup_Gen=@Sifra_Tip AND Rok_Dosp=@Rok AND Datum_Od<=@Datum_Dok
  84388. --AND Tip_Sif_Kup='T' ....
  84389.  
  84390.  
  84391.  
  84392. Go
  84393. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiosnsred]'))
  84394. drop procedure [dbo].[sp_najdiosnsred]
  84395.  
  84396. Go
  84397. CREATE        PROCEDURE sp_NajdiOsnSred
  84398.     @Ime        nvarchar(65) = NULL,
  84399.     @Opis        nvarchar(250) = NULL,
  84400.     @Kto_Anal    char(10) = NULL,
  84401.     @Sifra_Amor    char(3) = NULL,
  84402.     @Sifra_Lok    char(10) = NULL,
  84403.     @Sifra_MakLok    char(10) = NULL,
  84404.     @Sifra_MikLok    char(10) = NULL,
  84405.     @Sifra_Rab    int = NULL,
  84406.     @Br_Smena    char(1) = NULL,
  84407.     @BarKod    char(15) = NULL,
  84408.     @Inv_Broj    char(10) = NULL
  84409. AS
  84410.     Declare @SSQL as varchar(8000)
  84411.     Set @SSQL = 'Select  O.Inv_Broj, O.Ime, O.BarKod, O.Sifra_MikLok, O.Opis, O.Kto_Anal, O.Br_Smena, O.Sifra_Amor, O.DatNab, 
  84412.                 O.DatAkt, O.DatPrest, O.Orig_Nab_Vr, O.RedTrans, O.Valuta, 
  84413.                 O.Orig_Nab_Vr_Val, O.Sifra_Rab, O.Tip, MIKL.Sifra_MakLok, MAKL.Sifra_Lok
  84414.         From OsnSred O
  84415.         Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  84416.         Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  84417.         Where 1=1 '
  84418.     If @Ime Is Not Null
  84419.         Set @SSQL = @SSQL + ' And O.Ime Like ''%' + @Ime + '%'' '
  84420.     If @Opis Is Not Null
  84421.         Set @SSQL = @SSQL + ' And O.Opis Like ''%' + @Opis + '%'' '
  84422.     If @Kto_Anal Is Not Null
  84423.         Set @SSQL = @SSQL + ' And O.Kto_Anal = ''' + @Kto_Anal + ''' '
  84424.     If @Sifra_Amor Is Not Null
  84425.         Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  84426.     If @Sifra_MikLok Is Not Null
  84427.         Set @SSQL = @SSQL + ' And O.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  84428.     If @Sifra_MakLok Is Not Null
  84429.         Set @SSQL = @SSQL + ' And MIKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  84430.     If @Sifra_Lok Is Not Null
  84431.         Set @SSQL = @SSQL + ' And MAKL.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  84432.     If @Sifra_Rab Is Not Null
  84433.         Set @SSQL = @SSQL + ' And O.Sifra_Rab = ''' + Cast(@Sifra_Rab as varchar(10)) + ''' '
  84434.     If @Br_Smena Is Not Null
  84435.         Set @SSQL = @SSQL + ' And O.Br_Smena = ''' + @Br_Smena + ''' '
  84436.     If @BarKod Is Not Null
  84437.         Set @SSQL = @SSQL + ' And O.BarKod = ''' + @BarKod + ''' '
  84438.     If @Inv_Broj Is Not Null
  84439.         Set @SSQL = @SSQL + ' And O.Inv_Broj = ''' + @Inv_Broj + ''' '
  84440.     Exec(@SSQL)
  84441.  
  84442.  
  84443. Go
  84444. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdipodgr]'))
  84445. drop procedure [dbo].[sp_najdipodgr]
  84446.  
  84447. Go
  84448.  
  84449.  
  84450.  
  84451. create PROCEDURE sp_NajdiPodgr
  84452.     @Sifra_Art    varchar(20),
  84453.         @Sifra_Podg       varchar (10) OUTPUT
  84454. AS
  84455.     SELECT @Sifra_Podg = Sifra_Podg FROM KatArt 
  84456.     WHERE Sifra_Art = @Sifra_Art
  84457.  
  84458.  
  84459.  
  84460. Go
  84461. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiposl_katserklas]'))
  84462. drop procedure [dbo].[sp_najdiposl_katserklas]
  84463.  
  84464. Go
  84465.  
  84466.  
  84467. create  PROCEDURE sp_NajdiPosl_KatSerKlas
  84468.     @Sifra_Art    varchar(20),
  84469.     @PoslKontrSer    varchar(30) = Null OUTPUT
  84470.  
  84471. AS
  84472.  
  84473.     select @PoslKontrSer = max(KontrSer)
  84474.     from KatSerKlas
  84475.     Where Sifra_Art = @Sifra_Art
  84476.  
  84477.  
  84478.  
  84479.  
  84480.  
  84481. Go
  84482. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiposlnar]'))
  84483. drop procedure [dbo].[sp_najdiposlnar]
  84484.  
  84485. Go
  84486.  
  84487.  
  84488. Create PROCEDURE sp_NajdiPoslNar
  84489.     @Sifra_OE    Smallint,
  84490.     @Sifra_Nar    Smallint,
  84491.     @Broj_Nar    int OUTPUT
  84492. AS
  84493.     SELECT @Broj_Nar = MAX(Broj_Nar) FROM Naracki
  84494.     WHERE Sifra_OE = @Sifra_OE AND Sifra_Nar = @Sifra_Nar
  84495.  
  84496.  
  84497.  
  84498. Go
  84499. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiposlprimenlot]'))
  84500. drop procedure [dbo].[sp_najdiposlprimenlot]
  84501.  
  84502. Go
  84503. CREATE PROCEDURE sp_NajdiPoslPrimenLot
  84504.     @Sifra_OE    smallint,
  84505.     @Sifra_Art    varchar(20),
  84506.     @Lot         varchar(30) OUTPUT
  84507. AS
  84508.     SELECT TOP 1 @Lot = LotBr FROM MagStavr WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art AND VlIzl='V'
  84509.     ORDER BY Datum_Vnes Desc
  84510.  
  84511.  
  84512.  
  84513. Go
  84514. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdiprodmest]'))
  84515. drop procedure [dbo].[sp_najdiprodmest]
  84516.  
  84517. Go
  84518.  
  84519.  
  84520. CREATE              PROCEDURE sp_NajdiProdMest
  84521.     @Opis    varchar(50) = NULL,
  84522.     @Opis2  varchar(50)= null,
  84523.     @BrMotor varchar(50)= null,
  84524.     @BarKod    varchar(50)= null,
  84525.     @Litri integer= null
  84526. AS
  84527.     Declare @SSQL varchar(1000)
  84528.     SET @SSQL = 'SELECT Sifra_Mest, Opis, Opis2, BrMotor, BarKod, Litri
  84529.     FROM ProdMest  WHERE 1=1 '
  84530.     IF @Opis IS NOT NULL
  84531.         SET @SSQL = @SSQL + ' AND Opis LIKE ''%' + @Opis + '%'' '
  84532.     IF @Opis2 IS NOT NULL
  84533.         SET @SSQL = @SSQL + ' AND Opis2 LIKE ''%' + @Opis2 + '%'' '
  84534.     IF @BrMotor IS NOT NULL
  84535.         SET @SSQL = @SSQL + ' AND BrMotor LIKE ''%' + @BrMotor + '%'' '
  84536.     IF @BarKod IS NOT NULL
  84537.         SET @SSQL = @SSQL + ' AND BarKod LIKE ''%' + @BarKod + '%'' '
  84538.     IF @Litri IS NOT NULL
  84539.         SET @SSQL = @SSQL + ' AND Litri LIKE ''%' + @Litri + '%'' '
  84540.     EXEC(@SSQL)
  84541.  
  84542.  
  84543.  
  84544. Go
  84545. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdisledenbrojlistazascanlista]'))
  84546. drop procedure [dbo].[sp_najdisledenbrojlistazascanlista]
  84547.  
  84548. Go
  84549. CREATE PROCEDURE sp_NajdiSledenBrojListaZaScanLista
  84550.     @Sifra_Oe    smallint,
  84551.     @Tip_Lista    smallint,
  84552.     @Broj_Lista    int = 0 OUTPUT
  84553. AS
  84554.     SELECT @Broj_Lista = MAX(Broj_Lista) FROM ScanLista WHERE Sifra_OE=@Sifra_OE AND Tip_Lista=@Tip_Lista
  84555.     IF @Broj_Lista IS NULL SET @Broj_Lista=0
  84556.     SET @Broj_Lista = @Broj_Lista + 1
  84557.  
  84558.  
  84559.  
  84560. Go
  84561. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdislednasifra]'))
  84562. drop procedure [dbo].[sp_najdislednasifra]
  84563.  
  84564. Go
  84565.  
  84566. CREATE PROCEDURE sp_NajdiSlednaSifra
  84567.     @Poc_Sifra    varchar(6)
  84568. AS
  84569.     SELECT Max(Sifra_Art) FROM KatArt 
  84570.     WHERE Sifra_Art LIKE @Poc_Sifra + '%'
  84571.  
  84572.  
  84573.  
  84574. Go
  84575. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_najdixfvidbar]'))
  84576. drop procedure [dbo].[sp_najdixfvidbar]
  84577.  
  84578. Go
  84579.  
  84580.  
  84581.  
  84582.  
  84583. CREATE   PROCEDURE sp_NajdiXFVidBar
  84584.     @Sifra_VidBaranje    smallint    
  84585. AS
  84586.     Select * From XFVidBaranje
  84587.         Where Sifra_VidBaranje=@Sifra_VidBaranje
  84588.  
  84589.  
  84590.  
  84591. Go
  84592. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nal_chk_i_zaf]'))
  84593. drop procedure [dbo].[sp_nal_chk_i_zaf]
  84594.  
  84595. Go
  84596.  
  84597.  
  84598. CREATE  PROCEDURE sp_Nal_Chk_I_Zaf
  84599.    @Sifra_Nal smallint,
  84600.    @Broj_Nal int,
  84601.    @StatZafaten char(1) OUTPUT
  84602. AS
  84603.    Declare @Zafaten char(1)
  84604.    Declare @Najden_Sifra_nal smallint
  84605.    select @Najden_sifrA_nal=Sifra_Nal, @Zafaten=Zafaten from Nalozi
  84606.    WHERE [Sifra_nal]=@Sifra_Nal AND [broj_Nal]=@Broj_Nal
  84607.    if @Najden_sifra_nal is null        -- ne postoi nalogot
  84608.       set @StatZafaten = 'X'
  84609.    else if @Zafaten = 'D'
  84610.       set @StatZafaten = 'D'
  84611.    else
  84612.       begin
  84613.         set @StatZafaten = 'N'
  84614.         update Nalozi
  84615.         set Zafaten = 'D'
  84616.         WHERE [Sifra_nal]=@Sifra_Nal AND [broj_Nal]=@Broj_Nal
  84617.       end 
  84618. RETURN @@ERROR
  84619.  
  84620.  
  84621.  
  84622. Go
  84623. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nal_oslobodi]'))
  84624. drop procedure [dbo].[sp_nal_oslobodi]
  84625.  
  84626. Go
  84627.  
  84628.  
  84629.  
  84630. create  PROCEDURE sp_Nal_Oslobodi
  84631.    @Sifra_Nal smallint,
  84632.    @Broj_Nal int
  84633. AS
  84634.    update Nalozi
  84635.    set Zafaten = 'N'
  84636.    WHERE [Sifra_nal]=@Sifra_Nal AND [broj_Nal]=@Broj_Nal
  84637. RETURN @@ERROR
  84638.  
  84639.  
  84640.  
  84641. Go
  84642. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nalog_proizvodstvo]'))
  84643. drop procedure [dbo].[sp_nalog_proizvodstvo]
  84644.  
  84645. Go
  84646.  
  84647. CREATE  PROCEDURE sp_Nalog_Proizvodstvo
  84648.     @Den        smallint = 1,              -- od 1 do 10
  84649.     @Datum    smalldatetime = Null,
  84650.     @Datum_Vnes1    datetime = Null,
  84651.     @Datum_Vnes2    datetime = Null,
  84652.     @Lokacija    varchar(10) = Null,
  84653.     @DirDistr    char(1) = Null,
  84654.     @Sifra_Gr    char(3) = Null
  84655. As
  84656.     Declare @SSQL as Varchar(8000)
  84657.     Create Table #Tab
  84658.     (
  84659.      Sifra_Art    varchar(20),
  84660.      Kolic        decimal(18,6),
  84661.      SpecKolic1    decimal(18,6),
  84662.      SpecKolic2    decimal(18,6)
  84663.     )
  84664.     Set @SSQL = ' Select P.Sifra_Art, '
  84665.     If @Den = 1
  84666.         Set @SSQL = @SSQL + ' P.Den1 Kolic'
  84667.     Else If @Den = 2
  84668.         Set @SSQL = @SSQL + ' P.Den2 Kolic'
  84669.     Else If @Den = 3
  84670.         Set @SSQL = @SSQL + ' P.Den3 Kolic'
  84671.     Else If @Den = 4
  84672.         Set @SSQL = @SSQL + ' P.Den4 Kolic'
  84673.     Else If @Den = 5
  84674.         Set @SSQL = @SSQL + ' P.Den5 Kolic'
  84675.     Else If @Den = 6
  84676.         Set @SSQL = @SSQL + ' P.Den6 Kolic'
  84677.     Else If @Den = 7
  84678.         Set @SSQL = @SSQL + ' P.Den7 Kolic'
  84679.     Else If @Den = 8
  84680.         Set @SSQL = @SSQL + ' P.Den8 Kolic'
  84681.     Else If @Den = 9
  84682.         Set @SSQL = @SSQL + ' P.Den9 Kolic'
  84683.     Else If @Den = 10
  84684.         Set @SSQL = @SSQL + ' P.Den10 Kolic'
  84685.     Set @SSQL = @SSQL + ', 0, 0 '
  84686.     Set @SSQL = @SSQL + ' From PlanPer P
  84687.                 Inner Join Katart K On K.Sifra_art = P.Sifra_art
  84688.                 Inner Join Podgrupi Pod On Pod.Sifra_Podg = K.Sifra_Podg
  84689.                 Left Outer Join Komint Kup On P.Sifra_Kup = Kup.Sifra_Kup
  84690.                 Where 1=1 '
  84691.     If @Lokacija Is Not Null
  84692.          Begin
  84693.         If @Lokacija = '1'
  84694.             Set @SSQL = @SSQL + ' And ltrim(rtrim(K.Lokacija)) = ''' + ltrim(rtrim(@Lokacija)) + ''' '
  84695.         Else
  84696.             Set @SSQL = @SSQL + ' And (ltrim(rtrim(K.Lokacija)) <> ''1'' Or K.Lokacija is Null) '
  84697.          End
  84698.     If @DirDistr IS NOT NULL
  84699.     Begin
  84700.         If @DirDistr = 'D'
  84701.             Set @SSQL = @SSQL + ' And Kup.DirDistr = ''D'' '    
  84702.         Else
  84703.             Set @SSQL = @SSQL + ' And (Kup.DirDistr IS NULL OR Kup.DirDistr <> ''D'') '
  84704.     End
  84705.     If @Sifra_Gr IS NOT NULL
  84706.         Set @SSQL = @SSQL + ' And Pod.Sifra_Gr = ' + @Sifra_Gr + ' '
  84707.     Insert Into #Tab Exec(@SSQL)
  84708. --------------------------------- Za Naracki vneseni do @Datum_Vnes1 -----------------------------------------------------------------------
  84709.     Set @SSQL = ' Select S.Sifra_art, S.Kolic, 0, 0
  84710.             From StaNarac S
  84711.             Inner Join Naracki N On N.NarId = S.NarId
  84712.             Inner Join Katart K On K.Sifra_art = S.Sifra_Art
  84713.             Inner Join Podgrupi Pod On Pod.Sifra_Podg = K.Sifra_Podg
  84714.             Left Outer Join TipNarac T On T.Sifra_Nar = N.Sifra_Nar
  84715.             Left Outer Join Komint Kup On N.Sifra_Kup = Kup.Sifra_Kup    
  84716.             Where N.Datum_Nar = ''' + cast(@Datum as varchar(30)) + '''
  84717.             And N.Datum_Vnes <= ''' + cast(@Datum_Vnes1 as varchar(35)) + ''' 
  84718.             and T.Sifra_GrNar = 6  '
  84719.     If @Lokacija Is Not Null
  84720.          Begin
  84721.         If @Lokacija = '1'
  84722.             Set @SSQL = @SSQL + ' And ltrim(rtrim(K.Lokacija)) = ''' + ltrim(rtrim(@Lokacija)) + ''' '
  84723.         Else
  84724.             Set @SSQL = @SSQL + ' And (ltrim(rtrim(K.Lokacija)) <> ''1'' Or K.Lokacija is Null) '
  84725.          End
  84726.     If @DirDistr IS NOT NULL
  84727.     Begin
  84728.         If @DirDistr = 'D'
  84729.             Set @SSQL = @SSQL + ' And Kup.DirDistr = ''D'' '    
  84730.         Else
  84731.             Set @SSQL = @SSQL + ' And (Kup.DirDistr IS NULL OR Kup.DirDistr <> ''D'') '
  84732.     End
  84733.     If @Sifra_Gr IS NOT NULL
  84734.         Set @SSQL = @SSQL + ' And Pod.Sifra_Gr = ' + @Sifra_Gr + ' '
  84735.     Insert Into #Tab Exec(@SSQL)
  84736. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  84737. --------------------------------- Za Naracki vneseni od @Datum_Vnes1 do @Datum_Vnes2 -------------------------------------------
  84738.     Set @SSQL = ' Select S.Sifra_art, 0, S.Kolic, 0
  84739.             From StaNarac S
  84740.             Inner Join Naracki N On N.NarId = S.NarId
  84741.             Inner Join Katart K On K.Sifra_art = S.Sifra_Art
  84742.             Inner Join Podgrupi Pod On Pod.Sifra_Podg = K.Sifra_Podg
  84743.             Left Outer Join TipNarac T On T.Sifra_Nar = N.Sifra_Nar
  84744.             Left Outer Join Komint Kup On N.Sifra_Kup = Kup.Sifra_Kup    
  84745.             Where N.Datum_Nar = ''' + cast(@Datum as varchar(30)) + '''
  84746.             And N.Datum_Vnes > ''' + cast(@Datum_Vnes1 as varchar(35)) + ''' 
  84747.             And N.Datum_Vnes <= ''' + cast(@Datum_Vnes2 as varchar(35)) + ''' 
  84748.             and T.Sifra_GrNar = 6  '
  84749.     If @Lokacija Is Not Null
  84750.          Begin
  84751.         If @Lokacija = '1'
  84752.             Set @SSQL = @SSQL + ' And ltrim(rtrim(K.Lokacija)) = ''' + ltrim(rtrim(@Lokacija)) + ''' '
  84753.         Else
  84754.             Set @SSQL = @SSQL + ' And (ltrim(rtrim(K.Lokacija)) <> ''1'' Or K.Lokacija is Null) '
  84755.         End
  84756.     If @DirDistr IS NOT NULL
  84757.     Begin
  84758.         If @DirDistr = 'D'
  84759.             Set @SSQL = @SSQL + ' And Kup.DirDistr = ''D'' '    
  84760.         Else
  84761.             Set @SSQL = @SSQL + ' And (Kup.DirDistr IS NULL OR Kup.DirDistr <> ''D'') '
  84762.     End
  84763.     If @Sifra_Gr IS NOT NULL
  84764.         Set @SSQL = @SSQL + ' And Pod.Sifra_Gr = ' + @Sifra_Gr + ' '
  84765.     Insert Into #Tab Exec(@SSQL)
  84766. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  84767. --------------------------------- Za Naracki vneseni po @Datum_Vnes2 -----------------------------------------------------------------------
  84768.     Set @SSQL = ' Select S.Sifra_art, 0, 0, S.Kolic
  84769.             From StaNarac S
  84770.             Inner Join Naracki N On N.NarId = S.NarId
  84771.             Inner Join Katart K On K.Sifra_art = S.Sifra_Art
  84772.             Inner Join Podgrupi Pod On Pod.Sifra_Podg = K.Sifra_Podg
  84773.             Left Outer Join TipNarac T On T.Sifra_Nar = N.Sifra_Nar
  84774.             Left Outer Join Komint Kup On N.Sifra_Kup = Kup.Sifra_Kup    
  84775.             Where N.Datum_Nar = ''' + cast(@Datum as varchar(30)) + '''
  84776.             And N.Datum_Vnes > ''' + cast(@Datum_Vnes2 as varchar(35)) + ''' 
  84777.             and T.Sifra_GrNar = 6  '
  84778.     If @Lokacija Is Not Null
  84779.          Begin
  84780.         If @Lokacija = '1'
  84781.             Set @SSQL = @SSQL + ' And ltrim(rtrim(K.Lokacija)) = ''' + ltrim(rtrim(@Lokacija)) + ''' '
  84782.         Else
  84783.             Set @SSQL = @SSQL + ' And (ltrim(rtrim(K.Lokacija)) <> ''1'' Or K.Lokacija is Null) '
  84784.          End
  84785.     If @DirDistr IS NOT NULL
  84786.     Begin
  84787.         If @DirDistr = 'D'
  84788.             Set @SSQL = @SSQL + ' And Kup.DirDistr = ''D'' '    
  84789.         Else
  84790.             Set @SSQL = @SSQL + ' And (Kup.DirDistr IS NULL OR Kup.DirDistr <> ''D'') '
  84791.     End
  84792.     If @Sifra_Gr IS NOT NULL
  84793.         Set @SSQL = @SSQL + ' And Pod.Sifra_Gr = ' + @Sifra_Gr + ' '
  84794.     Insert Into #Tab Exec(@SSQL)
  84795. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  84796.     Select T.Sifra_Art, K.ImeArt, K.Drugo1, D.Ime_1, K.Drugo2, D2.Ime_2, Sum(T.Kolic) as KolicDo, Sum(T.SpecKolic1) as KolicOdDo,  Sum(T.SpecKolic2) as KolicPo
  84797.     From #Tab T
  84798.     Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  84799.     Left Outer Join Drugo1 D On D.Sifra_1 = K.Drugo1
  84800.     Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2
  84801.     Group By T.Sifra_Art, K.ImeArt, K.Drugo1, D.Ime_1, K.Drugo2, D2.Ime_2
  84802.  
  84803.  
  84804. Go
  84805. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nalog_pvo]'))
  84806. drop procedure [dbo].[sp_nalog_pvo]
  84807.  
  84808. Go
  84809. CREATE PROCEDURE sp_Nalog_Pvo
  84810.     @Sifra_art    varchar(20),
  84811.     @Den        smallint,
  84812.     @DirDistr    char(1) = 'D'
  84813.  AS
  84814.     Declare @SSQL varchar(2000)
  84815.     Set @SSQL = ' Select P.Sifra_Art, K.ImeArt, P.Sifra_Kup, Kup.ImeKup, '
  84816.     If @Den = 1
  84817.         Set @SSQL = @SSQL + ' P.Den1 Kolic'
  84818.     Else If @Den = 2
  84819.         Set @SSQL = @SSQL + ' P.Den2 Kolic'
  84820.     Else If @Den = 3
  84821.         Set @SSQL = @SSQL + ' P.Den3 Kolic'
  84822.     Else If @Den = 4
  84823.         Set @SSQL = @SSQL + ' P.Den4 Kolic'
  84824.     Else If @Den = 5
  84825.         Set @SSQL = @SSQL + ' P.Den5 Kolic'
  84826.     Else If @Den = 6
  84827.         Set @SSQL = @SSQL + ' P.Den6 Kolic'
  84828.     Else If @Den = 7
  84829.         Set @SSQL = @SSQL + ' P.Den7 Kolic'
  84830.     Else If @Den = 8
  84831.         Set @SSQL = @SSQL + ' P.Den8 Kolic'
  84832.     Else If @Den = 9
  84833.         Set @SSQL = @SSQL + ' P.Den9 Kolic'
  84834.     Else If @Den = 10
  84835.         Set @SSQL = @SSQL + ' P.Den10 Kolic'
  84836.     Set @SSQL = @SSQL + ' From PlanPer P
  84837.                 Inner Join Katart K On K.Sifra_art = P.Sifra_art
  84838.                 Left Outer Join Komint Kup On P.Sifra_Kup = Kup.Sifra_Kup
  84839.                 Where 1=1 '
  84840.     If @Sifra_art Is Not Null
  84841.         Set @SSQL = @SSQL + ' And P.Sifra_art = ''' + @Sifra_art + ''' '
  84842.     If @DirDistr IS NOT NULL
  84843.     Begin
  84844.         If @DirDistr = 'D'
  84845.             Set @SSQL = @SSQL + ' And Kup.DirDistr = ''D'' '    
  84846.         Else
  84847.             Set @SSQL = @SSQL + ' And (Kup.DirDistr IS NULL OR Kup.DirDistr <> ''D'') '
  84848.     End
  84849.     Exec(@SSQL)
  84850.  
  84851.  
  84852.  
  84853. Go
  84854. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nalog_relacija]'))
  84855. drop procedure [dbo].[sp_nalog_relacija]
  84856.  
  84857. Go
  84858. CREATE    PROCEDURE sp_Nalog_Relacija
  84859.     @Sifra_Oe    smallint = 1,
  84860.     @Den        smallint = Null,          -- od 1 do 10
  84861.     @Datum    smalldatetime = Null,
  84862.     @Sifra_reg_Od    smallint = Null,          -- ako e sifra_oe 1 togas filter po kdrugo4 od komint i kobjekti, a ako e 101 togas sifra_reg
  84863.     @Sifra_reg_Do    smallint = Null,          -- ako e sifra_oe 1 togas filter po kdrugo4 od komint i kobjekti, a ako e 101 togas sifra_reg
  84864.     @KojaIsporaka    char(1) = '1',              -- 1 ili 2
  84865.     @BezRelacija    char(1) = 'N',
  84866.     @KojaFirma    char(2) = 'ZL',         -- ZL - Zito Leb    ZV - Zito Vardar
  84867.     @Sifra_Nar    smallint = Null,
  84868.     @Lokacija    varchar(10) = Null,
  84869.     @KFLokacija    char(1) = 'N'
  84870. As
  84871.     Declare @SSQL as Varchar(2000)
  84872.     Declare @SSQL1 as Varchar(2000)
  84873.     Set @SSQL = ''
  84874.     Set @SSQL1 = ''
  84875.     Create Table #Tab
  84876.     (
  84877.      Sifra_Art    varchar(20),
  84878.      Kolic        decimal(18,6),
  84879.      Sifra_Kup    Char(6),
  84880.      Sifra_Obj    smallint,
  84881.      Sifra_Nar    smallint,
  84882.      Broj_Nar    Int,
  84883.      Identif_br    varchar(25)
  84884.     )
  84885. ------------------------------------------------------------------------------------------------------------------ U S L O V -------------------------------------------------------------------------------------------------------------------
  84886.     If @Sifra_Oe Is Not Null And @KojaFirma = 'ZL'
  84887.         Begin
  84888.         If @Sifra_oe = 1
  84889.             Set @SSQL1 = @SSQL1 + ' And ltrim(rtrim(K.Lokacija)) = ''1'' '
  84890.         Else
  84891.             Set @SSQL1 = @SSQL1 + ' And (ltrim(rtrim(K.Lokacija)) <> ''1'' Or K.Lokacija is Null) '
  84892.          End
  84893.     If @Lokacija Is Not Null And (@Sifra_Oe <> 1 Or @Sifra_Oe Is Null)
  84894.         If @KFLokacija = 'D'
  84895.             Set @SSQL1 = @SSQL1 + ' And (ltrim(rtrim(K.Lokacija)) <> ''' + @Lokacija + ''' Or K.Lokacija Is Null) ' 
  84896.         Else
  84897.             Set @SSQL1 = @SSQL1 + ' And ltrim(rtrim(K.Lokacija)) = ''' + @Lokacija + ''' '
  84898.     If @Sifra_Reg_Od Is Not Null
  84899.          Begin
  84900.         If @Sifra_Oe = 1 And @KojaFirma = 'ZL'
  84901.             Set @SSQL1 = @SSQL1 + ' And ((KO.Kdrugo4 Is Not Null And KO.KDrugo4 >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''') 
  84902.                         OR ( KO.KDrugo4 Is Null and KUP.KDrugo4 >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''')) '                         
  84903.            Else
  84904.             Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''') 
  84905.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''')) '     
  84906.                End
  84907.     If @Sifra_Reg_Do Is Not Null 
  84908.          Begin
  84909.         If @Sifra_Oe = 1 And @KojaFirma = 'ZL'
  84910.             Set @SSQL1 = @SSQL1 + ' And ((KO.Kdrugo4 Is Not Null And KO.KDrugo4 <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''') 
  84911.                         OR ( KO.KDrugo4 Is Null and KUP.KDrugo4 <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''')) '                         
  84912.            Else
  84913.             Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''') 
  84914.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''')) '     
  84915.                End
  84916.     If @BezRelacija = 'D'
  84917.          Begin
  84918.         If @Sifra_Oe = 1 And @KojaFirma = 'ZL'
  84919.             Set @SSQL1 = @SSQL1 + ' And (KO.Kdrugo4 Is Null And KUP.KDrugo4 is Null) '
  84920.            Else
  84921.             Set @SSQL1 = @SSQL1 + ' And (KO.Sifra_Reg Is Null And KUP.Sifra_Reg Is Null) '     
  84922.                End
  84923. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  84924.     If @KojaIsporaka = '2'
  84925.            Begin
  84926.         Set @SSQL = ' Select S.Sifra_Art, S.kolic, N.Sifra_Kup, N.Sifra_Obj, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br
  84927.                 From StaNarac S
  84928.                 Inner Join Naracki N On N.NarId = S.NarId
  84929.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  84930.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = N.Sifra_Kup
  84931.                 Left Outer Join KObjekti KO On Ko.Sifra_Kup = N.Sifra_Kup and KO.Sifra_Obj = N.Sifra_Obj
  84932.                 Where N.Datum_Nar = ''' + cast(@Datum as varchar(30)) + ''' 
  84933.                 and N.Smena = ''2'' '
  84934.         If @KojaFirma <> 'ZL' And @Sifra_Oe Is Not Null
  84935.             Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  84936.         If @Sifra_Nar Is Not Null
  84937.             Set @SSQL = @SSQL + ' And S.Sifra_Nar = ' + Cast(@Sifra_Nar as varchar(6)) + ' '
  84938.         Insert Into #Tab Exec(@SSQL + @SSQL1)
  84939.            End
  84940.     If @KojaIsporaka = '1'
  84941.            Begin
  84942.         Set @SSQL = ' Select S.Sifra_Art, S.kolic, N.Sifra_kup, N.Sifra_Obj, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br
  84943.                 From StaNarac S
  84944.                 Inner Join Naracki N On N.NarId = S.NarId
  84945.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  84946.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = N.Sifra_Kup
  84947.                 Left Outer Join KObjekti KO On Ko.Sifra_Kup = N.Sifra_Kup and KO.Sifra_Obj = N.Sifra_Obj
  84948.                 Where N.Datum_Nar = ''' + cast(@Datum as varchar(30)) + ''' 
  84949.                 and (N.Smena <> ''2'' or N.Smena is Null) '
  84950.         If @KojaFirma <> 'ZL' And @Sifra_Oe Is Not Null
  84951.             Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  84952.         If @Sifra_Nar Is Not Null
  84953.             Set @SSQL = @SSQL + ' And S.Sifra_Nar = ' + Cast(@Sifra_Nar as varchar(6)) + ' '
  84954.         Insert Into #Tab Exec(@SSQL + @SSQL1)
  84955.  
  84956.         Set @SSQL = ' Select P.Sifra_Art, '
  84957.         If @Den = 1
  84958.             Set @SSQL = @SSQL + ' P.Den1 Kolic,'
  84959.         Else If @Den = 2
  84960.             Set @SSQL = @SSQL + ' P.Den2 Kolic,'
  84961.         Else If @Den = 3
  84962.             Set @SSQL = @SSQL + ' P.Den3 Kolic,'
  84963.         Else If @Den = 4
  84964.             Set @SSQL = @SSQL + ' P.Den4 Kolic,'
  84965.         Else If @Den = 5
  84966.             Set @SSQL = @SSQL + ' P.Den5 Kolic,'
  84967.         Else If @Den = 6
  84968.             Set @SSQL = @SSQL + ' P.Den6 Kolic,'
  84969.         Else If @Den = 7
  84970.             Set @SSQL = @SSQL + ' P.Den7 Kolic,'
  84971.         Else If @Den = 8
  84972.             Set @SSQL = @SSQL + ' P.Den8 Kolic,'
  84973.         Else If @Den = 9
  84974.             Set @SSQL = @SSQL + ' P.Den9 Kolic,'
  84975.         Else If @Den = 10
  84976.             Set @SSQL = @SSQL + ' P.Den10 Kolic,'
  84977.         Set @SSQL = @SSQL + ' P.Sifra_Kup, P.Sifra_Obj, 0, 0, '' ''
  84978.                 From PlanPer P
  84979.                 Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  84980.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = P.Sifra_Kup
  84981.                 Left Outer Join KObjekti KO On Ko.Sifra_Kup = P.Sifra_Kup and KO.Sifra_Obj = P.Sifra_Obj 
  84982.                 Where 1=1 '
  84983.         Insert Into #Tab Exec(@SSQL + @SSQL1)
  84984.            End
  84985.     If @KojaIsporaka = '0'
  84986.            Begin
  84987.         Set @SSQL = ' Select S.Sifra_Art, S.kolic, N.Sifra_kup,  N.Sifra_Obj, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br
  84988.                 From StaNarac S
  84989.                 Inner Join Naracki N On N.NarId = S.NarId
  84990.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  84991.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = N.Sifra_Kup
  84992.                 Left Outer Join KObjekti KO On Ko.Sifra_Kup = N.Sifra_Kup and KO.Sifra_Obj = N.Sifra_Obj
  84993.                 Where N.Datum_Nar = ''' + cast(@Datum as varchar(30)) + ''' '
  84994.         If @KojaFirma <> 'ZL' And @Sifra_Oe Is Not Null
  84995.             Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  84996.         If @Sifra_Nar Is Not Null
  84997.             Set @SSQL = @SSQL + ' And S.Sifra_Nar = ' + Cast(@Sifra_Nar as varchar(6)) + ' '
  84998.         Insert Into #Tab Exec(@SSQL + @SSQL1)
  84999.  
  85000.         Set @SSQL = ' Select P.Sifra_Art, '
  85001.         If @Den = 1
  85002.             Set @SSQL = @SSQL + ' P.Den1 Kolic,'
  85003.         Else If @Den = 2
  85004.             Set @SSQL = @SSQL + ' P.Den2 Kolic,'
  85005.         Else If @Den = 3
  85006.             Set @SSQL = @SSQL + ' P.Den3 Kolic,'
  85007.         Else If @Den = 4
  85008.             Set @SSQL = @SSQL + ' P.Den4 Kolic,'
  85009.         Else If @Den = 5
  85010.             Set @SSQL = @SSQL + ' P.Den5 Kolic,'
  85011.         Else If @Den = 6
  85012.             Set @SSQL = @SSQL + ' P.Den6 Kolic,'
  85013.         Else If @Den = 7
  85014.             Set @SSQL = @SSQL + ' P.Den7 Kolic,'
  85015.         Else If @Den = 8
  85016.             Set @SSQL = @SSQL + ' P.Den8 Kolic,'
  85017.         Else If @Den = 9
  85018.             Set @SSQL = @SSQL + ' P.Den9 Kolic,'
  85019.         Else If @Den = 10
  85020.             Set @SSQL = @SSQL + ' P.Den10 Kolic,'
  85021.         Set @SSQL = @SSQL + ' P.Sifra_Kup, P.Sifra_Obj, 0, 0, '' ''
  85022.                 From PlanPer P
  85023.                 Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  85024.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = P.Sifra_Kup
  85025.                 Left Outer Join KObjekti KO On Ko.Sifra_Kup = P.Sifra_Kup and KO.Sifra_Obj = P.Sifra_Obj
  85026.                 Where 1=1 '
  85027.         Insert Into #Tab Exec(@SSQL + @SSQL1)
  85028.            End
  85029.  
  85030.     Set @SSQL = ' Select T.Sifra_Art, K.ImeArt, K.Drugo1, T.Sifra_Kup, Kup.ImeKup, T.Sifra_Obj, KO.ImeObj, T.Sifra_Nar, T.Broj_Nar, T.Identif_Br, Sum(T.Kolic) Kolicina, '
  85031.     If @Sifra_Oe = 1 And @KojaFirma = 'ZL'
  85032.         Set @SSQL = @SSQL + ' KO.KDrugo4 Sifra_RegObj,  DR4.Ime_4K ImeRegionObj, Kup.KDrugo4 Sifra_regKup, D4.Ime_4K ImeRegionKup '
  85033.     Else
  85034.         Set @SSQL = @SSQL + ' KO.Sifra_reg Sifra_RegObj, GR.ImeRegion ImeRegionObj, Kup.Sifra_Reg Sifra_regKup, R.ImeRegion ImeRegionKup '
  85035.     Set @SSQL = @SSQL + ' From #Tab T
  85036.                 Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  85037.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = T.Sifra_Kup
  85038.                 Left Outer Join KObjekti KO On Ko.Sifra_Kup = T.Sifra_Kup and KO.Sifra_Obj = T.Sifra_Obj '
  85039.     If @Sifra_Oe = 1 And @KojaFirma = 'ZL'
  85040.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo4 D4 On D4.Sifra_4k = Kup.KDrugo4 
  85041.                      Left Outer Join KDrugo4 DR4 On DR4.Sifra_4k = KO.KDrugo4 '
  85042.     Else
  85043.         Set @SSQL = @SSQL + ' Left Outer Join Gregion R On R.Sifra_reg = Kup.Sifra_reg 
  85044.                      Left Outer Join Gregion GR On GR.Sifra_reg = KO.Sifra_reg '
  85045.     Set @SSQL = @SSQL + ' Group By T.Sifra_Art, K.ImeArt, K.Drugo1, T.Sifra_Kup, Kup.ImeKup, T.Sifra_Obj, KO.ImeObj, T.Sifra_Nar, T.Broj_Nar, T.Identif_Br, '
  85046.     If @Sifra_Oe = 1 And @KojaFirma = 'ZL'
  85047.         Set @SSQL = @SSQL + ' KO.KDrugo4,  DR4.Ime_4K, Kup.KDrugo4, D4.Ime_4K '
  85048.     Else
  85049.         Set @SSQL = @SSQL + ' KO.Sifra_reg, GR.ImeRegion, Kup.Sifra_Reg, R.ImeRegion '
  85050.     Exec(@SSQL)
  85051. Go
  85052. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naplata_po_divizii]'))
  85053. drop procedure [dbo].[sp_naplata_po_divizii]
  85054.  
  85055. Go
  85056. CREATE PROCEDURE  sp_Naplata_Po_Divizii
  85057.     @Sifra_Nal        smallint = Null,
  85058.     @DatumUplOd        smalldatetime = Null,
  85059.     @DatumUplDo        smalldatetime = Null
  85060. AS
  85061.     Declare @SSQL as varchar(8000)
  85062.     Set @SSQL = 'SELECT A.Sifra_Kup, Kup.ImeKup, A.Sifra_Div, Div.ImeDiv, Sum(A.Pobaruva) IznosUpl
  85063.         FROM AnFinDok A
  85064.         Inner Join TipDok TD On TD.Sifra_Dok=A.Sifra_Dok And TD.TipDok=2 
  85065.         Left Outer Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  85066.         Left Outer Join Divizii Div On Div.Sifra_Div=A.Sifra_Div
  85067.         Where A.Sifra_Za=1 '
  85068.     If @Sifra_Nal Is Not Null
  85069.         Set @SSQL = @SSQL + ' And A.Sifra_Nal = ' + Cast(@Sifra_Nal as varchar(6)) + ' '
  85070.     If @DatumUplOd Is Not Null
  85071.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + cast(@DatumUplOd as varchar(30)) + ''' '
  85072.     If @DatumUplDo Is Not Null
  85073.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + cast(@DatumUplDo as varchar(30)) + ''' '
  85074.     Set @SSQL=@SSQL + ' Group By A.Sifra_Kup, Kup.ImeKup, A.Sifra_Div, Div.ImeDiv '
  85075.     Exec (@SSQL)
  85076.  
  85077.  
  85078. Go
  85079. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naplatazaoe]'))
  85080. drop procedure [dbo].[sp_naplatazaoe]
  85081.  
  85082. Go
  85083.  
  85084. CREATE     PROCEDURE sp_NaplataZaOE
  85085.     @Sifra_OE    smallint,
  85086.     @KolkuDena    smallint = 7,
  85087.     @PoPatOdKup    char(1) = 'D',
  85088.     @Kto_Anal    char(10)=NULL
  85089. AS
  85090. CREATE TABLE #TmpKta (Kto_Anal char(10))
  85091. IF @Kto_Anal IS NOT NULL 
  85092.     INSERT INTO #TmpKta VALUES (@Kto_Anal)
  85093. ELSE
  85094.     INSERT INTO #TmpKta SELECT Kto_Anal FROM Anal WHERE DaliKupuv='K'
  85095.  
  85096. IF  @PoPatOdKup = 'D'  
  85097.     SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Kup, A.Pobaruva, A.Datum_dok
  85098.     FROM AnFinDok A INNER JOIN #TmpKta T ON A.Kto=T.Kto_Anal
  85099.     WHERE A.Datum_Dok >= DateAdd(day, @KolkuDena * -1, GetDate())
  85100.     AND A.Sifra_Za=1 AND A.Pobaruva <> 0  AND  
  85101.     (A.Sifra_Kup IN (SELECT Sifra_Kup FROM Komint WHERE Sifra_Pat = @Sifra_OE OR Sifra_Pat2 = @Sifra_OE) OR
  85102.     A.Sifra_Kup IN (SELECT Sifra_Kup from KObjekti Where (Sifra_Pat = @Sifra_OE OR Sifra_Pat2=@Sifra_OE )) )
  85103. ELSE IF @PoPatOdKup = 'S'
  85104.     SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Kup, A.Pobaruva, A.Datum_dok
  85105.     FROM AnFinDok A  INNER JOIN #TmpKta T ON A.Kto=T.Kto_Anal
  85106.     WHERE A. Datum_Dok >= DateAdd(day, @KolkuDena * -1, GetDate())
  85107.     AND A.Sifra_Za=1 AND A.Pobaruva <> 0
  85108. ELSE
  85109.     SELECT A.Sifra_OE, A.Sifra_Dok, A.Broj_Dok, A.Sifra_Kup, A.Pobaruva, A.Datum_dok
  85110.     FROM AnFinDok A  INNER JOIN #TmpKta T ON A.Kto=T.Kto_Anal
  85111.     WHERE A.Sifra_OE = @Sifra_OE AND A. Datum_Dok >= DateAdd(day, @KolkuDena * -1, GetDate())
  85112.     AND A.Sifra_Za=1 AND A.Pobaruva <> 0
  85113.  
  85114.  
  85115.  
  85116.  
  85117.  
  85118.  
  85119.  
  85120. Go
  85121. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_napravifakturi]'))
  85122. drop procedure [dbo].[sp_napravifakturi]
  85123.  
  85124. Go
  85125.  
  85126. CREATE  PROCEDURE [dbo].[sp_NapraviFakturi]
  85127.     @Mesec    smallint,
  85128.     @Godina    smallint,
  85129.     @Datum_Fra smalldatetime,
  85130.     @Posebno_BezPartic char (1) = 'N'
  85131. AS
  85132.  
  85133. CREATE TABLE #TmpFak
  85134. (Faktura_Br    char(6))
  85135.  
  85136. CREATE TABLE #TmpRcp
  85137. (Sifra_Apteka char(2), 
  85138.  Broj_Recept int, 
  85139.  Rangiran char(1), 
  85140.  Sifra_PodrSluzba char(4),
  85141.  BezPartic char(1),
  85142.  SifrA_Apteka_Kasa char(2),
  85143.  Specifika    char(1))
  85144.  
  85145. INSERT INTO #TmpRcp
  85146. Select  R.SifrA_APteka, R.Broj_Recept, R.Rangiran, P.Sifra_PodrSluzba_Fakt, R.BezPartic, R.Sifra_Apteka,
  85147.         case when K.VoPDA = 'D' then '2' else '1' end
  85148. From Recepti R 
  85149. INNER JOIN PodracniSluzbi P 
  85150.     ON Substring(R.Sifra_Kompanija,1,4) = P.Sifra_PodrSluzba
  85151. left outer join Katart K
  85152.     on R.Sifra_Art = K.Sifra_Art
  85153. WHERE Specif_Br IS NULL AND Datum_Izdav < DateAdd(month, 1, dbo.fn_NapraviDatum(@Godina, @Mesec, 1)) 
  85154. ORDER BY P.Sifra_PodrSluzba_Fakt, case when K.VoPDA = 'D' then '2' else '1' end, R.BezPartic, R.Broj_Recept
  85155. ---- Do Jun 9, 10  ORDER BY R.Sifra_Apteka, P.Sifra_PodrSluzba_Fakt, R.BezPartic, R.Broj_Recept
  85156.  
  85157. Declare @Faktura_Br smallint
  85158. Declare @Rbr_Vo_Specif    smallint
  85159. Declare @Specif_Br    int
  85160. Declare @Sifra_Apt char(2)
  85161. Declare @Sifra_Apt_Kasa char(2)
  85162. Declare @Broj_Recept int
  85163. Declare @PodrSluzba char(4)
  85164. Declare @Rangiran char(1)
  85165. Declare @Sifra_Apt1 char(2)
  85166. Declare @PodrSluzba1 char(4)
  85167. Declare @Rangiran1 char(1)
  85168. Declare @Rbr smallint
  85169. Declare @BezPartic char(1)
  85170. Declare @BezPartic1 char(1)
  85171. Declare @Specifika char(1)
  85172. Declare @Specifika1 char(1)
  85173.  
  85174. --SET @Datum_Fra = dbo.fn_VratiDatumOdDo(@Godina, @Mesec, 31)
  85175.  
  85176. SELECT @Faktura_Br = MAX(Cast(Faktura_Br as int)) FROM Faktura WHERE Godina_Fra=@Godina
  85177. IF @Faktura_Br IS NULL SET @Faktura_Br =0
  85178.  
  85179. SELECT @Specif_Br = MAX(Cast(Specif_Br as int)) FROM Specifikacii WHERE Godina_Fra=@Godina
  85180. IF @Specif_Br IS NULL SET @Specif_Br =0
  85181.  
  85182. SET @Sifra_Apt1=''
  85183. SET @PodrSluzba1=''
  85184. set @Specifika1 = ''
  85185. if @POsebno_BezPartic = 'D'
  85186.     Declare TabRcp Cursor Fast_Forward For
  85187.     Select Sifra_Apteka, Broj_Recept, Rangiran, Sifra_PodrSluzba, BezPartic, Sifra_Apteka_Kasa, Specifika
  85188.     From #TmpRcp 
  85189.     --ORDER BY Sifra_Apteka, Sifra_PodrSluzba, BezPartic, Broj_Recept
  85190.     ORDER BY Sifra_PodrSluzba, Specifika, BezPartic, SifrA_Apteka, Broj_Recept
  85191. else
  85192.     -- Izgleda sekade OVDE RABOTI   DK AUg 30, 2010
  85193.     Declare TabRcp Cursor Fast_Forward For
  85194.     Select Sifra_Apteka, Broj_Recept, Rangiran, Sifra_PodrSluzba, BezPartic, Sifra_Apteka_Kasa, Specifika
  85195.     From #TmpRcp 
  85196.     ORDER BY Sifra_PodrSluzba, Specifika, Sifra_Apteka, BezPartic, Broj_Recept
  85197.  
  85198. Declare @PocBroj int
  85199. Declare @KrBroj int
  85200. Declare @KolkuRecepti int
  85201.  
  85202. Declare @DaliPrva int
  85203. set @DaliPrva = 1
  85204.  
  85205. Declare @ForsFaktura int
  85206.  
  85207. Open TabRcp
  85208. Fetch Next From TabRcp Into @Sifra_Apt, @Broj_Recept, @Rangiran, @PodrSluzba, @BezPartic, @Sifra_Apt_Kasa, @Specifika
  85209. While @@Fetch_Status = 0
  85210. Begin            
  85211.     if @BezPartic is null or @BezPartic <> 'D'
  85212.         set @BezPartic = ''
  85213.  
  85214.     --IF @Sifra_Apt1<>@Sifra_Apt OR @PodrSluzba1<>@PodrSluzba or (@Posebno_BezPartic = 'D' and @BezPartic1 <> @BezPartic)
  85215.     IF @PodrSluzba1<>@PodrSluzba or (@Posebno_BezPartic = 'D' and @BezPartic1 <> @BezPartic)
  85216.         or @Specifika1 <> @Specifika
  85217.     Begin
  85218.         if @DaliPrva = 1
  85219.             set @DaliPrva = 0
  85220.         else    -- Vo prethodnata specifikacija postavi broj na recepti i poc-kr broj
  85221.             update Specifikacii
  85222.             set Poc_Broj_Recept = @PocBroj, Kr_Broj_Recept = @KrBroj, Kolku_Recepti = @KolkuRecepti
  85223.             where Godina_Fra = @Godina and Specif_Br = @Specif_Br
  85224.  
  85225.         SET @Sifra_Apt1=@Sifra_Apt 
  85226.         SET @PodrSluzba1=@PodrSluzba
  85227.         SET @Rangiran1= @Rangiran
  85228.         SET @BezPartic1= @BezPartic
  85229.         set @Specifika1 = @Specifika
  85230.  
  85231.         SET @Rbr = 0
  85232.         SET @Specif_Br = @Specif_Br + 1
  85233.         SET @Faktura_Br = @Faktura_Br + 1
  85234.  
  85235.         set @PocBroj = @Broj_Recept
  85236.         set @KolkuRecepti = 0
  85237.  
  85238.         INSERT INTO Faktura (Godina_Fra, Faktura_Br, Mesec_Fra, Datum_Fra, Sifra_PodrSluzba_Fakt)
  85239.         VALUES (@Godina, @Faktura_Br, @Mesec, @Datum_Fra, @PodrSluzba)
  85240.  
  85241.         INSERT INTO #TmpFak (faktura_Br) VALUES (@Faktura_Br)
  85242.  
  85243.         INSERT INTO Specifikacii (Godina_Fra, Faktura_Br, Rangiran, Specif_Br, Sifra_Apteka, SpecLek)
  85244.         VALUES (@Godina, @Faktura_Br, @Rangiran, @Specif_Br, @Sifra_Apt, @Specifika)
  85245.     End
  85246.  
  85247.     IF @Rbr >= 500 OR @BezPartic <> @BezPartic1 or @Specifika <> @Specifika1 or @Sifra_Apt1<>@Sifra_Apt
  85248.         or (@Rbr > 400 and @Broj_Recept % 500 = 600)
  85249.     Begin
  85250.         if @DaliPrva = 1
  85251.             set @DaliPrva = 0
  85252.         else    -- Vo prethodnata specifikacija postavi broj na recepti i poc-kr broj
  85253.             update Specifikacii
  85254.             set Poc_Broj_Recept = @PocBroj, Kr_Broj_Recept = @KrBroj, Kolku_Recepti = @KolkuRecepti
  85255.             where Godina_Fra = @Godina and Specif_Br = @Specif_Br
  85256.  
  85257.         set @ForsFaktura = 0
  85258.         if @BezPartic <> @BezPartic1 or @Specifika <> @Specifika1
  85259.             set @ForsFaktura = 1
  85260.  
  85261.         SET @Rbr = 0
  85262.         SET @Rangiran1 = @Rangiran
  85263.         SET @BezPartic1 = @BezPartic
  85264.         set @Specifika1 = @Specifika
  85265.         SET @Sifra_Apt1=@Sifra_Apt 
  85266.  
  85267.         SET @Specif_Br = @Specif_Br + 1
  85268.  
  85269.         set @PocBroj = @Broj_Recept
  85270.         set @KolkuRecepti = 0
  85271.  
  85272.         if @ForsFaktura = 1
  85273.             begin
  85274.             SET @Faktura_Br = @Faktura_Br + 1
  85275.  
  85276.             INSERT INTO Faktura (Godina_Fra, Faktura_Br, Mesec_Fra, Datum_Fra, Sifra_PodrSluzba_Fakt)
  85277.             VALUES (@Godina, @Faktura_Br, @Mesec, @Datum_Fra, @PodrSluzba)
  85278.  
  85279.             INSERT INTO #TmpFak (faktura_Br) VALUES (@Faktura_Br)
  85280.             end
  85281.  
  85282.         INSERT INTO Specifikacii (Godina_Fra, Faktura_Br, Rangiran, Specif_Br, Sifra_Apteka, BezPartic, SpecLek)
  85283.         VALUES (@Godina, @Faktura_Br, @Rangiran, @Specif_Br, @Sifra_Apt, @BezPartic, @Specifika)
  85284.     End
  85285.  
  85286.     set @KrBroj = @Broj_Recept
  85287.     set @KolkuRecepti = @KolkuRecepti + 1
  85288.  
  85289.     SET @Rbr = @Rbr + 1
  85290.     UPDATE Recepti 
  85291.     SET Faktura_Br = @Faktura_Br, Godina_Fra = @Godina, Mesec_Fra = @Mesec, 
  85292.             Specif_Br = @Specif_Br, Rbr_Vo_Specif = @Rbr
  85293.     WHERE Sifra_Apteka = @Sifra_Apt AND Broj_Recept = @Broj_Recept
  85294.  
  85295.     Fetch Next From TabRcp Into @Sifra_Apt, @Broj_Recept, @Rangiran, @PodrSluzba, @BezPartic, @Sifra_Apt_Kasa, @Specifika
  85296. End
  85297.  
  85298. if @DaliPrva = 1
  85299.     set @DaliPrva = 0
  85300. else    -- Vo prethodnata specifikacija postavi broj na recepti i poc-kr broj
  85301.     update Specifikacii
  85302.     set Poc_Broj_Recept = @PocBroj, Kr_Broj_Recept = @KrBroj, Kolku_Recepti = @KolkuRecepti
  85303.     where Godina_Fra = @Godina and Specif_Br = @Specif_Br
  85304.  
  85305. Close TabRcp
  85306. Deallocate TabRcp
  85307.  
  85308. CREATE TABLE #TmpSpec
  85309. (Godina_Fra smallint,
  85310.  Specif_Br char(6),
  85311.  NabVr_BezDDV decimal(18, 2),
  85312.  Iznos_Marza decimal(18, 2),
  85313.  Osnovica_DDV decimal(18, 2),
  85314.  Iznos_DDV decimal(18, 2),
  85315.  Vk_Iznos decimal(18, 2),
  85316.  Vk_Partic decimal(18, 2),
  85317.  Vk_ZaNaplata decimal(18, 2),
  85318.  Presm_Partic decimal(18, 2))
  85319. INSERT INTO #TmpSpec 
  85320. SELECT Godina_Fra, Specif_Br, SUM(Iznos_Tender), SUM(Iznos_Marza), SUM(Osnov_DDV), SUM(Iznos_na_DDV), SUM(Iznos_So_DDV), SUM(Naplat_Partic), SUM(Iznos_So_DDV), SUM(Iznos_Partic)
  85321. FROM Recepti 
  85322. WHERE Godina_Fra=@Godina AND Faktura_Br IN (SELECT Faktura_Br FROM #TmpFak)
  85323. GROUP BY Godina_Fra, Specif_Br
  85324. UPDATE Specifikacii SET NabVr_BezDDV= T.NabVr_BezDDV, Iznos_Marza = T.Iznos_Marza, Osnovica_DDV= T.Osnovica_DDV,
  85325.     Iznos_DDV =T.Iznos_DDV, Vk_Iznos =dbo.fn_Zaokr5(T.Vk_Iznos), Vk_Partic =dbo.fn_Zaokr5(T.Vk_Partic), Vk_ZaNaplata = dbo.fn_Zaokr5(T.Vk_ZaNaplata), Vk_PresmParticip=dbo.fn_Zaokr5(T.Presm_Partic)
  85326. FROM #TmpSpec T WHERE Specifikacii.Godina_Fra = T.Godina_Fra AND Specifikacii.Specif_Br = T.Specif_Br
  85327. SELECT * FROM #TmpFak
  85328.  
  85329.  
  85330.  
  85331.  
  85332.  
  85333.  
  85334.  
  85335.  
  85336.  
  85337.  
  85338.  
  85339. Go
  85340. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_napravifakturi_1]'))
  85341. drop procedure [dbo].[sp_napravifakturi_1]
  85342.  
  85343. Go
  85344.  
  85345.  
  85346. create   PROCEDURE sp_NapraviFakturi_1
  85347.     @Mesec    smallint,
  85348.     @Godina    smallint,
  85349.     @Datum_Fra smalldatetime,
  85350.     @Posebno_BezPartic char (1) = 'N'
  85351. AS
  85352.  
  85353. CREATE TABLE #TmpFak
  85354. (Faktura_Br    char(6))
  85355. CREATE TABLE #TmpRcp
  85356. (Sifra_Apteka char(2), 
  85357.  Broj_Recept int, 
  85358.  Sifra_PodrSluzba char(4),
  85359.  BezPartic char(1),
  85360.  Spc_Specif int)
  85361.  
  85362. INSERT INTO #TmpRcp
  85363. Select  R.Sifra_Apteka, R.Broj_Recept, cast (R.Spc_Podr as char(4)), R.BezPartic, R.Spc_Specif
  85364. From Recepti R 
  85365. WHERE Specif_Br IS NULL AND Datum_Izdav < DateAdd(month, 1, dbo.fn_NapraviDatum(@Godina, @Mesec,1)) 
  85366. ORDER BY R.Sifra_Apteka, R.Spc_Podr, R.Spc_Specif, R.BezPartic, R.Broj_Recept
  85367.  
  85368. Declare @Faktura_Br smallint
  85369. Declare @Rbr_Vo_Specif    smallint
  85370. Declare @Specif_Br    int
  85371. Declare @Broj_Recept int
  85372. Declare @Rbr smallint
  85373. Declare @Sifra_Apt char(2)
  85374. Declare @PodrSluzba char(4)
  85375. Declare @Spc_Specif int
  85376. Declare @BezPartic char(1)
  85377. Declare @Sifra_Apt1 char(2)
  85378. Declare @PodrSluzba1 char(4)
  85379. Declare @Spc_Specif1 int
  85380. Declare @BezPartic1 char(1)
  85381. --SET @Datum_Fra = dbo.fn_VratiDatumOdDo(@Godina, @Mesec, 31)
  85382.  
  85383. SELECT @Faktura_Br = MAX(Cast(Faktura_Br as int)) 
  85384. FROM Faktura 
  85385. WHERE Godina_Fra=@Godina
  85386.  
  85387. IF @Faktura_Br IS NULL 
  85388.     SET @Faktura_Br =0
  85389.  
  85390. SELECT @Specif_Br = MAX(Cast(Specif_Br as int)) 
  85391. FROM Specifikacii 
  85392. WHERE Godina_Fra=@Godina
  85393.  
  85394. IF @Specif_Br IS NULL 
  85395.     SET @Specif_Br =0
  85396.  
  85397. SET @Sifra_Apt1=''
  85398. SET @PodrSluzba1=''
  85399. set @Spc_Specif1 = 0
  85400. set @BezPartic1 = ''
  85401.  
  85402. if @POsebno_BezPartic = 'D'
  85403.   Declare TabRcp Cursor Fast_Forward For
  85404.     Select Sifra_Apteka, Broj_Recept, Sifra_PodrSluzba, BezPartic, Spc_Specif
  85405.     From #TmpRcp 
  85406.     ORDER BY Sifra_Apteka, Sifra_PodrSluzba, BezPartic, Spc_Specif, Broj_Recept
  85407. else
  85408.   Declare TabRcp Cursor Fast_Forward For
  85409.     Select Sifra_Apteka, Broj_Recept, Sifra_PodrSluzba, BezPartic, Spc_Specif
  85410.     From #TmpRcp 
  85411.     ORDER BY Sifra_Apteka, Sifra_PodrSluzba, Spc_Specif, BezPartic, Broj_Recept
  85412.  
  85413. Open TabRcp
  85414.  
  85415. Fetch Next From TabRcp 
  85416. Into @Sifra_Apt, @Broj_Recept, @PodrSluzba, @BezPartic, @Spc_Specif
  85417.  
  85418. While @@Fetch_Status = 0
  85419. Begin            
  85420.     if @BezPartic is null or @BezPartic <> 'D'
  85421.         set @BezPartic = ''
  85422.  
  85423.     IF @Sifra_Apt1<>@Sifra_Apt OR @PodrSluzba1<>@PodrSluzba or (@Posebno_BezPartic = 'D' and @BezPartic1<>@BezPartic)
  85424.     Begin
  85425.         SET @Sifra_Apt1=@Sifra_Apt 
  85426.         SET @PodrSluzba1=@PodrSluzba
  85427.         set @BezPartic1= @BezPartic
  85428.         set @Spc_Specif1 = @Spc_Specif
  85429.         SET @Rbr=0
  85430.         SET @Specif_Br =@Specif_Br + 1
  85431.         SET @Faktura_Br = @Faktura_Br + 1
  85432.         INSERT INTO Faktura (Godina_Fra, Faktura_Br, Mesec_Fra, Datum_Fra, Sifra_PodrSluzba_Fakt)
  85433.         VALUES (@Godina, @Faktura_Br, @Mesec, @Datum_Fra, @PodrSluzba)
  85434.         INSERT INTO #TmpFak (faktura_Br) VALUES (@Faktura_Br)
  85435.         INSERT INTO Specifikacii (Godina_Fra, Faktura_Br, Rangiran, Specif_Br, Sifra_Apteka,
  85436.                       BezPartic, Spc_Podr, Spc_Specif)
  85437.         VALUES (@Godina, @Faktura_Br, '0', @Specif_Br, @Sifra_Apt, 
  85438.                       @BezPartic, @PodrSluzba, @Spc_Specif)
  85439.     End
  85440.  
  85441.     IF @Spc_Specif <> @Spc_Specif1
  85442.     Begin
  85443.         SET @Rbr = 0
  85444.         SET @BezPartic1 = @BezPartic
  85445.         set @Spc_Specif1 = @Spc_Specif
  85446.         SET @Specif_Br = @Specif_Br + 1
  85447.         INSERT INTO Specifikacii (Godina_Fra, Faktura_Br, Rangiran, Specif_Br, Sifra_Apteka, 
  85448.                       BezPartic, Spc_Podr, Spc_Specif)
  85449.         VALUES (@Godina, @Faktura_Br, '0', @Specif_Br, @Sifra_Apt,
  85450.                       @BezPartic, @PodrSluzba, @Spc_Specif)
  85451.     End
  85452.  
  85453.     SET @Rbr = @Rbr + 1
  85454.  
  85455.     UPDATE Recepti 
  85456.     SET Faktura_Br = @Faktura_Br, Godina_Fra = @Godina, Mesec_Fra = @Mesec, 
  85457.         Specif_Br= @Specif_Br, Rbr_Vo_Specif =@Rbr
  85458.     WHERE Sifra_Apteka=@Sifra_Apt AND Broj_Recept=@Broj_Recept
  85459.  
  85460.     Fetch Next From TabRcp 
  85461.     Into @Sifra_Apt, @Broj_Recept, @PodrSluzba, @BezPartic, @Spc_Specif
  85462. End
  85463.  
  85464. Close TabRcp
  85465. Deallocate TabRcp
  85466. CREATE TABLE #TmpSpec
  85467. (Godina_Fra smallint,
  85468.  Specif_Br char(6),
  85469.  NabVr_BezDDV decimal(18, 2),
  85470.  Iznos_Marza decimal(18, 2),
  85471.  Osnovica_DDV decimal(18, 2),
  85472.  Iznos_DDV decimal(18, 2),
  85473.  Vk_Iznos decimal(18, 2),
  85474.  Vk_Partic decimal(18, 2),
  85475.  Vk_ZaNaplata decimal(18, 2),
  85476.  Presm_Partic decimal(18, 2))
  85477.  
  85478. INSERT INTO #TmpSpec 
  85479. SELECT Godina_Fra, Specif_Br, SUM(Iznos_Tender), SUM(Iznos_Marza), SUM(Osnov_DDV), SUM(Iznos_na_DDV), SUM(Iznos_So_DDV), SUM(Naplat_Partic), SUM(Iznos_So_DDV), SUM(Iznos_Partic)
  85480. FROM Recepti 
  85481. WHERE Godina_Fra=@Godina AND Faktura_Br IN (SELECT Faktura_Br FROM #TmpFak)
  85482. GROUP BY Godina_Fra, Specif_Br
  85483.  
  85484. UPDATE Specifikacii SET NabVr_BezDDV= T.NabVr_BezDDV, Iznos_Marza = T.Iznos_Marza, Osnovica_DDV= T.Osnovica_DDV,
  85485.     Iznos_DDV =T.Iznos_DDV, Vk_Iznos =dbo.fn_Zaokr5(T.Vk_Iznos), Vk_Partic =dbo.fn_Zaokr5(T.Vk_Partic), Vk_ZaNaplata = dbo.fn_Zaokr5(T.Vk_ZaNaplata), Vk_PresmParticip=dbo.fn_Zaokr5(T.Presm_Partic)
  85486. FROM #TmpSpec T WHERE Specifikacii.Godina_Fra = T.Godina_Fra AND Specifikacii.Specif_Br = T.Specif_Br
  85487.  
  85488. SELECT * FROM #TmpFak
  85489.  
  85490.  
  85491.  
  85492.  
  85493.  
  85494. Go
  85495. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_napravifakturi_fiz]'))
  85496. drop procedure [dbo].[sp_napravifakturi_fiz]
  85497.  
  85498. Go
  85499.  
  85500.  
  85501. CREATE   PROCEDURE sp_NapraviFakturi_Fiz
  85502.     @Mesec    smallint,
  85503.     @Godina    smallint
  85504.  
  85505. AS
  85506.  
  85507. Declare @Sifra_Apt char(2)
  85508. Declare @Broj_Recept int
  85509. Declare @Sifra_Apt1 char(2)
  85510. Declare @Rbr smallint
  85511. Declare @Specif_Br int
  85512.  
  85513. Declare TabRcp Cursor Fast_Forward For
  85514.     Select Sifra_Apteka, Broj_Recept
  85515.     From Recepti 
  85516.     WHERE YEAR(DATUM_IZDAV) = @Godina AND Month(Datum_Izdav) = @Mesec
  85517.     ORDER BY Sifra_Apteka, Broj_Recept
  85518.  
  85519. Open TabRcp
  85520.  
  85521. Fetch Next From TabRcp Into @Sifra_Apt, @Broj_Recept
  85522.  
  85523. set @SifrA_Apt1 = '!'    -- Nepostoeccka
  85524. set @Specif_Br = 0
  85525.  
  85526. While @@Fetch_Status = 0
  85527. Begin            
  85528.  
  85529.     IF @Sifra_Apt1 <> @Sifra_Apt 
  85530.     Begin
  85531.         SET @Sifra_Apt1 = @Sifra_Apt 
  85532.         SET @Rbr = 0
  85533.  
  85534.         SET @Specif_Br = @Specif_Br + 1
  85535.     End
  85536.  
  85537.     -- pazi ova 500.0 e sustinsko (tockata i nulata)
  85538.     IF @Rbr > 1 and floor ((@Broj_Recept - 1) / 500) = round((@Broj_Recept - 1) / 500.0, 4)    --Cela 500-ka 
  85539.     Begin
  85540.         SET @Rbr = 0
  85541.         SET @Specif_Br = @Specif_Br + 1
  85542.     End
  85543.  
  85544.     SET @Rbr = @Rbr + 1
  85545.  
  85546.     UPDATE Recepti 
  85547.     SET Specif_Fiz = @Specif_Br,
  85548.         Rbr_Fiz = @Rbr
  85549.     WHERE Sifra_Apteka = @Sifra_Apt AND Broj_Recept=@Broj_Recept
  85550.  
  85551.     Fetch Next From TabRcp Into @Sifra_Apt, @Broj_Recept
  85552. End
  85553.  
  85554. Close TabRcp
  85555. Deallocate TabRcp
  85556.  
  85557.  
  85558.  
  85559.  
  85560. Go
  85561. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_napravinalzatv47glk]'))
  85562. drop procedure [dbo].[sp_napravinalzatv47glk]
  85563.  
  85564. Go
  85565.  
  85566. CREATE  PROCEDURE sp_NapraviNalZatv47GLK
  85567.     @Godina Smallint
  85568.  
  85569. AS
  85570.     CREATE TABLE #PomAnal
  85571. (    Kto_Anal    char(10),
  85572.     DaliOrg        char(1)
  85573. )
  85574.  
  85575. INSERT INTO #PomAnal (Kto_Anal, DaliOrg) 
  85576.    SELECT Kto_Anal, 'N' 
  85577.    FROM Anal 
  85578.    WHERE (DaliOrg IS NULL OR DaliOrg <>'D') AND (Kto_Anal Like '4%' OR  Kto_Anal Like '7%')
  85579.  
  85580. INSERT INTO #PomAnal (Kto_Anal, DaliOrg) 
  85581.    SELECT Kto_Anal, 'D' 
  85582.    FROM Anal 
  85583.    WHERE DaliOrg ='D' --AND (Prenos_PoOE IS NULL OR Prenos_PoOE='D') 
  85584.          AND (Kto_Anal Like '4%' OR  Kto_Anal Like '7%')
  85585.  
  85586. -- Ova e konfuzija - ne e bitno za ZATVARANJETO
  85587. --INSERT INTO #PomAnal (Kto_Anal, DaliOrg) 
  85588. --    SELECT Kto_Anal, 'N' FROM Anal WHERE DaliOrg ='D' AND Prenos_PoOE='N'  AND (Kto_Anal Like '4%' OR  Kto_Anal Like '7%')
  85589.  
  85590. -- Vrati go rezultatot
  85591. SELECT Kto_Anal, Sifra_OE, SUM(Dolzi) Dolzi, SUM(Pobaruva) Pobaruva
  85592. FROM GStav 
  85593. WHERE Year(Datum_Nal) = @Godina AND Kto_Anal IN
  85594.     (SELECT Kto_Anal 
  85595.      FROM #PomAnal 
  85596.      WHERE DaliOrg = 'D')
  85597. GROUP BY Kto_Anal, Sifra_OE
  85598.  
  85599. UNION
  85600.  
  85601. SELECT Kto_Anal, NULL Sifra_OE, SUM(Dolzi) Dolzi, SUM(Pobaruva) Pobaruva
  85602. FROM GStav 
  85603. WHERE Year(Datum_Nal) = @Godina AND Kto_Anal IN
  85604.     (SELECT Kto_Anal 
  85605.      FROM #PomAnal
  85606.      WHERE DaliOrg = 'N')
  85607.  
  85608. GROUP BY Kto_Anal
  85609.  
  85610. -- Vrati go rezultatot
  85611.  
  85612.  
  85613.  
  85614.  
  85615. Go
  85616. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_napravipocnalglk]'))
  85617. drop procedure [dbo].[sp_napravipocnalglk]
  85618.  
  85619. Go
  85620.  
  85621.  
  85622.  
  85623. CREATE     PROCEDURE sp_NapraviPocNalGLK
  85624.     @Godina Smallint,
  85625.     @DaliDivizii char(1)='N',
  85626.     @KojaDrz    varchar(2)='MK'
  85627. AS
  85628.     CREATE TABLE #PomAnal
  85629. (    Kto_Anal    char(10),
  85630.     DaliOrg        char(1)
  85631. )
  85632.     INSERT INTO #PomAnal (Kto_Anal, DaliOrg) SELECT Kto_Anal, 'N' FROM Anal WHERE DaliOrg IS NULL OR DaliOrg <>'D'
  85633.     INSERT INTO #PomAnal (Kto_Anal, DaliOrg) SELECT Kto_Anal, 'D' FROM Anal WHERE DaliOrg ='D' AND (Prenos_PoOE IS NULL OR Prenos_PoOE=' ' OR Prenos_PoOE='D')
  85634.     INSERT INTO #PomAnal (Kto_Anal, DaliOrg) SELECT Kto_Anal, 'N' FROM Anal WHERE DaliOrg ='D' AND Prenos_PoOE='N'
  85635. IF @KojaDrz='SR'
  85636. Begin
  85637.     DELETE FROM #PomAnal WHERE Kto_Anal Like '5%'
  85638.     DELETE FROM #PomAnal WHERE Kto_Anal Like '6%'
  85639. End
  85640. ELSE
  85641. Begin
  85642.     DELETE FROM #PomAnal WHERE Kto_Anal Like '4%'
  85643.     DELETE FROM #PomAnal WHERE Kto_Anal Like '7%'
  85644. End
  85645.  
  85646. IF @DaliDivizii='D'
  85647.     SELECT Kto_Anal, Sifra_OE, KojaVal, Sifra_Div, SUM(Dolzi) Dolzi, SUM(Pobaruva) Pobaruva,
  85648.                   SUM(Dev_Dolzi) Dev_Dolzi, SUM(Dev_Pobaruva) Dev_Pobaruva
  85649.     FROM GStav WHERE Year(Datum_Nal) = @Godina AND Kto_Anal IN
  85650.     (SELECT Kto_Anal FROM #PomAnal WHERE DaliOrg = 'D')
  85651.     GROUP BY Kto_Anal, Sifra_OE, KojaVal, Sifra_Div 
  85652.     UNION
  85653.     SELECT Kto_Anal, NULL Sifra_OE, KojaVal, Sifra_Div, SUM(Dolzi) Dolzi, SUM(Pobaruva) Pobaruva,
  85654.                   SUM(Dev_Dolzi) Dev_Dolzi, SUM(Dev_Pobaruva) Dev_Pobaruva
  85655.     FROM GStav WHERE Year(Datum_Nal) = @Godina AND Kto_Anal IN
  85656.     (SELECT Kto_Anal FROM #PomAnal WHERE DaliOrg = 'N')
  85657.     GROUP BY Kto_Anal, KojaVal, Sifra_Div 
  85658. ELSE
  85659.     SELECT Kto_Anal, Sifra_OE, KojaVal, SUM(Dolzi) Dolzi, SUM(Pobaruva) Pobaruva,
  85660.                   SUM(Dev_Dolzi) Dev_Dolzi, SUM(Dev_Pobaruva) Dev_Pobaruva
  85661.     FROM GStav WHERE Year(Datum_Nal) = @Godina AND Kto_Anal IN
  85662.     (SELECT Kto_Anal FROM #PomAnal WHERE DaliOrg = 'D')
  85663.     GROUP BY Kto_Anal, Sifra_OE, KojaVal
  85664.     UNION
  85665.     SELECT Kto_Anal, NULL Sifra_OE, KojaVal, SUM(Dolzi) Dolzi, SUM(Pobaruva) Pobaruva,
  85666.                   SUM(Dev_Dolzi) Dev_Dolzi, SUM(Dev_Pobaruva) Dev_Pobaruva
  85667.     FROM GStav WHERE Year(Datum_Nal) = @Godina AND Kto_Anal IN
  85668.     (SELECT Kto_Anal FROM #PomAnal WHERE DaliOrg = 'N')
  85669.     GROUP BY Kto_Anal, KojaVal
  85670.  
  85671.  
  85672.  
  85673.  
  85674.  
  85675.  
  85676. Go
  85677. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_napravitabartzawebnaracki]'))
  85678. drop procedure [dbo].[sp_napravitabartzawebnaracki]
  85679.  
  85680. Go
  85681. CREATE PROCEDURE sp_NapraviTabArtzaWEBNaracki
  85682.     @Sifra_Kup    char(6)
  85683. AS
  85684. Declare @ImeTab varchar(20)
  85685. SET @ImeTab = '##wNar'+@Sifra_Kup
  85686.  
  85687. Declare @SSQL varchar(3000)
  85688. SET @SSQL = 'DROP TABLE '+@ImeTab
  85689.     IF EXISTS ( SELECT * FROM tempdb..sysobjects WHERE name=@ImeTab ) 
  85690.         EXEC (@SSQL)
  85691. SET @SSQL='    CREATE TABLE ' + @ImeTab+' (Sifra_Art varchar(20), Kolic decimal(18,6))'
  85692. EXEC (@SSQL)
  85693.  
  85694.  
  85695. Go
  85696. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_napravizbirnidok]'))
  85697. drop procedure [dbo].[sp_napravizbirnidok]
  85698.  
  85699. Go
  85700.  
  85701.  
  85702.  
  85703.  
  85704.  
  85705.  
  85706.  
  85707.  
  85708.  
  85709. CREATE                       PROCEDURE sp_NapraviZbirniDok
  85710.     @KoiOE    varchar(300), 
  85711.     @KoiTipDok    varchar(100),
  85712.     @Datum_Od    smalldatetime = NULL,    --ZA GOT. OD DISTR.
  85713.     @Datum_Do    smalldatetime,
  85714.     @Komint_Od    char(6) = NULL,
  85715.     @Komint_Do    char(6) = NULL,
  85716.     @KoiCeniMag char(1) = NULL,
  85717.     @MagCeniZaOE smallint = NULL,
  85718.     @Shiftiraj    char(1) = 'N',
  85719.     @ShiftCel    char(1) = 'N',        --Shiftiraj celosno samo za kalo se upotrebuva
  85720.     @KojaCena    char(1) = 'D',         --D-DogCena,M-MalCena,G-GotCena
  85721.     @IskluciMes    char(1) = 'N',        --Firmi na koi im se fakturira mesecno
  85722.     @FktPoPat    char(1) = 'N'        --fakturite po patnik,14.05.11 ZC
  85723. AS
  85724.     Declare @SSQL        varchar(4000)
  85725.     Declare @PriemOdMag    smallint
  85726.     Declare @VratVoMag    smallint
  85727.     Declare @VratVoMag2    smallint
  85728.     Declare @Faktura    smallint
  85729.     Declare @StornoFak    smallint
  85730.     Declare @Shift        int
  85731.     Declare @LenShift    int
  85732.     Declare @Art_Od    varchar(7)    
  85733.     Declare @Art_Do    varchar(7)
  85734.     SELECT @PriemOdMag = Pren_fix_plus, @VratVoMag=Pren_fix_minus, @Faktura=Ispr_Fix_plus, 
  85735.     @VratVoMag2=Pren_Fix_Minus2, @StornoFak=Ispr_Fix_Minus, @Shift = Ladno_Shift FROM Konfig
  85736. --    IF @Shiftiraj = 'D'
  85737.     Begin
  85738.         if @Shift IS NULL
  85739.             Begin
  85740.                 SET @Art_Od = '001000'    
  85741.                 SET @Art_Do = '002000'
  85742.             End
  85743.         Else
  85744.             Begin
  85745.                 SET @LenShift = Len(cast(@Shift as varchar(7)))
  85746.                 IF @LenShift > 6 
  85747.                     Begin
  85748.                     SET @Art_Od    = cast(@Shift as varchar(7))
  85749.                     SET @Art_Do    = cast(@Shift*2 as varchar(7))
  85750.                     End
  85751.                 Else
  85752.                     Begin
  85753.                     SET @Art_Od    = Replicate('0', 6-@LenShift) + cast(@Shift as varchar(6))
  85754.                     SET @Art_Do    = Replicate('0', 6-@LenShift) + cast(@Shift*2 as varchar(6))
  85755.                     End
  85756.             End
  85757.     End
  85758.     Declare @IskluciKup varchar(500)
  85759.     Declare @SamoKup varchar(500)
  85760.     SET @IskluciKup = NULL
  85761.     SET @SamoKup = NULL
  85762.     IF @LenShift > 6 
  85763.     Begin
  85764.         IF substring(@KoiTipDok,1,2)='81'
  85765.             SET @IskluciKup = '000001, 000002, 001000, 008135, 000020'
  85766.         IF substring(@KoiTipDok,1,2)='85'
  85767.         Begin
  85768. --            SET @KoiTipDok ='81,83,85,86'    
  85769.             SET @SamoKup = '000001, 000002, 001000, 008135, 000020'
  85770.         End
  85771.     End
  85772.     CREATE TABLE #TmpDok
  85773. (    Sifra_Kup    char(6),
  85774.     Sifra_Obj    smallint,
  85775.     Sifra_Pat    smallint,
  85776.     Sifra_Art    varchar(20),
  85777.     Sifra_Tar    char(3),
  85778.     POsn        decimal(6,2),
  85779.     Kolic        decimal(18,6),
  85780.     Cena        decimal(18,6),
  85781.     MagCena    decimal(18,6),
  85782.     Uces        decimal(6,2),
  85783.     GotCena        decimal(18,6)
  85784. )
  85785. IF @Datum_Od IS NOT NULL            
  85786. BEGIN
  85787.     SET @SSQL = 'SELECT Sifra_Art, Sum(Case VlIzl When ''V'' Then Kolic Else Kolic * (-1) End) 
  85788.     FROM Stavr WHERE Sifra_OE IN (' + @KoiOE + ') AND (Sifra_Dok ='+CAST(@PriemOdMag AS VARCHAR(6))+ 
  85789.     ' OR Sifra_dok='+ CAST(@Faktura AS VARCHAR(6))+') AND Datum_Dok >= '''+Cast(@Datum_Od as varchar(35))+
  85790.     ''' AND Datum_Dok <= '''+Cast(@Datum_Do as varchar(35)) + ''' GROUP BY Sifra_Art'
  85791.     INSERT INTO #TmpDok (Sifra_Art, Kolic) EXEC(@SSQL)
  85792.     SET @SSQL = 'SELECT Sifra_Art, Sum(Case VlIzl When ''V'' Then Kolic Else Kolic * (-1) End) 
  85793.     FROM Stavr WHERE Sifra_OE IN (' + @KoiOE + ') AND (Sifra_Dok ='+ CAST(@VratVoMag AS VARCHAR(6))+ 
  85794.     ' OR Sifra_Dok='+CAST(@VratVoMag2 AS VARCHAR(6))+ ' OR Sifra_Dok='+CAST(@StornoFak AS VARCHAR(6))+') AND Datum_Dok >= ''' + 
  85795.     Cast(@Datum_Od as varchar(35)) + ''' AND Datum_Dok <= ''' + Cast(@Datum_Do as varchar(35)) + 
  85796.     ''' AND (Sifra_Art<'+@Art_Od+' or Sifra_Art>'+@Art_Do+') GROUP BY Sifra_Art'
  85797.     INSERT INTO #TmpDok (Sifra_Art, Kolic) EXEC(@SSQL)
  85798. IF @LenShift > 6 
  85799.     SET @SSQL = 'SELECT SubString(Sifra_Art,2,6), Sum(Case VlIzl When ''V'' Then Kolic Else Kolic * (-1) End) 
  85800.     FROM Stavr WHERE Sifra_OE IN (' + @KoiOE + ') AND (Sifra_Dok ='+ CAST(@VratVoMag AS VARCHAR(6))+ 
  85801.     ' OR Sifra_Dok='+CAST(@VratVoMag2 AS VARCHAR(6))+ ' OR Sifra_Dok='+CAST(@StornoFak AS VARCHAR(6))+') AND Datum_Dok >= ''' + 
  85802.     Cast(@Datum_Od as varchar(35)) + ''' AND Datum_Dok <= ''' + Cast(@Datum_Do as varchar(35)) + 
  85803.     ''' AND Sifra_Art>'+@Art_Od+' AND Sifra_Art<'+@Art_Do+' GROUP BY Sifra_Art'
  85804. ELSE
  85805.     SET @SSQL = 'SELECT ''000'' + SubString(Sifra_Art,4,3), Sum(Case VlIzl When ''V'' Then Kolic Else Kolic * (-1) End) 
  85806.     FROM Stavr WHERE Sifra_OE IN (' + @KoiOE + ') AND (Sifra_Dok ='+ CAST(@VratVoMag AS VARCHAR(6))+ 
  85807.     ' OR Sifra_Dok='+CAST(@VratVoMag2 AS VARCHAR(6))+ ' OR Sifra_Dok='+CAST(@StornoFak AS VARCHAR(6))+') AND Datum_Dok >= ''' + 
  85808.     Cast(@Datum_Od as varchar(35)) + ''' AND Datum_Dok <= ''' + Cast(@Datum_Do as varchar(35)) + 
  85809.     ''' AND Sifra_Art>'+@Art_Od+' AND Sifra_Art<'+@Art_Do+' GROUP BY Sifra_Art'
  85810.     INSERT INTO #TmpDok (Sifra_Art, Kolic) EXEC(@SSQL)
  85811. END
  85812. ELSE
  85813. BEGIN
  85814.     SET @SSQL = 'SELECT '
  85815.     IF @Komint_Od IS NOT NULL OR @Komint_Do IS NOT NULL
  85816.     Begin
  85817.         SET @SSQL = @SSQL + 'D.Sifra_Kup, D.Sifra_Obj, '
  85818.         IF @FktPoPat='D' SET @SSQL=@SSQL + 'D.Sifra_Oe, '
  85819.         IF @KojaCena='Z' SET @SSQL=@SSQL + 'S.DokCena, '
  85820.     End
  85821.     SET @SSQL = @SSQL + 'S.Sifra_Art, SUM(S.Kolic) FROM Stavr S
  85822.     INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  85823.     IF @IskluciMes ='D'
  85824.         SET @SSQL = @SSQL + ' INNER JOIN Komint K ON D.Sifra_kup=K.Sifra_Kup '
  85825.     SET @SSQL = @SSQL + ' WHERE S.Sifra_OE in (' + @KoiOE + ') AND S.Sifra_Dok in (' + @KoiTipDok + 
  85826.     ') AND S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(35)) + 
  85827.     ''' AND (D.Blokiran IS NULL OR D.Blokiran = ''T'') ' 
  85828.     IF @IskluciKup IS NOT NULL
  85829.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' +@IskluciKup + ') '
  85830.     IF @SamoKup IS NOT NULL
  85831.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup IN (' +@SamoKup + ') '
  85832.     IF @IskluciMes ='D'
  85833.         SET @SSQL = @SSQL + ' AND (K.KDrugo5 IS NULL OR K.KDrugo5 <> 1) '
  85834.     IF @Komint_Od IS NOT NULL
  85835.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup >= ' + @Komint_Od
  85836.     IF @Komint_Do IS NOT NULL
  85837.         SET @SSQL = @SSQL + ' AND D.Sifra_Kup <= ' + @Komint_Do
  85838.     IF @Komint_Od IS NOT NULL OR @Komint_Do IS NOT NULL
  85839.         BEGIN
  85840.             SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art'
  85841.             IF @FktPoPat='D' SET @SSQL=@SSQL + ',D.Sifra_Oe '
  85842.             IF @KojaCena='Z' SET @SSQL=@SSQL + ',S.DokCena '
  85843.  
  85844.             Declare @SSQL1 varchar(300)
  85845.             SET @SSQL1 = 'INSERT INTO #TmpDok (Sifra_Kup, Sifra_Obj, '
  85846.             IF @FktPoPat='D' SET @SSQL1=@SSQL1 + 'Sifra_Pat, '
  85847.             IF @KojaCena='Z' SET @SSQL1=@SSQL1 + 'Cena, '
  85848.             SET @SSQL1=@SSQL1 + 'Sifra_Art, Kolic) '
  85849.             EXEC(@SSQL1 +@SSQL)
  85850.         END
  85851.     ELSE
  85852.         BEGIN
  85853.         SET @SSQL = @SSQL + ' GROUP BY S.Sifra_Art'
  85854.         INSERT INTO #TmpDok (Sifra_Art, Kolic) EXEC(@SSQL)
  85855.         END
  85856. END
  85857. IF @Shiftiraj = 'D'
  85858. BEGIN
  85859.     CREATE TABLE #TmpDok1
  85860. (    Sifra_Kup    char(6),
  85861.     Sifra_Obj    smallint,
  85862.     Sifra_Pat    smallint,
  85863.     Sifra_Art    varchar(20),
  85864.     Sifra_Tar    char(3),
  85865.     POsn        decimal(6,2),
  85866.     Kolic        decimal(18,6),
  85867.     Cena        decimal(18,6),
  85868.     MagCena    decimal(18,6),
  85869.     Uces        decimal(6,2),
  85870.     GotCena        decimal(18,6)
  85871. )
  85872. IF @LenShift > 6 
  85873. Begin
  85874.     IF @ShiftCel = 'D'
  85875.         UPDATE #TmpDok SET Sifra_Art = substring(Sifra_Art,2,6) WHERE
  85876.         Sifra_Art > @Art_Od AND #TmpDok.Sifra_Art < @Art_Do
  85877.     ELSE
  85878.         UPDATE #TmpDok SET Sifra_Art = substring(Sifra_Art,2,6) WHERE
  85879.         Sifra_Art > @Art_Od AND #TmpDok.Sifra_Art < @Art_Do AND Kolic < 0
  85880. End
  85881. Else
  85882. Begin
  85883.     IF @ShiftCel = 'D'
  85884.         UPDATE #TmpDok SET Sifra_Art = '000' + substring(Sifra_Art,4,3) WHERE
  85885.         Sifra_Art > @Art_Od AND #TmpDok.Sifra_Art < @Art_Do
  85886.     ELSE
  85887.         UPDATE #TmpDok SET Sifra_Art = '000' + substring(Sifra_Art,4,3) WHERE
  85888.         Sifra_Art > @Art_Od AND #TmpDok.Sifra_Art < @Art_Do AND Kolic < 0
  85889. End
  85890.     IF @KojaCena='Z'
  85891.         INSERT INTO #TmpDok1 (Sifra_Kup, Sifra_Obj, Sifra_Pat, Sifra_Art, Cena, Kolic)
  85892.         SELECT Sifra_Kup, Sifra_Obj, Sifra_Pat, Sifra_Art, Cena, SUM(Kolic) FROM #TmpDok
  85893.         GROUP BY Sifra_Kup, Sifra_Obj, Sifra_Pat, Sifra_Art, Cena
  85894.     ELSE
  85895.         INSERT INTO #TmpDok1 (Sifra_Kup, Sifra_Obj, Sifra_Art, Kolic)
  85896.         SELECT Sifra_Kup, Sifra_Obj, Sifra_Art, SUM(Kolic) FROM #TmpDok
  85897.         GROUP BY Sifra_Kup, Sifra_Obj, Sifra_Art
  85898.  
  85899.     DELETE FROM #TmpDok
  85900.     INSERT INTO #TmpDok SELECT * FROM #TmpDok1
  85901. END
  85902.  
  85903. IF @KojaCena<>'Z'
  85904. Begin
  85905.     SET @SSQL = 'UPDATE #TmpDok SET #TmpDok.CENA = KatArt.' 
  85906.     IF @KojaCena = 'D'
  85907.         SET @SSQL = @SSQL + 'DogCena'
  85908.     ELSE IF @KojaCena = 'M'
  85909.         SET @SSQL = @SSQL + 'MalCena'
  85910.     ELSE IF @KojaCena = 'G'
  85911.         SET @SSQL = @SSQL + 'GotCena'
  85912.     SET @SSQL = @SSQL + ', #TmpDok.Sifra_Tar = KatArt.Sifra_Tar, #TmpDok.POsn=Tarifi.ProcOsn  
  85913.     FROM KatArt, Tarifi WHERE #TmpDok.Sifra_Art = KatArt.Sifra_Art AND
  85914.     Tarifi.Sifra_Tar = KatArt.Sifra_Tar '
  85915.     EXEC(@SSQL)
  85916. End
  85917.  
  85918. IF @KojaCena='Z'
  85919.     Update #TmpDok Set #TmpDok.Sifra_Tar = KatArt.Sifra_Tar, #TmpDok.POsn=Tarifi.ProcOsn  
  85920.     FROM KatArt, Tarifi WHERE #TmpDok.Sifra_Art = KatArt.Sifra_Art AND
  85921.     Tarifi.Sifra_Tar = KatArt.Sifra_Tar 
  85922.  
  85923.  
  85924. UPDATE #TmpDok SET #TmpDok.GotCena = KatArt.GotCena FROM KatArt WHERE #TmpDok.Sifra_Art = KatArt.Sifra_Art --02.03.11
  85925. IF @KoiCeniMag='L'
  85926.     BEGIN
  85927.         Declare @Sif_GrOrg char(6)
  85928.         Declare @DanCenaOE char(1)
  85929.         SELECT @Sif_GrOrg=G.Sif_GrOrg FROM GrOrg G INNER JOIN SGrOrg S ON G.Sif_GrOrg=S.Sif_GrOrg
  85930.         WHERE  G.ZaedPlanCeni='D' AND S.Sifra_OE=@MagCeniZaOE        --G.DaliPogon='D' bese do 18.12.07 mesto ZaedPlanCeni ZV
  85931.         SELECT @DanCenaOE = CeniSoDanok FROM OrgEd WHERE Sifra_OE=@MagCeniZaOE
  85932.         CREATE TABLE #TmpC 
  85933.         (Sifra_Art varchar(20),
  85934.          Cena    decimal(12,4),
  85935.          DanCena char(1),
  85936.          POsn    decimal(6,2),
  85937.          Vazi_Od    smalldatetime)
  85938.         INSERT INTO #TmpC (Sifra_Art,Vazi_Od) SELECT Sifra_Art, MAX(Vazi_Od) FROM CeniPlanski 
  85939.         WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_Art IN (SELECT DISTINCT Sifra_Art FROM #TmpDok) GROUP BY Sifra_Art
  85940.         UPDATE #TmpC SET Cena=C.Cena, DanCena=C.DanCena FROM CeniPlanski C WHERE #TmpC.Sifra_Art=C.Sifra_Art AND #TmpC.Vazi_Od=C.Vazi_Od
  85941.         UPDATE #TmpC SET Posn=T.ProcOsn FROM KatArt A, Tarifi T WHERE #TmpC.Sifra_Art=A.Sifra_Art AND T.Sifra_Tar=A.Sifra_Tar
  85942.         UPDATE #TmpC SET Cena=Cena*(1+POsn/100) WHERE @DanCenaOE='D' AND DanCena='N'
  85943.         UPDATE #TmpC SET Cena=Cena/(1+POsn/100) WHERE @DanCenaOE='N' AND DanCena='D'
  85944.         UPDATE #TmpDok SET #TmpDok.MagCena = C.Cena FROM #TmpC C WHERE #TmpDok.Sifra_Art=C.Sifra_Art
  85945.     END
  85946. ELSE
  85947.     UPDATE #TmpDok SET #TmpDok.MagCena = KatArt.DogCena
  85948.     FROM KatArt WHERE #TmpDok.Sifra_Art = KatArt.Sifra_Art      --#TmpDok.Sifra_Art < @Art_Od  AND
  85949. /*UPDATE #TmpDok SET #TmpDok.MagCena = KatArt.DogCena
  85950. FROM KatArt WHERE #TmpDok.Sifra_Art > @Art_Od  AND #TmpDok.Sifra_Art < @Art_Do  
  85951. AND '000'+Substring(#TmpDok.Sifra_Art,4,3) = KatArt.Sifra_Art*/
  85952. UPDATE #TmpDok SET Uces=0
  85953. IF @Komint_Od IS NOT NULL OR @Komint_Do IS NOT NULL
  85954. BEGIN                            --prviov update dod.06.10.06
  85955.     UPDATE #TmpDok SET Uces = CenPoPodgr.Uces FROM CenPoPodgr, Katart, Kobjekti
  85956.     WHERE #TmpDok.Sifra_Art = KatArt.Sifra_Art AND KatArt.Sifra_podg = CenPoPodgr.Sifra_Podelba
  85957.     AND #TmpDok.Sifra_Kup = Kobjekti.Sifra_Kup AND #TmpDok.Sifra_Obj = Kobjekti.Sifra_Obj AND Kobjekti.TipKup = CenPoPodgr.TipKup
  85958.  
  85959.     UPDATE #TmpDok SET Uces = CenPoPodgr.Uces FROM CenPoPodgr, Katart, Komint
  85960.     WHERE #TmpDok.Sifra_Art = KatArt.Sifra_Art AND KatArt.Sifra_podg = CenPoPodgr.Sifra_Podelba
  85961.     AND #TmpDok.Sifra_Kup = Komint.Sifra_Kup AND Komint.TipKup = CenPoPodgr.TipKup AND #TmpDok.Uces=0
  85962.  
  85963.     UPDATE #TmpDok SET Uces = C.Popust, Cena = C.Cena FROM Cenovnik C
  85964.     WHERE #TmpDok.Sifra_Art = C.Sifra_Art AND #TmpDok.Sifra_Kup = C.Sifra_Kup
  85965.     AND @Datum_Do >= C.PocDatum AND @Datum_Do <= C.KrajDatum
  85966. END
  85967. IF @LenShift > 6 
  85968.     SELECT * FROM #TmpDok WHERE Kolic <> 0 ORDER BY Sifra_Kup, Sifra_Obj, Sifra_Art
  85969. ELSE
  85970.     SELECT * FROM #TmpDok WHERE Kolic <> 0 AND Sifra_Art < @Art_Do ORDER BY Sifra_Kup, Sifra_Obj, Sifra_Art
  85971.  
  85972.  
  85973.  
  85974.  
  85975.  
  85976.  
  85977. Go
  85978. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_narac_komint_datum]'))
  85979. drop procedure [dbo].[sp_narac_komint_datum]
  85980.  
  85981. Go
  85982.  
  85983. CREATE  PROCEDURE sp_Narac_Komint_Datum
  85984.     @Sifra_Kup Varchar(10),
  85985.     @Datum_Nar Smalldatetime
  85986. AS
  85987.     Select SN.Sifra_Art, K.ImeArt, K.EdMera,
  85988.         Sum(Case SN.Sifra_OE
  85989.             When 100 Then SN.Kolic
  85990.             Else    0
  85991.         End) Kolic100,
  85992.         Sum(Case SN.Sifra_OE
  85993.             When 102 Then SN.Kolic
  85994.             Else    0
  85995.         End) Kolic102
  85996.     From StaNarac SN
  85997.     Inner Join Naracki N On SN.NarID=N.NarID
  85998.     Inner Join Katart K On SN.Sifra_Art=K.Sifra_Art
  85999.     Where N.Sifra_Kup=@Sifra_Kup
  86000.       And N.Datum_Nar=@Datum_Nar
  86001.     Group By SN.Sifra_Art, K.ImeArt, K.EdMera
  86002.  
  86003.  
  86004.  
  86005. Go
  86006. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracano_isporacano_cfr]'))
  86007. drop procedure [dbo].[sp_naracano_isporacano_cfr]
  86008.  
  86009. Go
  86010.  
  86011. CREATE        PROCEDURE sp_Naracano_Isporacano_CFR
  86012.     @Sifra_Oe_Fri    smallint,
  86013.     @Sifra_Pat    int = Null,
  86014.     @Datum_Dok_Od    smalldatetime = Null,
  86015.     @Datum_Dok_Do    smalldatetime = Null,
  86016.     @TipNaracList    varchar(200) = Null,
  86017.     @TipDokList    varchar(200) = Null
  86018.  
  86019. AS
  86020.  
  86021.     Declare @SSQL as varchar(8000)
  86022.     Create Table #Rez
  86023.     (
  86024.         -- Dokr
  86025.         Sifra_Oe    smallint,
  86026.         Sifra_Dok    smallint,
  86027.         Broj_Dok    int,
  86028.         Sifra_OeNar    smallint,
  86029.         Sifra_Nar    smallint,
  86030.         Broj_Nar    int,
  86031.         Datum_dok    smalldatetime,
  86032.         Sifra_Kup    char(6),
  86033.         Sifra_Obj    smallint,
  86034.         Sifra_Pat    int,
  86035.         Identif_Br    varchar(30),
  86036.         Toc200        decimal(18,4),
  86037.         Danok1     decimal(18,4),
  86038.         Danok2        decimal(18,4),
  86039.         Kasa        decimal(6,2),
  86040.         -- Stavr
  86041.         Sifra_Art    varchar(20),
  86042.         Kolic        decimal(18,4),
  86043.         DokCena    decimal(18,4),
  86044.         DanDokCena    char(1),
  86045.         Rabat        decimal(6,2),    
  86046.         POsn        decimal(6,2),
  86047.         -- Naracki
  86048.         Datum_Nar    smalldatetime,
  86049.         -- StaNarac
  86050.         NarKolic    decimal(18,4),
  86051.         NarDokCena    decimal(18,4),
  86052.         NarDanDokCena char(1),
  86053.         NarRabat    decimal(6,2)
  86054.     )
  86055.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  86056.     -- gi zemame site Dokumenti povrzani so naracki
  86057.     --   5.1. Procedurata treba da TRCA PO DOKR za site IZLEZNI dokumenti (pazi i prenosnici se vklucceni), i za site stavki
  86058.     --   koi gi zadovoluvaat uslovite od 4., a za koi Sifra_Oe_Nar ne e 0 nitu Null, gi bara naracckite i soodvetnite stavki vo Stavr i StaNarac.
  86059.     --   5.5. Zabelezi deka za nekoi stavki (artikli) mozze da ima zapis vo STAVR a da nema zapis vo STANARAC (ako raccno dodale vo centrala stavka vo f-rata).
  86060.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Sifra_OeNar, D.Sifra_Nar, D.Broj_Nar, D.Datum_Dok, 
  86061.                 D.Sifra_Kup, D.Sifra_Obj, D.Sifra_Pat, D.Identif_Br, D.Toc200, D.Danok1, D.Danok2, D.Kasa, 
  86062.                 S.Sifra_Art, S.Kolic, S.DokCena, S.DanDokCena, S.Uces, S.POsn,
  86063.                 N.Datum_Nar, SN.Kolic, SN.DokCena, SN.DanDokCena, SN.Uces
  86064.             From Dokr D
  86065.             inner Join Stavr S On S.DokrID=D.DokrID 
  86066.             Left Outer Join Naracki N On D.Sifra_OeNar = N.Sifra_Oe And D.Sifra_Nar = N.Sifra_Nar And D.Broj_Nar = N.Broj_Nar
  86067.             Left Outer Join StaNarac SN On SN.NarID=N.NarID And S.Sifra_Art = SN.Sifra_Art
  86068.             Where D.VlIzl = ''I'' '
  86069.     If @Sifra_Oe_Fri Is Not Null
  86070.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe_Fri as varchar(6)) + ' '
  86071.     If @Sifra_Pat Is Not Null
  86072.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  86073.     If @Datum_Dok_Od Is Not Null
  86074.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  86075.     If @Datum_Dok_Do Is Not Null
  86076.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  86077.     If @TipDokList Is Not Null
  86078.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDokList + ') '
  86079.     --If @TipNaracList Is Not Null
  86080.     --    Set @SSQL = @SSQL + ' And (D.Sifra_Nar is null or D.SIfra_Nar = 0 or D.Sifra_Nar In (' + @TipNaracList + ')) '
  86081. --print @SSQL
  86082.     Insert Into #Rez (Sifra_Oe, Sifra_Dok, Broj_Dok, Sifra_OeNar, Sifra_Nar, Broj_Nar, Datum_dok, Sifra_Kup, Sifra_Obj,
  86083.             Sifra_Pat, Identif_Br, Toc200, Danok1, Danok2, Kasa, Sifra_Art, Kolic, DokCena, DanDokCena, Rabat, POsn,
  86084.             Datum_Nar, NarKolic, NarDokCena, NarDanDokCena, NarRabat)
  86085.     Exec (@SSQL)
  86086.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  86087.     -- Artiklite za koi ima naracka, a ne se vleseni vo dokument
  86088.     --  5.2. Zabelezi deka za nekoi artikli mozze da se slucci da NEMA zapisi vo Stavr a da IMA zapisi vo StaNarac -- treba da se prikazat i tie
  86089.     --  5.3. Zabelezi deka mozze da se slucci za nekoja naraccka da NEMA niedna stavka vo STAVR (no ima stavka vo DOKR).
  86090.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, D.Datum_dok, D.Sifra_Kup, D.Sifra_Obj, D.Sifra_Pat, 
  86091.             D.Identif_Br, D.Toc200, D.Danok1, D.Danok2, D.Kasa, SN.Sifra_Art, Null Kolic, Null DokCena, Null DanDokCena, Null Uces,
  86092.             N.Datum_Nar, SN.Kolic, SN.DokCena, SN.DanDokCena, SN.Uces
  86093.         From Naracki N
  86094.         inner Join StaNarac SN On SN.NarID=N.NarID 
  86095.         Inner Join Dokr D On D.Sifra_OeNar = N.Sifra_Oe And D.Sifra_Nar = N.Sifra_Nar And D.Broj_Nar = N.Broj_Nar
  86096.         Where D.VlIzl = ''I''  
  86097.         And Cast(N.Sifra_Oe as char(6)) + Cast(N.Sifra_Nar as char(6)) + Cast(N.Broj_Nar as char(10)) + SN.Sifra_Art
  86098.                 Not In (Select Distinct Cast(Sifra_OeNar as char(6)) +  Cast(Sifra_Nar as char(6)) + Cast(Broj_Nar as char(10)) + Sifra_Art From #Rez) '
  86099.     If @Sifra_Oe_Fri Is Not Null
  86100.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe_Fri as varchar(6)) + ' '
  86101.     If @Sifra_Pat Is Not Null
  86102.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  86103.     If @Datum_Dok_Od Is Not Null
  86104.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  86105.     If @Datum_Dok_Do Is Not Null
  86106.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  86107.     If @TipDokList Is Not Null
  86108.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDokList + ') '
  86109.     If @TipNaracList Is Not Null
  86110.         Set @SSQL = @SSQL + ' And D.Sifra_Nar In (' + @TipNaracList + ') '
  86111.  
  86112.     Insert Into #Rez (Sifra_Oe, Sifra_Dok, Broj_Dok, Sifra_OeNar, Sifra_Nar, Broj_Nar, Datum_dok, Sifra_Kup, Sifra_Obj, 
  86113.             Sifra_Pat, Identif_Br, Toc200, Danok1, Danok2, Kasa, Sifra_Art, Kolic, DokCena, DanDokCena, Rabat,
  86114.             Datum_Nar, NarKolic, NarDokCena, NarDanDokCena, NarRabat)
  86115.     Exec(@SSQL)
  86116.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  86117.     -- Naracki koi ne se preneseni vo dokument
  86118.     --   5.4. Zabelezi deka mozze da se slucci za nekoja naraccka da NEMA DOKR, no sepak treba da se prikazze.
  86119.     -- Vnimavaj: mozze naracckata da e realizirana vo DRUG period.
  86120.     -- Zatoa ke gi prikazzeme sampo onie NARACKI KOI VOOPSSTO NE SE REALIZIRANI (ako se realizirani bilo
  86121.     -- koga ke vlijaat na prethodnite toccki a ne ovde). Znacci voopsto ne proveruvame dali voopsto
  86122.     -- nesto ima vo #Rez, tuku samo dali NEMA VOOPSSTO REALIZACIJA...
  86123.     Set @SSQL = ' Select N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, S.Sifra_Art, S.Kolic, S.DokCena, S.DanDokCena, S.Uces, N.Sifra_Kup, N.Sifra_Obj
  86124.             From Naracki N
  86125.             inner Join StaNarac S On S.NarID=N.NarID
  86126.             left outer join Dokr D On D.Sifra_OeNar = N.Sifra_Oe And D.Sifra_Nar = N.Sifra_Nar And D.Broj_Nar = N.Broj_Nar 
  86127.             where D.Sifra_Oe is null '        -- t.e. nema DOKR, nemalo nikakva realizacija
  86128. ----            Where Cast(N.Sifra_Oe as char(6)) +  Cast(N.Sifra_Nar as char(6)) + Cast(N.Broj_Nar as char(10)) 
  86129. --                Not In (Select Distinct Cast(Sifra_OeNar as char(6)) +  Cast(Sifra_Nar as char(6)) + Cast(Broj_Nar as char(10)) From #Rez) '
  86130.     If @Sifra_Pat Is Not Null
  86131.         Set @SSQL = @SSQL + ' And N.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  86132.     If @Datum_Dok_Od Is Not Null
  86133.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' '
  86134.     If @Datum_Dok_Do Is Not Null
  86135.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''' '
  86136.     If @TipNaracList Is Not Null
  86137.         Set @SSQL = @SSQL + ' And N.Sifra_Nar In (' + @TipNaracList + ') '
  86138.     Insert Into #Rez (Sifra_OeNar, Sifra_Nar, Broj_Nar, Datum_Nar, Sifra_Art, NarKolic, NarDokCena, NarDanDokCena, NarRabat, Sifra_Kup, Sifra_Obj)
  86139.     Exec (@SSQL)
  86140.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  86141.     
  86142.     Select R.Sifra_Oe, R.Sifra_Dok, R.Broj_Dok, R.Sifra_OeNar, R.Sifra_Nar, R.Broj_Nar, 
  86143.         R.Datum_Dok, dateadd(day, 1, R.Datum_Dok) Datum_Ispor, 
  86144.         R.Sifra_Kup, Kup.ImeKup, R.Sifra_Obj, KO.ImeObj, R.Sifra_Pat, Pat.ImePat, 
  86145.         R.Identif_Br, R.Toc200, R.Danok1, R.Danok2, R.Kasa, R.Sifra_Art, K.ImeArt, 
  86146.                 case when R.Kolic is null then 0 else R.Kolic end IsporKolic,
  86147.         (CASE when R.DokCena is null then 0 else R.DokCena end) *
  86148.             (case when R.DanDokCena = 'N' then 
  86149.                                    (1 + (case when R.POsn is null then 0 else R.Posn / 100 end))
  86150.                                       else 1 end) DokCena, 
  86151.         R.DanDokCena, 
  86152.         R.Datum_Nar, 
  86153.         case when R.NarKolic is null then 0 else R.NarKolic end NaracKolic, 
  86154.         CASE when R.NarDokCena is null then 0 else R.NarDokCena end NarDokCena, 
  86155.         R.NarDanDokCena,
  86156.                 case when R.Rabat is null then 0 else R.Rabat end Uces,
  86157.         (Case When R.Sifra_Obj > 0 Then KO.Posta Else Kup.Posta End) Posta, 
  86158.         (Case When R.Sifra_Obj > 0 Then KO.Smesto Else Kup.Smesto End) Smesto, 
  86159.         (Case When R.Sifra_Obj > 0 Then KO.ADresa Else Kup.ADresa End) ADresa, 
  86160.         K.ImaKomerc, K.ProcAlk, Org.ImeOrg,
  86161.         P.Ime_Podg, GTip.ImeTipKup,
  86162.         TD.ImeDok, 'D' Sredeno
  86163.     From #Rez R
  86164.     Inner Join Katart K On K.Sifra_Art = R.Sifra_Art    Inner Join Podgrupi P On K.Sifra_Podg = P.Sifra_Podg
  86165.     Left Outer Join Komint Kup On Kup.Sifra_Kup = R.Sifra_Kup
  86166.     Left Outer Join Kobjekti KO On KO.Sifra_Kup = R.Sifra_Kup And KO.Sifra_Obj = R.Sifra_Obj
  86167.     Left Outer Join Patnici Pat On Pat.Sifra_Pat = R.Sifra_Pat
  86168.     left outer join OrgEd Org on Org.sifra_oe = R.Sifra_Oe
  86169.     left outer join GTipKup GTip on GTip.TipKup = Kup.TipKup 
  86170.     left outer join TipDok TD on TD.Sifra_Dok = R.Sifra_Dok 
  86171.     where K.SmatUsl <> 'U' or K.SmatUsl is null 
  86172.     Order By R.Sifra_Oe, R.Sifra_Dok, R.Broj_Dok, R.Sifra_Art
  86173.  
  86174.  
  86175.  
  86176.  
  86177.  
  86178.  
  86179.  
  86180.  
  86181.  
  86182. Go
  86183. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracano_isporacano_detalno]'))
  86184. drop procedure [dbo].[sp_naracano_isporacano_detalno]
  86185.  
  86186. Go
  86187.  
  86188. CREATE        PROCEDURE sp_Naracano_Isporacano_Detalno
  86189.     @Sifra_Pat        smallint = Null,
  86190.     @KoiPat        Varchar(10) = Null,
  86191.     @Sifra_Nar        Varchar(100) = Null,
  86192.     @Datum_Nar_Od    smalldatetime = Null,
  86193.     @Datum_Nar_Do    smalldatetime = Null,
  86194.     @PoKomintArt        char(1) = 'D'        -- K - Po Komintent,     A - Po Artikal,      D - Detalno Po Naracka
  86195.  AS
  86196.     Declare @SSQL as varchar(8000)
  86197.     Declare @SSQLUsl as varchar(8000)
  86198.     Set @SSQLUsl = ' '
  86199.  
  86200.     If @Sifra_Pat Is Not Null
  86201.         Set @SSQLUsl = @SSQLUsl + ' And N.Sifra_Oe = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  86202.     If @KoiPat Is Not Null
  86203.         Set @SSQLUsl = @SSQLUsl + ' And N.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiPat + ''') '
  86204.     If @Sifra_Nar Is Not Null
  86205.         Set @SSQLUsl = @SSQLUsl + ' And N.Sifra_Nar In ( ' + @Sifra_Nar + ') '
  86206.     If @Datum_Nar_Od Is Not Null
  86207.         Set @SSQLUsl = @SSQLUsl + ' And N.Datum_Nar >= ''' + Cast(@Datum_Nar_Od as varchar(30)) + ''' '
  86208.     If @Datum_Nar_Do Is Not Null
  86209.         Set @SSQLUsl = @SSQLUsl + ' And N.Datum_Nar <= ''' + Cast(@Datum_Nar_Do as varchar(30)) + ''' '
  86210.  
  86211.     Create Table #NajnovDok
  86212.     (
  86213.          Sifra_Oe    smallint,
  86214.         Sifra_Nar    smallint,
  86215.         Broj_Nar    int,
  86216.         Sifra_Art    varchar(20),
  86217.         Datum_Dok    smalldatetime
  86218.     ) 
  86219.     Set @SSQL =  ' Select N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, SN.Sifra_Art, Max(D.Datum_Dok)
  86220.         From StaNarac SN 
  86221.         Inner Join Naracki N on SN.NarID = N.NarID
  86222.         Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  86223.         Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  86224.         Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86225.         Where 1=1 ' 
  86226.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, SN.Sifra_Art '
  86227.     Insert Into #NajnovDok Exec(@SSQL)
  86228.  
  86229.         Create Table #NajnovDok1
  86230.     (
  86231.          Sifra_Oe    smallint,
  86232.         Sifra_Nar    smallint,
  86233.         Broj_Nar    int,
  86234.         Sifra_Art    varchar(20),
  86235.         Datum_Dok    smalldatetime,
  86236.         DokrID        int
  86237.     ) 
  86238.     Insert Into #NajnovDok1
  86239.     Select D.Sifra_OeNar, D.Sifra_Nar, D.Broj_Nar, S.Sifra_Art, N.Datum_Dok, Max(D.DokrID)
  86240.     From Dokr D
  86241.     Inner Join #NajnovDok N On N.Sifra_Oe = D.Sifra_OeNar And N.Sifra_Nar=D.Sifra_Nar And N.Broj_Nar=D.Broj_Nar
  86242.     Inner Join Stavr S On S.DokrID=D.DokrID And S.Sifra_Art=N.Sifra_Art
  86243.     Group By D.Sifra_OeNar, D.Sifra_Nar, D.Broj_Nar, S.Sifra_Art, N.Datum_Dok
  86244.  
  86245.  
  86246.     Create Table #Nar
  86247.     (
  86248.         NarID        int,
  86249.         Sifra_OeNar    smallint,
  86250.         Sifra_Nar    smallint,
  86251.         Broj_Nar    int,
  86252.         Datum_Nar    smalldatetime,
  86253.         DokrID        int,
  86254.         Sifra_OeDok    smallint,
  86255.         Sifra_Dok    smallint,
  86256.         Broj_Dok    int,
  86257.         Datum_Dok    smalldatetime,
  86258.         Sifra_Kup    char(6),
  86259.         Sifra_Obj    smallint,
  86260.         Sifra_Art    varchar(20),
  86261.         KolicNar    decimal(18,6),
  86262.         KolicDok    decimal(18,6),
  86263.     )
  86264.         
  86265.     Set @SSQL = ' Select N.NarID, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, ND.DokrID, DD.Sifra_Oe, DD.Sifra_Dok, DD.Broj_Dok, ND.Datum_Dok, 
  86266.                 N.Sifra_Kup, N.Sifra_Obj, SN.Sifra_Art, SN.Kolic KolicNar, Sum(Case When S.Kolic Is Not Null Then S.Kolic Else 0 End) KolicDok
  86267.             From StaNarac SN 
  86268.             Inner Join Naracki N On SN.NarID = N.NarID
  86269.             Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  86270.             Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  86271.             Left Outer Join #NajnovDok1 ND On ND.Sifra_Oe = N.Sifra_Oe And ND.Sifra_Nar = N.Sifra_Nar And ND.Broj_Nar = N.Broj_Nar And ND.Sifra_Art = SN.Sifra_Art 
  86272.             Left Outer Join Dokr DD On DD.DokrID=ND.DokrID
  86273.             Left Outer Join Komint Kup On Kup.Sifra_Kup = N.Sifra_Kup
  86274.             Left Outer Join KObjekti KO On KO.Sifra_Kup = N.Sifra_Kup And KO.Sifra_Obj=N.Sifra_Obj
  86275.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art '
  86276.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By N.NarID, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, ND.DokrID, DD.Sifra_Oe, DD.Sifra_Dok, DD.Broj_Dok, ND.Datum_Dok, 
  86277.                 N.Sifra_Kup, N.Sifra_Obj, SN.Sifra_Art, SN.Kolic '
  86278.     print @SSQL
  86279.     Insert Into #Nar Exec(@SSQL)
  86280.  
  86281.     Set @SSQL = ' Select Null NarID, D.Sifra_Pat, Null Sifra_Nar, Null Broj_Nar, Null Datum_Nar, D.DokrID, D.Sifra_Oe, D.Sifra_Dok,  D.Broj_Dok, D.Datum_Dok, 
  86282.                 D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, 0 as KolicNar, Sum(Case When S.Kolic Is Not Null Then S.Kolic Else 0 End) KolicDok
  86283.             From Dokr D
  86284.             Left Outer Join Stavr S On S.DokrID = D.DokrID
  86285.             Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  86286.             Left Outer Join KObjekti KO On KO.Sifra_Kup = D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  86287.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  86288.         Where D.Sifra_OeNar Is Null And D.Sifra_Pat Is Not Null '
  86289.     If @Sifra_Pat Is Not Null
  86290.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  86291.     If @KoiPat Is Not Null
  86292.         Set @SSQL = @SSQL + ' And D.Sifra_Pat In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiPat + ''') '
  86293.     If @Datum_Nar_Od Is Not Null
  86294.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Nar_Od as varchar(30)) + ''' '
  86295.     If @Datum_Nar_Do Is Not Null
  86296.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Nar_Do as varchar(30)) + ''' '
  86297.     Set @SSQL = @SSQL + ' Group By D.Sifra_Pat, D.DokrID, D.Sifra_Oe, D.Sifra_Dok,  D.Broj_Dok, D.Datum_Dok, D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art '
  86298.     Insert Into #Nar Exec(@SSQL)
  86299.  
  86300. --    Select * from #Nar
  86301.  
  86302.     Create Table #BrNarObj
  86303.     (
  86304.         Sifra_Pat    int,
  86305.         Sifra_Kup    char(6),
  86306.         Sifra_Obj    smallint,
  86307.         Sifra_Art    varchar(20),
  86308.         BrNar        int,
  86309.         BrDok        int,        
  86310.         BrObj        int,
  86311.         BrKomint    int,
  86312.         BrPoseti        int
  86313.     )
  86314.     IF @PoKomintArt = 'K'
  86315.         Insert Into #BrNarObj Select Sifra_OeNar, Sifra_Kup, Sifra_Obj, Null, Count(Distinct NarID), Count(Distinct DokrID), Null, Null, Null From #Nar Group By Sifra_OeNar, Sifra_Kup, Sifra_Obj
  86316.     Else IF @PoKomintArt = 'A'
  86317.         Insert Into #BrNarObj Select Sifra_OeNar, Null, Null, Sifra_Art,  Count(Distinct NarID), Count(Distinct DokrID), 
  86318.                     Count(Distinct Sifra_Kup + (Case When Sifra_Obj Is Not Null Then Cast(Sifra_Obj as char(3)) Else ' ' End)), 
  86319.                     Count(Distinct Sifra_Kup), Null From #Nar Group By Sifra_OeNar, Sifra_Art
  86320.  
  86321.     Create Table #Poseti
  86322.     (
  86323.         Sifra_Pat    int,    
  86324.         Sifra_Kup    char(6),
  86325.         Sifra_Obj    smallint,
  86326.         BrPoseti        int
  86327.     )
  86328.     If @PoKomintArt <> 'A' Or @PoKomintArt Is Null
  86329.     Begin
  86330.         Set @SSQL = ' Select Sifra_Oe, Sifra_Kup, Sifra_Obj, Count(*)
  86331.                 From Akcija
  86332.                 Where Aktivnost = ''V'' '
  86333.         If @Sifra_Pat Is Not Null
  86334.             Set @SSQL = @SSQL + ' And Sifra_Oe = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  86335.         If @KoiPat Is Not Null
  86336.             Set @SSQL = @SSQL + ' And Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiPat + ''') '
  86337.         If @Datum_Nar_Od Is Not Null
  86338.             Set @SSQL = @SSQL + ' And DatumVreme >= ''' + Cast(@Datum_Nar_Od as varchar(30)) + ''' '
  86339.         If @Datum_Nar_Do Is Not Null
  86340.             Set @SSQL = @SSQL + ' And DatumVreme < ''' + Cast(@Datum_Nar_Do + 1  as varchar(30)) + ''' '
  86341.         Set @SSQL = @SSQL + ' Group By Sifra_Oe, Sifra_Kup, Sifra_Obj '
  86342.         Insert Into #Poseti Exec(@SSQL)
  86343.     End
  86344.  
  86345.     --Poseti za koi ne se napraveni naracki
  86346.     Insert Into #Nar (Sifra_OeNar, Sifra_Kup, Sifra_Obj)
  86347.     Select Sifra_Pat, Sifra_Kup, Sifra_Obj
  86348.     From  #Poseti 
  86349.     Where Cast(Sifra_Pat as char(10)) + Cast(Sifra_Kup as char(6)) + Cast(Sifra_Obj as char(3)) 
  86350.     Not In (Select Cast(Sifra_Pat as char(10)) + Cast(Sifra_Kup as char(6)) + Cast(Sifra_Obj as char(3)) From #Nar)
  86351.  
  86352.     Update #BrNarObj
  86353.     Set BrPoseti = P.BrPoseti 
  86354.     From #Poseti P
  86355.     Where P.Sifra_Pat = #BrNarObj.Sifra_Pat And P.Sifra_Kup=#BrNarObj.Sifra_Kup And P.Sifra_Obj=#BrNarObj.Sifra_Obj
  86356.     And P.Sifra_Obj Is Null And #BrNarObj.Sifra_Obj Is Null
  86357.  
  86358.     Update #BrNarObj
  86359.     Set BrPoseti = P.BrPoseti 
  86360.     From #Poseti P
  86361.     Where P.Sifra_Pat = #BrNarObj.Sifra_Pat And P.Sifra_Kup=#BrNarObj.Sifra_Kup
  86362.     And P.Sifra_Obj Is Not Null And #BrNarObj.Sifra_Obj Is Not Null
  86363.  
  86364.  
  86365.     Set @SSQL = ' Select N.Sifra_OeNar Sifra_Pat, Pat.ImePat, '
  86366.     If @PoKomintArt = 'K'
  86367.         Set @SSQL = @SSQL + ' N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj, Null Sifra_Art, Null ImeArt, '
  86368.     Else If @PoKomintArt = 'A'
  86369.         Set @SSQL = @SSQL + ' Null Sifra_Kup, Null ImeKup, Null Sifra_Obj, Null ImeObj, N.Sifra_Art, K.ImeArt, '
  86370.     Else -- detalno
  86371.         Set @SSQL = @SSQL + ' N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj, N.Sifra_Art, K.ImeArt, '
  86372.     If @PoKomintArt In ('K','A')
  86373.         Set @SSQL = @SSQL + ' Null Sifra_Nar, Null Broj_Nar, Null Datum_Nar, Null Sifra_OeDok, Null Sifra_Dok, Null Broj_Dok, Null Datum_Dok, Null Denovi, '
  86374.     Else
  86375.         Set @SSQL = @SSQL + ' N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_OeDok, N.Sifra_Dok, N.Broj_Dok, N.Datum_Dok, DateDiff(Day, N.Datum_Nar, N.Datum_Dok) Denovi, '
  86376.     Set @SSQL = @SSQL + ' Sum(KolicNar) KolicNar, Sum(KolicDok) KolicDok, BR.BrNar, BR.BrDok, BR.BrKomint , BR.BrObj, BP.BrPoseti 
  86377.             From #Nar N
  86378.             Left Outer Join Patnici Pat On Pat.Sifra_Pat = N.Sifra_OeNar
  86379.             Left Outer Join Komint Kup On Kup.Sifra_Kup = N.Sifra_Kup
  86380.             Left Outer Join KObjekti KO On KO.Sifra_Kup = N.Sifra_Kup And KO.Sifra_Obj=N.Sifra_Obj
  86381.             Left Outer Join Katart K On K.Sifra_Art = N.Sifra_Art 
  86382.             Left Outer Join #Poseti BP On BP.Sifra_Kup = N.Sifra_Kup And BP.Sifra_Obj=N.Sifra_Obj '
  86383.     If @PoKomintArt = 'K'
  86384.         Set @SSQL = @SSQL + ' Left Outer Join #BrNarObj BR On BR.Sifra_Pat=N.Sifra_OeNar And BR.Sifra_Kup=N.Sifra_Kup And (Case When BR.Sifra_Obj Is Not Null Then BR.Sifra_Obj Else 1234 End)=(Case When N.Sifra_Obj Is Not Null Then N.Sifra_Obj Else 1234 End) '
  86385.     Else If @PoKomintArt = 'A'
  86386.         Set @SSQL = @SSQL + ' Left Outer Join #BrNarObj BR On BR.Sifra_Pat=N.Sifra_OeNar And BR.Sifra_Art=N.Sifra_Art '
  86387.     Else 
  86388.         Set @SSQL = @SSQL + ' Left Outer Join #BrNarObj BR On BR.Sifra_Pat=N.Sifra_OeNar ' -- Ovde nema Join - samo taka e staveno
  86389.     Set @SSQL = @SSQL + ' Group By N.Sifra_OeNar, Pat.ImePat, '
  86390.     If @PoKomintArt = 'K'
  86391.         Set @SSQL = @SSQL + ' N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj, '
  86392.     Else If @PoKomintArt = 'A'
  86393.         Set @SSQL = @SSQL + ' N.Sifra_Art, K.ImeArt, '
  86394.     Else -- detalno
  86395.         Set @SSQL = @SSQL + ' N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj, N.Sifra_Art, K.ImeArt, '
  86396.     If @PoKomintArt In ('K','A')
  86397.         Set @SSQL = @SSQL + ' '
  86398.     Else
  86399.         Set @SSQL = @SSQL + ' N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_OeDok, N.Sifra_Dok, N.Broj_Dok, N.Datum_Dok, DateDiff(Day, N.Datum_Nar, N.Datum_Dok), '
  86400.     Set @SSQL = @SSQL + ' BR.BrNar, BR.BrDok, BR.BrKomint, BR.BrObj, BP.BrPoseti  '
  86401. print @SSQL
  86402.     Exec(@SSQL)
  86403.  
  86404.  
  86405.     
  86406.  
  86407. --select * from #BrNarObj
  86408.  
  86409.  
  86410.  
  86411. /*        
  86412.  
  86413.     If @PoArtDok = 'D' -- po dokumrenti
  86414.     Begin
  86415.         Set @SSQL = ' Select SN.Sifra_Art, K.ImeArt, N.Datum_Nar, N.Sifra_Oe SifOeNar, N.Sifra_Nar, N.Broj_Nar, ND.Datum_Dok,  
  86416.                     (SN.Kolic*(Case When SN.DanDokCena=''D'' Then SN.DokCena Else SN.DokCena*(1+SN.Posn/100) End)) IznosNar,
  86417.                     SN.Kolic KolicNar,
  86418.                     Sum(Case When S.Kolic Is Not Null Then (S.Kolic*(Case When S.DanDokCena=''D'' Then S.DokCena Else S.DokCena*(1+S.Posn/100) End)) Else 0 End) IznosDok,
  86419.                     Sum(Case When S.Kolic Is Not Null Then S.Kolic Else 0 End) KolicDok,
  86420.                     DATEDIFF(day, N.Datum_Nar, ND.Datum_Dok) Denovi, Null as Rbr, N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj
  86421.             From StaNarac SN 
  86422.             Inner Join Naracki N On SN.NarID = N.NarID
  86423.             Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  86424.             Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  86425.             Left Outer Join #NajnovDok1 ND On ND.Sifra_Oe = N.Sifra_Oe And ND.Sifra_Nar = N.Sifra_Nar And ND.Broj_Nar = N.Broj_Nar And ND.Sifra_Art = SN.Sifra_Art 
  86426.             Left Outer Join Dokr DD On DD.DokrID=ND.DokrID
  86427.             Left Outer Join Komint Kup On Kup.Sifra_Kup = N.Sifra_Kup
  86428.             Left Outer Join KObjekti KO On KO.Sifra_Kup = N.Sifra_Kup And KO.Sifra_Obj=N.Sifra_Obj
  86429.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86430.             Where 1=1 '
  86431.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By  SN.Sifra_Art, K.ImeArt, N.Datum_Nar, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, ND.Datum_Dok, DD.Sifra_Oe, DD.Sifra_Dok, DD.Broj_Dok, 
  86432.                     (SN.Kolic*(Case When SN.DanDokCena=''D'' Then SN.DokCena Else SN.DokCena*(1+SN.Posn/100) End)), SN.Kolic,
  86433.                     DATEDIFF(day, N.Datum_Nar, ND.Datum_Dok), N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj
  86434.                 Order by N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar '
  86435.         Exec(@SSQL)
  86436.     End
  86437.     Else   -- @PoArtDok = 'A' -- po artikli
  86438.     Begin
  86439.         Create Table #Narac
  86440.         (
  86441.             Sifra_Art    varchar(20),
  86442.             IznosNar    decimal(18,6),
  86443.             KolicNar    decimal(18,6),
  86444.             IznosDok    decimal(18,6),
  86445.             KolicDok    decimal(18,6)
  86446.         )
  86447.         Set @SSQL = ' Select SN.Sifra_Art, Sum(SN.Kolic*(Case When SN.DanDokCena=''D'' Then SN.DokCena Else SN.DokCena*(1+SN.Posn/100) End)) IznosNar,
  86448.                     Sum(SN.Kolic) KolicNar, 0, 0
  86449.             From StaNarac SN 
  86450.             Inner Join Naracki N On SN.NarID = N.NarID
  86451.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86452.             Where 1=1 '
  86453.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By  SN.Sifra_Art '
  86454.         Insert Into #Narac Exec(@SSQL)
  86455.  
  86456.         Set @SSQL = ' Select SN.Sifra_Art, 0 IznosNar, 0 KolicNar,
  86457.                      Sum(S.Kolic*(Case When S.DanDokCena=''D'' Then S.DokCena Else S.DokCena*(1+S.Posn/100) End)) IznosDok,
  86458.                     Sum(S.Kolic) KolicDok
  86459.             From StaNarac SN 
  86460.             Inner Join Naracki N On SN.NarID = N.NarID
  86461.             Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  86462.             Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  86463.             Where 1=1 '
  86464.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By  SN.Sifra_Art '
  86465.         Insert Into #Narac Exec(@SSQL)
  86466.  
  86467.         Select N.Sifra_Art, K.ImeArt, Null Datum_Nar, Null SifOeNar, Null Sifra_Nar, Null Broj_Nar, Null Datum_Dok,
  86468.             Sum(N.IznosNar) IznosNar, Sum(N.KolicNar) KolicNar, Sum(N.IznosDok) IznosDok, Sum(KolicDok) KolicDok
  86469.         From #Narac N    
  86470.         Inner Join Katart K ON K.Sifra_Art = N.Sifra_Art
  86471.         Group By N.Sifra_Art, K.ImeArt
  86472.     End
  86473. */
  86474.  
  86475. Go
  86476. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracano_realizirano]'))
  86477. drop procedure [dbo].[sp_naracano_realizirano]
  86478.  
  86479. Go
  86480.  
  86481.  
  86482. CREATE                           PROCEDURE sp_Naracano_Realizirano
  86483.     @Sifra_OE     Smallint,
  86484.        @Sifra_Nar     Smallint,
  86485.     @Broj_Nar     Int,
  86486.        @Datum_Nar_Od Smalldatetime,
  86487.        @Datum_Nar_Do Smalldatetime,
  86488.     @Sifra_Kup     Char(6),
  86489.     @Sifra_Art_Od    varchar(20),
  86490.     @Sifra_Art_Do    varchar(20),
  86491.     @Podred    char(1) = 'S',    -- S - Sifra_Art,  I - ImeArt
  86492.     @KoiNar    char(1) = 'S',    -- D - Domassni,   E - Stranski,    S - Site (I Domassni i Stranski)
  86493.     @Sifra_GrNar    smallint = Null
  86494. AS
  86495.     Declare @SSQL Varchar(4000)
  86496.     Declare @SSQLUsl Varchar(4000)
  86497.     Set @SSQL=' '
  86498.     Set @SSQLUsl=' '
  86499.     If @Sifra_Nar Is NOT NULL
  86500.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Nar=''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  86501.     If @Sifra_GrNar Is NOT NULL
  86502.         SET @SSQLUsl = @SSQLUsl + 'AND TN.Sifra_GrNar=''' + Cast(@Sifra_GrNar As Varchar(10)) + ''' '
  86503.     If @Sifra_OE Is NOT Null
  86504.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  86505.     If @Broj_Nar Is NOT Null
  86506.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar=''' + Cast(@Broj_Nar As Varchar(10)) + ''' '
  86507.     If @Datum_Nar_Od Is NOT Null
  86508.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  86509.     If @Datum_Nar_Do Is NOT Null
  86510.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  86511.     If @Sifra_Kup Is NOT Null
  86512.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Kup=''' + @Sifra_Kup + ''' '
  86513.     If @Sifra_Art_Od Is NOT Null
  86514.         SET @SSQLUsl = @SSQLUsl + 'AND SN.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  86515.     If @Sifra_Art_Do Is NOT Null
  86516.         SET @SSQLUsl = @SSQLUsl + 'AND SN.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  86517. /*    IF @Realiz='D'
  86518.         SET @SSQL = @SSQL + ' AND (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or SN.Realiziran = ''P'') '
  86519.     Else IF @Realiz='N'
  86520.         SET @SSQL = @SSQL + ' AND (Not (Nar.Realiziran = ''D'' Or Nar.Realiziran = ''S'')  Or (Nar.Realiziran Is Null)) ' 
  86521.     If @VlIzl Is NOT Null
  86522.         SET @SSQL = @SSQL + 'AND TN.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  86523. */
  86524.     Create Table #Tab
  86525.     (
  86526.      Sifra_Art    varchar(20),
  86527.      KolicNarac    decimal(18,6),
  86528.      KolicReal    decimal(18,6),
  86529.      KolicOdZal    decimal(18,6),
  86530.      ImeMat        varchar(200)
  86531.     )
  86532.     SET @SSQL = ' SELECT SN.Sifra_Art, Sum(SN.Kolic) KolicNarac, 0 as KolicReal, Sum(SN.KolicOdZal), SN.ImeMat 
  86533.             FROM Naracki Nar
  86534.             Inner Join StaNarac SN On Nar.NarID=SN.NarID
  86535.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86536.             Inner Join TipNarac TN On TN.Sifra_Nar=Nar.Sifra_Nar 
  86537.             Where 1=1 '
  86538.     If @KoiNar = 'D'
  86539.         Set @SSQL = @SSQL + ' And (TN.DaliDev<>''D'' Or TN.DaliDev Is Null) '
  86540.     Else If @KoiNar = 'E'
  86541.         Set @SSQL = @SSQL + ' And TN.DaliDev=''D'' '
  86542.     Set @SSQL = @SSQL + @SSQLUsl + 'Group By SN.Sifra_Art, SN.ImeMat '
  86543.     Insert Into #Tab Exec(@SSQL)
  86544.     SET @SSQL = ' SELECT SNR.Sifra_Art, 0 as KolicNarac, Sum(SNR.Kolic) KolicReal, 0, Null
  86545.             FROM Naracki Nar
  86546.             Inner Join StaNaracReal SNR On Nar.NarID=SNR.NarID
  86547.             Inner Join Katart K On K.Sifra_Art = SNR.Sifra_Art
  86548.             Inner Join TipNarac TN On TN.Sifra_Nar=Nar.Sifra_Nar 
  86549.             Where 1=1 '
  86550.     If @KoiNar = 'D'
  86551.         Set @SSQL = @SSQL + ' And (TN.DaliDev<>''D'' Or TN.DaliDev Is Null) '
  86552.     Else If @KoiNar = 'E'
  86553.         Set @SSQL = @SSQL + ' And TN.DaliDev=''D'' '
  86554.     Set @SSQL = @SSQL + @SSQLUsl + 'Group By SNR.Sifra_Art '
  86555.     Insert Into #Tab Exec(@SSQL)
  86556.     SELECT T.Sifra_Art, K.ImeArt, Sum(T.KolicNarac) KolicNarac, K.Tezina, K.BTezina, Sum(T.KolicReal) KolicReal, Sum(T.KolicOdZal) KolicOdZal, T.ImeMat, K.Sifra_Podg
  86557.     From #Tab T
  86558.     Inner Join Katart K On K.Sifra_Art=T.Sifra_Art
  86559.     Group by T.Sifra_Art, K.ImeArt, K.Tezina, K.BTezina, T.ImeMat, K.Sifra_Podg
  86560.  
  86561.  
  86562.  
  86563. Go
  86564. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_narackano_isporacano]'))
  86565. drop procedure [dbo].[sp_narackano_isporacano]
  86566.  
  86567. Go
  86568.  
  86569.  
  86570.  
  86571.  
  86572.  
  86573.  
  86574.  
  86575. CREATE        PROCEDURE sp_Narackano_Isporacano
  86576.     @Sifra_OeNar        smallint = Null,
  86577.     @Sifra_Nar        Varchar(100) = Null,
  86578.     @Datum_Nar_Od    smalldatetime = Null,
  86579.     @Datum_Nar_Do    smalldatetime = Null,
  86580.     @Realizirani        char(1) = Null,        -- D / N
  86581.     @PoArtDok        char(1) = 'N'        -- A - Po Artikli    D - Po Artikli i dokumenti
  86582.  AS
  86583.     Declare @SSQL as varchar(8000)
  86584.     Declare @SSQLUsl as varchar(8000)
  86585.     Set @SSQLUsl = ' '
  86586.  
  86587.     If @Sifra_OeNar Is Not Null
  86588.         Set @SSQLUsl = @SSQLUsl + ' And N.Sifra_Oe = ' + Cast(@Sifra_OeNar as varchar(6)) + ' '
  86589.     If @Sifra_Nar Is Not Null
  86590.         Set @SSQLUsl = @SSQLUsl + ' And N.Sifra_Nar In ( ' + @Sifra_Nar + ') '
  86591.     If @Datum_Nar_Od Is Not Null
  86592.         Set @SSQLUsl = @SSQLUsl + ' And N.Datum_Nar >= ''' + Cast(@Datum_Nar_Od as varchar(30)) + ''' '
  86593.     If @Datum_Nar_Do Is Not Null
  86594.         Set @SSQLUsl = @SSQLUsl + ' And N.Datum_Nar <= ''' + Cast(@Datum_Nar_Do as varchar(30)) + ''' '
  86595.     If @Realizirani = 'D'
  86596.         Set @SSQLUsl = @SSQLUsl + ' And SN.Realiz_Kolic <> 0 '
  86597.     Else If @Realizirani = 'N'
  86598.         Set @SSQLUsl = @SSQLUsl + ' And (SN.Realiz_Kolic = 0 Or SN.Realiz_Kolic Is Null) '
  86599.  
  86600.     Create Table #NajnovDok
  86601.     (
  86602.          Sifra_Oe    smallint,
  86603.         Sifra_Nar    smallint,
  86604.         Broj_Nar    int,
  86605.         Sifra_Art    varchar(20),
  86606.         Datum_Dok    smalldatetime
  86607.     ) 
  86608.     Set @SSQL =  ' Select N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, SN.Sifra_Art, Max(D.Datum_Dok)
  86609.         From StaNarac SN 
  86610.         Inner Join Naracki N on SN.NarID = N.NarID
  86611.         Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  86612.         Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  86613.         Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86614.         Where 1=1 ' 
  86615.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, SN.Sifra_Art '
  86616.     Insert Into #NajnovDok Exec(@SSQL)
  86617.  
  86618.         Create Table #NajnovDok1
  86619.     (
  86620.          Sifra_Oe    smallint,
  86621.         Sifra_Nar    smallint,
  86622.         Broj_Nar    int,
  86623.         Sifra_Art    varchar(20),
  86624.         Datum_Dok    smalldatetime,
  86625.         DokrID        int
  86626.     ) 
  86627.     Insert Into #NajnovDok1
  86628.     Select D.Sifra_OeNar, D.Sifra_Nar, D.Broj_Nar, S.Sifra_Art, N.Datum_Dok, Max(D.DokrID)
  86629.     From Dokr D
  86630.     Inner Join #NajnovDok N On N.Sifra_Oe = D.Sifra_OeNar And N.Sifra_Nar=D.Sifra_Nar And N.Broj_Nar=D.Broj_Nar
  86631.     Inner Join Stavr S On S.DokrID=D.DokrID And S.Sifra_Art=N.Sifra_Art
  86632.     Group By D.Sifra_OeNar, D.Sifra_Nar, D.Broj_Nar, S.Sifra_Art, N.Datum_Dok
  86633.  
  86634.     If @PoArtDok = 'D' -- po dokumrenti
  86635.     Begin
  86636.         Set @SSQL = ' Select SN.Sifra_Art, K.ImeArt, N.Datum_Nar, N.Sifra_Oe SifOeNar, N.Sifra_Nar, N.Broj_Nar, ND.Datum_Dok,  
  86637.                     (SN.Kolic*(Case When SN.DanDokCena=''D'' Then SN.DokCena Else SN.DokCena*(1+SN.Posn/100) End)) IznosNar,
  86638.                     SN.Kolic KolicNar,
  86639.                     Sum(Case When S.Kolic Is Not Null Then (S.Kolic*(Case When S.DanDokCena=''D'' Then S.DokCena Else S.DokCena*(1+S.Posn/100) End)) Else 0 End) IznosDok,
  86640.                     Sum(Case When S.Kolic Is Not Null Then S.Kolic Else 0 End) KolicDok,
  86641.                     DATEDIFF(day, N.Datum_Nar, ND.Datum_Dok) Denovi, Null as Rbr, N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj
  86642.             From StaNarac SN 
  86643.             Inner Join Naracki N On SN.NarID = N.NarID
  86644.             Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  86645.             Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  86646.             Left Outer Join #NajnovDok1 ND On ND.Sifra_Oe = N.Sifra_Oe And ND.Sifra_Nar = N.Sifra_Nar And ND.Broj_Nar = N.Broj_Nar And ND.Sifra_Art = SN.Sifra_Art 
  86647.             Left Outer Join Dokr DD On DD.DokrID=ND.DokrID
  86648.             Left Outer Join Komint Kup On Kup.Sifra_Kup = N.Sifra_Kup
  86649.             Left Outer Join KObjekti KO On KO.Sifra_Kup = N.Sifra_Kup And KO.Sifra_Obj=N.Sifra_Obj
  86650.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86651.             Where 1=1 '
  86652.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By  SN.Sifra_Art, K.ImeArt, N.Datum_Nar, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, ND.Datum_Dok, DD.Sifra_Oe, DD.Sifra_Dok, DD.Broj_Dok, 
  86653.                     (SN.Kolic*(Case When SN.DanDokCena=''D'' Then SN.DokCena Else SN.DokCena*(1+SN.Posn/100) End)), SN.Kolic,
  86654.                     DATEDIFF(day, N.Datum_Nar, ND.Datum_Dok), N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj
  86655.                 Order by N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar '
  86656.         Exec(@SSQL)
  86657.     End
  86658.     Else   -- @PoArtDok = 'A' -- po artikli
  86659.     Begin
  86660.         Create Table #Narac
  86661.         (
  86662.             Sifra_Art    varchar(20),
  86663.             IznosNar    decimal(18,6),
  86664.             KolicNar    decimal(18,6),
  86665.             IznosDok    decimal(18,6),
  86666.             KolicDok    decimal(18,6)
  86667.         )
  86668.         Set @SSQL = ' Select SN.Sifra_Art, Sum(SN.Kolic*(Case When SN.DanDokCena=''D'' Then SN.DokCena Else SN.DokCena*(1+SN.Posn/100) End)) IznosNar,
  86669.                     Sum(SN.Kolic) KolicNar, 0, 0
  86670.             From StaNarac SN 
  86671.             Inner Join Naracki N On SN.NarID = N.NarID
  86672.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86673.             Where 1=1 '
  86674.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By  SN.Sifra_Art '
  86675.         Insert Into #Narac Exec(@SSQL)
  86676.  
  86677.         Set @SSQL = ' Select SN.Sifra_Art, 0 IznosNar, 0 KolicNar,
  86678.                      Sum(S.Kolic*(Case When S.DanDokCena=''D'' Then S.DokCena Else S.DokCena*(1+S.Posn/100) End)) IznosDok,
  86679.                     Sum(S.Kolic) KolicDok
  86680.             From StaNarac SN 
  86681.             Inner Join Naracki N On SN.NarID = N.NarID
  86682.             Left Outer Join Dokr D On SN.Sifra_Oe = D.Sifra_OeNar and SN.Sifra_Nar = D.Sifra_Nar and SN.Broj_Nar = D.Broj_Nar
  86683.             Left Outer Join Stavr S On S.DokrID = D.DokrID And S.Sifra_Art = SN.Sifra_Art
  86684.             Where 1=1 '
  86685.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By  SN.Sifra_Art '
  86686.         Insert Into #Narac Exec(@SSQL)
  86687.         Select N.Sifra_Art, K.ImeArt, Null Datum_Nar, Null SifOeNar, Null Sifra_Nar, Null Broj_Nar, Null Datum_Dok,
  86688.             Sum(N.IznosNar) IznosNar, Sum(N.KolicNar) KolicNar, Sum(N.IznosDok) IznosDok, Sum(KolicDok) KolicDok
  86689.         From #Narac N    
  86690.         Inner Join Katart K ON K.Sifra_Art = N.Sifra_Art
  86691.         Group By N.Sifra_Art, K.ImeArt
  86692.     End
  86693.  
  86694. Go
  86695. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_narackareal]'))
  86696. drop procedure [dbo].[sp_narackareal]
  86697.  
  86698. Go
  86699. CREATE PROCEDURE sp_NarackaReal
  86700.     @Sifra_OE    smallint,
  86701.     @Sifra_Nar    smallint,
  86702.     @Broj_Nar    int
  86703. AS
  86704.     UPDATE Naracki SET Realiziran = 'D', Realiz_Na=GetDate()
  86705.     WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  86706.  
  86707.  
  86708.  
  86709. Go
  86710. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracki_sledenje]'))
  86711. drop procedure [dbo].[sp_naracki_sledenje]
  86712.  
  86713. Go
  86714.  
  86715.  
  86716.  
  86717.  
  86718.  
  86719. CREATE                             PROCEDURE sp_Naracki_Sledenje
  86720.     @Sifra_OE     Smallint,
  86721.        @Sifra_Nar     Smallint,
  86722.     @Broj_Nar     Int,
  86723.        @Datum_Nar_Od Smalldatetime,
  86724.        @Datum_Nar_Do Smalldatetime,
  86725.     @Sifra_Kup     Char(6),
  86726.     @Sifra_Art_Od    varchar(20),
  86727.     @Sifra_Art_Do    varchar(20),
  86728.     @Podred    char(1) = 'S',    -- S - Sifra_Art,  I - ImeArt
  86729.     @KoiNar    char(1) = 'S',    -- D - Domassni,   E - Stranski,    S - Site (I Domassni i Stranski)
  86730.     @Sifra_GrNar    smallint = Null
  86731. --    @VlIzl Char(1),
  86732. AS
  86733.     Declare @SSQL Varchar(4000)
  86734.     Declare @SSQLUsl Varchar(4000)
  86735.     Set @SSQL=' '
  86736.     Set @SSQLUsl=' '
  86737.     If @Sifra_Nar Is NOT NULL
  86738.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Nar=''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  86739.     If @Sifra_GrNar Is NOT NULL
  86740.         SET @SSQLUsl = @SSQLUsl + 'AND TN.Sifra_GrNar=''' + Cast(@Sifra_GrNar As Varchar(10)) + ''' '
  86741.     If @Sifra_OE Is NOT Null
  86742.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  86743.     If @Broj_Nar Is NOT Null
  86744.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar=''' + Cast(@Broj_Nar As Varchar(10)) + ''' '
  86745.     If @Datum_Nar_Od Is NOT Null
  86746.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  86747.     If @Datum_Nar_Do Is NOT Null
  86748.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  86749.     If @Sifra_Kup Is NOT Null
  86750.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Kup=''' + @Sifra_Kup + ''' '
  86751.     If @Sifra_Art_Od Is NOT Null
  86752.         SET @SSQLUsl = @SSQLUsl + 'AND SN.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  86753.     If @Sifra_Art_Do Is NOT Null
  86754.         SET @SSQLUsl = @SSQLUsl + 'AND SN.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  86755. /*    IF @Realiz='D'
  86756.         SET @SSQL = @SSQL + ' AND (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or SN.Realiziran = ''P'') '
  86757.     Else IF @Realiz='N'
  86758.         SET @SSQL = @SSQL + ' AND (Not (Nar.Realiziran = ''D'' Or Nar.Realiziran = ''S'')  Or (Nar.Realiziran Is Null)) ' 
  86759.     If @VlIzl Is NOT Null
  86760.         SET @SSQL = @SSQL + 'AND TN.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  86761. */
  86762.     If @KoiNar In ('D', 'S')
  86763.     Begin
  86764.         SET @SSQL = @SSQL + ' SELECT SN.Sifra_Art, K.ImeArt, Sum(SN.Kolic) Kolic, K.Tezina, K.BTezina, SN.ImeMat as PosebBaranja, 
  86765.                     SN.DokCena, ''Den'' as KojaVal, ''Den'' as ImeVal, Sum(SN.Kolic*SN.DokCena) VrednostVal, Sum(SN.Kolic*SN.DokCena) VrednostDen, SN.ImeMat, K.Sifra_Podg
  86766.                 FROM Naracki Nar
  86767.                 Inner Join StaNarac SN On Nar.NarID=SN.NarID
  86768.                 Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86769.                 Inner Join TipNarac TN On TN.Sifra_Nar=Nar.Sifra_Nar
  86770.                 Where (TN.DaliDev<>''D'' Or TN.DaliDev Is Null) '
  86771.         Set @SSQL = @SSQL + @SSQLUsl + 'Group By SN.Sifra_Art, K.ImeArt, K.Tezina, K.BTezina, SN.ImeMat, SN.DokCena, SN.ImeMat, K.Sifra_Podg '
  86772.     End
  86773.     If @KoiNar = 'S' 
  86774.         Set @SSQL = @SSQL + ' Union '
  86775.     If @KoiNar In ('E', 'S')
  86776.     Begin
  86777.         SET @SSQL = @SSQL + 'SELECT SN.Sifra_Art, K.ImeArt, Sum(SN.Kolic) Kolic, K.Tezina, K.BTezina, SN.ImeMat as PosebBaranja,
  86778.                     SN.DevCena, Nar.KojaVal, Val.ImeVal, Sum(SN.Kolic*SN.DevCena) VrednostVal, Sum(SN.Kolic*SN.DevCena*Nar.Kurs) VrednostDen, SN.ImeMat, K.Sifra_Podg
  86779.                 FROM DevNar Nar
  86780.                 Inner Join DevNarStavk SN On Nar.DevNarID=SN.DevNarID
  86781.                 Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86782.                 Left Outer Join KrsLista Val On Val.SImeVal=Nar.KojaVal
  86783.                 Inner Join TipNarac TN On TN.Sifra_Nar=Nar.Sifra_Nar
  86784.                 Where TN.DaliDev=''D'' '
  86785.         Set @SSQL = @SSQL + @SSQLUsl + 'Group By SN.Sifra_Art, K.ImeArt, K.Tezina, K.BTezina, SN.ImeMat, SN.DevCena, Nar.KojaVal, Val.ImeVal, SN.ImeMat, K.Sifra_Podg '
  86786.     End
  86787. print @SSQL
  86788.     Exec(@SSQL)
  86789.  
  86790.  
  86791.  
  86792. Go
  86793. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracki_sledenje_postanaracreal]'))
  86794. drop procedure [dbo].[sp_naracki_sledenje_postanaracreal]
  86795.  
  86796. Go
  86797. CREATE    PROCEDURE sp_Naracki_Sledenje_PoStaNaracReal
  86798.     @Sifra_OE     Smallint,
  86799.        @Sifra_Nar     Smallint,
  86800.     @Broj_Nar_Od     Int,
  86801.     @Broj_Nar_Do     Int,
  86802.        @Datum_Nar_Od Smalldatetime,
  86803.        @Datum_Nar_Do Smalldatetime,
  86804.     @DajNepotvrdeni    char(1) = 'N',    
  86805.     @DajNeispecateni    char(1) = 'D',
  86806.     @DajIspecateni        char(1) = 'N',
  86807.     @DajZatvoreni        char(1) = 'N',
  86808.     @PoKomint        char(1) = 'N'
  86809. --    @VlIzl Char(1),
  86810. AS
  86811.     Declare @SSQL Varchar(4000)
  86812.     Declare @SSQLUsl Varchar(4000)
  86813.     Set @SSQLUsl=' '
  86814.     If @Sifra_Nar Is NOT NULL
  86815.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Nar=''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  86816.     If @Sifra_OE Is NOT Null
  86817.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  86818.     If @Broj_Nar_Od Is NOT Null
  86819.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar >=''' + Cast(@Broj_Nar_Od As Varchar(10)) + ''' '
  86820.     If @Broj_Nar_Do Is NOT Null
  86821.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar <=''' + Cast(@Broj_Nar_Do As Varchar(10)) + ''' '
  86822.     If @Datum_Nar_Od Is NOT Null
  86823.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  86824.     If @Datum_Nar_Do Is NOT Null
  86825.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  86826.     If @DajNepotvrdeni ='D'
  86827.         SET @SSQLUsl = @SSQLUsl + ' And Nar.Stat_Nar In (''N'' '
  86828.     If @DajNeispecateni ='D' And @DajNepotvrdeni <>'D'
  86829.         SET @SSQLUsl = @SSQLUsl + ' And Nar.Stat_Nar In (''A'' ' 
  86830.     Else If @DajNeispecateni ='D' And @DajNepotvrdeni ='D'
  86831.         SET @SSQLUsl = @SSQLUsl + ',''A'' ' 
  86832.     If @DajIspecateni ='D' And @DajNepotvrdeni <>'D' And @DajNeispecateni <> 'D'
  86833.         SET @SSQLUsl = @SSQLUsl + ' And Nar.Stat_Nar In (''C'' ' 
  86834.     Else If @DajIspecateni ='D' And (@DajNepotvrdeni = 'D' Or @DajNeispecateni ='D')
  86835.         SET @SSQLUsl = @SSQLUsl + ',''C'' ' 
  86836.     If @DajZatvoreni = 'D' And @DajIspecateni <> 'D' And @DajNepotvrdeni <> 'D' And @DajNeispecateni <> 'D'
  86837.         SET @SSQLUsl = @SSQLUsl + ' And Nar.Stat_Nar In (''Z'' ' 
  86838.     Else If @DajZatvoreni = 'D' And (@DajIspecateni ='D' Or @DajNepotvrdeni = 'D' Or @DajNeispecateni ='D')
  86839.         SET @SSQLUsl = @SSQLUsl + ',''Z'' ' 
  86840.     Set @SSQLUsl = @SSQLUsl + ') '
  86841.     If @PoKomint = 'D'
  86842.         SET @SSQL = ' SELECT Nar.Sifra_Kup, '
  86843.     Else     
  86844.         SET @SSQL = ' SELECT Null Sifra_Kup, '
  86845.     Set @SSQL = @SSQL + ' Nar.NarID, SN.Sifra_Art, Sum(SN.Kolic) Kolic, Sum(SN.Kolic_Bo) Kolic_Bo, Sum(SNR.Kolic) as RKolic, Sum(SNR.Kolic_Bo) RKolic_Bo 
  86846.             FROM Naracki Nar
  86847.             Inner Join StaNarac SN On Nar.NarID=SN.NarID
  86848.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86849.             Left Outer Join StaNaracReal SNR On SNR.NarID=Nar.NarID
  86850.             Where 1=1 '
  86851.     SET @SSQL = @SSQL + @SSQLUsl + ' Group By '
  86852.     If @PoKomint = 'D'
  86853.         SET @SSQL = @SSQL + ' Nar.Sifra_Kup, '
  86854.     Set @SSQL = @SSQL + ' Nar.NarID, SN.Sifra_Art '
  86855. print @SSQL
  86856.     Exec(@SSQL)
  86857.  
  86858.  
  86859. Go
  86860. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracki_zadatum]'))
  86861. drop procedure [dbo].[sp_naracki_zadatum]
  86862.  
  86863. Go
  86864. CREATE PROCEDURE sp_Naracki_ZaDatum
  86865.     @Datum_Nar    smalldatetime,
  86866.     @Sifra_Oe    smallint = Null,
  86867.     @Sifra_Nar    smallint = Null,
  86868.     @Broj_Nar_Od    int = Null,
  86869.     @Broj_Nar_Do    int = Null,
  86870.     @Lokacija    varchar(10) = Null,
  86871.     @KF_Lokacija    char(1) = 'N'
  86872. AS
  86873.     Declare @SSQL as varchar(4000)
  86874.     Set @SSQL = ' Select Distinct N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar 
  86875.             From Naracki N 
  86876.             Inner Join StaNarac SN On SN.NarID=N.NarID
  86877.             Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  86878.             Where N.Datum_Nar = ''' + cast(@Datum_Nar as varchar(30)) + ''' '
  86879.     If @Sifra_Oe Is Not Null
  86880.         Set @SSQL = @SSQL + ' and N.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  86881.     If @Sifra_Nar Is Not Null
  86882.         Set @SSQL = @SSQL + ' and N.Sifra_Nar = ' + cast(@Sifra_Nar as varchar(6)) + ' '
  86883.     If @Broj_Nar_Od Is Not Null
  86884.         Set @SSQL = @SSQL + ' and N.Broj_Nar >= ' + cast(@Broj_Nar_Od as varchar(10)) + ' '
  86885.     If @Broj_Nar_Do Is Not Null
  86886.         Set @SSQL = @SSQL + ' and N.Broj_Nar <= ' + cast(@Broj_Nar_Do as varchar(10)) + ' '
  86887.     If @Lokacija Is Not Null
  86888.     Begin
  86889.         If @KF_Lokacija  = 'N'
  86890.             Set @SSQL = @SSQL + ' And K.Lokacija = ''' + @Lokacija + ''' '
  86891.         Else
  86892.             Set @SSQL = @SSQL + ' And K.Lokacija <> ''' + @Lokacija + ''' '
  86893.     End
  86894.     Exec(@SSQL)
  86895.  
  86896.  
  86897. Go
  86898. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracki_zapecatenje]'))
  86899. drop procedure [dbo].[sp_naracki_zapecatenje]
  86900.  
  86901. Go
  86902. CREATE    PROCEDURE sp_Naracki_ZaPecatenje 
  86903.     @Datum_Od    smalldatetime = Null,
  86904.     @Sifra_Nar    varchar(500) = Null,
  86905.     @Sifra_Oe    varchar(200) = Null,
  86906.     @PoKojDatum    char(1) = 'D',    -- V - Po Datum na vnes        D - Po Datun na naracka
  86907.     @PecIzmeneti    char(1) = 'D'
  86908. AS
  86909.     Declare @SSQL as varchar(4000)
  86910.     Set @SSQL = ' Select  N.NarID, N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Sifra_Obj, N.Datum_Nar, N.Datum_Vnes, N.Datum_Izm, N.Uces, 
  86911.                 N.Rok, N.Sifra_Pat, N.Sifra_Oper, N.Sifra_OpIz, N.Toc200, N.KojaVal, N.Kurs, N.DanDokCena, N.DanmagCena, N.CenaIznos, N.TekstPosle, 
  86912.                 N.Realiziran, N.Realiz_Na, N.DokrID, N.Kasa, N.Sifra_Nivo, N.Prenesen, N.Spremil, N.SiteTros, N.Prevoz, N.Osiguruv, N.Carina, 
  86913.                 N.Spedicija, N.Smena, N.KojaSmetka, N.Ispecaten, N.IzmenetPoslePec, Kup.ImeKup,
  86914.                 D.Sifra_Oe Sif_OeDokr, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, 1 as BrKopii
  86915.             From Naracki N
  86916.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  86917.             Left Outer Join Dokr D On D.Sifra_Nar=N.Sifra_Nar and D.Broj_Nar=N.Broj_Nar And D.Sifra_OeNar=N.Sifra_Oe
  86918.             Where (N.Ispecaten Is Null Or N.Ispecaten = 0 Or N.IzmenetPoslePec=''D'' OR N.IzmenetPoslePec Is Null) '
  86919. /*    Set @SSQL = ' Select  N.NarID, N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Sifra_Obj, N.Datum_Nar, N.Datum_Vnes, N.Datum_Izm, N.Uces, 
  86920.                 N.Rok, N.Sifra_Pat, N.Sifra_Oper, N.Sifra_OpIz, N.Toc200, N.KojaVal, N.Kurs, N.DanDokCena, N.DanmagCena, N.CenaIznos, N.TekstPosle, 
  86921.                 N.Realiziran, N.Realiz_Na, N.DokrID, N.Kasa, N.Sifra_Nivo, N.Prenesen, N.Spremil, N.SiteTros, N.Prevoz, N.Osiguruv, N.Carina, 
  86922.                 N.Spedicija, N.Smena, N.KojaSmetka, N.Ispecaten, N.IzmenetPoslePec, Kup.ImeKup
  86923.             From Naracki N
  86924.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  86925.             Where (N.Ispecaten Is Null Or N.Ispecaten = 0 Or N.IzmenetPoslePec=''D'' OR N.IzmenetPoslePec Is Null) '
  86926. */
  86927.     If @Sifra_Oe Is Not Null
  86928.         Set @SSQL = @SSQL + ' And N.Sifra_Oe In (' + @Sifra_Oe + ') '
  86929.     If @Sifra_Nar Is Not Null
  86930.         Set @SSQL = @SSQL + ' And N.Sifra_Nar in (' + @Sifra_Nar + ') '
  86931.     If @Datum_Od Is Not Null
  86932.     Begin
  86933.         If @PoKojDatum = 'V'
  86934.             Set @SSQL = @SSQL + ' And N.Datum_Vnes >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  86935.         Else
  86936.             Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  86937.     End
  86938.     If @PecIzmeneti = 'N'
  86939.         Set @SSQL = @SSQL + ' And (N.IzmenetPoslePec <> ''D'' Or N.IzmenetPoslePec Is Null) '
  86940.     Set @SSQL = @SSQL + ' Order By N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar '
  86941.     Exec(@SSQL)
  86942. /*    Set @SSQL = ' Select  N.NarID, N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Sifra_Obj, N.Datum_Nar, N.Datum_Vnes, N.Datum_Izm, N.Uces, 
  86943.                 N.Rok, N.Sifra_Pat, N.Sifra_Oper, N.Sifra_OpIz, N.Toc200, N.KojaVal, N.Kurs, N.DanDokCena, N.DanmagCena, N.CenaIznos, N.TekstPosle, 
  86944.                 N.Realiziran, N.Realiz_Na, N.DokrID, N.Kasa, N.Sifra_Nivo, N.Prenesen, N.Spremil, N.SiteTros, N.Prevoz, N.Osiguruv, N.Carina, 
  86945.                 N.Spedicija, N.Smena, N.KojaSmetka, N.Ispecaten, N.IzmenetPoslePec, Kup.ImeKup,
  86946.                 D.Sifra_Oe Sif_OeDokr, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna
  86947.             From Naracki N
  86948.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  86949.             Left Outer Join Dokr D On D.Sifra_Nar=N.Sifra_Nar and D.Broj_Nar=N.Broj_Nar And D.Sifra_OeNar=N.Sifra_Oe
  86950.             Where (N.Ispecaten Is Null Or N.Ispecaten = 0 Or N.IzmenetPoslePec=''D'' OR N.IzmenetPoslePec Is Null) '
  86951. */
  86952.  
  86953. Go
  86954. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_narackipopatnici]'))
  86955. drop procedure [dbo].[sp_narackipopatnici]
  86956.  
  86957. Go
  86958. CREATE PROCEDURE sp_NarackiPoPatnici
  86959.     @Sif_GrPat    varchar(10) = Null,
  86960.     @Datum_Od    smalldatetime = Null,
  86961.     @Datum_Do    smalldatetime = Null,
  86962.     @Sifra_Nar    smallint
  86963. AS
  86964.     Declare @SSQL as varchar(8000)
  86965.     Set @SSQL = ' Select N.Sifra_Pat, P.ImePat, SN.Sifra_Art, K.ImeArt, Sum(SN.Kolic) Kolic
  86966.             From Naracki N
  86967.             Inner Join StaNarac SN On SN.NarID=N.NarID
  86968.             Inner Join Katart K On K.Sifra_Art=SN.Sifra_Art
  86969.             Left Outer Join Patnici P On P.Sifra_Pat=N.Sifra_Pat
  86970.             Where 1=1 '
  86971.     If @Sifra_Nar Is Not Null
  86972.         Set @SSQL = @SSQL + ' And N.Sifra_Nar = ' + Cast(@Sifra_Nar as varchar(6)) + ' '
  86973.     If @Sif_GrPat Is Not Null
  86974.         Set @SSQL = @SSQL + ' And N.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' +  @Sif_GrPat + ''') '
  86975.     If @Datum_Od Is Not Null
  86976.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  86977.     If @Datum_Do Is Not Null
  86978.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  86979.     Set @SSQL = @SSQL + ' Group By N.Sifra_Pat, P.ImePat, SN.Sifra_Art, K.ImeArt '
  86980.     Exec(@SSQL)
  86981.  
  86982.  
  86983. Go
  86984. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_narackivoperiod]'))
  86985. drop procedure [dbo].[sp_narackivoperiod]
  86986.  
  86987. Go
  86988.  
  86989.  
  86990. CREATE  PROCEDURE  sp_NarackiVoPeriod
  86991.     @DatumOd  smalldatetime,
  86992.     @DatumDo  smalldatetime
  86993. AS
  86994.     SELECT Sifra_OE, Sifra_Nar, Broj_Nar, Prenesen
  86995.     FROM Naracki
  86996.     WHERE Datum_Nar >= @DatumOd AND Datum_Nar <= @DatumDo
  86997.  
  86998.  
  86999.  
  87000. Go
  87001. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_naracsporedminmaxoptzaliha]'))
  87002. drop procedure [dbo].[sp_naracsporedminmaxoptzaliha]
  87003.  
  87004. Go
  87005. CREATE        PROCEDURE sp_NaracSporedMinMaxOptZaliha
  87006.     @Sifra_Oe    smallint, 
  87007. --    @Koi_Artikli    char(1) = Null,
  87008.     @Tip_Podr    char(1) = Null,
  87009.     @Sifra_Od    varchar(20) = Null,
  87010.     @Sifra_Do    varchar(20) = Null,
  87011.     @Kto        char(6) = Null,
  87012.     @Sifra_Gr    char(3) = Null,
  87013.     @Sifra_Podg    char(6) = Null,
  87014.     @Lokacija    varchar(10) = Null,
  87015.     @Sifra_Brand    Smallint = Null,
  87016.     @Sifra_ZBrand    Smallint = Null,
  87017.     @Drugo1    smallint = Null,
  87018.     @Drugo2    smallint = Null,
  87019.     @Drugo3    smallint = Null,
  87020.     @Drugo4    smallint = Null,
  87021.     @Drugo5    smallint = Null,
  87022.     @PodNadEdn     char(2) = Null
  87023. --    @MinMaxOpt    char(3) = 'O',        -- M Min,   X Max,  O Optimalna     Artikli Cija Zaliha e pomala od M, X ili O
  87024. AS
  87025.     Set Nocount On
  87026.     Declare @SSQL varchar(8000)
  87027.        Set @SSQL='SELECT S.Sifra_OE, S.Vlez, S.Izlez,
  87028.             (S.Vlez-S.Izlez) Zaliha , S.Cena, S.DanCena, 
  87029.             S.Sifra_Art, K.ImeArt, K.Edmera, T.ProcOsn, K.Sifra_Tar, K.Tezina, K.ImaKomerc, K.Nabavna, K.DogCena, 
  87030.             O.MinZal, O.MaxZal, O.OptZal, O.Dozvoleno,
  87031.             (Case When (S.Vlez-S.Izlez) <= O.MinZal Then O.MaxZal Else 0 End) Nar1
  87032.         FROM Soart S 
  87033.         Inner Join OptZalPoOe O On O.Sifra_Oe=S.Sifra_Oe And O.Sifra_Art=S.Sifra_Art
  87034.         INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art 
  87035.         INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar '
  87036.     If @Sifra_ZBrand Is Not Null
  87037.         Set @SSQL = @SSQL + ' INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  87038.     Set @SSQL = @SSQL + ' Where S.Sifra_Art In (Select Distinct Sifra_Art From Stavr Where VlIzl = ''V'' And Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ') '
  87039.     If @Sifra_Oe Is Not Null
  87040.         Set @SSQL = @SSQL + ' AND (S.Sifra_Oe=' + Cast(@Sifra_Oe As Varchar(6)) + ') '
  87041.        If @Sifra_Od IS NOT NULL 
  87042.         Set @SSQL = @SSQL + ' AND S.Sifra_Art>=''' + @Sifra_Od + ''' '
  87043.        If @Sifra_Do IS NOT NULL 
  87044.         Set @SSQL = @SSQL + ' AND S.Sifra_Art<=''' + @Sifra_Do + ''' '
  87045.     If @Sifra_Brand Is Not Null
  87046.         Set @SSQL = @SSQL + ' AND (K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  87047.     If @Sifra_ZBrand Is Not Null
  87048.         Set @SSQL = @SSQL + ' AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  87049.        If @Kto IS NOT NULL
  87050.               Set @SSQL = @SSQL + ' AND (K.Kto='''+@Kto+''') '
  87051.        If @Sifra_Gr IS NOT NULL
  87052.               Set @SSQL = @SSQL + ' AND (G.Sifra_Gr='''+@Sifra_Gr+''') '     
  87053.        If @Sifra_Podg IS NOT NULL
  87054.         Set @SSQL = @SSQL + ' AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  87055.        If @Lokacija IS NOT NULL
  87056.         Set @SSQL = @SSQL + ' AND (K.Lokacija='''+lTrim(rTrim(@Lokacija))+''') '
  87057.     If @Drugo1 Is Not NULL
  87058.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  87059.     If @Drugo2 Is Not NULL
  87060.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  87061.     If @Drugo3 Is Not NULL
  87062.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  87063.     If @Drugo4 Is Not NULL
  87064.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  87065.     If @Drugo5 Is Not NULL
  87066.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  87067.     If @PodNadEdn = 'P'     --Pod Min Zaliha
  87068.         Set @SSQL = @SSQL + ' And O.MinZal > (Vlez-Izlez) '
  87069.     Else If @PodNadEdn = 'PN'    --Pod ili Nad Min Zaliha 
  87070.         Set @SSQL = @SSQL + ' And (O.MinZal > (Vlez-Izlez) Or O.MinZal < (Vlez-Izlez)) '
  87071.     Else If @PodNadEdn = 'PE'    --Pod ili Ednakvo so Min Zaliha 
  87072.         Set @SSQL = @SSQL + ' And (O.MinZal > (Vlez-Izlez) Or O.MinZal = (Vlez-Izlez)) '
  87073.     Else If @PodNadEdn = 'N'    --Nad Min Zaliha 
  87074.         Set @SSQL = @SSQL + ' And O.MinZal < (Vlez-Izlez) '
  87075.     Else If @PodNadEdn = 'NE'    --Nad ili ednakvo so Min Zaliha 
  87076.         Set @SSQL = @SSQL + ' And (O.MinZal < (Vlez-Izlez) Or O.MinZal = (Vlez-Izlez)) '
  87077.     Else If @PodNadEdn = 'E'    --Ednakvo so Min Zaliha 
  87078.         Set @SSQL = @SSQL + ' And O.MinZal = (Vlez-Izlez)  And O.MinZal <> 0 '
  87079.        If @Tip_Podr='S'
  87080.               Set @SSQL=@SSQL+' Order By S.Sifra_Art'
  87081.        Else If @Tip_Podr='A'
  87082.               Set @SSQL=@SSQL+' Order By K.ImeArt'
  87083.     Exec(@SSQL)
  87084.     Set Nocount Off
  87085.  
  87086.  
  87087. Go
  87088. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_neazuriranirazlceni]'))
  87089. drop procedure [dbo].[sp_neazuriranirazlceni]
  87090.  
  87091. Go
  87092. CREATE PROCEDURE sp_NeazuriraniRazlCeni
  87093.     @Sifra_Oe    smallint,
  87094.     @KoiOe    varchar(6),
  87095.     @Datum_Od    smalldatetime,
  87096.     @Datum_Do    smalldatetime,
  87097.     @Sifra_Razl     varchar(50),
  87098.     @SoDanok    char(1) = 'D'
  87099. AS
  87100.     Declare @SSQL as varchar(8000)
  87101.     Set @SSQL = ' Select R.Sifra_Oe, R.Sifra_Razl, R.Datum_Dok, 
  87102.             Round(Sum(R.Kolic*(dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''' + @SoDanok + ''') - 
  87103.                            dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''' + @SoDanok + '''))), 4) as Iznos 
  87104.             From RazlCeni R
  87105.              Inner Join KatArt K ON R.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' 
  87106.             Where R.Sifra_Razl IN (' + @Sifra_Razl + ') 
  87107.             And Broj_Nal Is Null ' 
  87108.     If @Sifra_Oe Is Not Null
  87109.         Set @SSQL = @SSQL + ' And R.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  87110.     If @KoiOe Is Not Null
  87111.         Set @SSQL = @SSQL + ' And R.Sifra_Oe In (Select Sifra_Oe From SGrorg Where Sif_GrOrg = ''' + @KoiOe + ''') '
  87112.     If @Datum_Od Is Not Null
  87113.         Set @SSQL = @SSQL + ' And R.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  87114.     If @Datum_Do Is Not Null
  87115.         Set @SSQL = @SSQL + ' And R.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  87116.     Set @SSQL = @SSQL + ' Group By R.Sifra_Oe, R.Sifra_Razl, R.Datum_Dok
  87117.                   Order By R.Sifra_Oe, R.Sifra_Razl, R.Datum_Dok '
  87118.     Exec(@SSQL)
  87119.  
  87120.  
  87121. Go
  87122. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_neg_vtora_poz_prva]'))
  87123. drop procedure [dbo].[sp_neg_vtora_poz_prva]
  87124.  
  87125. Go
  87126.  
  87127.  
  87128. CREATE    PROCEDURE sp_neg_vtora_poz_prva
  87129.     @Sifra_OE smallint,
  87130.     @Sifra_Prim smallint,
  87131.     @Sifra_Art_Od varchar (20)
  87132. AS
  87133.    SELECT SN.Sifra_art, K.Imeart, K.EdMera, K.Sifra_tar, T.ProcOsn, SN.Vlez - SN.Izlez as ZalihaNeg, SP.Vlez - SP.Izlez as ZalihaPoz, K.Dogcena, K.Malcena, K.Nabavna, SN.Cena
  87134.     FROM Soart SN
  87135.         Inner Join Soart SP on SP.sifra_oe=@Sifra_Oe and SP.sifra_art=SN.sifra_art
  87136.     Inner Join Katart K On SN.Sifra_Art=K.Sifra_Art And (K.smatusl is null or K.smatusl <> 'U')
  87137.         Inner Join Tarifi T on T.sifra_tar = K.Sifra_Tar
  87138.     WHERE SN.Sifra_Art >= @Sifra_Art_Od and SN.Sifra_OE=@Sifra_Prim and SN.vlez - SN.izlez < 0 and SP.vlez - SP.izlez > 0
  87139.         Order By SN.Sifra_Art
  87140.  
  87141.  
  87142.  
  87143. Go
  87144. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_neisporacaniart]'))
  87145. drop procedure [dbo].[sp_neisporacaniart]
  87146.  
  87147. Go
  87148. CREATE PROCEDURE sp_NeisporacaniArt
  87149.     @Sifra_Oe        smallint,
  87150.     @Koi_Oe        char(6),
  87151.     @Lokacija        char(11),
  87152.     @KF_Lokacija        char(1) = 'N',
  87153.     @Sifra_Art_Od        varchar(20),
  87154.     @Sifra_Art_Do        varchar(20),
  87155.     @Sifra_Gr        char(3),
  87156.     @Sifra_Podg        char(6),
  87157.     @Datum_Nar_Od    smalldatetime,
  87158.     @Datum_Nar_Do    smalldatetime,
  87159.     @Datum_Dok_Od    smalldatetime,
  87160.     @Datum_Dok_Do    smalldatetime
  87161.  AS
  87162.     Declare @SSQL as varchar(8000)
  87163.     Set @SSQL = ' Select S.DokrId, S.NarId, S.Sifra_art, S.Kolic_Nar, S.Kolic_Real, S.Opis, D.Sifra_Oe, K.ImeArt, D.Datum_Dok, K.Aktiven, D.Sifra_Prim
  87164.             From StaNeReal S
  87165.             Left Outer Join Dokr D On S.DokrId=D.DokrId
  87166.             Left Outer Join Naracki N On S.NarId=N.NarId 
  87167.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art '
  87168.     If @Sifra_Gr Is Not Null
  87169.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg '
  87170.     Set @SSQL = @SSQL + ' Where 1=1 '
  87171.     If @Sifra_Oe Is Not Null
  87172.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' ' 
  87173.     If @Koi_Oe Is Not Null
  87174.         Set @SSQL = @SSQL + ' And D.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  87175.     If @Lokacija Is Not NULL
  87176.         Begin
  87177.             If @KF_Lokacija  = 'N'
  87178.                 Set @SSQL = @SSQL + 'And K.Lokacija = ''' + @Lokacija + ''' '
  87179.             Else
  87180.                 Set @SSQL = @SSQL + 'And K.Lokacija <> ''' + @Lokacija + ''' '
  87181.         End    
  87182.     If @Sifra_Art_Od Is Not Null
  87183.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' ' 
  87184.     If @Sifra_Art_Do Is Not Null
  87185.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' ' 
  87186.     If @Sifra_Podg Is Not Null
  87187.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' ' 
  87188.     If @Sifra_Gr Is Not Null
  87189.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' ' 
  87190.     If @Datum_Dok_Od Is Not Null
  87191.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(30)) + ''' ' 
  87192.     If @Datum_Dok_Do Is Not Null
  87193.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(30)) + ''' ' 
  87194.     If @Datum_Nar_Od Is Not Null
  87195.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_Nar_Od as varchar(30)) + ''' ' 
  87196.     If @Datum_Nar_Od Is Not Null
  87197.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + cast(@Datum_Nar_Do as varchar(30)) + ''' ' 
  87198.     Exec(@SSQL)
  87199.  
  87200.  
  87201. Go
  87202. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_neisporart_podokrid]'))
  87203. drop procedure [dbo].[sp_neisporart_podokrid]
  87204.  
  87205. Go
  87206.  
  87207. CREATE  PROCEDURE sp_NeisporArt_PoDokrID
  87208.     @DokrID    int
  87209.  AS
  87210. Select S.DokrId, S.NarId, S.Sifra_art, S.Kolic_Nar, S.Kolic_Real, S.Opis, D.Sifra_Oe, K.ImeArt, D.Datum_Dok, K.Aktiven
  87211. From StaNeReal S Left Outer Join Dokr D On S.DokrId=D.DokrId
  87212. Inner Join Katart K On K.Sifra_Art = S.Sifra_Art Where S.DokrId = @DokrId
  87213.  
  87214.  
  87215.  
  87216. Go
  87217. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nepratenidok]'))
  87218. drop procedure [dbo].[sp_nepratenidok]
  87219.  
  87220. Go
  87221.  
  87222.  
  87223.  
  87224.  
  87225. CREATE    PROCEDURE sp_NePrateniDok
  87226.     @Sifra_OE smallint
  87227.  AS
  87228.     SELECT DokrID, Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna
  87229.     FROM Dokr
  87230.     WHERE (Prenesen IS NULL OR Prenesen <> 'D')
  87231.         And (Sifra_OE = @Sifra_OE OR Sifra_Prim = @Sifra_OE)
  87232.         And (ImaDodatna IS NULL OR ImaDodatna <> 'P')
  87233.  
  87234.  
  87235.  
  87236. Go
  87237. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nerasknizenistavki]'))
  87238. drop procedure [dbo].[sp_nerasknizenistavki]
  87239.  
  87240. Go
  87241. CREATE  PROCEDURE sp_NerasknizeniStavki
  87242.     @Sifra_Oe        smallint = Null,
  87243.     @Gr_Org        char(6) = Null,
  87244.     @Datum_EvidOd    smalldatetime = Null,
  87245.     @Datum_EvidDo    smalldatetime = Null,
  87246.     @Sifra_ArtOd        varchar(20) = Null,
  87247.     @Sifra_ArtDo        varchar(20) = Null
  87248. AS
  87249.     Declare @SSQL as varchar(8000)
  87250.     Set @SSQL = ' Select S.Sifra_Oe, O.ImeOrg, P.Datum_Evid, S.Sifra_Art, K.ImeArt, S.RKolic, S.Kolic
  87251.             From KPromet P
  87252.             Inner Join KSPromet S On S.Sifra_Oe=P.Sifra_Oe And S.Grp_Kasa=P.Grp_Kasa And S.BrKasa=P.BrKasa And S.Broj_Ska=P.Broj_Ska
  87253.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  87254.             Left Outer Join Orged O On O.Sifra_Oe=S.Sifra_Oe
  87255.             Where (S.Kolic<>S.RKolic Or S.RKolic Is Null) '
  87256.     If @Sifra_ArtOd Is Not Null
  87257.         Set @SSQL=@SSQL + ' And S.Sifra_Art >= ''' + @Sifra_ArtOd + ''' '
  87258.     If @Sifra_ArtDo Is Not Null
  87259.         Set @SSQL=@SSQL + ' And S.Sifra_Art <= ''' + @Sifra_ArtDo + ''' '
  87260.     If @Gr_Org Is Not Null
  87261.         Set @SSQL=@SSQL + ' And P.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Gr_Org + ''') '
  87262.     If @Sifra_Oe Is Not Null
  87263.         Set @SSQL=@SSQL + ' And P.Sifra_Oe = ' + Cast(@Sifra_Oe as Varchar(6)) + ' '
  87264.     If @Datum_EvidOd Is Not Null
  87265.         Set @SSQL=@SSQL + ' And P.Datum_Evid >= ''' + Cast(@Datum_EvidOd as Varchar(30)) + ''' '
  87266.     If @Datum_EvidDo Is Not Null
  87267.         Set @SSQL=@SSQL + ' And P.Datum_Evid <= ''' + Cast(@Datum_EvidDo as Varchar(30)) + ''' '
  87268.     Exec(@SSQL)
  87269.  
  87270.  
  87271. Go
  87272. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nerealnarac]'))
  87273. drop procedure [dbo].[sp_nerealnarac]
  87274.  
  87275. Go
  87276. CREATE     PROCEDURE sp_NeRealNarac
  87277.     @Sifra_OE    smallint = NULL,
  87278.     @Sifra_Nar    smallint,
  87279.     @Broj_Nar_Od    int = NULL,
  87280.     @Broj_Nar_Do    int = NULL,
  87281.     @Datum_Od    SmallDateTime = NULL,
  87282.     @Datum_Do    SmallDateTime = NULL
  87283. AS
  87284.     Declare @SSQL varchar(2000)
  87285.     SET @SSQL = 'SELECT Sifra_OE, Sifra_Nar, Broj_Nar FROM Naracki WHERE (Realiziran is null or Realiziran = ''N'') and Sifra_Nar = ' + cast(@Sifra_Nar as varchar(5))
  87286.     IF @Sifra_OE IS NOT NULL
  87287.         SET @SSQL = @SSQL + ' AND Sifra_OE = ' + Cast(@Sifra_OE as varchar(4))    
  87288.     IF @Broj_Nar_Od IS NOT NULL
  87289.         SET @SSQL = @SSQL + ' AND Broj_Nar >= ' + Cast(@Broj_Nar_Od as varchar(9))    
  87290.     IF @Broj_Nar_Do IS NOT NULL
  87291.         SET @SSQL = @SSQL + ' AND Broj_Nar <= ' + Cast(@Broj_Nar_Do as varchar(9))    
  87292.     IF @Datum_Od IS NOT NULL
  87293.         SET @SSQL = @SSQL + ' AND Datum_Nar >= ''' + Cast(@Datum_Od as varchar(35)) + ''' '
  87294.     IF @Datum_Do IS NOT NULL
  87295.         SET @SSQL = @SSQL + ' AND Datum_Nar <= ''' + Cast(@Datum_Do as varchar(35)) + ''' '    
  87296.     EXEC(@SSQL)
  87297.  
  87298.  
  87299. Go
  87300. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_neuspesnaprodazba]'))
  87301. drop procedure [dbo].[sp_neuspesnaprodazba]
  87302.  
  87303. Go
  87304. CREATE PROCEDURE sp_NeuspesnaProdazba
  87305.     @Sifra_OE Smallint = Null, 
  87306.     @KoiOE Varchar(500) = Null,
  87307.     @KPod1 Smallint = Null,
  87308.     @KPod2 Smallint = Null,
  87309.     @KPod3 Smallint = Null,
  87310.     @KPod4 Smallint = Null,
  87311.     @KPod5 Smallint = Null,
  87312.     @Sifra_Tip Smallint = Null,
  87313.     @Datum_Od Smalldatetime = Null,
  87314.     @Datum_Do Smalldatetime = Null,
  87315.     @Sifra_Brand Smallint = Null,
  87316.     @Sifra_Art_Od Varchar(20) = Null,
  87317.     @Sifra_Art_Do Varchar(20) = Null,
  87318.     @Sifra_Kup_Od Char(6) = Null,
  87319.     @Sifra_Kup_Do Char(6) = Null,
  87320.     @Kto Char(6) = Null,
  87321.     @Sifra_Gr Char(3) = Null,
  87322.     @Sifra_Podg Char(6) = Null,
  87323.     @Lokacija Varchar(10) = Null,
  87324.     @TipKup Char(11) = Null,
  87325.     @Koi_Gradovi varchar(200) = Null,
  87326.     @Koi_Regioni varchar(200) = Null,
  87327.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  87328.     @ADrugo1    smallint = Null,
  87329.     @ADrugo2    smallint = Null,
  87330.     @ADrugo3    smallint = Null,
  87331.     @ADrugo4    smallint = Null,
  87332.     @ADrugo5    smallint = Null,
  87333.     @Sifra_Dok    varchar(500) = Null
  87334. AS 
  87335.     Declare @SSQL as varchar(8000)
  87336.     Declare @SSQLUsl as varchar(8000)
  87337.     Declare @SSQLGr as varchar(8000)
  87338.     Set @SSQL = ' '
  87339.     Set @SSQLUsl = ' '
  87340.     Set @SSQLGr = ' '
  87341.     If @PoKojDatum = 'V'
  87342.             If @Datum_Do Is Not Null
  87343.         Set @Datum_Do = @Datum_Do + 1
  87344.     Create Table #Tab
  87345.     (
  87346.     Sifra_Oe    smallint,
  87347.     Sifra_art     varchar(20),
  87348.     Sifra_Dok     smallint,
  87349.     Broj_Dok    int,
  87350.     Sifra_Kup    char(6),
  87351.     Sifra_Obj    smallint,
  87352.     Sifra_Mest    int,
  87353.     Kolic        decimal(18,6)
  87354.     )
  87355. ----------------------------------------------------------- P R O D A Z B A  --------------------------------------------------------------------------------
  87356.     Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Art, S.Sifra_dok, S.Broj_dok, D.Sifra_Kup, D.Sifra_Obj, D.Sifra_Mest, Sum(S.Kolic)
  87357.             From Stavr S 
  87358.             Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  87359.             Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  87360.             Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  87361.              Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  87362.     If @Sifra_Gr Is Not Null
  87363.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  87364.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and  D.Sifra_za = 1'
  87365.     If @Sifra_OE Is Not NULL    
  87366.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  87367.     If @KoiOE Is Not NULL
  87368.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  87369.     If @Sifra_Art_Od Is Not NULL
  87370.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  87371.     If @Sifra_Art_Do Is Not NULL
  87372.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  87373.     If @Sifra_Brand Is Not NULL
  87374.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  87375.     If @Lokacija Is Not NULL
  87376.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  87377.     If @Kto Is Not NULL
  87378.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  87379.     If @Sifra_Podg Is Not NULL
  87380.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  87381.     If @Sifra_Gr Is Not NULL
  87382.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  87383.     If @PoKojDatum = 'V'
  87384.           Begin
  87385.         If @Datum_Od Is Not NULL
  87386.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  87387.         If @Datum_Do Is Not NULL
  87388.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  87389.           End
  87390.     Else 
  87391.           Begin
  87392.         If @Datum_Od Is Not NULL
  87393.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  87394.         If @Datum_Do Is Not NULL
  87395.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  87396.            End
  87397.     If @KPod1 Is Not NULL
  87398.            Begin
  87399.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')
  87400.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')) '
  87401.            End
  87402.     If @KPod2 Is Not NULL
  87403.            Begin
  87404.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')
  87405.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')) '
  87406.            End
  87407.     If @KPod3 Is Not NULL
  87408.            Begin
  87409.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')
  87410.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')) '
  87411.            End
  87412.     If @KPod4 Is Not NULL
  87413.            Begin
  87414.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')
  87415.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')) '
  87416.            End
  87417.     If @KPod5 Is Not NULL
  87418.            Begin
  87419.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')
  87420.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')) '
  87421.            End
  87422.     If @Sifra_Tip Is Not NULL
  87423.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  87424.     If @Sifra_Kup_Od Is Not NULL
  87425.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  87426.     If @Sifra_Kup_Do Is Not NULL
  87427.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  87428.     If @TipKup Is Not NULL
  87429.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  87430.     If @Koi_Gradovi Is Not NULL    
  87431.         Begin
  87432.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  87433.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  87434.         End
  87435.     If @Koi_Regioni Is Not NULL    
  87436.         Begin
  87437.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  87438.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  87439.         End
  87440.     If @ADrugo1 Is Not NULL
  87441.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@ADrugo1 As Varchar(6)) + ' '
  87442.     If @ADrugo2 Is Not NULL
  87443.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@ADrugo2 As Varchar(6)) + ' '
  87444.     If @ADrugo3 Is Not NULL
  87445.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@ADrugo3 As Varchar(6)) + ' '
  87446.     If @ADrugo4 Is Not NULL
  87447.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@ADrugo4 As Varchar(6)) + ' '
  87448.     If @ADrugo5 Is Not NULL
  87449.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@ADrugo5 As Varchar(6)) + ' '
  87450.     If @Sifra_Dok Is Not Null
  87451.         Set @SSQLGr = @SSQLGr + ' And S.Sifra_Dok in (' + @Sifra_Dok + ') '   
  87452.     Set @SSQLGr = @SSQLGr + ' Group By S.Sifra_Oe, S.Sifra_art, S.Sifra_Dok, S.Broj_Dok, D.Sifra_Kup, D.Sifra_Obj, D.Sifra_Mest'
  87453.     Insert Into #Tab (Sifra_Oe, Sifra_Art, Sifra_Dok, Broj_Dok, Sifra_Kup, Sifra_Obj, Sifra_Mest, Kolic) Exec (@SSQL+@SSQLUsl+@SSQLGr)
  87454. print @SSQL+@SSQLUsl+@SSQLGr
  87455. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------
  87456. ------  Neuspesna Prodazba
  87457.     Set @SSQLUsl= ' '
  87458.     If @Sifra_OE Is Not NULL    
  87459.         Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  87460.     If @KoiOE Is Not NULL
  87461.              Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE IN (' + @KoiOE + ') '
  87462.     If @Datum_Od Is Not NULL
  87463.         Set @SSQLUsl = @SSQLUsl + ' And A.DatumVreme>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  87464.     If @Datum_Do Is Not NULL
  87465.         Set @SSQLUsl = @SSQLUsl + ' And A.DatumVreme<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  87466.     If @KPod1 Is Not NULL
  87467.            Begin
  87468.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')
  87469.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')) '
  87470.            End
  87471.     If @KPod2 Is Not NULL
  87472.            Begin
  87473.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')
  87474.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')) '
  87475.            End
  87476.     If @KPod3 Is Not NULL
  87477.       Begin
  87478.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')
  87479.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')) '
  87480.            End
  87481.     If @KPod4 Is Not NULL
  87482.            Begin
  87483.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')
  87484.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')) '
  87485.            End
  87486.     If @KPod5 Is Not NULL
  87487.            Begin
  87488.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')
  87489.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')) '
  87490.            End
  87491.     If @Sifra_Tip Is Not NULL
  87492.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  87493.     If @Sifra_Kup_Od Is Not NULL
  87494.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  87495.     If @Sifra_Kup_Do Is Not NULL
  87496.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  87497.     If @TipKup Is Not NULL
  87498.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  87499.     If @Koi_Gradovi Is Not NULL    
  87500.         Begin
  87501.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  87502.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  87503.         End
  87504.     If @Koi_Regioni Is Not NULL    
  87505.         Begin
  87506.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  87507.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  87508.         End
  87509.     Create Table #Rez
  87510.     (
  87511.      Sifra_Oe    smallint,
  87512.      Sifra_Kup    char(6),
  87513.      DatumVreme    datetime,
  87514.      Aktivnost    char(1),
  87515.      Sifra_Obj    smallint,
  87516.      SoBarKod    char(1)
  87517.     )
  87518.     Set @SSQL = ' Select A.Sifra_OE, A.Sifra_Kup, A.DatumVreme, A.Aktivnost, A.Sifra_Obj, A.SoBarKod
  87519.     From Akcija A
  87520.     Left Outer Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  87521.     Left Outer Join KObjekti KO ON A.Sifra_obj=KO.Sifra_obj and A.Sifra_kup=KO.Sifra_kup
  87522.     Where A.Sifra_Obj Is Null
  87523.     And A.Sifra_Kup Not in (Select Distinct Sifra_Kup From #Tab) '
  87524.     Insert Into #Rez Exec(@SSQL+@SSQLUsl)
  87525.     Set @SSQL = ' Select A.Sifra_OE, A.Sifra_Kup, A.DatumVreme, A.Aktivnost, A.Sifra_Obj, A.SoBarKod
  87526.     From Akcija A
  87527.     Left Outer Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  87528.     Left Outer Join KObjekti KO ON A.Sifra_obj=KO.Sifra_obj and A.Sifra_kup=KO.Sifra_kup
  87529.     Where A.Sifra_Obj Is Not Null
  87530.     And Cast(A.Sifra_Oe as Varchar(6))+''$$$''+A.Sifra_Kup+''$$$''+Cast(A.Sifra_Obj as varchar(6)) Not in (Select Distinct Cast(Sifra_Oe as Varchar(6)) +''$$$''+Sifra_Kup+''$$$''+Cast(Sifra_Obj as varchar(6)) From #Tab) '
  87531.     Insert Into #Rez Exec(@SSQL+@SSQLUsl)
  87532.     Select R.Sifra_OE, O.ImeOrg, R.Sifra_Kup, Kup.ImeKup, R.Sifra_Obj, KO.ImeObj, R.DatumVreme, R.Aktivnost, SA.ImeAkc, R.SoBarKod 
  87533.     From #Rez R
  87534.     Inner Join Orged O On O.Sifra_Oe=R.Sifra_Oe
  87535.     Left Outer Join Komint Kup On Kup.Sifra_Kup=R.Sifra_Kup
  87536.     Left Outer Join KObjekti KO ON R.Sifra_obj=KO.Sifra_obj and R.Sifra_kup=KO.Sifra_kup
  87537.     Left Outer Join SifAkc SA On SA.Sifra_Akc=R.Aktivnost
  87538.  
  87539.  
  87540. Go
  87541. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ng_dnevniplakanja]'))
  87542. drop procedure [dbo].[sp_ng_dnevniplakanja]
  87543.  
  87544. Go
  87545. CREATE PROCEDURE sp_NG_DnevniPlakanja
  87546.     @Sifra_Student        char(6) = Null,
  87547.     @Sifra_Famil        char(20) = Null,
  87548.     @Datum_Fra_Od    smalldatetime = Null,
  87549.     @Datum_Fra_Do    smalldatetime = Null,
  87550.     @Datum_Stavka_Od    smalldatetime = Null,
  87551.     @Datum_Stavka_Do    smalldatetime = Null,
  87552.     @Sifra_CourseType    char(10) = Null,
  87553.     @Godina        char(10) = Null,
  87554.     @Aktiven        char(1) = Null,
  87555.     @Sifra_BillCode        char(10) = Null,
  87556.     @NivoCourseType    smallint = Null,
  87557.     @Kurs            decimal(18,4) = 1
  87558. AS
  87559.     Declare @SSQL as varchar(8000)
  87560.     Set @SSQL = ' Select F.Sifra_Student, S.ImeStudent, F.Datum_Inv, FS.Datum_Stavka, F.Broj_Inv, FS.Sifra_BillCode, FS.Opis_Stavka, BC.Tip_BillCode, '
  87561.     If @Kurs > 1
  87562.         Set @SSQL = @SSQL + ' (FS.Iznos_Stavka * ' + Cast(@Kurs as varchar(20)) +  ') Iznos_Stavka '
  87563.     Else
  87564.         Set @SSQL = @SSQL + ' FS.Iznos_Stavka '
  87565.     Set @SSQL = @SSQL + ' From NGInvoice F
  87566.             Inner Join NGInvoiceSta FS On FS.Sifra_Oe=F.Sifra_Oe And FS.Broj_Inv=F.Broj_Inv
  87567.             Inner Join NGStudents S ON S.Sifra_Student=F.Sifra_Student
  87568.             Inner Join NGBillCodes BC On BC.Sifra_BillCode=FS.Sifra_BillCode '
  87569.     If @NivoCourseType Is Not Null
  87570.         Set @SSQL = @SSQL + ' Inner Join NGCourseType CT On CT.Sifra_CourseType = S.Sifra_CourseType '
  87571.     Set @SSQL = @SSQL + ' Where BC.Tip_BillCode = ''P'' '
  87572.     If @Sifra_Student Is Not Null
  87573.         Set @SSQL = @SSQL + ' And F.Sifra_Student = ''' + @Sifra_Student + ''' '
  87574.     If @Sifra_Famil Is Not Null
  87575.         Set @SSQL = @SSQL + ' And S.Sifra_Famil = ''' + @Sifra_Famil + ''' '
  87576.     If @Datum_Fra_Od Is Not Null
  87577.         Set @SSQL = @SSQL + ' And F.Datum_Inv >= ''' + Cast(@Datum_Fra_Od as varchar(30)) + ''' '
  87578.     If @Datum_Fra_Do Is Not Null
  87579.         Set @SSQL = @SSQL + ' And F.Datum_Inv <= ''' + Cast(@Datum_Fra_Do as varchar(30)) + ''' '
  87580.     If @Datum_Stavka_Od Is Not Null
  87581.         Set @SSQL = @SSQL + ' And FS.Datum_Stavka >= ''' + Cast(@Datum_Stavka_Od as varchar(30)) + ''' '
  87582.     If @Datum_Stavka_Do Is Not Null
  87583.         Set @SSQL = @SSQL + ' And FS.Datum_Stavka <= ''' + Cast(@Datum_Stavka_Do as varchar(30)) + ''' '
  87584.     If @Sifra_CourseType Is Not Null
  87585.         Set @SSQL = @SSQL + ' And S.Sifra_CourseType = ''' + @Sifra_CourseType + ''' '
  87586.     If @Godina Is Not Null
  87587.         Set @SSQL = @SSQL + ' And S.Godina = ''' + @Godina + ''' '
  87588.     If @Aktiven Is Not Null
  87589.         Set @SSQL = @SSQL + ' And S.Aktiven = ''' + @Aktiven + ''' '
  87590.     If @Sifra_BillCode Is Not Null
  87591.         Set @SSQL = @SSQL + ' And FS.Sifra_BillCode = ''' + @Sifra_BillCode + ''' '
  87592.     If @NivoCourseType Is Not Null
  87593.         Set @SSQL = @SSQL + ' And CT.NivoCourseType = ''' + Cast(@NivoCourseType as varchar(10)) + ''' '
  87594.     Set @SSQL = @SSQL + ' Order By FS.Datum_Stavka, F.Broj_Inv '
  87595.     Exec(@SSQL)
  87596.  
  87597. Go
  87598. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ng_pismopotsetuvanje]'))
  87599. drop procedure [dbo].[sp_ng_pismopotsetuvanje]
  87600.  
  87601. Go
  87602. CREATE PROCEDURE sp_NG_PismoPotsetuvanje
  87603.     @Sifra_Student        char(6) = Null,
  87604.     @Sifra_Famil        char(20) = Null,
  87605.     @Datum_Presm        smalldatetime,
  87606.     @Sifra_CourseType    char(10) = Null,
  87607.     @Godina        char(10) = Null,
  87608.     @Aktiven        char(1) = Null,
  87609.     @Sifra_BillCode        char(10) = Null,
  87610.     @NivoCourseType    smallint = Null,
  87611.     @Kurs            decimal(18,4) = 1
  87612.  
  87613. AS
  87614.     If @Datum_Presm Is Null
  87615.         Set @Datum_Presm = GetDate()
  87616.     Declare @SSQL as varchar(8000)
  87617.  
  87618.     Create Table #Rez
  87619.     (
  87620.      TotalCharges        decimal(18,4),
  87621.      FutureCharges        decimal(18,4),
  87622.      CurrentCharges        decimal(18,4),
  87623.      CurrentPayments    decimal(18,4),
  87624.      CurrentAmountDue    decimal(18,4),
  87625.      PastDue        decimal(18,4)
  87626.     )
  87627.  
  87628.     Set @SSQL = ' Select    Sum(Case When BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka Else 0 End) TotalCharges,
  87629.                 Sum(Case When FS.Datum_Stavka > ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka Else 0 End) FutureCharges,
  87630.                 Sum(Case When FS.Datum_Stavka <= ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka Else 0 End) CurrentCharges,
  87631.                 Sum(Case When BC.Tip_BillCode In (''P'', ''C'') Then FS.Iznos_Stavka Else 0 End) CurrentPayments,
  87632.                 Sum(Case When FS.Datum_Stavka <= ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka 
  87633.                         When BC.Tip_BillCode In (''P'', ''C'') Then (- 1* FS.Iznos_Stavka) Else 0 End) CurrentAmountDue,
  87634.                 Sum(Case When FS.Datum_Dosp_Stavka < ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka 
  87635.                         When BC.Tip_BillCode In (''P'', ''C'') Then (- 1* FS.Iznos_Stavka) Else 0 End) PastDue
  87636.             From NGInvoice F
  87637.             Inner Join NGInvoiceSta FS On FS.Sifra_Oe=F.Sifra_Oe And FS.Broj_Inv=F.Broj_Inv
  87638.             Inner Join NGStudents S ON S.Sifra_Student=F.Sifra_Student
  87639.             Left Outer Join NGBillCodes BC On BC.Sifra_BillCode=FS.Sifra_BillCode '
  87640.     If @NivoCourseType Is Not Null
  87641.         Set @SSQL = @SSQL + ' Inner Join NGCourseType CT On CT.Sifra_CourseType = S.Sifra_CourseType '
  87642.     Set @SSQL = @SSQL + ' Where 1=1 '
  87643.     If @Sifra_Student Is Not Null
  87644.         Set @SSQL = @SSQL + ' And F.Sifra_Student = ''' + @Sifra_Student + ''' '
  87645.     If @Sifra_Famil Is Not Null
  87646.         Set @SSQL = @SSQL + ' And S.Sifra_Famil = ''' + @Sifra_Famil + ''' '
  87647.     If @Sifra_CourseType Is Not Null
  87648.         Set @SSQL = @SSQL + ' And S.Sifra_CourseType = ''' + @Sifra_CourseType + ''' '
  87649.     If @Godina Is Not Null
  87650.         Set @SSQL = @SSQL + ' And S.Godina = ''' + @Godina + ''' '
  87651.     If @Aktiven Is Not Null
  87652.         Set @SSQL = @SSQL + ' And S.Aktiven = ''' + @Aktiven + ''' '
  87653.     If @Sifra_BillCode Is Not Null
  87654.         Set @SSQL = @SSQL + ' And FS.Sifra_BillCode = ''' + @Sifra_BillCode + ''' '
  87655.     If @NivoCourseType Is Not Null
  87656.         Set @SSQL = @SSQL + ' And CT.NivoCourseType = ''' + Cast(@NivoCourseType as varchar(10)) + ''' '
  87657.     Insert Into #Rez Exec(@SSQL)
  87658.  
  87659.     If @Kurs > 1
  87660.         Update #Rez
  87661.         Set TotalCharges=TotalCharges*@Kurs, FutureCharges=FutureCharges*@Kurs, CurrentCharges=CurrentCharges*@Kurs, 
  87662.               CurrentPayments=CurrentPayments*@Kurs, CurrentAmountDue=CurrentAmountDue*@Kurs, PastDue=PastDue*@Kurs
  87663.  
  87664.     Select TotalCharges, FutureCharges, CurrentCharges, CurrentPayments, 
  87665.         (Case When CurrentAmountDue < 0 Then 0 Else CurrentAmountDue End) CurrentAmountDue, 
  87666.         (Case When CurrentAmountDue < 0 Then Abs(CurrentAmountDue) Else 0 End) AdvancedPayments, 
  87667.         (Case When PastDue < 0 Then 0 Else PastDue End) PastDue 
  87668.     From #Rez
  87669.  
  87670. Go
  87671. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ng_pregledpofakturi]'))
  87672. drop procedure [dbo].[sp_ng_pregledpofakturi]
  87673.  
  87674. Go
  87675.  
  87676.  
  87677.  
  87678. CREATE   PROCEDURE sp_NG_PregledPoFakturi
  87679.     @Sifra_Student        char(6) = Null,
  87680.     @Sifra_Famil        char(20) = Null,
  87681.     @Datum_Fra_Od    smalldatetime = Null,
  87682.     @Datum_Fra_Do    smalldatetime = Null,
  87683.     @SoAmountDue    char(1) = 'N',
  87684.     @SoPassDue        char(1) = 'N',
  87685.     @Datum_Presm        smalldatetime,
  87686.     @Sifra_CourseType    char(10) = Null,
  87687.     @Godina        char(10) = Null,
  87688.     @Aktiven        char(1) = Null,
  87689.     @Sifra_BillCode        char(10) = Null,
  87690.     @NivoCourseType    smallint = Null,
  87691.     @Grupiran        char(1) = 'N',
  87692.     @Broj_Inv_Od        int = Null,
  87693.     @Broj_Inv_Do        int = Null,
  87694.     @Kurs            decimal(18,4) = 1
  87695.  
  87696. AS
  87697.  
  87698.     If @Datum_Presm Is Null
  87699.         Set @Datum_Presm = GetDate()
  87700.     Declare @SSQL as varchar(8000)
  87701.  
  87702.     Create Table #Rez
  87703.     (
  87704.      Broj_Inv         int,
  87705.      Datum_Inv        smalldatetime,
  87706.      Opis_Invoice        nvarchar(40),
  87707.      DodadenOd        varchar (100),
  87708.      DodadenNa        datetime,
  87709.      Sifra_Student        char(6),
  87710.      Sifra_Famil        char(20),
  87711.      FutureCharges        decimal(18,4),
  87712.      CurrentCharges        decimal(18,4),
  87713.      CurrentPayments    decimal(18,4),
  87714.      PastDue        decimal(18,4)
  87715.     )
  87716.     Set @SSQL = ' Select F.Broj_Inv, F.Datum_Inv, F.Opis_Invoice, F.DodadenOd, F.DodadenNa, F.Sifra_Student, S.Sifra_Famil,
  87717.                 Sum(Case When FS.Datum_Stavka > ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka Else 0 End) FutureCharges,
  87718.                 Sum(Case When FS.Datum_Stavka <= ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka Else 0 End) CurrentCharges,
  87719.                 Sum(Case When BC.Tip_BillCode In (''P'', ''C'') Then FS.Iznos_Stavka Else 0 End) CurrentPayments,
  87720.                 Sum(Case When FS.Datum_Dosp_Stavka < ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka 
  87721.                         When BC.Tip_BillCode In (''P'', ''C'') Then (- 1* FS.Iznos_Stavka) Else 0 End) PastDue
  87722.             From NGInvoice F
  87723.             Inner Join NGInvoiceSta FS On FS.Sifra_Oe=F.Sifra_Oe And FS.Broj_Inv=F.Broj_Inv
  87724.             Inner Join NGStudents S ON S.Sifra_Student=F.Sifra_Student
  87725.             Left Outer Join NGBillCodes BC On BC.Sifra_BillCode=FS.Sifra_BillCode '
  87726.     If @NivoCourseType Is Not Null
  87727.         Set @SSQL = @SSQL + ' Inner Join NGCourseType CT On CT.Sifra_CourseType = S.Sifra_CourseType '
  87728.     Set @SSQL = @SSQL + ' Where 1=1 '
  87729.     If @Sifra_Student Is Not Null
  87730.         Set @SSQL = @SSQL + ' And F.Sifra_Student = ''' + @Sifra_Student + ''' '
  87731.     If @Sifra_Famil Is Not Null
  87732.         Set @SSQL = @SSQL + ' And S.Sifra_Famil = ''' + @Sifra_Famil + ''' '
  87733.  
  87734.     If @Datum_Fra_Od Is Not Null
  87735.         Set @SSQL = @SSQL + ' And F.Datum_Inv >= ''' + Cast(@Datum_Fra_Od as varchar(30)) + ''' '
  87736.     If @Datum_Fra_Do Is Not Null
  87737.         Set @SSQL = @SSQL + ' And F.Datum_Inv <= ''' + Cast(@Datum_Fra_Do as varchar(30)) + ''' '
  87738.  
  87739.     If @Broj_Inv_Od Is Not Null
  87740.         Set @SSQL = @SSQL + ' And F.Broj_Inv_Od >= ' + Cast(@Broj_Inv_Od as varchar(10))
  87741.     If @Broj_Inv_Do Is Not Null
  87742.         Set @SSQL = @SSQL + ' And F.Broj_Inv_Do <= ' + Cast(@Broj_Inv_Do as varchar(10))
  87743.  
  87744.     If @Sifra_CourseType Is Not Null
  87745.         Set @SSQL = @SSQL + ' And S.Sifra_CourseType = ''' + @Sifra_CourseType + ''' '
  87746.     If @Godina Is Not Null
  87747.         Set @SSQL = @SSQL + ' And S.Godina = ''' + @Godina + ''' '
  87748.     If @Aktiven Is Not Null
  87749.         Set @SSQL = @SSQL + ' And S.Aktiven = ''' + @Aktiven + ''' '
  87750.     If @Sifra_BillCode Is Not Null
  87751.         Set @SSQL = @SSQL + ' And FS.Sifra_BillCode = ''' + @Sifra_BillCode + ''' '
  87752.     If @NivoCourseType Is Not Null
  87753.         Set @SSQL = @SSQL + ' And CT.NivoCourseType = ''' + Cast(@NivoCourseType as varchar(10)) + ''' '
  87754.  
  87755.     Set @SSQL = @SSQL + ' Group By F.Broj_Inv, F.Datum_Inv, F.Opis_Invoice, F.DodadenOd, F.DodadenNa, F.Sifra_Student, S.Sifra_Famil '
  87756.  
  87757.     Insert Into #Rez Exec(@SSQL)
  87758.  
  87759.     If @Kurs > 1
  87760.         Update #Rez
  87761.         Set FutureCharges=FutureCharges*@Kurs, CurrentCharges=CurrentCharges*@Kurs, CurrentPayments=CurrentPayments*@Kurs, PastDue=PastDue*@Kurs
  87762.  
  87763.     If @Grupiran = 'D'
  87764.     Begin
  87765.         Create Table #NG
  87766.         (
  87767.          FutureCharges        decimal(18,4),
  87768.          CurrentCharges        decimal(18,4),
  87769.          CurrentPayments    decimal(18,4),
  87770.          CurrentAmountDue    decimal(18,4),
  87771.          AdvancedPayments    decimal(18,4),
  87772.          PastDue        decimal(18,4)
  87773.         )
  87774.         
  87775.         Set @SSQL = ' Select Sum(R.FutureCharges) FutureCharges, Sum(R.CurrentCharges) CurrentCharges, Sum(R.CurrentPayments) CurrentPayments, 
  87776.                 Sum(Case When CurrentCharges - CurrentPayments < 0 Then 0 Else CurrentCharges - CurrentPayments End) CurrentAmountDue, 
  87777.                 Sum(Case When CurrentCharges - CurrentPayments < 0 Then Abs(CurrentCharges - CurrentPayments) Else 0 End) AdvancedPayments, 
  87778.                 Sum(Case When PastDue < 0 Then 0 Else PastDue End) PastDue
  87779.                 From #Rez R '
  87780.         Insert Into #NG Exec(@SSQL)
  87781.  
  87782.         Set @SSQL = ' Select FutureCharges, CurrentCharges, CurrentPayments, CurrentAmountDue, AdvancedPayments, PastDue
  87783.                 From #NG '
  87784.     End
  87785.     Else
  87786.     Begin
  87787.         Set @SSQL = ' Select R.Broj_Inv, R.Datum_Inv, R.Opis_Invoice, R.DodadenOd, R.DodadenNa, R.Sifra_Student, S.ImeStudent, R.Sifra_Famil, FAM.ImeFamil, 
  87788.                     R.FutureCharges, R.CurrentCharges, R.CurrentPayments, 
  87789.                     (Case When R.CurrentCharges - R.CurrentPayments < 0 Then 0 Else R.CurrentCharges - R.CurrentPayments End) CurrentAmountDue, 
  87790.                     (Case When R.CurrentCharges - R.CurrentPayments < 0 Then Abs(R.CurrentCharges - R.CurrentPayments) Else 0 End) AdvancedPayments, 
  87791.                     (Case When R.PastDue < 0 Then 0 Else R.PastDue End) PastDue
  87792.                 From #Rez R
  87793.                 Left Outer Join NGStudents S On S.Sifra_Student = R.Sifra_Student
  87794.                 Left Outer Join NGFamilija FAM On FAM.Sifra_Famil = R.Sifra_Famil 
  87795.                 Where 1=1 '    
  87796.         If @SoAmountDue = 'D'
  87797.             Set @SSQL = @SSQL + ' And (R.CurrentCharges - R.CurrentPayments) > 0 '
  87798.         If @SoPassDue = 'D'
  87799.             Set @SSQL = @SSQL + ' And R.PastDue > 0 '
  87800.         Set @SSQL = @SSQL + ' Order By R.Datum_Inv, R.Broj_Inv '
  87801.  
  87802.     End
  87803.     Exec(@SSQL)
  87804.  
  87805. Go
  87806. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ng_pregledpofakturi_agingreport]'))
  87807. drop procedure [dbo].[sp_ng_pregledpofakturi_agingreport]
  87808.  
  87809. Go
  87810. CREATE PROCEDURE sp_NG_PregledPoFakturi_AgingReport
  87811.     @Sifra_Student        char(6) = Null,
  87812.     @Sifra_Famil        char(20) = Null,
  87813.     @Datum_Fra_Od    smalldatetime = Null,
  87814.     @Datum_Fra_Do    smalldatetime = Null,
  87815.     @Datum_Presm        smalldatetime,
  87816.     @Sifra_CourseType    char(10) = Null,
  87817.     @Godina        char(10) = Null,
  87818.     @Aktiven        char(1) = Null,
  87819.     @Sifra_BillCode        char(10) = Null,
  87820.     @NivoCourseType    smallint = Null,
  87821.     @Kurs            decimal(18,4) = 1
  87822. AS
  87823.     If @Datum_Presm Is Null
  87824.         Set @Datum_Presm = GetDate()
  87825.     Declare @SSQL as varchar(8000)
  87826.     Create Table #Rez
  87827.     (
  87828.      Broj_Inv         int,
  87829.      Datum_Inv        smalldatetime,
  87830.      Datum_Dosp_Stavka    smalldatetime,
  87831.      FutureCharges        decimal(18,4),
  87832.      CurrentCharges        decimal(18,4),
  87833.      CurrentPayments    decimal(18,4),
  87834.      CurrentAmountDue    decimal(18,4),
  87835.      PastDue        decimal(18,4)
  87836.     )
  87837.  
  87838.     Set @SSQL = ' Select F.Broj_Inv, F.Datum_Inv, FS.Datum_Dosp_Stavka,
  87839.                 Sum(Case When FS.Datum_Stavka > ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka Else 0 End) FutureCharges,
  87840.                 Sum(Case When FS.Datum_Stavka <= ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka Else 0 End) CurrentCharges,
  87841.                 Sum(Case When BC.Tip_BillCode In (''P'', ''C'') Then FS.Iznos_Stavka Else 0 End) CurrentPayments,
  87842.                 Sum(Case When FS.Datum_Stavka <= ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka 
  87843.                         When BC.Tip_BillCode In (''P'', ''C'') Then (-1 * FS.Iznos_Stavka) Else 0 End) CurrentAmountDue,
  87844.                 Sum(Case When FS.Datum_Dosp_Stavka < ''' + Cast(@Datum_Presm as varchar(30)) + ''' And BC.Tip_BillCode In (''B'',''D'',''I'') Then FS.Iznos_Stavka 
  87845.                         When BC.Tip_BillCode In (''P'', ''C'') Then (- 1* FS.Iznos_Stavka) Else 0 End) PastDue
  87846.             From NGInvoice F
  87847.             Inner Join NGInvoiceSta FS On FS.Sifra_Oe=F.Sifra_Oe And FS.Broj_Inv=F.Broj_Inv
  87848.             Inner Join NGStudents S ON S.Sifra_Student=F.Sifra_Student
  87849.             Left Outer Join NGBillCodes BC On BC.Sifra_BillCode=FS.Sifra_BillCode '
  87850.     If @NivoCourseType Is Not Null
  87851.         Set @SSQL = @SSQL + ' Inner Join NGCourseType CT On CT.Sifra_CourseType = S.Sifra_CourseType '
  87852.     Set @SSQL = @SSQL + ' Where 1=1 '
  87853.     If @Sifra_Student Is Not Null
  87854.         Set @SSQL = @SSQL + ' And F.Sifra_Student = ''' + @Sifra_Student + ''' '
  87855.     If @Sifra_Famil Is Not Null
  87856.         Set @SSQL = @SSQL + ' And S.Sifra_Famil = ''' + @Sifra_Famil + ''' '
  87857.     If @Datum_Fra_Od Is Not Null
  87858.         Set @SSQL = @SSQL + ' And F.Datum_Inv >= ''' + Cast(@Datum_Fra_Od as varchar(30)) + ''' '
  87859.     If @Datum_Fra_Do Is Not Null
  87860.         Set @SSQL = @SSQL + ' And F.Datum_Inv <= ''' + Cast(@Datum_Fra_Do as varchar(30)) + ''' '
  87861.     If @Sifra_CourseType Is Not Null
  87862.         Set @SSQL = @SSQL + ' And S.Sifra_CourseType = ''' + @Sifra_CourseType + ''' '
  87863.     If @Godina Is Not Null
  87864.         Set @SSQL = @SSQL + ' And S.Godina = ''' + @Godina + ''' '
  87865.     If @Aktiven Is Not Null
  87866.         Set @SSQL = @SSQL + ' And S.Aktiven = ''' + @Aktiven + ''' '
  87867.     If @Sifra_BillCode Is Not Null
  87868.         Set @SSQL = @SSQL + ' And FS.Sifra_BillCode = ''' + @Sifra_BillCode + ''' '
  87869.     If @NivoCourseType Is Not Null
  87870.         Set @SSQL = @SSQL + ' And CT.NivoCourseType = ''' + Cast(@NivoCourseType as varchar(10)) + ''' '
  87871.     Set @SSQL = @SSQL + ' Group By F.Broj_Inv, F.Datum_Inv, FS.Datum_Dosp_Stavka '
  87872.     Insert Into #Rez Exec(@SSQL)
  87873.  
  87874.     If @Kurs > 1
  87875.         Update #Rez
  87876.         Set FutureCharges=FutureCharges*@Kurs, CurrentCharges=CurrentCharges*@Kurs, CurrentPayments=CurrentPayments*@Kurs, CurrentAmountDue=CurrentAmountDue*@Kurs, PastDue=PastDue*@Kurs
  87877.  
  87878. --    Select * from #Rez
  87879.  
  87880.     Create Table #NG
  87881.     (
  87882.      Broj_Inv         int,
  87883.      Datum_Inv        smalldatetime,
  87884.      FutureCharges        decimal(18,4),
  87885.      CurrentCharges        decimal(18,4),
  87886.      CurrentPayments    decimal(18,4),
  87887.      CurrentAmountDue    decimal(18,4),
  87888.      PastDue        decimal(18,4),
  87889.      PastDue_1_29        decimal(18,4),
  87890.      PastDue_30_59    decimal(18,4),
  87891.      PastDue_60_89    decimal(18,4),
  87892.      PastDue_90        decimal(18,4)
  87893.     )
  87894.      
  87895.     Insert Into #NG 
  87896.     Select R.Broj_Inv, R.Datum_Inv,
  87897.         Sum(FutureCharges) FutureCharges,
  87898.         Sum(CurrentCharges) CurrentCharges,
  87899.         Sum(CurrentPayments) CurrentPayments, 
  87900.         Sum(CurrentAmountDue) CurrentAmountDue,
  87901.         Sum(PastDue) PastDue,
  87902.         Sum(Case When R.Datum_Dosp_Stavka >= DateAdd(Day, -29, @Datum_Presm) And R.Datum_Dosp_Stavka <= @Datum_Presm Then PastDue Else 0 End) PastDue_1_29,
  87903.         Sum(Case When R.Datum_Dosp_Stavka >= DateAdd(Day, -59, @Datum_Presm) And R.Datum_Dosp_Stavka <= DateAdd(Day, -30, @Datum_Presm) Then PastDue Else 0 End) PastDue_30_59,
  87904.         Sum(Case When R.Datum_Dosp_Stavka >= DateAdd(Day, -89, @Datum_Presm) And R.Datum_Dosp_Stavka <= DateAdd(Day, -60, @Datum_Presm) Then PastDue Else 0 End) PastDue_60_89,
  87905.         Sum(Case When R.Datum_Dosp_Stavka <= DateAdd(Day, -90, @Datum_Presm) Then PastDue Else 0 End) PastDue_90
  87906.     From #Rez R
  87907.     Group By R.Broj_Inv, R.Datum_Inv
  87908.  
  87909. --    Select * from #NG
  87910.  
  87911.     Select Broj_Inv, Datum_Inv, FutureCharges, CurrentCharges, CurrentPayments, 
  87912.         (Case When CurrentAmountDue < 0 Then 0 Else CurrentAmountDue End) CurrentAmountDue,
  87913.         (Case When CurrentAmountDue < 0 Then Abs(CurrentAmountDue) Else 0 End) AdvancedPayments,
  87914.         (Case When PastDue < 0 Then 0 Else PastDue End) PastDue, 
  87915.         (Case When PastDue < 0 Then 0 Else PastDue_1_29 End) PastDue_1_29, 
  87916.         (Case When PastDue < 0 Then 0 Else PastDue_30_59 End) PastDue_30_59, 
  87917.         (Case When PastDue < 0 Then 0 Else PastDue_60_89 End) PastDue_60_89, 
  87918.         (Case When PastDue < 0 Then 0 Else PastDue_90 End) PastDue_90 
  87919.     From #NG
  87920.  
  87921. Go
  87922. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ng_pregledpofakturnikodovi]'))
  87923. drop procedure [dbo].[sp_ng_pregledpofakturnikodovi]
  87924.  
  87925. Go
  87926. CREATE PROCEDURE sp_NG_PregledPoFakturniKodovi
  87927.     @Sifra_Student        char(6) = Null,
  87928.     @Sifra_Famil        char(20) = Null,
  87929.     @Datum_Fra_Od    smalldatetime = Null,
  87930.     @Datum_Fra_Do    smalldatetime = Null,
  87931.     @Datum_Stavka_Od    smalldatetime = Null,
  87932.     @Datum_Stavka_Do    smalldatetime = Null,
  87933.     @Sifra_CourseType    char(10) = Null,
  87934.     @Godina        char(10) = Null,
  87935.     @Aktiven        char(1) = Null,
  87936.     @Sifra_BillCode        char(10) = Null,
  87937.     @NivoCourseType    smallint = Null,
  87938.     @Kurs            decimal(18,4) = 1,
  87939.     @BrojNaFakturi        decimal(18,6) = Null Output,
  87940.     @BrojNaStudenti    decimal(18,6) = Null Output
  87941. AS
  87942.     Declare @SSQL as varchar(8000)
  87943.     Declare @SSQLUsl as varchar(8000)
  87944.     Set @SSQLUsl = ' '
  87945.     If @Sifra_Student Is Not Null
  87946.         Set @SSQLUsl = @SSQLUsl + ' And F.Sifra_Student = ''' + @Sifra_Student + ''' '
  87947.     If @Sifra_Famil Is Not Null
  87948.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Famil = ''' + @Sifra_Famil + ''' '
  87949.     If @Datum_Fra_Od Is Not Null
  87950.         Set @SSQLUsl = @SSQLUsl + ' And F.Datum_Inv >= ''' + Cast(@Datum_Fra_Od as varchar(30)) + ''' '
  87951.     If @Datum_Fra_Do Is Not Null
  87952.         Set @SSQLUsl = @SSQLUsl + ' And F.Datum_Inv <= ''' + Cast(@Datum_Fra_Do as varchar(30)) + ''' '
  87953.     If @Datum_Stavka_Od Is Not Null
  87954.         Set @SSQLUsl = @SSQLUsl + ' And FS.Datum_Stavka >= ''' + Cast(@Datum_Stavka_Od as varchar(30)) + ''' '
  87955.     If @Datum_Stavka_Do Is Not Null
  87956.         Set @SSQLUsl = @SSQLUsl + ' And FS.Datum_Stavka <= ''' + Cast(@Datum_Stavka_Do as varchar(30)) + ''' '
  87957.     If @Sifra_CourseType Is Not Null
  87958.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_CourseType = ''' + @Sifra_CourseType + ''' '
  87959.     If @Godina Is Not Null
  87960.         Set @SSQLUsl = @SSQLUsl + ' And S.Godina = ''' + @Godina + ''' '
  87961.     If @Aktiven Is Not Null
  87962.         Set @SSQLUsl = @SSQLUsl + ' And S.Aktiven = ''' + @Aktiven + ''' '
  87963.     If @Sifra_BillCode Is Not Null
  87964.         Set @SSQLUsl = @SSQLUsl + ' And FS.Sifra_BillCode = ''' + @Sifra_BillCode + ''' '
  87965.     If @NivoCourseType Is Not Null
  87966.         Set @SSQLUsl = @SSQLUsl + ' And CT.NivoCourseType = ''' + Cast(@NivoCourseType as varchar(10)) + ''' '
  87967.  
  87968.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------
  87969.     Create Table #Tab
  87970.     (
  87971.      BrojNaFakturi    decimal(18,6),
  87972.      BrojNaStudenti    decimal(18,6)
  87973.     )
  87974.     Set @SSQL = ' Select Count(Distinct F.Broj_Inv) RazlFri, Count(Distinct F.Sifra_Student) RazlStudent
  87975.             From NGInvoice F
  87976.             Inner Join NGInvoiceSta FS On FS.Sifra_Oe=F.Sifra_Oe And FS.Broj_Inv=F.Broj_Inv
  87977.             Inner Join NGStudents S ON S.Sifra_Student=F.Sifra_Student
  87978.             Inner Join NGBillCodes BC On BC.Sifra_BillCode=FS.Sifra_BillCode '
  87979.     If @NivoCourseType Is Not Null
  87980.         Set @SSQL = @SSQL + ' Inner Join NGCourseType CT On CT.Sifra_CourseType = S.Sifra_CourseType '
  87981.     Set @SSQL = @SSQL + ' Where BC.Tip_BillCode In (''B'',''D'',''I'') '
  87982.     Set @SSQL = @SSQL + @SSQLUsl    
  87983.     Insert Into #Tab Exec(@SSQL)
  87984.     Select @BrojNaFakturi=BrojNaFakturi, @BrojNaStudenti=BrojNaStudenti From #Tab
  87985.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------
  87986.     Set @SSQL = ' Select FS.Sifra_BillCode, BC.ImeBillCode, '
  87987.     If @Kurs > 1
  87988.         Set @SSQL = @SSQL + ' Sum(FS.Iznos_Stavka * ' + Cast(@Kurs as varchar(20)) +  ') Iznos '
  87989.     Else
  87990.         Set @SSQL = @SSQL + ' Sum(FS.Iznos_Stavka) Iznos '
  87991.     Set @SSQL = @SSQL + ' From NGInvoice F
  87992.             Inner Join NGInvoiceSta FS On FS.Sifra_Oe=F.Sifra_Oe And FS.Broj_Inv=F.Broj_Inv
  87993.             Inner Join NGStudents S ON S.Sifra_Student=F.Sifra_Student
  87994.             Inner Join NGBillCodes BC On BC.Sifra_BillCode=FS.Sifra_BillCode '
  87995.     If @NivoCourseType Is Not Null
  87996.         Set @SSQL = @SSQL + ' Inner Join NGCourseType CT On CT.Sifra_CourseType = S.Sifra_CourseType '
  87997.     Set @SSQL = @SSQL + ' Where BC.Tip_BillCode In (''B'',''D'',''I'') '
  87998.  
  87999.     Set @SSQL = @SSQL + @SSQLUsl
  88000.  
  88001.     Set @SSQL = @SSQL + ' Group By FS.Sifra_BillCode, BC.ImeBillCode '
  88002.     Exec(@SSQL)
  88003.  
  88004. Go
  88005. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ngpregled_students]'))
  88006. drop procedure [dbo].[sp_ngpregled_students]
  88007.  
  88008. Go
  88009.  
  88010. CREATE  PROCEDURE sp_NGPregled_Students
  88011.     @Sifra_Student_Od chaR(6) = Null,
  88012.     @Sifra_Student_Do chaR(6) = Null,
  88013.     @Sifra_Famil chaR(20) = Null,
  88014.     @Aktiven chaR(1) = Null,
  88015.     @Sifra_Course chaR(10) = Null,
  88016.     @NivoCourseType    smallint = Null
  88017. AS
  88018.     Declare @SSQL Varchar(4000)
  88019.     Set @SSQL = ' Select S.*
  88020.             From NGStudents S '
  88021.  
  88022.     If @NivoCourseType Is Not Null
  88023.         Set @SSQL = @SSQL + ' Inner Join NGCourseType CT On CT.Sifra_CourseType = S.Sifra_CourseType '
  88024.  
  88025.     Set @SSQL = @SSQL + ' Where 1 = 1 '
  88026.  
  88027.     If @Sifra_Student_Od Is Not Null
  88028.         Set @SSQL = @SSQL + 'And S.Sifra_Student>=''' + @Sifra_Student_Od + ''' '
  88029.  
  88030.     If @Sifra_Student_Do Is Not Null
  88031.         Set @SSQL = @SSQL + 'And S.Sifra_Student<=''' + @Sifra_Student_Do + ''' '
  88032.  
  88033.     If @Sifra_Famil Is Not Null
  88034.         Set @SSQL = @SSQL + 'And S.Sifra_Famil=''' + @Sifra_Famil + ''' '
  88035.  
  88036.     If @Sifra_Course Is Not Null
  88037.         Set @SSQL = @SSQL + 'And S.Sifra_CourseType=''' + @Sifra_Course + ''' '
  88038.  
  88039.     If @Aktiven = 'N'
  88040.         Set @SSQL = @SSQL + 'And S.Aktiven = ''N'' '
  88041.     Else If @Aktiven = 'D'
  88042.         Set @SSQL = @SSQL + 'And (S.Aktiven <> ''N'' or S.AKtiven Is Null) '
  88043.  
  88044.     If @NivoCourseType Is Not Null
  88045.         Set @SSQL = @SSQL + ' And CT.NivoCourseType = ''' + Cast(@NivoCourseType as varchar(10)) + ''' '
  88046.  
  88047.     Set @SSQL = @SSQL + ' Order By S.ImeStudent '
  88048.  
  88049.  
  88050.     Exec (@SSQL)
  88051.  
  88052.  
  88053.  
  88054. Go
  88055. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_noviart]'))
  88056. drop procedure [dbo].[sp_noviart]
  88057.  
  88058. Go
  88059. CREATE PROCEDURE sp_NoviArt
  88060.     @Datum    smalldatetime
  88061. AS
  88062.     SELECT Sifra_Art  FROM KatArt 
  88063.     WHERE DodadenNa >= @Datum  or IzmenetNa >= @Datum    
  88064.  
  88065.  
  88066.  
  88067. Go
  88068. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_novibrandovi]'))
  88069. drop procedure [dbo].[sp_novibrandovi]
  88070.  
  88071. Go
  88072.  
  88073. CREATE  PROCEDURE sp_NoviBrandovi
  88074.     @Datum Smalldatetime
  88075. AS
  88076.     SELECT Sifra_Drg  FROM DrgPodel
  88077.     WHERE DodadenNa >= @Datum  or IzmenetNa >= @Datum
  88078.  
  88079.  
  88080.  
  88081. Go
  88082. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_novikomint]'))
  88083. drop procedure [dbo].[sp_novikomint]
  88084.  
  88085. Go
  88086. CREATE  PROCEDURE sp_NoviKomint
  88087.     @Datum Smalldatetime
  88088. AS
  88089.     SELECT Sifra_Kup  FROM Komint
  88090.     WHERE DodadenNa >= @Datum  or IzmenetNa >= @Datum
  88091.  
  88092.  
  88093.  
  88094. Go
  88095. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_noviosnsred]'))
  88096. drop procedure [dbo].[sp_noviosnsred]
  88097.  
  88098. Go
  88099.  
  88100.  
  88101.  
  88102.  
  88103. CREATE           PROCEDURE sp_NoviOsnSred
  88104.     @Inv_BrojOd    char(10) = Null, 
  88105.     @Inv_BrojDo    char(10) = Null, 
  88106.     @Sifra_Lok    char(3) = Null, 
  88107.     @Sifra_MakLok    char(10) = Null, 
  88108.     @Sifra_MikLok    char(10) = Null, 
  88109.     @Delov_God    smallint,         -- mora 
  88110.     @Sifra_Amor    char(3) = Null,
  88111.     @Datum    smalldatetime = Null,
  88112.     @Kto_Anal    varchar(10) = Null,
  88113.     @OS_SI    char(1) = 'O',              -- O - Osnovni Sredsrva    S - Siten Inventar
  88114.     @Datum_Nab_Od    smalldatetime = Null,
  88115.     @Datum_Nab_Do    smalldatetime = Null
  88116.  AS
  88117.     Declare @SSQL as Varchar(8000)
  88118.     Create Table #OS
  88119.     (
  88120.      Inv_Broj    char(10)
  88121.     )
  88122.     Set @SSQL = ' Select O.Inv_Broj
  88123.             From OsnSred O
  88124.             Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  88125.             Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  88126.             Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  88127.             Where O.Inv_broj IN (SELECT Inv_Broj FROM StavOsnSred WHERE Delov_God='+
  88128.             Cast(@Delov_God as char(4))+' AND Datum_Dok<='''+cast(@Datum as varchar(35))+''' AND Tip_StaOsn IN (''P'',''D'')) '
  88129.     If @Inv_BrojOd Is Not null
  88130.         Set @SSQL = @SSQL + ' And O.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  88131.     If @Inv_BrojDo Is Not null
  88132.         Set @SSQL = @SSQL + ' And O.Inv_Broj <= ''' + @Inv_BrojDo + ''' '
  88133.     If @Sifra_Lok Is Not null
  88134.         Set @SSQL = @SSQL + ' And L.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  88135.     If @Sifra_MakLok Is Not null
  88136.         Set @SSQL = @SSQL + ' And MAKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  88137.     If @Sifra_MikLok Is Not null
  88138.         Set @SSQL = @SSQL + ' And MIKL.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  88139.     If @Sifra_Amor Is Not null
  88140.         Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  88141.     If @Kto_Anal IS NOT NULL
  88142.         Set @SSQL = @SSQL + ' And O.Kto_Anal = ''' + @Kto_Anal + ''' '
  88143.     If @OS_SI = 'O'
  88144.         Set @SSQL = @SSQL + ' And O.Tip = ''OS'' '
  88145.     Else If @OS_SI = 'S'
  88146.         Set @SSQL = @SSQL + ' And O.Tip = ''SI'' '
  88147.     If @Datum_Nab_Od Is Not null
  88148.         Set @SSQL = @SSQL + ' And O.DatNab >= ''' + Cast(@Datum_Nab_Od as varchar(30)) + ''' '
  88149.     If @Datum_Nab_Do Is Not null
  88150.         Set @SSQL = @SSQL + ' And O.DatNab <= ''' + Cast(@Datum_Nab_Do as varchar(30)) + ''' '
  88151.     Insert Into #OS Exec(@SSQL)
  88152. -- nema potreba    Delete From #OS Where Inv_Broj In (Select Inv_Broj From OsnSred Where Year(DatPrest) < @Delov_God)-- Or Year(DatPrest) > @Delov_God)
  88153.     Delete From #OS Where Inv_Broj In (Select Inv_Broj From OsnSred Where DatNab > @Datum) 
  88154. -- nema sega na ekran vakva opcija    If @PrikOtpisani <> 'D'
  88155. --        Delete From #OS Where Inv_Broj In (Select Inv_Broj From OsnSred Where DatPrest <= @Datum)--Is Not Null) 
  88156.     Create Table #PocSostOsnSred
  88157.     (
  88158.      Inv_Broj     char(10),
  88159.      OrigNabVr    decimal(18,2),
  88160.      Osn_Amor    decimal(18,2),
  88161.      Otpis_Pret    decimal(18,2)
  88162.     )
  88163.     Insert Into #PocSostOsnSred
  88164.     Select Inv_Broj, Orig_Nab_Vr, Osn_Amor, Otpis_Pret
  88165.     From StavOsnSred
  88166.     Where Tip_StaOsn In ('I', 'P') And Inv_Broj In (Select Inv_Broj From #OS)  
  88167.     Set @SSQL = ' Select OS.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok, 
  88168.         (Case When P.Osn_Amor Is Not Null Then P.Osn_Amor Else PS.Osn_Amor End) Osn_Amor, P.Otpis_Pret, Sum(S.Osn_Amor) Tek_Osn_Amor,
  88169.         O.Ime, O.Opis, MIKL.Ime_MikLok, MIKL.Sifra_MakLok, MAKL.Ime_MakLok, MAKL.Sifra_Lok, L.ImeLok, A.Ime Ime_AmorGrp, K.ImeAnal, S.Tip_StaOsn,
  88170.         O.BarKod, D.Sifra_Nal, D.Broj_Nal, O.DatNab, O.DatAkt, S.Datum_Dok, PS.OrigNabVr, O.DatPrest, O.Resen,
  88171.                 O.ImeStr, A.Ime4, K.SimeAnal, D.Opis OpisD, O.Sifra_Rab, R.ImeRab
  88172.     From #OS OS
  88173.     Inner Join OsnSred O On O.Inv_Broj=OS.Inv_Broj
  88174.     Left Outer Join PocSostOsn P On P.Inv_Broj=O.Inv_Broj And P.Godina=' + cast(@Delov_God as varchar(4)) + ' 
  88175.     Left Outer Join #PocSostOsnSred PS On PS.Inv_Broj=O.Inv_Broj
  88176.     Left Outer Join StavOsnSred  S On S.Inv_Broj=O.Inv_Broj And S.Tip_StaOsn In (''D'', ''P'') and S.Delov_God= ' + Cast(@Delov_God as varchar(4)) + '
  88177.     Left Outer Join DokOsnSred D On D.DokOID=S.DokOID
  88178.     Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  88179.     Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  88180.     Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  88181.     Left Outer Join AmorGrp A On A.Sifra_Amor=O.Sifra_Amor
  88182.     Left Outer Join Anal K On K.Kto_Anal=O.Kto_Anal
  88183.     left outer Join Rabotnik R on O.Sifra_Rab=R.Sifra_Rab
  88184.     Group By OS.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok, (Case When P.Osn_Amor Is Not Null Then P.Osn_Amor Else PS.Osn_Amor End), P.Otpis_Pret,
  88185.         O.Ime, O.Opis, MIKL.Ime_MikLok, MIKL.Sifra_MakLok, MAKL.Ime_MakLok, MAKL.Sifra_Lok, L.ImeLok, A.Ime, K.ImeAnal, S.Tip_StaOsn, O.BarKod,
  88186.         D.Sifra_Nal, D.Broj_Nal, S.Datum_Dok, O.DatNab, O.DatAkt, PS.OrigNabVr, O.DatPrest, O.Resen, O.ImeStr, A.Ime4, K.SimeAnal, D.Opis, O.Sifra_Rab, R.ImeRab  '
  88187.     Exec(@SSQL)
  88188.  
  88189.  
  88190.  
  88191.  
  88192.  
  88193.  
  88194. Go
  88195. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_novipodgrupi]'))
  88196. drop procedure [dbo].[sp_novipodgrupi]
  88197.  
  88198. Go
  88199.  
  88200. CREATE  PROCEDURE sp_NoviPodgrupi
  88201.     @Datum Smalldatetime
  88202. AS
  88203.     SELECT Sifra_Podg, Sifra_Gr  FROM Podgrupi 
  88204.     WHERE DodadenNa >= @Datum  or IzmenetNa >= @Datum
  88205.  
  88206.  
  88207.  
  88208. Go
  88209. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_nulaprod]'))
  88210. drop procedure [dbo].[sp_nulaprod]
  88211.  
  88212. Go
  88213.  
  88214. CREATE         PROCEDURE sp_NulaProd 
  88215.     @Datum_Od Smalldatetime,
  88216.     @Datum_Do Smalldatetime,
  88217.     @Sifra_OE     varchar(300) = NULL,
  88218.     @KF_OE        char(1)  = 'N',
  88219.     @Sifra_Podg   varchar(300) = NULL,
  88220.     @KF_Podg      char(1) = 'N',
  88221.     @Sifra_Gr     varchar(300) = NULL,
  88222.     @KF_Gr        char(1) = 'N',
  88223.     @Kto          varchar(300) = NULL,
  88224.     @KF_Kto       char(1) = 'N',
  88225.     @KtoOdArt          varchar(300) = NULL,
  88226.     @KF_KtoOdArt       char(1) = 'N',
  88227.     @Sifra_Brand  varchar(300) = NULL,
  88228.     @KF_Brand     char(1) = 'N',
  88229.     @Lokacija     varchar(10) = NULL,
  88230.     @KF_Lokacija  char(1) = 'N',
  88231.     @SoDanok      Char(1) = 'D',    -- Ovoj parametar vazi samo koga @Nabavna = D ili N 
  88232.     @KojaCena    char(1) = 'D',    -- D-Nabavna,  M-MalCena,  G-GotCena,  S-SpeCena,  C-DogCena,   N-MagCena,   O - Bez Cena
  88233.     @IskluciKup   varchar(200) = '660660, 660663, 021000',
  88234.     @OrgEdZaNabCeni smallint = 100,            
  88235.     @TipDokPriem    smallint = 1,
  88236.     @TipDokProd     varchar(200) = '100,101,60',
  88237.     @PredDenaZaZal smallint = 10,
  88238.     @DatumNabOd    smalldatetime = Null,
  88239.     @DatumNabDo    smalldatetime = Null,
  88240.     @Sifra_Art_Od    varchar(20) = Null,
  88241.     @Sifra_Art_Do    varchar(20) = Null,
  88242.     @KPod1    smallint = Null,
  88243.     @KPod2    smallint = Null,
  88244.     @KPod3    smallint = Null,
  88245.     @KPod4    smallint = Null,
  88246.     @KPod5    smallint = Null,
  88247.     @KPod6    smallint = Null,
  88248.     @KPod7    smallint = Null,
  88249.     @Sifra_Pat    int = Null,
  88250.     @KomercKako    char(1) = 'I',
  88251.     @DajPodelArt    char(1) = 'N'
  88252. AS
  88253.     Declare @SSQL   Varchar(4000)
  88254.     Declare @SSQLKup   Varchar(4000)
  88255.     Set @SSQLKup = ' '
  88256.     Declare @DatDo_Zal smalldatetime
  88257.     SET @DatDo_Zal = DATEADD(DAY, @PredDenaZaZal * -1, @Datum_Do)    
  88258.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------
  88259.     If @KPod1 Is Not Null
  88260.         Set @SSQLKup = @SSQLKup + ' And Kup.KDrugo1 = ' + Cast(@KPod1 as varchar(6)) + ' '
  88261.     If @KPod2 Is Not Null
  88262.         Set @SSQLKup = @SSQLKup + ' And Kup.KDrugo2 = ' + Cast(@KPod2 as varchar(6)) + ' '
  88263.     If @KPod3 Is Not Null
  88264.         Set @SSQLKup = @SSQLKup + ' And Kup.KDrugo3 = ' + Cast(@KPod3 as varchar(6)) + ' '
  88265.     If @KPod4 Is Not Null
  88266.         Set @SSQLKup = @SSQLKup + ' And Kup.KDrugo4 = ' + Cast(@KPod4 as varchar(6)) + ' '
  88267.     If @KPod5 Is Not Null
  88268.         Set @SSQLKup = @SSQLKup + ' And Kup.KDrugo5 = ' + Cast(@KPod5 as varchar(6)) + ' '
  88269.     If @KPod6 Is Not Null
  88270.         Set @SSQLKup = @SSQLKup + ' And Kup.KDrugo6 = ' + Cast(@KPod6 as varchar(6)) + ' '
  88271.     If @KPod7 Is Not Null
  88272.         Set @SSQLKup = @SSQLKup + ' And Kup.KDrugo7 = ' + Cast(@KPod7 as varchar(6)) + ' '
  88273.     If @Sifra_Pat Is Not Null
  88274.         If @KomercKako = 'I'
  88275.             Set @SSQLKup = @SSQLKup + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  88276.         Else
  88277.             Set @SSQLKup = @SSQLKup + ' And Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  88278.     ---------------------------------------------------------------------------------------------------------------------------------------------------------------
  88279.     CREATE TABLE #TmpZal
  88280.     (    Sifra_Art Varchar(20), 
  88281.         Kolic Numeric(18, 4),
  88282.         Vrednost Numeric(18,4)
  88283.     )                        --dodadeno so sum 22.03.04 dosredi eliminiraj uste 1 INSERT
  88284.     SET @SSQL = 'SELECT S.Sifra_OE, S.Sifra_Art, 
  88285.                 Sum(Case S.VlIzl  WHEN  ''V'' Then S.Kolic ELSE 0 End)  Vlez,
  88286.                  Sum(Case S.VlIzl  WHEN  ''I'' Then S.Kolic ELSE 0 End)  Izlez
  88287.                 FROM Stavr  S '
  88288.     If @Sifra_podg is Not NULL  OR @Sifra_gr is Not NULL OR @Sifra_Brand is Not NULL or @Lokacija is Not NULL OR @Kto IS NOT NULL OR @KtoOdArt IS NOT NULL
  88289.         Set @SSQL = @SSQL + ' Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  88290.     If @Sifra_gr Is Not NULL
  88291.         Set @SSQL = @SSQL + ' Inner Join PodGrupi P ON K.Sifra_podg = P.Sifra_Podg '
  88292.     Set @SSQL = @SSQL + '  WHERE  S.Datum_Dok<=''' + Cast(@DatDo_Zal As Varchar(35)) + ''' '
  88293.     If @Sifra_OE Is Not NULL    
  88294.         Begin
  88295.             If @KF_OE = 'N'
  88296.                    Set @SSQL = @SSQL + ' And S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  88297.             Else
  88298.                   Set @SSQL = @SSQL + ' And S.Sifra_OE  NOT IN (' + @Sifra_OE  + ') '
  88299.         End
  88300.     If @Kto Is Not NULL
  88301.         Begin
  88302.             If @KF_Kto = 'N'
  88303.                 Set @SSQL = @SSQL + 'And S.Dobav IN (' + @Kto  + ') '
  88304.             Else
  88305.                 Set @SSQL = @SSQL + 'And S.Dobav NOT IN (' + @Kto  + ') '
  88306.         End
  88307.     If @KtoOdArt Is Not NULL
  88308.         Begin
  88309.             If @KF_KtoOdArt = 'N'
  88310.                 Set @SSQL = @SSQL + 'And K.Kto IN (' + @KtoOdArt  + ') '
  88311.             Else
  88312.                 Set @SSQL = @SSQL + 'And K.Kto NOT IN (' + @KtoOdArt  + ') '
  88313.         End
  88314.     If @Sifra_Podg Is Not NULL
  88315.          Begin
  88316.             If @KF_Podg = 'N'
  88317.                 Set @SSQL = @SSQL + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  88318.             Else
  88319.                 Set @SSQL = @SSQL + 'And K.Sifra_Podg NOT IN (' + @Sifra_Podg  + ') '
  88320.         End
  88321.     If @Sifra_Gr Is Not NULL
  88322.         Begin
  88323.             If @KF_Gr = 'N'
  88324.                 Set @SSQL = @SSQL + 'And P.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  88325.             Else
  88326.                 Set @SSQL = @SSQL + 'And P.Sifra_Gr NOT IN (' + @Sifra_Gr  + ') '
  88327.         End
  88328.     If @Sifra_Brand Is Not NULL
  88329.         Begin
  88330.             If @KF_Brand = 'N'
  88331.                 Set @SSQL = @SSQL + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  88332.             Else
  88333.                 Set @SSQL = @SSQL + 'And K.Sifra_Drg NOT IN (' + @Sifra_Brand  + ') '
  88334.         End
  88335.     If @Lokacija Is Not NULL
  88336.         Begin
  88337.             If @KF_Lokacija  = 'N'                -- Izm GK 30.01.04
  88338.                 Set @SSQL = @SSQL + 'And K.Lokacija = ''' + @Lokacija + ''' '
  88339.             Else
  88340.                 Set @SSQL = @SSQL + 'And K.Lokacija <> ''' + @Lokacija + ''' '
  88341.         End    
  88342.     If @Sifra_Art_Od Is Not Null
  88343.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  88344.     If @Sifra_Art_Do Is Not Null
  88345.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  88346.     SET @SSQL = @SSQL + ' GROUP BY S.Sifra_OE, S.Sifra_Art'
  88347.     CREATE TABLE #PrometArt
  88348.     ( Sifra_OE  smallint, 
  88349.       Sifra_Art  varchar(20),
  88350.       Vlez Decimal (18,4),
  88351.       Izlez Decimal (18,4), 
  88352.       Cena Decimal(18,4)
  88353.     )
  88354.     INSERT INTO #PrometArt (SIfra_OE, Sifra_Art, Vlez, Izlez) EXEC(@SSQL)
  88355.     -- Sega za cenata da vidime
  88356.     If @KojaCena = 'D'  -- NabCena od Soart
  88357.     Begin
  88358.         CREATE TABLE #CeniArtN
  88359.         ( Sifra_Art  varchar(20),    
  88360.           Datum smalldatetime,
  88361.           DokID  int
  88362.         )
  88363.         Set @SSQL = 'SELECT S.Sifra_art, max(S.Datum_Dok) Datum, max(S.DokID) DokID
  88364.             FROM Stavr S '
  88365.         If @IskluciKup Is NOT NULL 
  88366.             Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  88367.         /*Set @SSQL = @SSQL + ' WHERE S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) +      OVA BESE KOGA NEMASE NABAVNA
  88368.             ''' AND S.Kolic > 0 AND S.VlIZl = ''V'' AND 
  88369.             (S.ImaDodatna Is NULL OR S.ImaDodatna ='' '' OR S.ImaDodatna ='''') AND
  88370.             S.Sifra_OE = ' + Cast(@OrgEdZaNabCeni as varchar(4)) +
  88371.             ' AND S.Sifra_Dok = '+Cast(@TipDokPriem as varchar(3))    */
  88372.         /*If @IskluciKup Is NOT NULL Or @KPod1 Is Not Null Or @KPod2 Is Not Null Or @KPod3 Is Not Null Or @KPod4 Is Not Null Or @KPod5 Is Not Null 
  88373.            Or @KPod6 Is Not Null Or @KPod7 Is Not Null Or @Sifra_Pat Is Not Null   -- dod 07.05.08
  88374.             Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  88375.                           Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup '*/
  88376.         Set @SSQL = @SSQL + ' WHERE S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + 
  88377.             ''' AND S.Kolic > 0 AND S.Dobav IS NOT NULL '
  88378.         If @IskluciKup Is NOT NULL 
  88379.             Set @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' + @IskluciKup + ') '
  88380.         --Set @SSQL = @SSQL + @SSQLKup
  88381.         Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art '
  88382.         INSERT INTO #CeniArtN EXEC (@SSQL)
  88383.         UPDATE #PrometArt
  88384.         SET Cena = dbo.fn_VratiVredIzl(1, S.NabCena, 'N', S.POsn, 0, 0, @SoDanok)    --Cena = dbo.fn_VratiVredIzl(1, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, @SoDanok) 
  88385.                  FROM #CeniArtN C, Stavr S
  88386.         WHERE #PrometArt.Sifra_Art = C.Sifra_Art AND S.DokID = C.DokID
  88387.         UPDATE #PrometArt
  88388.         SET Cena = dbo.fn_VratiCena(S.Cena, S.POsn, 'D', @SoDanok) 
  88389.             FROM StariNabavniC S
  88390.         WHERE #PrometArt.Sifra_Art = S.Sifra_Art AND (#PrometArt.Cena = 0  or #PrometArt.Cena IS NULL)
  88391.     End    
  88392.     Else If @KojaCena = 'C'  -- DogCena od Katart
  88393.     Begin
  88394.         UPDATE #PrometArt
  88395.         SET Cena = K.DogCena
  88396.                  FROM Katart K
  88397.         WHERE #PrometArt.Sifra_Art = K.Sifra_Art
  88398.     End
  88399.     Else If @KojaCena = 'M'  -- MalCena od Katart
  88400.     Begin
  88401.         UPDATE #PrometArt
  88402.         SET Cena = K.MalCena
  88403.                  FROM Katart K
  88404.         WHERE #PrometArt.Sifra_Art = K.Sifra_Art
  88405.     End
  88406.     Else If @KojaCena = 'S'  -- SpeCena od Katart
  88407.     Begin
  88408.         UPDATE #PrometArt
  88409.         SET Cena = K.SpeCena
  88410.                  FROM Katart K
  88411.         WHERE #PrometArt.Sifra_Art = K.Sifra_Art
  88412.     End
  88413.     Else If @KojaCena = 'G'  -- GotCena od Katart
  88414.     Begin
  88415.         UPDATE #PrometArt
  88416.         SET Cena = K.GotCena
  88417.                  FROM Katart K
  88418.         WHERE #PrometArt.Sifra_Art = K.Sifra_Art
  88419.     End
  88420.     Else If @KojaCena = 'O'  -- Bez Cena
  88421.     Begin
  88422.         UPDATE #PrometArt
  88423.         SET Cena = 0
  88424.     End
  88425.     Else   -- @KojaCena = N  -- MagCena od Stavr
  88426.     Begin
  88427.         CREATE TABLE #CeniArt
  88428.         ( Sifra_OE  smallint, 
  88429.           Sifra_Art  varchar(20),    
  88430.           Datum smalldatetime,
  88431.           DokID  int
  88432.         )
  88433.         Set @SSQL = 'SELECT S.Sifra_oe, S.Sifra_art, max(S.Datum_Dok) Datum, max(S.DokID) DokID
  88434.             FROM Stavr S '
  88435.         If @IskluciKup Is NOT NULL 
  88436.             Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  88437.         /*If @IskluciKup Is NOT NULL Or @KPod1 Is Not Null Or @KPod2 Is Not Null Or @KPod3 Is Not Null Or @KPod4 Is Not Null Or @KPod5 Is Not Null 
  88438.            Or @KPod6 Is Not Null Or @KPod7 Is Not Null Or @Sifra_Pat Is Not Null   -- dod 07.05.08
  88439.             Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  88440.                           Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup '*/
  88441.         Set @SSQL = @SSQL + ' WHERE S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' AND S.Kolic > 0 '
  88442.         If @IskluciKup Is NOT NULL 
  88443.             Set @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' + @IskluciKup + ') '
  88444.         --Set @SSQL = @SSQL + @SSQLKup
  88445.         Set @SSQL = @SSQL + ' GROUP BY S.Sifra_OE, S.Sifra_Art '
  88446.         INSERT INTO #CeniArt (Sifra_OE, Sifra_Art, Datum, DokID) EXEC (@SSQL)
  88447.         UPDATE #PrometArt
  88448.         SET    Cena = dbo.fn_VratiCenaZaLager(@SoDanok, S.VlIzl, S.MagCena, S.DanMagCena, S.POsn, S.DokCena, S.DanDokCena, S.POsnPren) 
  88449.         FROM #CeniArt C, Stavr S
  88450.         WHERE #PrometArt.Sifra_OE = C.Sifra_OE AND #PrometArt.Sifra_Art = C.Sifra_Art AND S.DokID = C.DokID
  88451.         UPDATE #PrometArt
  88452.         SET Cena = dbo.fn_VratiVredIzl(1, S.Cena, S.DanCena, S.POsn, 0, 0, @SoDanok) 
  88453.             FROM Soart S
  88454.         WHERE #PrometArt.Sifra_OE = S.Sifra_OE AND #PrometArt.Sifra_Art = S.Sifra_Art AND
  88455.               (#PrometArt.Cena = 0 or #PrometArt.Cena IS NULL)
  88456.     End
  88457.     UPDATE #PrometArt
  88458.     SET Cena = 0
  88459.     WHERE (#PrometArt.Cena = 0 or #PrometArt.Cena IS NULL)
  88460.     INSERT INTO #TmpZal  
  88461.     SELECT Sifra_Art, SUM(Vlez - Izlez) as Kolic, SUM((Vlez - Izlez) * Cena) As Vrednost
  88462.     FROM #PrometArt GROUP BY Sifra_Art
  88463.     SET @SSQL = 'SELECT Z.Sifra_Art, K.ImeArt, Z.Kolic, Z.Vrednost, '
  88464.     If @DajPodelArt = 'D'
  88465.         Set @SSQL = @SSQL + ' K.Kto, Dob.ImeKup ImeDob, K.Sifra_Drg, B.Ime ImeBrend, B.Sifra_Drg1, BB.Ime_Drg1 ImeZbBrend, K.Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr '
  88466.     Else 
  88467.         Set @SSQL = @SSQL + ' Null Kto, Null ImeDob, Null Sifra_Drg, Null ImeBrend, Null Sifra_Drg1, Null ImeZbBrend, Null Sifra_Podg, Null Ime_Podg, Null Sifra_Gr, Null Ime_Gr '
  88468.     Set @SSQL = @SSQL + ' FROM #TmpZal Z
  88469.         INNER JOIN KatArt K ON Z.Sifra_Art = K.Sifra_Art '
  88470.     If @DajPodelArt = 'D'
  88471.         Set @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON P.Sifra_Podg = K.Sifra_Podg
  88472.                       INNER JOIN Grupi G ON G.Sifra_Gr = P.Sifra_Gr
  88473.                       LEFT OUTER JOIN Komint Dob ON Dob.Sifra_Kup = K.Kto
  88474.                       LEFT OUTER JOIN DrgPodel B ON B.Sifra_Drg = K.Sifra_Drg 
  88475.                       LEFT OUTER JOIN DrgPodel1 BB ON BB.Sifra_Drg1 = B.Sifra_Drg1  '
  88476.     Set @SSQL = @SSQL + ' WHERE Z.Kolic > 0 
  88477.         AND Z.Sifra_Art NOT IN 
  88478.         (SELECT DISTINCT S.SIFRA_ART FROM Stavr S '
  88479.     If @IskluciKup Is NOT NULL Or @KPod1 Is Not Null Or @KPod2 Is Not Null Or @KPod3 Is Not Null Or @KPod4 Is Not Null Or @KPod5 Is Not Null 
  88480.        Or @KPod6 Is Not Null Or @KPod7 Is Not Null Or @Sifra_Pat Is Not Null   -- dod 07.05.08
  88481.         Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  88482.                       Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup '
  88483.     Set @SSQL = @SSQL + ' Where S.VlIzl = ''I'' '
  88484.     If @TipDokProd Is Not Null
  88485.         Set @SSQL = @SSQL + ' AND S.Sifra_Dok IN (' + @TipDokProd + ') '
  88486. ---    AND (ImaDodatna IS NULL OR ImaDodatna = '' '' OR ImaDodatna = '''')       OVA BESE PORANO
  88487.     If @Datum_Od Is Not NULL
  88488.         Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  88489.     If @Datum_Do Is Not NULL
  88490.         Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  88491.     If @Sifra_OE Is Not NULL    
  88492.         Begin
  88493.             If @KF_OE = 'N'
  88494.                     Set @SSQL = @SSQL + ' And S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  88495.             Else
  88496.                 Set @SSQL = @SSQL + ' And S.Sifra_OE  NOT IN (' + @Sifra_OE  + ') '
  88497.         End
  88498.     If @Sifra_Art_Od Is Not Null
  88499.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  88500.     If @Sifra_Art_Do Is Not Null
  88501.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  88502.     Set @SSQL = @SSQL + @SSQLKup
  88503.     SET @SSQL = @SSQL + ' GROUP BY S.Sifra_art HAVING SUM(S.Kolic) > 0)'
  88504.     If @DatumNabOd Is Not Null Or @DatumNabDo Is Not Null
  88505.     Begin
  88506.         Set @SSQL = @SSQL + ' AND Z.Sifra_Art IN 
  88507.             (SELECT DISTINCT S.SIFRA_ART FROM Stavr S Where S.VlIzl = ''V'' '
  88508.         If @DatumNabOd Is Not NULL
  88509.             Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@DatumNabOd As Varchar(30)) + ''' '
  88510.         If @DatumNabDo Is Not NULL
  88511.             Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@DatumNabDo As Varchar(30)) + ''' '
  88512.         If @Sifra_OE Is Not NULL    
  88513.             Begin
  88514.                 If @KF_OE = 'N'
  88515.                         Set @SSQL = @SSQL + ' And S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  88516.                 Else
  88517.                     Set @SSQL = @SSQL + ' And S.Sifra_OE  NOT IN (' + @Sifra_OE  + ') '
  88518.             End
  88519.         If @Sifra_Art_Od Is Not Null
  88520.             Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  88521.         If @Sifra_Art_Do Is Not Null
  88522.             Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  88523.         SET @SSQL = @SSQL + ' GROUP BY S.Sifra_art HAVING SUM(S.Kolic) > 0)'
  88524.     End
  88525.     print (@ssql)
  88526.     EXEC(@SSQL)
  88527.  
  88528.  
  88529.  
  88530. Go
  88531. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_obelezipratenidokrnaracimp]'))
  88532. drop procedure [dbo].[sp_obelezipratenidokrnaracimp]
  88533.  
  88534. Go
  88535. CREATE     PROCEDURE sp_ObeleziPrateniDokrNaracIMP
  88536. --    @TipDok      CHAR(1), -- =N (Naracki), <> ="N" (Dokr)
  88537.     @DokrID    INT
  88538. AS
  88539.  
  88540. --IF @TipDok = 'N'
  88541. -- NARACKI 
  88542. ------------------------------------------------------------------------------------------------------------------------
  88543. --    UPDATE Naracki SET Prenesen = 'D' 
  88544. --    WHERE Sifra_Oe = @Sifra_Oe AND Sifra_Nar = @Sifra_Dok AND Broj_Nar = @Broj_Dok
  88545. --ELSE
  88546. -- DOKUMENTI -------------------------------------------------------------------------------------------------
  88547.     UPDATE Dokr SET Prenesen='D' 
  88548.     WHERE DokrID = @DokrID -- Sifra_Oe = @Sifra_Oe AND Sifra_Dok = @Sifra_Dok AND Broj_Dok = @Broj_Dok
  88549.  
  88550.  
  88551.  
  88552. Go
  88553. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_obelezipratenidokrnaracsap]'))
  88554. drop procedure [dbo].[sp_obelezipratenidokrnaracsap]
  88555.  
  88556. Go
  88557.  
  88558. CREATE     PROCEDURE sp_ObeleziPrateniDokrNaracSAP
  88559.     @TipDok      CHAR(1), -- =N (Naracki), <> ="N" (Dokr)
  88560.     @Sifra_Oe    SMALLINT,
  88561.     @Sifra_Dok    SMALLINT,
  88562.     @Broj_Dok    INTEGER
  88563. AS
  88564.  
  88565. IF @TipDok = 'N'
  88566. -- NARACKI ------------------------------------------------------------------------------------------------------------------------
  88567.     UPDATE Naracki SET Prenesen = 'D' 
  88568.     WHERE Sifra_Oe = @Sifra_Oe AND Sifra_Nar = @Sifra_Dok AND Broj_Nar = @Broj_Dok
  88569. ELSE
  88570. -- DOKUMENTI -------------------------------------------------------------------------------------------------
  88571.     UPDATE Dokr SET Prenesen='D' 
  88572.     WHERE Sifra_Oe = @Sifra_Oe AND Sifra_Dok = @Sifra_Dok AND Broj_Dok = @Broj_Dok
  88573.  
  88574.  
  88575.  
  88576. Go
  88577. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_obelezipratenidokrnaracvind]'))
  88578. drop procedure [dbo].[sp_obelezipratenidokrnaracvind]
  88579.  
  88580. Go
  88581.  
  88582.  
  88583. CREATE     PROCEDURE sp_ObeleziPrateniDokrNaracVind
  88584.     @TipDok      CHAR(1), -- =N (Naracki), <> ="N" (Dokr)
  88585.     @Sifra_Oe    SMALLINT,
  88586.     @Sifra_Dok    SMALLINT,
  88587.     @Broj_Dok    INTEGER
  88588. AS
  88589.  
  88590. IF @TipDok = 'N'
  88591. -- NARACKI ------------------------------------------------------------------------------------------------------------------------
  88592.     UPDATE Naracki SET Prenesen = 'D' 
  88593.     WHERE Sifra_Oe = @Sifra_Oe AND Sifra_Nar = @Sifra_Dok AND Broj_Nar = @Broj_Dok
  88594. ELSE
  88595. -- DOKUMENTI -------------------------------------------------------------------------------------------------
  88596.     UPDATE Dokr SET Prenesen='D' 
  88597.     WHERE Sifra_Oe = @Sifra_Oe AND Sifra_Dok = @Sifra_Dok AND Broj_Dok = @Broj_Dok
  88598.  
  88599.  
  88600.  
  88601.  
  88602. Go
  88603. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_obrt_na_zaliha]'))
  88604. drop procedure [dbo].[sp_obrt_na_zaliha]
  88605.  
  88606. Go
  88607.  
  88608.  
  88609.  
  88610. CREATE                    PROCEDURE sp_Obrt_Na_Zaliha
  88611.  
  88612.     @Sifra_OE     Smallint, 
  88613.     @KoiOE     Varchar(700),
  88614.     @Datum_Od     Smalldatetime,
  88615.     @Datum_Do     Smalldatetime,
  88616.     @Sifra_Art_Od     Varchar(20) = Null,
  88617.     @Sifra_Art_Do     Varchar(20) = Null,
  88618.     @Kto         Char(6) = Null,
  88619.     @Sifra_Gr     Char(3) = Null,
  88620.     @Sifra_Podg     Char(6) = Null,
  88621.     @Lokacija     Varchar(10) = Null,
  88622.     @Sifra_Brand     Smallint = Null,
  88623.     @Sifra_Zbiren     Smallint = Null,
  88624.     @Drugo1    smallint = Null,
  88625.     @Drugo2    smallint = Null,
  88626.     @Drugo3    smallint = Null,
  88627.     @Drugo4    smallint = Null,
  88628.     @Drugo5    smallint = Null,    
  88629.     @Drugo6    smallint = Null,
  88630.     @Drugo7    smallint = Null,
  88631.     @Sifra_Div    smallint = Null,
  88632.     @CenaOd    char(1) = 'S'    -- S - DokCena od Soart,      K - Nabavna od Katart
  88633. AS
  88634.  
  88635.     Declare @SSQL Varchar(8000)
  88636.     Declare @SSQLUsl Varchar(8000)
  88637.  
  88638.     Set @SSQLUsl = ' '
  88639.  
  88640.     If @Sifra_Brand Is Not NULL-- And @Sifra_Zbiren Is Null
  88641.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  88642.     If @Sifra_Zbiren Is Not Null --@Sifra_Brand Is NUll And 
  88643.         Set @SSQLUsl = @SSQLUsl + ' And B.Sifra_Drg1=''' + Cast(@Sifra_Zbiren As Varchar(5)) + ''' '
  88644.     If @Lokacija Is Not NULL
  88645.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  88646.     If @Kto Is Not NULL
  88647.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  88648.     If @Sifra_Podg Is Not NULL
  88649.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  88650.     If @Sifra_Gr Is Not NULL
  88651.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  88652.     If @Drugo1 Is Not NULL
  88653.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  88654.     If @Drugo2 Is Not NULL
  88655.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  88656.     If @Drugo3 Is Not NULL
  88657.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  88658.     If @Drugo4 Is Not NULL
  88659.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  88660.     If @Drugo5 Is Not NULL
  88661.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  88662.     If @Drugo6 Is Not NULL
  88663.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  88664.     If @Drugo7 Is Not NULL
  88665.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  88666.     If @Sifra_Div Is Not NULL
  88667.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  88668.     If @Sifra_Art_Od Is Not NULL
  88669.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  88670.     If @Sifra_Art_Do Is Not NULL
  88671.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  88672.     If @Sifra_OE Is Not NULL    
  88673.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  88674.     If @KoiOE Is Not NULL
  88675.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  88676.  
  88677.     Create Table #ZalPoc1
  88678.     (
  88679.         Sifra_Art     varchar(20),
  88680.         PocZaliha    decimal(18,6),
  88681.         VredPocZal    decimal(18,6),
  88682.         KrajZaliha    decimal(18,6),
  88683.         VredKrajZal    decimal(18,6),
  88684.         IzlezZaPeriod    decimal(18,6),
  88685.         VredIzlZaPer    decimal(18,6)
  88686. --        Nabavna    decimal(18,6)
  88687.     )
  88688.     
  88689.     -- Pocetna zaliha, Krajna zaliha i Izlez vo periodot
  88690.     Set @SSQL = ' Select S.Sifra_Art, 
  88691.             Sum(Case When S.Datum_Dok < ''' + Cast (@Datum_Od as varchar(30)) + ''' Then (Case When S.VlIzl = ''V'' Then S.Kolic Else -1*S.Kolic End) Else 0 End) PocZaliha, 
  88692.             Sum(Case When S.Datum_Dok < ''' + Cast (@Datum_Od as varchar(30)) + ''' Then (Case When S.VlIzl = ''V'' Then (S.Kolic*S.NabCena) Else (-1*S.Kolic*S.NabCena) End) Else 0 End) VredPocZal, 
  88693.             Sum(Case When S.Datum_Dok <= ''' + Cast (@Datum_Do as varchar(30)) + ''' Then (Case When S.VlIzl = ''V'' Then S.Kolic Else -1*S.Kolic End) Else 0 End) KrajZaliha, 
  88694.             Sum(Case When S.Datum_Dok <= ''' + Cast (@Datum_Do as varchar(30)) + ''' Then (Case When S.VlIzl = ''V'' Then (S.Kolic*S.NabCena) Else (-1*S.Kolic*S.NabCena) End) Else 0 End) VredKrajZal, 
  88695.             Sum(Case When S.Datum_Dok >= ''' + Cast (@Datum_Od as varchar(30))  + ''' And S.Datum_Dok <= ''' + Cast (@Datum_Do as varchar(30)) + ''' And S.Vlizl = ''I'' And (S.ImaDodatna Is Null Or S.ImaDodatna='''') Then S.Kolic Else 0 End) IzlezZaPeriod, 
  88696.             Sum(Case When S.Datum_Dok >= ''' + Cast (@Datum_Od as varchar(30))  + ''' And S.Datum_Dok <= ''' + Cast (@Datum_Do as varchar(30)) + ''' And S.Vlizl = ''I'' And (S.ImaDodatna Is Null Or S.ImaDodatna='''') Then S.Kolic*S.NabCena Else 0 End) VredIzlZaPer '
  88697.     Set @SSQL = @SSQL + ' From Stavr S
  88698.                   Inner Join Katart K On K.Sifra_Art = S.Sifra_Art '
  88699.     If @Sifra_Gr Is Not Null
  88700.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  88701.     If @Sifra_Zbiren Is Not Null
  88702.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  88703.     Set @SSQL = @SSQL + ' Where S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' And K.SMatUsl = ''M'' '
  88704.  
  88705.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art '
  88706.  
  88707.     Insert Into #ZalPoc1 Exec(@SSQL)
  88708.  
  88709.     -- Finansiski razliki
  88710.     Set @SSQL = ' Select S.Sifra_Art, 
  88711.             0 PocZaliha,
  88712.             Sum(Case When S.Datum_Dok < ''' + Cast (@Datum_Od as varchar(30)) + ''' Then (Case VlIzl When ''V'' Then Iznos_Razl When ''I'' Then (-1*Iznos_Razl) End) Else 0 End) PocVredZal, 
  88713.             0 KrajZaliha, 
  88714.             Sum(Case When S.Datum_Dok <= ''' + Cast (@Datum_Do as varchar(30)) + ''' Then (Case VlIzl When ''V'' Then Iznos_Razl When ''I'' Then (-1*Iznos_Razl) End) Else 0 End) KrajVredZal, 
  88715.             0 IzlezZaPeriod, 
  88716.             0 VredIzlezZaPer 
  88717.         From RazlFin S
  88718.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art '
  88719.     If @Sifra_Gr Is Not Null
  88720.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  88721.     If @Sifra_Zbiren Is Not Null
  88722.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  88723.     Set @SSQL = @SSQL + ' Where S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' And K.SMatUsl = ''M'' '
  88724.  
  88725.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art '
  88726.  
  88727.     Insert Into #ZalPoc1 Exec(@SSQL)
  88728.     
  88729.     Create Table #ZalPoc
  88730.     (
  88731.         Sifra_Art     varchar(20),
  88732.         PocZaliha    decimal(18,6),
  88733.         VredPocZal    decimal(18,6),
  88734.         KrajZaliha    decimal(18,6),
  88735.         VredKrajZal    decimal(18,6),
  88736.         IzlezZaPeriod    decimal(18,6),
  88737.         VredIzlZaPer    decimal(18,6),
  88738.         Nabavna    decimal(18,6)
  88739.     )
  88740.     Insert Into #ZalPoc
  88741.     Select Sifra_Art, Sum(PocZaliha), Sum(VredPocZal), Sum(KrajZaliha), 
  88742.             Sum(VredKrajZal), Sum(IzlezZaPeriod), Sum(VredIzlZaPer), 0
  88743.     From #ZalPoc1 
  88744.     Group By Sifra_Art
  88745.  
  88746.     Update #ZalPoc Set Nabavna = VredKrajZal/KrajZaliha Where KrajZaliha <>0
  88747.     Update #ZalPoc Set Nabavna = VredPocZal/PocZaliha Where PocZaliha <>0 And Nabavna = 0
  88748.  
  88749.     Update #ZalPoc 
  88750.     Set Nabavna = K.Nabavna/(1+T.ProcOsn/100) 
  88751.     From Katart K
  88752.     Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar 
  88753.     Where K.Sifra_Art = #ZalPoc.Sifra_Art And (#ZalPoc.Nabavna Is Null Or #ZalPoc.Nabavna=0)
  88754.  
  88755. --select * from #ZalPoc
  88756.  
  88757. --    Update #ZalPoc Set Vrednost = Zaliha*Cena
  88758.  
  88759. --    Select * from #ZalPoc order by sifra_art
  88760.  
  88761.     -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  88762.     Create Table #PrometPoDat
  88763.     (
  88764.         Sifra_Art    varchar(20),
  88765.         Datum        smalldatetime,
  88766.         PrometDat    decimal(18,6)
  88767.     )
  88768.     Set @SSQL = ' Select S.Sifra_Art, S.Datum_Dok, 
  88769.             Sum(Case When S.VlIzl = ''V'' Then S.Kolic Else -1*S.Kolic End)
  88770.             From Stavr S
  88771.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art '
  88772.     If @Sifra_Gr Is Not Null
  88773.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  88774.     If @Sifra_Zbiren Is Not Null
  88775.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  88776.     Set @SSQL = @SSQL + ' Where K.SMatUsl = ''M'' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  88777.  
  88778.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By S.Sifra_Art, S.Datum_Dok '
  88779.  
  88780.     Insert Into #PrometPoDat Exec(@SSQL)
  88781.  
  88782.     Insert Into #PrometPoDat Select Sifra_Art, @Datum_Od - 1, PocZaliha From #ZalPoc
  88783.  
  88784. --select * from #PrometPoDat
  88785.  
  88786.     Declare @RazlDat as smalldatetime
  88787.     Set @RazlDat = @Datum_Od
  88788. --select @Datum_Od, @RazlDat, @Datum_Do
  88789.  
  88790.     While @RazlDat <= @Datum_Do
  88791.     Begin
  88792.         If Not Exists (Select Distinct Datum From #PrometPoDat Where Datum=@RazlDat)
  88793.         Insert Into #PrometPoDat Select Null, @RazlDat, 0
  88794.     
  88795.         Set @RazlDat = Dateadd(Day,1,@RazlDat)
  88796.     End
  88797.     
  88798.  
  88799. --    Select * From #PrometPoDat
  88800.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  88801.  
  88802.     Create Table #ZalihaPoDat
  88803.     (
  88804.         Sifra_Art    varchar(20),
  88805.         Datum        smalldatetime,
  88806.         ZalihaDat    decimal(18,6)
  88807.     )
  88808.  
  88809.     Declare @Dat as smalldatetime
  88810.  
  88811.     Declare Datumi Cursor 
  88812.     Fast_Forward For Select Distinct Datum From #PrometPoDat Order By Datum
  88813.     Open Datumi
  88814.     Fetch Next From Datumi Into @Dat
  88815.     While @@Fetch_Status = 0
  88816.     Begin
  88817.         Insert Into #ZalihaPoDat 
  88818.         Select Sifra_Art, Datum, Sum(PrometDat)
  88819.         From #PrometPoDat
  88820.         Where Datum <= @Dat And Sifra_Art Is Not Null
  88821.         Group By Sifra_Art, Datum
  88822.  
  88823.         Fetch Next From Datumi Into @Dat
  88824.     End
  88825.     Close Datumi
  88826.     Deallocate Datumi
  88827.  
  88828. --    Select * From #ZalihaPoDat
  88829.  
  88830.     Create Table #ProsZal
  88831.     (
  88832.         Sifra_Art    varchar(20),
  88833.         VkZal        decimal(18,4),    
  88834.         ProsZal        decimal(18,4)
  88835.     )
  88836.     Insert Into #ProsZal Select Sifra_Art, Sum(ZalihaDat), 0 From #ZalihaPoDat Group By Sifra_Art
  88837. --select * from #ProsZal
  88838.     
  88839.     Declare @Denovi as smallint
  88840.     Set @Denovi = DateDiff(Day, @Datum_Od, @Datum_Do) + 2
  88841. --Select @Denovi
  88842.  
  88843.     Update #ProsZal Set ProsZal = VkZal/@Denovi
  88844. --select *, @Denovi Denovi from #ProsZal
  88845.  
  88846.     Select P.Sifra_Gr, G.Ime_Gr, K.Sifra_Podg, P.Ime_Podg, PZ.Sifra_Art, K.ImeArt, 
  88847.         Round(ZP.PocZaliha,4) PocZaliha, Round(ZP.VredPocZal,4) VredPocZal, Round(ZP.IzlezZaPeriod,4) IzlezZaPeriod, Round(ZP.VredIzlZaPer,4) VredIzlZaPer,  
  88848.         Round(ZP.KrajZaliha,4) KrajZaliha, Round(ZP.VredKrajZal,4) VredKrajZal,  
  88849.         Round(PZ.ProsZal,4) ProsZal, Round(PZ.ProsZal*ZP.Nabavna,4) VredProsZal,            --13
  88850.         (Case When (PZ.ProsZal*ZP.Nabavna) <> 0 Then Round(ZP.VredIzlZaPer/(PZ.ProsZal*ZP.Nabavna),4) Else 0 End) KoefNaObrt,
  88851.         (Case When ZP.VredIzlZaPer <> 0 And (PZ.ProsZal*ZP.Nabavna) <> 0 Then Round((DateDiff(Day, @Datum_Od, @Datum_Do)+1)/((ZP.VredIzlZaPer)/(PZ.ProsZal*ZP.Nabavna)),4) Else 0 End) DenoviNaZal,
  88852.         DateDiff(Day, @Datum_Od, @Datum_Do) + 1 DenoviPeriod,
  88853.         Round(ZP.Nabavna,4) Cena
  88854.     From #ProsZal PZ
  88855.     Left Outer Join #ZalPoc ZP On ZP.Sifra_Art = PZ.Sifra_Art
  88856.     Inner Join Katart K On K.SIfra_Art = PZ.Sifra_Art
  88857.     Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg 
  88858.     Inner Join Grupi G On G.Sifra_Gr = P.Sifra_Gr
  88859.  
  88860. Go
  88861. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ocekuvrealizpokomint]'))
  88862. drop procedure [dbo].[sp_ocekuvrealizpokomint]
  88863.  
  88864. Go
  88865.  
  88866. CREATE  PROCEDURE sp_OcekuvRealizPoKomint
  88867.     @Sifra_Oe    smallint,
  88868.     @Sifra_KupOd    char(6),
  88869.     @Sifra_KupDo    char(6),
  88870.     @DatumOd    smalldatetime,
  88871.     @DatumDo    smalldatetime,
  88872.     @Kto        varchar(10),
  88873.     @Sifra_Za    Char(1),           -- 1 ili 2
  88874.     @Koi_Pat    varchar(300) = Null,
  88875.     @KomercKako    char(1) = 'T'     -- I - Istopiski od dokum.    T - Tekovno od komint   
  88876.  AS
  88877.     Declare @SSQL as Varchar(8000)
  88878.     If @Sifra_Za=1
  88879.         Set @SSQL='Select A.Sifra_Kup, K.ImeKup, DateADD(day, A.Rok, A.Datum_Dok) Datum_Dosp, Sum(A.Dolzi) Iznos, Sum(A.Plateno_Dolzi) Plateno
  88880.             From AnFinDok A
  88881.             Inner Join Komint K On A.Sifra_Kup = K.Sifra_Kup
  88882.             Where A.Sifra_Za = 1 '
  88883.     If @Sifra_Za=2
  88884.         Set @SSQL='Select A.Sifra_Kup, K.ImeKup, DateADD(day, A.Rok, A.Datum_Dok) Datum_Dosp, Sum(A.Pobaruva) Iznos, Sum(A.Plateno_Pobar) Plateno
  88885.             From AnFinDok A
  88886.             Inner Join Komint K On A.Sifra_Kup = K.Sifra_Kup
  88887.             Where A.Sifra_Za = 2 '
  88888.     If @Sifra_Oe is Not Null
  88889.         Set @SSQL = @SSQL + ' And A.Sifra_Oe =''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  88890.     If @Sifra_KupOd Is Not Null
  88891.         Set @SSQL = @SSQL + ' And A.Sifra_Kup >= ' + @Sifra_KupOd  + ' '
  88892.     If @Sifra_KupDo Is Not Null
  88893.         Set @SSQL = @SSQL + ' And A.Sifra_Kup <= ' + @Sifra_KupDo  + ' '
  88894.     If @DatumOd Is Not Null
  88895.         Set @SSQL = @SSQL + ' And DateADD(day, A.Rok, A.Datum_Dok) >= ''' + cast(@DatumOd as varchar(35)) + ''' '
  88896.     If @DatumDo Is Not Null
  88897.         Set @SSQL = @SSQL + ' And DateADD(day, A.Rok, A.Datum_Dok) <= ''' + cast(@DatumDo as varchar(35)) + ''' '
  88898.     If @Kto is Not Null
  88899.         Set @SSQL = @SSQL + ' And A.Kto =''' + @Kto + ''' '
  88900.        If @KomercKako = 'I'
  88901.         If @Koi_Pat IS NOT NULL
  88902.             SET @SSQL = @SSQL + ' AND A.Sifra_Pat In (' + @Koi_Pat + ') '
  88903.        If @KomercKako = 'T'
  88904.         If @Koi_Pat IS NOT NULL
  88905.             Set @SSQL = @SSQL + ' And K.Sifra_Pat In (' + @Koi_Pat + ') '
  88906.     Set @SSQL = @SSQL + ' Group By A.Sifra_Kup, K.ImeKup, DateADD(day, A.Rok, A.Datum_Dok)'
  88907.     Exec (@SSQL)
  88908.  
  88909.  
  88910.  
  88911. Go
  88912. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfibrsmetki]'))
  88913. drop procedure [dbo].[sp_odfibrsmetki]
  88914.  
  88915. Go
  88916. CREATE          PROCEDURE sp_OdFiBrSmetki
  88917.     @Datum_Od    smalldatetime, 
  88918.     @Datum_Do    smalldatetime,
  88919.     @Sifra_OE    smallint,
  88920.     @Sifra_GrOrg    char(6),
  88921.     @Za_OrgEd    smallint,
  88922.     @Za_GrOrgEd    char(6), 
  88923.     @BrSmetki    int OUTPUT
  88924. AS
  88925.     Declare @SSQL     varchar(1000)
  88926.     SET @BrSmetki = 0
  88927.     CREATE TABLE #TmpIzn
  88928. (    
  88929.     Iznos    int
  88930. )
  88931.     SET @SSQL = 'SELECT SUM(Br_smetki) FROM FiskProm  WHERE Datum_Dok >= ''' + Cast(@Datum_Od as varchar(35)) + 
  88932.         ''' AND Datum_Dok <= ''' + Cast(@Datum_Do as varchar(35))  + ''' '
  88933.     IF @Sifra_Oe Is Not Null
  88934.         SET @SSQL = @SSQL + ' And Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  88935.     IF @Za_OrgEd Is Not Null
  88936.         SET @SSQL = @SSQL + '  And Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  88937.     IF @Sifra_GrOrg Is Not Null
  88938.         Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''') '
  88939.     IF @Za_GrOrgEd Is Not Null
  88940.         Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  88941.     INSERT INTO #TmpIzn EXEC(@SSQL)
  88942.     UPDATE #TmpIzn SET Iznos = 0 WHERE Iznos IS NULL
  88943.     SELECT @BrSmetki = SUM(Iznos) FRom #TmpIzn
  88944.  
  88945.  
  88946.  
  88947. Go
  88948. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfibrvrab]'))
  88949. drop procedure [dbo].[sp_odfibrvrab]
  88950.  
  88951. Go
  88952. CREATE          PROCEDURE sp_OdFiBrVrab
  88953.     @Sifra_OE    smallint,
  88954.     @Sifra_GrOrg    char(6),
  88955.     @Za_OrgEd    smallint,
  88956.     @Za_GrOrgEd    char(6), 
  88957.     @BrVrab    int OUTPUT
  88958. AS
  88959.     Declare @SSQL     varchar(1000)
  88960.     CREATE TABLE #TmpIzn
  88961. (    
  88962.     Iznos    int
  88963. )
  88964.     SET @SSQL = 'SELECT SUM(Br_Vraboteni) FROM Marketi  WHERE 1=1'
  88965.     IF @Sifra_Oe Is Not Null
  88966.         SET @SSQL = @SSQL + ' And Sifra_Mark IN (SELECT Sifra_Mark FROM OrgEd WHERE Sifra_OE= ' + Cast(@Sifra_Oe as varchar(6)) + ') '
  88967.     IF @Za_OrgEd Is Not Null
  88968.         SET @SSQL = @SSQL + ' And Sifra_Mark IN (SELECT Sifra_Mark FROM OrgEd WHERE Sifra_OE= ' + Cast(@Za_OrgEd as varchar(6)) + ') '
  88969.     IF @Sifra_GrOrg Is Not Null
  88970.         SET @SSQL = @SSQL + ' And Sifra_Mark IN (SELECT Sifra_Mark FROM OrgEd WHERE Sifra_OE IN 
  88971.             (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''')) '
  88972.     IF @Za_GrOrgEd Is Not Null
  88973.         SET @SSQL = @SSQL + ' And Sifra_Mark IN (SELECT Sifra_Mark FROM OrgEd WHERE Sifra_OE IN 
  88974.             (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd   +  ''')) '
  88975.     INSERT INTO #TmpIzn EXEC(@SSQL)
  88976.     UPDATE #TmpIzn SET Iznos = 0 WHERE Iznos IS NULL
  88977.     SELECT @BrVrab = SUM(Iznos) FRom #TmpIzn
  88978.  
  88979.  
  88980.  
  88981. Go
  88982. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfikonta]'))
  88983. drop procedure [dbo].[sp_odfikonta]
  88984.  
  88985. Go
  88986.  
  88987.  
  88988.  
  88989.  
  88990.  
  88991.  
  88992.  
  88993. CREATE                          PROCEDURE sp_OdFiKonta
  88994.     @FiID        int,
  88995.     @RbrFi        smallint,
  88996.     @Datum_Od    smalldatetime, 
  88997.     @Datum_Do    smalldatetime,
  88998.     @Sifra_OE    smallint,
  88999.     @Sifra_GrOrg    char(6),
  89000.     @Za_OrgEd    smallint,
  89001.     @Za_GrOrgEd    char(6), 
  89002.     @Iznos        decimal(18,6) OUTPUT,
  89003.     @BezOrgEd    char(1) = 'N',
  89004.     @DivizijaOd    char(1) = 'G',    -- G - od GStav       D - od GstAnDiv
  89005.     @Za_Divizija smallint = NULL
  89006. AS
  89007.     Declare @SSQL     varchar(1000)
  89008.     Declare @Kto_Anal    char(10)
  89009.     Declare @Egzaktno_Kto    char(1)
  89010.     Declare @TekPocVk    char(1)
  89011.     Declare @D_P_SD_SP    char(2)
  89012.     Declare @Raspredelba    char(1)
  89013.     Declare @Znak        char(1)
  89014.     Declare @PomIzn    decimal(18,6)
  89015.     Declare @PomProc    decimal(6,2)
  89016.     Declare @Sifra_Div    smallint
  89017.     Declare @Sifra_TrosM smallint
  89018.     Declare @Sifra_Rsp smallint
  89019.     SET @Iznos = 0
  89020.  
  89021.     CREATE TABLE #TmpIzn
  89022. (    Iznos        decimal(18,6))
  89023.  
  89024.     CREATE TABLE #TmpIzn1
  89025. (    Iznos        decimal(18,6))
  89026. Declare @Izn1 decimal (18,6)
  89027.  
  89028.     Set Nocount On
  89029.     Declare Tabela1 Cursor Fast_Forward For
  89030.         Select Kto_Anal, Egzaktno_Kto, TekPocVk, D_P_SD_SP, Raspredelba, Znak, Sifra_Div, Sifra_TrosM, Sifra_FiRsp
  89031.         From FiKonta WHERE FiId = @FiId AND RbrFi = @RbrFi
  89032.     Open Tabela1
  89033.     Fetch Next From Tabela1 Into @Kto_Anal, @Egzaktno_Kto, @TekPocVk, @D_P_SD_SP, @Raspredelba, @Znak, @Sifra_Div, @Sifra_TrosM, @Sifra_Rsp
  89034.     While @@Fetch_Status = 0
  89035.     Begin            
  89036.         DELETE FROM #TmpIzn
  89037.         --If @Sifra_Div Is Not Null And @DivizijaOd = 'D'    bese do 04.2010
  89038.         If (((@Sifra_Div Is Not Null AND @Sifra_Rsp IS NULL) OR @Za_Divizija IS NOT NULL) And @DivizijaOd = 'D') OR @Sifra_TrosM IS NOT NULL
  89039.         Begin
  89040.             SET @SSQL = 'SELECT '
  89041.             IF @D_P_SD_SP = 'D '
  89042.                 SET @SSQL = @SSQL + ' Sum(GD.Dolzi) '
  89043.             Else IF @D_P_SD_SP = 'P '
  89044.                 SET @SSQL = @SSQL + ' Sum(GD.Pobaruva) '
  89045.             Else IF @D_P_SD_SP = 'SD'
  89046.                 SET @SSQL = @SSQL + ' Sum(GD.Dolzi - GD.Pobaruva) '
  89047.             Else
  89048.                 SET @SSQL = @SSQL + ' Sum(GD.Pobaruva - GD.Dolzi) '
  89049.         End
  89050.         Else
  89051.         Begin
  89052.             SET @SSQL = 'SELECT '
  89053.             IF @D_P_SD_SP = 'D '
  89054.                 SET @SSQL = @SSQL + ' Sum(G.Dolzi) '
  89055.             Else IF @D_P_SD_SP = 'P '
  89056.                 SET @SSQL = @SSQL + ' Sum(G.Pobaruva) '
  89057.             Else IF @D_P_SD_SP = 'SD'
  89058.                 SET @SSQL = @SSQL + ' Sum(G.Dolzi - G.Pobaruva) '
  89059.             Else
  89060.                 SET @SSQL = @SSQL + ' Sum(G.Pobaruva - G.Dolzi) '
  89061.         End
  89062.         SET @SSQL = @SSQL + ' FROM Gstav G '
  89063.         If (((@Sifra_Div Is Not Null AND @Sifra_Rsp IS NULL) OR @Za_Divizija IS NOT NULL) And @DivizijaOd = 'D') OR @Sifra_TrosM IS NOT NULL
  89064.             Set @SSQL = @SSQL + ' Inner Join GstAnDiv GD On GD.GstID=G.GstID '
  89065.         Set @SSQL = @SSQL + ' WHERE G.Kto_Anal '
  89066.         IF @Egzaktno_kto = 'D'
  89067.             SET @SSQL = @SSQL + ' = ''' + @Kto_Anal + ''' '
  89068.         Else
  89069.             SET @SSQL = @SSQL + ' LIKE ''' + ltrim(rtrim(@Kto_Anal)) + '%'' '
  89070.         IF @TekPocVk = 'T'
  89071.             SET @SSQL = @SSQL + ' AND G.Datum_Nal >= ''' + Cast(@Datum_Od as varchar(35)) + ''' AND G.Datum_Nal <= ''' + Cast(@Datum_Do as varchar(35))  + ''' '
  89072.         Else IF @TekPocVk = 'P'
  89073.             SET @SSQL = @SSQL + ' AND Year(G.Datum_nal) =  ' + Cast( Year(@Datum_Od) as char(4)) + ' AND G.Sifra_Nal = 999 '
  89074.         Else
  89075.             SET @SSQL = @SSQL +  ' AND Year(G.Datum_nal) =  ' + Cast( Year(@Datum_Od) as char(4)) + ' AND G.Datum_Nal <= ''' + Cast(@Datum_Do as varchar(35))  + ''' '
  89076.         If @BezOrgEd = 'D'
  89077.             SET @SSQL = @SSQL + ' And G.Sifra_Oe Is Null '
  89078.         Else
  89079.         Begin
  89080.             IF @Sifra_Oe Is Not Null
  89081.                 SET @SSQL = @SSQL + ' And G.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  89082.             IF @Sifra_GrOrg Is Not Null
  89083.                 Set @SSQL  = @SSQL + ' And G.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''') '
  89084.             IF @Raspredelba <> 'D'
  89085.             Begin
  89086.                 IF @Za_GrOrgEd Is Not Null
  89087.                     Set @SSQL  = @SSQL + ' And G.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89088.                 IF @Za_OrgEd Is Not Null
  89089.                     SET @SSQL = @SSQL + '  And G.Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  89090.             End 
  89091.         End
  89092.         If @Sifra_Div Is Not Null AND @Sifra_Rsp IS NULL
  89093.         Begin
  89094.             If @DivizijaOd = 'D'
  89095.                 Set @SSQL = @SSQL + '  And GD.Sifra_Div = ' + Cast(@Sifra_Div as varchar(6)) + ' '
  89096.             Else
  89097.                 Set @SSQL = @SSQL + '  And G.Sifra_Div = ' + Cast(@Sifra_Div as varchar(6)) + ' '
  89098.         End
  89099.         If @Za_Divizija Is Not Null AND @Sifra_Rsp IS NULL
  89100.         Begin
  89101.             If @DivizijaOd = 'D'
  89102.                 Set @SSQL = @SSQL + '  And GD.Sifra_Div = ' + Cast(@Za_Divizija as varchar(6)) + ' '
  89103.             Else
  89104.                 Set @SSQL = @SSQL + '  And G.Sifra_Div = ' + Cast(@Za_Divizija as varchar(6)) + ' '
  89105.         End
  89106.  
  89107.         IF @Sifra_Rsp IS NOT NULL AND @Za_Divizija IS NOT NULL 
  89108.         Begin
  89109.             If @DivizijaOd = 'D'
  89110.             Begin
  89111.                 IF @Sifra_Div IS NOT NULL
  89112.                     Set @SSQL = @SSQL + '  And (GD.Sifra_Div = ' + Cast(@Sifra_Div as varchar(6)) + ' OR GD.Sifra_Div IS NULL) '
  89113.                 ELSE
  89114.                     SET @SSQL = @SSQL + '  And GD.Sifra_Div IS NULL '
  89115.             End
  89116.             ELSE
  89117.             Begin
  89118.                 IF @Sifra_Div IS NOT NULL
  89119.                     Set @SSQL = @SSQL + '  And (G.Sifra_Div = ' + Cast(@Sifra_Div as varchar(6)) + ' OR G.Sifra_Div IS NULL) '
  89120.                 ELSE
  89121.                     SET @SSQL = @SSQL + '  And G.Sifra_Div IS NULL '
  89122.             End
  89123.         End        
  89124.         IF @Sifra_TrosM IS NOT NULL 
  89125.             Set @SSQL = @SSQL + '  And GD.Sifra_TrosM = ' + Cast(@Sifra_TrosM as varchar(6)) + ' '
  89126.         INSERT INTO #TmpIzn EXEC(@SSQL)
  89127.         UPDATE #TmpIzn SET Iznos=0 WHERE Iznos IS NULL
  89128. -------
  89129.         If @Za_Divizija IS NOT NULL And @DivizijaOd = 'D' AND @Sifra_Rsp IS NOT NULL AND @Sifra_TrosM IS NULL
  89130.         Begin
  89131.             SET @SSQL = 'SELECT '
  89132.             IF @D_P_SD_SP = 'D '
  89133.                 SET @SSQL = @SSQL + ' Sum(G.Dolzi) '
  89134.             Else IF @D_P_SD_SP = 'P '
  89135.                 SET @SSQL = @SSQL + ' Sum(G.Pobaruva) '
  89136.             Else IF @D_P_SD_SP = 'SD'
  89137.                 SET @SSQL = @SSQL + ' Sum(G.Dolzi - G.Pobaruva) '
  89138.             Else
  89139.                 SET @SSQL = @SSQL + ' Sum(G.Pobaruva - G.Dolzi) '
  89140.             SET @SSQL = @SSQL + ' FROM Gstav G WHERE G.GstID NOT IN (SELECT DISTINCT GstID FROM GstAnDiv) AND G.Kto_Anal '
  89141.             IF @Egzaktno_kto = 'D'
  89142.                 SET @SSQL = @SSQL + ' = ''' + @Kto_Anal + ''' '
  89143.             Else
  89144.                 SET @SSQL = @SSQL + ' LIKE ''' + ltrim(rtrim(@Kto_Anal)) + '%'' '
  89145.             IF @TekPocVk = 'T'
  89146.                 SET @SSQL = @SSQL + ' AND G.Datum_Nal >= ''' + Cast(@Datum_Od as varchar(35)) + ''' AND G.Datum_Nal <= ''' + Cast(@Datum_Do as varchar(35))  + ''' '
  89147.             Else IF @TekPocVk = 'P'
  89148.                 SET @SSQL = @SSQL + ' AND Year(G.Datum_nal) =  ' + Cast( Year(@Datum_Od) as char(4)) + ' AND G.Sifra_Nal = 999 '
  89149.             Else
  89150.                 SET @SSQL = @SSQL +  ' AND Year(G.Datum_nal) =  ' + Cast( Year(@Datum_Od) as char(4)) + ' AND G.Datum_Nal <= ''' + Cast(@Datum_Do as varchar(35))  + ''' '
  89151.             If @BezOrgEd = 'D'
  89152.                 SET @SSQL = @SSQL + ' And G.Sifra_Oe Is Null '
  89153.             Else
  89154.             Begin
  89155.                 IF @Sifra_Oe Is Not Null
  89156.                     SET @SSQL = @SSQL + ' And G.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  89157.                 IF @Sifra_GrOrg Is Not Null
  89158.                     Set @SSQL  = @SSQL + ' And G.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''') '
  89159.                 IF @Raspredelba <> 'D'
  89160.                 Begin
  89161.                     IF @Za_GrOrgEd Is Not Null
  89162.                         Set @SSQL  = @SSQL + ' And G.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89163.                     IF @Za_OrgEd Is Not Null
  89164.                         SET @SSQL = @SSQL + '  And G.Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  89165.                 End 
  89166.             End
  89167.  
  89168.             DELETE FROM #TmpIzn1
  89169.             INSERT INTO #TmpIzn1 EXEC(@SSQL)
  89170. --print '2'
  89171. --print (@SSQL)
  89172.             SELECT @Izn1=Iznos FROM #TmpIzn1
  89173.             IF @Izn1 IS NULL SET @Izn1=0
  89174.             UPDATE #TmpIzn SET Iznos=Iznos+@Izn1
  89175. --select * from #TmpIzn
  89176. --print 'so rasp'
  89177.         END
  89178. -------
  89179.         IF @Znak = '-'
  89180.             UPDATE #TmpIzn SET Iznos = Iznos * -1
  89181.         UPDATE #TmpIzn SET Iznos = 0 WHERE Iznos IS NULL
  89182.         IF @Raspredelba = 'D' AND @Sifra_Rsp IS NULL
  89183.         Begin
  89184.             CREATE TABLE #Tmp1
  89185.         (    Sifra_OE    smallint,
  89186.             Iznos        decimal(18,6)
  89187.         )
  89188.             SET @SSQL = 'INSERT INTO #Tmp1
  89189.             SELECT P.Sifra_OE,  Round(#TmpIzn.Iznos * P.Procent / 100, 2) 
  89190.             FROM ##TmpProc P, #TmpIzn WHERE 1=1'
  89191.             If @BezOrgEd = 'D'
  89192.                 SET @SSQL = @SSQL + ' And Sifra_Oe Is Null '
  89193.             Else
  89194.             Begin
  89195.                 IF @Za_OrgEd Is Not Null
  89196.                     SET @SSQL = @SSQL + '  And Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  89197.                 IF @Za_GrOrgEd Is Not Null
  89198.                     Set @SSQL  = @SSQL + ' And Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89199.             End
  89200.             EXEC (@SSQL)
  89201.             SELECT @PomIzn = SUM(Iznos) FRom #Tmp1
  89202.             DROP TABLE #Tmp1
  89203.         End
  89204.         ELSE IF @Sifra_Rsp IS NOT NULL AND @Za_Divizija IS NOT NULL
  89205.         Begin
  89206.             Declare @Procent as decimal(6,2)
  89207.             SET @Procent=0            --ova da se ostavi, pravese golemi problemi ako nema zapis dolu, ne se nulira, mi zede 2 sati
  89208.             SELECT @Procent = Procent FROM FiRaspredelba WHERE Sifra_FiRsp=@Sifra_Rsp AND Sifra_Div=@Za_Divizija
  89209.             IF @Procent IS NULL SET @Procent=0
  89210.             SELECT @PomIzn = Round(SUM(Iznos) * @Procent/100,2)  FRom #TmpIzn
  89211. --print 'rasp ' +cast(@Sifra_Rsp as varchar(2))+' proc '+cast(@Procent as varchar(8))+' div '+cast(@Za_Divizija as varchar(3))+' izn ' +cast(@PomIzn as varchar(14))
  89212.         End
  89213.         ELSE
  89214.             SELECT @PomIzn = SUM(Iznos) FRom #TmpIzn
  89215.         SET @Iznos = @Iznos + @PomIzn
  89216. --print 'sega @iznos'
  89217. --print @Iznos
  89218.         Fetch Next From Tabela1 Into @Kto_Anal, @Egzaktno_Kto, @TekPocVk, @D_P_SD_SP, @Raspredelba, @Znak, @Sifra_Div, @Sifra_TrosM, @Sifra_Rsp
  89219.     End
  89220.     Close Tabela1
  89221.     Deallocate Tabela1
  89222.     Set Nocount Off
  89223.  
  89224.  
  89225.  
  89226.  
  89227.  
  89228.  
  89229.  
  89230.  
  89231.  
  89232.  
  89233. Go
  89234. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfimnabavka]'))
  89235. drop procedure [dbo].[sp_odfimnabavka]
  89236.  
  89237. Go
  89238. CREATE          PROCEDURE sp_OdFiMNabavka
  89239.     @Datum_Od    smalldatetime,
  89240.     @Datum_Do    smalldatetime,
  89241.     @Sifra_OE    smallint,
  89242.     @Sifra_GrOrg    char(6),
  89243.     @Za_OrgEd    smallint,
  89244.     @Za_GrOrgEd    char(6), 
  89245.     @Nab_VredNab    char(1) = 'N',
  89246.     @Iznos        decimal(18,6) OUTPUT
  89247. AS
  89248.     Declare @SSQL Varchar(4000)
  89249.     Create Table #Tab
  89250.         (
  89251.             Nabavka    decimal(18,6)
  89252.         )
  89253.     Set @SSQL = ' Insert Into #Tab (Nabavka)
  89254.             Select Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat
  89255.             From Stavr S
  89256.             Inner Join Dokr D On D. DokrId = S.DokrId
  89257.             Inner Join Katart K On S.Sifra_Art=K.Sifra_Art
  89258.             Where S.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(30)) + '''
  89259.             And S.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  89260.     If @Nab_VredNab = 'N'
  89261.         Set @SSQL =@SSQL + ' And D.Sifra_Za = 2 and D.VlIzl = ''V'' '
  89262.     Else
  89263.         Set @SSQL= @SSQL + ' And D.Sifra_Za In (2,3) and D.VlIzl = ''V'' '
  89264.     IF @Sifra_Oe Is Not Null
  89265.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  89266.     IF @Za_OrgEd Is Not Null
  89267.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  89268.     IF @Sifra_GrOrg Is Not Null
  89269.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''') '
  89270.     IF @Za_GrOrgEd Is Not Null
  89271.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89272.     Exec(@SSQL)
  89273. -- Ne se slozuva so nekoi proceduri od prodaza zaradi toa sto tvddo e staveno da gi isklucuva tie artikli kada K.Iskluci = 'D'
  89274.         Set @Iznos = (Select Sum(Nabavka) From #Tab)
  89275.  
  89276.  
  89277.  
  89278. Go
  89279. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfimprodazba]'))
  89280. drop procedure [dbo].[sp_odfimprodazba]
  89281.  
  89282. Go
  89283.  
  89284.  
  89285. CREATE            PROCEDURE sp_OdFiMProdazba
  89286.     @Datum_Od    smalldatetime,
  89287.     @Datum_Do    smalldatetime,
  89288.     @Sifra_OE    smallint,
  89289.     @Sifra_GrOrg    char(6),
  89290.     @Za_OrgEd    smallint,
  89291.     @Za_GrOrgEd    char(6), 
  89292.     @Prod_VredProd char(1),
  89293.     @Sifra        varchar(20)=NULL,
  89294.     @KojaSifra    char(2) = NULL,        --PG-PodGrupa
  89295.     @Iznos        decimal(18,2) OUTPUT
  89296. AS
  89297.     Declare @SSQL Varchar(4000)
  89298.     Create Table #Tab
  89299.         (
  89300.             Prodazba        decimal(18,2)
  89301.         )
  89302.     Set @SSQL = ' Insert Into #Tab (Prodazba)
  89303.             Select Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) as Vr_SoRabat
  89304.             From Stavr S
  89305.             Inner Join Dokr D On D. DokrId = S.DokrId '
  89306.     IF @Sifra IS NOT NULL
  89307.     Begin
  89308.         IF @KojaSifra = 'PG'
  89309.         Set @SSQL = @SSQL + ' Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  89310.     End
  89311.     Set @SSQL = @SSQL + ' Where S.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(30)) + '''
  89312.             And S.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  89313.     If @Prod_VredProd = 'P'
  89314.         Set @SSQL = @SSQL + ' And D.Sifra_Za = 1 and D.VlIzl = ''I'' ' 
  89315.     Else
  89316.         Set @SSQL = @SSQL + ' And D.Sifra_Za In (1,3) and D.VlIzl = ''I'' ' 
  89317.     IF @Sifra_Oe Is Not Null
  89318.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  89319.     IF @Za_OrgEd Is Not Null
  89320.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  89321.     IF @Sifra_GrOrg Is Not Null
  89322.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''') '
  89323.     IF @Za_GrOrgEd Is Not Null
  89324.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89325.     IF @Sifra IS NOT NULL
  89326.     Begin
  89327.         IF @KojaSifra='PG'
  89328.         Set @SSQL  = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra + ''' '
  89329.     End
  89330.     Exec(@SSQL)
  89331. -- Ne se slozuva so nekoi proceduri od prodaza zaradi toa sto tvddo e staveno da gi isklucuva tie artikli kada K.Iskluci = 'D'
  89332.         Set @Iznos = (Select Sum(Prodazba) From #Tab)
  89333.  
  89334.  
  89335.  
  89336. Go
  89337. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfimrazlcena]'))
  89338. drop procedure [dbo].[sp_odfimrazlcena]
  89339.  
  89340. Go
  89341.  
  89342. CREATE           PROCEDURE sp_OdFiMRazlCena
  89343.     @Datum_Od    smalldatetime,
  89344.     @Datum_Do    smalldatetime,
  89345.     @Sifra_OE    smallint,
  89346.     @Sifra_GrOrg    char(6),
  89347.     @Za_OrgEd    smallint,
  89348.     @Za_GrOrgEd    char(6), 
  89349.     @Sifra        varchar(20) = NULL,
  89350.     @KojaSifra    char(2) = NULL,         --PG-PodGrupa
  89351.     @Iznos        decimal(18,2) OUTPUT
  89352. AS
  89353.     Declare @SSQL Varchar(4000)
  89354.     Create Table #Tab
  89355.         (
  89356.             RazlCena    decimal(18,6)
  89357.         )
  89358.     Set @SSQL = ' Insert Into #Tab Select Round(sum(Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)
  89359.                                 - S.Kolic*S.NabCena),2)
  89360.             From Stavr S
  89361.             Inner Join Dokr D On D.DokrId = S.DokrId '
  89362.     IF @Sifra IS NOT NULL
  89363.     Begin
  89364.         IF @KojaSifra = 'PG'
  89365.         Set @SSQL = @SSQL + ' Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art '
  89366.     End
  89367.     SET @SSQL = @SSQL + '  Where S.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(30)) + '''
  89368.             And S.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' 
  89369.             And S.VlIzl = ''I'' and D.Sifra_Za = 1 '
  89370.     IF @Sifra_Oe Is Not Null
  89371.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  89372.     IF @Za_OrgEd Is Not Null
  89373.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  89374.     IF @Sifra_GrOrg Is Not Null
  89375.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''') '
  89376.     IF @Za_GrOrgEd Is Not Null
  89377.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89378.     IF @Sifra IS NOT NULL
  89379.     Begin
  89380.         IF @KojaSifra='PG'
  89381.         Set @SSQL  = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra + ''' '
  89382.     End
  89383.     Exec(@SSQL)
  89384. -- Ne se slozuva so nekoi proceduri od prodaza zaradi toa sto tvddo e staveno da gi isklucuva tie artikli kada K.Iskluci = 'D'
  89385.     Set @Iznos = (Select Sum(RazlCena) From #Tab)
  89386.  
  89387.  
  89388.  
  89389. Go
  89390. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfimzaliha]'))
  89391. drop procedure [dbo].[sp_odfimzaliha]
  89392.  
  89393. Go
  89394. CREATE          PROCEDURE sp_OdFiMZaliha
  89395.     @Datum_Do    smalldatetime,
  89396.     @Sifra_OE    smallint,
  89397.     @Sifra_GrOrg    char(6),
  89398.     @Za_OrgEd    smallint,
  89399.     @Za_GrOrgEd    char(6), 
  89400.     @Iznos        decimal(18,6) OUTPUT
  89401. AS
  89402.     Declare @SSQL Varchar(4000)
  89403.     Create Table #Tab
  89404.         (
  89405.             Vlez    decimal(18,6),
  89406.             Izlez    decimal(18,6),
  89407.            Cena    decimal(18,6)
  89408.         )
  89409.     Set @SSQL = ' Insert Into #Tab 
  89410.             Select Vlez = Sum(Case S.VlIzl
  89411.                 When ''V'' Then S.Kolic
  89412.                 When ''I'' Then 0
  89413.             End),
  89414.                      Izlez = Sum(Case S.VlIzl
  89415.                 When ''V'' Then 0
  89416.                 When ''I'' Then Kolic
  89417.             End),
  89418.             dbo.fn_CenaDatum(S.Sifra_OE, S.Sifra_Art, ''' + Cast(@Datum_Do As Varchar(30)) + ''', ''N'')
  89419.             From Stavr S
  89420.             Inner Join Dokr D On D. DokrId = S.DokrId
  89421.             Inner Join Katart K On S.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' 
  89422.             Where S.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  89423.     IF @Sifra_Oe Is Not Null
  89424.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  89425.     IF @Za_OrgEd Is Not Null
  89426.         SET @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Za_OrgEd as varchar(6)) + ' '
  89427.     IF @Sifra_GrOrg Is Not Null
  89428.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Sifra_GrOrg  +  ''') '
  89429.     IF @Za_GrOrgEd Is Not Null
  89430.         Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89431.     Set @SSQL = @SSQL + ' Group By dbo.fn_CenaDatum(S.Sifra_OE, S.Sifra_Art, ''' + Cast(@Datum_Do As Varchar(30)) + ''', ''N'') '
  89432.     Exec(@SSQL)
  89433.     Set @Iznos = (Select Sum((Vlez-Izlez)*Cena) From #Tab)
  89434.  
  89435.  
  89436.  
  89437. Go
  89438. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfispeckuppat]'))
  89439. drop procedure [dbo].[sp_odfispeckuppat]
  89440.  
  89441. Go
  89442.  
  89443. CREATE         PROCEDURE sp_OdFiSpecKupPat
  89444.     @Datum_Od    smalldatetime,
  89445.     @Datum_Do    smalldatetime,
  89446.     @Sifra_OE    smallint=NULL,
  89447.     @Sif_GrOrg    char(6),
  89448.     @Kto_Anal    char(10),
  89449.     @BezOrgEd    char(1) = 'N',
  89450.     @Iznos        decimal(18,6) OUTPUT
  89451. AS
  89452.     Declare @SSQL Varchar(4000)
  89453.     Create Table #Tab
  89454.         (Iznos    decimal(18,4) )
  89455.     Set @SSQL = ' Insert Into #Tab Select Sum(F.Dolzi-F.Pobaruva) From AnFinDok F 
  89456.                 INNER JOIN Komint K ON F.Sifra_Kup=K.Sifra_Kup 
  89457.                 Where F.Kto=' +@Kto_anal+ ' AND F.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  89458.     IF @Datum_Od Is Not Null
  89459.         SET @SSQL = @SSQL + ' And F.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  89460.     IF @BezOrgEd='N' 
  89461.         Begin
  89462.         IF @Sif_GrOrg IS NOT NULL
  89463.             SET @SSQL = @SSQL + ' AND K.Sifra_Pat IN (SELECT Sifra_Pat FROM Patnici WHERE Sif_GrOrg=''' + @Sif_GrOrg + ''') '
  89464.         End
  89465.     ELSE
  89466.         SET @SSQL = @SSQL + ' AND K.Sifra_Pat IS NULL '
  89467.     Exec(@SSQL)
  89468.     Select @Iznos=Iznos From #Tab
  89469.  
  89470.  
  89471.  
  89472. Go
  89473. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfitabela]'))
  89474. drop procedure [dbo].[sp_odfitabela]
  89475.  
  89476. Go
  89477.  
  89478.  
  89479.  
  89480. CREATE                       PROCEDURE sp_OdFiTabela
  89481.     @FiID        int,
  89482.     @Datum_Od    smalldatetime, 
  89483.     @Datum_Do    smalldatetime,
  89484.     @Za_OrgEd    smallint = NULL,
  89485.     @Za_GrOrgEd    char(6) = NULL,
  89486.     @Konto_Raspr    varchar(10) = NULL,
  89487.     @PoOrgEd    char(1) = NULL,            --na D koga se pusta od sp_odFiTabelaPoOrged
  89488.     @BezOrgEd    char(1) = 'N',
  89489.     @DivizijaOd    char(1) = 'G',    -- G - od GStav       D - od GstAnDiv
  89490.     @Za_Divizija    smallint = NULL
  89491. AS
  89492.     CREATE TABLE ##TmpProc
  89493. (    Sifra_OE    smallint,
  89494.     Iznos        decimal(18,2),
  89495.     Procent        decimal(18,9)
  89496. )
  89497. Declare @TocnoKtoRaspr char(1)
  89498. Declare @VkIznRaspr    decimal(18,2)            --najdi % za raspredelba
  89499. SELECT @Konto_Raspr = rtrim(ltrim(Kto_Anal_Raspr)), @TocnoKtoRaspr = Egzaktno_KtoRaspr FROM FiTabela WHERE FiId = @FiID
  89500. if @Konto_Raspr='' SET  @Konto_Raspr = null
  89501. IF @Konto_Raspr IS NOT NULL
  89502. Begin
  89503.     IF @TocnoKtoRaspr = 'N'
  89504.     Begin
  89505.         SELECT @VkIznRaspr = round(SUM(Dolzi - Pobaruva),2) FROM GStav 
  89506.         WHERE Datum_Nal >= @Datum_Od AND Datum_Nal <= @Datum_Do AND Kto_Anal LIKE @Konto_Raspr + '%'
  89507.         INSERT INTO ##TmpProc (Sifra_OE, Iznos) 
  89508.         SELECT Sifra_OE, round(SUM(Dolzi - Pobaruva),2) FROM GStav 
  89509.         WHERE Datum_Nal >= @Datum_Od AND Datum_Nal <= @Datum_Do AND Kto_Anal LIKE @Konto_Raspr + '%'
  89510.         GROUP BY Sifra_OE
  89511.     End
  89512.     Else
  89513.     Begin
  89514.         SELECT @VkIznRaspr = Round(SUM(Dolzi - Pobaruva),2) FROM GStav 
  89515.         WHERE Datum_Nal >= @Datum_Od AND Datum_Nal <= @Datum_Do AND Kto_Anal = @Konto_Raspr
  89516.         INSERT INTO ##TmpProc (Sifra_OE, Iznos) 
  89517.         SELECT Sifra_OE, Round(SUM(Dolzi - Pobaruva),2) FROM GStav WHERE Datum_Nal >= @Datum_Od AND Datum_Nal <= @Datum_Do AND Kto_Anal = @Konto_Raspr
  89518.         GROUP BY Sifra_OE
  89519.     End
  89520.     IF @VkIznRaspr <> 0
  89521.     UPDATE ##TmpProc SET Procent = ROUND(Iznos * 100 / @VkIznRaspr, 9)
  89522.     UPDATE ##TmpProc SET Procent = 0 WHERE Procent IS NULL
  89523. End
  89524.     CREATE TABLE ##TmpTab
  89525. (    RbrFi    int,
  89526.     Opis    nvarchar(200),
  89527.     Sifra_OE    smallint,
  89528.     Sifra_GrOrg    char(6),
  89529.     OdKade        char(10),
  89530.     Znak        char(1),
  89531.     Sifra        varchar(20),
  89532.     Razresen    char(1),
  89533.     Iznos        decimal(18,6)
  89534. )
  89535.     INSERT INTO ##TmpTab (RbrFi, Opis, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Sifra, Razresen, Iznos) 
  89536.     SELECT RbrFi, Opis, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Sifra, 'N', 0  FROM Fistavki
  89537.     WHERE FiID = @FiID
  89538.     Declare @RbrFi        int
  89539.     Declare @Opis        nvarchar(200)
  89540.     Declare @Sifra_OE    smallint
  89541.     Declare @Sifra_GrOrg    char(6)
  89542.     Declare @OdKade    char(10)
  89543.     Declare @Znak        char(1)
  89544.     Declare @Sifra        varchar(20)
  89545.     Declare @Iznos        decimal(18,6)
  89546.     Declare @IIznos        int
  89547.     Declare @Razresen    char(1)
  89548.     Declare @ZnakSt    smallint
  89549.     Declare @Brojac    smallint
  89550.     Declare @ImaZ        char(1)
  89551.     Declare @BrRZbir    smallint    
  89552.     Declare @Procent    decimal(6,2)
  89553.     Set Nocount On
  89554.     Declare Tabela Cursor Fast_Forward For
  89555.         Select RbrFi, Opis, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab WHERE Ltrim(RTrim(OdKade)) = 'K'
  89556.     Open Tabela
  89557.     Fetch Next From Tabela Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade    , @Znak, @Razresen, @Iznos
  89558.     While @@Fetch_Status = 0
  89559.     Begin
  89560.         exec sp_OdFiKonta @FiID, @RbrFi, @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Iznos=@Iznos OUTPUT, @BezOrgEd=@BezOrgEd, @DivizijaOd=@DivizijaOd, @Za_Divizija=@Za_Divizija
  89561.         IF @Znak = '-'
  89562.             SET @ZnakSt = -1
  89563.         ELSE
  89564.             SET @ZnakSt = 1    
  89565.         UPDATE ##TmpTab SET Iznos = Round(@Iznos * @ZnakSt,2), Razresen='D'  WHERE RbrFi = @RbrFi        
  89566.         Fetch Next From Tabela Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade    , @Znak, @Razresen, @Iznos
  89567.     End
  89568.     Close Tabela
  89569.     Deallocate Tabela
  89570.     Declare Tabela Cursor Fast_Forward For
  89571.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) = 'BRSMETKI'
  89572.     Open Tabela
  89573.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89574.     While @@Fetch_Status = 0
  89575.     Begin
  89576.         SET @IIznos = 0
  89577.         exec sp_OdFiBrSmetki @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @BrSmetki=@IIznos OUTPUT        
  89578.         UPDATE ##TmpTab SET Iznos = Round(@IIznos,2), Razresen='D'  WHERE RbrFi = @RbrFi        
  89579.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89580.     End
  89581.     Close Tabela
  89582.     Deallocate Tabela
  89583.     Declare Tabela Cursor Fast_Forward For
  89584.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) = 'BRVRAB'
  89585.     Open Tabela
  89586.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89587.     While @@Fetch_Status = 0
  89588.     Begin
  89589.         SET @IIznos = 0
  89590.         exec sp_OdFiBrVrab @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @BrVrab=@IIznos OUTPUT        
  89591.         UPDATE ##TmpTab SET Iznos = Round(@IIznos,2), Razresen='D'  WHERE RbrFi = @RbrFi        
  89592.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89593.     End
  89594.     Close Tabela
  89595.     Deallocate Tabela
  89596. ------------------------------------------------ Dodadeno 21.06.2004
  89597. -- Zosto sluzi poleto razresen i dali treba za se polni vo ovie slucai ???
  89598.     Declare @Prod_VredProd char(1)
  89599.     Declare @Nab_VredNab char(1)
  89600.     Declare Tabela Cursor Fast_Forward For
  89601.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) = 'ZALIHA'
  89602.     Open Tabela
  89603.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89604.     While @@Fetch_Status = 0
  89605.     Begin
  89606.         SET @Iznos = 0
  89607.         exec sp_OdFiMZaliha @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Iznos=@Iznos OUTPUT        
  89608.         UPDATE ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  WHERE RbrFi = @RbrFi    
  89609.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89610.     End
  89611.     Close Tabela
  89612.     Deallocate Tabela
  89613.     Declare Tabela Cursor Fast_Forward For
  89614.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Sifra, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) Like 'PROD%'
  89615.     Open Tabela
  89616.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Sifra, @Razresen, @Iznos
  89617.     Set @Prod_VredProd = 'P'
  89618.     While @@Fetch_Status = 0
  89619.     Begin
  89620.         SET @Iznos = 0
  89621.         IF upper(Ltrim(RTrim(@OdKade))) = 'PROD'
  89622.             exec sp_OdFiMProdazba @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Prod_VredProd, NULL, NULL, @Iznos=@Iznos  OUTPUT        
  89623.         ELSE IF upper(Ltrim(RTrim(@OdKade))) = 'PRODPG'
  89624.             exec sp_OdFiMProdazba @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Prod_VredProd, @Sifra, 'PG', @Iznos=@Iznos  OUTPUT        
  89625.         UPDATE ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  WHERE RbrFi = @RbrFi    
  89626.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Sifra, @Razresen, @Iznos
  89627.     End
  89628.     Close Tabela
  89629.     Deallocate Tabela
  89630.     Declare Tabela Cursor Fast_Forward For
  89631.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) = 'VRIZLEZ'
  89632.     Open Tabela
  89633.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89634.     Set @Prod_VredProd = 'V'
  89635.     While @@Fetch_Status = 0
  89636.     Begin
  89637.         SET @Iznos = 0
  89638.         exec sp_OdFiMProdazba @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Prod_VredProd,NULL, NULL, @Iznos=@Iznos  OUTPUT        
  89639.         UPDATE ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  WHERE RbrFi = @RbrFi    
  89640.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89641.     End
  89642.     Close Tabela
  89643.     Deallocate Tabela
  89644.     Declare Tabela Cursor Fast_Forward For
  89645.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) = 'NABAV'
  89646.     Open Tabela
  89647.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89648.     Set @Nab_VredNab = 'N'
  89649.     While @@Fetch_Status = 0
  89650.     Begin
  89651.         SET @Iznos = 0
  89652.         exec sp_OdFiMNabavka @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Nab_VredNab, @Iznos=@Iznos  OUTPUT        
  89653.         UPDATE ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  WHERE RbrFi = @RbrFi    
  89654.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89655.     End
  89656.     Close Tabela
  89657.     Deallocate Tabela
  89658.     Declare Tabela Cursor Fast_Forward For
  89659.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) = 'VRVLEZ'
  89660.     Open Tabela
  89661.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89662.     Set @Nab_VredNab = 'V'
  89663.     While @@Fetch_Status = 0
  89664.     Begin
  89665.         SET @Iznos = 0
  89666.         exec sp_OdFiMNabavka @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Nab_VredNab, @Iznos=@Iznos  OUTPUT        
  89667.         UPDATE ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  WHERE RbrFi = @RbrFi    
  89668.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89669.     End
  89670.     Close Tabela
  89671.     Deallocate Tabela
  89672.     Declare Tabela Cursor Fast_Forward For
  89673.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Sifra, Razresen, Iznos  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) Like 'RAZLCENA%'
  89674.     Open Tabela
  89675.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Sifra, @Razresen, @Iznos
  89676.     While @@Fetch_Status = 0
  89677.     Begin
  89678.         SET @Iznos = 0
  89679.         IF upper(Ltrim(RTrim(@OdKade))) = 'RAZLCENA'
  89680.             exec sp_OdFiMRazlCena @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, NULL, NULL, @Iznos=@Iznos OUTPUT        
  89681.         ELSE IF upper(Ltrim(RTrim(@OdKade))) = 'RAZLCENAPG'
  89682.             exec sp_OdFiMRazlCena @Datum_Od, @Datum_Do, @Sifra_OE, @Sifra_GrOrg, @Za_OrgEd, @Za_GrOrgEd, @Sifra, 'PG', @Iznos=@Iznos  OUTPUT        
  89683.         UPDATE ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  WHERE RbrFi = @RbrFi    
  89684.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Sifra, @Razresen, @Iznos
  89685.     End
  89686.     Close Tabela
  89687.     Deallocate Tabela
  89688.     Declare Tabela Cursor Fast_Forward For
  89689.         Select RbrFi, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos, Sifra  From ##TmpTab WHERE upper(Ltrim(RTrim(OdKade))) = 'SPECKP'   --spec.komint.po pat.
  89690.     Open Tabela
  89691.     Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos, @Sifra
  89692.     While @@Fetch_Status = 0
  89693.     Begin
  89694.         SET @Iznos = 0
  89695.         exec sp_OdFiSpecKupPat  NULL, @Datum_Do, Null, @Za_GrOrgEd, @Sifra, @BezOrgEd, @Iznos=@Iznos OUTPUT        
  89696.         IF @Znak = '-'   SET @Iznos = @Iznos * -1
  89697.         UPDATE ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  WHERE RbrFi = @RbrFi    
  89698.         Fetch Next From Tabela Into @RbrFi, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos, @Sifra
  89699.     End
  89700.     Close Tabela
  89701.     Deallocate Tabela
  89702. ------------------------------------------------------------------------------------
  89703. UPDATE ##TmpTab SET Razresen='D' WHERE ltrim(rtrim(OdKade)) = 'F'
  89704.  
  89705. UPDATE ##TmpTab SET Iznos = cast(Substring(OdKade,2, 9) as decimal(18,6)) WHERE Substring(OdKade,1,1) = 'C'
  89706. UPDATE ##TmpTab SET Razresen='D' WHERE Substring(OdKade,1,1) = 'C'
  89707.  
  89708. DROP TABLE ##TmpProc
  89709.     Declare TabelaP Cursor Fast_Forward For
  89710.         Select RbrFi, Opis, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos  From ##TmpTab  WHERE Ltrim(RTrim(OdKade)) = 'P'  OR  Ltrim(RTrim(OdKade)) = 'S'
  89711.     Open TabelaP
  89712.     Fetch Next From TabelaP Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89713.     While @@Fetch_Status = 0
  89714.     Begin
  89715.         Exec sp_FiPodSuma @RbrFi,  @OdKade, @Iznos = @Iznos OUTPUT
  89716.         Update ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D' Where RbrFi = @RbrFi        
  89717.         Fetch Next From TabelaP Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89718.     End
  89719.     Close TabelaP
  89720.     Deallocate TabelaP
  89721. Update ##TmpTab SET Iznos = 0 WHERE Iznos IS NULL
  89722. SET @Brojac = 1
  89723. SET @ImaZ = 'D'
  89724. While @Brojac < 100 AND @ImaZ = 'D'
  89725. Begin    
  89726.     Declare TabelaZ Cursor Fast_Forward For
  89727.         Select RbrFi, Opis, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos From ##TmpTab  WHERE Ltrim(RTrim(OdKade)) = 'Z'  AND Razresen <> 'D'
  89728.     Open TabelaZ
  89729.     Fetch Next From TabelaZ Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89730.     While @@Fetch_Status = 0
  89731.     Begin
  89732.         Exec sp_OdFiZbir @FiID, @RbrFi,  @Iznos = @Iznos OUTPUT, @Razresen=@Razresen OUTPUT
  89733.         IF @Razresen='D'
  89734.         Update ##TmpTab SET Iznos = Round(@Iznos,2), Razresen='D'  Where RbrFi = @RbrFi        
  89735.         Fetch Next From TabelaZ Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89736.     End
  89737.     Close TabelaZ
  89738.     Deallocate TabelaZ
  89739.     SET @Brojac = @Brojac + 1
  89740.     SELECT @BrRZbir = COUNT(*) FROM ##TmpTab  WHERE Ltrim(RTrim(OdKade)) = 'Z'  AND Razresen <> 'D'
  89741.     IF @BrRZbir = 0   SET @ImaZ = 'N'
  89742. End
  89743. Declare @ProsIzn decimal(18,6)
  89744. Declare @Denovi int
  89745. --SET @Denovi = DateDiff(day, @Datum_Od, @Datum_Do) + 1    TREBALO BEZ NEDELI
  89746. declare @Dat1 smalldatetime
  89747. declare @Dat2 smalldatetime
  89748. set @Dat1= @Datum_Od
  89749. set @Dat2= @Datum_Do
  89750. set @Denovi = 0 
  89751. while @Dat1<= @Dat2
  89752. Begin
  89753.     if datename(weekday,@Dat1)<>'Sunday'
  89754.         SET @Denovi = @Denovi + 1
  89755.     SET @Dat1 = DateAdd(day, 1, @Dat1)
  89756. end
  89757. If @Denovi <> 0
  89758. Begin
  89759.     Declare TabelaPros Cursor Fast_Forward For
  89760.         Select RbrFi, Opis, Sifra_OE, Sifra_GrOrg, OdKade, Znak, Razresen, Iznos From ##TmpTab  WHERE Ltrim(RTrim(OdKade)) = 'PROSEK'  AND Razresen <> 'D'
  89761.     Open TabelaPros
  89762.     Fetch Next From TabelaPros Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89763.     While @@Fetch_Status = 0
  89764.     Begin
  89765.         SELECT @ProsIzn = Iznos FROM ##TmpTab WHERE RbrFi = @RbrFi - 1
  89766.         IF @ProsIzn IS NULL  SET @ProsIzn = 0 
  89767.         SET @ProsIzn = @ProsIzn / @Denovi
  89768.         Update ##TmpTab SET Iznos = Round(@ProsIzn,2), Razresen='D'  Where RbrFi = @RbrFi        
  89769.         Fetch Next From TabelaPros Into @RbrFi, @Opis, @Sifra_OE, @Sifra_GrOrg, @OdKade, @Znak, @Razresen, @Iznos
  89770.     End
  89771.     Close TabelaPros
  89772.     Deallocate TabelaPros
  89773. End
  89774.     Set Nocount Off
  89775. IF @PoOrgEd IS NULL OR @PoOrgEd <> 'D'
  89776. Begin
  89777.     SELECT * FROM ##TmpTab
  89778.     DROP TABLE ##TmpTab
  89779. End
  89780.  
  89781.  
  89782.  
  89783.  
  89784.  
  89785.  
  89786. Go
  89787. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfitabelapogrorg]'))
  89788. drop procedure [dbo].[sp_odfitabelapogrorg]
  89789.  
  89790. Go
  89791. CREATE    PROCEDURE sp_OdFiTabelaPoGrOrg
  89792.     @FiID        int,
  89793.     @Datum_Od    smalldatetime, 
  89794.     @Datum_Do    smalldatetime,
  89795.     @Za_GrOrgEd    varchar(200) = NULL,
  89796.     @Konto_Raspr    char(10) = NULL,
  89797.     @DivizijaOd    char(1) = 'G'    -- G - od GStav       D - od GstAnDiv
  89798. AS
  89799.     CREATE TABLE #TmpPoOrgEd
  89800.     (
  89801.      RbrFi        int,
  89802.      Opis        nvarchar(200),
  89803.      GrOrg        varchar(6),
  89804.      Sifra_OE    smallint,
  89805.      Iznos        decimal(18,6)
  89806.     )
  89807.     CREATE TABLE #PomOrg
  89808.     (
  89809.      GrOrg        varchar(10),
  89810.      Sifra_OE    smallint
  89811.     )
  89812.     Declare @Poz_Start as smallint
  89813.     Declare @Poz_Kraj as smallint
  89814.     Declare @GrOrg as varchar(6)
  89815.     Set @Poz_Start = 0
  89816.     WHILE 1=1
  89817.     Begin
  89818.         Set @Poz_Kraj = Charindex(',', @Za_GrOrgEd, @Poz_Start)
  89819.         If @Poz_Kraj = 0
  89820.             Break
  89821.         Set @GrOrg = SubString(@Za_GrOrgEd, @Poz_Start, @Poz_Kraj-@Poz_Start)
  89822.         Set @Poz_Start = @Poz_Kraj + 1
  89823.         --Insert Into #PomOrg Select Sif_GrOrg, Sifra_Oe From SGrOrg Where Sif_GrOrg=@GrOrg
  89824.         Insert Into #PomOrg VALUES (@GrOrg, NULL)
  89825.     End
  89826.     Declare @SSQL varchar(2000)
  89827.     Set @GrOrg = Null
  89828.     Declare @OrgEd smallint
  89829.     Declare Org Cursor Fast_Forward For
  89830.         Select GrOrg, Sifra_Oe From #PomOrg 
  89831.     Open Org
  89832.     Fetch Next From Org Into @GrOrg, @OrgEd
  89833.     While @@Fetch_Status = 0
  89834.     Begin            
  89835.         --exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, @OrgEd, NULL, @Konto_Raspr, 'D'
  89836.         --exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, NULL, @GrOrg, @Konto_Raspr, 'D'   07.04.2008 gk
  89837.         exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, NULL, @GrOrg, @Konto_Raspr, 'D', 'N', @DivizijaOd
  89838.         INSERT INTO #TmpPoOrgEd SELECT RbrFi, Opis, @GrOrg, @OrgEd, Iznos FROM ##TmpTab
  89839.         WHERE Iznos <> 0
  89840.         DROP TABLE ##TmpTab        
  89841.         Fetch Next From Org Into @GrOrg, @OrgEd
  89842.     End
  89843.     Close Org
  89844.     Deallocate Org
  89845.     exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, Null, NULL, @Konto_Raspr, 'D', 'D', @DivizijaOd
  89846.     INSERT INTO #TmpPoOrgEd SELECT RbrFi, Opis, 'BezOrg', Null, Iznos FROM ##TmpTab
  89847.     WHERE Iznos <> 0
  89848.     DROP TABLE ##TmpTab        
  89849.     SELECT RbrFi, Opis, GrOrg, Sum(Iznos) Iznos
  89850.     From #TmpPoOrgEd
  89851.     Group By RbrFi, Opis, GrOrg
  89852.     Order By GrOrg, RbrFi
  89853.  
  89854.  
  89855. Go
  89856. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfitabelapoorged]'))
  89857. drop procedure [dbo].[sp_odfitabelapoorged]
  89858.  
  89859. Go
  89860. CREATE   PROCEDURE sp_OdFiTabelaPoOrgEd
  89861.     @FiID        int,
  89862.     @Datum_Od    smalldatetime, 
  89863.     @Datum_Do    smalldatetime,
  89864.     @Za_GrOrgEd    char(6) = NULL,
  89865.     @Konto_Raspr    char(10) = NULL,
  89866.     @DivizijaOd    char(1) = 'G'    -- G - od GStav       D - od GstAnDiv
  89867. AS
  89868.     CREATE TABLE #TmpPoOrgEd
  89869. (    RbrFi        int,
  89870.     Opis        nvarchar(200),
  89871.     Sifra_OE    smallint,
  89872.     Iznos        decimal(18,6)
  89873. )
  89874.     CREATE TABLE #PomOrg
  89875. (    Sifra_OE    smallint
  89876. )
  89877.     Declare @SSQL varchar(2000)
  89878.     Declare @OrgEd smallint
  89879.     SET @SSQL = 'SELECT Sifra_OE FROM OrgEd WHERE 1=1 '
  89880.     If @Za_GrOrgEd IS NOT NULL
  89881.         SET @SSQL = @SSQL + ' AND Sifra_OE IN (Select Sifra_Oe from SGrOrg G where Sif_GrOrg = ''' + @Za_GrOrgEd  +  ''') '
  89882.     INSERT INTO #PomOrg EXEC(@SSQL)
  89883.     Declare Org Cursor Fast_Forward For
  89884.         Select * From #PomOrg 
  89885.     Open Org
  89886.     Fetch Next From Org Into @OrgEd
  89887.     While @@Fetch_Status = 0
  89888.     Begin            
  89889.         --exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, @OrgEd, NULL, @Konto_Raspr, 'D'      07.04.2008 gk
  89890.         exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, @OrgEd, NULL, @Konto_Raspr, 'D', 'N', @DivizijaOd
  89891.         INSERT INTO #TmpPoOrgEd SELECT RbrFi, Opis, @OrgEd, Iznos FROM ##TmpTab
  89892.         WHERE Iznos <> 0
  89893.         DROP TABLE ##TmpTab        
  89894.         Fetch Next From Org Into @OrgEd
  89895.     End
  89896.     Close Org
  89897.     Deallocate Org
  89898.     SELECT * from #TmpPoOrgEd
  89899.  
  89900.  
  89901. Go
  89902. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfitabelapoper]'))
  89903. drop procedure [dbo].[sp_odfitabelapoper]
  89904.  
  89905. Go
  89906. CREATE       PROCEDURE sp_OdFiTabelaPoPer
  89907.     @FiID            int,
  89908.     @Datum_Od        smalldatetime, 
  89909.     @Datum_Do        smalldatetime,
  89910.     @Za_OrgEd        int, 
  89911.     @Za_GrOrgEd        char(6) = NULL,
  89912.     @Konto_Raspr        char(10) = NULL, 
  89913.     @Po_Meseci        char(1) = 'N',        -- D - Po Meseci,    P - So Preh. mesec + preth. sost.
  89914.     @So_MinatPer        char(1) = 'D', 
  89915.     @So_Kumul        char(1) = 'D',
  89916.     @DivizijaOd        char(1) = 'G'    -- G - od GStav       D - od GstAnDiv
  89917. AS
  89918.     CREATE TABLE #TmpPoPer
  89919. (    RbrFi        int,
  89920.     Opis        nvarchar(200),
  89921.     Mesec        varchar(20),
  89922.     Iznos        decimal(18,2)
  89923. )
  89924.     CREATE TABLE #PomPer
  89925. (    Mesec        varchar(20),
  89926.     Datum_Od    smalldatetime,
  89927.     Datum_do    smalldatetime
  89928. )
  89929.     Declare @Mesec    varchar(20)
  89930.     Declare @PomDatum    smalldatetime
  89931.     Declare @Dat1         smalldatetime
  89932.     Declare @Dat2        smalldatetime
  89933.     Declare @Kumul1        varchar(20)
  89934.     Declare @Kumul2        varchar(20)
  89935.     IF @Po_Meseci = 'D'
  89936.     Begin
  89937.         SET @PomDatum = @Datum_Od
  89938.         WHILE @PomDatum <= @Datum_Do
  89939.         Begin
  89940.             SET @Dat1 = dbo.fn_VratiDatumOd(Year(@PomDatum), Month(@PomDatum))
  89941.             INSERT INTO #PomPer 
  89942.             SELECT Cast(Year(@PomDatum) as char(4))+'/'+Cast(Month(@PomDatum) as char(2)),
  89943.                     @Dat1, DateAdd(Day, -1, DateAdd(Month, 1, @Dat1))
  89944.             SET @PomDatum = DateAdd(Month, 1, @PomDatum)
  89945.         End
  89946.     End
  89947.     Else IF @Po_Meseci = 'P'   -- dod G 11.01.2007
  89948.     Begin
  89949.         SET @PomDatum = @Datum_Do
  89950.         Declare @MesTek as varchar(20) 
  89951.         Declare @MesPreth as varchar(20) 
  89952.         Set @MesTek = Cast(Year(@PomDatum) as char(4))+'/'+Cast(Month(@PomDatum) as char(2))
  89953.         --Tekoven mesec
  89954.         INSERT INTO #PomPer 
  89955.         SELECT @MesTek, dbo.fn_VratiDatumOd(Year(@PomDatum), 1), @Datum_Do
  89956.         -- Prethoden mesec
  89957.         If Month(@PomDatum) > 1
  89958.         Begin
  89959.             Set @MesPreth=Cast(Year(@PomDatum) as char(4))+'/'+Cast((Month(@PomDatum)-1) as char(2))
  89960.             SET @Dat1 = dbo.fn_VratiDatumOd(Year(@PomDatum), (Month(@PomDatum)-1))   
  89961.             INSERT INTO #PomPer 
  89962.             SELECT @MesPreth, dbo.fn_VratiDatumOd(Year(@PomDatum), 1), DateAdd(Day, -1, DateAdd(Month, 1, @Dat1))
  89963.         End
  89964.         -- Od 01.01 do preth.period
  89965.         INSERT INTO #PomPer 
  89966.         SELECT ' Po~etno', dbo.fn_VratiDatumOd(Year(@PomDatum)-1, 1), dateadd(day, -1, dbo.fn_VratiDatumOd(Year(@PomDatum), 1))
  89967.     End
  89968.     Else
  89969.     Begin
  89970.         INSERT INTO #PomPer 
  89971.         SELECT Cast(Year(@Datum_Do) as char(4))+'/'+Cast(Month(@Datum_Do) as char(2)), @Datum_Od, @Datum_Do
  89972.         If @So_Kumul = 'D'
  89973.             SET @Kumul1='Kumul '+Cast(Year(@Datum_Do) as char(4))+'/'+Cast(Month(@Datum_Do) as char(2))
  89974.             INSERT INTO #PomPer 
  89975.             SELECT @Kumul1,    dbo.fn_VratiDatumOd(Year(@Datum_Od), 1), @Datum_Do
  89976.         If @So_MinatPer = 'D'
  89977.         Begin
  89978.             INSERT INTO #PomPer SELECT Cast(Year(@Datum_Do)-1 as char(4))+'/'+Cast(Month(@Datum_Do) as char(2)),
  89979.             DateAdd(Year, -1, @Datum_Od), DateAdd(Year, -1, @Datum_Do)
  89980.             If @So_Kumul = 'D'
  89981.                 SET @Kumul2='Kumul '+Cast(Year(@Datum_Do)-1 as char(4))+'/'+Cast(Month(@Datum_Do) as char(2))
  89982.                 INSERT INTO #PomPer 
  89983.                 SELECT @Kumul2, dbo.fn_VratiDatumOd(Year(@Datum_Od)-1, 1), DateAdd(Year, -1, @Datum_Do)
  89984.         End
  89985.     End
  89986.     Declare Per Cursor Fast_Forward For
  89987.         Select * From #PomPer 
  89988.     Open Per
  89989.     Fetch Next From Per Into @Mesec, @Dat1, @Dat2
  89990.     While @@Fetch_Status = 0
  89991.     Begin            
  89992.         -- exec sp_OdFiTabela @FiID, @Dat1, @Dat2, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D'    07.04.2008 gk
  89993.         exec sp_OdFiTabela @FiID, @Dat1, @Dat2, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D', 'N', @DivizijaOd
  89994.         INSERT INTO #TmpPoPer SELECT RbrFi, Opis, @Mesec, Round(Iznos,2) FROM ##TmpTab
  89995.         WHERE Iznos <> 0
  89996.         DROP TABLE ##TmpTab        
  89997.         Fetch Next From Per Into @Mesec, @Dat1, @Dat2
  89998.     End
  89999.     Close Per
  90000.     Deallocate Per
  90001. IF @So_Kumul='D' AND @So_MinatPer = 'D'
  90002. Begin    
  90003. CREATE TABLE #TmpProc
  90004. (    RbrFi        int,
  90005.     Opis        nvarchar(200),
  90006.     Mesec        varchar(20),
  90007.     Iznos        decimal(18,2))
  90008. INSERT INTO #TmpProc (RbrFi, Opis, Mesec, Iznos)
  90009. SELECT RbrFi, Opis, 'Zgol.%', Iznos FROM #TmpPoPer WHERE Mesec=@Kumul2 AND Iznos<>0
  90010. UPDATE #TmpProc SET Iznos = Round((P.Iznos / #TmpProc.Iznos -1) *100,2)
  90011. FROM #TmpPoPer P WHERE #TmpProc.RbrFi=P.RbrFi AND P.Mesec=@Kumul1 
  90012. UPDATE #TmpProc SET Iznos = -100
  90013. WHERE #TmpProc.RbrFi NOT IN (SELECT RbrFi FROM #TmpPoPer WHERE Mesec=@Kumul1)
  90014. INSERT INTO #TmpPoPer SELECT * FROM #TmpProc
  90015. End
  90016.     If @Po_Meseci = 'P'
  90017.     Begin    
  90018.         -- Procenti na otstapuvanje od prethodniot period i od prethodniot mesec
  90019.         CREATE TABLE #TmpOtstap
  90020.         (
  90021.          RbrFi        int,
  90022.          Opis        nvarchar(200),
  90023.          Mesec        varchar(20),
  90024.          Iznos        decimal(18,2)
  90025.         )
  90026.         -- Otstapuvanje procentualno na tekovniot mesec od pocetnata sostojba
  90027.         INSERT INTO #TmpOtstap (RbrFi, Opis, Mesec, Iznos)
  90028.         SELECT RbrFi, Opis, 'Od Po~etno', Iznos FROM #TmpPoPer WHERE Mesec=@MesTek AND Iznos<>0
  90029.         UPDATE #TmpOtstap SET Iznos = Round((#TmpOtstap.Iznos/P.Iznos) *100,2)
  90030.         FROM #TmpPoPer P WHERE #TmpOtstap.RbrFi=P.RbrFi AND P.Mesec=' Po~etno' 
  90031.         And #TmpOtstap.Mesec='Od Po~etno' 
  90032.         UPDATE #TmpOtstap SET Iznos = 0 
  90033.         Where RbrFi Not In (Select RbrFi From #TmpPoPer WHERE Mesec=' Po~etno')
  90034.         And #TmpOtstap.Mesec='Od Po~etno' 
  90035.         -- Otstapuvanje procentualno na tekovniot mesec od prethodniot mesec
  90036.         INSERT INTO #TmpOtstap (RbrFi, Opis, Mesec, Iznos)
  90037.         SELECT RbrFi, Opis, 'Od Preth.mes', Iznos FROM #TmpPoPer WHERE Mesec=@MesTek AND Iznos<>0
  90038.         UPDATE #TmpOtstap SET Iznos = Round((#TmpOtstap.Iznos/P.Iznos) *100,2)
  90039.         FROM #TmpPoPer P WHERE #TmpOtstap.RbrFi=P.RbrFi AND P.Mesec=@MesPreth
  90040.         And #TmpOtstap.Mesec='Od Preth.mes' 
  90041.         UPDATE #TmpOtstap SET Iznos = 0 
  90042.         Where RbrFi Not In (Select RbrFi From #TmpPoPer WHERE Mesec=@MesPreth)
  90043.         And #TmpOtstap.Mesec='Od Preth.mes' 
  90044.         INSERT INTO #TmpPoPer SELECT * FROM #TmpOtstap
  90045.     End
  90046.     -- G 14.02.2007
  90047.     --Select * from #TmpPoPer
  90048.     Select RbrFi, Opis, (Case When IsNumeric(Substring(Mesec,6,2))=1 And Substring(Mesec,5,1)='/' Then 
  90049.                     (Case When Substring(Mesec,6,2) < 10 Then Substring(Mesec,1,5)+'0'+Substring(Mesec,6,2) Else Mesec End) 
  90050.                 Else Mesec End) Mesec, Iznos 
  90051.     From #TmpPoPer
  90052.  
  90053.  
  90054. Go
  90055. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfitabelapopertx]'))
  90056. drop procedure [dbo].[sp_odfitabelapopertx]
  90057.  
  90058. Go
  90059. CREATE     PROCEDURE sp_OdFiTabelaPoPerTX
  90060.     @FiID            int,
  90061.     @Datum_Od        smalldatetime, 
  90062.     @Datum_Do        smalldatetime,
  90063.     @Za_OrgEd        int, 
  90064.     @Za_GrOrgEd        char(6) = NULL,
  90065.     @Konto_Raspr        char(10) = NULL,
  90066.     @DivizijaOd        char(1) = 'G'    -- G - od GStav       D - od GstAnDiv
  90067. AS
  90068.     CREATE TABLE #TmpStavki
  90069. (    RbrFi        int,
  90070.     Opis        nvarchar(200)
  90071. )
  90072.     CREATE TABLE #TmpPoPerML
  90073. (    RbrFi        int,
  90074.     IznosML    decimal(18,6)
  90075. )
  90076.     CREATE TABLE #TmpPoPerMG
  90077. (    RbrFi        int,
  90078.     IznosMG    decimal(18,6)
  90079. )
  90080.     CREATE TABLE #TmpPoPerKL
  90081. (    RbrFi        int,
  90082.     IznosKL    decimal(18,6)
  90083. )
  90084.     CREATE TABLE #TmpPoPerKG
  90085. (    RbrFi        int,
  90086.     IznosKG    decimal(18,6)
  90087. )
  90088.     CREATE TABLE #PomPer
  90089. (    Mesec        varchar(20),
  90090.     Datum_Od    smalldatetime,
  90091.     Datum_do    smalldatetime
  90092. )
  90093.     INSERT INTO #TmpStavki SELECT RbrFi, Opis FROM FiStavki WHERE FiId = @FiID
  90094.     Declare @Mesec    varchar(20)
  90095.     Declare @PomDatum    smalldatetime
  90096.     Declare @Dat1         smalldatetime
  90097.     Declare @Dat2        smalldatetime
  90098.     -- exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D'     07.04.2008 gk
  90099.     exec sp_OdFiTabela @FiID, @Datum_Od, @Datum_Do, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D', 'N', @DivizijaOd
  90100.     INSERT INTO #TmpPoPerMG SELECT RbrFi, Iznos FROM ##TmpTab WHERE Iznos <> 0
  90101.     DROP TABLE ##TmpTab        
  90102.     SET @Dat1 = dbo.fn_VratiDatumOd(Year(@Datum_Od), 1)
  90103.     -- exec sp_OdFiTabela @FiID, @Dat1, @Datum_Do, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D'     07.04.2008 gk
  90104.     exec sp_OdFiTabela @FiID, @Dat1, @Datum_Do, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D', 'N', @DivizijaOd
  90105.     INSERT INTO #TmpPoPerKG SELECT RbrFi, Iznos FROM ##TmpTab WHERE Iznos <> 0
  90106.     DROP TABLE ##TmpTab        
  90107.     SET @Dat1 = DateAdd(Year, -1, @Datum_Od)
  90108.     SET @Dat2 = DateAdd(Year, -1, @Datum_Do)
  90109.     --exec sp_OdFiTabela @FiID, @Dat1, @Dat2, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D'     07.04.2008 gk
  90110.     exec sp_OdFiTabela @FiID, @Dat1, @Dat2, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D', 'N', @DivizijaOd
  90111.     INSERT INTO #TmpPoPerML SELECT RbrFi, Iznos FROM ##TmpTab WHERE Iznos <> 0
  90112.     DROP TABLE ##TmpTab        
  90113.     SET @Dat1 = dbo.fn_VratiDatumOd(Year(@Datum_Od)-1, 1)
  90114.     SET @Dat2 = DateAdd(Year, -1, @Datum_Do)
  90115.     -- exec sp_OdFiTabela @FiID, @Dat1, @Dat2, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D'     07.04.2008 gk
  90116.     exec sp_OdFiTabela @FiID, @Dat1, @Dat2, @Za_OrgEd, @Za_GrOrgEd, @Konto_Raspr, 'D', 'N', @DivizijaOd
  90117.     INSERT INTO #TmpPoPerKL SELECT RbrFi, Iznos FROM ##TmpTab WHERE Iznos <> 0
  90118.     DROP TABLE ##TmpTab        
  90119.     SELECT S.*, ML.IznosML, MG.IznosMG,KL.IznosKL,KG.IznosKG from #TmpStavki S
  90120.     LEFT OUTER JOIN #TmpPoPerML ML ON ML.RbrFi = s.RbrFi
  90121.     LEFT OUTER JOIN #TmpPoPerMG MG ON MG.RbrFi = s.RbrFi
  90122.     LEFT OUTER JOIN #TmpPoPerKL KL ON KL.RbrFi = s.RbrFi
  90123.     LEFT OUTER JOIN #TmpPoPerKG KG ON KG.RbrFi = s.RbrFi
  90124.  
  90125.  
  90126. Go
  90127. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odfizbir]'))
  90128. drop procedure [dbo].[sp_odfizbir]
  90129.  
  90130. Go
  90131.  
  90132. CREATE      PROCEDURE sp_OdFiZbir
  90133.     @FiID        int,
  90134.     @RbrFi        smallint,
  90135.     @Iznos        decimal(18,6) OUTPUT,
  90136.     @Razresen    char(1) OUTPUT
  90137. AS
  90138.     Declare @SSQL     varchar(1000)
  90139.     Declare @Znak        char(1)
  90140.     Declare @OdRbrFi    int
  90141.     Declare @IznOdStav    decimal(18,6)
  90142.     Declare @RazrSt    char(1)
  90143.     SET @Iznos = 0
  90144.     SET @Razresen='D'
  90145.     Declare Tabela2 Cursor Fast_Forward For
  90146.         Select  Znak  , OdRbrFi
  90147.         From FiZbir WHERE FiId = @FiId AND RbrFi = @RbrFi
  90148.     Open Tabela2
  90149.     Fetch Next From Tabela2 Into @Znak, @OdRbrFi
  90150.     While @@Fetch_Status = 0
  90151.     Begin            
  90152.         Select @IznOdStav = Iznos, @RazrSt = Razresen From ##TmpTab Where RbrFi = @OdRbrFi 
  90153.         IF @RazrSt = 'N'
  90154.         Begin
  90155.             SET @Razresen='N'
  90156.             SET @Iznos=0
  90157.             Close Tabela2
  90158.             Deallocate Tabela2
  90159.             RETURN
  90160.         End        
  90161.         If @Znak = '+'
  90162.             Set @Iznos = @Iznos + @IznOdStav
  90163.         If @Znak = '-'
  90164.             Set @Iznos = @Iznos - @IznOdStav
  90165.         If @Znak = '/' AND @IznOdStav <> 0 
  90166.             Set @Iznos = @Iznos / @IznOdStav
  90167.         If @Znak = '*'
  90168.             Set @Iznos = @Iznos * @IznOdStav
  90169.         If @Znak = '%' AND @IznOdStav <> 0             --Set @Iznos = @Iznos * 100 / @IznOdStav  25.11.09
  90170.             Set @Iznos = @Iznos * 100 / @IznOdStav
  90171.         Fetch Next From Tabela2 Into  @Znak, @OdRbrFi 
  90172.     End
  90173.     Close Tabela2
  90174.     Deallocate Tabela2
  90175.  
  90176.  
  90177.  
  90178. Go
  90179. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odjava]'))
  90180. drop procedure [dbo].[sp_odjava]
  90181.  
  90182. Go
  90183.  
  90184. CREATE                            PROCEDURE sp_Odjava
  90185.     @Sifra_OE smallint = NULL,
  90186.     @KoiOE Varchar(6) = NULL,
  90187.     @Sifra_Art_Od varchar(20) = NULL,
  90188.     @Sifra_Art_Do varchar(20) = NULL,
  90189. --    @Datum_Nal_Od Smalldatetime = NULL,        -- nema potreba
  90190. --    @Datum_Nal_Do Smalldatetime = NULL,        -- nema potreba
  90191.     @Datum_Dok_Od Smalldatetime = NULL,        
  90192. --    @Datum_Dok_Do Smalldatetime = NULL,        -- nema da treba
  90193.     @SoDDV char(1) = 'D',         -- D/N        -- predlagam sekogass da e D
  90194.     @Sifra_Kup varchar(8) = NULL,
  90195.     @Sifra_Gr varchar(300) = NULL,
  90196.     @Sifra_Podg varchar(300) = NULL,
  90197.     @Sifra_Drg    smallint = Null,
  90198.     @Lokacija varchar(10) = NULL,
  90199.     @Sifra_Brand    smallint = NULL,
  90200.     @Aktiven    char(1) = Null,            -- D - Aktivni     N - Neaktivni
  90201. --    @KontrSer    varchar(25) = Null,        -- nema potreba
  90202. --    @PrikKontrSer    char(1) = 'N',            -- nema potreba
  90203. --    @SoRazlCeni    char(1) = 'D',                -- so razliki vo ceni    -- Ne treba
  90204.     @BezPromOdPren char(1) = 'N',
  90205.     @SiteArt    char(1) = 'N',
  90206.     @SoDozvArt    char(1) = 'N',
  90207.     @TipDok    varchar(300) = Null,
  90208.     @DobavOd    char(1) = 'K',             -- K - od Katart,     S - od Stavr
  90209.     @Sifra_Drg1    smallint = Null,
  90210. --    @KojaCena    char(1) = Null,            -- da fiksirame na tekovna cena od soart        M - MagCena,   N - Nabavna od Katart,   P - Prosecna nabavna,  D - DokCena (Nabavna na vlez, Prodazna na izlez)  
  90211.     @KoiArt        char(1) = Null,            -- I - artikli so izlez vo tekovniot period,      N - artikli bez prodazba vo tek.period,    P - artikli so promet vo tekovniot period
  90212.     @DozvArt    char(1) = Null,
  90213.     @Drugo1        smallint= null,
  90214.     @Drugo2        smallint= null,
  90215.     @Drugo3        smallint= null,
  90216.     @Drugo4        smallint= null,
  90217.     @Drugo5        smallint= null,
  90218.     @Drugo6        smallint= null,
  90219.     @Drugo7        smallint= null,
  90220.     @BezPromOdPopis    char(1) = 'N'      -- bez promet od popis (tip dok 991,992)
  90221.  
  90222. AS
  90223.     Declare @SSQL As Varchar(4000)
  90224.     Declare @SSQLUsl As Varchar(4000)
  90225.     Declare @SSQLUslArt As Varchar(4000)
  90226.  
  90227.     Set @SSQL = ' ' 
  90228.     Set @SSQLUsl = ' '
  90229.     Set @SSQLUslArt = ' '
  90230.  
  90231.     CREATE TABLE #Promet
  90232.     (
  90233.       Sifra_OE Smallint,
  90234.       Sifra_Art Varchar(20),
  90235.       TVlez Numeric(18, 4),
  90236.       TIzlez Numeric(18, 4),
  90237.       TVlezBezPren Numeric(18, 4),
  90238.       TIzlezBezPren Numeric(18, 4),
  90239.       Sostojba decimal(18,6),
  90240.       Cena    decimal(18,6)
  90241.     )
  90242.  
  90243.     Set Nocount On
  90244.  
  90245. ------------------------------------------------------------------------------------------------- U S L O V -------------------------------------------------------------------------------------------------------------
  90246.     If @Sifra_OE Is Not Null
  90247.         SET @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  90248.     If @KoiOE Is Not Null
  90249.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  90250.     If @TipDok Is Not Null
  90251.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok In (' + @TipDok + ') '
  90252.     If @Sifra_Kup Is NOT NULL
  90253.         If @DobavOd = 'S'
  90254.             SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Art In (Select Distinct S.Sifra_Art From Dokr D Inner Join Stavr S On S.DokrID = D.DokrID 
  90255.                                     Where D.VlIzl=''V'' And D.Sifra_Za = ''2'' And D.Sifra_Kup = ''' + @Sifra_Kup + ''') '
  90256.         Else
  90257.             SET @SSQLUslArt = @SSQLUslArt + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  90258.     If @Sifra_Art_Od Is NOT Null
  90259.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  90260.     If @Sifra_Art_Do Is NOT Null
  90261.          SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  90262.     If @Sifra_Gr IS NOT NULL
  90263.         SET @SSQLUslArt = @SSQLUslArt + ' AND G.Sifra_Gr In ('+@Sifra_Gr+') '
  90264.     If @Sifra_Podg IS NOT NULL
  90265.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Podg In ('+@Sifra_Podg+') '
  90266.     If @Sifra_Brand Is NOT NULL
  90267.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Drg = '  + Cast(@Sifra_Brand as varchar(6)) + ' '
  90268.     If @Lokacija IS NOT NULL
  90269.         SET @SSQLUslArt = @SSQLUslArt + ' AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  90270.     If @Sifra_Drg Is Not Null
  90271.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(10)) + ' '
  90272.     If @Sifra_Drg1 Is Not Null
  90273.         SET @SSQLUslArt = @SSQLUslArt + ' AND B.Sifra_Drg1=' + Cast(@Sifra_Drg1 As Varchar(10)) + ' '
  90274.     If @Aktiven = 'D'
  90275.         SET @SSQLUslArt = @SSQLUslArt + ' AND (K.Aktiven <> ''N'' Or K.Aktiven Is Null) '
  90276.     Else If @Aktiven = 'N'
  90277.         SET @SSQLUslArt = @SSQLUslArt + ' AND (K.Aktiven = ''N'') '
  90278.     If @DozvArt = 'D' And @Sifra_Oe Is Not Null
  90279.         SET @SSQLUslArt = @SSQLUslArt + ' AND (OZ.Dozvoleno <> ''N'' Or OZ.Dozvoleno Is Null) ' 
  90280.     Else If @DozvArt = 'N' And @Sifra_Oe Is Not Null
  90281.         SET @SSQLUslArt = @SSQLUslArt + ' AND (OZ.Dozvoleno = ''N'') '
  90282. --16.09.2010
  90283.        If @Drugo1 Is NOT Null
  90284.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  90285.        If @Drugo2 Is NOT Null
  90286.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  90287.        If @Drugo3 Is NOT Null
  90288.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  90289.        If @Drugo4 Is NOT Null
  90290.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  90291.        If @Drugo5 Is NOT Null
  90292.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  90293.        If @Drugo6 Is NOT Null
  90294.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  90295.        If @Drugo7 Is NOT Null
  90296.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  90297. -- 
  90298.  
  90299. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  90300.     -- Tekoven Promet
  90301. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  90302.     SET @SSQL = 'SELECT S.Sifra_OE, S.Sifra_Art, 
  90303.                 Vlez = Sum(Case S.VlIzl When ''V'' Then S.Kolic Else 0 End),
  90304.                 Izlez = Sum(Case S.VlIzl When ''I'' Then S.Kolic Else 0 End), '
  90305.     If @BezPromOdPren = 'D' And (@BezPromOdPopis Is Null Or @BezPromOdPopis <> 'D')
  90306.         Set @SSQL = @SSQL + ' VlezBezPren = Sum(Case S.VlIzl When ''V'' Then (Case When S.ImaDodatna = ''D'' Then 0 Else S.Kolic End) Else 0 End),
  90307.                       IzlezBezPren = Sum(Case S.VlIzl When ''I'' Then (Case When S.ImaDodatna = ''D'' Then 0 Else S.Kolic End) Else 0 End), '
  90308.     Else If @BezPromOdPren = 'D' And @BezPromOdPopis = 'D'
  90309.         Set @SSQL = @SSQL + ' VlezBezPren = Sum(Case When S.VlIzl=''V'' And S.Sifra_Dok Not In (991,992) Then (Case When S.ImaDodatna = ''P'' Then 0 Else S.Kolic End) Else 0 End),
  90310.                       IzlezBezPren = Sum(Case When S.VlIzl=''I'' And S.Sifra_Dok Not In (991,992) Then (Case When S.ImaDodatna = ''D'' Then 0 Else S.Kolic End) Else 0 End), '
  90311.     Else If (@BezPromOdPren Is Null Or @BezPromOdPren<>'D') And @BezPromOdPopis = 'D'
  90312.         Set @SSQL = @SSQL + ' VlezBezPren = Sum(Case When S.VlIzl=''V'' And S.Sifra_Dok Not In (991,992) Then S.Kolic Else 0 End),
  90313.                       IzlezBezPren = Sum(Case When S.VlIzl=''I'' And S.Sifra_Dok Not In (991,992) Then S.Kolic Else 0 End), '
  90314.     Else
  90315.         Set @SSQL = @SSQL + ' 0 as TVlezBezPren, 0 as TIzlezBezPren, '
  90316.     Set @SSQL = @SSQL + ' 0 as Sostojba, 0 as  Cena 
  90317.                   FROM Stavr S
  90318.                   INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art AND K.SMatUsl=''M'' '
  90319.     If @Sifra_Gr IS NOT NULL 
  90320.                  Set @SSQL=@SSQL+' INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg 
  90321.                            INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  90322.     If @Sifra_Drg1 Is Not Null
  90323.                  Set @SSQL=@SSQL+' INNER JOIN DrgPodel B ON B.Sifra_Drg=K.Sifra_Drg '
  90324.     If @DozvArt In ('D','N') And @Sifra_Oe Is Not Null
  90325.         Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = S.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' ' 
  90326.     Set @SSQL = @SSQL + ' Where 1=1 '
  90327.  
  90328.     If @Datum_Dok_Od Is NOT Null
  90329.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  90330.  
  90331. --    If @Datum_Dok_Do Is NOT Null
  90332.  --        SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  90333. --print @SSQL+@SSQLUsl
  90334.  
  90335.     Set @SSQL = @SSQL+@SSQLUsl+@SSQLUslArt
  90336.  
  90337.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Art '
  90338. print @SSQL
  90339.     INSERT #Promet EXEC(@SSQL)
  90340.  
  90341.     ----------------- Artiklite koi imaat prethoden promet, a nemaat promet vo periodot 
  90342.     Set @SSQL = ' SELECT Distinct S.Sifra_Oe, S.Sifra_Art, 0, 0, 0, 0, 0, 0
  90343.             FROM Stavr S
  90344.             INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art AND K.SMatUsl=''M'' '
  90345.     If @Sifra_Gr IS NOT NULL 
  90346.                  Set @SSQL=@SSQL+' INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg 
  90347.                            INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  90348.     If @Sifra_Drg1 Is Not Null
  90349.                  Set @SSQL=@SSQL+' INNER JOIN DrgPodel B ON B.Sifra_Drg=K.Sifra_Drg '
  90350.     If @DozvArt In ('D','N') And @Sifra_Oe Is Not Null
  90351.         Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = S.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' ' 
  90352.     Set @SSQL = @SSQL + ' Where Cast(S.Sifra_Oe as char(3)) + S.Sifra_Art Not In (Select Cast(Sifra_Oe as char(3)) + Sifra_Art From #Promet) '
  90353.  
  90354.     Set @SSQL = @SSQL+@SSQLUsl+@SSQLUslArt 
  90355.  
  90356.     INSERT #Promet EXEC(@SSQL)
  90357.     ----------------------------------------------------------------------------------------------------------------------------------
  90358.  
  90359. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  90360.  
  90361.     Update #Promet 
  90362.     Set Cena = (Case When S.DanCena = 'D' Then S.Cena Else S.Cena*(1+S.POsn/100) End),
  90363.           Sostojba  = (S.Vlez-S.Izlez)
  90364.     From Soart S
  90365.     Where S.Sifra_Oe = #Promet.Sifra_Oe And S.Sifra_Art = #Promet.Sifra_Art
  90366.  
  90367.  
  90368.     Set @SSQL =  ' SELECT P.Sifra_OE, O.ImeOrg, P.Sifra_Art, 
  90369.             K.ImeArt, K.EdMera, K.Sifra_Tar, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, 
  90370.             K.Tezina, K.ImaKomerc, K.ImaBroevi, K.BTezina, K.Kto, Dob.ImeKup ImeDobav, K.Nabavna, 
  90371.             (P.Sostojba - (P.TVlez - P.TIzlez)) PrethSost,
  90372.             ((P.Sostojba - (P.TVlez - P.TIzlez)) * P.Cena) PrethVredn,
  90373.             P.Sostojba TekSost, 
  90374.             (P.Sostojba * P.Cena) TekVredn, '
  90375.     If @BezPromOdPren = 'D' Or @BezPromOdPopis = 'D'
  90376.         Set @SSQL = @SSQL + ' P.TVlezBezPren TVlez, (P.TVlezBezPren*P.Cena) TekVrVlez,
  90377.                       P.TIzlezBezPren TIzlez, (P.TIzlezBezPren*P.Cena) TekVrIzlez '
  90378.     Else
  90379.         Set @SSQL = @SSQL + ' P.TVlez, (P.TVlez*P.Cena) TekVrVlez,
  90380.                       P.TIzlez, (P.TIzlez*P.Cena) TekVrIzlez '
  90381.     If @SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null
  90382.         Set @SSQL = @SSQL + ', OZ.Dozvoleno '
  90383.     Else 
  90384.         Set @SSQL = @SSQL + ', Null as Dozvoleno '
  90385.     Set @SSQL = @SSQL + ' FROM #Promet P
  90386.                 Inner Join Orged O On O.Sifra_Oe=P.Sifra_Oe
  90387.                 Inner Join Katart K On P.Sifra_Art=K.Sifra_Art
  90388.                 Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg 
  90389.                 Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr
  90390.                 Left Outer Join Komint Dob On Dob.Sifra_Kup=K.Kto '
  90391.     If @SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null
  90392.         Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = P.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  90393.     Set @SSQL = @SSQL + ' Where 1=1 '
  90394.     If @KoiArt = 'P'
  90395.         Set @SSQL = @SSQL + ' And (P.TVlez > 0 Or P.TIzlez > 0) '
  90396.     Else If @KoiArt = 'I'
  90397.         Set @SSQL = @SSQL + ' And P.TIzlez > 0  '
  90398.     Else If @KoiArt = 'N'
  90399.         Set @SSQL = @SSQL + ' And P.TIzlez <= 0 '
  90400.  
  90401.     If @SiteArt = 'D' And @KoiArt Is Null
  90402.     Begin
  90403.         Set @SSQL = @SSQL + ' Union
  90404.                 Select Null as Sifra_Oe, Null ImeOrg, K.Sifra_Art, K.ImeArt, K.EdMera, K.Sifra_Tar, 
  90405.                     K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, K.Tezina, K.ImaKomerc, K.ImaBroevi, K.BTezina, K.Kto, 
  90406.                     Dob.ImeKup ImeDobav, K.Nabavna, 
  90407.                     0, 0, 0, 0, 0, 0, 0, 0 '
  90408.         If @SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null
  90409.             Set @SSQL = @SSQL + ', OZ.Dozvoleno '
  90410.         Else 
  90411.             Set @SSQL = @SSQL + ', Null as Dozvoleno '
  90412.         Set @SSQL = @SSQL + ' From Katart K
  90413.                     Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg 
  90414.                     Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr 
  90415.                     Left Outer Join Komint Dob On Dob.Sifra_Kup=K.Kto '
  90416.         If @Sifra_Drg1 Is Not Null
  90417.                      Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON B.Sifra_Drg=K.Sifra_Drg '
  90418.         If (@SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null) Or (@DozvArt In ('D','N') And @Sifra_Oe Is Not Null And @KoiOe Is Null)
  90419.             Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = K.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  90420.         Set @SSQL = @SSQL + ' Where K.Sifra_Art Not In (Select Distinct Sifra_Art From #Promet) '
  90421.  
  90422.         Set @SSQL = @SSQL + @SSQLUslArt
  90423.     End 
  90424.     -------------------------------------------
  90425.     Set @SSQL = @SSQL + 'Order By P.Sifra_Art, P.Sifra_OE '
  90426.     print @SSQL
  90427.     Exec(@SSQL)
  90428.  
  90429. Go
  90430. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odjava_view]'))
  90431. drop procedure [dbo].[sp_odjava_view]
  90432.  
  90433. Go
  90434.  
  90435. CREATE                            PROCEDURE sp_Odjava_View
  90436.     @Sifra_OE smallint = NULL,
  90437.     @KoiOE Varchar(6) = NULL,
  90438.     @Sifra_Art_Od varchar(20) = NULL,
  90439.     @Sifra_Art_Do varchar(20) = NULL,
  90440. --    @Datum_Nal_Od Smalldatetime = NULL,        -- nema potreba
  90441. --    @Datum_Nal_Do Smalldatetime = NULL,        -- nema potreba
  90442.     @Datum_Dok_Od Smalldatetime = NULL,        
  90443. --    @Datum_Dok_Do Smalldatetime = NULL,        -- nema da treba
  90444.     @SoDDV char(1) = 'D',         -- D/N        -- predlagam sekogass da e D
  90445.     @Sifra_Kup varchar(8) = NULL,
  90446.     @Sifra_Gr varchar(300) = NULL,
  90447.     @Sifra_Podg varchar(300) = NULL,
  90448.     @Sifra_Drg    smallint = Null,
  90449.     @Lokacija varchar(10) = NULL,
  90450.     @Sifra_Brand    smallint = NULL,
  90451.     @Aktiven    char(1) = Null,            -- D - Aktivni     N - Neaktivni
  90452. --    @KontrSer    varchar(25) = Null,        -- nema potreba
  90453. --    @PrikKontrSer    char(1) = 'N',            -- nema potreba
  90454. --    @SoRazlCeni    char(1) = 'D',                -- so razliki vo ceni    -- Ne treba
  90455.     @BezPromOdPren char(1) = 'N',
  90456.     @SiteArt    char(1) = 'N',
  90457.     @SoDozvArt    char(1) = 'N',
  90458.     @TipDok    varchar(300) = Null,
  90459.     @DobavOd    char(1) = 'K',             -- K - od Katart,     S - od Stavr
  90460.     @Sifra_Drg1    smallint = Null,
  90461. --    @KojaCena    char(1) = Null,            -- da fiksirame na tekovna cena od soart        M - MagCena,   N - Nabavna od Katart,   P - Prosecna nabavna,  D - DokCena (Nabavna na vlez, Prodazna na izlez)  
  90462.     @KoiArt        char(1) = Null,            -- I - artikli so izlez vo tekovniot period,      N - artikli bez prodazba vo tek.period,    P - artikli so promet vo tekovniot period
  90463.     @Drugo1        smallint= null,
  90464.     @Drugo2        smallint= null,
  90465.     @Drugo3        smallint= null,
  90466.     @Drugo4        smallint= null,
  90467.     @Drugo5        smallint= null,
  90468.     @Drugo6        smallint= null,
  90469.     @Drugo7        smallint= null,
  90470.     @BezPromOdPopis    char(1) = 'N',      -- bez promet od popis (tip dok 991,992)
  90471.     @DozvArt    char(1) = Null
  90472.  
  90473.  
  90474. AS
  90475.     Declare @SSQL As Varchar(4000)
  90476.     Declare @SSQLUsl As Varchar(4000)
  90477.     Declare @SSQLUslArt As Varchar(4000)
  90478.  
  90479.     Set @SSQL = ' ' 
  90480.     Set @SSQLUsl = ' '
  90481.     Set @SSQLUslArt = ' '
  90482.  
  90483.     CREATE TABLE #Promet
  90484.     (
  90485.       Sifra_OE Smallint,
  90486.       Sifra_Art Varchar(20),
  90487.       TVlez Numeric(18, 4),
  90488.       TIzlez Numeric(18, 4),
  90489.       TVlezBezPren Numeric(18, 4),
  90490.       TIzlezBezPren Numeric(18, 4),
  90491.       Sostojba decimal(18,6),
  90492.       Cena    decimal(18,6)
  90493.     )
  90494.  
  90495.     Set Nocount On
  90496.  
  90497. ------------------------------------------------------------------------------------------------- U S L O V -------------------------------------------------------------------------------------------------------------
  90498.     If @Sifra_OE Is Not Null
  90499.         SET @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  90500.     If @KoiOE Is Not Null
  90501.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE + ''') '
  90502.     If @TipDok Is Not Null
  90503.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok In (' + @TipDok + ') '
  90504.     If @Sifra_Kup Is NOT NULL
  90505.         If @DobavOd = 'S'
  90506.             SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Art In (Select Distinct S.Sifra_Art From Dokr D Inner Join Stavr S On S.DokrID = D.DokrID 
  90507.                                     Where D.VlIzl=''V'' And D.Sifra_Za = ''2'' And D.Sifra_Kup = ''' + @Sifra_Kup + ''') '
  90508.         Else
  90509.             SET @SSQLUslArt = @SSQLUslArt + ' AND K.Kto = '''  + @Sifra_Kup + ''' '
  90510.     If @Sifra_Art_Od Is NOT Null
  90511.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Art>=''' + Cast(@Sifra_Art_Od As Varchar(35)) + ''' '
  90512.     If @Sifra_Art_Do Is NOT Null
  90513.          SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Art<=''' + Cast(@Sifra_Art_Do As Varchar(35)) + ''' '
  90514.     If @Sifra_Gr IS NOT NULL
  90515.         SET @SSQLUslArt = @SSQLUslArt + ' AND G.Sifra_Gr In ('+@Sifra_Gr+') '
  90516.     If @Sifra_Podg IS NOT NULL
  90517.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Podg In ('+@Sifra_Podg+') '
  90518.     If @Sifra_Brand Is NOT NULL
  90519.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Drg = '  + Cast(@Sifra_Brand as varchar(6)) + ' '
  90520.     If @Lokacija IS NOT NULL
  90521.         SET @SSQLUslArt = @SSQLUslArt + ' AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  90522.     If @Sifra_Drg Is Not Null
  90523.         SET @SSQLUslArt = @SSQLUslArt + ' AND K.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(10)) + ' '
  90524.     If @Sifra_Drg1 Is Not Null
  90525.         SET @SSQLUslArt = @SSQLUslArt + ' AND B.Sifra_Drg1=' + Cast(@Sifra_Drg1 As Varchar(10)) + ' '
  90526.     If @Aktiven = 'D'
  90527.         SET @SSQLUslArt = @SSQLUslArt + ' AND (K.Aktiven <> ''N'' Or K.Aktiven Is Null) '
  90528.     Else If @Aktiven = 'N'
  90529.         SET @SSQLUslArt = @SSQLUslArt + ' AND (K.Aktiven = ''N'') '
  90530.     If @DozvArt = 'D' And @Sifra_Oe Is Not Null
  90531.         SET @SSQLUslArt = @SSQLUslArt + ' AND (OZ.Dozvoleno <> ''N'' Or OZ.Dozvoleno Is Null) ' 
  90532.     Else If @DozvArt = 'N' And @Sifra_Oe Is Not Null
  90533.         SET @SSQLUslArt = @SSQLUslArt + ' AND (OZ.Dozvoleno = ''N'') '
  90534.  
  90535. --16.09.2010
  90536.        If @Drugo1 Is NOT Null
  90537.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  90538.        If @Drugo2 Is NOT Null
  90539.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  90540.        If @Drugo3 Is NOT Null
  90541.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  90542.        If @Drugo4 Is NOT Null
  90543.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  90544.        If @Drugo5 Is NOT Null
  90545.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  90546.        If @Drugo6 Is NOT Null
  90547.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  90548.        If @Drugo7 Is NOT Null
  90549.               SET @SSQLUsl = @SSQLUsl + 'AND K.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  90550. --
  90551. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  90552.     -- Tekoven Promet
  90553. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  90554.     SET @SSQL = 'SELECT S.Sifra_OE, S.Sifra_Art, 
  90555.                 Vlez = Sum(Case S.VlIzl When ''V'' Then S.Kolic Else 0 End),
  90556.                 Izlez = Sum(Case S.VlIzl When ''I'' Then S.Kolic Else 0 End), '
  90557.     If @BezPromOdPren = 'D'
  90558.         Set @SSQL = @SSQL + ' VlezBezPren = Sum(Case S.VlIzl When ''V'' Then (Case When S.ImaDodatna = ''D'' Then 0 Else S.Kolic End) Else 0 End),
  90559.                       IzlezBezPren = Sum(Case S.VlIzl When ''I'' Then (Case When S.ImaDodatna = ''D'' Then 0 Else S.Kolic End) Else 0 End), '
  90560.     Else If @BezPromOdPren = 'D' And @BezPromOdPopis = 'D'
  90561.         Set @SSQL = @SSQL + ' VlezBezPren = Sum(Case When S.VlIzl=''V'' And S.Sifra_Dok Not In (991,992) Then (Case When S.ImaDodatna = ''P'' Then 0 Else S.Kolic End) Else 0 End),
  90562.                       IzlezBezPren = Sum(Case When S.VlIzl=''I'' And S.Sifra_Dok Not In (991,992) Then (Case When S.ImaDodatna = ''D'' Then 0 Else S.Kolic End) Else 0 End), '
  90563.     Else If (@BezPromOdPren Is Null Or @BezPromOdPren<>'D') And @BezPromOdPopis = 'D'
  90564.         Set @SSQL = @SSQL + ' VlezBezPren = Sum(Case When S.VlIzl=''V'' And S.Sifra_Dok Not In (991,992) Then S.Kolic Else 0 End),
  90565.                       IzlezBezPren = Sum(Case When S.VlIzl=''I'' And S.Sifra_Dok Not In (991,992) Then S.Kolic Else 0 End), '
  90566.     Else
  90567.         Set @SSQL = @SSQL + ' 0 as TVlezBezPren, 0 as TIzlezBezPren, '
  90568.     Set @SSQL = @SSQL + ' 0 as Sostojba, 0 as  Cena 
  90569.                   FROM Stavr S
  90570.                   INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art AND K.SMatUsl=''M'' '
  90571.     If @Sifra_Gr IS NOT NULL 
  90572.                  Set @SSQL=@SSQL+' INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg 
  90573.                            INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  90574.     If @Sifra_Drg1 Is Not Null
  90575.                  Set @SSQL=@SSQL+' INNER JOIN DrgPodel B ON B.Sifra_Drg=K.Sifra_Drg '
  90576.     If @DozvArt In ('D','N') And @Sifra_Oe Is Not Null
  90577.         Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = S.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' ' 
  90578.     Set @SSQL = @SSQL + ' Where 1=1 '
  90579.  
  90580.     If @Datum_Dok_Od Is NOT Null
  90581.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  90582.  
  90583. --    If @Datum_Dok_Do Is NOT Null
  90584.  --        SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  90585. --print @SSQL+@SSQLUsl
  90586.  
  90587.     Set @SSQL = @SSQL+@SSQLUsl+@SSQLUslArt
  90588.  
  90589.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Art '
  90590. print @SSQL
  90591.     INSERT #Promet EXEC(@SSQL)
  90592.  
  90593.     ----------------- Artiklite koi imaat prethoden promet, a nemaat promet vo periodot 
  90594.     Set @SSQL = ' SELECT Distinct S.Sifra_Oe, S.Sifra_Art, 0, 0, 0, 0, 0, 0
  90595.             FROM Stavr S
  90596.             INNER JOIN Katart K ON S.Sifra_Art = K.Sifra_Art AND K.SMatUsl=''M'' '
  90597.     If @Sifra_Gr IS NOT NULL 
  90598.                  Set @SSQL=@SSQL+' INNER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg 
  90599.                            INNER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr '
  90600.     If @Sifra_Drg1 Is Not Null
  90601.                  Set @SSQL=@SSQL+' INNER JOIN DrgPodel B ON B.Sifra_Drg=K.Sifra_Drg '
  90602.     If @DozvArt In ('D','N') And @Sifra_Oe Is Not Null
  90603.         Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = S.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(5)) + ' ' 
  90604.     Set @SSQL = @SSQL + ' Where Cast(Sifra_Oe as char(3)) + S.Sifra_Art Not In (Select Cast(Sifra_Oe as char(3)) + Sifra_Art From #Promet) '
  90605.  
  90606.     Set @SSQL = @SSQL+@SSQLUsl+@SSQLUslArt 
  90607.  
  90608.     INSERT #Promet EXEC(@SSQL)
  90609.     ----------------------------------------------------------------------------------------------------------------------------------
  90610.  
  90611. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  90612.  
  90613.     Update #Promet 
  90614.     Set Cena = (Case When S.DanCena = 'D' Then S.Cena Else S.Cena*(1+S.POsn/100) End),
  90615.           Sostojba  = (S.Vlez-S.Izlez)
  90616.     From Soart S
  90617.     Where S.Sifra_Oe = #Promet.Sifra_Oe And S.Sifra_Art = #Promet.Sifra_Art
  90618.  
  90619.  
  90620.     Set @SSQL =  ' SELECT P.Sifra_OE, O.ImeOrg, P.Sifra_Art, 
  90621.             K.ImeArt, K.EdMera, K.Sifra_Tar, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, 
  90622.             K.Tezina, K.ImaKomerc, K.ImaBroevi, K.BTezina, K.Kto, Dob.ImeKup ImeDobav, K.Nabavna, 
  90623.             (P.Sostojba - (P.TVlez - P.TIzlez)) PrethSost,
  90624.             ((P.Sostojba - (P.TVlez - P.TIzlez)) * P.Cena) PrethVredn,
  90625.             P.Sostojba TekSost, 
  90626.             (P.Sostojba * P.Cena) TekVredn, '
  90627.     If @BezPromOdPren = 'D' Or @BezPromOdPopis = 'D'
  90628.         Set @SSQL = @SSQL + ' P.TVlezBezPren TVlez, (P.TVlezBezPren*P.Cena) TekVrVlez,
  90629.                       P.TIzlezBezPren TIzlez, (P.TIzlezBezPren*P.Cena) TekVrIzlez '
  90630.     Else
  90631.         Set @SSQL = @SSQL + ' P.TVlez, (P.TVlez*P.Cena) TekVrVlez,
  90632.                       P.TIzlez, (P.TIzlez*P.Cena) TekVrIzlez '
  90633.     If @SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null
  90634.         Set @SSQL = @SSQL + ', OZ.Dozvoleno '
  90635.     Else 
  90636.         Set @SSQL = @SSQL + ', Null as Dozvoleno '
  90637.     Set @SSQL = @SSQL + ' FROM #Promet P
  90638.                 Inner Join Orged O On O.Sifra_Oe=P.Sifra_Oe
  90639.                 Inner Join Katart K On P.Sifra_Art=K.Sifra_Art
  90640.                 Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg 
  90641.                 Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr
  90642.                 Left Outer Join Komint Dob On Dob.Sifra_Kup=K.Kto '
  90643.     If @SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null
  90644.         Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = P.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  90645.     Set @SSQL = @SSQL + ' Where 1=1 '
  90646.     If @KoiArt = 'P'
  90647.         Set @SSQL = @SSQL + ' And (P.TVlez > 0 Or P.TIzlez > 0) '
  90648.     Else If @KoiArt = 'I'
  90649.         Set @SSQL = @SSQL + ' And P.TIzlez > 0  '
  90650.     Else If @KoiArt = 'N'
  90651.         Set @SSQL = @SSQL + ' And P.TIzlez <= 0 '
  90652.  
  90653.     If @SiteArt = 'D' And @KoiArt Is Null
  90654.     Begin
  90655.         Set @SSQL = @SSQL + ' Union
  90656.                 Select Null as Sifra_Oe, Null ImeOrg, K.Sifra_Art, K.ImeArt, K.EdMera, K.Sifra_Tar, 
  90657.                     K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, K.Tezina, K.ImaKomerc, K.ImaBroevi, K.BTezina, K.Kto, 
  90658.                     Dob.ImeKup ImeDobav, K.Nabavna, 
  90659.                     0, 0, 0, 0, 0, 0 '
  90660.         If @SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null
  90661.             Set @SSQL = @SSQL + ', OZ.Dozvoleno '
  90662.         Else 
  90663.             Set @SSQL = @SSQL + ', Null as Dozvoleno '
  90664.         Set @SSQL = @SSQL + ' From Katart K
  90665.                     Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg 
  90666.                     Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr 
  90667.                     Left Outer Join Komint Dob On Dob.Sifra_Kup=K.Kto '
  90668.         If @Sifra_Drg1 Is Not Null
  90669.                      Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON B.Sifra_Drg=K.Sifra_Drg '
  90670.         If (@SoDozvArt = 'D' And @Sifra_Oe Is Not Null And @KoiOe Is Null) Or (@DozvArt In ('D','N') And @Sifra_Oe Is Not Null And @KoiOe Is Null)
  90671.             Set @SSQL = @SSQL + ' Left Outer Join OptZalPoOe OZ On OZ.Sifra_Art = K.Sifra_Art And OZ.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  90672.         Set @SSQL = @SSQL + ' Where K.Sifra_Art Not In (Select Distinct Sifra_Art From #Promet) '
  90673.  
  90674.         Set @SSQL = @SSQL + @SSQLUslArt
  90675.     End 
  90676.     -------------------------------------------
  90677.     Set @SSQL = @SSQL + 'Order By P.Sifra_Art, P.Sifra_OE '
  90678.     print @SSQL
  90679.     Exec(@SSQL)
  90680. Go
  90681. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odjava1]'))
  90682. drop procedure [dbo].[sp_odjava1]
  90683.  
  90684. Go
  90685.  
  90686.  
  90687. CREATE   Procedure [dbo].[sp_Odjava1]
  90688.     @KoiOE    varchar(400)=Null,
  90689.     @Datum_Od    smalldatetime,
  90690.     @Datum_Do    smalldatetime,
  90691.     @Sifra_Kup    char(6)
  90692. AS
  90693. Declare @SSQL varchar(3000)
  90694. CREATE TABLE #TmpOE (Sifra_OE smallint)
  90695. IF @KoiOE IS NOT NULL
  90696. Begin
  90697.     SET @SSQL='SELECT Sifra_OE FROM Orged WHERE Sifra_OE IN ('+@KoiOE+')'
  90698.     INSERT INTO #TmpOE EXEc (@SSQL)
  90699. End
  90700. ELSE
  90701. INSERT INTO #TmpOE SELECT Sifra_Oe FROM OrgEd
  90702.  
  90703. SELECT S.Sifra_Art, A.ImeArt, A.EdMera, SUM(CASE S.VlIzl WHEN 'V' THEN S.Kolic ELSE 0 END) Vlez,
  90704. SUM(CASE S.VlIzl WHEN 'I' THEN S.Kolic ELSE 0 END) Izlez, A.Alt_Sifra
  90705. FROM Stavr S INNER JOIN KatArt A ON S.Sifra_art=A.Sifra_Art 
  90706. WHERE S.Datum_Dok >= @Datum_Od AND S.Datum_Dok<=@Datum_Do AND A.Kto=@Sifra_Kup
  90707. AND S.Sifra_OE IN (SELECT Sifra_OE FROM #TmpOE)
  90708. GROUP BY S.Sifra_Art, A.ImeArt, A.EdMera, A.Alt_Sifra ORDER BY A.ImeArt
  90709.  
  90710.  
  90711.  
  90712.  
  90713. Go
  90714. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odjavanakarticki]'))
  90715. drop procedure [dbo].[sp_odjavanakarticki]
  90716.  
  90717. Go
  90718.  
  90719. CREATE   PROCEDURE sp_OdjavaNaKarticki
  90720.     @Sifra_Oe    smallint = Null,
  90721.     @Koi_Oe    varchar(10) = Null,
  90722.     @Sifra_Art_Od    varchar(20) = Null,
  90723.     @Sifra_Art_Do    varchar(20) = Null,
  90724.     @Datum_Od    smalldatetime = Null,
  90725.     @Datum_Do    smalldatetime = Null,
  90726.     @Sifra_kup    char(6) = Null,
  90727.     @SeriskiBrOd    varchar(15) = Null,
  90728.     @SeriskiBrDo    varchar(15) = Null,
  90729.     @Sifra_Podg    char(6) = Null,
  90730.     @Sifra_Gr    char(3) = Null,
  90731.     @Drugo1        smallint= null,
  90732.     @Drugo2        smallint= null,
  90733.     @Drugo3        smallint= null,
  90734.     @Drugo4        smallint= null,
  90735.     @Drugo5        smallint= null,
  90736.     @Drugo6        smallint= null,
  90737.     @Drugo7        smallint= null
  90738.  AS
  90739.     Declare @SSQL as varchar(8000)
  90740.     Create Table #Tab
  90741.     (
  90742.      DokID        int,
  90743.      Sifra_Oe    smallint,
  90744.      Sifra_Dok    smallint,
  90745.      Broj_Dok    int,
  90746.      Identif_br    varchar(25),
  90747.      Datum_Dok    smalldatetime,
  90748.      Sifra_Kup    char(6),
  90749.      Sifra_Art     varchar(20),
  90750.      SeriskiBr    varchar(15),
  90751.      Kolic        decimal(18,6),
  90752.      Iznos        decimal(18,6),
  90753.      Grupa        int
  90754.     )
  90755.     Set @SSQL = ' Select S.StaNarID, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Identif_br, N.Datum_Nar, N.Sifra_Kup, S.Sifra_Art, B.SeriskiBr, 1, (1*S.DokCena) Iznos
  90756.             From BrStaNarac B
  90757.             Inner Join StaNarac S On S.StanarID=B.StaNarID
  90758.             Inner Join Naracki N On N.NarID=S.NarID 
  90759.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  90760.             Left Outer Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  90761.             Where N.Sifra_Nar in (18, 88, 98) ' --and D.Sifra_Za = ''1'' '
  90762. --            Where 1=1 '
  90763.     If @Sifra_Oe Is not Null
  90764.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  90765.     If @Koi_OE Is Not NULL
  90766.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  90767. --    If @Koi_OE Is Not Null
  90768. --        SET @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  90769.     If @Sifra_Podg Is Not Null
  90770.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ' + @Sifra_Podg + ' '
  90771.     If @Sifra_Gr Is Not Null
  90772.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ' + @Sifra_Gr + ' '
  90773.        If @Sifra_Art_Od IS NOT NULL 
  90774.         Set @SSQL = @SSQL + ' AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  90775.        If @Sifra_Art_Do IS NOT NULL 
  90776.         Set @SSQL = @SSQL + ' AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  90777.     If @SeriskiBrOd Is not Null
  90778.         Set @SSQL = @SSQL + ' And B.SeriskiBr >= ' + @SeriskiBrOd + ' '
  90779.     If @SeriskiBrDo Is not Null
  90780.         Set @SSQL = @SSQL + ' And B.SeriskiBr <= ' + @SeriskiBrDo + ' '
  90781.     If @Datum_Od Is Not Null
  90782.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  90783.     If @Datum_Do Is Not Null
  90784.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  90785.     If @Sifra_Kup Is not Null
  90786.         Set @SSQL = @SSQL + ' And N.Sifra_Kup = ' + @Sifra_Kup + ' '
  90787. --16.09.2010
  90788.        If @Drugo1 Is NOT Null
  90789.               SET @SSQL = @SSQL + 'AND K.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  90790.        If @Drugo2 Is NOT Null
  90791.               SET @SSQL = @SSQL + 'AND K.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  90792.        If @Drugo3 Is NOT Null
  90793.               SET @SSQL = @SSQL + 'AND K.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  90794.        If @Drugo4 Is NOT Null
  90795.               SET @SSQL = @SSQL + 'AND K.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  90796.        If @Drugo5 Is NOT Null
  90797.               SET @SSQL = @SSQL + 'AND K.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  90798.        If @Drugo6 Is NOT Null
  90799.               SET @SSQL = @SSQL + 'AND K.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  90800.        If @Drugo7 Is NOT Null
  90801.               SET @SSQL = @SSQL + 'AND K.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  90802. -- 
  90803.  
  90804.  
  90805.     Set @SSQL = @SSQL + ' Order By S.StaNarID, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Identif_br, N.Datum_Nar, N.Sifra_Kup, S.Sifra_Art, B.SeriskiBr '
  90806.     Insert Into #Tab(DokID, Sifra_Oe, Sifra_Dok, Broj_Dok, Identif_br, Datum_Dok, Sifra_Kup, Sifra_Art, SeriskiBr, Kolic, Iznos) Exec(@SSQL)
  90807. PRINT @ssql
  90808.     Create Table #SerBr
  90809.     (
  90810.      Sifra_Art    varchar(20),
  90811.      Broj        Int,
  90812.      SeriskiBrOd    varchar(15),
  90813.      SeriskiBrDo    varchar(15)
  90814.     )
  90815.     Declare @SeriskiBr as varchar(15)
  90816.     Declare @SeriskiBrPred as varchar(15)
  90817.     Declare @Broj as int
  90818.     Declare @Sifra_Art as Varchar(20)
  90819.     Declare @DokID as int
  90820.     Declare @DokIDPred as int
  90821.     Set @Broj=1
  90822.     Declare SeriskiBroj Cursor Fast_Forward For 
  90823.         Select Sifra_Art, SeriskiBr, DokID From #Tab Order By DokID, Sifra_Art, SeriskiBr
  90824.     Open SeriskiBroj
  90825.     Fetch Next From SeriskiBroj Into @Sifra_Art, @SeriskiBr, @DokID
  90826.     While @@Fetch_Status = 0
  90827.     Begin
  90828.         If @SeriskiBrPred Is Null
  90829.         Begin
  90830.             Insert Into #SerBr(Broj, Sifra_Art, SeriskiBrOd) Values(@Broj, @Sifra_Art, @SeriskiBr)
  90831.             Update #Tab 
  90832.             Set Grupa = @Broj
  90833.             Where SeriskiBr=@SeriskiBr and Sifra_Art= @Sifra_Art and DokID=@DokID
  90834.             Set @SeriskiBrPred = @SeriskiBr
  90835.             Set @DokIDPred = @DokID
  90836.         End
  90837.         Else
  90838.         Begin
  90839.             If cast(@SeriskiBr as decimal(18,0)) = cast(@SeriskiBrPred as decimal(18,0))+ 1 and @DokID = @DokIDPred
  90840.             Begin    
  90841.                 Update #Tab 
  90842.                 Set Grupa = @Broj  
  90843.                 Where SeriskiBr=@SeriskiBr and DokID=@DokID
  90844.                 Set @SeriskiBrPred = @SeriskiBr
  90845.                 Set @DokIDPred = @DokID    
  90846.             End
  90847.             Else
  90848.             Begin
  90849.                 Update #SerBr
  90850.                 Set SeriskiBrDo = @SeriskiBrPred Where Broj=@Broj
  90851.                 Set @Broj = @Broj + 1
  90852.                 Insert Into #SerBr (Broj, Sifra_Art, SeriskiBrOd) Select @Broj, @Sifra_Art, @SeriskiBr
  90853.                 Update #Tab 
  90854.                 Set Grupa = @Broj
  90855.                 Where SeriskiBr=@SeriskiBr and DokID=@DokID
  90856.                 Set @SeriskiBrPred = @SeriskiBr
  90857.                 Set @DokIDPred = @DokID    
  90858.             End    
  90859.         End        
  90860.         Fetch Next From SeriskiBroj Into @Sifra_Art, @SeriskiBr, @DokID
  90861.     End
  90862.         Update #SerBr
  90863.         Set SeriskiBrDo = @SeriskiBr Where Broj=@Broj
  90864.     Close SeriskiBroj
  90865.     Deallocate SeriskiBroj
  90866.     Set @SSQL = ' Select  T.Sifra_Oe, T.Sifra_Dok, T.Broj_Dok, T.Identif_br, T.Datum_Dok, T.Sifra_Kup, Kup.ImeKup, T.Sifra_Art, K.ImeArt, T.SeriskiBr, 
  90867.                 T.Kolic, T.Iznos, T.Grupa, (Rtrim(SB.SeriskiBrOd)+''-''+Rtrim(SB.SeriskiBrDo)) SerBrOdDo, K.Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr
  90868.             From #Tab T
  90869.             Inner Join Katart K On K.Sifra_Art=T.Sifra_Art 
  90870.             Left Outer Join Komint Kup On Kup.Sifra_Kup=T.Sifra_Kup
  90871.             Left Outer Join #SerBr SB On SB.Broj = T.Grupa
  90872.             Left Outer Join Podgrupi P On P.Sifra_Podg = K.Sifra_podg
  90873.             Left Outer Join Grupi G On G.Sifra_Gr = P.Sifra_Gr '
  90874.     Exec(@SSQL)
  90875.  
  90876.  
  90877.  
  90878. Go
  90879. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odjavanaserbr]'))
  90880. drop procedure [dbo].[sp_odjavanaserbr]
  90881.  
  90882. Go
  90883. CREATE PROCEDURE sp_OdjavaNaSerBr 
  90884.     @Sifra_Art    varchar(20),
  90885.     @SeriskiBr    varchar(15),
  90886.     @Datum_Od    smalldatetime = Null,
  90887.     @Datum_Do    smalldatetime = Null
  90888. AS
  90889.     Declare @SSQL as varchar(4000)
  90890.     Set @SSQL = ' Select N.Datum_Nar, S.Sifra_Oe, S.Sifra_Nar, S.Broj_Nar, 1 as Kolic, 
  90891.             N.Sifra_Kup, Kup.ImeKup
  90892.             From Naracki N
  90893.             Inner Join StaNarac S On S.NarID = N.NarID 
  90894.             Inner Join BrStaNarac B On B.StaNarID = S.StaNarID
  90895.             Left Outer Join Komint Kup On Kup.Sifra_kup = N.Sifra_Kup
  90896.             Where S.Sifra_Art = ' + @Sifra_Art + ' and B.SeriskiBr= ' + @SeriskiBr + ' 
  90897.             and S.Sifra_Nar In (18, 88, 98) '
  90898.     If @Datum_Od Is Not Null
  90899.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  90900.     If @Datum_Do Is Not Null
  90901.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  90902. print @SSQL
  90903.     Exec(@SSQL)
  90904.  
  90905.  
  90906. Go
  90907. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odjavaserbrzatxt]'))
  90908. drop procedure [dbo].[sp_odjavaserbrzatxt]
  90909.  
  90910. Go
  90911.  
  90912. CREATE   PROCEDURE sp_OdjavaSerBrZaTxt 
  90913.     @Sifra_Oe    smallint = Null,
  90914.     @Koi_Oe    varchar(10) = Null,
  90915.     @Sifra_Art_Od    varchar(20) = Null,
  90916.     @Sifra_Art_Do    varchar(20) = Null,
  90917.     @SeriskiBrOd    varchar(15) = Null,
  90918.     @SeriskiBrDo    varchar(15) = Null,
  90919.     @Datum_Od    smalldatetime = Null,
  90920.     @Datum_Do    smalldatetime = Null,
  90921.     @Sifra_kup    char(6) = Null,
  90922.     @Sifra_Podg    char(6) = Null,
  90923.     @Sifra_Gr    char(3) = Null,
  90924.     @Drugo1        smallint= null,
  90925.     @Drugo2        smallint= null,
  90926.     @Drugo3        smallint= null,
  90927.     @Drugo4        smallint= null,
  90928.     @Drugo5        smallint= null,
  90929.     @Drugo6        smallint= null,
  90930.     @Drugo7        smallint= null
  90931. AS
  90932.     Declare @SSQL as varchar(4000)
  90933.     Set @SSQL = ' Select Cast(B.SeriskiBr as decimal(18,0)) SeriskiBr
  90934.             From Naracki N
  90935.             Inner Join StaNarac S On S.NarID = N.NarID 
  90936.             Inner Join BrStaNarac B On B.StaNarID = S.StaNarID 
  90937.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  90938.             Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  90939.             Where S.Sifra_Nar In (18, 88, 98) '
  90940.     If @Sifra_Oe Is Not Null
  90941.         Set @SSQL = @SSQL + ' And N.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(10)) + ''' '
  90942.     If @Koi_Oe Is Not Null
  90943.         Set @SSQL = @SSQL + ' And N.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  90944.     If @Sifra_Art_Od Is Not Null
  90945.         Set @SSQL = @SSQL + ' And  S.Sifra_Art >= ' + @Sifra_Art_Od + ' '
  90946.     If @Sifra_Art_Do Is Not Null
  90947.         Set @SSQL = @SSQL + ' And  S.Sifra_Art <= ' + @Sifra_Art_Do + ' '
  90948.     If @SeriskiBrOd Is Not Null
  90949.         Set @SSQL = @SSQL + ' and B.SeriskiBr >= ' + @SeriskiBrOd + ' '
  90950.     If @SeriskiBrDo Is Not Null
  90951.         Set @SSQL = @SSQL + ' and B.SeriskiBr <= ' + @SeriskiBrDo + ' '
  90952.     If @Datum_Od Is Not Null
  90953.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  90954.     If @Datum_Do Is Not Null
  90955.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  90956.     If @Sifra_Kup Is Not Null
  90957.         Set @SSQL = @SSQL + ' And  N.Sifra_Kup = ' + @Sifra_Kup + ' '
  90958.     If @Sifra_Podg Is Not Null
  90959.         Set @SSQL = @SSQL + ' And  K.Sifra_Podg = ' + @Sifra_Podg + ' '
  90960.     If @Sifra_Gr Is Not Null
  90961.         Set @SSQL = @SSQL + ' And  P.Sifra_Gr = ' + @Sifra_Gr + ' '
  90962. --16.09.2010
  90963.        If @Drugo1 Is NOT Null
  90964.               SET @SSQL = @SSQL + 'AND K.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  90965.        If @Drugo2 Is NOT Null
  90966.               SET @SSQL = @SSQL + 'AND K.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  90967.        If @Drugo3 Is NOT Null
  90968.               SET @SSQL = @SSQL + 'AND K.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  90969.        If @Drugo4 Is NOT Null
  90970.               SET @SSQL = @SSQL + 'AND K.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  90971.        If @Drugo5 Is NOT Null
  90972.               SET @SSQL = @SSQL + 'AND K.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  90973.        If @Drugo6 Is NOT Null
  90974.               SET @SSQL = @SSQL + 'AND K.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  90975.        If @Drugo7 Is NOT Null
  90976.               SET @SSQL = @SSQL + 'AND K.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  90977. -- 
  90978.     Set @SSQL = @SSQL + ' Order By B.SeriskiBr '
  90979.     Exec(@SSQL)
  90980.  
  90981.  
  90982.  
  90983. Go
  90984. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odobr_sumpregled_potar]'))
  90985. drop procedure [dbo].[sp_odobr_sumpregled_potar]
  90986.  
  90987. Go
  90988. CREATE  PROCEDURE sp_Odobr_SumPregled_PoTar
  90989.     @Sifra_Oe    smallint,
  90990.     @Sifra_Dok    smallint,
  90991.     @Broj_Dok    int
  90992. AS
  90993.     Declare @AnID_Odob Int
  90994.     Select @AnID_Odob = AnID From AnFindok 
  90995.     Where Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  90996.     Select     S.Posn, SUM((S.Iznos_Fra * S.Proc_Odobr / 100) / (1+S.Posn/100)) NetoOdobr, SUM((S.Iznos_Fra * S.Proc_Odobr / 100) / (1+S.Posn/100) * (S.Posn/100)) IznosDDV
  90997.     From StaOdobr S Where S.AnID_Odob=@AnID_Odob
  90998.     Group By S.POsn
  90999.  
  91000.  
  91001. Go
  91002. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odobrenie]'))
  91003. drop procedure [dbo].[sp_odobrenie]
  91004.  
  91005. Go
  91006. CREATE  PROCEDURE sp_Odobrenie
  91007.     @Sifra_Oe    smallint,
  91008.     @Sifra_Dok    smallint,
  91009.     @Broj_Dok    int
  91010.  AS
  91011.     Select (A.Dolzi+A.Pobaruva) Iznos, A.Danok1, A.Danok2, A.Sifra_Kup, Kup.ImeKup, Kup.SMesto, Kup.Adresa, Kup.Posta, Kup.Zemja, A.SlobText, S.Stapka1, S.Stapka2, A.Datum_Dok,
  91012.         A.BrojDok, A.Opis
  91013.     From AnFindok A
  91014.     Left Outer Join Komint Kup On Kup.Sifra_Kup = A.Sifra_Kup
  91015.     Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  91016.     Where A.Sifra_Oe = @Sifra_Oe and A.Sifra_Dok = @Sifra_Dok And A.Broj_Dok = @Broj_Dok
  91017.  
  91018.  
  91019.  
  91020. Go
  91021. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odobrenie_analitika]'))
  91022. drop procedure [dbo].[sp_odobrenie_analitika]
  91023.  
  91024. Go
  91025.  
  91026. CREATE   PROCEDURE sp_Odobrenie_Analitika
  91027.     @Datum_Od    smalldatetime = Null,
  91028.     @Datum_Do    smalldatetime = Null,
  91029.     @Sifra_Kup    char(6) = Null,
  91030.     @Sifra_Reg    smallint = Null,
  91031.     @Sifra_Pat    smallint = Null,
  91032.     @KomercKako    char(1) = 'I'
  91033. AS
  91034.     Declare @SSQL as varchar(8000)
  91035.     Set @SSQL = ' Select A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok Datum_Odobr, A.Sifra_Kup, Kup.ImeKup,
  91036.         Cast(F.Sifra_Oe as varchar(6)) + ''-'' + Cast(F.Sifra_Dok as varchar(6)) + ''/'' + Cast(F.Broj_Dok as varchar(7)) Dokument, F.BrojDok, F.Datum_Dok Datum_Fra, 
  91037.         S.Iznos_Fra, ((S.Iznos_Fra * S.Proc_Odobr / 100) / (1+S.Posn/100) * (S.Posn/100)) IznosDDVOdobr, (S.Iznos_Fra * S.Proc_Odobr / 100) IznosOdobr,
  91038.         S.Posn, S.AnID_Odob, S.AnID_Fak, S.AnID_Upl, F.Sifra_Dok Sifra_DokF, Kup.Sifra_Reg, R.ImeRegion
  91039.     From StaOdobr S
  91040.     Inner Join AnFinDok A On A.AnID=S.AnID_Odob
  91041.     Left Outer Join AnFinDok F On F.AnID=S.AnID_Fak
  91042.     Left Outer Join AnFinDok U On U.AnID=S.AnID_Upl
  91043.     Left Outer Join Komint Kup On Kup.Sifra_kup=A.Sifra_Kup 
  91044.     Left Outer Join GRegion R On R.Sifra_Reg=Kup.Sifra_Reg
  91045.     Where 1=1 '
  91046.     If @Datum_Od Is Not Null
  91047.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  91048.     If @Datum_Do Is Not Null
  91049.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  91050.     If @Sifra_Kup Is Not Null 
  91051.         Set @SSQL = @SSQL + ' And A.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  91052.     If @Sifra_Reg Is Not Null
  91053.         Set @SSQL = @SSQL + ' And Kup.Sifra_Reg = ''' + cast(@Sifra_Reg as varchar(6)) + ''' '
  91054.     If @Sifra_Pat IS NOT NULL
  91055.            If @KomercKako = 'T'
  91056.             Set @SSQL = @SSQL + ' And Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  91057.         Else
  91058.             Set @SSQL = @SSQL + ' And A.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  91059.     Exec (@SSQL)
  91060.  
  91061. Go
  91062. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odobrenie_analitika_art]'))
  91063. drop procedure [dbo].[sp_odobrenie_analitika_art]
  91064.  
  91065. Go
  91066.  
  91067.  
  91068.  
  91069.  
  91070.  
  91071.  
  91072.  
  91073.  
  91074.  
  91075. CREATE           PROCEDURE sp_Odobrenie_Analitika_Art
  91076.     @Sifra_OE     Smallint = Null,
  91077.         @Sifra_Dok     Smallint = Null,
  91078.         @Datum_Od    smalldatetime = Null,
  91079.     @Datum_Do    smalldatetime = Null,
  91080.     @Sifra_Kup    char(6) = Null,
  91081.         @Sifra_Obj    smallint = Null,  
  91082.     @Sifra_Reg    smallint = Null,
  91083.     @Sifra_Pat    smallint = Null,
  91084.     @KomercKako    char(1) = 'I',
  91085.         @Sifra_Art_Od     Varchar(20) = Null,
  91086.     @Sifra_Art_Do     Varchar(20) = Null,
  91087.         @Sifra_Gr     char(3) = Null,
  91088.     @Sifra_Podg     char(6) = Null,
  91089.         @Drugo1    smallint = Null,
  91090.     @Drugo2    smallint = Null,
  91091.     @Drugo3    smallint = Null,
  91092.     @Drugo4    smallint = Null,
  91093.      @Drugo5    smallint = Null,
  91094.     @Drugo6    smallint = Null,
  91095.     @Drugo7    smallint = Null,
  91096.         @VlIzl     Char(1) = Null       
  91097. AS
  91098.     Declare @SSQL as varchar(8000)
  91099.     Set @SSQL = ' Select S.*, D.Sifra_Kup, Kup.ImeKup, Kup.Sifra_Reg, R.ImeRegion, K.ImeArt, K.EdMera, 
  91100.                       D.Sifra_Pat, D.Sifra_Obj, OB.imeObj
  91101.     From StaDokrOdobr S
  91102.     Left Outer Join Katart K On K.Sifra_art=S.Sifra_Art 
  91103.     Left Outer Join Dokr D On D.DokrID=S.DokrID
  91104.         Left Outer Join Komint Kup On Kup.Sifra_kup=D.Sifra_Kup 
  91105.         Left Outer Join KObjekti OB On OB.Sifra_Obj=D.Sifra_Obj 
  91106.         Left Outer Join GRegion R On R.Sifra_Reg=Kup.Sifra_Reg
  91107.         LEFT OUTER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg
  91108.     LEFT OUTER JOIN Grupi G ON PG.Sifra_Gr=G.Sifra_Gr
  91109.         Where 1=1 '
  91110.     If @Datum_Od Is Not Null
  91111.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  91112.     If @Datum_Do Is Not Null
  91113.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  91114.     If @Sifra_Kup Is Not Null 
  91115.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  91116.     If @Sifra_Reg Is Not Null
  91117.         Set @SSQL = @SSQL + ' And Kup.Sifra_Reg = ''' + cast(@Sifra_Reg as varchar(6)) + ''' '
  91118.     If @Sifra_Pat IS NOT NULL
  91119.            If @KomercKako = 'T'
  91120.             Set @SSQL = @SSQL + ' And Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  91121.         Else
  91122.             Set @SSQL = @SSQL + ' And D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  91123.     If @Sifra_Art_Od IS NOT NULL 
  91124.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  91125.        If @Sifra_Art_Do IS NOT NULL 
  91126.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  91127.         If @Sifra_Gr IS NOT NULL
  91128.               Set @SSQL=@SSQL+'AND (G.Sifra_Gr='''+@Sifra_Gr+''') '
  91129.        If @Sifra_Podg IS NOT NULL
  91130.               Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  91131.         If @Drugo1 Is NOT Null
  91132.               SET @SSQL = @SSQL + 'AND K.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  91133.        If @Drugo2 Is NOT Null
  91134.               SET @SSQL = @SSQL + 'AND K.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  91135.        If @Drugo3 Is NOT Null
  91136.               SET @SSQL = @SSQL + 'AND K.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  91137.        If @Drugo4 Is NOT Null
  91138.               SET @SSQL = @SSQL + 'AND K.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  91139.        If @Drugo5 Is NOT Null
  91140.               SET @SSQL = @SSQL + 'AND K.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  91141.        If @Drugo6 Is NOT Null
  91142.               SET @SSQL = @SSQL + 'AND K.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  91143.        If @Drugo7 Is NOT Null
  91144.               SET @SSQL = @SSQL + 'AND K.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  91145.         If @VlIzl Is NOT Null
  91146.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  91147.         If @Sifra_OE Is NOT Null
  91148.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  91149.         If @Sifra_Dok Is NOT NULL
  91150.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  91151.         If @Sifra_Obj Is NOT Null
  91152.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  91153.         Exec (@SSQL)
  91154.  
  91155.  
  91156.  
  91157.  
  91158.  
  91159.  
  91160. Go
  91161. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odobrenie_pregled]'))
  91162. drop procedure [dbo].[sp_odobrenie_pregled]
  91163.  
  91164. Go
  91165.  
  91166. CREATE   PROCEDURE sp_Odobrenie_Pregled
  91167.     @Sifra_Oe    smallint,
  91168.     @Sifra_Dok    smallint,
  91169.     @Broj_Dok    int,
  91170.     @Sifra_Kup    char(6) = Null Output,
  91171.     @Dolzi        decimal(18,6) = Null Output,
  91172.     @Datum_Odob    smalldatetime = Null Output,
  91173.     @Sifra_Pat    int = Null Output
  91174. AS
  91175.     Declare @AnID_Odob Int
  91176.     Select @AnID_Odob = AnID, @Sifra_Kup=Sifra_Kup, @Dolzi=Dolzi, @Datum_Odob=Datum_Dok, @Sifra_Pat=Sifra_Pat
  91177.     From AnFindok 
  91178.     Where Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  91179.     Select     Cast(F.Sifra_Oe as varchar(6)) + '-' + Cast(F.Sifra_Dok as varchar(6)) + '/' + Cast(F.Broj_Dok as varchar(7)) Dokument, F.BrojDok, 
  91180.         F.Datum_Dok, F.Sifra_Dok Sifra_DokF,
  91181.         U.Datum_Dok Datum_Upl,
  91182.         S.Proc_Odobr,
  91183.         ((S.Iznos_Fra * S.Proc_Odobr / 100) / (1+S.Posn/100)) NetoOdobr,
  91184.         S.Posn,
  91185.         ((S.Iznos_Fra * S.Proc_Odobr / 100) / (1+S.Posn/100) * (S.Posn/100)) IznosDDV,
  91186.         (S.Iznos_Fra * S.Proc_Odobr / 100) VkupnoOdbr,
  91187.         S.AnID_Odob, S.AnID_Fak, S.Iznos_Fra, S.AnID_Upl,
  91188.         A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok,
  91189.         A.Dolzi, A.Pobaruva
  91190.     From StaOdobr S
  91191.     Inner Join AnfinDok A On A.AnID=S.AnID_Odob
  91192.     Inner Join AnFinDok F On F.AnID=S.AnID_Fak
  91193.     Left Outer Join AnFinDok U On U.AnID=S.AnID_Upl
  91194.     Where S.AnID_Odob=@AnID_Odob
  91195.  
  91196.  
  91197.  
  91198. Go
  91199. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odredi_kto_grupa]'))
  91200. drop procedure [dbo].[sp_odredi_kto_grupa]
  91201.  
  91202. Go
  91203. CREATE PROCEDURE sp_Odredi_Kto_Grupa
  91204.     @Sifra_OE    smallint,
  91205.     @Sifra_Dok    smallint,
  91206.     @Broj_Dok    int,
  91207.     @Sufix        varchar(3)='' OUTPUT
  91208. AS 
  91209.     SELECT @Sufix = dbo.fix_Odredi_Kto_Grupa(@Sifra_Oe, @Sifra_Dok, @Broj_Dok)
  91210.  
  91211.  
  91212. Go
  91213. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odredidatisporakaporuti]'))
  91214. drop procedure [dbo].[sp_odredidatisporakaporuti]
  91215.  
  91216. Go
  91217.  
  91218.  
  91219. CREATE   Procedure sp_OdrediDatIsporakaPoRuti
  91220.     @Sifra_pat smallint = null,
  91221.     @Sifra_GrPat char(6) = null,
  91222.     @Datum_Od smalldatetime = null,
  91223.     @Datum_Do smalldatetime = null
  91224. AS 
  91225. Declare @DatIspOd smalldatetime, @DatIspDo smalldatetime, @DatZaklZaUtre smalldatetime
  91226. SET @DatIspOd = dbo.fn_VratiDatum(GetDate())
  91227. SET @DatIspDo = dbo.fn_VratiDatum(DateAdd(day, 6, GetDate()))
  91228.  
  91229. SET @DatZaklZaUtre = DateAdd(hour, 15, @DatIspOd)  -- 15h denes - da se parameterizira
  91230.  
  91231. CREATE TABLE #Tmp
  91232.     (Datum smalldatetime,
  91233.      sto varchar(30),    
  91234.      Kolku integer)
  91235.     
  91236. CREATE TABLE #TmpRuta
  91237.     (Sifra_Pat smallint,
  91238.      DenOdNedela char(1),
  91239.      Sifra_Kup char(6),
  91240.      Sifra_Obj smallint,
  91241.      Datum smalldatetime )
  91242.  
  91243. CREATE TABLE #TmpPat (Sifra_Pat smallint)
  91244. If @Sifra_Pat is not null 
  91245.     INSERT INTO #TmpPat VALUES (@Sifra_Pat)
  91246. Else IF @Sifra_GrPat is not null
  91247.     INSERT INTO #TmpPat SELECT Sifra_Pat from Sgrpat where Sif_GrPat =@Sifra_GrPat
  91248. ELSE
  91249.     INSERT INTO #TmpPat SELECT Sifra_Pat from Patnici
  91250.  
  91251. CREATE TABLE #TmpPR 
  91252. (Sifra_Pat smallint, 
  91253. Datum smalldatetime)
  91254.  
  91255. Declare @Datum smalldatetime
  91256. Declare @Praznik as char(1)
  91257. SET @Datum=@DatIspOd
  91258. WHILE @Datum<=@DatIspDo         
  91259. BEGIN
  91260.  
  91261.     -- Specijalni ruti za fiksiran apsoluten datum
  91262.     INSERT INTO #TmpRuta (Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  91263.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj 
  91264.     FROM RutiZaDatum 
  91265.     WHERE Datum=@Datum AND Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  91266.  
  91267.     -- Pazi na PRAZNICITE
  91268.     SELECT @Praznik=Sto 
  91269.     FROM RabKalendar 
  91270.     WHERE Datum=@Datum AND Sto='P'
  91271.  
  91272.     IF @Praznik IS NULL
  91273.     BEGIN
  91274.         DELETE FROM #TmpPR
  91275.  
  91276.         INSERT INTO #TmpPR 
  91277.             SELECT Sifra_Pat, MAX(Datum_Od) 
  91278.             FROM RutiPlan 
  91279.             WHERE Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat) AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) 
  91280.             GROUP BY Sifra_Pat
  91281.  
  91282.         INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  91283.             SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj 
  91284.             FROM RutiPlan R 
  91285.             INNER JOIN #TmpPR T 
  91286.                 ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  91287.             WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  91288.                 AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  91289.     END
  91290.  
  91291.     SET @Datum = DateAdd(day, 1, @Datum)
  91292. END 
  91293.  
  91294. --select * from #tmpRuta
  91295.  
  91296. Declare @Rbr as smallint
  91297. SET @Rbr=1
  91298. WHILE @Rbr<=7
  91299. Begin
  91300.     --naracki stignati do 15 casot da se isporacaat utre
  91301.     IF @Rbr=1
  91302.     Begin
  91303.         UPDATE Naracki 
  91304.         SET Dat_Isporaka = R.Datum 
  91305.         FROM #TmpRuta R 
  91306.         WHERE Naracki.Datum_Vnes<=@DatZaklZaUtre AND Naracki.Datum_Nar>=@Datum_Od
  91307.             AND Naracki.Datum_Nar<=@Datum_Do AND Naracki.Dat_Isporaka IS NULL 
  91308.             --AND Naracki.Sifra_Pat=R.Sifra_Pat 
  91309.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NULL AND R.Sifra_Obj IS NULL 
  91310.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)    --bez obj.
  91311.         
  91312.         UPDATE Naracki 
  91313.         SET Dat_Isporaka = R.Datum 
  91314.         FROM #TmpRuta R 
  91315.         WHERE Naracki.Datum_Vnes<=@DatZaklZaUtre AND Naracki.Datum_Nar>=@Datum_Od
  91316.             AND Naracki.Datum_Nar<=@Datum_Do AND Naracki.Dat_Isporaka IS NULL 
  91317.             --AND Naracki.Sifra_Pat=R.Sifra_Pat 
  91318.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NOT NULL AND R.Sifra_Obj IS NOT NULL 
  91319.             AND Naracki.Sifra_Obj=R.Sifra_Obj AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)  --so obj.
  91320.     End
  91321.     ELSE
  91322.     Begin
  91323.         UPDATE Naracki 
  91324.         SET Dat_Isporaka = R.Datum 
  91325.         FROM #TmpRuta R 
  91326.         WHERE Naracki.Datum_Nar>=@Datum_Od
  91327.             AND Naracki.Datum_Nar<=@Datum_Do AND Naracki.Dat_Isporaka IS NULL 
  91328.             --AND Naracki.Sifra_Pat=R.Sifra_Pat 
  91329.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NULL AND R.Sifra_Obj IS NULL 
  91330.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)    --bez obj.
  91331.  
  91332.         UPDATE Naracki 
  91333.         SET Dat_Isporaka = R.Datum 
  91334.         FROM #TmpRuta R 
  91335.         WHERE Naracki.Datum_Nar>=@Datum_Od
  91336.             AND Naracki.Datum_Nar<=@Datum_Do AND Naracki.Dat_Isporaka IS NULL 
  91337.             --AND Naracki.Sifra_Pat=R.Sifra_Pat 
  91338.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NOT NULL AND R.Sifra_Obj IS NOT NULL 
  91339.             AND Naracki.Sifra_Obj=R.Sifra_Obj 
  91340.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)  --so obj.
  91341.     End
  91342.  
  91343.     SET @Rbr=@Rbr+1
  91344. End
  91345.  
  91346.  
  91347.  
  91348. Go
  91349. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odredidatisporakaporuti1nar]'))
  91350. drop procedure [dbo].[sp_odredidatisporakaporuti1nar]
  91351.  
  91352. Go
  91353.  
  91354.  
  91355. CREATE   Procedure sp_OdrediDatIsporakaPoRuti1Nar
  91356.     @Sifra_OE    smallint,
  91357.     @Sifra_Nar    smallint,
  91358.     @Broj_Nar    int
  91359. AS 
  91360. Declare @DatIspOd smalldatetime, @DatIspDo smalldatetime, @DatZaklZaUtre smalldatetime
  91361. Declare @Sifra_Pat smallint, @Sifra_Kup char(6), @Sifra_Obj as smallint, @Dat_Isporaka smalldatetime
  91362. SET @DatIspOd = dbo.fn_VratiDatum(GetDate())
  91363. SET @DatIspDo = dbo.fn_VratiDatum(DateAdd(day, 20, GetDate()))
  91364.  
  91365. SET @DatZaklZaUtre = DateAdd(hour, 15, @DatIspOd)  -- 15h denes - da se parameterizira
  91366. SELECT @Sifra_Pat=Sifra_Pat, @Sifra_Kup=Sifra_Kup, @Sifra_Obj=Sifra_Obj FROM Naracki WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  91367. IF @Sifra_Pat IS NULL OR @Sifra_Kup IS NULL RETURN
  91368.  
  91369. CREATE TABLE #TmpRuta
  91370.     (Sifra_Pat smallint,
  91371.      DenOdNedela char(1),
  91372.      Sifra_Kup char(6),
  91373.      Sifra_Obj smallint,
  91374.      Datum smalldatetime )
  91375.  
  91376. CREATE TABLE #TmpPR 
  91377. (Sifra_Pat smallint, 
  91378. Datum smalldatetime)
  91379.  
  91380. Declare @Datum smalldatetime
  91381. Declare @Praznik as char(1)
  91382. SET @Datum=@DatIspOd
  91383. WHILE @Datum<=@DatIspDo         
  91384. BEGIN
  91385.  
  91386.     -- Specijalni ruti za fiksiran apsoluten datum
  91387.     INSERT INTO #TmpRuta (Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  91388.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj 
  91389.     FROM RutiZaDatum 
  91390.     WHERE Datum=@Datum AND Sifra_Pat =@Sifra_Pat  AND Sifra_Kup=@Sifra_Kup
  91391.  
  91392.     -- Pazi na PRAZNICITE
  91393.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  91394.  
  91395.     IF @Praznik IS NULL
  91396.     BEGIN
  91397.         DELETE FROM #TmpPR
  91398.  
  91399.         INSERT INTO #TmpPR 
  91400.             SELECT Sifra_Pat, MAX(Datum_Od) 
  91401.             FROM RutiPlan 
  91402.             WHERE Sifra_Pat =@Sifra_Pat AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) 
  91403.             GROUP BY Sifra_Pat
  91404.  
  91405.         INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  91406.             SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj 
  91407.             FROM RutiPlan R 
  91408.             INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  91409.             WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  91410.                 AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat =@Sifra_Pat
  91411.     END
  91412.  
  91413.     SET @Datum = DateAdd(day, 1, @Datum)
  91414. END 
  91415.  
  91416. Declare @Rbr as smallint
  91417. SET @Rbr=1
  91418. WHILE @Rbr<=20
  91419. Begin
  91420.     --naracki stignati do 15 casot da se isporacaat utre
  91421.     IF @Rbr=1
  91422.     Begin
  91423.         UPDATE Naracki 
  91424.         SET Dat_Isporaka = R.Datum 
  91425.         FROM #TmpRuta R 
  91426.         WHERE Naracki.Datum_Vnes<=@DatZaklZaUtre AND Naracki.Dat_Isporaka IS NULL
  91427.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  91428.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NULL AND R.Sifra_Obj IS NULL 
  91429.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)    --bez obj.
  91430.         
  91431.         UPDATE Naracki 
  91432.         SET Dat_Isporaka = R.Datum 
  91433.         FROM #TmpRuta R 
  91434.         WHERE Naracki.Datum_Vnes<=@DatZaklZaUtre AND Naracki.Dat_Isporaka IS NULL
  91435.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  91436.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NOT NULL AND R.Sifra_Obj IS NOT NULL 
  91437.             AND Naracki.Sifra_Obj=R.Sifra_Obj AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)  --so obj.
  91438.     End
  91439.     ELSE
  91440.     Begin
  91441.         UPDATE Naracki 
  91442.         SET Dat_Isporaka = R.Datum 
  91443.         FROM #TmpRuta R 
  91444.         WHERE Naracki.Dat_Isporaka IS NULL 
  91445.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  91446.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NULL AND R.Sifra_Obj IS NULL 
  91447.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)    --bez obj.
  91448.  
  91449.         UPDATE Naracki 
  91450.         SET Dat_Isporaka = R.Datum 
  91451.         FROM #TmpRuta R 
  91452.         WHERE Naracki.Dat_Isporaka IS NULL 
  91453.             AND Naracki.Sifra_OE=@Sifra_OE AND Naracki.Sifra_Nar=@Sifra_Nar AND Naracki.Broj_Nar=@Broj_Nar
  91454.             AND Naracki.Sifra_Kup=R.Sifra_Kup AND Naracki.Sifra_Obj IS NOT NULL AND R.Sifra_Obj IS NOT NULL 
  91455.             AND Naracki.Sifra_Obj=R.Sifra_Obj 
  91456.             AND R.Datum = DateAdd(Day, @Rbr, @DatIspOd)  --so obj.
  91457.     End
  91458.     SELECT @Dat_Isporaka=Dat_Isporaka FROM Naracki WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  91459. print @Dat_Isporaka
  91460.     IF @Dat_Isporaka IS NOT NULL BREAK
  91461.     SET @Rbr=@Rbr+1
  91462. End
  91463.  
  91464.  
  91465. Go
  91466. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_odredidatisporakaporuti1nar_samokazi]'))
  91467. drop procedure [dbo].[sp_odredidatisporakaporuti1nar_samokazi]
  91468.  
  91469. Go
  91470.  
  91471.  
  91472. CREATE   Procedure sp_OdrediDatIsporakaPoRuti1Nar_SamoKazi
  91473.     @NarId        int,
  91474.     @Dat_Isporaka    smalldatetime = Null OUTPUT
  91475. AS 
  91476.  
  91477. Declare @GledajDenoviNanapred int
  91478. set @GledajDenoviNanapred = 15
  91479.  
  91480. Declare @DatIspOd smalldatetime
  91481. Declare @DatIspDo smalldatetime
  91482. Declare @PocetenDatZaRuta smalldatetime
  91483. Declare @Sifra_Pat smallint
  91484. Declare @Sifra_Kup char(6)
  91485. Declare @Sifra_Obj as smallint
  91486.  
  91487.  
  91488. -- ODredi go PRVIOT DATUM ZA ISPORAKA od kj treba da se gleda.
  91489. -- Toj moze da e najrano UTRE
  91490. -- no isto taka najrano DVA DENA OD DATUMOT NA NARACKA
  91491. -- pa koj e POGOLEMIOT OD TIE DVA DATUMI, TOJ KE BIDE OSNOVA ZA NATAMOSNO PREBARUVANJE
  91492.  
  91493. -- (Faza 1) Bazirano na DENESNIOT DATUM, najrano moze da se isporacuva UTRE
  91494. SET @DatIspOd = dbo.fn_VratiDatum(GetDate())
  91495. SET @PocetenDatZaRuta = DateAdd(day, 1, @DatIspOd)
  91496.  
  91497. -- (Faza 2) Bazirano na DATUM NA NARACKA, najrano moze da se isporacuva 2 dena po narackata
  91498. Declare @Datum_Nar smalldatetime
  91499. Declare @Sifra_Nar_Nar smallint
  91500.  
  91501. select @Datum_Nar = Datum_Nar, @Sifra_Nar_Nar = Sifra_Nar
  91502.     from Naracki
  91503.     where NarId = @NarId
  91504.  
  91505. -- POvratnicite - denes se reailzira odma
  91506. if @Sifra_Nar_Nar = 86
  91507. begin
  91508.     set @Dat_Isporaka = dbo.fn_VratiDatum(GetDate())
  91509.     RETURN
  91510. end
  91511.  
  91512. -- Ne bi trebalo da e NULL, ama i ako e, najcesto e narackata od VCERA
  91513. if @Datum_Nar is null
  91514.     set @Datum_Nar = DateAdd(day, -1, dbo.fn_VratiDatum(GetDate()))
  91515.  
  91516. Declare @NajranMozenDatumSporedNar smalldatetime
  91517. set @NajranMozenDatumSporedNar = DateAdd(day, 2, @Datum_Nar)
  91518.  
  91519. if @NajranMozenDatumSporedNar > @PocetenDatZaRuta
  91520.     set @PocetenDatZaRuta = @NajranMozenDatumSporedNar
  91521. ---- Sega veke znaeme od koj den treba da poccneme
  91522.  
  91523. SET @DatIspDo = DateAdd(day, @GledajDenoviNanapred, @PocetenDatZaRuta)
  91524.  
  91525. SELECT @Sifra_Pat=Sifra_Pat, @Sifra_Kup=Sifra_Kup, @Sifra_Obj=Sifra_Obj 
  91526. FROM Naracki 
  91527. WHERE NarID = @NarId
  91528.  
  91529. set @Dat_Isporaka = null
  91530.  
  91531. IF @Sifra_Pat IS NULL OR @Sifra_Kup IS NULL 
  91532.     RETURN
  91533.  
  91534. CREATE TABLE #TmpRuta
  91535.     (Sifra_Pat smallint,
  91536.      DenOdNedela char(1),
  91537.      Sifra_Kup char(6),
  91538.      Sifra_Obj smallint,
  91539.      Datum smalldatetime )
  91540.  
  91541. CREATE TABLE #TmpPR 
  91542. (Sifra_Pat smallint, 
  91543. Datum smalldatetime)
  91544.  
  91545. Declare @Datum smalldatetime
  91546. Declare @Praznik as char(1)
  91547.  
  91548. Declare @DenOdNedelata smallint
  91549.  
  91550. -- STRATEGIJATA E:  Vo #TMPRUTA da se vnesat site mozni ruti vo nekoj nareden opseg datumi za patnikot
  91551. SET @Datum = @PocetenDatZaRuta
  91552.  
  91553. WHILE @Datum <= @DatIspDo         
  91554. BEGIN
  91555.  
  91556.     set @DenOdNedelata = dbo.fn_DenOdNedela(@Datum) 
  91557.  
  91558.     -- Specijalni ruti za fiksiran apsoluten datum
  91559.     INSERT INTO #TmpRuta (Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  91560.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj 
  91561.     FROM RutiZaDatum 
  91562.     WHERE Datum = @Datum AND Sifra_Pat = @Sifra_Pat
  91563.  
  91564.     -- Pazi na PRAZNICITE
  91565.     SELECT @Praznik = Sto 
  91566.     FROM RabKalendar 
  91567.     WHERE Datum = @Datum AND Sto='P'
  91568.  
  91569.     -- Ako ne e praznik, zemi ja vo predid rutata.
  91570.     -- (Ako e praznik, moze samo FIKSIRANITE RUTI da vazat, koi se gore obraboteni veke)
  91571.     IF @Praznik IS NULL    
  91572.     begin
  91573.         DELETE FROM #TmpPR
  91574.  
  91575.         -- Bidejki vo ista tabela cuvame ISTORIJA NA RUTI, mora da na najdeme rutata za ovoj
  91576.         -- den od nedelata koja e so NAJTAZE pocetok na vaznost
  91577.         INSERT INTO #TmpPR 
  91578.             SELECT Sifra_Pat, MAX(Datum_Od) 
  91579.             FROM RutiPlan 
  91580.             WHERE Sifra_Pat = @Sifra_Pat AND Datum_Od <= @Datum AND DenOdNedela = @DenOdNedelata
  91581.             GROUP BY Sifra_Pat
  91582.  
  91583.         -- Dodaj ja rutata soglasno den od nedelata, NAJTAZE sto e, pod uslov na toj den da nemalo SPECIJALNA RUTA
  91584.         INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  91585.             SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj 
  91586.             FROM RutiPlan R 
  91587.             INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  91588.             WHERE R.DenOdNedela = @DenOdNedelata AND R.Sifra_Pat = @Sifra_Pat
  91589.                 and R.Sifra_Pat NOT IN 
  91590.                     ( SELECT Sifra_Pat 
  91591.                       FROM RutiZaDatum 
  91592.                       WHERE Datum = @Datum )
  91593.     END
  91594.  
  91595.     SET @Datum = DateAdd(day, 1, @Datum)
  91596. END 
  91597.  
  91598. --select *
  91599. --from #TmpRuta
  91600.  
  91601. ----print @DatIspDo
  91602.  
  91603.  
  91604. Declare @Rbr as smallint
  91605. SET @Rbr = 1
  91606.  
  91607. Declare @DatProbaj smalldatetime
  91608. set @DatProbaj = @PocetenDatZaRuta
  91609.  
  91610. WHILE @DatProbaj <= @DatIspDo and @Dat_Isporaka is null
  91611. Begin
  91612.  
  91613. ----print 'Probuvam so '
  91614. ---print @DatProbaj
  91615.     if @Sifra_Obj is not null
  91616.         SELECT @Dat_Isporaka = R.Datum 
  91617.         FROM #TmpRuta R 
  91618.         WHERE R.Sifra_Kup = @Sifra_Kup AND R.Sifra_Obj = @Sifra_Obj AND R.Datum = @DatProbaj
  91619.     else
  91620.         SELECT @Dat_Isporaka = R.Datum 
  91621.         FROM #TmpRuta R 
  91622.         WHERE R.Sifra_Kup = @Sifra_Kup AND R.Datum = @DatProbaj
  91623.  
  91624.     ---print 'Ispor'
  91625.     ---print @Dat_Isporaka
  91626.  
  91627.     SET @DatProbaj = DateAdd(day, 1, @DatProbaj)
  91628. End
  91629.  
  91630.  
  91631.  
  91632. Go
  91633. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_optim_zaliha]'))
  91634. drop procedure [dbo].[sp_optim_zaliha]
  91635.  
  91636. Go
  91637.  
  91638.  
  91639.  
  91640. CREATE                      PROCEDURE sp_Optim_Zaliha
  91641.     @Sifra_OE     Smallint = Null, 
  91642.     @KoiOE     Varchar(300) = Null,
  91643.     @Pod1         Smallint = Null,
  91644.     @Pod2         Smallint = Null,
  91645.     @Pod3         Smallint = Null,
  91646.     @Pod4         Smallint = Null,
  91647.     @Pod5         Smallint = Null,
  91648.     @Sifra_Tip     Smallint = Null,
  91649.     @Datum_Od     Smalldatetime = Null,
  91650.     @Datum_Do     Smalldatetime = Null,
  91651.     @Sifra_Brand     Smallint = Null,
  91652.     @Sifra_Art_Od     Varchar(20) = Null,
  91653.     @Sifra_Art_Do     Varchar(20) = Null,
  91654.     @Sifra_Kup_Od Char(6) = Null,
  91655.     @Sifra_Kup_Do Char(6) = Null,
  91656.     @Podred     Char(1) = 'K',
  91657.     @Kolku     Int = Null,
  91658.     @Kto         Char(6) = Null,
  91659.     @Sifra_Gr     Char(3) = Null,
  91660.     @Sifra_Podg     Char(6) = Null,
  91661.     @Lokacija     Varchar(10) = Null,
  91662.     @TipKup     Varchar(11) = Null,
  91663.     @Komint_KObj     Char(1) = 'K',
  91664.     @Denovi     Smallint = Null,
  91665.     @Koi_Gradovi    Varchar(200) = Null,
  91666.     @Koi_Regioni     Varchar(200) = Null,
  91667.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  91668.     @Drugo1    smallint = Null,
  91669.     @Drugo2    smallint = Null,
  91670.     @Drugo3    smallint = Null,
  91671.     @Drugo4    smallint = Null,
  91672.     @Drugo5    smallint = Null,
  91673.     @TipDokProd    varchar(300) = Null,
  91674.     @ZalihaNaDat char(1) = 'N',
  91675.     @Sifra_Div    smallint = Null,
  91676.     @Koef        decimal(9,2) = Null,
  91677.     @PrikArtBezProd    char(1) = Null,    -- Z - so Zaliha bez prodazba
  91678.     @Aktiven    char(1) = Null        -- D/N 
  91679. AS
  91680.     Declare @SSQL Varchar(8000)
  91681.     Declare @SSQLUsl Varchar(8000)
  91682.     Declare @SSQLUslArt Varchar(8000)
  91683.  
  91684.     Set @SSQLUsl = ' ' 
  91685.     Set @SSQLUslArt = ' '
  91686.  
  91687.     Create Table #Promet
  91688.     (    Sifra_Art Varchar(20),
  91689.         Kolicina Decimal(18,6),
  91690.         Datum_Dok Smalldatetime,
  91691.         Dekada Smallint
  91692.     )
  91693.     If @Datum_Od Is Null
  91694.         Select @Datum_Od = Min(Datum_Dok) From Stavr
  91695.     If @Datum_Do Is Null
  91696.         Select @Datum_Do = Max(Datum_Dok) From Stavr
  91697.     If @PoKojDatum = 'V'
  91698.             If @Datum_Do Is Not Null
  91699.         Set @Datum_Do = @Datum_Do + 1
  91700.     Set @SSQL = 'Select S.Sifra_Art,
  91701.         Sum(S.Kolic) As Kolicina,
  91702.         S.Datum_Dok,
  91703.         dbo.fn_dekada_Round(''' + Cast(@Datum_Od As Varchar(30)) + ''', ' + 'S.Datum_Dok, ' + Cast(@Denovi As Varchar(3)) + ') As Dekada '
  91704.     Set @SSQL = @SSQL + 'From Stavr S
  91705.             Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  91706.             Inner Join Dokr D ON S.DokrID=D.DokrID '
  91707.     If @Sifra_Gr Is Not Null
  91708.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg 
  91709.                      Inner Join Grupi G ON P.Sifra_Gr=G.Sifra_Gr '
  91710.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  91711.          Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null)
  91712.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  91713.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  91714.     Set @SSQL = @SSQL + 'Where (K.Iskluci <> ''D'' Or K.Iskluci Is Null)  and D.Sifra_Za = ''1'' '
  91715.  
  91716.     If @Sifra_Art_Od Is Not NULL
  91717.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  91718.     If @Sifra_Art_Do Is Not NULL
  91719.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  91720.     If @Sifra_Brand Is Not NULL
  91721.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  91722.     If @Lokacija Is Not NULL
  91723.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Lokacija=''' + @Lokacija + ''' '
  91724.     If @Kto Is Not NULL
  91725.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Kto=' + @Kto + ' '
  91726.     If @Sifra_Podg Is Not NULL
  91727.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  91728.     If @Sifra_Gr Is Not NULL
  91729.         Set @SSQLUslArt = @SSQLUslArt + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  91730.     If @Sifra_Div Is Not NULL
  91731.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Sifra_Div=''' + Cast(@Sifra_Div As Varchar(6)) + ''' '
  91732.     If @Drugo1 Is Not NULL
  91733.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  91734.     If @Drugo2 Is Not NULL
  91735.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  91736.     If @Drugo3 Is Not NULL
  91737.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  91738.     If @Drugo4 Is Not NULL
  91739.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  91740.     If @Drugo5 Is Not NULL
  91741.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  91742.         If @Aktiven = 'N'
  91743.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Aktiven = ''N'' '
  91744.     Else If @Aktiven = 'D'
  91745.         Set @SSQLUslArt = @SSQLUslArt + ' And (K.Aktiven <> ''N'' Or K.Aktiven Is Null) '
  91746.     If @PoKojDatum = 'V'
  91747.           Begin
  91748.         If @Datum_Od Is Not NULL
  91749.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  91750.         If @Datum_Do Is Not NULL
  91751.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  91752.           End
  91753.     Else 
  91754.           Begin
  91755.         If @Datum_Od Is Not NULL
  91756.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  91757.         If @Datum_Do Is Not NULL
  91758.             Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  91759.            End
  91760.     If @Sifra_Kup_Od Is Not NULL
  91761.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  91762.     If @Sifra_Kup_Do Is Not NULL
  91763.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  91764.     If @Pod1 Is Not NULL
  91765.            Begin
  91766.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  91767.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  91768.            End
  91769.     If @Pod2 Is Not NULL
  91770.            Begin
  91771.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  91772.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  91773.            End
  91774.     If @Pod3 Is Not NULL
  91775.            Begin
  91776.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  91777.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  91778.            End
  91779.     If @Pod4 Is Not NULL
  91780.            Begin
  91781.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  91782.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  91783.            End
  91784.     If @Pod5 Is Not NULL
  91785.            Begin
  91786.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  91787.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  91788.            End
  91789.     If @Sifra_Tip Is Not NULL
  91790.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  91791.     If @TipKup Is Not NULL
  91792.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  91793.     If @Sifra_OE Is Not NULL    
  91794.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  91795.     If @KoiOE Is Not NULL
  91796.            Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  91797.     If @Koi_Gradovi Is Not NULL    
  91798.         Begin
  91799.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  91800.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  91801.         End
  91802.     If @Koi_Regioni Is Not NULL    
  91803.         Begin
  91804.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  91805.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  91806.         End
  91807.     If @TipDokProd Is Not NULL
  91808.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok In (' + @TipDokProd + ') '
  91809.  
  91810.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslArt + ' Group By S.Sifra_Art, S.Datum_Dok '
  91811.     Insert #Promet    Exec(@SSQL)
  91812.  
  91813.     Create Table #Tab
  91814.     (
  91815.         Sifra_art        varchar(20),
  91816.         Kolicina        decimal(18,6),
  91817.         MaxVoDekada    decimal(18,4),
  91818.         DekadaSoMaxProd int,
  91819.         DatPrvaProd    smalldatetime,
  91820.         DatPoslProd    smalldatetime,
  91821.         Dekadi        Int,
  91822.     )
  91823.     Set @SSQL = 'Select P.Sifra_Art,
  91824.             Round(Sum(Kolicina), 4) As Kolicina,
  91825.             0  As MaxVoDekada, 0 AS DekadaSoMaxProd, 
  91826.             Min(Datum_Dok) As DatPrvaProd,
  91827.             Max(Datum_Dok) As DatPoslProd,
  91828.             Count(Distinct(Dekada)) As Dekadi
  91829.         From #Promet P '
  91830.     Set @SSQL = @SSQL + 'Group By P.Sifra_Art '
  91831.     Insert Into #Tab Exec(@SSQL)
  91832.  
  91833.     Create Table #Dekada
  91834.     (
  91835.      Sifra_Art     varchar(20),
  91836.      Dekada    smallint,
  91837.      Kolic        decimal(18,6)
  91838.     )
  91839.     Insert Into #Dekada 
  91840.     Select Sifra_art, Dekada, Sum(Kolicina)
  91841.     From #Promet 
  91842.     Group By Sifra_art, Dekada
  91843.  
  91844.     Create Table #Dek
  91845.     (
  91846.      Sifra_Art     varchar(20),
  91847.      Kolic        decimal(18,6)
  91848.     )
  91849.     Insert Into #Dek
  91850.     Select Sifra_art, Max(Kolic)
  91851.     From #Dekada
  91852.     Group By #Dekada.Sifra_art    
  91853.  
  91854.     Update #Tab Set #Tab.MaxVoDekada = #Dek.kolic From #Dek Where #Tab.Sifra_Art = #Dek.Sifra_art 
  91855.     Update #Tab Set #Tab.DekadaSoMaxProd = #Dekada.Dekada From #Dek, #Dekada 
  91856.     Where #Dekada.Sifra_Art=#Dek.Sifra_Art AND #Dekada.Kolic=#Dek.Kolic AND #Tab.Sifra_Art = #Dekada.Sifra_art  
  91857.     
  91858.     CREATE TABLE #Zal
  91859.     (Sifra_Art    varchar(20),
  91860.     Zaliha        decimal(18,6))
  91861.     IF @ZalihaNaDat='D'
  91862.         SET @SSQL = 'SELECT S.Sifra_Art, SUM(CASE S.VlIzl WHEN ''V'' THEN S.Kolic ELSE S.Kolic*-1 END) 
  91863.                 FROM Stavr S 
  91864.                 Inner join Katart K On K.Sifra_Art = S.Sifra_Art '
  91865.     Else
  91866.         SET @SSQL = 'SELECT S.Sifra_Art, SUM(S.Vlez - S.Izlez) 
  91867.                 FROM Soart S
  91868.                 Inner join Katart K On K.Sifra_Art = S.Sifra_Art '
  91869.     If @Sifra_Gr Is Not Null
  91870.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg 
  91871.                      Inner Join Grupi G ON P.Sifra_Gr=G.Sifra_Gr '
  91872.  
  91873.     If @PrikArtBezProd = 'Z'
  91874.         Set @SSQL = @SSQL + ' Where 1=1 '
  91875.     Else    
  91876.         Set @SSQL = @SSQL + ' WHERE S.Sifra_Art IN (SELECT Sifra_Art FROM #Tab) '
  91877.  
  91878.     If @Sifra_OE Is Not Null
  91879.         Set @SSQL = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  91880.     If @KoiOE Is Not Null
  91881.         Set @SSQL = @SSQL + ' And S.Sifra_OE In (' + @KoiOE + ') '
  91882.     IF @ZalihaNaDat='D' Set @SSQL = @SSQL + ' AND S.Datum_Dok<=''' +cast(@Datum_Do as varchar(35))+''' '
  91883.  
  91884.     If @PrikArtBezProd = 'Z'
  91885.         Set @SSQL = @SSQL + @SSQLUslArt
  91886.  
  91887.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art'
  91888.     INSERT INTO #Zal EXEC (@SSQL)
  91889.  
  91890.        If @Koef Is null 
  91891.         Set @Koef = 0
  91892.  
  91893.     Set @SSQL = ' Select P.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, K.Alt_Ime, K.Alt_Ime2, K.Alt_Edmera, K.ImaBroevi, K.ImaKomerc, K.Tezina,
  91894.             Kolicina, MaxVoDekada, DatPrvaProd, DatPoslProd, Dekadi, P.DekadaSoMaxProd, Round(Z.Zaliha,4) Zaliha, K.Alt_Sifra,
  91895.             K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, K.DogCena, K.MalCena, K.GotCena, K.Nom, ' + Cast(@Koef as varchar(10)) + ' Koef
  91896.     From #Tab P
  91897.     Inner Join Katart K On P.Sifra_Art=K.Sifra_Art 
  91898.     LEFT OUTER JOIN #Zal Z ON P.Sifra_Art=Z.Sifra_Art
  91899.     Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg
  91900.     Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr ' 
  91901.     If @PrikArtBezProd = 'Z'
  91902.     Begin
  91903.         Set @SSQL = @SSQL + ' Union Select Z.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, K.Alt_Ime, K.Alt_Ime2, K.Alt_Edmera, K.ImaBroevi, K.ImaKomerc, K.Tezina,
  91904.             0 Kolicina, 0 MaxVoDekada, Null DatPrvaProd, Null DatPoslProd, Null Dekadi, Null DekadaSoMaxProd, Round(Z.Zaliha,4) Zaliha, K.Alt_Sifra,
  91905.             K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, K.DogCena, K.MalCena, K.GotCena, K.Nom, ' + Cast(@Koef as varchar(10)) + ' Koef
  91906.         From #Zal Z
  91907.         Inner Join Katart K On Z.Sifra_Art=K.Sifra_Art 
  91908.         Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg
  91909.         Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr 
  91910.         Where Z.Sifra_Art Not In (Select Sifra_Art From #Tab) ' 
  91911.     End
  91912.     If @Podred = 'S'
  91913.         Set @SSQL = @SSQL + ' Order By P.Sifra_Art '
  91914.     Else If @Podred = 'A'
  91915.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  91916.     Else If @Podred = 'K'
  91917.         Set @SSQL = @SSQL + ' Order By P.Kolicina Desc, MaxVoDekada Desc, Dekadi Desc '
  91918. print @SSQL
  91919.     Exec(@SSQL)
  91920. Go
  91921. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_optzal_dozv]'))
  91922. drop procedure [dbo].[sp_optzal_dozv]
  91923.  
  91924. Go
  91925.  
  91926.  
  91927. create   PROCEDURE sp_OptZal_Dozv
  91928.     @Sifra_OE    Smallint,
  91929.     @Sifra_Art    Varchar(20),
  91930.     @OptDozvoleno    Char(1) = NULL OUTPUT
  91931. AS
  91932.     Select @OptDozvoleno=Dozvoleno From OptZalPoOe With(NOLOCK)
  91933.     Where Sifra_Oe=@Sifra_Oe And Sifra_Art=@Sifra_Art
  91934.  
  91935.  
  91936.  
  91937. Go
  91938. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_optzaliha]'))
  91939. drop procedure [dbo].[sp_optzaliha]
  91940.  
  91941. Go
  91942.  
  91943.  
  91944. CREATE                    PROCEDURE sp_OptZaliha
  91945.     @Datum_Od     Smalldatetime,
  91946.     @Datum_Do     Smalldatetime,
  91947.     @Sifra_OE     varchar(200) = NULL,
  91948.     @KF_OE        char(1)  = 'N',
  91949.     @Sifra_Podg   varchar(200) = NULL,
  91950.     @KF_Podg      char(1) = 'N',
  91951.     @Sifra_Gr     varchar(200) = NULL,
  91952.     @KF_Gr        char(1) = 'N',
  91953.     @Kto          varchar(200) = NULL,
  91954.     @KF_Kto       char(1) = 'N',
  91955.     @Sifra_Brand  varchar(200) = NULL,
  91956.     @KF_Brand     char(1) = 'N',
  91957.     @Lokacija     varchar(10) = NULL,
  91958.     @KF_Lokacija  char(1) = 'N',
  91959.     @SoDanok      Char(1) = 'D',
  91960.     @IskluciKup   varchar(200) = '660660, 660663, 021000',
  91961.     @TipDokProd   varchar(200) = '100,101,60'
  91962. AS
  91963.     Declare @SSQL Varchar(8000)
  91964.     Declare @SSQL1 Varchar(8000)
  91965.     CREATE TABLE #TmpProd
  91966.     (Sifra_Art    varchar(20),
  91967.      Prodazba    Decimal(18,2)
  91968.     )
  91969.     Set @SSQL = 'SELECT S.Sifra_Art, Sum(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa, ''' + @SoDanok+''')) As Prodazba '
  91970.     Set @SSQL1 = ' From Stavr S
  91971.             Inner Join Katart K On S.Sifra_Art=K.Sifra_Art 
  91972.             Inner Join Dokr D On S.DokrID = D.DokrID '
  91973.     If @Sifra_gr Is Not NULL
  91974.         Set @SSQL1 = @SSQL1 + ' Inner Join PodGrupi P ON K.Sifra_podg = P.Sifra_Podg '
  91975.     Set @SSQL1 = @SSQL1 + ' Where K.Iskluci <> ''D'' And S.VlIzl = ''I'' And (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''') 
  91976.             And S.Sifra_Dok IN (' + @TipDokProd + ') '
  91977.     If @Datum_Od Is Not NULL
  91978.         Set @SSQL1 = @SSQL1 + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  91979.     If @Datum_Do Is Not NULL
  91980.         Set @SSQL1 = @SSQL1 + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '    
  91981.     If @Sifra_Podg Is Not NULL
  91982.          Begin
  91983.         If @KF_Podg = 'N'
  91984.                 Set @SSQL1 = @SSQL1 + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  91985.         Else
  91986.             Set @SSQL1 = @SSQL1 + 'And K.Sifra_Podg NOT IN (' + @Sifra_Podg  + ') '
  91987.         End
  91988.     If @Sifra_Gr Is Not NULL
  91989.         Begin
  91990.         If @KF_Gr = 'N'
  91991.                 Set @SSQL1 = @SSQL1 + 'And P.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  91992.         Else
  91993.             Set @SSQL1 = @SSQL1 + 'And P.Sifra_Gr NOT IN (' + @Sifra_Gr  + ') '
  91994.         End
  91995.     If @Sifra_OE Is Not NULL    
  91996.         Begin
  91997.         If @KF_OE = 'N'
  91998.                 Set @SSQL1 = @SSQL1 + 'And S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  91999.         Else
  92000.             Set @SSQL1 = @SSQL1 + 'And S.Sifra_OE  NOT IN (' + @Sifra_OE  + ') '
  92001.         End
  92002.     If @Kto Is Not NULL
  92003.         Begin
  92004.         If @KF_Kto = 'N'
  92005.                 Set @SSQL1 = @SSQL1 + 'And S.Dobav IN (' + @Kto  + ') '
  92006.         Else
  92007.             Set @SSQL1 = @SSQL1 + 'And S.Dobav NOT IN (' + @Kto  + ') '
  92008.         End
  92009.     If @Sifra_Brand Is Not NULL
  92010.          Begin
  92011.         If @KF_Brand = 'N'
  92012.                 Set @SSQL1 = @SSQL1 + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  92013.         Else
  92014.             Set @SSQL1 = @SSQL1 + 'And K.Sifra_Drg NOT IN (' + @Sifra_Brand  + ') '
  92015.         End
  92016.     If @Lokacija Is Not NULL
  92017.         Begin
  92018.             If @KF_Lokacija  = 'N'
  92019.                 Set @SSQL1 = @SSQL1 + 'And K.Lokacija = ''' + @Lokacija + ''' '
  92020.             Else
  92021.                 Set @SSQL1 = @SSQL1 + 'And K.Lokacija <> ''' + @Lokacija + ''' '
  92022.         End    
  92023.     Set @SSQL = @SSQL + @SSQL1 + ' Group By S.Sifra_Art'
  92024.     INSERT INTO #TmpProd EXEC (@SSQL)
  92025.     CREATE TABLE #TmpProdMark
  92026.     (Sifra_OE    smallint,
  92027.      Sifra_Art    varchar(20),
  92028.      Kolicina    Decimal(18,2)
  92029.     )
  92030.     Set @SSQL = 'Select S.Sifra_OE, S.Sifra_Art, Sum(S.Kolic) As Kolicina '
  92031.     Set @SSQL = @SSQL + @SSQL1 + ' Group By S.Sifra_oe, S.Sifra_Art '
  92032.     INSERT INTO #TmpProdMark Exec(@SSQL)
  92033.     SELECT M.*, V.Prodazba, A.ImeArt, O.ImeOrg
  92034.     FROM #TmpProdMark M
  92035.     INNER JOIN #TmpProd V ON V.Sifra_Art = M.Sifra_Art
  92036.     INNER JOIN KatArt A ON M.Sifra_Art = A.Sifra_Art
  92037.     INNER JOIN OrgEd O ON M.Sifra_OE = O.Sifra_OE
  92038.  
  92039.  
  92040.  
  92041. Go
  92042. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_optzalpooe]'))
  92043. drop procedure [dbo].[sp_optzalpooe]
  92044.  
  92045. Go
  92046. CREATE PROCEDURE sp_OptZalPoOe
  92047.     @Sifra_Oe    smallint,
  92048.     @Sifra_Art    varchar(20)
  92049. AS
  92050.     Delete OptZalPoOe    
  92051.     Where Sifra_Oe = @Sifra_Oe and Sifra_Art = @Sifra_Art 
  92052.     Return @@Error
  92053.  
  92054.  
  92055.  
  92056. Go
  92057. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_orc]'))
  92058. drop procedure [dbo].[sp_orc]
  92059.  
  92060. Go
  92061.  
  92062.  
  92063. CREATE         PROCEDURE sp_ORC
  92064.     @APG Char(1) = Null,
  92065.     @Datum_Od Smalldatetime = Null,
  92066.     @Datum_Do Smalldatetime = Null,
  92067.     @KoiOE Varchar(300) = Null,
  92068.     @KoiGr Varchar(200) = Null,
  92069.     @KoiPodg Varchar(200) = Null,
  92070.     @KoiBrand Varchar(200) = Null,
  92071.     @KoiKta Varchar(200) = Null,
  92072.     @Lokacija Varchar(20) = Null,
  92073.     @SoDDV Char(1) = 'D',
  92074.     @KFKoiOE Char(1) = Null,
  92075.     @KFKoiGr Char(1) = Null,
  92076.     @KFKoiPodg Char(1) = Null,
  92077.     @KFKoiBrand Char(1) = Null,
  92078.     @KFKoiKta Char(1) = Null,
  92079.     @Sifra_Kup Char(6) = null,
  92080.     @Sifra_Obj smallint = null,
  92081.     @SoFinRazl Char(1) = Null,
  92082.     @Sifra_Art_Od Varchar(20)= Null,
  92083.     @Sifra_Art_Do Varchar(20) = Null,
  92084.     @ADrugo1    smallint = Null,
  92085.     @ADrugo2    smallint = Null,
  92086.     @ADrugo3    smallint = Null,
  92087.     @ADrugo4    smallint = Null,
  92088.     @ADrugo5    smallint = Null,
  92089.     @TipDokProd    varchar(300) = Null
  92090. AS
  92091.     Declare @SSQL Varchar(4000)
  92092.     CREATE TABLE #TmpArt
  92093.     (Sifra_Art varchar(20), 
  92094.     ImeArt varchar(40), 
  92095.     Sifra_Podg char(6), 
  92096.     Sifra_Gr char(3),
  92097.     Ime_Podg varchar(50),
  92098.     Ime_Gr char(50))    
  92099.     CREATE NONCLUSTERED INDEX IX_TmpArt ON #TmpArt
  92100.         (Sifra_Art) ON [PRIMARY]
  92101.     Create Table #Tab
  92102.     (Sifra_Art    varchar(20),
  92103.      Dobav        varchar(6),
  92104.      NabVr        decimal(18,6),
  92105.      ProdVr        decimal(18,6),
  92106.      Kolic        decimal(18,6))
  92107.     Declare @SOsn Varchar(2000) 
  92108.     SET @SOsn = ''
  92109.     If @KoiPodg Is Not NULL
  92110.         Begin
  92111.         If @KFKoiPodg = 'N'
  92112.                 Set @SOsn = @SOsn + 'And K.Sifra_Podg IN (' + @KoiPodg  + ') '
  92113.         Else
  92114.             Set @SOsn = @SOsn + 'And K.Sifra_Podg NOT IN (' + @KoiPodg  + ') '
  92115.         End
  92116.     If @KoiGr Is Not NULL
  92117.         Begin
  92118.         If @KFKoiGr = 'N'
  92119.                 Set @SOsn = @SOsn + 'And P.Sifra_Gr IN (' + @KoiGr  + ') '
  92120.         Else
  92121.             Set @SOsn = @SOsn + 'And P.Sifra_Gr NOT IN (' + @KoiGr  + ') '
  92122.         End
  92123.     If @KoiBrand Is Not NULL
  92124.         Begin
  92125.         If @KFKoiBrand = 'N'
  92126.                 Set @SOsn = @SOsn + 'And K.Sifra_Drg IN (' + @KoiBrand  + ') '
  92127.         Else
  92128.             Set @SOsn = @SOsn + 'And K.Sifra_Drg NOT IN (' + @KoiBrand  + ') '
  92129.         End
  92130.     If @Lokacija Is Not NULL
  92131.         Set @SOsn = @SOsn + 'And K.Lokacija <> ''' + @Lokacija + ''' '
  92132.     If @KoiKta Is Not NULL        
  92133.         Begin
  92134.         If @KFKoiKta = 'N'
  92135.                Set @SOsn = @SOsn + 'And K.Kto IN (' + @KoiKta  + ') '
  92136.         Else
  92137.             Set @SOsn = @SOsn + 'And K.Kto NOT IN (' + @KoiKta  + ') '
  92138.         End                
  92139.     If @Sifra_Art_Od Is Not Null
  92140.         Set @SOsn = @SOsn + ' And K.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  92141.     If @Sifra_Art_Do Is Not Null
  92142.         Set @SOsn = @SOsn + ' And K.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  92143.     If @ADrugo1 Is Not NULL
  92144.         Set @SOsn = @SOsn + ' And K.Drugo1=' + Cast(@ADrugo1 As Varchar(6)) + ' '
  92145.     If @ADrugo2 Is Not NULL
  92146.         Set @SOsn = @SOsn + ' And K.Drugo2=' + Cast(@ADrugo2 As Varchar(6)) + ' '
  92147.     If @ADrugo3 Is Not NULL
  92148.         Set @SOsn = @SOsn + ' And K.Drugo3=' + Cast(@ADrugo3 As Varchar(6)) + ' '
  92149.     If @ADrugo4 Is Not NULL
  92150.         Set @SOsn = @SOsn + ' And K.Drugo4=' + Cast(@ADrugo4 As Varchar(6)) + ' '
  92151.     If @ADrugo5 Is Not NULL
  92152.         Set @SOsn = @SOsn + ' And K.Drugo5=' + Cast(@ADrugo5 As Varchar(6)) + ' '
  92153.     SET @SSQL = 'SELECT K.Sifra_Art, K.ImeArt, K.Sifra_Podg, P.Sifra_Gr, P.Ime_Podg, G.Ime_Gr
  92154.          FROM KatArt K 
  92155.          INNER JOIN Podgrupi P ON K.Sifra_Podg=P.SifRa_Podg 
  92156.          INNER JOIN Grupi G ON G.Sifra_Gr=P.Sifra_Gr 
  92157.          WHERE K.SMatUsl=''M'' ' + @SOsn
  92158.     INSERT INTO #TmpArt (Sifra_Art, ImeArt, Sifra_Podg, Sifra_Gr, Ime_Podg, Ime_Gr)EXEC (@SSQL)
  92159.     Set @SSQL = 'Select S.Sifra_Art, S.Dobav, '
  92160.     If @SoDDV = 'N'
  92161.         Set @SSQL = @SSQL + 'Round(Sum(S.NabCena*S.Kolic), 2) NabVr,'
  92162.     Else If @SoDDV = 'D'
  92163.         Set @SSQL = @SSQL + 'Round(Sum(S.NabCena*(1+S.POsn/100)*S.Kolic), 2) NabVr, '
  92164.     If @SoDDV = 'N'
  92165.         Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) ProdVr, '
  92166.     Else If @SoDDV = 'D'
  92167.         Set @SSQL = @SSQL + 'Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) ProdVr, '
  92168.     Set @SSQL = @SSQL + 'Round(Sum(S.Kolic), 2) Kolic From Stavr S
  92169.         Inner Join #TmpArt K On S.Sifra_Art=K.Sifra_Art 
  92170.         Inner Join Dokr D On D.DokrID = S.DokrID '
  92171.     Set @SSQL = @SSQL + 'Where S.VlIzl=''I'' And (S.ImaDodatna Is Null  OR S.ImaDodatna ='' '') '
  92172.     If @Datum_Od Is Not Null
  92173.         Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  92174.     If @Datum_Do Is Not Null
  92175.         Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  92176.     If @Sifra_kup Is Not Null
  92177.         Set @SSQL = @SSQL + 'And D.Sifra_Kup = ' + @Sifra_Kup + ' '
  92178.     If @Sifra_Obj Is Not Null
  92179.         Set @SSQL = @SSQL + 'And D.Sifra_Obj = ''' + Cast(@Sifra_Obj As Varchar(10)) + ''' '
  92180.     If @KoiOE Is Not Null
  92181.         Begin
  92182.         If @KFKoiOE = 'N'  
  92183.             Set @SSQL = @SSQL + 'And S.Sifra_OE In (' + @KoiOE + ') '
  92184.         ELSE
  92185.             Set @SSQL = @SSQL + 'And S.Sifra_OE NOT In (' + @KoiOE + ') '
  92186.         End
  92187.     If @TipDokProd Is Not Null
  92188.         Set @SSQL = @SSQL + ' And S.Sifra_Dok In (' + @TipDokProd + ') '
  92189.     Set @SSQL = @SSQL + 'Group By S.Sifra_Art, S.Dobav, K.Sifra_Podg, K.Sifra_Gr
  92190.         Order By S.Sifra_Art '
  92191.     Insert Into #Tab Exec(@SSQL)
  92192.     If @SoFinRazl = 'D' And @Sifra_Kup Is Null And @Sifra_Obj Is Null     -- Finansiski razliki od FinRazl
  92193.     Begin
  92194.         Set @SSQL = ' Select R.Sifra_Art, Null, '
  92195.         If  @SoDDV = 'D'
  92196.             Set @SSQL = @SSQL + ' Sum(R.Iznos_Razl*(1+R.Posn/100)), '
  92197.         Else
  92198.             Set @SSQL = @SSQL + ' Sum(R.Iznos_Razl), '
  92199.         Set @SSQL = @SSQL + ' 0, 0         From RazlFin R
  92200.                 Inner Join #TmpArt K On K.Sifra_Art=R.Sifra_Art
  92201.                 Where R.VlIzl=''I'' '
  92202.         If @Datum_Od Is Not Null
  92203.             Set @SSQL = @SSQL + 'And R.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  92204.         If @Datum_Do Is Not Null
  92205.             Set @SSQL = @SSQL + 'And R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  92206.         If @KoiOE Is Not Null
  92207.         Begin
  92208.             If @KFKoiOE = 'N'  
  92209.                 Set @SSQL = @SSQL + 'And R.Sifra_OE In (' + @KoiOE + ') '
  92210.             ELSE
  92211.                     Set @SSQL = @SSQL + 'And R.Sifra_OE NOT In (' + @KoiOE + ') '
  92212.         End
  92213.         Set @SSQL = @SSQL + 'Group By R.Sifra_Art    Order By R.Sifra_Art '
  92214.         Insert Into #Tab Exec(@SSQL)
  92215.     End
  92216.     If @SoFinRazl = 'D'
  92217.     Begin
  92218.         Select T.Sifra_Art, K.ImeArt, null as Dobav, Null as ImeKup, K.Sifra_Podg, K.Ime_Podg, K.Sifra_Gr, K.Ime_Gr, 
  92219.             Sum(T.NabVr) NabVr, Sum(T.ProdVr) ProdVr, Sum(T.Kolic) Kolic,
  92220.             A.Kto, Dob.ImeKup ImeKto, A.Sifra_Drg, B.Ime
  92221.         From #Tab T
  92222.         Inner Join #TmpArt K On T.Sifra_Art=K.Sifra_Art
  92223.         Inner Join Katart A On A.Sifra_Art = T.Sifra_Art
  92224.         Left Outer Join Komint Dob On Dob.Sifra_Kup=A.Kto 
  92225.         Left Outer Join DrgPodel B On B.Sifra_Drg = A.Sifra_Drg
  92226.         Group By T.Sifra_Art, K.ImeArt,K.Sifra_Podg, K.Ime_Podg, K.Sifra_Gr, K.Ime_Gr, A.Kto, Dob.ImeKup, A.Sifra_Drg, B.Ime
  92227.     End
  92228.     Else
  92229.     Begin
  92230.         Select T.Sifra_Art, K.ImeArt, T.Dobav, Kup.ImeKup, K.Sifra_Podg, K.Ime_Podg, K.Sifra_Gr, K.Ime_Gr, T.NabVr, T.ProdVr, T.Kolic,
  92231.             A.Kto, Dob.ImeKup ImeKto, A.Sifra_Drg, B.Ime
  92232.         From #Tab T
  92233.         Inner Join #TmpArt K On T.Sifra_Art=K.Sifra_Art
  92234.         Left Outer Join Komint Kup On T.Dobav=Kup.Sifra_Kup 
  92235.         Inner Join Katart A On A.Sifra_Art = T.Sifra_Art
  92236.         Left Outer Join Komint Dob On Dob.Sifra_Kup=A.Kto 
  92237.         Left Outer Join DrgPodel B On B.Sifra_Drg = A.Sifra_Drg
  92238.     End
  92239.  
  92240.  
  92241.  
  92242.  
  92243. Go
  92244. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_osnkod]'))
  92245. drop procedure [dbo].[sp_osnkod]
  92246.  
  92247. Go
  92248.  
  92249. CREATE  PROCEDURE sp_OsnKod
  92250.     @Nom As Varchar(50)
  92251. As
  92252.     Select Inv_broj, Ime From OsnSred Where BarKod=@Nom
  92253. Return @@Error
  92254.  
  92255.  
  92256.  
  92257. Go
  92258. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_osnsred_pregled]'))
  92259. drop procedure [dbo].[sp_osnsred_pregled]
  92260.  
  92261. Go
  92262. CREATE      PROCEDURE sp_OsnSred_Pregled
  92263.     @Inv_BrojOd    char(10) = Null, 
  92264.     @Inv_BrojDo    char(10) = Null, 
  92265.     @Sifra_Lok    char(3) = Null, 
  92266.     @Sifra_MakLok    char(10) = Null, 
  92267.     @Sifra_MikLok    char(10) = Null, 
  92268.     @Delov_God    smallint,         -- mora 
  92269.     @Sifra_Amor    char(3) = Null,
  92270.     @DatNabOd    smalldatetime = Null,
  92271.     @DatNabDo    smalldatetime = Null,
  92272.     @DatAktOd    smalldatetime = Null,
  92273.     @DatAktDo    smalldatetime = Null,
  92274.     @DatPrestOd    smalldatetime = Null,
  92275.     @DatPrestDo    smalldatetime = Null
  92276. /*
  92277. --    @KojIzv        char(1) = 'S',  -- sostojba na osn sred,        N - Novonabaveni
  92278.     @PrikNovoNab        char(1) = 'D',  -- Novonabaveni
  92279.     @PrikNabOdPrethGod    char(1) = 'D',  -- Prethodno Nabaveni
  92280.     @PrikOtpisani        char(1) = 'N'   -- Otpisani
  92281. */
  92282.  AS
  92283.     Declare @SSQL as Varchar(8000)
  92284.     Create Table #OS
  92285.     (
  92286.      Inv_Broj    char(10)
  92287.     )
  92288.     Set @SSQL = ' Select O.Inv_Broj
  92289.             From OsnSred O
  92290.             Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  92291.             Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  92292.             Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  92293.             Where 1=1 '
  92294.     If @Inv_BrojOd Is Not null
  92295.         Set @SSQL = @SSQL + ' And O.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  92296.     If @Inv_BrojDo Is Not null
  92297.         Set @SSQL = @SSQL + ' And O.Inv_Broj <= ''' + @Inv_BrojDo + ''' '
  92298.     If @Sifra_Lok Is Not null
  92299.         Set @SSQL = @SSQL + ' And L.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  92300.     If @Sifra_MakLok Is Not null
  92301.         Set @SSQL = @SSQL + ' And MAKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  92302.     If @Sifra_MikLok Is Not null
  92303.         Set @SSQL = @SSQL + ' And MIKL.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  92304.     If @Sifra_Amor Is Not null
  92305.         Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  92306.     If @DatNabOd Is Not null
  92307.         Set @SSQL = @SSQL + ' And (O.DatNab >= ''' + cast(@DatNabOd as varchar(30)) + ''') '
  92308.     If @DatNabDo Is Not null
  92309.         Set @SSQL = @SSQL + ' And (O.DatNab <= ''' + cast(@DatNabDo as varchar(30)) + ''') '
  92310.     If @DatAktOd Is Not null
  92311.         Set @SSQL = @SSQL + ' And O.DatAkt >= ''' + cast(@DatAktOd as varchar(30)) + ''' '
  92312.     If @DatAktDo Is Not null
  92313.         Set @SSQL = @SSQL + ' And O.DatAkt <= ''' + cast(@DatAktDo as varchar(30)) + ''' '
  92314.     If @DatPrestOd Is Not null
  92315.         Set @SSQL = @SSQL + ' And O.DatPrest >= ''' + cast(@DatPrestOd as varchar(30)) + ''' '
  92316.     If @DatPrestDo Is Not null
  92317.         Set @SSQL = @SSQL + ' And O.DatPrest <= ''' + cast(@DatPrestDo as varchar(30)) + ''' '
  92318. print @SSQL
  92319.     Insert Into #OS Exec(@SSQL)
  92320.     Create Table #PocSostOsnSred
  92321.     (
  92322.      Inv_Broj     char(10),
  92323.      OrigNabVr    decimal(18,2),
  92324.      Osn_Amor    decimal(18,2),
  92325.      Otpis_Pret    decimal(18,2)
  92326.     )
  92327.     Insert Into #PocSostOsnSred
  92328.     Select Inv_Broj, Orig_Nab_Vr, Osn_Amor, Otpis_Pret
  92329.     From StavOsnSred
  92330.     Where Tip_StaOsn In ('I', 'P') And Inv_Broj In (Select Inv_Broj From #OS)  
  92331.     Set @SSQL = ' Select OS.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok, 
  92332.         (Case When P.Osn_Amor Is Not Null Then P.Osn_Amor Else PS.Osn_Amor End) Osn_Amor, P.Otpis_Pret, Sum(S.Osn_Amor) Tek_Osn_Amor,
  92333.         O.Ime, O.Opis, MIKL.Ime_MikLok, MIKL.Sifra_MakLok, MAKL.Ime_MakLok, MAKL.Sifra_Lok, L.ImeLok, A.Ime Ime_AmorGrp, K.ImeAnal, S.Tip_StaOsn,
  92334.         O.BarKod, D.Sifra_Nal, D.Broj_Nal, O.DatNab, O.DatAkt, S.Datum_Dok, PS.OrigNabVr, O.DatPrest, O.Resen
  92335.     From #OS OS
  92336.     Inner Join OsnSred O On O.Inv_Broj=OS.Inv_Broj
  92337.     Left Outer Join PocSostOsn P On P.Inv_Broj=O.Inv_Broj And P.Godina=' + cast(@Delov_God as varchar(4)) + ' 
  92338.     Left Outer Join #PocSostOsnSred PS On PS.Inv_Broj=O.Inv_Broj
  92339.     Left Outer Join StavOsnSred  S On S.Inv_Broj=O.Inv_Broj And S.Tip_StaOsn In (''D'', ''P'') and S.Delov_God= ' + Cast(@Delov_God as varchar(4)) + '
  92340.     Left Outer Join DokOsnSred D On D.DokOID=S.DokOID
  92341.     Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  92342.     Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  92343.     Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  92344.     Left Outer Join AmorGrp A On A.Sifra_Amor=O.Sifra_Amor
  92345.     Left Outer Join Anal K On K.Kto_Anal=O.Kto_Anal
  92346.     Group By OS.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok, (Case When P.Osn_Amor Is Not Null Then P.Osn_Amor Else PS.Osn_Amor End), P.Otpis_Pret,
  92347.         O.Ime, O.Opis, MIKL.Ime_MikLok, MIKL.Sifra_MakLok, MAKL.Ime_MakLok, MAKL.Sifra_Lok, L.ImeLok, A.Ime, K.ImeAnal, S.Tip_StaOsn, O.BarKod,
  92348.         D.Sifra_Nal, D.Broj_Nal, S.Datum_Dok, O.DatNab, O.DatAkt, PS.OrigNabVr, O.DatPrest, O.Resen  '
  92349. /*    If @Inv_BrojOd Is Not null
  92350.         Set @SSQL = @SSQL + ' And O.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  92351.     If @Inv_BrojDo Is Not null
  92352.         Set @SSQL = @SSQL + ' And O.Inv_Broj <= ''' + @Inv_BrojDo + ''' '
  92353.     If @Sifra_Lok Is Not null
  92354.         Set @SSQL = @SSQL + ' And L.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  92355.     If @Sifra_MakLok Is Not null
  92356.         Set @SSQL = @SSQL + ' And MAKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  92357.     If @Sifra_MikLok Is Not null
  92358.         Set @SSQL = @SSQL + ' And MIKL.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  92359.     If @Sifra_Amor Is Not null
  92360.         Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  92361.     If @DatNabOd Is Not null
  92362.         Set @SSQL = @SSQL + ' And (O.DatNab >= ''' + cast(@DatNabOd as varchar(30)) + ''' Or S.Datum_Dok >=''' + cast(@DatNabOd as varchar(30)) + ''') '
  92363.     If @DatNabDo Is Not null
  92364.         Set @SSQL = @SSQL + ' And (O.DatNab <= ''' + cast(@DatNabDo as varchar(30)) + ''' Or S.Datum_Dok <=''' + cast(@DatNabOd as varchar(30)) + ''') '
  92365.     If @DatAktOd Is Not null
  92366.         Set @SSQL = @SSQL + ' And O.DatAkt >= ''' + cast(@DatAktOd as varchar(30)) + ''' '
  92367.     If @DatAktDo Is Not null
  92368.         Set @SSQL = @SSQL + ' And O.DatAkt <= ''' + cast(@DatAktDo as varchar(30)) + ''' '
  92369.     If @DatPrestOd Is Not null
  92370.         Set @SSQL = @SSQL + ' And O.DatPrest >= ''' + cast(@DatPrestOd as varchar(30)) + ''' '
  92371.     If @DatPrestDo Is Not null
  92372.         Set @SSQL = @SSQL + ' And O.DatPrest <= ''' + cast(@DatPrestDo as varchar(30)) + ''' '
  92373. */    
  92374. print @SSQL
  92375.     Exec(@SSQL)
  92376.  
  92377.  
  92378. Go
  92379. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otklucisams_uredi]'))
  92380. drop procedure [dbo].[sp_otklucisams_uredi]
  92381.  
  92382. Go
  92383.  
  92384.  
  92385.  
  92386.  
  92387.  
  92388.  
  92389.  
  92390.  
  92391.  
  92392.  
  92393. CREATE               PROCEDURE [dbo].[sp_OtkluciSams_Uredi]
  92394.     @Sifra_Kor varchar(20),
  92395.     @ImeKor varchar(40) output,
  92396.     @Saldo decimal(18, 6) output,
  92397.     @Status varchar(20) output
  92398. As
  92399.  
  92400. declare @kojUredId varchar(20) 
  92401. declare @VekjeOtklucen varchar(20)
  92402. declare @ZaklucenSoStavki varchar(20)
  92403.  
  92404. set @VekjeOtklucen = null
  92405. set @ZaklucenSoSTavki = null
  92406. set @KojUredId = null
  92407.  
  92408. If @Sifra_Kor not in(select Sifra_Kor from arkakartkor)
  92409.     begin
  92410.         set @Status = 'Nema takov korisnik'
  92411.         return @@ERROR
  92412.     end
  92413.  
  92414. select @VekjeOtklucen = Sams_uredId from sams_statusuredi where Tek_Korisnik = @Sifra_Kor and tekstatus <> 'CEKANJE' and tekstatus <> 'CEKANJE-ST'
  92415. If @VekjeOtklucen is null
  92416.     begin
  92417.         select @ZaklucenSoStavki = Sams_UredId from sams_statusuredi where tekstatus = 'CEKANJE-ST' and Tek_Korisnik = @Sifra_Kor
  92418.         if @ZaklucenSostavki is null
  92419.             begin
  92420.                 select @kojUredId = Sams_UredId from sams_statusuredi where tekstatus = 'CEKANJE' and Komanda is null
  92421.                 --order by Posl_Parkiranje_Koga desc, Posl_Krevanje_Koga desc
  92422.                 If @kojUredId is not null
  92423.                     begin
  92424.                         set @Status = 'Otklu~uvam ured'
  92425.                     update sams_statusuredi set komanda = 'OSLOBODI', Tek_Korisnik = @Sifra_Kor where sams_uredId = @kojUredID 
  92426.                     end
  92427.                 else If @kojUredId is null
  92428.                     begin
  92429.                         set @status = 'Nema sloboden ured'
  92430.                         return @@ERROR
  92431.                     end
  92432.             end
  92433.         else if @zaklucenSoStavki is not null
  92434.             begin
  92435.                 set @Status = 'Otklu~uvam ured so stavki'
  92436.                 update sams_statusuredi set komanda = 'OSLOBODI' where sams_uredId = @ZaklucenSoStavki
  92437.             end    
  92438.     end
  92439. else if @VekjeOtklucen is not null
  92440.     set @Status = 'Postoi otklu~en ured za ovoj korisnik'
  92441.  
  92442. select @ImeKor = ImeKor from arkakartkor A where A.Sifra_Kor = @Sifra_Kor
  92443. select @Saldo = Novi_limi - Novi_Promet from arkakartkor A where A.Sifra_Kor = @Sifra_Kor
  92444. declare @NeraskSaldo as decimal(18, 6)  
  92445. set @NeraskSaldo = 0
  92446. select @NeraskSaldo = sum(AK.Dolzi - AK.Pobaruva) from Arkakartkpm AK where AK.Sifra_Kor = @Sifra_Kor and AK.Rasknizen is null
  92447. If @NeraskSaldo <> 0
  92448. set @Saldo = @Saldo - @NeraskSaldo
  92449.  
  92450. Return @@ERROR
  92451.  
  92452.  
  92453.  
  92454. Go
  92455. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otkup_specpoart]'))
  92456. drop procedure [dbo].[sp_otkup_specpoart]
  92457.  
  92458. Go
  92459.  
  92460.  
  92461. CREATE        PROCEDURE sp_Otkup_SpecPoArt
  92462.     @Sifra_OE        smallint,
  92463.     @Datum_Dok_Od    smalldatetime,
  92464.     @Datum_Dok_Do    smalldatetime,
  92465.     @Sifra_Dok        smallint = 8,
  92466.     @Sifra_Kup        char(6) = Null,
  92467.     @PrikPo        char(1) = 'A'
  92468. AS
  92469.     Declare @SSQL varchar(5000)
  92470.  
  92471.  
  92472.     Set @SSQL = ' Select S.Sifra_Art, A.ImeArt, Round(Sum(Kolic),4) Kolic, 
  92473.             Round(Sum(Cast(Substring(S.ImeMat,5,12) as decimal(12,2))/100), 4) Bruto, 
  92474.             Round(Sum(S.BrAmbal), 4) BrAmbal, 
  92475.             Round(Sum(S.Kolic*S.MagCena),4) Vrednost, '
  92476.     IF @PrikPo='D'
  92477.         Set @SSQL=@SSQl + ' S.Datum_Dok, '
  92478.     else 
  92479.         Set @SSQL=@SSQl + ' Null as Datum_Dok, '
  92480.     If @PrikPo = 'C'
  92481.         Set @SSQL = @SSQL + ' S.MagCena '
  92482.     Else 
  92483.         Set @SSQL = @SSQL + ' Null as MagCena '
  92484.     Set @SSQL = @SSQL + ' FROM Stavr S 
  92485.                 INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  92486.                 INNER JOIN Dokr D ON S.DokrID=D.DokrID 
  92487.                 WHERE S.ImeMat<>'''' '
  92488.     If @Sifra_Oe Is Not Null
  92489.         Set @SSQL = @SSQL + ' And D.Sifra_OE=' + cast(@Sifra_OE as varchar(6)) + ' '
  92490.     If @Datum_Dok_Od Is Not Null
  92491.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Dok_Od as varchar(35)) + ''' '
  92492.     If @Datum_Dok_Do Is Not Null
  92493.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Dok_Do as varchar(35)) + ''' '
  92494.     If @Sifra_Dok Is Not Null
  92495.         Set @SSQL = @SSQL + ' And D.Sifra_Dok=' + cast(@Sifra_Dok as varchar(6)) + ' '
  92496.     If @Sifra_Kup Is Not Null
  92497.         Set @SSQL = @SSQL + ' And D.Sifra_Kup=' + @Sifra_Kup + ' '
  92498.     Set @SSQL = @SSQL + ' Group By  S.Sifra_Art, A.ImeArt '
  92499.     If @PrikPo = 'C'
  92500.         Set @SSQL = @SSQL + ', S.MagCena '
  92501.    if @PrikPo ='D'
  92502.      Set @SSQL = @SSQL + ', S.DAtum_Dok ORDER BY S.Datum_Dok '
  92503.     ELSE 
  92504.         Set @SSQL = @SSQL + ' Order By S.Sifra_Art '
  92505. print(@SSQL)
  92506.     EXEC (@SSQL)
  92507.  
  92508.  
  92509.  
  92510.  
  92511. Go
  92512. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otkupnabeleska]'))
  92513. drop procedure [dbo].[sp_otkupnabeleska]
  92514.  
  92515. Go
  92516.  
  92517.  
  92518. CREATE   PROCEDURE sp_OtkupnaBeleska
  92519.     @Sifra_Oe     SMALLINT,
  92520.     @Sifra_Dok     SMALLINT,
  92521.     @Broj_Dok    INT
  92522. AS
  92523.     SELECT D.Datum_Dok, D.Ispratnica, O.ImeOrg, D.Broj_Dok, D.Sifra_Kup, K.ImeKup, K.SMesto,
  92524.            K.Adresa, K.Banka, K.Ziro, K.Danocen, D.Opis,
  92525.            S.Rbr, S.Sifra_Art, A.ImeArt, S.BrAmbal, 
  92526.            (CAST(SUBSTRING(S.ImeMat, 5, 12) AS DECIMAL(12,2))/100) AS Bruto, S.Alt_Kolic,
  92527.            (CAST(SUBSTRING(S.ImeMat, 5, 12) AS DECIMAL(12,2))/100)-S.Alt_Kolic AS Neto, 
  92528.             CAST(SUBSTRING(S.ImeMat, 22, 12) AS DECIMAL(12,2))/100 AS Kalo,
  92529.            S.Kaloproc, S.Kolic, S.MagCena, S.Kolic * S.MagCena AS Iznos, D.Plat_PerDan, D.Proc_PerDan, S.DokCena
  92530.     FROM Stavr S
  92531.     INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  92532.     INNER JOIN Dokr D ON S.DokrID=D.DokrID 
  92533.     LEFT OUTER JOIN Komint K ON K.Sifra_Kup=D.Sifra_Kup
  92534.     LEFT OUTER JOIN OrgEd O ON D.Sifra_Oe = O.Sifra_Oe
  92535.     WHERE D.Sifra_OE = @Sifra_Oe AND D.Sifra_Dok = @Sifra_Dok AND D.Broj_Dok = @Broj_Dok AND S.ImeMat IS NOT NULL AND S.ImeMat<>''
  92536.     ORDER BY D.Broj_Dok, S.Rbr
  92537.  
  92538.  
  92539.  
  92540.  
  92541. Go
  92542. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otkupnalista]'))
  92543. drop procedure [dbo].[sp_otkupnalista]
  92544.  
  92545. Go
  92546.  
  92547.  
  92548.  
  92549.  
  92550. CREATE        PROCEDURE sp_OtkupnaLista
  92551.     @Sifra_OE        smallint,
  92552.     @Datum_Dok_Od    smalldatetime,
  92553.     @Datum_Dok_Do    smalldatetime,
  92554.     @Sifra_Dok        smallint = 8,
  92555.     @Sifra_Kup        char(6) = Null,
  92556.     @BrojLista    varchar (25) = Null,
  92557.     @Ispratnica        varchar(25) = NULL
  92558. AS
  92559.     Declare @SSQL varchar(5000)
  92560.     
  92561.     SET @SSQL = 'SELECT D.Sifra_Oe, D.Sifra_Dok, D.Datum_Dok, D.Sifra_Kup, K.ImeKup, K.SMesto, K.Danocen, D.Broj_Dok, D.Ispratnica, 
  92562.     (Case WHEN S.Rbr=1 Then D.Plat_PerDan Else 0 End) Plat_PerDan,
  92563.     Cast(Substring(S.ImeMat,5,12) as decimal(12,2))/100 as Bruto, S.Alt_Kolic, S.Kolic,
  92564.     Cast(Substring(S.ImeMat,22,12) as decimal(12,2))/100 as Kalo, S.KaloProc,
  92565.     S.DokCena, S.MagCena, A.Sifra_Art, A.ImeArt, A.EdMera, S.BrAmbal, 
  92566.         round(S.MagCena * S.Kolic, 0) VrBruto, 
  92567.         round(S.MagCena * S.Kolic, 0) - (Case WHEN S.Rbr=1 Then D.Plat_PerDan Else 0 End) VrNeto
  92568.     FROM Stavr S
  92569.         INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  92570.     INNER JOIN Dokr D ON S.DokrID=D.DokrID 
  92571.     LEFT OUTER JOIN Komint K ON K.Sifra_Kup=D.Sifra_Kup
  92572.     WHERE S.ImeMat<>'''' '
  92573.     If @Sifra_Oe Is Not Null
  92574.         Set @SSQL = @SSQL + ' And D.Sifra_OE=' + cast(@Sifra_OE as varchar(6)) + ' '
  92575.     If @Datum_Dok_Od Is Not Null
  92576.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Dok_Od as varchar(35)) + ''' '
  92577.     If @Datum_Dok_Do Is Not Null
  92578.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Dok_Do as varchar(35)) + ''' '
  92579.     If @Sifra_Dok Is Not Null
  92580.         Set @SSQL = @SSQL + ' And D.Sifra_Dok=' + cast(@Sifra_Dok as varchar(6)) + ' '
  92581.     If @Sifra_Kup Is Not Null
  92582.         Set @SSQL = @SSQL + ' And D.Sifra_Kup=' + @Sifra_Kup + ' '
  92583.     If @BrojLista Is Not Null
  92584.         Set @SSQL = @SSQL + ' And D.Identif_Br=' + @BrojLista + ' '
  92585.     IF @Ispratnica IS NOT NULL
  92586.         Set @SSQL = @SSQL + ' And D.Ispratnica=' + @Ispratnica + ' '
  92587.  
  92588.  
  92589.     Set @SSQL = @SSQL + ' ORDER BY D.Broj_Dok, S.Rbr'
  92590.  
  92591.     EXEC (@SSQL)
  92592.  
  92593.  
  92594.  
  92595.  
  92596.  
  92597. Go
  92598. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otkupnalista_isplatna]'))
  92599. drop procedure [dbo].[sp_otkupnalista_isplatna]
  92600.  
  92601. Go
  92602.  
  92603.  
  92604.  
  92605.  
  92606.  
  92607.  
  92608. CREATE       PROCEDURE sp_OtkupnaLista_Isplatna
  92609.     @Sifra_OE        smallint,
  92610.     @Datum_Dok_Od    smalldatetime,
  92611.     @Datum_Dok_Do    smalldatetime,
  92612.     @Sifra_Dok        smallint = 8,
  92613.     @Sifra_Kup        char(6) = Null,
  92614.     @BrojLista    varchar (25) = Null,
  92615.     @Ispratnica        varchar(20) = NULL,
  92616.     @SamoMark    char(1) = Null   -- D - samo markirani,   N - samo nemarkirani  S - site
  92617. AS
  92618.     Declare @SSQL varchar(5000)
  92619.     
  92620.     SET @SSQL = 'SELECT D.Sifra_Oe, D.Sifra_Dok, D.Datum_Dok, D.Sifra_Kup, 
  92621.                      K.ImeKup, K.SMesto, K.Danocen, D.Broj_Dok, D.Ispratnica, 
  92622.              K.Adresa, K.Smesto, K.Ziro, K.Banka, K.Danocen, D.Identif_Br, D.Identif_Br StIdentif_Br,
  92623.              D.Toc200 VrNeto, D.Plat_PerDan, D.Toc200 + D.Plat_PerDan VrBruto, F.AnID
  92624.     from Dokr D 
  92625.     inner join anFINDOK F on D.Sifra_Oe = F.Sifra_Oe and D.Sifra_Dok = F.Sifra_Dok and D.Broj_dok = F.Broj_Dok
  92626.     LEFT OUTER JOIN Komint K ON K.Sifra_Kup=D.Sifra_Kup
  92627.     WHERE 1=1 '
  92628.     If @Sifra_Oe Is Not Null
  92629.         Set @SSQL = @SSQL + ' And D.Sifra_OE=' + cast(@Sifra_OE as varchar(6)) + ' '
  92630.     If @Datum_Dok_Od Is Not Null
  92631.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Dok_Od as varchar(35)) + ''' '
  92632.     If @Datum_Dok_Do Is Not Null
  92633.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Dok_Do as varchar(35)) + ''' '
  92634.     If @Sifra_Dok Is Not Null
  92635.         Set @SSQL = @SSQL + ' And D.Sifra_Dok=' + cast(@Sifra_Dok as varchar(6)) + ' '
  92636.     If @Sifra_Kup Is Not Null
  92637.         Set @SSQL = @SSQL + ' And D.Sifra_Kup=' + @Sifra_Kup + ' '
  92638.     If @BrojLista Is Not Null
  92639.         Set @SSQL = @SSQL + ' And D.Identif_Br=' + @BrojLista + ' '
  92640.     If @SamoMark = 'N'
  92641.         Set @SSQL = @SSQL + ' And (D.Identif_Br Is Null Or D.Identif_Br = '' '') '
  92642.     Else If @SamoMark = 'D'
  92643.         Set @SSQL = @SSQL + ' And (D.Identif_Br Is Not Null And D.Identif_Br <> '' '') '
  92644.     IF @Ispratnica IS NOT NULL
  92645.         Set @SSQL = @SSQL + ' And D.Ispratnica=''' + @Ispratnica +''' '
  92646.  
  92647.     Set @SSQL = @SSQL + ' ORDER BY D.Broj_Dok'
  92648.  
  92649.     EXEC (@SSQL)
  92650.  
  92651.  
  92652.  
  92653.  
  92654. Go
  92655. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otkupnalista_isplatna_file]'))
  92656. drop procedure [dbo].[sp_otkupnalista_isplatna_file]
  92657.  
  92658. Go
  92659.  
  92660. CREATE  PROCEDURE sp_OtkupnaLista_Isplatna_File
  92661.     @Sifra_OE        smallint,
  92662.     @Datum_Dok_Od    smalldatetime,
  92663.     @Datum_Dok_Do    smalldatetime,
  92664.     @Sifra_Dok        smallint = 8,
  92665.     @Sifra_Kup        char(6) = Null,
  92666.     @BrojLista    varchar (25) = Null,
  92667.     @SamoMark    char(1) = Null   -- D - samo markirani,   N - samo nemarkirani  S - site
  92668. AS
  92669.     --Declare @ZiroSmetka as varchar(100)
  92670.     --select  top 1 @ZiroSmetka = Ziro from logo where tipobr='FA'
  92671.    
  92672.     Declare @SSQL varchar(5000)
  92673.     
  92674.     SET @SSQL = 'SELECT 2 as Oznaka, D.Sifra_Oe, D.Sifra_Dok, D.Datum_Dok, D.Sifra_Kup, 
  92675.                  K.ImeKup, K.SMesto, K.Danocen, D.Broj_Dok, D.Ispratnica, 
  92676.                  K.Adresa, K.Smesto, K.Ziro, K.Banka, K.Danocen, D.Identif_Br,
  92677.                  D.Toc200 VrNeto, D.Plat_PerDan, D.Toc200 + D.Plat_PerDan VrBruto, F.AnID
  92678.                  from Dokr D 
  92679.      inner join anFINDOK F on D.Sifra_Oe = F.Sifra_Oe and D.Sifra_Dok = F.Sifra_Dok and D.Broj_dok = F.Broj_Dok
  92680.      LEFT OUTER JOIN Komint K ON K.Sifra_Kup=D.Sifra_Kup
  92681.      WHERE 1=1 '
  92682.     If @Sifra_Oe Is Not Null
  92683.         Set @SSQL = @SSQL + ' And D.Sifra_OE=' + cast(@Sifra_OE as varchar(6)) + ' '
  92684.     If @Datum_Dok_Od Is Not Null
  92685.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Dok_Od as varchar(35)) + ''' '
  92686.     If @Datum_Dok_Do Is Not Null
  92687.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Dok_Do as varchar(35)) + ''' '
  92688.     If @Sifra_Dok Is Not Null
  92689.         Set @SSQL = @SSQL + ' And D.Sifra_Dok=' + cast(@Sifra_Dok as varchar(6)) + ' '
  92690.     If @Sifra_Kup Is Not Null
  92691.         Set @SSQL = @SSQL + ' And D.Sifra_Kup=' + @Sifra_Kup + ' '
  92692.     If @BrojLista Is Not Null
  92693.         Set @SSQL = @SSQL + ' And D.Identif_Br=' + @BrojLista + ' '
  92694.     If @SamoMark = 'N'
  92695.         Set @SSQL = @SSQL + ' And (D.Identif_Br Is Null Or D.Identif_Br = '' '') '
  92696.     Else If @SamoMark = 'D'
  92697.         Set @SSQL = @SSQL + ' And (D.Identif_Br Is Not Null And D.Identif_Br <> '' '') '
  92698.  
  92699.     Set @SSQL = @SSQL + ' ORDER BY D.Broj_Dok'
  92700.  
  92701.     EXEC (@SSQL)
  92702.  
  92703.  
  92704.  
  92705. Go
  92706. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otkupnalista_isplatna_file_stopban]'))
  92707. drop procedure [dbo].[sp_otkupnalista_isplatna_file_stopban]
  92708.  
  92709. Go
  92710. CREATE           PROCEDURE sp_OtkupnaLista_Isplatna_File_StopBan
  92711.     @Sifra_OE        smallint,
  92712.     @Datum_Dok_Od    smalldatetime,
  92713.     @Datum_Dok_Do    smalldatetime,
  92714.     @Sifra_Dok        smallint = 8,
  92715.     @Sifra_Kup        char(6) = Null,
  92716.     @BrojLista    varchar (25) = Null,
  92717.     @SamoMark    char(1) = Null,
  92718.     @DatumKniz smalldatetime  -- D - samo markirani,   N - samo nemarkirani  S - site
  92719. AS
  92720.        Create table #Tmp
  92721.        ( 
  92722.       Rbr  int identity(1,1),
  92723.       SmetkaNal char(15),
  92724.       IznosNal char(10),
  92725.          Smetka  char(15),
  92726.          ImeKup  char(72),
  92727.          SifPlak  char(3),
  92728.          CelPlak  varchar(50),
  92729.          PovikDolzi  char(24), 
  92730.          PovikPobaruva  char(24), 
  92731.          DatumValuta char(8),
  92732.       DatumUplata char(8),
  92733.       NacPlak char(1),
  92734.       NacPrior char(2),
  92735.       TipNal char(1)
  92736.        )-- Izn  decimal(18,2), NacProc  char(1) 
  92737.     
  92738.  
  92739.     Declare @DatOd as char(8)
  92740.     Set @DatOd = (Case When Day(@DatumKniz) < 10 Then '0' Else '' End)+cast(Day(@DatumKniz) as varchar(2))
  92741.   +(Case When Month(@DatumKniz) < 10 Then '0' Else '' End)+cast(Month(@DatumKniz) as varchar(2))+
  92742.    cast(Year(@DatumKniz) as char(4))
  92743.     Declare @SSQL varchar(5000)
  92744.  
  92745.    -- Declare @Vk as decimal(12,2)
  92746.    -- Select @Vk= Sum(Toc200 + Plat_PerDan) 
  92747.     --from Dokr 
  92748.     --where sifra_kup in (select Sifra_kup from dokr)
  92749.     
  92750.     Set @SSQL=' SELECT ''200000004496136'',substring(dbo.fn_LevoNuliStr(cast(Sum(D.Toc200 + D.Plat_PerDan) as varchar(12)), 12), 1,10) , cast(K.Ziro as char(15)), cast(K.ImeKup as varchar(72)),
  92751.                 ''930'', ''isplata na otkup'', '+ @BrojLista + ','+ @BrojLista + ','''+ @DatOD + ''','''+ @DatOD+ ''', 
  92752.                 CASE  substring(K.Ziro,1, 3) when ''200'' then ''3'' else ''2'' end , ''11'', ''0''
  92753.                 FROM Dokr D 
  92754.                 Inner join anFINDOK F on D.Sifra_Oe = F.Sifra_Oe and D.Sifra_Dok = F.Sifra_Dok and D.Broj_dok = F.Broj_Dok
  92755.                 LEFT OUTER JOIN Komint K ON K.Sifra_Kup=D.Sifra_Kup
  92756.                 WHERE K.sifra_kup in (select Sifra_kup from dokr)'
  92757.     If @Sifra_Oe Is Not Null
  92758.         Set @SSQL = @SSQL + ' And D.Sifra_OE=' + cast(@Sifra_OE as varchar(6)) + ' '
  92759.     If @Datum_Dok_Od Is Not Null
  92760.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Dok_Od as varchar(35)) + ''' '
  92761.     If @Datum_Dok_Do Is Not Null
  92762.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Dok_Do as varchar(35)) + ''' '
  92763.     If @Sifra_Dok Is Not Null
  92764.         Set @SSQL = @SSQL + ' And D.Sifra_Dok=' + cast(@Sifra_Dok as varchar(6)) + ' '
  92765.     If @Sifra_Kup Is Not Null
  92766.         Set @SSQL = @SSQL + ' And D.Sifra_Kup=' + @Sifra_Kup + ' '
  92767.     If @BrojLista Is Not Null
  92768.         Set @SSQL = @SSQL + ' And D.Identif_Br=' + @BrojLista + ' '
  92769.     If @SamoMark = 'N'
  92770.         Set @SSQL = @SSQL + ' And (D.Identif_Br Is Null Or D.Identif_Br = '' '') '
  92771.     Else If @SamoMark = 'D'
  92772.         Set @SSQL = @SSQL + ' And (D.Identif_Br Is Not Null And D.Identif_Br <> '' '') '
  92773.     set @ssql= @ssql+'group by K.ziro, K.ImeKUp'
  92774. print @ssql
  92775. INSERT INTO #Tmp (SmetkaNal, IznosNal, Smetka,ImeKup,SifPlak,CelPlak,PovikDolzi,PovikPobaruva,DatumValuta, DatumUplata, NAcPLak, NacPrior, TipNal)
  92776.  EXEC (@SSQL)
  92777.   --  print(@ssql)
  92778. --exec (@ssql)
  92779. select * from #Tmp
  92780. --update #tmp set povikdolzi=@BrojLista
  92781. --update #tmp set povikpobaruva=@BrojLista
  92782. /*
  92783.     create table #Tmp1
  92784.     ( Ozn  char(1),
  92785.       Rbr  char(5),
  92786.       Izn  char(19),
  92787.       Smetka  char(15),
  92788.       ImeKup  char(72),
  92789.       SifPlak  char(3),
  92790.       CelPlak  varchar(70),
  92791.       PovikDolzi  char(24), 
  92792.       PovikPobaruva  char(24), 
  92793.       NacProc  char(1) 
  92794.     )
  92795.  
  92796. INSERT INTO #Tmp1 (Ozn,RBR, Izn,Smetka,ImeKup,SifPlak,CelPlak,PovikDolzi,PovikPobaruva,NacProc) 
  92797. select Ozn,dbo.fn_LevoNuli(RBR,5),dbo.fn_LevoNuliStr(cast(Izn as char(19)), 18),cast(Smetka as char(15)),rtrim(cast(ImeKup as char(72))),rtrim(SifPlak),
  92798. cast(CelPlak as char(70)), cast(PovikDolzi as char(24)),cast(povikpobaruva as char(24)),rtrim(NacProc) from #Tmp
  92799.  
  92800.  
  92801.     create table #Tmp2
  92802.     ( Ozn  char(1),
  92803.       Smetka  char(15),
  92804.       Izn  char(19),--decimal(18,2),
  92805.       BrNal  char(6),
  92806.       DatKniz  char(8),
  92807.       DatVal  char(8)
  92808.     )
  92809.  
  92810. Declare @DatOd as char(8)
  92811. Set @DatOd = cast(Year(@DatumKniz) as char(4))
  92812. +(Case When Month(@DatumKniz) < 10 Then '0' Else '' End)+cast(Month(@DatumKniz) as varchar(2))
  92813. +(Case When Day(@DatumKniz) < 10 Then '0' Else '' End)+cast(Day(@DatumKniz) as varchar(2))
  92814.  
  92815. INSERT INTO #Tmp2 (Ozn,Smetka,Izn,BrNal,DatKniz,DatVal) 
  92816. SELECT '1', '', Sum(Izn), dbo.fn_LevoNuliStr(count(rbr), 6),@DatOd, @DatOd
  92817. from #tmp
  92818.  
  92819.  
  92820. update #tmp2 set Izn=dbo.fn_LevoNuliStr(cast(Izn as varchar(19)), 18)
  92821.  
  92822.  
  92823. Update #Tmp1 Set Izn = '+0'+Replace(Izn,'.','')
  92824. Update #Tmp2 Set Izn = '+0'+Replace(Izn,'.','')
  92825. --update #Tmp2 set Izn=replace (Substring(Izn, 1,1),'0', '+')
  92826. --update #Tmp1 set Izn=replace (Substring(Izn, 1,1),'0', '+')
  92827. SELECT * FROM #TMP2
  92828. SELECT * FROM #TMP1
  92829. */
  92830.  
  92831.  
  92832.  
  92833.  
  92834.  
  92835.  
  92836.  
  92837.  
  92838.  
  92839. Go
  92840. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otkupnilisti_analitika]'))
  92841. drop procedure [dbo].[sp_otkupnilisti_analitika]
  92842.  
  92843. Go
  92844. CREATE PROCEDURE sp_OtkupniListi_Analitika 
  92845.  
  92846.     @Sifra_Oe    smallint = Null,
  92847.     @Datum_Od    smalldatetime = Null,
  92848.     @Datum_Do    smalldatetime = Null
  92849. AS
  92850.  
  92851.     Declare @SSQL as varchar(8000)
  92852.  
  92853.     SET @SSQL = 'SELECT D.Identif_Br, Sum(D.Toc200) Toc200
  92854.             FROM Dokr D
  92855.             WHERE D.Sifra_Dok = 8 '
  92856.     If @Sifra_Oe Is Not Null
  92857.         Set @SSQL = @SSQL + ' And D.Sifra_OE=' + cast(@Sifra_OE as varchar(6)) + ' '
  92858.     If @Datum_Od Is Not Null
  92859.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Od as varchar(35)) + ''' '
  92860.     If @Datum_Do Is Not Null
  92861.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Do as varchar(35)) + ''' '
  92862.     Set @SSQL = @SSQL + ' Group By D.Identif_Br '
  92863.     Exec(@SSQL)
  92864.  
  92865. Go
  92866. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otvazur100]'))
  92867. drop procedure [dbo].[sp_otvazur100]
  92868.  
  92869. Go
  92870.  
  92871.  
  92872.  
  92873.  
  92874.  
  92875. CREATE    PROCEDURE sp_OtvAzur100
  92876.     @Sifra_OE Smallint=Null,
  92877.     @Sif_GrOrg char(6)=Null,
  92878.     @Datum_Od Smalldatetime,
  92879.     @Datum_Do Smalldatetime,
  92880.     @Broj_Dok_Od    int=NULL,
  92881.     @Broj_Dok_Do    int=NULL
  92882. AS
  92883. Declare @SSQL Varchar(4000)
  92884. Set @SSQL = 'UPDATE Dokr SET Broj_Nal=NULL WHERE Sifra_Dok IN (100,101) '
  92885. If @Sif_GrOrg IS NOT NULL
  92886.     Set @SSQL =  @SSQL + ' AND Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg = '''+@Sif_GrOrg+''' '
  92887. If @Sifra_OE IS NOT NULL
  92888.     Set @SSQL =  @SSQL + ' AND Sifra_OE= ' + Cast (@Sifra_OE as varchar(5))
  92889. If @Datum_Od Is NOT Null
  92890.     SET @SSQL = @SSQL + ' AND Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  92891. If @Datum_Do Is NOT Null
  92892.     SET @SSQL = @SSQL + ' AND Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  92893. IF @Broj_Dok_Od IS NOT NULL
  92894.     SET @SSQL = @SSQL + ' AND Broj_Dok>=' + Cast(@Broj_Dok_Od As Varchar(9)) + ' '
  92895. IF @Broj_Dok_Do IS NOT NULL
  92896.     SET @SSQL = @SSQL + ' AND Broj_Dok<=' + Cast(@Broj_Dok_Do As Varchar(9)) + ' '
  92897. EXEC(@SSQL)
  92898.  
  92899.  
  92900.  
  92901. Go
  92902. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otvazurrazlcena]'))
  92903. drop procedure [dbo].[sp_otvazurrazlcena]
  92904.  
  92905. Go
  92906.  
  92907.  
  92908.  
  92909.  
  92910.  
  92911. CREATE    PROCEDURE sp_OtvAzurRazlCena
  92912.     @Sifra_OE Smallint=Null,
  92913.     @Sif_GrOrg char(6)=Null,
  92914.     @Datum_Od Smalldatetime,
  92915.     @Datum_Do Smalldatetime,
  92916.     @Sifra_Dok  smallint=Null
  92917. AS
  92918. Declare @SSQL Varchar(4000)
  92919. Set @SSQL = 'UPDATE RazlCeni SET Broj_Nal=NULL WHERE 1=1 '
  92920. If @Sif_GrOrg IS NOT NULL
  92921.     Set @SSQL =  @SSQL + ' AND Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg = '''+@Sif_GrOrg+''') '
  92922. If @Sifra_OE IS NOT NULL
  92923.     Set @SSQL =  @SSQL + ' AND Sifra_OE= ' + Cast (@Sifra_OE as varchar(5))
  92924. If @Datum_Od Is NOT Null
  92925.     SET @SSQL = @SSQL + ' AND Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  92926. If @Datum_Do Is NOT Null
  92927.     SET @SSQL = @SSQL + ' AND Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  92928. If @Sifra_Dok IS NOT NULL
  92929.     SET @SSQL = @SSQL + ' AND Sifra_Razl=' + Cast(@Sifra_Dok As Varchar(3)) + ' '
  92930. EXEC(@SSQL)
  92931.  
  92932.  
  92933.  
  92934. Go
  92935. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_otvdokkom]'))
  92936. drop procedure [dbo].[sp_otvdokkom]
  92937.  
  92938. Go
  92939.  
  92940.  
  92941.  
  92942. CREATE    Procedure sp_OtvDokKom
  92943.  
  92944.     @Sifra_Oe smallint = Null,
  92945.     @Koi_Oe    varchar(6) = Null,
  92946.     @Datum_Od smalldatetime,
  92947.     @Datum_Do smalldatetime,
  92948.     @Sifra_Kup_Od char(6) = Null,
  92949.     @Sifra_Kup_Do char(6) = Null,
  92950.     @Sifra_1K  smallint= null,
  92951.     @Sifra_2K smallint = null,
  92952.     @Sifra_3K smallint = null,
  92953.     @Sifra_4K smallint = null,
  92954.     @Sifra_5K smallint = null,
  92955.     @Sifra_6K smallint = null,
  92956.     @Sifra_7K smallint = null,
  92957.     @Koi_Gradovi varchar(300) = Null,
  92958.     @Koi_Regioni varchar(300) = Null,
  92959.     @TipKup varchar(11) = Null,
  92960.     @Kto char(10)= null,
  92961.     @Sifra_Pat smallint= null,
  92962.     @Sif_GrPat char(6)= null,
  92963.     @Sifra_Div smallint = null
  92964. As
  92965.     Declare @SSQL as varchar(8000)
  92966.     Set @SSQL = ' Select A.Sifra_Oe, A.Sifra_Pat ,  P.ImePat , A.Sifra_Kup, K.ImeKup, Sum((A.Dolzi-A.Plateno_Dolzi)-(A.Pobaruva-A.Plateno_Pobar)) Saldo 
  92967.                 From AnFinDok A
  92968.                 Left Outer Join Patnici P on A.Sifra_Pat=P.Sifra_Pat
  92969.                 Left Outer Join Komint K on A.Sifra_Kup=K.Sifra_Kup
  92970.                 Where A.Sifra_Za=1'
  92971.     If @Sifra_Oe Is Not Null
  92972.         Set @SSQL = @SSQL + ' And A.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  92973.     If @Koi_Oe Is Not Null
  92974.         Set @SSQL = @SSQL + ' And A.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  92975.     If @Datum_Od Is Not Null
  92976.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  92977.     If @Datum_Do Is Not Null
  92978.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  92979.     If @Sifra_Kup_Od Is Not Null
  92980.         Set @SSQL = @SSQL + ' And A.Sifra_Kup >= ' + @Sifra_Kup_Od + ' '
  92981.     If @Sifra_Kup_Do Is Not Null
  92982.         Set @SSQL = @SSQL + ' And A.Sifra_Kup <= ' + @Sifra_Kup_Do + ' '
  92983.     If @Sifra_1K Is Not Null
  92984.                 Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Sifra_1K As Varchar(6)) + ' '
  92985.     If @Sifra_2K Is Not Null
  92986.                 Set @SSQL = @SSQL + 'And K.KDrugo2=' + Cast(@Sifra_2K As Varchar(6)) + ' '
  92987.     If @Sifra_3K Is Not Null
  92988.                 Set @SSQL = @SSQL + 'And K.KDrugo3=' + Cast(@Sifra_3K As Varchar(6)) + ' '
  92989.     If @Sifra_4K Is Not Null
  92990.                 Set @SSQL = @SSQL + 'And K.KDrugo4=' + Cast(@Sifra_4K As Varchar(6)) + ' '
  92991.     If @Sifra_5K Is Not Null
  92992.                 Set @SSQL = @SSQL + 'And K.KDrugo5=' + Cast(@Sifra_5K As Varchar(6)) + ' '
  92993.     If @Sifra_6K Is Not Null
  92994.                 Set @SSQL = @SSQL + 'And K.KDrugo6=' + Cast(@Sifra_6K As Varchar(6)) + ' '
  92995.     If @Sifra_7K Is Not Null
  92996.                 Set @SSQL = @SSQL + 'And K.KDrugo7=' + Cast(@Sifra_7K As Varchar(6)) + ' '
  92997.     If @Koi_Gradovi Is Not Null
  92998.         Set @SSQL = @SSQL + 'And K.Sifra_Grad In (' + @Koi_Gradovi + ') '
  92999.     If @Koi_Regioni Is Not Null
  93000.         Set @SSQL = @SSQL + 'And K.Sifra_Reg In (' + @Koi_Regioni + ') '
  93001.     If @TipKup Is Not Null
  93002.         Set @SSQL = @SSQL + 'And K.TipKup=''' + @TipKup + ''' '
  93003.     If @Kto Is Not Null
  93004.         Set @SSQL = @SSQL + 'And A.Kto=''' + @Kto + ''' '
  93005.     If @Sifra_Pat IS NOT NULL
  93006.             SET @SSQL = @SSQL + ' AND A.Sifra_Pat =' + cast(@Sifra_Pat as varchar(5)) + ' '
  93007.    If @Sif_GrPat IS NOT NULL
  93008.         SET @SSQL = @SSQL + ' AND A.Sifra_Pat In  (Select Sifra_Pat From SGrPat Where Sif_GrPat =  ''' + @Sif_GrPat + ''') '
  93009.     If @Sifra_Div Is Not Null
  93010.         Set @SSQL = @SSQL + 'AND A.Sifra_Div=' + Cast(@Sifra_Div As Varchar(10)) + ' '
  93011.     Set @SSQL=@SSQL + 'Group By A.Sifra_Oe, A.Sifra_Pat, P.ImePat, A.Sifra_Kup, K.ImeKup'
  93012.     print(@SSQL)
  93013.     Exec(@SSQL)
  93014.  
  93015.  
  93016.  
  93017.  
  93018.  
  93019. Go
  93020. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_ozfindokkart]'))
  93021. drop procedure [dbo].[sp_ozfindokkart]
  93022.  
  93023. Go
  93024. CREATE procedure sp_OZFinDokKart
  93025.     @Sifra_Kup char(6),
  93026.     @Kto_Anal char(10)
  93027. As
  93028.     Delete from AnZatv
  93029.     Where AnID1 in (Select AnID from AnFinDok where Sifra_Kup=@Sifra_Kup and Kto=@Kto_Anal)
  93030.     Delete from AnZatv
  93031.     Where AnID2 in (Select AnID from AnFinDok where Sifra_Kup=@Sifra_Kup and Kto=@Kto_Anal)
  93032.     Update AnFinDok set Plateno_Dolzi=0, Plateno_Pobar=0 
  93033.     Where Sifra_Kup=@Sifra_kup and Kto=@Kto_Anal
  93034.  
  93035. Go
  93036. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_oznpratenanarac]'))
  93037. drop procedure [dbo].[sp_oznpratenanarac]
  93038.  
  93039. Go
  93040.  
  93041.  
  93042. CREATE    PROCEDURE sp_OznPratenaNarac
  93043.     @Sifra_OE smallint,
  93044.     @Sifra_Nar smallint,
  93045.     @Broj_Nar int
  93046.  AS
  93047.     UPDATE Naracki  SET  Prenesen = 'D'
  93048.     WHERE Sifra_OE= @Sifra_OE AND Sifra_Nar= @Sifra_Nar AND Broj_Nar=@Broj_Nar
  93049.  
  93050.  
  93051.  
  93052. Go
  93053. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_oznprateniart]'))
  93054. drop procedure [dbo].[sp_oznprateniart]
  93055.  
  93056. Go
  93057. CREATE   PROCEDURE sp_OznPrateniArt
  93058.     @Sifra        varchar(20),
  93059.     @KojObj    char(1)
  93060. AS
  93061.     UPDATE KatArt SET Prenesen=RTrim(Prenesen)+@KojObj
  93062.     WHERE Sifra_art = @Sifra
  93063.  
  93064.  
  93065. Go
  93066. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_oznpratenidok]'))
  93067. drop procedure [dbo].[sp_oznpratenidok]
  93068.  
  93069. Go
  93070.  
  93071.  
  93072. CREATE    PROCEDURE sp_OznPrateniDok
  93073.     @Sifra_OE smallint,
  93074.     @Sifra_Dok smallint,
  93075.     @Broj_Dok int,
  93076.     @Sifra_Prim smallint,
  93077.     @ImaDodatna char(1),
  93078.     @Prenesen    char(1)='D'
  93079.  AS
  93080.     Declare @SSQL VArchar(2000)
  93081.     Set @SSQL = 'UPDATE Dokr SET '
  93082.     IF @Prenesen='F'
  93083.         SET @SSQL = @SSQL + 'PrenDrFirma = ''D'' '
  93084.     ELSE
  93085.         SET @SSQL = @SSQL + 'Prenesen = ''D'' '
  93086.     SET @SSQL = @SSQL + ' WHERE Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + 
  93087.         ' AND [Sifra_Dok]=' + Cast(@Sifra_Dok As Varchar(10)) + 
  93088.         ' AND [Broj_Dok]=' + Cast(@Broj_Dok As varchar(10)) + ' '
  93089.     If @Sifra_Prim Is Not Null
  93090.         Set @SSQL = @SSQL + 'AND [Sifra_Prim]=' + Cast(@Sifra_Prim As Varchar(10)) + ' '
  93091.     If @ImaDodatna Is NOt Null
  93092.         Set @SSQL = @SSQL + 'AND [ImaDodatna]=''' + @ImaDodatna + ''' '
  93093.     Exec(@SSQL)
  93094.  
  93095.  
  93096.  
  93097. Go
  93098. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_oznpratenifindok]'))
  93099. drop procedure [dbo].[sp_oznpratenifindok]
  93100.  
  93101. Go
  93102.  
  93103.  
  93104.  
  93105.  
  93106.  
  93107.  
  93108.  
  93109. CREATE         PROCEDURE sp_OznPrateniFinDok
  93110.     @Sifra_OE    smallint,
  93111.     @Sifra_Dok    smallint,
  93112.     @Broj_Dok    int, 
  93113.     @KojObj        char(1),
  93114.     @Kade        char(1)
  93115.  AS
  93116.     Declare @FinPrenesen char(5)
  93117.     SET @FinPrenesen=''
  93118.     if @Kade <> 'B'
  93119.         SELECT @FinPrenesen=Prenesen FROM AnFinDok WHERE Sifra_OE=Sifra_OE 
  93120.         AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok 
  93121.     IF @FinPrenesen IS NULL    SET @FinPrenesen=''
  93122.     SET @FinPrenesen= @FinPrenesen+ @KojObj
  93123.     Declare @SSQL VArchar(2000)
  93124.     Set @SSQL = 'UPDATE '
  93125.     If @Kade='B'
  93126.         Set @SSQL = @SSQL + 'BrsFinDok'
  93127.     Else
  93128.         Set @SSQL = @SSQL + 'AnFinDok'
  93129.     Set @SSQL = @SSQL + ' SET Prenesen = ''' + @KojObj + 
  93130.         ''' WHERE Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + 
  93131.         ' AND Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(10)) + 
  93132.         ' AND Broj_Dok=' + Cast(@Broj_Dok As varchar(10)) + 
  93133.         ' AND PatIndex(''%'+@KojObj + '%'', Prenesen)=0 '
  93134.     Exec(@SSQL)
  93135.  
  93136.  
  93137.  
  93138. Go
  93139. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_oznpratenikobjekti]'))
  93140. drop procedure [dbo].[sp_oznpratenikobjekti]
  93141.  
  93142. Go
  93143.  
  93144.  
  93145. CREATE    PROCEDURE sp_OznPrateniKObjekti
  93146.     @Sifra        char(9),
  93147.     @KojObj        char(1)
  93148. AS
  93149.     Declare @Sifra_Kup char(6)
  93150.     Declare @Sifra_Obj char(3)
  93151.     SET @Sifra_Kup = Substring(@Sifra,1,6)
  93152.     SET @Sifra_Obj = Substring(@Sifra,7,3)
  93153.     UPDATE KObjekti SET Prenesen=RTrim(Prenesen)+@KojObj
  93154.     WHERE Sifra_Kup = @Sifra_Kup AND Sifra_Obj = cast(@Sifra_Obj as smallint)
  93155.  
  93156.  
  93157.  
  93158. Go
  93159. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_oznpratenikomint]'))
  93160. drop procedure [dbo].[sp_oznpratenikomint]
  93161.  
  93162. Go
  93163.  
  93164. CREATE   PROCEDURE sp_OznPrateniKomint
  93165.     @Sifra        char(6),
  93166.     @KojObj        char(1)
  93167. AS
  93168.     UPDATE Komint SET Prenesen=RTrim(Prenesen)+@KojObj
  93169.     WHERE Sifra_Kup = @Sifra
  93170.  
  93171.  
  93172.  
  93173. Go
  93174. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_oznproknizenkasstav]'))
  93175. drop procedure [dbo].[sp_oznproknizenkasstav]
  93176.  
  93177. Go
  93178.  
  93179.  
  93180.  
  93181.  
  93182.  
  93183.  
  93184.  
  93185.  
  93186. create          PROCEDURE sp_OznProknizenKasStav
  93187.     @Broj_Dok    int, 
  93188.     @Sifra_Nal    smallint,
  93189.     @P_I        char(1)
  93190.  AS
  93191.     Update kasstav set proknizen = 'D' 
  93192.     where Broj_Dok = @Broj_Dok and Sifra_Nal = @Sifra_Nal and P_I = @P_I
  93193.  
  93194.  
  93195.  
  93196. Go
  93197. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_paklista_mark_ispecateni]'))
  93198. drop procedure [dbo].[sp_paklista_mark_ispecateni]
  93199.  
  93200. Go
  93201. CREATE PROCEDURE sp_PakLista_Mark_Ispecateni
  93202.     @Sifra_Oe    smallint,
  93203.     @Broj_Pak    int,
  93204.     @Mesto_Pak    smallint,
  93205.     @Sifra_Pak    smallint
  93206. AS
  93207.     Update PakLista
  93208.     Set Ispecaten = (case When Ispecaten Is Not Null Then Ispecaten+1 Else 1 End)
  93209.     Where Sifra_Oe=@Sifra_Oe And Broj_Pak=@Broj_Pak And Mesto_Pak=@Mesto_Pak And Sifra_Pak=@Sifra_Pak
  93210.  
  93211.  
  93212. Go
  93213. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_paklista_stavki_grup]'))
  93214. drop procedure [dbo].[sp_paklista_stavki_grup]
  93215.  
  93216. Go
  93217. CREATE   PROCEDURE sp_PakLista_Stavki_Grup
  93218.     @Sifra_Oe    smallint,
  93219.     @Broj_Pak    int
  93220. AS
  93221.     Select Sifra_Art, BarKodPak, Sum(Kolicina) Kolicina
  93222.     From PakListaStav 
  93223.     Where Sifra_Oe=@Sifra_Oe And Broj_Pak=@Broj_Pak
  93224.     Group by Sifra_Art, BarKodPak
  93225.  
  93226.  
  93227. Go
  93228. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_paklistazapec_stavki]'))
  93229. drop procedure [dbo].[sp_paklistazapec_stavki]
  93230.  
  93231. Go
  93232.  
  93233. CREATE  PROCEDURE sp_PakListaZaPec_Stavki
  93234.     @Sifra_Oe    smallint,
  93235.     @Broj_Pak    int,
  93236.     @Mesto_Pak    smallint,
  93237.     @Sifra_Pak    smallint
  93238. AS
  93239.     Select P.Sifra_Oe, P.Broj_Pak, P.Datum, P.Sifra_Kup, P.Ext_Broj, P.Vozilo, P.Broj_RabN,
  93240.                P.Mesto_Pak, P.Sifra_Pak,    
  93241.         S.Sifra_Art, K.ImeArt, S.Kolicina, S.Kutija, S.Sifra_Nar, S.Broj_Nar, S.BarKodPak, S.Rbr
  93242.     From PakLista P 
  93243.     Inner Join PakListaStav S On S.Sifra_Oe=P.SIfra_Oe And S.Broj_Pak=P.Broj_Pak And S.Mesto_Pak=P.Mesto_Pak And S.Sifra_Pak=P.Sifra_Pak
  93244.     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  93245.     Where P.Sifra_Oe=@Sifra_Oe And P.Broj_Pak=@Broj_Pak And P.Mesto_Pak=@Mesto_Pak And P.Sifra_Pak=@Sifra_Pak
  93246.  
  93247.  
  93248.  
  93249. Go
  93250. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_paklistazapecatenje]'))
  93251. drop procedure [dbo].[sp_paklistazapecatenje]
  93252.  
  93253. Go
  93254.  
  93255. CREATE  PROCEDURE sp_PakListaZaPecatenje
  93256.     @Datum_Od    smalldatetime = Null,
  93257.     @Sifra_Oe    varchar(100) = Null
  93258. AS
  93259.     Declare @SSQL as varchar(4000)
  93260.     Set @SSQL = ' Select  P.Sifra_Oe, P.Broj_Pak, P.Mesto_Pak, P.Datum, P.Sifra_Kup, P.Ext_Broj, P.Vozilo, P.Broj_RabN, P.Br_Kopii, P.Sifra_Pak
  93261.             From PakLista P
  93262.             Where (P.Ispecaten Is Null Or P.Ispecaten = 0)  '
  93263.     If @Sifra_Oe Is Not Null
  93264.         Set @SSQL = @SSQL + ' And P.Sifra_Oe IN (' + @Sifra_Oe + ') '
  93265.     If @Datum_Od Is Not Null
  93266.         Set @SSQL = @SSQL + ' And P.Datum >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  93267.     Set @SSQL = @SSQL + ' Order By P.Sifra_Oe, P.Broj_Pak '
  93268.     Exec(@SSQL)
  93269.  
  93270.  
  93271.  
  93272. Go
  93273. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_paklistazbirnopoart]'))
  93274. drop procedure [dbo].[sp_paklistazbirnopoart]
  93275.  
  93276. Go
  93277.  
  93278. CREATE  PROCEDURE sp_PakListaZbirnoPoArt
  93279.     @Sifra_OE    smallint,
  93280.     @Mesto_Pak    smallint, 
  93281.     @Sifra_Pak    smallint, 
  93282.     @Broj_Pak    varchar(1000)
  93283. AS
  93284. Declare @SSQL varchar(2000)
  93285. SET @SSQL='SELECT P.Sifra_Art, A.ImeArt, A.EdMera, A.ImaKomerc, A.Lokacija, A.Sifra_Tar, Round(S.NNabCena*(1+S.POsn/100),4 ) Cena, S.POsn,
  93286. SUM(P.Kolicina) Kolicina, COUNT(P.Sifra_Art) Paketi FROM PakListaStav P
  93287. INNER JOIN KatArt A ON A.Sifra_Art=P.Sifra_Art
  93288. LEFT OUTER JOIN SoArt S ON S.Sifra_Art=P.Sifra_Art AND S.Sifra_OE=' +cast(@Sifra_OE as varchar(5))+
  93289. ' WHERE P.Sifra_OE='+cast(@Sifra_OE as varchar(5))+' AND P.Mesto_Pak='+cast(@Mesto_Pak as varchar(5))+' AND P.Sifra_Pak='+cast(@Sifra_Pak as varchar(5))+' AND P.Broj_Pak IN ('+ @Broj_Pak +')
  93290. GROUP BY P.Sifra_Art, A.ImeArt, A.EdMera, A.ImaKomerc, A.Lokacija, A.Sifra_Tar, S.NNabCena, S.POsn '
  93291. exec (@ssql)
  93292.  
  93293.  
  93294.  
  93295. Go
  93296. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_payturn]'))
  93297. drop procedure [dbo].[sp_payturn]
  93298.  
  93299. Go
  93300. CREATE           PROCEDURE sp_PayTurn
  93301.     @Sifra_OE Smallint, 
  93302.     @KoiOE Varchar(300),
  93303.     @Pod1 Smallint,
  93304.     @Pod2 Smallint,
  93305.     @Pod3 Smallint = Null,
  93306.     @Pod4 Smallint = Null,
  93307.     @Pod5 Smallint = Null,
  93308.     @Sifra_Tip Smallint = Null,
  93309.     @Datum_Od Smalldatetime,
  93310.     @Datum_Do Smalldatetime,
  93311.     @Sifra_Kup_Od Char(6),
  93312.     @Sifra_Kup_Do Char(6),
  93313.     @Podred Char(1),
  93314.     @TipKup Char(11),
  93315.     @Sifra_Pat Smallint = Null,
  93316.     @KomercKako    char(1) = 'T'
  93317. AS
  93318.    Declare @SSQL Varchar(8000)
  93319.    SET @SSQL = 'SELECT A.Sifra_Kup, K.ImeKup,
  93320.           Round(Sum(A.Dolzi), 4) As Prodazba,
  93321.           Round(Sum(A.Pobaruva), 4) As Naplata,
  93322.           Month(A.Datum_Dok) As Mesec,
  93323.           Year(A.Datum_Dok) As Godina
  93324.             FROM AnFinDok A
  93325.             INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  93326.           INNER JOIN TipDok TD ON A.Sifra_Dok=TD.Sifra_Dok AND TD.Dev=''N''
  93327.             WHERE A.Sifra_Za=''1'' '
  93328.     If @TipKup Is Not NULL
  93329.         Set @SSQL = @SSQL + 'AND K.TipKup=''' + @TipKup + ''' '
  93330.     If @Sifra_Kup_Od Is NOT Null
  93331.         SET @SSQL = @SSQL + 'AND A.Sifra_Kup>=''' + Cast(@Sifra_Kup_Od As Varchar(6))+ ''' '
  93332.     If @Sifra_Kup_Do Is NOT Null
  93333.          SET @SSQL = @SSQL + 'AND A.Sifra_Kup<=''' + Cast(@Sifra_Kup_Do As Varchar(6))+ ''' '
  93334.      If @Sifra_OE Is NOT Null
  93335.                SET @SSQL = @SSQL + 'AND A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  93336.     If @Pod1 Is Not NULL
  93337.         Set @SSQL = @SSQL + ' And K.KDrugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  93338.     If @Pod2 Is Not NULL
  93339.         Set @SSQL = @SSQL + ' And K.KDrugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  93340.     If @Pod3 Is Not NULL
  93341.         Set @SSQL = @SSQL + ' And K.KDrugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  93342.     If @Pod4 Is Not NULL
  93343.         Set @SSQL = @SSQL + ' And K.KDrugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  93344.     If @Pod5 Is Not NULL
  93345.         Set @SSQL = @SSQL + ' And K.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  93346.     If @Sifra_Tip Is Not NULL
  93347.         Set @SSQL = @SSQL + ' And K.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  93348.     If @Sifra_Pat Is Not NULL
  93349.     Begin
  93350.         If @KomercKako = 'I'
  93351.             Set @SSQL = @SSQL + ' And A.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  93352.         Else
  93353.             Set @SSQL = @SSQL + ' And K.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  93354.     End
  93355.     If @Datum_Od Is NOT Null
  93356.         SET @SSQL = @SSQL + 'AND Year(A.Datum_Dok)>=' + Cast(Year(@Datum_Od) as Varchar(6)) + ' '
  93357.     If @Datum_Od Is NOT Null
  93358.         SET @SSQL = @SSQL + 'AND Month(A.Datum_Dok)>=' + Cast(Month(@Datum_Od) as Varchar(6)) + ' '
  93359.     If @Datum_Do Is NOT Null
  93360.         SET @SSQL = @SSQL + 'AND Year(A.Datum_Dok)<=' + Cast(Year(@Datum_Do) as Varchar(6)) + ' '
  93361.     If @Datum_Do Is NOT Null
  93362.         SET @SSQL = @SSQL + 'AND Month(A.Datum_Dok)<=' + Cast(Month(@Datum_Do) as Varchar(6)) + ' '
  93363.     If @KoiOE Is Not NULL
  93364.              Set @SSQL  = @SSQL + ' And A.Sifra_OE IN (' + @KoiOE + ') '
  93365.     SET @SSQL = @SSQL + 'GROUP BY A.Sifra_Kup, K.ImeKup, Month(A.Datum_Dok), Year(A.Datum_Dok) '
  93366.     If @Podred = 'S'
  93367.         SET @SSQL = @SSQL + 'ORDER BY Mesec, Godina, A.Sifra_Kup ASC '
  93368.     Else
  93369.         SET @SSQL = @SSQL + 'ORDER BY Mesec, Godina, Prodazba DESC'
  93370.     Exec(@SSQL)
  93371.  
  93372.  
  93373. Go
  93374. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pddgiozp]'))
  93375. drop procedure [dbo].[sp_pddgiozp]
  93376.  
  93377. Go
  93378.  
  93379. CREATE   PROCEDURE sp_PDDGIOZP
  93380.     @Datum_Od    smalldatetime,
  93381.     @Datum_Do    smalldatetime,
  93382.     @Sifra_Dok    smallint,
  93383.     @KoiOe        varchar(30),
  93384.     @Sifra        char(4) 
  93385. AS
  93386. CREATE TABLE #TmpOE (Sifra_OE smallint)
  93387. Declare @SSQL varchar(1000)
  93388. SET @SSQL = 'INSERT INTO #TmpOE SELECT Sifra_OE FROM OrgEd WHERE Sifra_OE IN ('+@KoiOE+')'
  93389. EXEC (@SSQL)
  93390.  
  93391. Create Table #Tmp
  93392.     (Danocen    char(13),
  93393.     ImeKUp     varchar(40),
  93394.     --Adresa    varchar(100),
  93395.     --KlkDok    integer,
  93396.     Sifra char(4),
  93397.     Toc200    integer--decimal(18,2)
  93398.     )
  93399.  
  93400.  
  93401.     Insert Into #Tmp (Danocen, ImeKUp, Sifra,Toc200)
  93402.     SELECT cast(K.Danocen as char(13)), cast(K.ImeKup+''+ K.Adresa +' '+K.Smesto as char(4)) Adresa, @SIfra ,dbo.fn_LevoNuli(cast(Sum(D.Toc200) as integer),8) Iznos--,Count(D.DokrID) KlkDok
  93403.     FROM Dokr D INNER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  93404.     INNER JOIN #TmpOE O ON D.Sifra_OE=O.Sifra_OE
  93405.     WHERE D.Datum_DOK>=@Datum_Od AND D.Datum_Dok<=@Datum_Do AND D.Sifra_Dok=@Sifra_Dok 
  93406.     GROUP BY K.Danocen, K.ImeKup, K.Adresa, K.Smesto
  93407.  
  93408. Select * from #Tmp
  93409.  
  93410.  
  93411.  
  93412.  
  93413. Go
  93414. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecat_analitika]'))
  93415. drop procedure [dbo].[sp_pecat_analitika]
  93416.  
  93417. Go
  93418. CREATE           PROCEDURE sp_Pecat_Analitika
  93419.     @Sifra_Oe        smallint = Null,
  93420.     @KoiOe        varchar(6) = Null,
  93421.     @Sifra_Dok        smallint = Null,
  93422.     @Datum_Od        smalldatetime = Null,
  93423.     @Datum_Do        smalldatetime = Null,
  93424.     @Sifra_Art        varchar(20) = Null,
  93425.     @Sifra_Podg        char(6) = Null,
  93426.     @Sifra_Gr        char(3) = Null,
  93427.     @Sifra_Kup        char(6) = Null,
  93428.     @Sifra_Reg        smallint = Null,
  93429.     @Sifra_Grad        smallint = Null,
  93430.     @Podred        char(1) = 'B',    -- B Broj na dokument,       K - Po ime na komintent
  93431.     @DaliZbirno        char (1) = Null    -- D - zbirno po (Komintent + objekt)
  93432. AS
  93433.     Declare @SSQL as varchar(8000)
  93434.     Create Table #Popis
  93435.     (
  93436.      Datum_Dok    smalldatetime,
  93437.      Sifra_Oe    smallint,
  93438.      Sifra_Dok    smallint,
  93439.      Broj_Dok    int,
  93440.      Datum_Popis    smalldatetime,
  93441.      Sifra_Kup    char(6),
  93442.      Sifra_Obj    smallint,
  93443.      Primeno     decimal(18,6),
  93444.      Popis        decimal(18,6),
  93445.      Ostaveno    decimal(18,6),
  93446.      Vrateno    decimal(18,6),
  93447.      Prodadeno    decimal(18,6),
  93448.      Cena        decimal(18,6)
  93449.     )
  93450.     Set @SSQL = ' Select P.Datum_PopisDok, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Datum_PopisDok, P.Sifra_Kup, P.Sifra_Obj, P.Kolic, P.Popis, P.Ostaveno, 
  93451.                 (P.Popis-P.Ostaveno) Vrateno, (Kolic-P.Popis) Prodadeno,
  93452.                 (Case When P.DanCena = ''N'' Then (P.Cena*(1+P.Posn/100)) Else P.Cena End)
  93453.             From PopisDok P
  93454.             Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  93455.             Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_kup '
  93456.     If @Sifra_Gr Is Not Null
  93457.         Set @SSQL = @SSQL + ' Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg '
  93458.     Set @SSQL = @SSQL + ' Where 1=1 '
  93459.     If @Sifra_Oe Is Not Null
  93460.         Set @SSQL = @SSQL + ' And P.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  93461.     If @KoiOE Is Not Null
  93462.         Set @SSQL = @SSQL + ' And P.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  93463.     If @Sifra_Dok Is Not Null
  93464.         Set @SSQL = @SSQL + ' And P.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  93465.     If @Datum_Od Is Not Null
  93466.         Set @SSQL = @SSQL + ' And P.Datum_PopisDok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  93467.     If @Datum_Do Is Not Null
  93468.         Set @SSQL = @SSQL + ' And P.Datum_PopisDok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  93469.     If @Sifra_Kup Is Not Null
  93470.         Set @SSQL = @SSQL + ' And P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  93471.     If @Sifra_Reg Is Not Null
  93472.         Set @SSQL = @SSQL + ' And Kup.Sifra_Reg = ' + Cast(@Sifra_Reg as varchar(6)) + ' '
  93473.     If @Sifra_Grad Is Not Null
  93474.         Set @SSQL = @SSQL + ' And Kup.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ' '
  93475.     If @Sifra_Art Is Not Null
  93476.         Set @SSQL = @SSQL + ' And P.Sifra_Art = ''' + @Sifra_Art + ''' '
  93477.     If @Sifra_Podg Is Not Null
  93478.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  93479.     If @Sifra_Gr Is Not Null
  93480.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  93481.     Insert Into #Popis Exec(@SSQL)
  93482.     If @DaliZbirno = 'D'
  93483.         Set @SSQL = ' Select Null Datum_Dok, Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok, Null Datum_Popis, 
  93484.             P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, Kup.Uces,
  93485.             Sum(P.Primeno*Cena) Primeno, Sum(P.Popis*P.Cena) Popis, Sum(P.Ostaveno*P.Cena) Ostaveno, 
  93486.             Sum(P.Vrateno*P.Cena) Vrateno, Sum(P.Prodadeno*P.Cena) Prodadeno, 
  93487.             Sum(F.Dolzi) Zadolz, Sum(F.Plateno_Dolzi) as NaplatenIznos '
  93488.     Else     
  93489.         Set @SSQL = ' Select P.Datum_Dok, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Datum_Popis, P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, Kup.Uces,
  93490.             Sum(P.Primeno*Cena) Primeno, Sum(P.Popis*P.Cena) Popis, Sum(P.Ostaveno*P.Cena) Ostaveno, 
  93491.             Sum(P.Vrateno*P.Cena) Vrateno, Sum(P.Prodadeno*P.Cena) Prodadeno, 
  93492.             (F.Dolzi) Zadolz, (F.Plateno_Dolzi) as NaplatenIznos '
  93493.     Set @SSQL = @SSQL + ' From #Popis P
  93494.             Left Outer Join AnFinDok F On F.Sifra_Oe=P.Sifra_Oe And F.Broj_Dok=P.Broj_Dok And F.Sifra_Dok = 99
  93495.             Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_Kup
  93496.             Left Outer Join KObjekti KO On KO.Sifra_Kup=P.Sifra_Kup And KO.Sifra_Obj=P.Sifra_Obj '
  93497.     If @DaliZbirno = 'D'
  93498.         Set @SSQL = @SSQL + ' Group By P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, Kup.Uces '
  93499.     Else 
  93500.         Set @SSQL = @SSQL + ' Group By P.Datum_Dok, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Datum_Popis, P.Sifra_Kup, 
  93501.                     Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, Kup.Uces, (F.Dolzi), (F.Plateno_Dolzi)  '
  93502. /*    Set @SSQL = @SSQL + ' Union
  93503.             Select Null Datum_Dok, Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok, Null Datum_Popis, 
  93504.             F.Sifra_Kup, Kup.ImeKup, 1 Sifra_Obj, ''EUROFARM -centar1'' ImeObj, Kup.Uces,
  93505.             10000 Primeno, 0 Popis, 0 Ostaveno, 
  93506.             0 Vrateno, 10000 Prodadeno, 
  93507.             0 Zadolz, Sum(F.Pobaruva-F.Plateno_Pobar) as NaplatenIznos 
  93508.             From AnFinDok F
  93509.             Inner Join Komint Kup On Kup.Sifra_Kup = F.Sifra_Kup
  93510.             Where F.Sifra_Kup In (Select Sifra_Kup From #Popis)
  93511.             And F.BrojDok = ''' + (Case When Month(@Datum_Od) < 10 Then '0' End) + Cast(Month(@Datum_Od) as varchar(2)) + '/' +  Cast(Year(@Datum_Od) as varchar(4)) + ''' 
  93512.             Group By F.Sifra_Kup, Kup.ImeKup, Kup.Uces '
  93513. */
  93514.     If @DaliZbirno = 'D'    
  93515.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup '
  93516.     Else 
  93517.     Begin
  93518.         If @Podred = 'K'
  93519.             Set @SSQL = @SSQL + ' Order By Kup.ImeKup, P.Datum_Dok '
  93520.         Else If @Podred = 'B'
  93521.             Set @SSQL = @SSQL + ' Order By P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok '
  93522.     End
  93523. print @SSQL
  93524.     Exec(@SSQL)
  93525.  
  93526.  
  93527. Go
  93528. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecat_art_po_popisdok]'))
  93529. drop procedure [dbo].[sp_pecat_art_po_popisdok]
  93530.  
  93531. Go
  93532.  
  93533. CREATE    PROCEDURE sp_Pecat_Art_Po_PopisDok
  93534.     @RbrPopis     smallint,
  93535.     @Sifra_Oe     smallint,
  93536.     @Sifra_Dok     smallint,
  93537.     @Dat_PopisDok_Od smalldatetime,
  93538.     @Dat_PopisDok_Do smalldatetime,
  93539.     @Sifra_Kup    char(6),
  93540.     @Sifra_Obj    smallint = Null
  93541. AS
  93542.     If @Sifra_Obj Is Not Null
  93543.         Select Sifra_Art, Kolic, Popis, Ostaveno
  93544.         From PopisDok 
  93545.         Where RbrPopis=@RbrPopis And Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok
  93546.             And Datum_PopisDok >= @Dat_PopisDok_Od And Datum_PopisDok <= @Dat_PopisDok_Do 
  93547.             And Sifra_Kup=@Sifra_Kup And Sifra_Obj=@Sifra_Obj
  93548.         Order By Datum_PopisDok, Rbr
  93549.     Else
  93550.         Select Sifra_Art, Kolic, Popis, Ostaveno
  93551.         From PopisDok 
  93552.         Where RbrPopis=@RbrPopis And Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok
  93553.             And Datum_PopisDok >= @Dat_PopisDok_Od And Datum_PopisDok <= @Dat_PopisDok_Do 
  93554.             And Sifra_Kup=@Sifra_Kup
  93555.         Order By Datum_PopisDok, Rbr
  93556.  
  93557.  
  93558.  
  93559. Go
  93560. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecat_izvestajprodvrat]'))
  93561. drop procedure [dbo].[sp_pecat_izvestajprodvrat]
  93562.  
  93563. Go
  93564.  
  93565. CREATE      PROCEDURE sp_Pecat_IzvestajProdVrat
  93566.     @Sifra_Oe        smallint = Null,
  93567.     @KoiOe        varchar(6) = Null,
  93568.     @Datum_Od        smalldatetime = Null,
  93569.     @Datum_Do        smalldatetime = Null,
  93570.     @Sifra_Art_Od        varchar(20) = Null,
  93571.     @Sifra_Art_Do        varchar(20) = Null,
  93572.     @Sifra_Podg        char(6) = Null,
  93573.     @Sifra_Gr        char(3) = Null,
  93574.     @Sifra_Kup        char(6) = Null,
  93575.     @Sifra_Reg        smallint = Null,
  93576.     @Sifra_Grad        smallint = Null,
  93577.     @VoTojGrad        char(1) = 'D',        -- D - Komintenti koi se vo toj grad     N - Nadvor od toj grad          X - Neraspredeleni
  93578.     @OdKojaTab        char(1) = 'P',        -- P - od PopisDok        R - od RasporedIsp
  93579.     @SoDanok        char(1) = 'D'
  93580. AS
  93581.     Declare @SSQL as varchar(8000)
  93582.     Declare @SSQLUsl as varchar(8000)
  93583.     Create Table #Popis
  93584.     (
  93585.      Sifra_Kup    char(6),
  93586.      Sifra_Obj    smallint,
  93587.      Sifra_Art    varchar(20),
  93588.      Kolic         decimal(18,6),
  93589.      Popis        decimal(18,6),
  93590.      Ostaveno    decimal(18,6),
  93591.      Vrateno    decimal(18,6),
  93592.      Cena        decimal(18,6)
  93593.     )
  93594.     Create Table #Konfig
  93595.     (
  93596.      Cena_1_SoDanok char(1)
  93597.     )
  93598.     Set @SSQL = 'Select Cena_1_SoDanok From Konfig '
  93599.     Insert Into #Konfig Exec(@SSQL)
  93600.     Declare @DanDogCena as char(1)
  93601.     Select @DanDogCena = Cena_1_SoDanok From #Konfig
  93602.     If @OdKojaTab = 'R'
  93603.     Begin
  93604.         Set @SSQL = ' Select S.Sifra_Kup, S.Sifra_Obj, S.Sifra_Art, Sum(S.Kolic), Null, Null, Null,
  93605.                     dbo.fn_VratiCena(K.DogCena, T.ProcOsn, ''' + @DanDogCena + ''', ''' + @SoDanok + ''')
  93606.                 From RasporedIspor R
  93607.                 Inner Join RasporedIspStavki S On S.RasporID=R.RasporID
  93608.                 Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  93609.                 Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar
  93610.                 Left Outer Join Komint Kup On Kup.Sifra_Kup=S.Sifra_kup 
  93611.                 Left Outer Join KObjekti KO On KO.Sifra_Kup=S.Sifra_kup And KO.Sifra_Obj=S.Sifra_Obj '
  93612.         If @Sifra_Gr Is Not Null
  93613.             Set @SSQL = @SSQL + ' Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg '
  93614.         Set @SSQL = @SSQL + ' Where 1=1 '
  93615.         If @Sifra_Oe Is Not Null
  93616.             Set @SSQL = @SSQL + ' And R.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  93617.         If @KoiOE Is Not Null
  93618.             Set @SSQL = @SSQL + ' And R.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  93619.         If @Datum_Od Is Not Null
  93620.             Set @SSQL = @SSQL + ' And R.Datum_Raspor >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  93621.         If @Datum_Do Is Not Null
  93622.             Set @SSQL = @SSQL + ' And R.Datum_Raspor <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  93623.         If @Sifra_Kup Is Not Null        
  93624.             Set @SSQL = @SSQL + ' And S.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  93625.         If @Sifra_Reg Is Not Null
  93626.             Set @SSQL = @SSQL + ' And Kup.Sifra_Reg = ' + Cast(@Sifra_Reg as varchar(6)) + ' '
  93627.         If @Sifra_Grad Is Not Null And @VoTojGrad = 'D'
  93628.             Set @SSQL = @SSQL + ' And ((S.Sifra_Obj Is Not Null And KO.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')
  93629.                         OR (S.Sifra_Obj Is Null and Kup.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')) '
  93630.         If @Sifra_Grad Is Not Null And @VoTojGrad = 'N'
  93631.              Set @SSQL = @SSQL + ' And ((S.Sifra_Obj Is Not Null And KO.Sifra_Grad <> ' + Cast(@Sifra_Grad as varchar(6)) + ')
  93632.                         OR (S.Sifra_Obj Is Null And Kup.Sifra_Grad <> ' + Cast(@Sifra_Grad as varchar(6)) + ' )) '
  93633.         If @VoTojGrad = 'X'  -- Neraspredeleni po Gradovi
  93634.              Set @SSQL = @SSQL + ' And ((S.Sifra_Obj Is Not Null And KO.Sifra_Grad Is Null)
  93635.                         OR (S.Sifra_Obj Is Null And Kup.Sifra_Grad Is Null)) '
  93636. --        If @Sifra_Grad Is Not Null And @VoTojGrad = 'D'
  93637. --            Set @SSQL = @SSQL + ' And Kup.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ' '
  93638.         If @Sifra_Art_Od Is Not Null
  93639.             Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  93640.         If @Sifra_Art_Do Is Not Null
  93641.             Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  93642.         If @Sifra_Podg Is Not Null
  93643.             Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  93644.         If @Sifra_Gr Is Not Null
  93645.             Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  93646.         Set @SSQL = @SSQL + ' Group By S.Sifra_Kup, S.Sifra_Obj, S.Sifra_Art, dbo.fn_VratiCena(K.DogCena, T.ProcOsn, ''' + @DanDogCena + ''', ''' + @SoDanok + ''') '
  93647.         Insert Into #Popis Exec(@SSQL)
  93648.     End
  93649.     Else 
  93650.     Begin
  93651.         Set @SSQL = ' Select P.Sifra_Kup, P.Sifra_Obj, P.Sifra_Art, Sum(P.Kolic), Sum(P.Popis), Sum(P.Ostaveno), Sum(P.Popis-P.Ostaveno) Vreteno,
  93652.                     dbo.fn_VratiCena(P.Cena, T.ProcOsn, ''' + @DanDogCena + ''', ''' + @SoDanok + ''')
  93653.                 From PopisDok P
  93654.                 Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  93655.                 Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar
  93656.                 Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_kup 
  93657.                 Left Outer Join KObjekti KO On KO.Sifra_Kup=P.Sifra_kup And KO.Sifra_Obj=P.Sifra_Obj '
  93658.         If @Sifra_Gr Is Not Null
  93659.             Set @SSQL = @SSQL + ' Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg '
  93660.         Set @SSQL = @SSQL + ' Where 1=1 '
  93661.         If @Sifra_Oe Is Not Null
  93662.             Set @SSQL = @SSQL + ' And P.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  93663.         If @KoiOE Is Not Null
  93664.             Set @SSQL = @SSQL + ' And P.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  93665.         If @Datum_Od Is Not Null
  93666.             Set @SSQL = @SSQL + ' And P.Datum_PopisDok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  93667.         If @Datum_Do Is Not Null
  93668.             Set @SSQL = @SSQL + ' And P.Datum_PopisDok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  93669.         If @Sifra_Kup Is Not Null        
  93670.             Set @SSQL = @SSQL + ' And P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  93671.         If @Sifra_Reg Is Not Null
  93672.             Set @SSQL = @SSQL + ' And Kup.Sifra_Reg = ' + Cast(@Sifra_Reg as varchar(6)) + ' '
  93673.         If @Sifra_Grad Is Not Null And @VoTojGrad = 'D'
  93674.             Set @SSQL = @SSQL + ' And ((P.Sifra_Obj Is Not Null And KO.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')
  93675.                         OR (P.Sifra_Obj Is Null and Kup.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')) '
  93676.         If @Sifra_Grad Is Not Null And @VoTojGrad = 'N'
  93677.              Set @SSQL = @SSQL + ' And ((P.Sifra_Obj Is Not Null And KO.Sifra_Grad <> ' + Cast(@Sifra_Grad as varchar(6)) + ')
  93678.                         OR (P.Sifra_Obj Is Null And Kup.Sifra_Grad <> ' + Cast(@Sifra_Grad as varchar(6)) + ' )) '
  93679.         If @VoTojGrad = 'X'  -- Neraspredeleni po Gradovi
  93680.              Set @SSQL = @SSQL + ' And ((P.Sifra_Obj Is Not Null And KO.Sifra_Grad Is Null)
  93681.                         OR (P.Sifra_Obj Is Null And Kup.Sifra_Grad Is Null)) '
  93682.     --    If @Sifra_Grad Is Not Null And @VoTojGrad = 'D'
  93683.     --        Set @SSQL = @SSQL + ' And Kup.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ' '
  93684.         If @Sifra_Art_Od Is Not Null
  93685.             Set @SSQL = @SSQL + ' And P.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  93686.         If @Sifra_Art_Do Is Not Null
  93687.             Set @SSQL = @SSQL + ' And P.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  93688.         If @Sifra_Podg Is Not Null
  93689.             Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  93690.         If @Sifra_Gr Is Not Null
  93691.             Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  93692.         Set @SSQL = @SSQL + ' Group By P.Sifra_Kup, P.Sifra_Obj, P.Sifra_Art, dbo.fn_VratiCena(P.Cena, T.ProcOsn, ''' + @DanDogCena + ''', ''' + @SoDanok + ''') '
  93693.         Insert Into #Popis Exec(@SSQL)
  93694. print @SSQL
  93695.     End
  93696.     Select P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, P.Sifra_Art, K.ImeArt, P.Kolic, P.Popis, P.Ostaveno, P.Vrateno, 
  93697.         Round((Case when P.Kolic <=0 Then 0 Else (P.Vrateno/P.Kolic*100) End),4) ProcVrat, P.Cena
  93698.     From #Popis P
  93699.     Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  93700.     Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_Kup
  93701.     Left Outer Join KObjekti KO On KO.Sifra_Kup=P.Sifra_Kup And KO.Sifra_Obj=P.Sifra_Obj
  93702.  
  93703.  
  93704.  
  93705.  
  93706. Go
  93707. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecat_izvprodvrat_poraspored]'))
  93708. drop procedure [dbo].[sp_pecat_izvprodvrat_poraspored]
  93709.  
  93710. Go
  93711. CREATE   PROCEDURE sp_Pecat_IzvProdVrat_PoRaspored
  93712.     @Sifra_Oe        smallint = Null,
  93713.     @Sifra_Nar        smallint = Null,
  93714.     @Broj_Raspored    int,
  93715.     @Sifra_Art        varchar(20) = Null,
  93716.     @Sifra_Podg        char(6) = Null,
  93717.     @Sifra_Gr        char(3) = Null,
  93718.     @Sifra_Kup        char(6) = Null,
  93719.     @Sifra_Reg        smallint = Null,
  93720.     @Sifra_Grad        smallint = Null,
  93721.     @VoTojGrad        char(1) = 'D'        -- D - Komintenti koi se vo toj grad     N - Nadvor od toj grad          X - Neraspredeleni
  93722. AS
  93723.     Declare @SSQL as varchar(8000)
  93724.     Declare @SSQLUsl as varchar(8000)
  93725.     ---------------------------- Artikli so kolicini za Rasporeduvanje ----------------------------
  93726.     Declare @Broj_Nar_Lista varchar (50)
  93727.     Select @Broj_Nar_Lista=Broj_Nar_Lista 
  93728.     From RasporedIspor 
  93729.     Where Sifra_Oe = @Sifra_Oe And Sifra_Nar = @Sifra_Nar And Broj_Raspored=@Broj_Raspored
  93730.     Create Table #Art
  93731.     (
  93732.      Broj_Nar    Smallint,
  93733.      Rbr        Smallint,
  93734.      Sifra_Art    Varchar(20)
  93735.     )
  93736.     Set @SSQL = ' Insert Into #Art Select Min(Broj_Nar), Min(StaNarID), Sifra_Art 
  93737.             From StaNarac
  93738.              WHERE Sifra_OE='  + cast(@Sifra_OE as varchar (5)) + 
  93739.                             ' And Sifra_Nar=' + cast(@Sifra_Nar as Varchar(5)) + 
  93740.                             ' And Broj_Nar in (' + @Broj_Nar_Lista + ') 
  93741.                         group by Sifra_Art' 
  93742.     Exec(@SSQL)
  93743.     Create Table #ZaRaspored
  93744.     (
  93745.      Sifra_Art    varchar(20),
  93746.      KolicZaRaspor    decimal(18,6)
  93747.     )
  93748.     Set @SSQL = ' SELECT S.Sifra_Art, Sum (S.Kolic) as Kolic 
  93749.             FROM StaNarac S
  93750.             INNER JOIN #Art A  ON S.Sifra_Art = A.Sifra_Art
  93751.             WHERE S.Sifra_OE='  + cast(@Sifra_OE as varchar (5)) + '
  93752.             And S.Sifra_Nar=' + cast(@Sifra_Nar as Varchar(5)) + '
  93753.             And S.Broj_Nar in (' + @Broj_Nar_Lista + ') 
  93754.         Group by S.Sifra_Art ' 
  93755.     Insert Into #ZaRaspored Exec(@SSQL)
  93756.     ----------------------------------------------------------------------------------------------------------------------------------------------------
  93757.     Create Table #Popis
  93758.     (
  93759.      Datum_Raspor    smalldatetime,
  93760.      Sifra_Kup    char(6),
  93761.      Sifra_Obj    smallint,
  93762.      Sifra_Art    varchar(20),
  93763.      Kolic         decimal(18,6),
  93764.      Popis        decimal(18,6),
  93765.      Ostaveno    decimal(18,6),
  93766.      Vrateno    decimal(18,6),
  93767.      Tip_Raspored    char(1) 
  93768.     )
  93769.     Set @SSQL = ' Select R.Datum_Raspor, S.Sifra_Kup, S.Sifra_Obj, S.Sifra_Art, Sum(S.Kolic), Null, Null, Null, R.Tip_Raspored
  93770.             From RasporedIspor R
  93771.             Inner Join RasporedIspStavki S On S.RasporID=R.RasporID
  93772.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  93773.             Left Outer Join Komint Kup On Kup.Sifra_Kup=S.Sifra_kup 
  93774.             Left Outer Join KObjekti KO On KO.Sifra_Kup=S.Sifra_kup And KO.Sifra_Obj=S.Sifra_Obj '
  93775.     If @Sifra_Gr Is Not Null
  93776.         Set @SSQL = @SSQL + ' Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg '
  93777.     Set @SSQL = @SSQL + ' Where 1=1 '
  93778.     If @Sifra_Oe Is Not Null
  93779.         Set @SSQL = @SSQL + ' And R.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  93780.     If @Sifra_Nar Is Not Null
  93781.         Set @SSQL = @SSQL + ' And R.Sifra_Nar = ' + Cast(@Sifra_Nar as varchar(6)) + ' '
  93782.     If @Broj_Raspored Is Not Null
  93783.         Set @SSQL = @SSQL + ' And R.Broj_Raspored = ' + Cast(@Broj_Raspored as varchar(6)) + ' '
  93784.     If @Sifra_Kup Is Not Null        
  93785.         Set @SSQL = @SSQL + ' And S.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  93786.     If @Sifra_Reg Is Not Null
  93787.         Set @SSQL = @SSQL + ' And Kup.Sifra_Reg = ' + Cast(@Sifra_Reg as varchar(6)) + ' '
  93788.     If @Sifra_Grad Is Not Null And @VoTojGrad = 'D'
  93789.         Set @SSQL = @SSQL + ' And ((S.Sifra_Obj Is Not Null And KO.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')
  93790.                     OR (S.Sifra_Obj Is Null and Kup.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')) '
  93791.     If @Sifra_Grad Is Not Null And @VoTojGrad = 'N'
  93792.          Set @SSQL = @SSQL + ' And ((S.Sifra_Obj Is Not Null And KO.Sifra_Grad <> ' + Cast(@Sifra_Grad as varchar(6)) + ')
  93793.                     OR (S.Sifra_Obj Is Null And Kup.Sifra_Grad <> ' + Cast(@Sifra_Grad as varchar(6)) + ' )) '
  93794.     If @VoTojGrad = 'X'  -- Neraspredeleni po Gradovi
  93795.          Set @SSQL = @SSQL + ' And ((S.Sifra_Obj Is Not Null And KO.Sifra_Grad Is Null)
  93796.                     OR (S.Sifra_Obj Is Null And Kup.Sifra_Grad Is Null)) '
  93797.     If @Sifra_Art Is Not Null
  93798.         Set @SSQL = @SSQL + ' And S.Sifra_Art = ''' + @Sifra_Art + ''' '
  93799.     If @Sifra_Podg Is Not Null
  93800.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  93801.     If @Sifra_Gr Is Not Null
  93802.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  93803.     Set @SSQL = @SSQL + ' Group By R.Datum_Raspor, S.Sifra_Kup, S.Sifra_Obj, S.Sifra_Art, R.Tip_Raspored '
  93804.     Insert Into #Popis Exec(@SSQL)
  93805.     ----------------------------------------------------------------------------------------------------------------------------------------------
  93806.     -------------------------------------------- Rasporedeni Artikli -------------------------------------------------------
  93807.     Create Table #RasporArt
  93808.     (
  93809.      Sifra_Art    varchar(20),
  93810.      RasporKolic    decimal(18,6)
  93811.     )
  93812.     Insert Into #RasporArt Select Sifra_Art, Sum(Kolic) From #Popis Group By Sifra_Art
  93813.     ----------------------------------------------------------------------------------------------------------------------------------
  93814.     Select P.Datum_Raspor, P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, P.Sifra_Art, K.ImeArt, P.Kolic, P.Popis, P.Ostaveno, P.Vrateno, 
  93815.         Round((P.Vrateno/P.Kolic*100),4) ProcVrat, Z.KolicZaRaspor, R.RasporKolic, (Z.KolicZaRaspor-R.RasporKolic) OstZaRaspor,
  93816.         A.Broj_Nar, A.Rbr, P.Tip_Raspored
  93817.     From #Popis P
  93818.     Left Outer Join #Art A On A.Sifra_Art = P.Sifra_Art
  93819.     Left Outer Join #RasporArt R On R.Sifra_Art = P.Sifra_Art
  93820.     Left Outer Join #ZaRaspored Z On Z.Sifra_Art = P.Sifra_Art
  93821.     Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  93822.     Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_Kup
  93823.     Left Outer Join KObjekti KO On KO.Sifra_Kup=P.Sifra_Kup And KO.Sifra_Obj=P.Sifra_Obj
  93824.  
  93825.  
  93826. Go
  93827. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecat_popisdok_komint]'))
  93828. drop procedure [dbo].[sp_pecat_popisdok_komint]
  93829.  
  93830. Go
  93831.  
  93832.  
  93833.  
  93834. CREATE    PROCEDURE sp_Pecat_PopisDok_Komint
  93835.     @Sifra_Kup    char(6),    
  93836.     @Sifra_Obj    smallint,
  93837.     @Datum_Od    smalldatetime,
  93838.     @Datum_Do    smalldatetime,
  93839.     @Sifra_Art    varchar(20)
  93840.  AS
  93841.     Declare @SSQL as varchar(8000)
  93842.     Set @SSQL = ' Select P.RbrPopis, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Sifra_Art, P.Rbr, P.Datum_PopisDok, 
  93843.             P.Kolic, P.Popis, P.Ostaveno, P.Cena, P.DanCena, P.Posn, P.DokrId_Vrat, P.Datum_Dok, 
  93844.             P.Sifra_Kup, P.Sifra_Obj, P.Uces, P.RasporID, P.TipPopisDok
  93845.         From PopisDok P
  93846.         Where P.Sifra_Kup = ' + @Sifra_Kup + ' And P.Sifra_Art = ''' + @Sifra_Art + ''' 
  93847.             And P.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' 
  93848.             And P.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  93849.     If @Sifra_Obj Is Not Null
  93850.         Set @SSQL = @SSQL + ' And P.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  93851.     Set @SSQL = @SSQL + ' Order By P.Datum_Dok, P.Sifra_Oe, P.SifrA_Dok, P.Broj_Dok '
  93852.     Exec(@SSQL)
  93853.  
  93854.  
  93855.  
  93856. Go
  93857. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecat_popisdok_komint_2]'))
  93858. drop procedure [dbo].[sp_pecat_popisdok_komint_2]
  93859.  
  93860. Go
  93861.  
  93862.  
  93863. Create  PROCEDURE sp_Pecat_PopisDok_Komint_2
  93864.     @Sifra_Kup    char(6),    
  93865.     @Sifra_Obj    smallint,
  93866.     @Datum_Od    smalldatetime,
  93867.     @Datum_Do    smalldatetime,
  93868.     @Sifra_Art_2    char (2)
  93869.  AS
  93870.     Declare @SSQL as varchar(8000)
  93871.     Set @SSQL = ' Select P.RbrPopis, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Sifra_Art, P.Rbr, P.Datum_PopisDok, 
  93872.             P.Kolic, P.Popis, P.Ostaveno, P.Cena, P.DanCena, P.Posn, P.DokrId_Vrat, P.Datum_Dok, 
  93873.             P.Sifra_Kup, P.Sifra_Obj, P.Uces, P.RasporID, P.TipPopisDok
  93874.         From PopisDok P
  93875.         Where P.Sifra_Kup = ' + @Sifra_Kup + ' And Substring(P.Sifra_Art, 1, 2) = ''' + @Sifra_Art_2 + ''' 
  93876.             And P.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' 
  93877.             And P.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  93878.     If @Sifra_Obj Is Not Null
  93879.         Set @SSQL = @SSQL + ' And P.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  93880.     Set @SSQL = @SSQL + ' Order By P.Datum_Dok, P.Sifra_Oe, P.SifrA_Dok, P.Broj_Dok '
  93881.     Exec(@SSQL)
  93882.  
  93883.  
  93884.  
  93885. Go
  93886. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecat_predlozi]'))
  93887. drop procedure [dbo].[sp_pecat_predlozi]
  93888.  
  93889. Go
  93890.  
  93891.  
  93892.  
  93893.  
  93894. CREATE      PROCEDURE sp_Pecat_Predlozi 
  93895.     @RbrPopis    smallint, 
  93896.     @Sifra_Oe    smallint, 
  93897.     @Sifra_Dok    smallint, 
  93898.     @Datum_Dok_Od    datetime,
  93899.     @Datum_Dok_Do    datetime
  93900. AS
  93901.     Select P.Broj_Dok, P.Datum_Dok, P.Sifra_Kup, 
  93902.            Case When P.Sifra_Obj Is Null Then '' else cast(P.Sifra_Obj as varchar (3)) end as Sifra_Obj,
  93903.                P.Sifra_Art, substring(P.Sifra_Art,1,2) as Sifra_Art_Kratok,
  93904.                P.Kolic as Primeno, P.Popis, P.Ostaveno, P.Datum_Dok
  93905.     From PopisDok P
  93906.     Where P.RbrPopis=@RbrPopis And P.Sifra_Oe=@Sifra_Oe And P.Sifra_Dok=@Sifra_Dok 
  93907.               And P.Datum_Dok >= @Datum_Dok_Od And P.Datum_Dok <= @Datum_Dok_Do
  93908.     Order By Sifra_Kup, Sifra_Obj, Sifra_Art, Datum_Dok        -- Kriicno e da e ovoj redosled
  93909.     Return @@ERROR
  93910.  
  93911.  
  93912.  
  93913. Go
  93914. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecati_doznaka]'))
  93915. drop procedure [dbo].[sp_pecati_doznaka]
  93916.  
  93917. Go
  93918. CREATE PROCEDURE sp_Pecati_Doznaka
  93919.     @Broj_Doznaka   Int
  93920. AS
  93921.     Select * 
  93922.     From Doznaki 
  93923.     Where Broj_Doznaka=@Broj_Doznaka
  93924.  
  93925.  
  93926. Go
  93927. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecati_poster]'))
  93928. drop procedure [dbo].[sp_pecati_poster]
  93929.  
  93930. Go
  93931. CREATE     PROCEDURE sp_Pecati_Poster
  93932.     @Sifra_Oe    smallint,
  93933.     @Sifra_Dok    smallint,
  93934.     @Broj_Dok    int,
  93935.     @Sifra_Art    varchar(20) = Null Output,
  93936.     @Tezina_Bruto    decimal(18,0) = Null Output,
  93937.     @Tezina_Neto    decimal(18,0) = Null Output,
  93938.     @Tezina_Teor    decimal(18,4) = Null Output,
  93939.     @KontrSer    varchar(25) = Null Output,
  93940.     @Nom        varchar(50) = Null Output,
  93941.     @RabNalozi    varchar(300) = Null Output
  93942. AS
  93943.     Select E.*, K.ImeArt, K.Alt_Ime2, D2.Sirina, D2.Visina, D2.DodOzn2, D3.Tezina, RN.Broj_RabN, 
  93944.                    DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab, RA.ImeRab, SM.Ime_Smena, HI.Ime_Hilzna, KS.KontrSerSta
  93945.     From EvProizvod E
  93946.     Left Outer Join KatSerBrSta KS On KS.KontrSer = E.KontrSer 
  93947.     Inner Join Katart K On K.Sifra_Art = E.Sifra_Art
  93948.     Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2
  93949.     Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3
  93950.     Inner Join DokRabNal DRN On DRN.DokrID=E.DokrID
  93951.     Inner Join Dokr D On D.DokrID=DRN.DokrID
  93952.     Inner Join RabNal RN On RN.RabNalID=DRN.RabNalID
  93953.     Left Outer Join Rabotnik RA On RA.Sifra_Rab = DRN.Sifra_Rab
  93954.     Left Outer Join Smeni SM On SM.Sifra_Smena = DRN.Sifra_Smena
  93955.     Left Outer Join Hilzni HI On HI.Sifra_Hilzna = E.Sifra_Hilzna
  93956.     Where  D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  93957.     Select @Sifra_Art=E.Sifra_Art, @Tezina_Bruto=Tezina_Bruto, @Tezina_Neto=Tezina_Neto, 
  93958.         @Tezina_Teor=D2.Sirina*D2.Visina*D3.Tezina*E.Kolku_Edinici/10000000,
  93959.         @KontrSer=E.KontrSer, @Nom=K.Nom
  93960.     From EvProizvod E
  93961.     Inner Join Katart K On K.Sifra_Art = E.Sifra_Art
  93962.     Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2
  93963.     Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3
  93964.     Inner Join DokRabNal DRN On DRN.DokrID=E.DokrID
  93965.     Inner Join Dokr D On D.DokrID=DRN.DokrID
  93966.     Where  D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  93967.     ---------------- Po koj se rabotni nalozi se proizvedeni Tamburite koi vleguvaat vo Rolnite
  93968.     Declare @Broj_RabN as smallint
  93969.     Set @RabNalozi = ''
  93970.     Create Table #RabNal
  93971.     (
  93972.      Broj_RabN    int
  93973.     )
  93974.     Insert Into #RabNal
  93975.     Select Distinct KS.Broj_RabN
  93976.     From KatSerBr KS
  93977.     Inner Join KatSerBrSta KSS On KSS.KontrSerSta = KS.KontrSer
  93978.     Where KSS.KontrSerSta In (Select KS.KontrSerSta From EvProizvod E
  93979.                             Left Outer Join KatSerBrSta KS On KS.KontrSer = E.KontrSer 
  93980.                             Inner Join DokRabNal DRN On DRN.DokrID=E.DokrID
  93981.                             Inner Join Dokr D On D.DokrID=DRN.DokrID
  93982.                             Where  D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok)
  93983.     Declare RabN Cursor Fast_Forward For Select Broj_RabN From #RabNal
  93984.     Open RabN
  93985.     Fetch Next From RabN Into @Broj_RabN
  93986.     While @@Fetch_Status = 0
  93987.     Begin
  93988.         Set @RabNalozi = @RabNalozi + Cast(@Broj_RabN as varchar(10)) + ', '
  93989.         Fetch Next From RabN Into @Broj_RabN
  93990.     End
  93991.     Close RabN
  93992.     Deallocate RabN
  93993.     If Len(@RabNalozi) > 1
  93994.         Set @RabNalozi = Substring(@RabNalozi, 1, (Len(@RabNalozi)-1) )
  93995.     -------------------------------------------------------------------------------------------------------------------------------------
  93996.  
  93997.  
  93998. Go
  93999. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecati_poster_tabaci]'))
  94000. drop procedure [dbo].[sp_pecati_poster_tabaci]
  94001.  
  94002. Go
  94003.  
  94004.  
  94005. CREATE       PROCEDURE sp_Pecati_Poster_Tabaci
  94006.     @Sifra_Oe    smallint,
  94007.     @Sifra_Dok    smallint,
  94008.     @Broj_Dok    int,
  94009.     @Sifra_Art    varchar(20) = Null Output,
  94010.     @Tezina_Bruto    decimal(18,0) = Null Output,
  94011.     @Tezina_Neto    decimal(18,0) = Null Output,
  94012.     @Tezina_Teor    decimal(18,4) = Null Output,
  94013.     @KontrSer    varchar(25) = Null Output,
  94014.     @Nom        varchar(50) = Null Output,
  94015.     @RabNalozi    varchar(300) = Null Output
  94016. AS
  94017.     Select E.*, K.ImeArt, K.Alt_Ime2, D2.Sirina, D2.Visina, D2.DodOzn2, D3.Tezina, RN.Broj_RabN, 
  94018.                    DRN.Datum_Dok, DRN.Sifra_Smena, DRN.Sifra_Rab, RA.ImeRab, SM.Ime_Smena, HI.Ime_Hilzna, Null as KontrSerSta
  94019.     From EvProizvod E
  94020.     Inner Join Katart K On K.Sifra_Art = E.Sifra_Art
  94021.     Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2
  94022.     Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3
  94023.     Inner Join DokRabNal DRN On DRN.DokrID=E.DokrID
  94024.     Inner Join Dokr D On D.DokrID=DRN.DokrID
  94025.     Inner Join RabNal RN On RN.RabNalID=DRN.RabNalID
  94026.     Left Outer Join Rabotnik RA On RA.Sifra_Rab = DRN.Sifra_Rab
  94027.     Left Outer Join Smeni SM On SM.Sifra_Smena = DRN.Sifra_Smena
  94028.     Left Outer Join Hilzni HI On HI.Sifra_Hilzna = E.Sifra_Hilzna
  94029.     Where  D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  94030.     Select @Sifra_Art=E.Sifra_Art, @Tezina_Bruto=Tezina_Bruto, @Tezina_Neto=Tezina_Neto, 
  94031.         @Tezina_Teor=D2.Sirina*D2.Visina*D3.Tezina*E.Kolku_Edinici/10000000,
  94032.         @KontrSer=E.KontrSer, @Nom=K.Nom
  94033.     From EvProizvod E
  94034.     Inner Join Katart K On K.Sifra_Art = E.Sifra_Art
  94035.     Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2
  94036.     Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3
  94037.     Inner Join DokRabNal DRN On DRN.DokrID=E.DokrID
  94038.     Inner Join Dokr D On D.DokrID=DRN.DokrID
  94039.     Where  D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  94040.     ---------------- Po koj se rabotni nalozi se proizvedeni Tamburite koi vleguvaat vo Rolnite
  94041.     Declare @Broj_RabN as smallint
  94042.     Set @RabNalozi = ''
  94043.     Create Table #RabNal
  94044.     (
  94045.      Broj_RabN    int
  94046.     )
  94047.     Insert Into #RabNal
  94048.     Select Distinct M.Broj_RabN
  94049.     From KatSerBr M
  94050.     Inner Join KatSerBrSta RS On RS.KontrSerSta = M.KontrSer
  94051.     Inner Join KatSerBr R On R.KontrSer = RS.KontrSer
  94052.     Inner Join KatSerBrSta TS On TS.KontrSerSta = R.KontrSer
  94053.     Where TS.KontrSerSta In (Select KS.KontrSerSta From EvProizvod E
  94054.                 Left Outer Join KatSerBrSta KS On KS.KontrSer = E.KontrSer 
  94055.                 Inner Join DokRabNal DRN On DRN.DokrID=E.DokrID
  94056.                 Inner Join Dokr D On D.DokrID=DRN.DokrID
  94057.                 Where  D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok)
  94058.     Declare RabN Cursor Fast_Forward For Select Broj_RabN From #RabNal
  94059.     Open RabN
  94060.     Fetch Next From RabN Into @Broj_RabN
  94061.     While @@Fetch_Status = 0
  94062.     Begin
  94063.         Set @RabNalozi = @RabNalozi + Cast(@Broj_RabN as varchar(10)) + ', '
  94064.         Fetch Next From RabN Into @Broj_RabN
  94065.     End
  94066.     Close RabN
  94067.     Deallocate RabN
  94068.     If Len(@RabNalozi) > 1
  94069.         Set @RabNalozi = Substring(@RabNalozi, 1, (Len(@RabNalozi)-1) )
  94070.     -------------------------------------------------------------------------------------------------------------------------------------
  94071.  
  94072.  
  94073.  
  94074. Go
  94075. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecati_whm_loketik]'))
  94076. drop procedure [dbo].[sp_pecati_whm_loketik]
  94077.  
  94078. Go
  94079.  
  94080. CREATE   PROCEDURE sp_Pecati_Whm_LokEtik
  94081.     @Sifra_OE     Smallint,
  94082.        @Lokac_ID    varchar(30),
  94083.         @Lokac_X        char(4),
  94084.         @Lokac_Y        char(4),
  94085.     @Lokac_Z        char(4)
  94086.  AS
  94087.     Declare @SSQL as varchar(4000)
  94088.     Set @SSQL = ' SELECT * FROM WhmLokacija W Where 1=1 '
  94089.     If @Lokac_X Is Not Null 
  94090.         Set @SSQL = @SSQL + ' And W.Lokac_X = ''' + @Lokac_X + ''' '
  94091.         If @Lokac_Y Is Not Null 
  94092.         Set @SSQL = @SSQL + ' And W.Lokac_Y = ''' + @Lokac_Y + ''' '
  94093.     If @Lokac_Z Is Not Null 
  94094.         Set @SSQL = @SSQL + ' And W.Lokac_Z = ''' + @Lokac_Z + ''' '
  94095.         If @Sifra_OE Is NOT Null
  94096.         SET @SSQL = @SSQL + ' and W.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  94097.     If @Lokac_ID Is Not Null
  94098.         Set @SSQL = @SSQL + ' And W.Lokac_ID = ''' + @Lokac_ID + ''' '
  94099.  
  94100.         Exec (@SSQL)
  94101.  
  94102.  
  94103.  
  94104.  
  94105.  
  94106.  
  94107. Go
  94108. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecatiizjava]'))
  94109. drop procedure [dbo].[sp_pecatiizjava]
  94110.  
  94111. Go
  94112.  
  94113.  
  94114.  
  94115. CREATE      procedure sp_PecatiIzjava
  94116.     @Sifra_Art varchar(20)
  94117. As     
  94118.      Select V.*, K.ImeArt, K.Drugo1,KO.ImeKup,KO.Adresa, KO.Smesto, KO.Zemja, D1.Ime_1, K.Sifra_Drg, DR.Ime, 
  94119.            K.Drugo2, D2.Ime_2, K.Drugo3, D3.Ime_3, K.Kto, K.Drugo4, D4.Ime_4, VZ.*,
  94120.           '' BrSasijaExt, '' BrMotorExt, 0 GodProizExt, '' Ime_3Ext, '' OpisExt,
  94121.             0 Masa_Kgr, 0 Sila_KW
  94122.   
  94123.     from Vozila V 
  94124.     inner join Katart K on V.Sifra_Art=K.Sifra_Art
  94125.     left outer join Komint KO on K.Kto=KO.Sifra_Kup
  94126.     left outer join Drugo1 D1 on K.Drugo1= D1.Sifra_1
  94127.     left outer join Drugo2 D2 on K.Drugo2= D2.Sifra_2
  94128.     left outer join Drugo3 D3 on K.Drugo3= D3.Sifra_3
  94129.     left outer join Drugo4 D4 on K.Drugo4= D4.Sifra_4
  94130.     left outer join DrgPodel DR on K.Sifra_drg= DR. Sifra_Drg
  94131.     left outer join VozIzjava VZ on V.Sifra_Art=VZ.Sifra_Art
  94132.     Where V.Sifra_Art=@Sifra_Art
  94133.  
  94134.  
  94135.  
  94136.  
  94137.  
  94138.  
  94139.  
  94140.  
  94141.  
  94142. Go
  94143. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecatiizjava_ser]'))
  94144. drop procedure [dbo].[sp_pecatiizjava_ser]
  94145.  
  94146. Go
  94147.  
  94148.  
  94149. CREATE   procedure sp_PecatiIzjava_Ser
  94150.  
  94151.     @Sifra_Art varchar(20),
  94152.     @KontrSer  varchar(30)
  94153.  
  94154. As     
  94155.  
  94156.      Select V.*, K.ImeArt, K.Drugo1,KO.ImeKup,KO.Adresa, KO.Smesto, KO.Zemja, D1.Ime_1, K.Sifra_Drg, DR.Ime, 
  94157.            K.Drugo2, D2.Ime_2, K.Drugo3, D3.Ime_3, K.Kto, K.Drugo4, D4.Ime_4, VZ.*,
  94158.           KS.KontrSerExt BrSasijaExt, KS.AltKontrSer BrMotorExt, KS.GodProiz GodProizExt,
  94159.         D33.Ime_3 Ime_3Ext, KS.Opis OpisExt, KS.Masa_Kgr, KS.Sila_KW
  94160.     from Vozila V 
  94161.     inner join Katart K 
  94162.     on V.Sifra_Art = K.Sifra_Art
  94163.     left outer Join KatSerKlas KS
  94164.     on V.SifrA_Art = KS.Sifra_Art
  94165.     left outer join Komint KO on K.Kto=KO.Sifra_Kup
  94166.     left outer join Drugo1 D1 on K.Drugo1= D1.Sifra_1
  94167.     left outer join Drugo2 D2 on K.Drugo2= D2.Sifra_2
  94168.     left outer join Drugo3 D3 on K.Drugo3= D3.Sifra_3
  94169.     left outer join Drugo3 D33 on KS.Sifra_3= D33.Sifra_3
  94170.     left outer join Drugo4 D4 on K.Drugo4= D4.Sifra_4
  94171.     left outer join DrgPodel DR on K.Sifra_drg= DR. Sifra_Drg
  94172.     left outer join VozIzjava VZ on V.Sifra_Art=VZ.Sifra_Art
  94173.     Where V.Sifra_Art = @Sifra_Art and KS.KontrSer = @KontrSer
  94174.  
  94175.  
  94176.  
  94177.  
  94178.  
  94179. Go
  94180. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecatikartprom_zaupl]'))
  94181. drop procedure [dbo].[sp_pecatikartprom_zaupl]
  94182.  
  94183. Go
  94184.  
  94185.  
  94186.  
  94187. CREATE   PROCEDURE sp_PecatiKartProm_ZaUpl
  94188.     @Sifra_Mark    smallint,
  94189.     @Sifra_Oe    smallint,
  94190.     @Broj_ska    int,
  94191.     @Sifra_Nac    smallint,
  94192.     @FraUpl        char (1),
  94193.           @Sifra_Kor    varchar(20),    
  94194.     @Datum_Ska    smalldatetime,
  94195.         @Dolzi        decimal(18,6) = Null Output,
  94196.         @Pobaruva    decimal(18,6) = Null Output 
  94197. AS
  94198.     
  94199.         Select Prom.*, Kor.ImeKor, O.ImeOrg, K.ImeKup From KartProm Prom
  94200.     Left Outer Join KartKor Kor On Prom.Sifra_Kor = Kor.Sifra_kor
  94201.     Left Outer Join OrgEd O On Prom.Sifra_Oe = O.Sifra_Oe
  94202.         Left Outer Join Komint K On Prom.Sifra_Kup = K.Sifra_Kup
  94203.         Where Prom.Sifra_Mark=@Sifra_Mark and Prom.Sifra_Oe=@Sifra_Oe and Prom.Broj_ska=@Broj_Ska and Prom.Datum_Ska=@Datum_Ska 
  94204.               and Prom.Sifra_Nac=@Sifra_Nac and Prom.FraUpl=@FraUpl and Prom.Sifra_Kor=@Sifra_Kor
  94205.         Select @Dolzi=Dolzi, @Pobaruva=Pobaruva  From KartProm
  94206.         Where KartProm.Sifra_Mark=@Sifra_Mark and KArtProm.Sifra_Oe=@Sifra_Oe and KArtProm.Broj_ska=@Broj_Ska and KartProm.Datum_Ska=@Datum_Ska 
  94207.               and KartProm.Sifra_Nac=@Sifra_Nac and KartProm.FraUpl=@FraUpl and KartProm.Sifra_Kor=@Sifra_Kor         
  94208.  
  94209. --Nema da vazzi ako ima razliccni Org.Ed vo KartKor (Z-Vane)
  94210.     Return @@ERROR
  94211.  
  94212.  
  94213.  
  94214.  
  94215.  
  94216. Go
  94217. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecetik_razlceni]'))
  94218. drop procedure [dbo].[sp_pecetik_razlceni]
  94219.  
  94220. Go
  94221.  
  94222. CREATE           PROCEDURE sp_PecEtik_RazlCeni
  94223.     @Sifra_OE     Smallint,
  94224.     @Sifra_Dok    smallint,
  94225.     @Broj_Dok    int,
  94226.     @Sifra_Prim     smallint,
  94227.     @ImaDodatna     char(1),
  94228.     @ZgolNam    char(1) = Null
  94229. AS
  94230.     Declare @SSQL Varchar(8000)
  94231.     Set @SSQL = ' Select S.*, 
  94232.             K.ImeArt, K.ImeArt2, K.EdMera, K.Sifra_Tar, 
  94233.             K.ImaKomerc, K.Tezina,     Nomen = Case K.Nom When NULL Then dbo.fn_Nom(S.Sifra_Art)     Else K.Nom  End,
  94234.             T.ProcOsn, K.Cena CenaOdKatart, K.DogCena, K.MalCena, 
  94235.             K.GotCena, K.SpeCena, K.Sifra_Podg, K.DeklArt  
  94236.     From Stavr S
  94237.      Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art And K.SMatUsl=''M'' 
  94238.     Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar 
  94239.     Where S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' 
  94240.     And S.Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(10)) + ' 
  94241.     And S.Broj_Dok=' + Cast(@Broj_Dok As Varchar(10)) + ' '
  94242.     If @Sifra_Prim Is Not Null
  94243.         Set @SSQL = @SSQL + ' And S.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(10)) + ' '
  94244.     If @ImaDodatna Is Not Null
  94245.         Set @SSQL = @SSQL + ' And S.ImaDodatna=''' + @ImaDodatna + ''' '
  94246.     Set @SSQL = @SSQL + ' And S.Sifra_Art In (Select Sifra_Art From RazlCeni 
  94247.                              Where Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' 
  94248.                              And Orig_Dok=' + Cast(@Sifra_Dok As Varchar(10)) + ' 
  94249.                                And Orig_Broj=' + Cast(@Broj_Dok As Varchar(10)) + ' 
  94250.                              And Sifra_Razl In (902, 903)'
  94251.     If @Sifra_Prim Is Not Null
  94252.         Set @SSQL = @SSQL + ' And Orig_Prim =' + Cast(@Sifra_Prim As Varchar(10)) + ' '
  94253.     If @ImaDodatna Is Not Null
  94254.         Set @SSQL = @SSQL + ' And Orig_ImaDod =''' + @ImaDodatna + ''' '
  94255.     If @ZgolNam = 'Z'
  94256.                      Set @SSQL = @SSQL + ' And PocCena < KrCena '
  94257.     If @ZgolNam = 'N'
  94258.                      Set @SSQL = @SSQL + ' And PocCena > KrCena '
  94259.     Set @SSQL = @SSQL + ' )
  94260.     Order By S.Sifra_Art '
  94261.     Exec(@SSQL)
  94262. /*
  94263.     R.Sifra_Razl, R.Sifra_OE, R.Orig_Dok, R.Orig_Broj, R.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, K.ImaKomerc, 
  94264.                 K.DogCena, K.MalCena, K.GotCena, K.SpeCena,
  94265.              Nomen = 
  94266.              Case Nom
  94267.                 When NULL Then dbo.fn_Nom(R.Sifra_Art)
  94268.                 Else K.Nom
  94269.              End,
  94270.              R.Datum_dok, Round(R.Kolic, 4) Kolic,  R.POsn ProcOsn, R.PTar, 
  94271.             Round(dbo.fn_VratiCena(R.PocCena, R.POsn, R.DanPocCena, ''D''), 4) as PocetnaCena, 
  94272.             Round(dbo.fn_VratiCena(R.KrCena, R.POsn, R.DanKrCena, ''D''), 4) as MagCena
  94273.     From RazlCeni R
  94274.      Inner Join KatArt K ON R.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' 
  94275.     Where R.Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + ' And R.Orig_Dok = ' + Cast(@Orig_Dok as varchar(6)) + ' And R.Orig_Broj = ' + Cast(@Orig_Broj as varchar(10)) + ' '
  94276.     If @Orig_Prim Is Not Null
  94277.         Set @SSQL  = @SSQL + 'And R.OrigPrim = ' + Cast(@Orig_Prim As Varchar(5)) + ' '
  94278.     If @ZgolNam = 'Z'
  94279.                      Set @SSQL = @SSQL + 'And R.PocCena < R.KrCena '
  94280.     If @ZgolNam = 'N'
  94281.                      Set @SSQL = @SSQL + 'And R.PocCena > R.KrCena '
  94282. */
  94283.  
  94284.  
  94285.  
  94286. Go
  94287. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecfaktura]'))
  94288. drop procedure [dbo].[sp_pecfaktura]
  94289.  
  94290. Go
  94291.  
  94292. CREATE      PROCEDURE [dbo].[sp_PecFaktura]
  94293.     @Godina    smallint,
  94294.     @Faktura_Br    char(6), 
  94295.     @Sifra_PodrSluzba char(4)='' OUTPUT,
  94296.     @ImePodrSluzba nchar(40)='' OUTPUT,
  94297.     @Datum_Fra smalldatetime=NULL OUTPUT,
  94298.     @Mesec_Fra    smallint=0 OUTPUT
  94299.  
  94300. AS
  94301.  
  94302.     SELECT @Sifra_PodrSluzba =F.Sifra_PodrSluzba_Fakt, @ImePodrSluzba=P.ImePodrSluzba, @Datum_Fra=F.Datum_Fra, @Mesec_Fra=F.Mesec_Fra
  94303.     FROM Faktura F INNER JOIN PodracniSluzbi P ON F.Sifra_PodrSluzba_Fakt=P.Sifra_PodrSluzba
  94304.     WHERE F.Godina_Fra=@Godina AND F.Faktura_Br=@Faktura_Br
  94305.  
  94306.     SELECT R.Sifra_Art, L.ImeArt, R.Rangiran, R.BezPartic, Sum(R.Naplat_Partic) Naplat_Partic, COUNT(R.Sifra_Art) BrRecepti, Round(SUM(R.Kolku_Pakuv), 4) Kolku_Pakuv, Round(SUM(R.Kolku_Kolic), 4) Kolku_Kolic,
  94307.     Round(R.Cena_Tender, 4) Cena_Tender, Round(SUM(R.Iznos_Tender), 4) Iznos_Tender, Round(SUM(R.Iznos_Marza), 4) Iznos_Marza, Round(SUM(R.Osnov_DDV), 4) Osnov_DDV, 
  94308.     Round(SUM(R.Iznos_Na_DDV), 4) Iznos_Na_DDV, Round(SUM(R.Iznos_So_DDV), 4) Iznos_So_DDV, 
  94309.     Round(SUM(R.Iznos_Partic), 4) Iznos_Partic,
  94310.     Round(SUM(R.Naplat_Partic), 4) Napl_Partic, 
  94311.     L.Alt_Ime
  94312.     FROM Recepti R INNER JOIN Faktura F ON R.Godina_Fra=F.Godina_Fra AND R.Faktura_Br=F.Faktura_Br
  94313.     INNER JOIN Katart L ON R.Sifra_Art=L.Sifra_Art 
  94314.     WHERE F.Godina_Fra=@Godina AND F.Faktura_Br=@Faktura_Br
  94315.     GROUP BY R.Sifra_Art, L.ImeArt, R.Rangiran, R.Cena_Tender, R.BezPartic, L.Alt_Ime
  94316.  
  94317.  
  94318.  
  94319.  
  94320.  
  94321.  
  94322. Go
  94323. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pecspeccendog]'))
  94324. drop procedure [dbo].[sp_pecspeccendog]
  94325.  
  94326. Go
  94327.  
  94328.  
  94329.  
  94330.  
  94331.  
  94332.  
  94333. CREATE       procedure sp_PecSpecCenDog
  94334.     @Sifra_Kup char(6) =null,
  94335.     @TipKup varchar(11) =null,
  94336.     @DogBr char(10)
  94337. As
  94338.     
  94339.     Declare @SSQL Varchar(8000) 
  94340.     SET @SSQL = 'Select (Case When S.Sifra_Kup=''999000'' then null else S.Sifra_Kup end) Sifra_Kup, 
  94341.                 (Case When S.TipKup=''ALL'' then null else S.TipKup end) TipKup,S.DogBr,
  94342.                  S.Sifra_Art,S.Rbr,S.Cena,S.DanCena,S.Uces,S.Kolic_Dog,S.AktivenSta,S.Opis_Cena, 
  94343.                  C.*,P.ImePat, A.ImeArt,  K.ImeKup, K.Adresa, K.Smesto, K.Posta, K.Zemja, K.Telefon, G.ImeTipKUp, A.Edmera
  94344.                  From CenDogSta S
  94345.                  inner join CenDog C on S.Sifra_kup=C.Sifra_Kup and S.TipKup= C.TipKup and S.DogBr=C.DogBr
  94346.                  left outer join Komint K on S.Sifra_Kup=K.Sifra_kup
  94347.                  left outer join Patnici P on C.Sifra_Pat=P.Sifra_Pat
  94348.                  inner join Katart A on S.Sifra_Art= A.Sifra_Art
  94349.                  inner join GtipKup G on S.TipKup=G.TipKup
  94350.                  Where S.DogBr='+ Cast (@DogBr as char(10))+' '
  94351.     If @Sifra_Kup Is NOT Null
  94352.          SET @SSQL = @SSQL + 'AND S.Sifra_Kup=' + Cast(@Sifra_kup As Varchar(6))  + ' '
  94353.     Else 
  94354.         Set @SSQL = @SSQL + ' And S.Sifra_Kup = ''999000'' '
  94355.     If @TipKup Is NOT Null
  94356.          SET @SSQL = @SSQL + 'AND S.TipKup=''' + Cast(@TipKup As Varchar(11))  + ''' '
  94357.     Else
  94358.         Set @SSQL = @SSQL + ' And S.TipKup =''ALL '' '
  94359.  
  94360. SET @SSQL = @SSQL + ' Order by C.PocDatum,S.Sifra_Kup, S.TipKup, S.DogBr, S.Sifra_Art'
  94361. print @ssql
  94362. EXEC(@SSQL)
  94363. --on (Case When S.Sifra_Kup Is Not Null Then S.Sifra_kup Else ''%%%'' End)=
  94364. --(Case When C.Sifra_Kup Is Not Null Then C.Sifra_kup Else ''%%%'' End)
  94365. --And (Case When S.TipKup Is Not Null Then S.TipKup Else ''%%%'' End)=
  94366. -- (Case When C.TipKup Is Not Null Then C.TipKup Else ''%%%'' End)
  94367. -- and S.DogBr=C.DogBr
  94368.  
  94369.  
  94370.  
  94371.  
  94372.  
  94373.  
  94374.  
  94375.  
  94376. Go
  94377. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_plan]'))
  94378. drop procedure [dbo].[sp_plan]
  94379.  
  94380. Go
  94381.  
  94382. CREATE      PROCEDURE sp_Plan
  94383.     @Godina    smallint=null,
  94384.     @Mesec    varchar(200) = Null, --smallint=null,
  94385.     @Sifra_Art    varchar(20)=null,
  94386.     @Podred    char(1)='S',
  94387.     @KoiOe    varchar(200),
  94388.     @ImePlan    varchar(10)
  94389. AS
  94390.     Create Table #Artikli
  94391.     (
  94392.     Sifra_art        varchar(20),
  94393.     RbrVoPlan    smallint,
  94394.     Sifra_Podg    char(6)
  94395.     )    
  94396.     Insert Into #Artikli
  94397.     Select Distinct PM.Sifra_Art, PM.RbrVoPlan, K.Sifra_Podg
  94398.     From PlanMes PM
  94399.     Inner Join Katart K On K.Sifra_art = PM.Sifra_Art
  94400.     Where PM.ImePlan=@ImePlan
  94401.     Create Table #Podgrupi
  94402.     (
  94403.     Sifra_Podg    char(6),
  94404.     RbrPodg    smallint,
  94405.     )
  94406.     Insert Into #Podgrupi
  94407.     Select Distinct Sifra_Podg, Min(RbrVoPlan)
  94408.     From #Artikli
  94409.     Group By Sifra_Podg
  94410. --select * from     #Podgrupi
  94411.     Declare @SSQL As Varchar(4000)
  94412.     Set @SSQL='Select P.RbrVoPlan, P.Sifra_Oe, P.Godina, P.Mesec, P.Sifra_Art, K.ImeArt, K.Nom, P.Plan_Kol, P.Plan_Proc, P.Plan_Cena, 
  94413.             K.DogCena, (Plan_Kol * K.DogCena) as Plan_Vrednost, P.ImePlan, K.Sifra_Podg, R.RbrPodg, PG.Ime_Podg, K.ImaKomerc, K.KolkuDrg
  94414.             From PlanMes P
  94415.             Inner Join Katart K On K.Sifra_art=P.Sifra_art
  94416.             Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg
  94417.             Left Outer Join #Podgrupi R On R.Sifra_Podg=K.Sifra_Podg
  94418.             Where 1=1 '
  94419.     If @Godina Is Not Null 
  94420.         Set @SSQL=@SSQL+ ' And P.Godina = ' + cast(@Godina as varchar(4)) + ' '
  94421. --    If @Mesec Is Not Null 
  94422. --        Set @SSQL=@SSQL+ ' And P.Mesec = ' + cast(@Mesec as varchar(2)) + ' '
  94423.     If @Mesec Is Not Null 
  94424.         Set @SSQL=@SSQL+ ' And P.Mesec IN (' + @Mesec + ') '
  94425.     If @Sifra_Art Is Not Null 
  94426.         Set @SSQL=@SSQL+ ' And P.Sifra_art = ''' + @Sifra_art + ''' '    
  94427.     If @KoiOe Is Not Null 
  94428.         Set @SSQL=@SSQL+ ' And P.Sifra_Oe In (' + @KoiOe + ') '
  94429.     If @ImePlan Is Not Null 
  94430.         Set @SSQl =@SSQl + ' And P.ImePlan = ''' + @ImePlan + ''' ' 
  94431.     If @Podred Is Null
  94432.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan '
  94433.     Else If @Podred = 'S'
  94434.         Set @SSQL = @SSQL + ' Order By P.Sifra_art ' 
  94435.     Else If @Podred = 'R' 
  94436.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan '
  94437.     Else If @Podred = 'A' 
  94438.         Set @SSQL = @SSQL + ' Order By K.Imeart '
  94439.     Else
  94440.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan ' 
  94441. Print @SSQL
  94442.     Exec(@SSQL)
  94443.  
  94444. Go
  94445. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_plan_pvo_isporaka]'))
  94446. drop procedure [dbo].[sp_plan_pvo_isporaka]
  94447.  
  94448. Go
  94449. CREATE PROCEDURE sp_Plan_Pvo_Isporaka
  94450.     @Sifra_Kup    char(6) = Null,
  94451.     @Sifra_Art_Od    varchar(20) = Null,
  94452.     @Sifra_Art_Do    varchar(20) = Null,
  94453.     @Den        smallint = 1,              -- od 1 do 10
  94454.     @Sifra_Gr    char(3) = Null,
  94455.     @Sifra_Podg    char(6) = Null    
  94456. As
  94457.     Declare @SSQL as Varchar(4000)
  94458.     Set @SSQL = ' Select P.Sifra_Kup, Kup.ImeKup, P.Sifra_Art, K.ImeArt, '
  94459.     If @Den = 1
  94460.         Set @SSQL = @SSQL + ' P.Den1 Kolic '
  94461.     Else If @Den = 2
  94462.         Set @SSQL = @SSQL + ' P.Den2 Kolic '
  94463.     Else If @Den = 3
  94464.         Set @SSQL = @SSQL + ' P.Den3 Kolic '
  94465.     Else If @Den = 4
  94466.         Set @SSQL = @SSQL + ' P.Den4 Kolic '
  94467.     Else If @Den = 5
  94468.         Set @SSQL = @SSQL + ' P.Den5 Kolic '
  94469.     Else If @Den = 6
  94470.         Set @SSQL = @SSQL + ' P.Den6 Kolic '
  94471.     Else If @Den = 7
  94472.         Set @SSQL = @SSQL + ' P.Den7 Kolic '
  94473.     Else If @Den = 8
  94474.         Set @SSQL = @SSQL + ' P.Den8 Kolic '
  94475.     Else If @Den = 9
  94476.         Set @SSQL = @SSQL + ' P.Den9 Kolic '
  94477.     Else If @Den = 10
  94478.         Set @SSQL = @SSQL + ' P.Den10 Kolic '
  94479.     Set @SSQL = @SSQL + ' From PlanPer P
  94480.                 Inner Join Katart K On K.Sifra_art = P.Sifra_art
  94481.                 Inner Join Komint Kup On Kup.Sifra_Kup = P.Sifra_Kup
  94482.                 Inner Join Podgrupi Pod On Pod.Sifra_Podg = K.Sifra_Podg
  94483.                 Where 1=1 '
  94484.     If @Sifra_Kup Is Not Null
  94485.         Set @SSQL = @SSQL + ' And P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  94486.     If @Sifra_Art_Od Is Not Null
  94487.         Set @SSQL = @SSQL + ' And P.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  94488.     If @Sifra_Art_Do Is Not Null
  94489.         Set @SSQL = @SSQL + ' And P.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  94490.     If @Sifra_Gr Is Not Null
  94491.         Set @SSQL = @SSQL + ' And Pod.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  94492.     If @Sifra_Podg Is Not Null
  94493.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  94494. Print @SSQL
  94495.     Exec (@SSQL)
  94496.  
  94497.  
  94498.  
  94499. Go
  94500. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_plan_realiz_ponedeli]'))
  94501. drop procedure [dbo].[sp_plan_realiz_ponedeli]
  94502.  
  94503. Go
  94504. CREATE    PROCEDURE sp_Plan_Realiz_PoNedeli
  94505.     @Sifra_OE Smallint = Null, 
  94506.     @KoiOE Varchar(200) = Null,
  94507.     @Datum_Od Smalldatetime = Null,
  94508.     @Datum_Do Smalldatetime = Null,
  94509.     @Sifra_Art_Od    varchar(20) = Null,
  94510.     @Sifra_Art_Do    varchar(20) = Null,
  94511.     @Sifra_Gr Char(3) = Null,
  94512.     @Sifra_Podg Char(6) = Null,
  94513.     @APod1 Smallint = Null,
  94514.     @APod2 Smallint = Null,
  94515.     @APod3 Smallint = Null,
  94516.     @APod4 Smallint = Null,
  94517.     @APod5 Smallint = Null,    
  94518.     @Kto Char(6) = Null,
  94519.     @Lokacija Varchar(10) = Null,
  94520.     @Sifra_Brand Smallint = Null,
  94521.     @KPod1 Smallint = Null,
  94522.     @KPod2 Smallint = Null,
  94523.     @KPod3 Smallint = Null,
  94524.     @KPod4 Smallint = Null,
  94525.     @KPod5 Smallint = Null,    
  94526.     @Koi_Gradovi varchar(200) = Null,
  94527.     @Koi_Regioni varchar(200) = Null,    
  94528.     @TipKup Char(11) = Null,
  94529.     @Sifra_Nivo Char(2) = Null,
  94530.     @Sifra_Tip Smallint = Null,
  94531.     @Sifra_Kup_Od Char(6) = Null,
  94532.     @Sifra_Kup_Do Char(6) = Null,
  94533.     @TipDokProd    VarChar(300) = Null
  94534. --    @RabDenMes Smallint = Null OUTPUT,
  94535. --    @RabDenPer Smallint = Null OUTPUT
  94536. AS
  94537.     Declare @SSQL as varchar(8000)
  94538.     Declare @SSQLUsl as varchar(8000)
  94539.     Declare @SSQLGr as varchar(1000)
  94540.     Set @SSQLUsl = ' '
  94541.     Set @SSQLGr = ' '
  94542. --  Planirani kolicini
  94543.     Create  Table #Plan
  94544.     (
  94545.      Sifra_Oe    smallint,
  94546.      Godina        smallint,
  94547.      Mesec        smallint,
  94548.      Sifra_Art    varchar(20),
  94549.      Planirano    decimal(18,6)
  94550.     )
  94551.     Set @SSQL = ' INSERT INTO #Plan 
  94552.             Select S.Sifra_Oe, S.Godina, S.Mesec, S.Sifra_Art, S.Plan_Kol
  94553.             From PlanMes S
  94554.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  94555.             Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  94556.             Where 1=1 '
  94557.     If  @Datum_Od Is Not Null
  94558.     Begin
  94559.         Set @SSQL = @SSQL + ' And S.Godina >= ' + Cast(Year(@Datum_Od) as Varchar(4)) + ' 
  94560.                     And S.Mesec >=' + Cast(Month(@Datum_Od) as Varchar(2)) + ' '
  94561.     End
  94562.     If  @Datum_Do Is Not Null
  94563.     Begin
  94564.         Set @SSQL = @SSQL + ' And S.Godina <= ' + Cast(Year(@Datum_Do) as Varchar(4)) + ' 
  94565.                     And S.Mesec <=' + Cast(Month(@Datum_Do) as Varchar(2)) + ' '
  94566.     End
  94567.     If @APod1 Is Not NULL    
  94568.         Set @SSQLUsl  = @SSQLUsl + ' And K.Drugo1=' + Cast(@APod1 As Varchar(5)) + ' '
  94569.     If @APod2 Is Not NULL    
  94570.         Set @SSQLUsl  = @SSQLUsl + ' And K.Drugo2=' + Cast(@APod2 As Varchar(5)) + ' '
  94571.     If @APod3 Is Not NULL    
  94572.         Set @SSQLUsl  = @SSQLUsl + ' And K.Drugo3=' + Cast(@APod3 As Varchar(5)) + ' '
  94573.     If @APod4 Is Not NULL    
  94574.         Set @SSQLUsl  = @SSQLUsl + ' And K.Drugo4=' + Cast(@APod4 As Varchar(5)) + ' '
  94575.     If @APod5 Is Not NULL    
  94576.         Set @SSQLUsl  = @SSQLUsl + ' And K.Drugo5=' + Cast(@APod5 As Varchar(5)) + ' '
  94577.     If @Lokacija Is Not NULL
  94578.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  94579.     If @Kto Is Not NULL
  94580.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  94581.     If @Sifra_Brand Is Not NULL
  94582.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  94583.     If @Sifra_Podg Is Not NULL
  94584.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  94585.     If @Sifra_Gr Is Not NULL
  94586.         Set @SSQLUsl = @SSQLUsl + ' And PG.Sifra_Gr=' + @Sifra_Gr + ' '
  94587.     If @Sifra_Art_Od Is Not NULL
  94588.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  94589.     If @Sifra_Art_Do Is Not NULL
  94590.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  94591.     If @Sifra_OE Is Not NULL    
  94592.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  94593.     If @KoiOE Is Not NULL
  94594.              Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  94595. print @SSQL+@SSQLUsl
  94596.     Exec (@SSQL+@SSQLUsl)
  94597. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  94598. -- Prodazba - Gi zema samo onie artikli koi sto se pojavuvaat vo planot (ako artiklot go nema vo planot go isklucuva)
  94599.     Create Table #Prod
  94600.     (
  94601.      Sifra_Oe    smallint,
  94602.      Godina        smallint,
  94603.      Mesec        smallint,
  94604.      Nedela     smallint,
  94605.      Sifra_Art    varchar(20),
  94606.      Prodazba    decimal(18,6)
  94607.     )
  94608.     Set @SSQL = 'Insert Into #Prod Select S.Sifra_Oe, Year(S.Datum_Dok) as Godina, Month(S.Datum_Dok) as Mesec, DatePart(wk, S.Datum_Dok) as Nedela, 
  94609.                 S.Sifra_Art, Round(Sum(S.Kolic), 4) Ostv_Kol
  94610.         From Stavr S
  94611.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 
  94612.         Inner Join Katart K On K.Sifra_art = S.Sifra_art
  94613.         Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  94614.         Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  94615.         Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  94616.         Where S.VlIzl = ''I'' and S.Sifra_art in (Select Distinct Sifra_Art From #Plan) '
  94617. -- @SSQLUsl - go dopolnuvame uslovot so filtrite za komintenti i dokumenti
  94618.     If @KPod1 Is Not NULL
  94619.            Begin
  94620.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')
  94621.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@KPod1 As Varchar(6)) + ')) '
  94622.            End
  94623.     If @KPod2 Is Not NULL
  94624.            Begin
  94625.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')
  94626.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@KPod2 As Varchar(6)) + ')) '
  94627.            End
  94628.     If @KPod3 Is Not NULL
  94629.            Begin
  94630.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')
  94631.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@KPod3 As Varchar(6)) + ')) '
  94632.            End
  94633.     If @KPod4 Is Not NULL
  94634.            Begin
  94635.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')
  94636.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@KPod4 As Varchar(6)) + ')) '
  94637.            End
  94638.     If @KPod5 Is Not NULL
  94639.            Begin
  94640.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')
  94641.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@KPod5 As Varchar(6)) + ')) '
  94642.            End
  94643.     If @TipKup Is Not NULL
  94644.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  94645.     If @Sifra_Tip Is Not NULL
  94646.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  94647.     If @Sifra_Nivo Is Not NULL
  94648.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  94649.     If @Koi_Gradovi Is Not NULL    
  94650.         Begin
  94651.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  94652.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  94653.         End
  94654.     If @Koi_Regioni Is Not NULL    
  94655.         Begin
  94656.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  94657.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  94658.         End
  94659.     If @Sifra_Kup_Od Is Not NULL
  94660.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  94661.     If @Sifra_Kup_Do Is Not NULL
  94662.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  94663.     If @TipDokProd is not null
  94664.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  94665.     If @Datum_Od Is NOT Null
  94666.         SET @SSQLUsl = @SSQLUsl + 'AND S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35))+ ''' '
  94667.     If @Datum_Do Is NOT Null
  94668.         SET @SSQLUsl = @SSQLUsl + 'AND S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35))+ ''' '
  94669.     Set @SSQLGr = ' Group By S.Sifra_Oe, Year(S.Datum_Dok), Month(S.Datum_Dok), DatePart(wk, S.Datum_Dok), S.Sifra_Art '
  94670. print @SSQL+@SSQLUsl+@SSQLGr
  94671.     Exec (@SSQL+@SSQLUsl+@SSQLGr)
  94672.     Declare @MinNedela as smallint
  94673.     Set @MinNedela = (Select Min(Nedela) From #Prod)
  94674.     Set @MinNedela=@MinNedela-1
  94675.     Update #Prod Set Nedela = Nedela - @MinNedela Where Nedela Is Not Null
  94676. --select * from #plan
  94677. --select * from #Prod
  94678. -- Ova nemat mnogu logika
  94679.     Create Table #AvgPlan
  94680.     (
  94681.      Sifra_Oe    smallint,
  94682.      Godina        smallint,
  94683.      Mesec        smallint,
  94684.      Sifra_Art    varchar(20),
  94685.      BrNedeli    decimal(9,2)
  94686.     )
  94687.     Insert Into #AvgPlan
  94688.     Select PL.Sifra_Oe, PL.Godina, PL.Mesec, PL.Sifra_Art, Count(P.Nedela)
  94689.     From #Plan PL
  94690.     Left Outer Join #Prod P on P.Sifra_Oe=PL.Sifra_Oe And P.Godina=PL.Godina And P.Mesec=PL.Mesec And P.Sifra_Art=PL.Sifra_Art
  94691.     Group By PL.Sifra_Oe, PL.Godina, PL.Mesec, PL.Sifra_Art
  94692.     Update #AvgPlan Set BrNedeli=1 Where BrNedeli=0
  94693. -------------------------------------------------------------
  94694. --    Select * from #AvgPlan
  94695.     Select PL.Sifra_Oe, O.ImeOrg, PL.Godina, PL.Mesec, P.Nedela, PL.Sifra_Art, K.ImeArt, 
  94696.         P.Prodazba, (P.Prodazba*K.KolkuDrg) ProdSSU, 
  94697.         (PL.Planirano/A.BrNedeli) Planirano, (PL.Planirano/A.BrNedeli*K.KolkuDrg) PlanSSU,  
  94698.         K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, K.Drugo3, D3.Ime_3
  94699.     From #Plan PL
  94700.     Left Outer Join #Prod P on P.Sifra_Oe=PL.Sifra_Oe And P.Godina=Pl.Godina And P.Mesec=PL.Mesec And P.Sifra_Art=PL.Sifra_Art
  94701.     Left Outer Join #AvgPlan A on A.Sifra_Oe=PL.Sifra_Oe And A.Godina=Pl.Godina And A.Mesec=PL.Mesec And A.Sifra_Art=PL.Sifra_Art
  94702.     Inner Join Katart K On K.Sifra_Art = PL.Sifra_Art
  94703.     Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg
  94704.     Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr
  94705.     Left Outer Join Drugo3 D3 On D3.Sifra_3=K.Drugo3
  94706.     Left Outer Join Orged O On O.Sifra_Oe=PL.Sifra_Oe
  94707. --------------------------------------------------------------------------------------------------------------------------------------------------------------
  94708. /*    Declare @DatOd as smalldatetime
  94709.     Declare @DatDo as smalldatetime
  94710.     Declare @NerabDenPer smallint
  94711.     Declare @NerabDenMes smallint
  94712. ------------ Nerabotni denovi vo periodot
  94713.     Set @NerabDenPer = 0        -- za pocetok 0 nerabotni denovi  
  94714.     Set @DatOd=@Datum_Od     -- go postavuvame pocetniot datum
  94715.     While @DatOd <= @Datum_Do    -- ciklus dodeka ne dojdeme do krajniot datum
  94716.     Begin    
  94717.         If (Select datepart(dw, @DatOd)) =  1        -- ako denot e nedela
  94718.             Set @NerabDenPer=@NerabDenPer+1
  94719.     Set @DatOd=@DatOd+1
  94720.     End
  94721.     Set @RabDenPer = DateDiff(Day, @Datum_Od, @Datum_Do)-@NerabDenPer+1
  94722. -------------------------------------------------------------------------------------------------------------------------------------------------------------
  94723. ------------- Nerabotni denovi vo mesecot
  94724.     Set @NerabDenMes = 0        -- za pocetok 0 nerabotni denovi  
  94725.     Set @DatOd=@Datum_Od     -- go postavuvame pocetniot datum
  94726.     Declare @Godina as Smallint 
  94727.     Declare @Mesec as Smallint 
  94728.     Set @Godina = Year(@Datum_Do)
  94729.     Set @Mesec = Month(@Datum_Do) + 1
  94730.     If @Mesec = 13
  94731.     Begin
  94732.         Set @Mesec= 1
  94733.         Set @Godina = @Godina + 1
  94734.     End
  94735.     Set @DatDo=dbo.fn_VratiDatumOd(@Godina, @Mesec)
  94736.     Set @DatDo = @DatDo - 1
  94737.     While @DatOd <= @DatDo    -- ciklus dodeka ne dojdeme do krajniot datum vo mesecot
  94738.     Begin    
  94739.         If (Select datepart(dw, @DatOd)) =  1        -- ako denot e nedela
  94740.             Set @NerabDenMes=@NerabDenMes+1
  94741.     Set @DatOd=@DatOd+1
  94742.     End
  94743.     Set @RabDenMes = DateDiff(Day, @Datum_Od, @DatDo)-@NerabDenMes+1
  94744. -------------------------------------------------------------------------------------------------------------------------------------------------------------
  94745. */
  94746.  
  94747.  
  94748. Go
  94749. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_plan_realiz_rabat]'))
  94750. drop procedure [dbo].[sp_plan_realiz_rabat]
  94751.  
  94752. Go
  94753. CREATE  PROCEDURE sp_Plan_Realiz_Rabat
  94754.     @Godina    Smallint = Null,
  94755.     @Datum_Od    Smalldatetime = Null,
  94756.     @Datum_Do    Smalldatetime = Null,
  94757.     @Sifra_OE    varchar(200) = NULL,
  94758.     @Sifra_Podg    varchar(200) = NULL,
  94759.     @Sifra_Gr    varchar(200) = NULL,
  94760.     @Kto        varchar(200) = NULL,
  94761.     @Sifra_Brand    varchar(200) = NULL,
  94762.     @SoDanok    Char(1) = 'D',
  94763.     @Sifra_Art_Od    varchar(20) = Null,
  94764.     @Sifra_Art_Do    varchar(20) = Null,
  94765.     @ImePlan    varchar(10) = Null
  94766. AS
  94767.     Declare @SSQL Varchar(8000)
  94768.     Declare @SSQL1 Varchar(8000)
  94769.     Declare @SSQLGroup Varchar(500)
  94770.     Declare @DatOd as smalldatetime
  94771.     Declare @DatDo as smalldatetime
  94772.     Set @SSQL1 = ''
  94773.     Set @SSQLGroup = ' '
  94774.     If @Sifra_Art_Od Is Not Null
  94775.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  94776.     If @Sifra_Art_Do Is Not Null
  94777.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  94778.     If @Sifra_Podg Is Not NULL
  94779.            Set @SSQL1 = @SSQL1 + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  94780.     If @Sifra_Gr Is Not NULL
  94781.             Set @SSQL1 = @SSQL1 + 'And PG.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  94782.     If @Kto Is Not NULL
  94783.             Set @SSQL1 = @SSQL1 + 'And K.Kto IN (' + @Kto  + ') '
  94784.     If @Sifra_Brand Is Not NULL
  94785.             Set @SSQL1 = @SSQL1 + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  94786. /*    Create Table #Godplan
  94787.     (
  94788.      Sifra_Art    varchar(20),
  94789.      Godina        smallint,
  94790.      Kolic        decimal(18,4)
  94791.     )
  94792.     Insert Into #GodPlan
  94793. */
  94794.     Create Table #Prod
  94795.     (
  94796.     Godina        smallint,
  94797.     Sifra_Art    varchar(20),
  94798.     Plan_Kol    decimal(18,4),
  94799.     Plan_Kol_VoKgr    decimal(18,4),
  94800.     Cena        decimal(18,4),
  94801.     VrednostPoCen    decimal(18,4),
  94802.     Ostv_Kol    decimal(18,4),
  94803.     Realiz_Vrednost    decimal(18,6),
  94804.     Pros_Rabat    decimal(18,4),
  94805.     Vred_Rabat    decimal(18,4)
  94806.     )
  94807.                         -- Raboti samo dokolku cenite za artiklite vo soart se isti za site Organizacioni edinici
  94808.     Set @SSQL = ' Insert Into #Prod  Select P.Godina, P.Sifra_Art, sum(P.Plan_Kol) as Plan_Kol, sum(P.Plan_Kol*K.Tezina/1000) as Plan_Kol_VoKgr, S.Cena, 
  94809.             sum(P.Plan_Kol*S.Cena) as VrednostPoCen,  
  94810.                 0 as Ostv_Kol, 0 as Realiz_Vrednost, 0 as Pros_Rabat, 0 as Vred_Rabat
  94811.              From  PlanMes P
  94812.             Inner Join Katart K On K.Sifra_Art = P.Sifra_art
  94813.             Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  94814.             Inner Join Soart S On S.Sifra_art = P.Sifra_art 
  94815.             Where 1=1 '
  94816.     If @Sifra_Oe Is Not Null
  94817.         Set @SSQL = @SSQL + ' And S.Sifra_Oe In ('+ @Sifra_Oe + ') ' 
  94818.     If @ImePlan Is Not Null
  94819.         Set @SSQL = @SSQL + ' And P.ImePlan = ''' + @ImePlan + ''' ' 
  94820.     If @Godina Is Not Null
  94821.         Set @SSQL = @SSQL + ' and P.Godina = ' + cast(@Godina as varchar(4)) + ' '
  94822.     Set @SSQLGroup = @SSQLGroup + ' Group By  P.Godina, P.Sifra_Art, S.Cena '
  94823.     Exec(@SSQL + @SSQL1 + @SSQLGroup)
  94824. --select * from #prod
  94825. --Round(Sum(dbo.fn_VratiVredIzl (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, '''+@SoDanok+''')), 4) as Realiz_Vrednost,
  94826.     Set @SSQL = 'INSERT INTO #Prod   Select Year(S.Datum_Dok) as Godina, S.Sifra_Art As Sifra_Art, 0 as Plan_Kol,
  94827.         0 as Plan_Kol_VoKgr, 0 as Cena, 0 as VrednostPoCen,
  94828.         Round(Sum(S.Kolic), 4) Ostv_Kol,
  94829.         Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) As  Realiz_Vrednost,
  94830.         0 as Pros_Rabat,
  94831.         Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces)), 4) As Vr_Rabat
  94832.         From Stavr S
  94833.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 
  94834.         Inner Join Katart K On K.Sifra_art = S.Sifra_art
  94835.         Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  94836.         Where S.VlIzl = ''I'' and S.Sifra_art in (Select Distinct Sifra_Art From #Prod) '
  94837. --    If @Godina Is Not null
  94838. --        Set @SSQL = @SSQL + ' And Year(D.Datum_Dok) = ' + cast(@Godina as varchar(4)) + ' '
  94839.     If @Datum_Od Is Not null
  94840.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  94841.     If @Datum_Do Is Not null
  94842.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  94843.     If @Sifra_OE Is Not NULL    
  94844.             Set @SSQL = @SSQL + 'And S.Sifra_OE IN (' + @Sifra_OE  + ') '
  94845.     Set @SSQLGroup = ' Group By Year(S.Datum_Dok), S.Sifra_Art '
  94846.     EXEC(@SSQL+@SSQL1+@SSQLGroup)
  94847.     Set @SSQL = ' Select P.Sifra_Art, K.ImeArt, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, SO.Cena,
  94848.         Sum(P.Plan_Kol) Plan_Kol, Sum(P.Plan_Kol_VoKgr) Plan_Kol_VoKgr,  Sum(P.VrednostPoCen) VrednostPoCen,
  94849.         Sum(P.Ostv_Kol) Ostv_Kol, Sum(P.Realiz_Vrednost) Realiz_Vrednost, 
  94850.         Sum(P.Vred_Rabat) Vred_Rabat
  94851.         From #Prod P 
  94852.         Inner Join Katart K On K.Sifra_Art = P.Sifra_art 
  94853.         Inner Join Soart SO On SO.Sifra_art = K.Sifra_art
  94854.         Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  94855.         Inner Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr
  94856.         Where (P.Plan_Kol <> 0 Or P.Ostv_Kol <> 0) '
  94857.     If @Sifra_Oe Is Not Null
  94858.         Set @SSQL = @SSQL + ' And So.Sifra_Oe In (' + @Sifra_Oe + ') '
  94859.     Set @SSQL = @SSQL + ' Group By  P.Sifra_Art, K.ImeArt, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, SO.Cena
  94860.         Order By P.Sifra_Art '
  94861. -- Vo Reportot da se presmeta
  94862. -- Procentot na rabat = (Vred_Rabat / Realiz_Vrednost * 100) 
  94863.     Exec(@SSQL)
  94864.  
  94865.  
  94866.  
  94867. Go
  94868. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_plan_surovini]'))
  94869. drop procedure [dbo].[sp_plan_surovini]
  94870.  
  94871. Go
  94872. CREATE PROCEDURE sp_Plan_Surovini
  94873.     @Sifra_Oe    Smallint,
  94874.     @ImePlan    Varchar(10),
  94875.     @Godina    Smallint
  94876. AS
  94877.     Select P.Sifra_art, K.ImeArt, P.Plan_Kol, S.Sifra_Sur, A.ImeArt ImeSur, (P.Plan_Kol*S.Ima_Kolic) as PotrebnoSur
  94878.     From PlanMes P
  94879.     Left Outer Join Katart K On K.Sifra_art = P.Sifra_art
  94880.     Left Outer Join Sostav S On S.Sifra_art = P.Sifra_art
  94881.     Left Outer Join Katart A On A.Sifra_art = S.Sifra_Sur
  94882.     Where P.Sifra_Oe=cast(@Sifra_Oe as varchar(5)) 
  94883.     and P.ImePlan = @ImePlan
  94884.     and P.Godina = cast(@Godina as varchar(4))
  94885.  
  94886.  
  94887.  
  94888. Go
  94889. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_planpodel]'))
  94890. drop procedure [dbo].[sp_planpodel]
  94891.  
  94892. Go
  94893.  
  94894.  
  94895.  
  94896. create         PROCEDURE sp_PlanPodel
  94897.     @Godina    smallint=null,
  94898.     @Mesec    varchar(200) = Null, --smallint=null,
  94899.     @Sifra_Art    varchar(20)=null,
  94900.     @Podred    char(1)='S',
  94901.     @KoiOe    varchar(200),
  94902.     @ImePlan    varchar(10)
  94903. AS
  94904.     Declare @SSQL As Varchar(4000)
  94905.     Set @SSQL='Select P.RbrVoPlan, P.Sifra_Oe, P.Godina, P.Mesec, P.Sifra_podel, K.Ime_KHier Ime_Podel, P.Plan_Kol, P.Plan_Proc, P.Plan_Cena, 
  94906.            P.ImePlan
  94907.                    From PlanMesPodel P
  94908.            Inner Join Kathier K On K.Sifra_KHier=P.Sifra_podel
  94909.                    Where 1=1 '
  94910.     If @Godina Is Not Null 
  94911.         Set @SSQL=@SSQL+ ' And P.Godina = ' + cast(@Godina as varchar(4)) + ' '
  94912. --    If @Mesec Is Not Null 
  94913. --        Set @SSQL=@SSQL+ ' And P.Mesec = ' + cast(@Mesec as varchar(2)) + ' '
  94914.     If @Mesec Is Not Null 
  94915.         Set @SSQL=@SSQL+ ' And P.Mesec IN (' + @Mesec + ') '
  94916.     If @KoiOe Is Not Null 
  94917.         Set @SSQL=@SSQL+ ' And P.Sifra_Oe In (' + @KoiOe + ') '
  94918.     If @ImePlan Is Not Null 
  94919.         Set @SSQl =@SSQl + ' And P.ImePlan = ''' + @ImePlan + ''' ' 
  94920.     If @Podred Is Null
  94921.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan '
  94922.     Else If @Podred = 'S'
  94923.         Set @SSQL = @SSQL + ' Order By P.Sifra_podel ' 
  94924.     Else If @Podred = 'R' 
  94925.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan '
  94926.     Else If @Podred = 'A' 
  94927.         Set @SSQL = @SSQL + ' Order By K.Imeart '
  94928.     Else
  94929.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan ' 
  94930. Print @SSQL
  94931.     Exec(@SSQL)
  94932.  
  94933.  
  94934.  
  94935.  
  94936.  
  94937. Go
  94938. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_planpomes]'))
  94939. drop procedure [dbo].[sp_planpomes]
  94940.  
  94941. Go
  94942. CREATE PROCEDURE sp_PlanPoMes
  94943.     @Sifra_OEPlan    smallint,
  94944.     @Datum_Od    smalldatetime=NULL,
  94945.     @Datum_Do    smalldatetime=NULL,
  94946.     @Period    smallint,    -- Ovde Vnesi  7, 10 ili 15 
  94947.     @BrPeriodi    smallint,     -- Ovde Vnesi (4 ili 5) , 3 ili 2
  94948.     @KoiOe    varchar(200)=NULL,
  94949.     @Sifra_Art_Od    varchar(20)=NULL,
  94950.     @Sifra_Art_Do    varchar(20)=NULL,
  94951.     @Sifra_Gr    char(3)=NULL,
  94952.     @Sifra_Podg    char(6)=NULL,
  94953.     @Sifra_Brand    smallint=NULL,
  94954.     @Komint    char(6)=NULL,
  94955.     @RazbijSostav    char(1)='N',
  94956.     @Podred    char(1)=NULL,
  94957.     @ImePlan    varchar(10),
  94958.     @Prikazi     char(1) = 'K'    -- K - Kolicina    B- Brend Kolicina
  94959. As
  94960.     Declare @SSQL as varchar(8000)
  94961.     Create Table #Periodi
  94962.     (
  94963.      Period smallint
  94964.      )
  94965.     Create Table #Meseci
  94966.     (
  94967.      Mesec varchar(2)
  94968.      )
  94969.     Declare @I as smallInt
  94970.     Declare @MesecOd smallint
  94971.     Declare @MesecDo smallint
  94972.     Declare @Godina smallint
  94973.     Set @I=1
  94974.     Set @MesecOd = Month(@Datum_Od)
  94975.     Set @MesecDo = Month(@Datum_Do)
  94976.     Set @Godina = Year(@Datum_Od)
  94977.     WHILE @MesecOd <= @MesecDo
  94978.     BEGIN
  94979.               Insert into #Meseci Select @MesecOd
  94980.         SET @MesecOd = @MesecOd+1
  94981.     END
  94982.     WHILE @I<=@BrPeriodi
  94983.     BEGIN
  94984.               Insert into #Periodi Select @I
  94985.               SET @I=@I+1
  94986.     END
  94987. -------------------------------------------------------------------------------------------------------------------------------------------------
  94988.     CREATE    Table #tSostav
  94989.     (    Sifra_Art    varchar(20), 
  94990.         Sifra_Sur    varchar(20), 
  94991.         Ima_Kolic    Decimal(18,6),
  94992.         Cena        Decimal(18,6),
  94993.         VkCena        Decimal(18,6)
  94994.     )
  94995.     If @RazbijSostav = 'D'
  94996.         Begin
  94997.             Set @SSQL = 'Insert #tSostav
  94998.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  94999.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  95000.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  95001.             Exec(@SSQL)
  95002.         End
  95003.     Set @SSQL = 'Insert #tSostav
  95004.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  95005.         From Katart K '
  95006.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  95007.     If @RazbijSostav = 'D'
  95008.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  95009.     Exec(@SSQL)
  95010.     --Select * from #tsostav
  95011. -------------------------------------------------------------------------------------------------------------------------------------------------
  95012.     Create Table #Plan
  95013.     (
  95014.     RbrVoPlan    smallint,
  95015.     RbrPodg    smallint,
  95016.     Sifra_Podg    char(6),
  95017.     Sifra_Art    varchar(20),
  95018.     Godina        smallint,
  95019.     Mesec        smallint,
  95020.     Period        smallint,
  95021.     PlanVkup    decimal(18,6),
  95022.     PlanKol        decimal(18,6),
  95023.     RealizKol    decimal(18,6),
  95024.     MesRealiz    decimal(18,6)
  95025.     )
  95026.     Create Table #Plan1
  95027.     (
  95028.     RbrVoPlan    smallint,
  95029.     ImePlan        varchar(10),
  95030.     Sifra_Oe    smallint,
  95031.     Sifra_Art    varchar(20),
  95032.     Sifra_Podg    Char(6)
  95033.     )
  95034.     Set @SSQL =' Insert Into #Plan1 Select PM.RbrVoPlan, PM.ImePlan, PM.Sifra_Oe, PM.Sifra_Art, K.Sifra_Podg
  95035.             From PlanMes PM
  95036.             Inner Join Katart K On K.Sifra_art = PM.Sifra_Art
  95037.             Where 1=1 ' 
  95038.     If @Sifra_art_Od Is Not Null 
  95039.         Set @SSQL = @SSQL + ' And PM.Sifra_Art >= ' + @Sifra_art_Od + ' '
  95040.     If @Sifra_art_Do Is Not Null 
  95041.         Set @SSQL = @SSQL + ' And PM.Sifra_Art <= ' + @Sifra_art_Do + ' '
  95042.     If @KoiOe Is Not Null
  95043.         Set @SSQL = @SSQL + ' And PM.Sifra_Oe =' + cast(@Sifra_OEPlan as varchar(5)) + ' '
  95044.     Set @SSQL = @SSQL + ' And PM.Godina In (''' + cast(year(@Datum_Od) as varchar(4)) +''',''' + cast(Year(@Datum_Do) as Varchar(4)) + ''') '
  95045.     If @ImePlan Is Not Null
  95046.         Set @SSQL = @SSQL + ' And PM.ImePlan = ''' +@ImePlan + ''' '
  95047. --If Sifra PM.Sifra_Art >= @Sifra_Art_Od and PM.Sifra_Art <= @Sifra_Art_Do and PM.Sifra_Oe In (@KoiOe) and PM.Godina In (cast(year(@Datum_Od) as varchar(4)), cast(Year(@Datum_Do) as Varchar(4)))
  95048.     Print @SSQL
  95049.     Exec (@SSQL)
  95050.      Insert Into #Plan Select PM.RbrVoPlan, 0 as RbrPodg, PM.Sifra_podg, PM.Sifra_Art, @Godina , M.Mesec, P.Period,  Sum(0) as PlanVkup, Sum(0) as PlanKol ,Sum(0) as RezlizKol, Sum(0) as MesRealiz
  95051.             From #Plan1 PM, #Meseci M, #Periodi P 
  95052. --            Where PM.Sifra_Art > @Sifra_Art_Od and PM.Sifra_Art < @Sifra_Art_Do and PM.Sifra_Oe In (@KoiOe)
  95053.             Group By PM.RbrVoPlan, PM.Sifra_podg, PM.ImePlan, PM.Sifra_Oe, PM.Sifra_Art, M.Mesec, P.Period
  95054.     Update #Plan
  95055.     Set PlanKol = (PlanMes.Plan_Kol/@BrPeriodi), PlanVkup = PlanMes.Plan_Kol
  95056.     From PlanMes
  95057.     Where #Plan.RbrVoPlan=PlanMes.RbrVoPlan and #Plan.Sifra_art=PlanMes.Sifra_Art and #Plan.Godina=PlanMes.Godina
  95058.          and #Plan.Mesec=PlanMes.Mesec  and PlanMes.ImePlan=@ImePlan
  95059.     Create Table #Podgrupi
  95060.     (
  95061.     Sifra_Podg    char(6),
  95062.     RbrPodg    smallint
  95063.     )
  95064.     Insert Into #Podgrupi
  95065.     Select Distinct Sifra_Podg, Min(RbrVoPlan)
  95066.     From #Plan
  95067.     Group By Sifra_Podg
  95068.     Update #Plan
  95069.     Set #Plan.RbrPodg=#Podgrupi.RbrPodg
  95070.     From #Podgrupi
  95071.     Where #Plan.Sifra_Podg=#Podgrupi.Sifra_Podg
  95072.     Create Table #Realizacija
  95073.     (
  95074.     Sifra_Art    varchar(20),
  95075.     Godina        smallint,
  95076.     Mesec        smallint,
  95077.     Period        Smallint,
  95078.     RealizKol    decimal(18,6)
  95079.     )
  95080.     Set @SSQL = '   Insert Into #Realizacija Select S.Sifra_Art, Year(S.Datum_Dok) as Godina, Month(S.Datum_Dok) as Mesec, 
  95081.             dbo.fn_VratiPeriod(S.Datum_Dok, ' + cast(@Period as varchar(2))+ ',' + cast(@BrPeriodi as varchar(2)) + ') as Period, '
  95082.     If @Prikazi = 'B'
  95083.         Set @SSQL = @SSQL + ' Sum(S.Kolic * (Case When K.KolkuDrg <> 0 Then K.KolkuDrg Else 1 End)) '
  95084.     Else 
  95085.         Set @SSQL = @SSQL + ' Sum(S.Kolic)  '
  95086.     Set @SSQL = @SSQL + ' From Stavr S
  95087.             Inner Join Dokr D On D.DokrID=S.DokrID
  95088.             Inner Join Katart K on K.Sifra_art = S.Sifra_art
  95089.             Inner Join Podgrupi P on P.Sifra_Podg = K.Sifra_Podg
  95090.             Inner join Grupi G On G.Sifra_Gr = P.Sifra_Gr
  95091.             Where    S.VlIzl ='''+ 'I' +''' '+ ' and D.Sifra_Za=1 and S.Datum_Dok >=''' + cast(@Datum_Od as varchar(35)) + ''' ' + ' and S.Datum_Dok <=''' + cast(@Datum_Do as varchar(35)) + '''  
  95092.             And S.sifra_art in (select distinct sifra_art from #Plan) '
  95093.     If @Sifra_art_Od Is Not Null 
  95094.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ' + @Sifra_art_Od + ' '
  95095.     If @Sifra_art_Do Is Not Null 
  95096.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ' + @Sifra_art_Do + ' '
  95097.     If @KoiOe Is Not Null
  95098.         Set @SSQL = @SSQL + ' And S.Sifra_Oe In (' + @KoiOe + ') '
  95099.     If @Sifra_Podg Is Not Null
  95100.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  95101.     If @Sifra_Gr Is Not Null
  95102.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=''' + @Sifra_Gr + ''' '
  95103.     If @Sifra_Brand Is Not Null
  95104.         Set @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  95105.     If @Komint is Not Null 
  95106.         Set @SSQL = @SSQL + ' And K.Kto = ' + @Komint + ' '
  95107.     Set @SSQL =@SSQL + ' Group By S.Sifra_Art, Year(S.Datum_Dok), Month(S.Datum_Dok), 
  95108.             dbo.fn_VratiPeriod(S.Datum_Dok, ' + cast(@Period as varchar(2))+ ',' + cast(@BrPeriodi as varchar(2)) + ') '
  95109.     Exec(@SSQL)
  95110.     Update #Plan
  95111.     Set #Plan.RealizKol=#Realizacija.RealizKol
  95112.     From #Realizacija
  95113.     Where #Plan.Sifra_Art=#Realizacija.Sifra_art and #Plan.Godina=#Realizacija.Godina  And #Plan.Mesec=#Realizacija.Mesec and #Plan.Period=#Realizacija.Period
  95114.     Create Table #SumRealiz
  95115.     (
  95116.     Sifra_art    varchar(20),
  95117.     Godina    smallint,
  95118.     Mesec    smallint,
  95119.     VkReal    decimal(18,6)
  95120.     )
  95121.     Insert Into #SumRealiz Select  Sifra_art, Godina, Mesec, Sum(RealizKol)
  95122.     From #Realizacija
  95123.     Group By Sifra_Art, Godina, Mesec
  95124.     Update #Plan
  95125.     Set #Plan.MesRealiz=#SumRealiz.VkReal
  95126.     From #SumRealiz
  95127.     Where #Plan.Sifra_Art=#SumRealiz.Sifra_art and #Plan.Godina=#SumRealiz.Godina  And #Plan.Mesec=#SumRealiz.Mesec
  95128.     Set @SSQL = ' Select P.RbrVoPlan, P.Sifra_Art, K.ImeArt, K.Nom, P.RbrPodg, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, P.Godina, P.Mesec, P.Period,
  95129.              Sum(P.PlanVkup) PlanVkup, Sum(P.PlanKol) as PlanKol, Sum(P.RealizKol) as RealizKol, P.MesRealiz
  95130.     From #Plan P
  95131.     Inner Join Katart K on K.Sifra_art = P.Sifra_art
  95132.     Inner Join Podgrupi PG on PG.Sifra_Podg = K.Sifra_Podg
  95133.     Inner join Grupi G On G.Sifra_Gr = PG.Sifra_Gr
  95134.     Where 1=1 '
  95135.     If @Sifra_art_Od Is Not Null 
  95136.         Set @SSQL = @SSQL + ' And P.Sifra_Art >= ' + @Sifra_art_Od + ' '
  95137.     If @Sifra_art_Do Is Not Null 
  95138.         Set @SSQL = @SSQL + ' And P.Sifra_Art <= ' + @Sifra_art_Do + ' '
  95139. --    If @KoiOe Is Not Null
  95140. --        Set @SSQL = @SSQL + ' And P.Sifra_Oe In (' + @KoiOe + ') '
  95141.     If @Sifra_Podg Is Not Null
  95142.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  95143.     If @Sifra_Gr Is Not Null
  95144.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  95145.     If @Sifra_Brand Is Not Null
  95146.         Set @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  95147.     If @Komint is Not Null 
  95148.         Set @SSQL = @SSQL + ' And K.Kto = ' + @Komint + ' '
  95149.     Set @SSQL = @SSQL + ' Group By   P.RbrVoPlan, P.Sifra_Art, K.ImeArt, K.Nom, K.Sifra_Podg, P.RbrPodg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, P.Godina, P.Mesec, P.Period, P.MesRealiz '
  95150.     If @Podred Is Null
  95151.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan '
  95152.     Else If @Podred = 'S'
  95153.         Set @SSQL = @SSQL + ' Order By P.Sifra_art ' 
  95154.     Else If @Podred = 'R' 
  95155.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan '
  95156.     Else If @Podred = 'A' 
  95157.         Set @SSQL = @SSQL + ' Order By K.Imeart '
  95158.     Else
  95159.         Set @SSQL = @SSQL + ' Order By P.RbrVoPlan ' 
  95160.     EXEC (@SSQL)
  95161.  
  95162.  
  95163. Go
  95164. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_planrealizacija]'))
  95165. drop procedure [dbo].[sp_planrealizacija]
  95166.  
  95167. Go
  95168. CREATE   PROCEDURE sp_PlanRealizacija
  95169.     @Datum_Od    Smalldatetime,
  95170.     @Datum_Do    Smalldatetime,
  95171.     @Sifra_OE    varchar(200) = NULL,
  95172.     @Sifra_Podg    varchar(200) = NULL,
  95173.     @Sifra_Gr    varchar(200) = NULL,
  95174.     @Kto        varchar(200) = NULL,
  95175.     @Sifra_Brand    varchar(200) = NULL,
  95176.     @SoDanok    Char(1) = 'D',
  95177.     @RazbijSostav    Char(1) = 'N',
  95178.     @Sifra_Art_Od    varchar(20) = Null,
  95179.     @Sifra_Art_Do    varchar(20) = Null
  95180. AS
  95181.     CREATE    Table #tSostav
  95182.     (    Sifra_Art    varchar(20), 
  95183.         Sifra_Sur    varchar(20), 
  95184.         Ima_Kolic    Decimal(18,6),
  95185.         Cena        Decimal(18,6),
  95186.         VkCena        Decimal(18,6)
  95187.     )
  95188.     Declare @SSQL Varchar(8000)
  95189.     Declare @SSQL1 Varchar(8000)
  95190.     Declare @DatOd as smalldatetime
  95191.     Declare @DatDo as smalldatetime
  95192.     Set @SSQL1 = ''
  95193.     If @Sifra_Art_Od Is Not Null
  95194.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  95195.     If @Sifra_Art_Do Is Not Null
  95196.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  95197.     If @Sifra_Podg Is Not NULL
  95198.                Set @SSQL1 = @SSQL1 + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  95199.     If @Sifra_Gr Is Not NULL
  95200.                 Set @SSQL1 = @SSQL1 + 'And P.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  95201.     If @Kto Is Not NULL
  95202.                 Set @SSQL1 = @SSQL1 + 'And K.Kto IN (' + @Kto  + ') '
  95203.     If @Sifra_Brand Is Not NULL
  95204.                 Set @SSQL1 = @SSQL1 + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  95205.     If @RazbijSostav = 'D'
  95206.     Begin
  95207.         Set @SSQL = 'Insert #tSostav 
  95208.         Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena From Sostav S 
  95209.         Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  95210.     If @Sifra_Gr Is Not NULL
  95211.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  95212.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  95213.     EXEC(@SSQL + @SSQL1)
  95214.     End
  95215.     Set @SSQL = 'Insert #tSostav 
  95216.     Select K.Sifra_Art, K.Sifra_Art,1, 1, 1
  95217.     From Katart K '
  95218.     If @Sifra_Gr Is Not NULL
  95219.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  95220.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  95221.     If @RazbijSostav = 'D'
  95222.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  95223.     Exec(@SSQL+@SSQL1)
  95224.     Create Table #Prod
  95225.     (
  95226.     Godina        smallint,
  95227.     Mesec        smallint,
  95228.     Sifra_Art    varchar(20),
  95229.     Plan_Kol    decimal(18,4),
  95230.     Ostv_Kol    decimal(18,4),
  95231.     Plan_Proc    decimal(6,2),
  95232.     Plan_Cena    decimal(12,4),
  95233. --    DogCena    decimal(12,4),
  95234.     Plan_Vrednost    decimal(18,6),
  95235.     Realiz_Vrednost    decimal(18,6)
  95236.     )
  95237.     Insert Into #Prod  Select 0 as Godina, 0 as Mesec, S.Sifra_Art as Sifra_Art, 0 as Plan_Kol, 0 as Ostv_Kol, 0 as Plan_Pros, 0 as Plan_Cena, 0 as Plan_Vrednost, 0 as Plan_Realizacija
  95238.          from #tSostav S
  95239.     Set @SSQL = 'INSERT INTO #Prod     Select Year(S.Datum_Dok) as Godina, Month(S.Datum_Dok) As Mesec, S.Sifra_Art As Sifra_Art, 0 as Plan_Kol,
  95240.         Round(Sum(S.Kolic), 4) Ostv_Kol, 0 as Plan_Proc, 0 as Plan_Cena, 0 as Plan_Vrednost,
  95241.         Round(Sum(dbo.fn_VratiVredIzl (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, '''+@SoDanok+''')), 4) as Realiz_Vrednost
  95242.         From #tSostav TS
  95243.         Inner Join Stavr S ON TS.Sifra_Art=S.Sifra_Art
  95244.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 
  95245.         Where S.VlIzl = ''I'' And 
  95246.         (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''')  '
  95247.     If @Datum_Od Is Not NULL
  95248.         Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  95249.     If @Datum_Do Is Not NULL
  95250.         Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  95251.     If @Sifra_OE Is Not NULL    
  95252.             Set @SSQL = @SSQL + 'And S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  95253.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art,  Year(S.Datum_Dok), Month(S.Datum_Dok), S.DokCena '
  95254.     EXEC(@SSQL)
  95255.     Set @SSQL='Insert Into #Prod  Select P.Godina, P.Mesec, P.Sifra_Art, P.Plan_Kol, 0 as Ostv_Kol, P.Plan_Proc, P.Plan_Cena,
  95256.             (P.Plan_Kol * K.DogCena) as Plan_Vrednost, 0 as REaliz_Vrednost
  95257.             From PlanMes P
  95258.             Inner Join Katart K On K.Sifra_art=P.Sifra_art '
  95259.     If @Sifra_Gr Is Not NULL
  95260.         Set @SSQL = @SSQL + ' Inner Join Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  95261.     If @Datum_Od Is Not Null 
  95262.         Set @SSQL=@SSQL+ ' And dbo.fn_VratiDatumOd(P.Godina, P.Mesec) >= ''' + cast(@Datum_Od as Varchar(35)) + ''' ' 
  95263.     If @Datum_Do Is Not Null 
  95264.         Set @SSQL=@SSQL+ ' And dbo.fn_VratiDatumOd(P.Godina, P.Mesec) <= ''' + cast(@Datum_Do as Varchar(35)) + ''' ' 
  95265.     If @Sifra_Art_Od Is Not Null
  95266.         Set @SSQL = @SSQL + ' And P.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  95267.     If @Sifra_Art_Do Is Not Null
  95268.         Set @SSQL = @SSQL + ' And P.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  95269.     If @Sifra_Podg Is Not NULL
  95270.         Set @SSQL = @SSQL + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  95271.     If @Sifra_Gr Is Not NULL
  95272.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  95273.     If @Kto Is Not NULL
  95274.         Set @SSQL = @SSQL + 'And K.Kto IN (' + @Kto  + ') '
  95275.     If @Sifra_Brand Is Not NULL
  95276.         Set @SSQL = @SSQL + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  95277.     If @Sifra_OE Is Not Null 
  95278.         Set @SSQL=@SSQL+ ' And P.Sifra_OE = ''' + cast(@Sifra_OE as varchar(6)) + ''' ' 
  95279. print @SSql
  95280. Exec(@SSQL)
  95281.     Select P.Sifra_Art, K.ImeArt, P.Godina, P.Mesec, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr,
  95282.         Sum(P.Plan_Kol) Plan_Kol, Sum(P.Ostv_Kol) Realiz_Kol, Sum(P.Plan_Vrednost) Plan_Vrednost, Sum(P.Realiz_Vrednost) Realiz_Vrednost
  95283.         From #Prod P 
  95284.         Inner Join Katart K On K.Sifra_Art = P.Sifra_art 
  95285.         Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  95286.         Inner Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr
  95287.         Where P.Plan_Kol <> 0 Or P.Ostv_Kol <> 0
  95288.         Group By   P.Godina, P.Mesec, P.Sifra_Art, K.Imeart, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr
  95289.         Order By P.Sifra_Art
  95290.  
  95291.  
  95292.  
  95293. Go
  95294. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_planrealizacija_poperiodi]'))
  95295. drop procedure [dbo].[sp_planrealizacija_poperiodi]
  95296.  
  95297. Go
  95298. CREATE   PROCEDURE sp_PlanRealizacija_PoPeriodi
  95299.     @Datum_Od    Smalldatetime,
  95300.     @Datum_Do    Smalldatetime,
  95301.     @Sifra_OE    varchar(200) = NULL,
  95302.     @Sifra_Podg    varchar(200) = NULL,
  95303.     @Sifra_Gr    varchar(200) = NULL,
  95304.     @Kto        varchar(200) = NULL,
  95305.     @Sifra_Brand    varchar(200) = NULL,
  95306.     @SoDanok    Char(1) = 'D',
  95307.     @RazbijSostav    Char(1) = 'N',
  95308.     @Sifra_Art_Od    varchar(20) = Null,
  95309.     @Sifra_Art_Do    varchar(20) = Null,
  95310.     @Denovi    smallint
  95311. AS
  95312.     CREATE    Table #tSostav
  95313.     (    Sifra_Art    varchar(20), 
  95314.         Sifra_Sur    varchar(20), 
  95315.         Ima_Kolic    Decimal(18,6),
  95316.         Cena        Decimal(18,6),
  95317.         VkCena        Decimal(18,6)
  95318.     )
  95319.     Declare @SSQL Varchar(8000)
  95320.     Declare @SSQL1 Varchar(8000)
  95321.     Set @SSQL1 = ''
  95322.     If @Sifra_Art_Od Is Not Null
  95323.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  95324.     If @Sifra_Art_Do Is Not Null
  95325.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  95326.     If @Sifra_Podg Is Not NULL
  95327.                Set @SSQL1 = @SSQL1 + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  95328.     If @Sifra_Gr Is Not NULL
  95329.                 Set @SSQL1 = @SSQL1 + 'And P.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  95330.     If @Kto Is Not NULL
  95331.                 Set @SSQL1 = @SSQL1 + 'And K.Kto IN (' + @Kto  + ') '
  95332.     If @Sifra_Brand Is Not NULL
  95333.                 Set @SSQL1 = @SSQL1 + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  95334.     If @RazbijSostav = 'D'
  95335.     Begin
  95336.         Set @SSQL = 'Insert #tSostav 
  95337.         Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena From Sostav S 
  95338.         Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  95339.     If @Sifra_Gr Is Not NULL
  95340.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  95341.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  95342.     EXEC(@SSQL + @SSQL1)
  95343.     End
  95344.     Set @SSQL = 'Insert #tSostav 
  95345.     Select K.Sifra_Art, K.Sifra_Art,1, 1, 1
  95346.     From Katart K '
  95347.     If @Sifra_Gr Is Not NULL
  95348.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  95349.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  95350.     If @RazbijSostav = 'D'
  95351.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  95352.     Exec(@SSQL+@SSQL1)
  95353.     Create Table #Prod
  95354.     (
  95355.     Godina        smallint,
  95356.     Mesec        smallint,
  95357.     Dekada        smallint,
  95358.     Sifra_Art    varchar(20),
  95359.     Plan_Kol    decimal(18,4),
  95360.     Ostv_Kol    decimal(18,4),
  95361.     Plan_Proc    decimal(6,2),
  95362.     Plan_Cena    decimal(12,4),
  95363. --    DogCena    decimal(12,4),
  95364.     Plan_Vrednost    decimal(18,6),
  95365.     Realiz_Vrednost    decimal(18,6)
  95366.     )
  95367.     Insert Into #Prod  Select 0 as Godina, 0 as Mesec, 0 as Dekada, S.Sifra_Art as Sifra_Art, 0 as Plan_Kol, 0 as Ostv_Kol, 0 as Plan_Pros, 0 as Plan_Cena, 0 as Plan_Vrednost, 0 as Plan_Realizacija
  95368.          from #tSostav S
  95369.     Set @SSQL = 'INSERT INTO #Prod     Select Year(S.Datum_Dok) as Godina, Month(S.Datum_Dok) As Mesec,
  95370.                         dbo.fn_dekada(''' + Cast(@Datum_Od As Varchar(30)) + ''', ' + 'S.Datum_Dok, ' + Cast(@Denovi As Varchar(3)) + ') As Dekada,  
  95371.                          S.Sifra_Art As Sifra_Art, 0 as Plan_Kol,
  95372.         Round(Sum(S.Kolic), 4) Ostv_Kol, 0 as Plan_Proc, 0 as Plan_Cena, 0 as Plan_Vrednost,
  95373.         Round(Sum(dbo.fn_VratiVredIzl (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, '''+@SoDanok+''')), 4) as Realiz_Vrednost
  95374.         From #tSostav TS
  95375.         Inner Join Stavr S ON TS.Sifra_Art=S.Sifra_Art
  95376.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 
  95377.         Where S.VlIzl = ''I'' And 
  95378.         (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''')  '
  95379.     If @Datum_Od Is Not NULL
  95380.         Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  95381.     If @Datum_Do Is Not NULL
  95382.         Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  95383.     If @Sifra_OE Is Not NULL    
  95384.             Set @SSQL = @SSQL + 'And S.Sifra_OE  IN (' + @Sifra_OE  + ') '
  95385.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art,  Year(S.Datum_Dok), Month(S.Datum_Dok), dbo.fn_dekada(''' + Cast(@Datum_Od As Varchar(30)) + ''', ' + 'S.Datum_Dok, ' + Cast(@Denovi As Varchar(3)) + '),   S.DokCena 'print @SSQL
  95386.     EXEC(@SSQL)
  95387. print @SSQl
  95388.     Set @SSQL='Insert Into #Prod  Select P.Godina, P.Mesec, 0 as Dekada, P.Sifra_Art, P.Plan_Kol, 0 as Ostv_Kol, P.Plan_Proc, P.Plan_Cena,
  95389.             (P.Plan_Kol * K.DogCena) as Plan_Vrednost, 0 as REaliz_Vrednost
  95390.             From PlanMes P
  95391.             Inner Join Katart K On K.Sifra_art=P.Sifra_art '
  95392.     If @Sifra_Gr Is Not NULL
  95393.         Set @SSQL = @SSQL + ' Inner Join Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  95394.     If @Datum_Od Is Not Null 
  95395.         Set @SSQL=@SSQL+ ' And dbo.fn_VratiDatumOd(P.Godina, P.Mesec) >= ''' + cast(@Datum_Od as Varchar(35)) + ''' ' 
  95396.     If @Datum_Do Is Not Null 
  95397.         Set @SSQL=@SSQL+ ' And dbo.fn_VratiDatumOd(P.Godina, P.Mesec) <= ''' + cast(@Datum_Do as Varchar(35)) + ''' ' 
  95398.     If @Sifra_Art_Od Is Not Null
  95399.         Set @SSQL = @SSQL + ' And P.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  95400.     If @Sifra_Art_Do Is Not Null
  95401.         Set @SSQL = @SSQL + ' And P.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  95402.     If @Sifra_Podg Is Not NULL
  95403.         Set @SSQL = @SSQL + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  95404.     If @Sifra_Gr Is Not NULL
  95405.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  95406.     If @Kto Is Not NULL
  95407.         Set @SSQL = @SSQL + 'And K.Kto IN (' + @Kto  + ') '
  95408.     If @Sifra_Brand Is Not NULL
  95409.         Set @SSQL = @SSQL + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  95410.     If @Sifra_OE Is Not Null 
  95411.         Set @SSQL=@SSQL+ ' And P.Sifra_OE In (' + @Sifra_OE + ') ' 
  95412. --select * from #prod where dekada <> 0
  95413. Exec(@SSQL)
  95414.     Select P.Sifra_Art, K.ImeArt, P.Godina, P.Mesec, P.Dekada, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr,
  95415.         Sum(P.Plan_Kol) Plan_Kol, Sum(P.Ostv_Kol) Realiz_Kol, Sum(P.Plan_Vrednost) Plan_Vrednost, Sum(P.Realiz_Vrednost) Realiz_Vrednost
  95416.         From #Prod P
  95417.         Inner Join Katart K On K.Sifra_Art = P.Sifra_art 
  95418.         Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  95419.         Inner Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr
  95420.         Where P.Plan_Kol <> 0 Or P.Ostv_Kol <> 0
  95421.         Group By   P.Godina, P.Mesec, P.Sifra_Art, P.Dekada, K.Imeart, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr
  95422.         Order By P.Sifra_Art
  95423.  
  95424.  
  95425.  
  95426. Go
  95427. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_planvoperiod]'))
  95428. drop procedure [dbo].[sp_planvoperiod]
  95429.  
  95430. Go
  95431. CREATE         PROCEDURE sp_PlanVoPeriod
  95432.     @Sifra_OEPlan    smallint,
  95433.     @Datum_Od    smalldatetime,
  95434.     @Datum_Do    smalldatetime,
  95435.     @Period    smallint,    -- Ovde Vnesi  7, 10 ili 15 
  95436.     @BrPeriodi    smallint,     -- Ovde Vnesi (4 ili 5) , 3 ili 2
  95437.     @KoiOe    varchar(200),
  95438.     @Sifra_Art_Od    varchar(20),
  95439.     @Sifra_Art_Do    varchar(20),
  95440.     @Sifra_Gr    char(3),
  95441.     @Sifra_Podg    char(6),
  95442.     @Sifra_Brand    smallint,
  95443.     @Komint    char(6),
  95444.     @Podred    char(1),
  95445.     @ImePlan    varchar(10),
  95446.     @NedelenMes    char(1) = 'N'            -- M Mesecen        N-Nedelen
  95447. AS
  95448.     Declare @SSQL as Varchar(4000)
  95449.     Declare @Godina as varchar(4)
  95450.     Declare @Mesec as Varchar(2)
  95451.     Set @Godina =Year(@Datum_Od)
  95452.     Set @Mesec =Month(@Datum_Do)
  95453.     Create Table #Artikli
  95454. (
  95455.      Sifra_art        varchar(20),
  95456.     Godina        smallint,
  95457.     Mesec        smallint,
  95458.     Sifra_Podg    char(6),
  95459.     RbrVoPlan    smallint,
  95460.     RbrPodg    smallint,
  95461.     Plan_Kol    decimal(18,6),
  95462.     Plan_KolMes    decimal(18,6),
  95463.     Realiz_Kol    decimal(18,6),
  95464.     Zaliha        decimal(18,6)
  95465. )
  95466.     Set @SSQL= ' Insert Into #Artikli Select  PM.Sifra_Art, PM.Godina, PM.Mesec, K.Sifra_Podg, PM.RbrVoPlan, 0 as RbrPodg, 
  95467.             (PM.Plan_Kol/' + cast(@BrPeriodi as varchar(2)) + ') as Plan_Kol, PM.Plan_Kol as Plan_KolMes, 0, 0
  95468.             From PlanMes PM
  95469.             Left outer Join Katart K On K.Sifra_art = PM.Sifra_art
  95470.             Inner Join Podgrupi PG on PG.Sifra_Podg = K.Sifra_Podg
  95471.             Inner join Grupi G On G.Sifra_Gr = PG.Sifra_Gr 
  95472.             Where PM.Godina = '+ @Godina + ' and PM.Mesec = ' + @Mesec + ' '
  95473.     If @Sifra_art_Od Is Not Null 
  95474.         Set @SSQL = @SSQL + ' And PM.Sifra_Art >= ' + @Sifra_art_Od + ' '
  95475.     If @Sifra_art_Do Is Not Null 
  95476.         Set @SSQL = @SSQL + ' And PM.Sifra_Art <= ' + @Sifra_art_Do + ' '
  95477.     If @Sifra_OePlan Is Not Null
  95478.         Set @SSQL = @SSQL + ' And PM.Sifra_Oe = ' + cast(@Sifra_OePlan as varchar(6)) + ' ' --In (' + @KoiOe + ') '
  95479.     If @Sifra_Podg Is Not Null
  95480.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  95481.     If @Sifra_Gr Is Not Null
  95482.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  95483.     If @Sifra_Brand Is Not Null
  95484.         Set @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  95485.     If @Komint is Not Null 
  95486.         Set @SSQL = @SSQL + ' And K.Kto = ' + @Komint + ' '
  95487.     If @ImePlan is Not Null 
  95488.         Set @SSQL = @SSQL + ' And PM.ImePlan = ''' + @ImePlan + ''' '
  95489. --Print @SSQL
  95490.     EXEC (@SSQL)
  95491.     Create Table #Podgrupi
  95492.     (
  95493.     Sifra_Podg    char(6),
  95494.     RbrPodg    smallint,
  95495.     )
  95496.     Insert Into #Podgrupi
  95497.     Select Distinct Sifra_Podg, Min(RbrVoPlan)
  95498.     From #Artikli
  95499.     Group By Sifra_Podg
  95500.     Update #Artikli
  95501.     Set #Artikli.RbrPodg=#Podgrupi.RbrPodg
  95502.     From #Podgrupi
  95503.     Where #Artikli.Sifra_Podg = #Podgrupi.Sifra_Podg
  95504.     Create Table #Realizacija
  95505.     (
  95506.     Sifra_Art    varchar(20),
  95507.     Godina        smallint,
  95508.     Mesec        smallint,
  95509.     RealizKol    decimal(18,6)
  95510.     )
  95511.     Set @SSQL = ' Insert Into #Realizacija Select S.Sifra_Art, Year(S.Datum_Dok) as Godina, '
  95512.     If @NedelenMes = 'N'
  95513.         Set @SSQL = @SSQL + ' ' + cast(@Mesec as varchar(2)) +', '
  95514.     Else
  95515.         Set @SSQL = @SSQL + ' Month(S.Datum_Dok) as Mesec, '
  95516.     Set @SSQL = @SSQL + ' Sum(S.Kolic) as RezlizKol
  95517.             From Stavr S
  95518.             Inner Join Dokr D On D.DokrID=S.DokrID
  95519.             Inner Join Katart K On K.Sifra_art = S.Sifra_art
  95520.             Inner Join Podgrupi PG on PG.Sifra_Podg = K.Sifra_Podg
  95521.             Inner Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr
  95522.             Where S.Vlizl =' +'''I''' + ' and D.Sifra_Za=1 and S.Datum_Dok >=''' + cast(@Datum_Od as varchar(35)) + ''' ' +
  95523.             ' and S.Datum_Dok <=''' + cast(@Datum_Do as varchar(35)) + ''' 
  95524.             and S.Sifra_art In (Select Distinct Sifra_art From #Artikli) '
  95525.     If @Sifra_art_Od Is Not Null 
  95526.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_art_Od + ''' '
  95527.     If @Sifra_art_Do Is Not Null 
  95528.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_art_Do + ''' '
  95529.     If @KoiOe Is Not Null
  95530.         Set @SSQL = @SSQL + ' And S.Sifra_OE In (' + @KoiOe + ') '
  95531.     If @Sifra_Podg Is Not Null
  95532.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  95533.     If @Sifra_Gr Is Not Null
  95534.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  95535.     If @Sifra_Brand Is Not Null
  95536.         Set @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  95537.     If @Komint is Not Null 
  95538.         Set @SSQL = @SSQL + ' And K.Kto = ' + @Komint + ' '
  95539.     If @NedelenMes = 'N' 
  95540.         Set @SSQL = @SSQL + ' Group By S.Sifra_art, YEAR(S.Datum_Dok) '
  95541.     Else
  95542.         Set @SSQL = @SSQL + ' Group By S.Sifra_art, YEAR(S.Datum_Dok), MONTH(S.Datum_Dok) '
  95543. --Print @SSQL
  95544. Exec(@SSQL)
  95545. --select * FROM #Realizacija
  95546. --select * FROM #Artikli
  95547.     Set @SSQL = 'Select S.Sifra_Art,
  95548.         Vlez = Sum(Case S.VlIzl
  95549.                 When ''V'' Then S.Kolic
  95550.                 When ''I'' Then 0
  95551.             End),
  95552.         Izlez = Sum(Case S.VlIzl
  95553.                 When ''V'' Then 0
  95554.                 When ''I'' Then S.Kolic
  95555.             End)
  95556.         From Stavr S
  95557.         Inner Join Katart K On S.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' '
  95558.     If @Sifra_Gr Is Not Null
  95559.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  95560.     Set @SSQL = @SSQL + 'Where Datum_Dok<= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  95561.     If @Sifra_Art_Od Is Not Null
  95562.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  95563.     If @Sifra_Art_Do Is Not Null
  95564.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  95565.     If @KoiOe Is Not Null
  95566.         Set @SSQL = @SSQL + 'And S.Sifra_OE In (' + @KoiOe +  ') '
  95567.     If @Komint Is Not Null
  95568.              Set @SSQL=@SSQL + 'And K.Kto='''+ @Komint +''' '
  95569.     If @Sifra_Podg Is Not Null
  95570.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  95571.     If @Sifra_Gr Is Not Null
  95572.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=' + @Sifra_Gr + ' '
  95573.     If @Sifra_Brand Is Not Null
  95574.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(8)) + ' '
  95575. --        Set @SSQL = @SSQL + ' and S.Sifra_art In (Select Distinct Sifra_art From #Artikli) ' 
  95576.     Set @SSQL = @SSQL + 'Group By  S.Sifra_Art '
  95577.     Create Table #Zaliha
  95578.     (    Sifra_Art Varchar(20),
  95579.         Vlez Decimal(18,6),
  95580.         Izlez Decimal(18,6)
  95581.     )        
  95582. --Print @SSQL
  95583.     Insert #Zaliha Exec(@SSQL)
  95584. --select * from #zaliha
  95585.     Update #Artikli
  95586.     Set #Artikli.Zaliha=(#Zaliha.Vlez-#Zaliha.Izlez)
  95587.     From #Zaliha
  95588.     Where #Artikli.Sifra_art=#Zaliha.Sifra_art
  95589.     Update #Artikli
  95590.     Set #Artikli.Realiz_Kol=#Realizacija.RealizKol
  95591.     From #Realizacija
  95592.     Where #Artikli.Sifra_art=#Realizacija.Sifra_art and #Artikli.Godina=#Realizacija.Godina
  95593.     AND #Artikli.Mesec=#Realizacija.Mesec
  95594. --    Where #Plan.Sifra_Oe=#Zaliha.Sifra_Oe and #Plan.Sifra_art=#Zaliha.Sifra_art
  95595. --select * from #Artikli
  95596.     Set @SSQL = ' Select A.Sifra_art,  K.Imeart, K.Nom, A.Sifra_Podg, PG.Ime_Podg, PG.Sifra_gr, G.Ime_Gr, A.RbrVoPlan, A.RbrPodg, A.Plan_Kol Planirano, 
  95597.              A.Plan_KolMes MesecenPlan, A.Realiz_Kol Realizacija,  A.Zaliha, K.KolkuDrg
  95598.             From #Artikli A 
  95599.             Inner Join Katart K On K.Sifra_art =A.Sifra_art
  95600.             Inner Join Podgrupi PG on PG.Sifra_Podg = K.Sifra_Podg
  95601.             Inner join Grupi G On G.Sifra_Gr = PG.Sifra_Gr '
  95602.     If @Podred Is Null
  95603.         Set @SSQL = @SSQL + ' Order By A.RbrVoPlan '
  95604.     Else If @Podred = 'S'
  95605.         Set @SSQL = @SSQL + ' Order By A.Sifra_art ' 
  95606.     Else If @Podred = 'R' 
  95607.         Set @SSQL = @SSQL + ' Order By A.RbrVoPlan '
  95608.     Else If @Podred = 'A' 
  95609.         Set @SSQL = @SSQL + ' Order By K.Imeart '
  95610.     Else
  95611.         Set @SSQL = @SSQL + ' Order By A.RbrVoPlan ' 
  95612.     Print @SSQL
  95613.     Exec(@SSQL)
  95614.  
  95615.  
  95616. Go
  95617. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pocsost_osnsred]'))
  95618. drop procedure [dbo].[sp_pocsost_osnsred]
  95619.  
  95620. Go
  95621.  
  95622. CREATE  PROCEDURE sp_PocSost_OsnSred
  95623.     @Godina    smallint,        -- mora da se vnese
  95624.     @Inv_BrojOd    char(10) = Null,
  95625.     @Inv_BrojDo    char(10) = Null,
  95626.     @Sifra_Lok    char(3) = Null,
  95627.     @Sifra_MikLok    char(10) = Null,
  95628.     @Sifra_MakLok    char(10) = Null,
  95629.     @Sifra_Amor    char(3) = Null,
  95630.     @podred    char(1) = 'S',    -- S - Sifra      A-Ime
  95631.     @OS_SI    char(1) = 'O'        -- O - Osnovni Sredstva     S - Siten Inventar
  95632. AS
  95633.     Declare @SSQL as varchar(8000)
  95634.     Set @SSQL = ' Select P.Inv_Broj, O.Ime, P.Godina, P.Osn_Amor, P.Otpis_Pret, O.Sifra_MikLok, MikL.Ime_MikLok, O.Sifra_Amor, P.Kto_Anal, O.Sifra_Rab, R.ImeRab
  95635.             From PocSostOsn P
  95636.             Left Outer Join MikroLok MikL On MikL.Sifra_MikLok = P.Sifra_MikLok
  95637.             Left Outer Join MakroLok MakL On MakL.Sifra_MakLok = MikL.Sifra_MakLok
  95638.             Inner Join OsnSred O On O.Inv_Broj=P.Inv_Broj
  95639.             Left Outer Join Rabotnik R On R.Sifra_Rab=O.Sifra_Rab
  95640.             Where P.Godina = ' + Cast(@Godina as varchar(10)) + ' '
  95641.     If @Sifra_Amor Is Not Null
  95642.         Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  95643.     If @Sifra_MikLok Is Not Null
  95644.         Set @SSQL = @SSQL + ' And O.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  95645.     If @Sifra_MakLok Is Not Null
  95646.         Set @SSQL = @SSQL + ' And MikL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  95647.     If @Sifra_Lok Is Not Null
  95648.         Set @SSQL = @SSQL + ' And MakL.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  95649.     If @Inv_BrojOd Is Not Null
  95650.         Set @SSQL = @SSQL + ' And P.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  95651.     If @Inv_BrojDo Is Not Null
  95652.         Set @SSQL = @SSQL + ' And P.Inv_Broj <= ''' + @Inv_BrojDo + ''' '
  95653.     If @OS_SI = 'O'
  95654.         Set @SSQL = @SSQL + ' And O.Tip = ''OS'' '
  95655.     Else If @OS_SI = 'S'
  95656.         Set @SSQL = @SSQL + ' And O.Tip = ''SI'' '
  95657.     If @Podred = 'S'    
  95658.         Set @SSQL = @SSQL + ' Order By P.Inv_Broj '
  95659.     Else If @Podred = 'A'    
  95660.         Set @SSQL = @SSQL + ' Order By O.Ime '
  95661.     Exec(@SSQL)
  95662.  
  95663.  
  95664.  
  95665. Go
  95666. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pocsostfinnadat]'))
  95667. drop procedure [dbo].[sp_pocsostfinnadat]
  95668.  
  95669. Go
  95670.  
  95671. CREATE   PROCEDURE sp_PocSostFinNaDat
  95672.     @Sifra_Za    char(1),
  95673.     @Kto        char(10),
  95674.     @Datum_Do    smalldatetime 
  95675. AS
  95676. CREATE TABLE #TmpPocSost
  95677. (Sifra_Kup    char(6),
  95678.  Dolzi        decimal(18,2),
  95679.  Pobaruva    decimal(18,2),
  95680.  Plat_Dolzi    decimal(18,2),
  95681.  Plat_Pobaruva    decimal(18,2) )
  95682. INSERT INTO #TmpPocSost (Sifra_Kup, Dolzi, Pobaruva) SELECT Sifra_Kup, Sum(Dolzi), Sum(Pobaruva) FROM AnFinDok
  95683. WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok <= @Datum_Do GROUP BY Sifra_Kup
  95684. CREATE TABLE #TmpPlat
  95685. (Sifra_Kup    char(6),
  95686.  Plat_Dolzi    decimal(18,2),
  95687.  Plat_Pobaruva    decimal(18,2) )
  95688. /*INSERT INTO #TmpPlat (Sifra_Kup, Plat_Dolzi)
  95689. SELECT F.Sifra_Kup, SUM(Case When ((Z.Iznos>0 AND F.Dolzi>0) OR (Z.Iznos<0 AND F.Dolzi<0)) Then Z.Iznos Else Z.Iznos * -1 End )
  95690. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID1=F.AnID 
  95691. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND F.Dolzi<>0 AND 
  95692. Z.AnID2 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95693. GROUP BY F.Sifra_Kup
  95694. INSERT INTO #TmpPlat (Sifra_Kup, Plat_Dolzi)
  95695. SELECT F.Sifra_Kup, SUM(Case When ((Z.Iznos>0 AND F.Dolzi>0) OR (Z.Iznos<0 AND F.Dolzi<0)) Then Z.Iznos Else Z.Iznos * -1 End )
  95696. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID2=F.AnID 
  95697. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND F.Dolzi<>0 AND 
  95698. Z.AnID1 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95699. GROUP BY F.Sifra_Kup
  95700. INSERT INTO #TmpPlat (Sifra_Kup, Plat_Pobaruva)
  95701. SELECT F.Sifra_Kup, SUM(Case When ((Z.Iznos>0 AND F.Pobaruva>0) OR (Z.Iznos<0 AND F.Pobaruva<0)) Then Z.Iznos Else Z.Iznos * -1 End )
  95702. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID1=F.AnID 
  95703. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND F.Pobaruva<>0 AND 
  95704. Z.AnID2 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95705. GROUP BY F.Sifra_Kup
  95706. INSERT INTO #TmpPlat (Sifra_Kup, Plat_Pobaruva)
  95707. SELECT F.Sifra_Kup, SUM(Case When ((Z.Iznos>0 AND F.Pobaruva>0) OR (Z.Iznos<0 AND F.Pobaruva<0)) Then Z.Iznos Else Z.Iznos * -1 End )
  95708. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID2=F.AnID 
  95709. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND F.Pobaruva<>0 AND 
  95710. Z.AnID1 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95711. GROUP BY F.Sifra_Kup  */
  95712. INSERT INTO #TmpPlat (Sifra_Kup, Plat_Dolzi, Plat_Pobaruva)
  95713. SELECT F.Sifra_Kup, SUM(Case When F.Dolzi>0 OR F.Pobaruva<0 Then abs(Z.Iznos) Else 0 End), SUM(Case When F.Pobaruva>0 OR F.Dolzi<0 Then abs(Z.Iznos) Else 0 End)
  95714. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID1=F.AnID 
  95715. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND 
  95716. Z.AnID2 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95717. GROUP BY F.Sifra_Kup
  95718. INSERT INTO #TmpPlat (Sifra_Kup, Plat_Dolzi, Plat_Pobaruva)
  95719. SELECT F.Sifra_Kup, SUM(Case When F.Dolzi>0 OR F.Pobaruva<0 Then abs(Z.Iznos) Else 0 End), SUM(Case When F.Pobaruva>0 OR F.Dolzi<0 Then abs(Z.Iznos) Else 0 End)
  95720. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID2=F.AnID 
  95721. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND 
  95722. Z.AnID1 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95723. GROUP BY F.Sifra_Kup
  95724. CREATE TABLE #TmpPlatSum
  95725. (Sifra_Kup    char(6),
  95726.  Plat_Dolzi    decimal(18,2),
  95727.  Plat_Pobaruva    decimal(18,2) )
  95728. INSERT INTO #TmpPlatSum SELECT Sifra_Kup, Sum(Plat_Dolzi), Sum(Plat_Pobaruva) FROM #TmpPlat GROUP BY Sifra_Kup
  95729. UPDATE #TmpPocSost SET  Plat_Dolzi = P.Plat_Dolzi, Plat_Pobaruva = P.Plat_Pobaruva FROM #TmpPlatSum P
  95730. WHERE #TmpPocSost.Sifra_Kup = P.Sifra_Kup
  95731. SELECT * FROM #TmpPocSost ORDER BY Sifra_Kup
  95732.  
  95733.  
  95734.  
  95735. Go
  95736. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pocsostfinnadatdev]'))
  95737. drop procedure [dbo].[sp_pocsostfinnadatdev]
  95738.  
  95739. Go
  95740.  
  95741.  
  95742.  
  95743. CREATE    PROCEDURE sp_PocSostFinNaDatDev
  95744.     @Sifra_Za    char(1),
  95745.     @Kto        char(10),
  95746.     @Datum_Do    smalldatetime 
  95747. AS
  95748. CREATE TABLE #TmpPocSost
  95749. (Sifra_Kup    char(6),
  95750.  KojaVal    char(3),
  95751.  Dev_Dolzi        decimal(18,2),
  95752.  Dev_Pobaruva    decimal(18,2),
  95753.  Dev_Plat_Dolzi    decimal(18,2),
  95754.  Dev_Plat_Pobar    decimal(18,2),
  95755.  Dolzi        decimal(18,2),
  95756.  Pobaruva    decimal(18,2),
  95757.  Plat_Dolzi    decimal(18,2),
  95758.  Plat_Pobaruva    decimal(18,2),
  95759.  Kurs        decimal(18,6) )
  95760. INSERT INTO #TmpPocSost (Sifra_Kup, KojaVal, Dev_Dolzi, Dev_pobaruva, Dolzi, Pobaruva, Kurs) 
  95761. SELECT Sifra_Kup, KojaVal, Sum(Dev_Dolzi), Sum(Dev_pobaruva), Sum(Dolzi), Sum(Pobaruva), 0 FROM AnFinDok
  95762. WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok <= @Datum_Do GROUP BY Sifra_Kup, KojaVal
  95763. UPDATE #TmpPocSost SET Kurs = (Dolzi - Pobaruva)/(Dev_Dolzi - Dev_Pobaruva) WHERE Dev_Dolzi-Dev_Pobaruva<>0   --??!
  95764. UPDATE #TmpPocSost SET Kurs=KrsVaznost.KursSreden FROM KrsVaznost WHERE Kurs=0 AND KrsVaznost.SImeVal=#TmpPocSost.KojaVal And KrsVaznost.Datum=@Datum_Do
  95765. CREATE TABLE #TmpPlat
  95766. (Sifra_Kup    char(6),
  95767.  KojaVal    char(3),
  95768.  Dev_Plat_Dolzi    decimal(18,2),
  95769.  Dev_Plat_Pobar    decimal(18,2),
  95770.  Plat_Dolzi    decimal(18,2),
  95771.  Plat_Pobaruva    decimal(18,2) )
  95772. INSERT INTO #TmpPlat (Sifra_Kup, KojaVal, Dev_Plat_Dolzi, Dev_Plat_Pobar)
  95773. SELECT F.Sifra_Kup, KojaVal, SUM(Case When F.Dev_Dolzi>0 OR F.Dev_Pobaruva<0 Then abs(Z.Iznos_Dev) Else 0 End), SUM(Case When F.Dev_Pobaruva>0 OR F.Dev_Dolzi<0 Then abs(Z.Iznos_Dev) Else 0 End)
  95774. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID1=F.AnID 
  95775. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND 
  95776. Z.AnID2 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95777. GROUP BY F.Sifra_Kup, KojaVal
  95778. INSERT INTO #TmpPlat (Sifra_Kup, KojaVal, Dev_Plat_Dolzi, Dev_Plat_Pobar)
  95779. SELECT F.Sifra_Kup, KojaVal, SUM(Case When F.Dev_Dolzi>0 OR F.Dev_Pobaruva<0 Then abs(Z.Iznos) Else 0 End), SUM(Case When F.Dev_Pobaruva>0 OR F.Dev_Dolzi<0 Then abs(Z.Iznos) Else 0 End)
  95780. FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID2=F.AnID 
  95781. WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND 
  95782. Z.AnID1 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95783. GROUP BY F.Sifra_Kup, KojaVal
  95784. CREATE TABLE #TmpPlatSum
  95785. (Sifra_Kup    char(6),
  95786.  KojaVal    char(3),
  95787.  Dev_Plat_Dolzi    decimal(18,2),
  95788.  Dev_Plat_Pobar    decimal(18,2) )
  95789. INSERT INTO #TmpPlatSum SELECT Sifra_Kup, KojaVal, Sum(Dev_Plat_Dolzi), Sum(Dev_Plat_Pobar) FROM #TmpPlat GROUP BY Sifra_Kup, KojaVal
  95790. UPDATE #TmpPocSost SET  Dev_Plat_Dolzi = P.Dev_Plat_Dolzi, Dev_Plat_Pobar = P.Dev_Plat_Pobar,
  95791. Plat_Dolzi = Round(P.Dev_Plat_Dolzi*Kurs,2), Plat_Pobaruva = round(P.Dev_Plat_Pobar*Kurs,2)
  95792. FROM #TmpPlatSum P WHERE #TmpPocSost.Sifra_Kup = P.Sifra_Kup
  95793. SELECT * FROM #TmpPocSost ORDER BY Sifra_Kup
  95794.  
  95795.  
  95796.  
  95797. Go
  95798. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pocsostfinnadatoe]'))
  95799. drop procedure [dbo].[sp_pocsostfinnadatoe]
  95800.  
  95801. Go
  95802.  
  95803.  
  95804.  
  95805. CREATE    PROCEDURE sp_PocSostFinNaDatOE
  95806.     @Sifra_Za    char(1),
  95807.     @Kto        char(10),
  95808.     @Datum_Do    smalldatetime,
  95809.     @ORGiliPAT    char(1)='O',
  95810.     @DaliDiv    char(1)='N'
  95811. AS
  95812. CREATE TABLE #TmpPocSost
  95813. (Sifra_Kup    char(6),
  95814.  Sifra_OE    smallint,
  95815.  Dolzi        decimal(18,2),
  95816.  Pobaruva    decimal(18,2),
  95817.  Plat_Dolzi    decimal(18,2),
  95818.  Plat_Pobaruva    decimal(18,2),
  95819.  Sifra_Div    smallint )
  95820. IF @ORGiliPAT='P'
  95821. BEGIN
  95822.     IF @DaliDiv='D'
  95823.         INSERT INTO #TmpPocSost (Sifra_Kup, Sifra_OE, Sifra_Div, Dolzi, Pobaruva) SELECT Sifra_Kup, Sifra_Pat, Sifra_Div, Sum(Dolzi), Sum(Pobaruva) FROM AnFinDok
  95824.         WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok <= @Datum_Do GROUP BY Sifra_Kup, Sifra_Pat, Sifra_Div
  95825.     ELSE
  95826.         INSERT INTO #TmpPocSost (Sifra_Kup, Sifra_OE, Dolzi, Pobaruva) SELECT Sifra_Kup, Sifra_Pat, Sum(Dolzi), Sum(Pobaruva) FROM AnFinDok
  95827.         WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok <= @Datum_Do GROUP BY Sifra_Kup, Sifra_Pat
  95828. END
  95829. ELSE
  95830. BEGIN
  95831.     IF @DaliDiv='D'
  95832.         INSERT INTO #TmpPocSost (Sifra_Kup, Sifra_OE, Sifra_Div, Dolzi, Pobaruva) SELECT Sifra_Kup, Sifra_OE, Sifra_Div, Sum(Dolzi), Sum(Pobaruva) FROM AnFinDok
  95833.         WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok <= @Datum_Do GROUP BY Sifra_Kup, Sifra_OE, Sifra_Div
  95834.     ELSE
  95835.         INSERT INTO #TmpPocSost (Sifra_Kup, Sifra_OE, Dolzi, Pobaruva) SELECT Sifra_Kup, Sifra_OE, Sum(Dolzi), Sum(Pobaruva) FROM AnFinDok
  95836.         WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok <= @Datum_Do GROUP BY Sifra_Kup, Sifra_OE
  95837. END
  95838. IF @DaliDiv<>'D' AND @ORGiliPAT<>'P'    --da se doraboti
  95839. BEGIN
  95840.     CREATE TABLE #TmpPlat
  95841.     (Sifra_Kup    char(6),
  95842.      Sifra_OE    smallint,
  95843.      Plat_Dolzi    decimal(18,2),
  95844.      Plat_Pobaruva    decimal(18,2) )
  95845.     INSERT INTO #TmpPlat (Sifra_Kup, Sifra_OE, Plat_Dolzi, Plat_Pobaruva)
  95846.     SELECT F.Sifra_Kup, Sifra_OE, SUM(Case When F.Dolzi>0 OR F.Pobaruva<0 Then abs(Z.Iznos) Else 0 End), SUM(Case When F.Pobaruva>0 OR F.Dolzi<0 Then abs(Z.Iznos) Else 0 End)
  95847.     FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID1=F.AnID 
  95848.     WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND 
  95849.     Z.AnID2 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95850.     GROUP BY F.Sifra_Kup, Sifra_OE
  95851.     
  95852.     INSERT INTO #TmpPlat (Sifra_Kup, Sifra_OE, Plat_Dolzi, Plat_Pobaruva)
  95853.     SELECT F.Sifra_Kup, Sifra_OE, SUM(Case When F.Dolzi>0 OR F.Pobaruva<0 Then abs(Z.Iznos) Else 0 End), SUM(Case When F.Pobaruva>0 OR F.Dolzi<0 Then abs(Z.Iznos) Else 0 End)
  95854.     FROM AnZatv Z INNER JOIN AnFinDok F ON Z.AnID2=F.AnID 
  95855.     WHERE F.Sifra_Za=@Sifra_Za AND F.Kto=@Kto AND F.Datum_Dok<=@Datum_Do AND 
  95856.     Z.AnID1 IN (SELECT AnID FROM AnFinDok WHERE Sifra_Za=@Sifra_Za AND Kto=@Kto AND Datum_Dok>@Datum_Do)
  95857.     GROUP BY F.Sifra_Kup, Sifra_OE
  95858.     CREATE TABLE #TmpPlatSum
  95859.     (Sifra_Kup    char(6),
  95860.      Sifra_OE    smallint,
  95861.      Plat_Dolzi    decimal(18,2),
  95862.      Plat_Pobaruva    decimal(18,2) )
  95863.     INSERT INTO #TmpPlatSum SELECT Sifra_Kup, Sifra_OE, Sum(Plat_Dolzi), Sum(Plat_Pobaruva) FROM #TmpPlat GROUP BY Sifra_Kup, Sifra_OE
  95864.     
  95865.     UPDATE #TmpPocSost SET  Plat_Dolzi = P.Plat_Dolzi, Plat_Pobaruva = P.Plat_Pobaruva FROM #TmpPlatSum P
  95866.     WHERE #TmpPocSost.Sifra_Kup = P.Sifra_Kup AND #TmpPocSost.Sifra_OE = P.Sifra_OE
  95867. END
  95868. SELECT * FROM #TmpPocSost ORDER BY Sifra_Kup
  95869.  
  95870.  
  95871.  
  95872.  
  95873.  
  95874. Go
  95875. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podg_odjavanakarticki]'))
  95876. drop procedure [dbo].[sp_podg_odjavanakarticki]
  95877.  
  95878. Go
  95879. CREATE       PROCEDURE sp_Podg_OdjavaNaKarticki
  95880.     @Sifra_Oe        smallint = Null,
  95881.     @Koi_Oe        varchar(10) = Null,
  95882.     @Datum_Od_Novi    smalldatetime = Null,
  95883.     @Datum_Do_Novi    smalldatetime = Null,
  95884.     @Datum_Od_Odjava    smalldatetime = Null,
  95885.     @Datum_Do_Odjava    smalldatetime = Null
  95886.  AS
  95887.     Declare @SSQL as varchar(8000)
  95888. -------------------------------------------------------  NOVI DOKUMENTI ZA KOI KARTICKITE NE SE ODJAVUVAAT  ------------------------------------------------------    
  95889.     Create Table #TabNoviDok
  95890.     (
  95891.      Datum_Dok    smalldatetime,
  95892. --     DokID        int,
  95893. --     DokrID        int,
  95894.      Sifra_Kup    char(6),
  95895.      Sifra_Obj    smallint,
  95896.      Sifra_Art     varchar(20)
  95897.     )
  95898.     Set @SSQL = ' Select Max(D.Datum_Dok), D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art
  95899.             From Dokr D
  95900.             Inner Join Stavr S On S.DokrId = D.DokrId 
  95901.             Where S.Sifra_Art >=''000700'' and S.Sifra_Art <= ''000750'' 
  95902.             And D.Sifra_Za = ''1'' '
  95903.     If @Sifra_Oe Is Not Null
  95904.         Set @SSQL = @SSQL + ' and D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  95905.     If @Koi_OE Is Not NULL
  95906.              Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  95907.     If @Datum_Od_Novi Is Not Null
  95908.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od_Novi as varchar(30)) + ''' ' 
  95909.     If @Datum_Do_Novi Is Not Null
  95910.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do_Novi as varchar(30)) + ''' ' 
  95911.     Set @SSQL=@SSQL + ' Group By D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art '
  95912.     Insert Into #TabNoviDok Exec(@SSQL)
  95913.     Create Table #NoviDok
  95914.     (
  95915.      DokID        int,
  95916.      Sifra_Kup    char(6),
  95917.      Sifra_Obj    smallint,
  95918.      Sifra_Art     varchar(20)
  95919.     )
  95920.     Set @SSQL =  ' Insert Into #NoviDok
  95921.             Select S.DokID, T.Sifra_kup, T.Sifra_Obj, T.Sifra_Art
  95922.             From  #TabNoviDok T, Dokr D
  95923.             Inner Join Stavr S On D.DokrID = S.DokrID
  95924.             Where S.Datum_Dok=T.Datum_Dok and D.Sifra_kup=T.Sifra_Kup and D.Sifra_Obj=T.Sifra_Obj and S.Sifra_art=T.Sifra_Art  
  95925.             and T.Sifra_Obj Is Not Null and D.Sifra_Obj Is Not Null '
  95926.     Exec(@SSQL)
  95927.     Set @SSQL =  ' Insert Into #NoviDok
  95928.             Select S.DokID, T.Sifra_kup, T.Sifra_Obj, T.Sifra_Art
  95929.             From  #TabNoviDok T, Dokr D
  95930.             Inner Join Stavr S On D.DokrID = S.DokrID
  95931.             Where S.Datum_Dok=T.Datum_Dok and D.Sifra_kup=T.Sifra_Kup and S.Sifra_art=T.Sifra_Art  
  95932.             and T.Sifra_Obj Is Null and D.Sifra_Obj Is Null '
  95933.     Exec(@SSQL)
  95934. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  95935. ------------------  DOKUMENTI SO DATUM OD/DO ZA KOI KE SE ODJAVUVAAT KARTICKITE, A NE SPAGAAT VO GORNITE ------------------
  95936.     Create Table #Komint
  95937.     (
  95938.      Sifra_Kup    char(6),
  95939.      Sifra_Obj    smallint,
  95940.      Sifra_Art     varchar(20)
  95941.     )
  95942.     Insert Into #Komint 
  95943.     Select Distinct Sifra_Kup, Sifra_Obj, Sifra_Art From #NoviDok
  95944.     Create Table #ZaOdjava
  95945.     (
  95946.      DokID        int,
  95947.      Sifra_Oe    smallint,
  95948.      Sifra_Kup    char(6),
  95949.      Sifra_Obj    smallint,
  95950.      Sifra_Art    varchar(20),
  95951.      Seriskibr    varchar(15),
  95952.      Grupa        int
  95953.     )
  95954.     Set @SSQL=  ' Select S.DokID, D.Sifra_Oe, D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, B.SeriskiBr, 0
  95955.             From Dokr D 
  95956.             Inner Join Stavr S On S.DokrId = D.DokrId
  95957.             Inner Join BrStavr B On B.DokId = S.DokId
  95958.             Inner Join #Komint N On N.Sifra_kup = D.Sifra_Kup and N.Sifra_Obj = D.Sifra_Obj and N.Sifra_Art = S.Sifra_Art 
  95959.             Where D.Sifra_Za = ''1'' and N.Sifra_Obj Is Not Null and D.Sifra_Obj Is Not Null
  95960.             And S.Sifra_Art+''&&&''+B.SeriskiBr Not In (Select SN.Sifra_Art+''&&&''+BN.SeriskiBr From StaNarac SN Inner Join BrStaNarac BN On BN.StaNarID=SN.StaNarID Where SN.Sifra_Nar In (18,88,98) ) 
  95961.             And S.DokID Not In (Select DokID From #NoviDok)  '
  95962.     If @Sifra_Oe Is Not Null
  95963.         Set @SSQL = @SSQL + ' and D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  95964.     If @Koi_OE Is Not NULL
  95965.              Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  95966.     If @Datum_Od_Odjava Is Not Null
  95967.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od_Odjava as varchar(30)) + ''' ' 
  95968.     If @Datum_Do_Odjava Is Not Null        Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do_Odjava as varchar(30)) + ''' ' 
  95969.     Set @SSQL = @SSQL + ' Order by B.SeriskiBr '
  95970.     Insert Into #ZaOdjava Exec(@SSQL)
  95971.     Set @SSQL=  ' Select S.DokID, D.Sifra_Oe, D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Art, B.SeriskiBr, 0
  95972.             From Dokr D 
  95973.             Inner Join Stavr S On S.DokrId = D.DokrId
  95974.             Inner Join BrStavr B On B.DokId = S.DokId
  95975.             Inner Join #Komint N On N.Sifra_kup = D.Sifra_Kup and N.Sifra_Art = S.Sifra_Art 
  95976.             Where D.Sifra_Za = ''1'' and N.Sifra_obj Is Null and D.Sifra_obj Is Null
  95977.             And S.Sifra_Art+''&&&''+B.SeriskiBr Not In (Select SN.Sifra_Art+''&&&''+BN.SeriskiBr From StaNarac SN Inner Join BrStaNarac BN On BN.StaNarID=SN.StaNarID Where SN.Sifra_Nar In (18,88,98) ) 
  95978.             And S.DokID Not In (Select DokID From #NoviDok)  '
  95979.     If @Sifra_Oe Is Not Null
  95980.         Set @SSQL = @SSQL + ' and D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  95981.     If @Koi_OE Is Not NULL
  95982.              Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  95983.     If @Datum_Od_Odjava Is Not Null
  95984.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od_Odjava as varchar(30)) + ''' ' 
  95985.     If @Datum_Do_Odjava Is Not Null
  95986.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do_Odjava as varchar(30)) + ''' ' 
  95987.     Set @SSQL = @SSQL + ' Order by B.seriskiBr '
  95988.     Insert Into #ZaOdjava Exec(@SSQL)
  95989. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  95990.     Create Table #SerBr
  95991.     (
  95992.      DokID        int,
  95993.      Sifra_Oe    smallint,
  95994.      Sifra_Art    varchar(20),
  95995.      Sifra_kup    char(6),
  95996.      Sifra_Obj    smallint,
  95997.      Broj        Int,
  95998.      SeriskiBrOd    varchar(15),
  95999.      SeriskiBrDo    varchar(15)
  96000.     )
  96001.     Declare @SeriskiBr as varchar(15)
  96002.     Declare @SeriskiBrPred as varchar(15)
  96003.     Declare @Broj as int
  96004.     Declare @Sifra_Art as Varchar(20)
  96005.     Declare @Sifra_Kup as char(6)
  96006.     Declare @Sifra_Obj as smallint
  96007.     Declare @DokID as int
  96008.     Declare @DokIDPred as int
  96009.     Declare @Sif_Oe as smallint
  96010.     Set @Broj=1
  96011.     Declare SeriskiBroj Cursor Fast_Forward For 
  96012.         Select Sifra_Art, SeriskiBr, DokID, Sifra_Kup, Sifra_Obj, Sifra_Oe From #ZaOdjava Order By DokID, Sifra_Art, SeriskiBr
  96013.     Open SeriskiBroj
  96014.     Fetch Next From SeriskiBroj Into @Sifra_Art, @SeriskiBr, @DokID, @Sifra_Kup, @Sifra_Obj, @Sif_Oe
  96015.     While @@Fetch_Status = 0
  96016.     Begin
  96017.         If @SeriskiBrPred Is Null
  96018.         Begin
  96019.             Insert Into #SerBr(Broj, Sifra_Art, Sifra_Kup, Sifra_Obj, Sifra_Oe, SeriskiBrOd) Values(@Broj, @Sifra_Art, @Sifra_Kup, @Sifra_Obj, @Sif_Oe,@SeriskiBr)
  96020.             Update #ZaOdjava 
  96021.             Set Grupa = @Broj
  96022.             Where SeriskiBr=@SeriskiBr and Sifra_Art=@Sifra_Art and DokID=@DokID
  96023.             Set @SeriskiBrPred = @SeriskiBr
  96024.             Set @DokIDPred = @DokID
  96025.         End
  96026.         Else
  96027.         Begin
  96028.             If cast(@SeriskiBr as decimal(18,0)) = cast(@SeriskiBrPred as decimal(18,0))+ 1 and @DokID = @DokIDPred
  96029.             Begin    
  96030.                 Update #ZaOdjava 
  96031.                 Set Grupa = @Broj  
  96032.                 Where SeriskiBr=@SeriskiBr and DokID=@DokID
  96033.                 Set @SeriskiBrPred = @SeriskiBr
  96034.                 Set @DokIDPred = @DokID    
  96035.             End
  96036.             Else
  96037.             Begin
  96038.                 Update #SerBr
  96039.                 Set SeriskiBrDo = @SeriskiBrPred Where Broj=@Broj
  96040.                 Set @Broj = @Broj + 1
  96041.                 Insert Into #SerBr(Broj, Sifra_Art, Sifra_Kup, Sifra_Obj, Sifra_Oe, SeriskiBrOd) Values(@Broj, @Sifra_Art, @Sifra_Kup, @Sifra_Obj, @Sif_Oe,@SeriskiBr)
  96042.                 Update #ZaOdjava 
  96043.                 Set Grupa = @Broj
  96044.                 Where SeriskiBr=@SeriskiBr and DokID=@DokID
  96045.                 Set @SeriskiBrPred = @SeriskiBr
  96046.                 Set @DokIDPred = @DokID    
  96047.             End    
  96048.         End        
  96049.         Fetch Next From SeriskiBroj Into @Sifra_Art, @SeriskiBr, @DokID, @Sifra_Kup, @Sifra_Obj, @Sif_Oe
  96050.     End
  96051.         Update #SerBr
  96052.         Set SeriskiBrDo = @SeriskiBr Where Broj=@Broj
  96053.     Close SeriskiBroj
  96054.     Deallocate SeriskiBroj
  96055.     Select Sifra_Art, Sifra_kup, Sifra_Obj, Sifra_Oe, Broj, SeriskiBrOd, SeriskiBrDo
  96056.     From #SerBr
  96057.     Order By Sifra_Oe, Sifra_Kup, Sifra_Obj
  96058.  
  96059.  
  96060. Go
  96061. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_fixopt]'))
  96062. drop procedure [dbo].[sp_podigni_fixopt]
  96063.  
  96064. Go
  96065. CREATE  PROCEDURE [dbo].[sp_Podigni_FixOpt]
  96066.     @TblName    VARCHAR (40),
  96067.     @FldName        varchar (40),
  96068.     @Param1    varchar(20) = Null,
  96069.     @Param2    varchar(20) = Null,
  96070.     @Param3    varchar(20) = Null
  96071. AS
  96072.     Declare @SSQL as varchar(8000)
  96073.     --Select cast(FldKey as varchar(6)) as FldKey, '' FldValue, 'N' DefKey
  96074.     --From FixOpt
  96075.     --where TblName = @TblName and FldName = @FldName
  96076.     --Order By FldKey
  96077.     IF @TblName = 'tmTarifModel'
  96078.     Begin
  96079.         Select cast(Sifra_TarifModel as varchar(6)) as FldKey, Ime FldValue, 'N' DefKey
  96080.         FROM TmTarifModel ORDER BY Sifra_TarifModel
  96081.     End
  96082.     IF @TblName = 'tmTel'
  96083.     Begin    --S.Cena CenaRed, K.MalCena CenaPovl, (S.Vlez-S.Izlez) Zaliha
  96084.         Set @SSQL = ' Select S.Sifra_Art FldKey, K.ImeArt FldValue, ''N'' DefKey  
  96085.             From Soart S
  96086.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  96087.             Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  96088.             Where S.Sifra_Oe = ' + @Param1 + ' And (S.Vlez-S.Izlez) <> 0 '
  96089.         If @Param2 Is Not Null
  96090.             Set @SSQL = @SSQL + ' And K.Sifra_Podg = ' + @Param2 + ' ' 
  96091.         If @Param3 Is Not Null
  96092.             Set @SSQL = @SSQL + ' And P.Sifra_Gr = ' + @Param3 + ' ' 
  96093.         Exec(@SSQL + ' Order By S.Sifra_Art ')
  96094.         --SELECT cast(Sifra_Tel as varchar(6)) as FldKey, Tip as FldValue, 'N' DefKey
  96095.         --FROM tmTel ORDER BY Sifra_Tel
  96096.     End
  96097.     RETURN @@ERROR
  96098.  
  96099.  
  96100. Go
  96101. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_ispeclok]'))
  96102. drop procedure [dbo].[sp_podigni_ispeclok]
  96103.  
  96104. Go
  96105. CREATE  PROCEDURE sp_Podigni_IspecLok
  96106.     @Sifra_Oe smallint,
  96107.     @Sifra_Nar smallint,
  96108.     @Broj_Nar int,
  96109.     @Lokacija varchar(10)
  96110. AS
  96111.     Declare @Sega Smalldatetime
  96112.     Set @Sega = GetDate ()
  96113.     Select IspecNa, @Sega as SegaDatumVreme From IspecLok 
  96114.     Where Sifra_Oe = @Sifra_Oe and Sifra_Nar = @Sifra_nar and Broj_Nar = @Broj_Nar and Lokacija = @Lokacija
  96115.     RETURN @@ERROR
  96116.  
  96117.  
  96118. Go
  96119. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_konfmeniuser]'))
  96120. drop procedure [dbo].[sp_podigni_konfmeniuser]
  96121.  
  96122. Go
  96123.  
  96124.  
  96125. CREATE    PROCEDURE sp_Podigni_KonfMeniUser
  96126.     @OznPC        varchar (20) = Null,
  96127.     @Grupa_Kor    varchar (20) = Null
  96128. AS
  96129. if @OznPC is not Null
  96130.   SELECT * From KonfMeniUser
  96131.   WHERE OznPC = @OznPC
  96132.   ORDER BY RbrMeni, RbrMoznost
  96133. else if @Grupa_Kor is not Null
  96134.   SELECT * From KonfMeniUser
  96135.   WHERE Sifra_GrKor = @Grupa_Kor
  96136.   ORDER BY RbrMeni, RbrMoznost
  96137. -- Bi moralo barem ednoto da e ne-null
  96138.  
  96139.  
  96140.  
  96141. Go
  96142. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_kup_po_tipkup]'))
  96143. drop procedure [dbo].[sp_podigni_kup_po_tipkup]
  96144.  
  96145. Go
  96146. CREATE  PROCEDURE sp_Podigni_Kup_Po_TipKup
  96147.     @TipKup varchar (11)
  96148. AS
  96149.     Create Table #Komint
  96150.     (
  96151.      Sifra_Kup    char(6),
  96152.      Sifra_Obj    smallint,
  96153.      ImeKup        char(40),
  96154.      ImeKup1    char(40),
  96155.      Sifra_Grad    smallint,
  96156.      Sifra_Grad_Obj    smallint,
  96157.      KDrugo1    smallint,
  96158.      KDrugo1_Obj    smallint
  96159.     )
  96160.     Insert Into #Komint
  96161.     SELECT K.Sifra_Kup, O.Sifra_Obj, O.ImeObj, K.ImeKup, K.Sifra_Grad, 0.Sifra_Grad, K.KDrugo1, O.KDrugo1
  96162.     FROM Komint K
  96163.     Left Outer Join KObjekti O On O.Sifra_Kup=K.Sifra_Kup
  96164.     WHERE O.TipKup = @TipKup And O.Sifra_Obj > 0
  96165.     ORDER BY K.ImeKup, O.ImeObj
  96166.     Insert Into #Komint
  96167.     SELECT K.Sifra_Kup, Null, K.ImeKup, K.ImeKup, K.Sifra_Grad, Null, K.KDrugo1, Null
  96168.     FROM Komint K
  96169.     WHERE K.TipKup = @TipKup And K.Sifra_Kup Not In (Select Distinct Sifra_Kup From #Komint)
  96170.     ORDER BY K.ImeKup
  96171.     Select Sifra_Kup, Sifra_Obj, ImeKup, Sifra_Grad, Sifra_Grad_Obj, KDrugo1, KDrugo1_Obj
  96172.     From #Komint 
  96173.     Order By ImeKup1
  96174. RETURN @@Error
  96175.  
  96176.  
  96177. Go
  96178. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_polni_grpmarza]'))
  96179. drop procedure [dbo].[sp_podigni_polni_grpmarza]
  96180.  
  96181. Go
  96182.  
  96183. CREATE     PROCEDURE sp_Podigni_Polni_GrpMarza
  96184.     @Grupa_Marza smallint
  96185. AS
  96186.     Create Table #GrpMar
  96187.     (
  96188.      Sif_GrOrg    char(6),
  96189.      Ime_GrOrg     varchar(50),
  96190.      Proc_Marza    decimal(9,2)
  96191.     )
  96192.     INSERT INTO #GrpMar
  96193.     SELECT M.Sif_GrOrg, G.Ime_GrOrg, M.Proc_Marza
  96194.     FROM GrpMarza M
  96195.     Inner Join GrOrg G On G.Sif_GrOrg=M.Sif_GrOrg
  96196.     Where M.Grupa_Marza=@Grupa_Marza
  96197.     INSERT INTO #GrpMar
  96198.     SELECT Sif_GrOrg, Ime_GrOrg, Null
  96199.     FROM GrOrg
  96200.     WHERE Edinstvena = 'D' AND Sif_GrOrg NOT IN (SELECT Sif_GrOrg FROM #GrpMar)
  96201.     SELECT * FROM #GrpMar  ORDER BY  Ime_GrOrg
  96202.     RETURN @@ERROR
  96203.  
  96204.  
  96205.  
  96206. Go
  96207. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_sifropst]'))
  96208. drop procedure [dbo].[sp_podigni_sifropst]
  96209.  
  96210. Go
  96211.  
  96212. CREATE PROCEDURE sp_Podigni_SifrOpst
  96213.     @TblName    VARCHAR (40)
  96214. AS
  96215.     Declare @SSQL as varchar(8000)
  96216.     set @SSQL = 'Select * from ' + @TblName
  96217.     Exec (@SSQL)
  96218.     RETURN @@ERROR
  96219.  
  96220.  
  96221.  
  96222. Go
  96223. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_sifrovnik]'))
  96224. drop procedure [dbo].[sp_podigni_sifrovnik]
  96225.  
  96226. Go
  96227.  
  96228.  
  96229.  
  96230. --    Opis na Parametri
  96231. --    @Tabela: Ime na tabelata po koja prebaruvame, case-sensitive.
  96232. CREATE                  PROCEDURE sp_Podigni_Sifrovnik
  96233.     @Tabela    VARCHAR(20)
  96234. AS
  96235.     Declare @Greska Int
  96236.     Declare @IntSifra Int
  96237.     Set @Tabela=Upper(@Tabela)
  96238.     If @Tabela = 'PODGRUPI'
  96239.         SELECT SifrA_Podg, Ime_Podg From PODGRUPI
  96240.     ELSE If @Tabela = 'GRUPI'
  96241.         SELECT SifrA_Gr, Ime_Gr From GRUPI
  96242.     ELSE If @Tabela = 'ORGED'
  96243.         SELECT Sifra_Oe, ImeOrg From ORGED
  96244.     ELSE If @Tabela = 'GRORG'
  96245.         SELECT Sif_GrOrg, Ime_GrOrg From GRORG
  96246.     ELSE If @Tabela = 'VIDDOG'
  96247.         SELECT Sifra_VidDog, Ime_VidDog From VIDDOG
  96248.     ELSE If @Tabela = 'VERNTRAENJE'
  96249.         SELECT Sifra_Vernost, Ime_Vernost From VERNTRAENJE
  96250.     ELSE If @Tabela = 'TARMODEL'
  96251.         SELECT Sifra_TarModel, Ime_TarModel From TarModel
  96252.     ELSE If @Tabela = 'TIPNARAC'
  96253.         SELECT Sifra_Nar, ImeNar FROM TipNarac
  96254.     ELSE If @Tabela = 'TIPDOK'
  96255.         SELECT Sifra_Dok, ImeDok FROM TipDok
  96256.     ELSE If @Tabela = 'GRORG'
  96257.         SELECT Sif_GrOrg, Ime_GrOrg From GRORG
  96258.     ELSE If @Tabela = 'OPSTINI'
  96259.         SELECT Sif_Opstina, Ime_Opstina From OPSTINI
  96260.     ELSE If @Tabela = 'BANKI'
  96261.         SELECT Sifra_Ban, ImeBanka From BANKI
  96262.     ELSE If @Tabela = 'PRIMATELI'
  96263.         SELECT Sif_Primatel, Ime_Primatel From PRIMATELI
  96264.     ELSE If @Tabela = 'NACPLAK'
  96265.         SELECT Sifra_Nac, ImeNac From NACPLAK
  96266.     ELSE If @Tabela = 'OPERATORI'
  96267.         SELECT Sifra_Oper, Ime_Oper From OPERATORI
  96268.     ELSE If @Tabela = 'INTERNIKART'
  96269.         SELECT Interna_Kart, Ime_Int_Kart From INTERNIKART
  96270.     ELSE If @Tabela = 'DRGPODEL'
  96271.         SELECT Sifra_Drg, Ime From DRGPODEL
  96272.     ELSE If @Tabela = 'DRGPODEL1'
  96273.         SELECT Sifra_Drg1, Ime_Drg1 From DRGPODEL1
  96274.     ELSE If @Tabela = 'DRUGO1'
  96275.         SELECT Sifra_1, Ime_1 From DRUGO1
  96276.     ELSE If @Tabela = 'DRUGO2'
  96277.         SELECT Sifra_2, Ime_2 From DRUGO2
  96278.     ELSE If @Tabela = 'DRUGO3'
  96279.         SELECT Sifra_3, Ime_3 From DRUGO3
  96280.     ELSE If @Tabela = 'DRUGO4'
  96281.         SELECT Sifra_4, Ime_4 From DRUGO4
  96282.     ELSE If @Tabela = 'DRUGO5'
  96283.         SELECT Sifra_5, Ime_5 From DRUGO5
  96284.         ELSE If @Tabela = 'DRUGO6'
  96285.         SELECT Sifra_6, Ime_6 From DRUGO6
  96286.         ELSE If @Tabela = 'DRUGO7'
  96287.         SELECT Sifra_7, Ime_7 From DRUGO7 
  96288.     ELSE If @Tabela = 'GRPIZBOR'
  96289.         SELECT Sifra_GrpIzb, Ime_GrpIzb From GrpIzbor
  96290.     ELSE If @Tabela = 'VIDVOZILA'
  96291.         SELECT Sifra_Vid_Voz, Ime_Vid_Voz From VidVozila
  96292.     ELSE If @Tabela = 'KATHIER'
  96293.         SELECT Sifra_KHier, Ime_KHier From KatHier
  96294.     ELSE If @Tabela = 'TIPKOMINT'
  96295.         SELECT Sifra_Tip, ImeTip From TipKomint
  96296.     ELSE If @Tabela = 'VIDPRODOBJ'
  96297.         SELECT Sifra_VPJ, Ime_VPJ From VidProdObj
  96298.     ELSE If @Tabela = 'DIVIZII'
  96299.         SELECT Sifra_Div, ImeDiv From Divizii
  96300.     ELSE If @Tabela = 'GRAD'
  96301.         SELECT Sifra_Grad, ImeGrad From Grad
  96302.     ELSE If @Tabela = 'GREGION'
  96303.         SELECT Sifra_Reg, ImeRegion From GRegion
  96304.     ELSE If @Tabela = 'GRUPAWEB'
  96305.         SELECT Sifra_GrWeb, Ime_GrWeb From GrupaWeb
  96306.     ELSE If @Tabela = 'PODGRWEB'
  96307.         SELECT Sifra_PodgrWeb, Ime_PodgrWeb From PodgrWeb
  96308.     ELSE If @Tabela = 'KATART'
  96309.         SELECT Sifra_Art, ImeArt From KatArt
  96310.     ELSE If @Tabela = 'XFTIPPREDMET'
  96311.         SELECT Sifra_TipPredmet, ImeTipPredmet From XFTipPredmet
  96312.     ELSE If @Tabela = 'XFSTATUSPREDMET'
  96313.         SELECT Sifra_StatusPredmet, ImeStatusPredmet From XFStatusPredmet
  96314.     ELSE If @Tabela = 'XFOBLAST'
  96315.         SELECT Sifra_Oblast, ImeOblast From XFOblast
  96316.     ELSE If @Tabela = 'XFIZVRSITEL'
  96317.         SELECT Sifra_Izvrs, ImeIzvrs From XFIzvrsitel
  96318.         ELSE If @Tabela = 'XFVIDBARANJE'
  96319.         SELECT Sifra_VidBaranje, ImeVidBaranje From XFVidBaranje
  96320.         ELSE If @Tabela = 'TARIFI'
  96321.         SELECT Sifra_Tar, ImeTar From Tarifi
  96322.         ELSE If @Tabela = 'GTIPKUP'
  96323.         SELECT TipKup, ImeTipKup From GTipKup
  96324.     ELSE If @Tabela = 'KDRUGO1'
  96325.         SELECT Sifra_1K, Ime_1K From KDRUGO1
  96326.     ELSE If @Tabela = 'KDRUGO2'
  96327.         SELECT Sifra_2K, Ime_2K From KDRUGO2
  96328.     ELSE If @Tabela = 'KDRUGO3'
  96329.         SELECT Sifra_3K, Ime_3K From KDRUGO3
  96330.     ELSE If @Tabela = 'KDRUGO4'
  96331.         SELECT Sifra_4K, Ime_4K From KDRUGO4
  96332.     ELSE If @Tabela = 'KDRUGO5'
  96333.         SELECT Sifra_5K, Ime_5K From KDRUGO5
  96334.         ELSE If @Tabela = 'KDRUGO6'
  96335.         SELECT Sifra_6K, Ime_6K From KDRUGO6
  96336.         ELSE If @Tabela = 'KDRUGO7'
  96337.         SELECT Sifra_7K, Ime_7K From KDRUGO7 
  96338.     ELSE If @Tabela = 'NIVO'
  96339.         SELECT Sifra_Nivo, ImeNivo From NIVO 
  96340.     ELSE If @Tabela = 'NGBILLCODES'
  96341.         SELECT Sifra_BillCode, ImeBillCode From NGBILLCODES 
  96342.     ELSE If @Tabela = 'NGFAMILIJA'
  96343.         SELECT Sifra_Famil, ImeFamil From NGFAMILIJA 
  96344.     ELSE If @Tabela = 'NGCOURSETYPE'
  96345.         SELECT Sifra_CourseType, ImeCourseType From NGCOURSETYPE 
  96346.     ELSE If @Tabela = 'NGSTUDENTS'
  96347.         SELECT Sifra_Student, ImeStudent From NGSTUDENTS
  96348.     ELSE If @Tabela = 'NGSCHOOLYEAR'
  96349.         SELECT Sifra_SchoolYear, ImeSchoolYear From NGSCHOOLYEAR
  96350.     ELSE If @Tabela = 'GRUPIOPER'
  96351.         SELECT Sifra_GrOper, ImeGrOper From GRUPIOPER
  96352.     ELSE If @Tabela = 'ATCKODOVI'
  96353.         SELECT Sifra_ATC, ImeATC From ATCKODOVI
  96354.     ELSE If @Tabela = 'LEKARI'
  96355.         SELECT Sifra_Lekar, ImeLekar From LEKARI
  96356.     ELSE If @Tabela = 'OSNOVOSIG'
  96357.         SELECT Sifra_OsnovOsig, ImeOsnovOsig From OSNOVOSIG
  96358.     ELSE If @Tabela = 'PODRACNISLUZBI'
  96359.         SELECT Sifra_PodrSluzba, ImePodrSluzba From PODRACNISLUZBI
  96360.     ELSE If @Tabela = 'PACIENTI'
  96361.         SELECT EMBG, ImePacient From PACIENTI
  96362.     ELSE If @Tabela = 'FARMACEVT'
  96363.         SELECT Sifra_Farmacevt, ImeFarmacevt From FARMACEVT
  96364.     ELSE If @Tabela = 'APTEKA'
  96365.         SELECT Sifra_Apteka, ImeApteka From APTEKA
  96366.     ELSE If @Tabela = 'DIJAGNOZI'
  96367.         SELECT Sifra_Dijagn, ImeDijagn From DIJAGNOZI
  96368.     ELSE If @Tabela = 'KREDITSTATUS'
  96369.         SELECT Status_Kredit, ImeStatusKredit From KreditStatus
  96370.     ELSE If @Tabela = 'KREDITTIPOPOMENA'
  96371.         SELECT Tip_Opomena, ImeTipOpomena From KreditTipOpomena
  96372.     ELSE If @Tabela = 'PRIVFILTTIPPRIVIL'
  96373.         SELECT TipPrivil, OpisTipPrivil From PrivFiltTipPrivil
  96374.     ELSE If @Tabela = 'TIPPRODMESTO'
  96375.         SELECT Sif_TipProdM, ImeTipProdM From TIPPRODMESTO
  96376.         RETURN @@ERROR
  96377.  
  96378.  
  96379.  
  96380.  
  96381.  
  96382.  
  96383.  
  96384.  
  96385.  
  96386.  
  96387.  
  96388.  
  96389. Go
  96390. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigni_sodogan]'))
  96391. drop procedure [dbo].[sp_podigni_sodogan]
  96392.  
  96393. Go
  96394. CREATE     PROCEDURE SP_Podigni_SoDogan
  96395.    @Sifra_OE smallint,
  96396.    @Sifra_Art varchar(20) = Null
  96397. AS
  96398.     Declare @SSQL Varchar(8000)
  96399.     select * from SoDogan
  96400.     where Sifra_Oe_Vlez = @Sifra_Oe and Sifra_Art = @Sifra_Art and
  96401.           Kolicina_Vlez > Kolicina_Izlez
  96402.     order by Datum_ECd
  96403.  
  96404.  
  96405.  
  96406. Go
  96407. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniabarpak_art_site]'))
  96408. drop procedure [dbo].[sp_podigniabarpak_art_site]
  96409.  
  96410. Go
  96411.  
  96412.  
  96413. create  PROCEDURE sp_PodigniABarPak_Art_Site
  96414.  
  96415.         @Sifra_Art    varchar (20)
  96416.  
  96417. AS
  96418.  
  96419.     Select A.*, K.ImeArt
  96420.     From ABarPak A
  96421.     inner join Katart K
  96422.         on A.Sifra_Art = K.SifrA_Art
  96423.     Where A.Sifra_Art = @Sifra_Art
  96424.  
  96425.  
  96426. Go
  96427. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniabarpak_nom]'))
  96428. drop procedure [dbo].[sp_podigniabarpak_nom]
  96429.  
  96430. Go
  96431.  
  96432. CREATE PROCEDURE sp_PodigniABarPak_Nom
  96433.         @Nom        varchar (50),
  96434.     @Sifra_Art    varchar(20) OUTPUT,
  96435.     @ZaKolic    decimal (18, 6) OUTPUT,
  96436.     @Sifra_KatPak    smallint OUTPUT,
  96437.         @Nom_Alt    varchar (50) OUTPUT
  96438.  
  96439. AS
  96440.  
  96441.         Declare @Nom_Drug        varchar (50)
  96442.     Declare @ZaKolic_Drug       decimal (18, 6)
  96443.     Declare @Sifra_KatPak_Drug    smallint
  96444.  
  96445.     set @Nom_Alt = null
  96446.  
  96447.     -- ??? Dali e ednoznaccno DK
  96448.     Select @Sifra_KatPak = Sifra_KatPak, @Sifra_Art = Sifra_Art, @ZaKolic = ZaKolic
  96449.     From ABarPak
  96450.     Where Nom = @Nom
  96451.  
  96452.     if @Sifra_Art is not null
  96453.     begin
  96454.         Select @Nom_Drug = Nom, @Sifra_KatPak_Drug = Sifra_KatPak, @ZaKolic_Drug = ZaKolic
  96455.         From ABarPak
  96456.         Where Sifra_Art = @Sifra_Art and Nom <> @Nom
  96457.  
  96458.         if @Nom_Drug is not null
  96459.         begin
  96460.             set @Nom_Alt = @Nom_Drug
  96461.             set @SifrA_KatPak = @Sifra_KatPak_Drug
  96462.             set @ZaKolic = @ZaKolic_Drug
  96463.         end
  96464.     end    
  96465.  
  96466.  
  96467.  
  96468. Go
  96469. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniabarpak_nom_site]'))
  96470. drop procedure [dbo].[sp_podigniabarpak_nom_site]
  96471.  
  96472. Go
  96473.  
  96474.  
  96475. CREATE    PROCEDURE sp_PodigniABarPak_Nom_Site
  96476.  
  96477.         @Nom        varchar (50)
  96478.  
  96479. AS
  96480.  
  96481.     Declare @PozChr29 int
  96482.     Declare @KodEAN  varchar(50)
  96483.     Declare @Sifra_Art varchar(20)
  96484.  
  96485.     Set @PozChr29 = Charindex(char(29), @Nom)
  96486.  
  96487.     IF @PozChr29 > 0 And (Substring(@Nom, 1, 2) = '02' 
  96488.                   or Substring(@Nom, 1, 2) = '01')    
  96489.         SET @KodEAN = Substring(@Nom, 4, 13)
  96490.     ELSE
  96491.         SET @KodEAN = @Nom
  96492.  
  96493.     create table #Sifri
  96494.     (    Sifra_Art  varchaR(20)
  96495.     )
  96496.  
  96497.     -- Najdi koi sifri na artikli go imaat toj bar-kod
  96498.     insert into #Sifri
  96499.         select A.Sifra_Art
  96500.         from ABarPak A
  96501.         where A.Nom = @KodEAN
  96502.  
  96503.     Select A.*, K.ImeArt
  96504.     From ABarPak A
  96505.     inner join Katart K
  96506.         on A.Sifra_Art = K.Sifra_Art
  96507.     inner join #Sifri S
  96508.         on A.Sifra_Art = S.Sifra_Art
  96509.  
  96510.  
  96511.  
  96512. Go
  96513. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniabarpakzaartoddokr]'))
  96514. drop procedure [dbo].[sp_podigniabarpakzaartoddokr]
  96515.  
  96516. Go
  96517.  
  96518. create PROCEDURE sp_PodigniABarPakZaArtOdDokr
  96519.  
  96520.     @Sifra_OE    smallint,
  96521.     @Sifra_Dok    smallint,
  96522.     @Broj_Dok    int
  96523.  
  96524. AS
  96525.  
  96526. SELECT KP.*, K.ImeArt
  96527. FROM ABarPak KP
  96528. inner join Katart K
  96529.     on KP.Sifra_Art = K.Sifra_Art
  96530. WHERE KP.Sifra_Art IN 
  96531.     ( SELECT DISTINCT Sifra_Art 
  96532.       FROM Stavr
  96533.       WHERE Sifra_OE = @Sifra_OE AND Sifra_Dok = @Sifra_Dok AND Broj_Dok = @Broj_Dok
  96534.       GROUP BY Sifra_Art)
  96535.  
  96536.  
  96537. Go
  96538. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniabarpakzaartodnar]'))
  96539. drop procedure [dbo].[sp_podigniabarpakzaartodnar]
  96540.  
  96541. Go
  96542.  
  96543. Create   PROCEDURE sp_PodigniABarPakZaArtOdNar
  96544.  
  96545.     @Sifra_OE    smallint,
  96546.     @Sifra_Nar    smallint,
  96547.     @Broj_Nar    int
  96548.  
  96549. AS
  96550.  
  96551. SELECT KP.*, K.ImeArt
  96552. FROM ABarPak KP
  96553. inner join Katart K
  96554.     on KP.Sifra_Art = K.Sifra_Art
  96555. WHERE KP.Sifra_Art IN 
  96556.     ( SELECT DISTINCT Sifra_Art 
  96557.       FROM StaNarac 
  96558.       WHERE Sifra_OE = @Sifra_OE AND Sifra_Nar = @Sifra_Nar AND Broj_Nar = @Broj_Nar
  96559.       GROUP BY Sifra_Art)
  96560.  
  96561.  
  96562. Go
  96563. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniadrtaggy]'))
  96564. drop procedure [dbo].[sp_podigniadrtaggy]
  96565.  
  96566. Go
  96567. CREATE PROCEDURE sp_PodigniAdrTaggy
  96568.     @Sifra_OE    Smallint,
  96569.     @Sifra_Art    VarChar(20)
  96570. AS
  96571.     SELECT * from AdrTaggy where Sifra_Oe=@Sifra_Oe and Sifra_Art=@Sifra_Art
  96572. RETURN @@ERROR
  96573.  
  96574.  
  96575. Go
  96576. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniakciikolic]'))
  96577. drop procedure [dbo].[sp_podigniakciikolic]
  96578.  
  96579. Go
  96580. CREATE PROCEDURE sp_PodigniAkciiKolic
  96581.     @Ozn_Akcija    char(10)
  96582. AS
  96583. SELECT * FROM AkciiKolic WHERE Ozn_Akcija=@Ozn_Akcija 
  96584.  
  96585.  
  96586. Go
  96587. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniakciiprod]'))
  96588. drop procedure [dbo].[sp_podigniakciiprod]
  96589.  
  96590. Go
  96591. CREATE  PROCEDURE sp_PodigniAkciiProd
  96592.     @DokrID    int
  96593. AS
  96594.     Select * From AkciiProd Where DokrID=@DokrID
  96595.  
  96596.  
  96597. Go
  96598. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniakcija]'))
  96599. drop procedure [dbo].[sp_podigniakcija]
  96600.  
  96601. Go
  96602.  
  96603.  
  96604.  
  96605. CREATE   PROCEDURE sp_PodigniAkcija
  96606.    @Sifra_OE Smallint,
  96607.     @Sifra_Kup Char(6),
  96608.     @DatumVreme DateTime,
  96609.     @Aktivnost Char(1)
  96610. AS
  96611.    SELECT * FROM Akcija WHERE Sifra_OE=@Sifra_OE And 
  96612.    Sifra_Kup=@Sifra_Kup And DatumVreme=@DAtumVreme And Aktivnost=@Aktivnost
  96613.     IF @@ROWCOUNT=1
  96614.         RETURN 0
  96615.     ELSE
  96616.         RETURN 77000
  96617.  
  96618.  
  96619.  
  96620. Go
  96621. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignianfindok]'))
  96622. drop procedure [dbo].[sp_podignianfindok]
  96623.  
  96624. Go
  96625.  
  96626.  
  96627. CREATE    PROCEDURE sp_PodigniANFINDOK
  96628.    @Sifra_OE Smallint,
  96629.    @Sifra_Dok Smallint,
  96630.    @Broj_Dok Int
  96631. AS
  96632.    SELECT A.*, O.ImeOrg, T.ImeDok, AK.ImeAnal,AK.DevZatvDen, K.ImeKup, P.ImePat, OP.Ime_Oper As Ime_Vnes, OPP.Ime_Oper As Ime_Izm
  96633.    FROM AnFinDok A
  96634.    INNER JOIN Orged O ON A.Sifra_OE=O.Sifra_OE
  96635.    INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  96636.    LEFT OUTER JOIN Anal AK ON A.Kto=AK.Kto_Anal
  96637.    LEFT OUTER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  96638.    LEFT OUTER JOIN Patnici P ON A.Sifra_Pat=P.Sifra_Pat
  96639.    LEFT OUTER JOIN Operatori OP ON A.Sifra_Oper=OP.Sifra_Oper
  96640.    LEFT OUTER JOIN Operatori OPP ON A.Sifra_OpIz=OPP.Sifra_Oper
  96641.    WHERE A.Sifra_OE=@Sifra_OE AND A.Sifra_Dok=@Sifra_Dok AND A.Broj_Dok=@Broj_Dok
  96642.    IF @@ERROR=0
  96643.       IF @@ROWCOUNT=1
  96644.          RETURN 0
  96645.       ELSE
  96646.          RETURN 77000
  96647.    ELSE
  96648.       RETURN @@ERROR
  96649.  
  96650.  
  96651.  
  96652.  
  96653. Go
  96654. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignianfindokdevkalk]'))
  96655. drop procedure [dbo].[sp_podignianfindokdevkalk]
  96656.  
  96657. Go
  96658.  
  96659.  
  96660.  
  96661. CREATE       PROCEDURE sp_PodigniAnFinDokDevKalk
  96662.     @Sifra_OE Smallint,
  96663.     @Sifra_Dok smallint=132,
  96664.     @Broj_Kalk Int
  96665. AS
  96666.    SELECT A.*, DK.Kurs Kurs1, DK.TrosVoMatFak, O.ImeOrg, T.ImeDok, AK.ImeAnal, K.ImeKup, P.ImePat, OP.Ime_Oper As Ime_Vnes, OPP.Ime_Oper As Ime_Izm, KL.ImeVal
  96667.    FROM AnFinDok A
  96668.    INNER JOIN Orged O ON A.Sifra_OE=O.Sifra_OE
  96669.    INNER JOIN TipDok T ON A.Sifra_Dok=T.Sifra_Dok
  96670.    Inner Join DevKalk DK On A.Sifra_OE=DK.Sifra_OE And A.Broj_Kalk=DK.Broj_Kalk AND DK.Sifra_Dok=A.Sifra_DokDK
  96671.    LEFT OUTER JOIN Anal AK ON A.Kto=AK.Kto_Anal
  96672.    LEFT OUTER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  96673.    LEFT OUTER JOIN Patnici P ON A.Sifra_Pat=P.Sifra_Pat
  96674.    LEFT OUTER JOIN Operatori OP ON A.Sifra_Oper=OP.Sifra_Oper
  96675.    LEFT OUTER JOIN Operatori OPP ON A.Sifra_OpIz=OPP.Sifra_Oper
  96676.    LEFT OUTER JOIN KrsLista KL ON A.KojaVal=KL.SImeVal   
  96677.    WHERE A.Sifra_OE=@Sifra_OE AND  A.Broj_Kalk=@Broj_Kalk AND Sifra_DokDK=@Sifra_Dok
  96678.  
  96679.  
  96680.  
  96681.  
  96682.  
  96683.  
  96684. Go
  96685. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignianfindoksoid]'))
  96686. drop procedure [dbo].[sp_podignianfindoksoid]
  96687.  
  96688. Go
  96689.  
  96690. CREATE   PROCEDURE sp_PodigniAnFinDokSoID
  96691.    @AnID Int
  96692. AS
  96693.    SELECT Sifra_Oe, Sifra_dok, Broj_Dok FROM AnFinDok
  96694.    WHERE AnID=@AnID
  96695.    IF @@ERROR=0
  96696.       IF @@ROWCOUNT=1
  96697.          RETURN 0
  96698.       ELSE
  96699.          RETURN 77000
  96700.    ELSE
  96701.       RETURN @@ERROR
  96702.  
  96703.  
  96704.  
  96705. Go
  96706. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniapteka]'))
  96707. drop procedure [dbo].[sp_podigniapteka]
  96708.  
  96709. Go
  96710.  
  96711. CREATE PROCEDURE sp_PodigniApteka
  96712.  
  96713.     @Sifra_Apteka    char(2)
  96714. AS
  96715.     Select * From Apteka 
  96716.     Where Sifra_Apteka=@Sifra_Apteka
  96717.  
  96718.  
  96719. Go
  96720. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniartpodelbi]'))
  96721. drop procedure [dbo].[sp_podigniartpodelbi]
  96722.  
  96723. Go
  96724. CREATE PROCEDURE sp_PodigniArtPodelbi
  96725.     @Sifra_Art    varchar(20),
  96726.     @Sifra_Podg    char(6) = Null Output,
  96727.     @Drugo1    smallint = Null Output,
  96728.     @Drugo2    smallint = Null Output,
  96729.     @Drugo3    smallint = Null Output,
  96730.     @Drugo4    smallint = Null Output,
  96731.     @Drugo5    smallint = Null Output,
  96732.     @Sifra_Drg    smallint = Null Output
  96733. AS
  96734.     Select @Sifra_Podg=Sifra_Podg, @Drugo1=Drugo1, @Drugo2=Drugo2, @Drugo3=Drugo3, @Drugo4=Drugo4, @Drugo5=Drugo5, @Sifra_Drg=Sifra_Drg
  96735.     From Katart 
  96736.     Where Sifra_Art=@Sifra_Art
  96737.  
  96738.  
  96739. Go
  96740. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniarttaggy]'))
  96741. drop procedure [dbo].[sp_podigniarttaggy]
  96742.  
  96743. Go
  96744. CREATE PROCEDURE sp_PodigniArtTaggy
  96745.     @Sifra_OE    Smallint,
  96746.     @Sifra_Art    VarChar(20)
  96747. AS
  96748.     SELECT * from AdrTaggy where Sifra_Oe=@Sifra_Oe and Sifra_Art=@Sifra_Art
  96749. RETURN @@ERROR
  96750.  
  96751.  
  96752.  
  96753. Go
  96754. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniatckodovi]'))
  96755. drop procedure [dbo].[sp_podigniatckodovi]
  96756.  
  96757. Go
  96758.  
  96759. CREATE PROCEDURE sp_PodigniATCKodovi
  96760.  
  96761.     @Sifra_ATC    char(10)
  96762. AS
  96763.     Select * From ATCKodovi 
  96764.     Where Sifra_ATC=@Sifra_ATC
  96765.     Return @@ERROR
  96766.  
  96767.  
  96768. Go
  96769. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniavtkont]'))
  96770. drop procedure [dbo].[sp_podigniavtkont]
  96771.  
  96772. Go
  96773.  
  96774.  
  96775.  
  96776. CREATE    PROCEDURE sp_PodigniAvtKont
  96777.     @Sif_GrOrg        char(6),
  96778.     @Sif_GrDok        char(3),
  96779.     @Sif_GrOrg_Prima    varchar(6)
  96780. AS
  96781.     Declare @SSQL varchar(1000)
  96782.     Set @SSQL = 'SELECT K.*, A.ImeAnal, A.DaliDev, A.DaliKupuv, A.DaliOrg, A.DetalDiv, A.SoTrosok
  96783.     FROM AvtKont K
  96784.     INNER JOIN Anal A ON K.Kto_Anal = A.Kto_Anal
  96785.     WHERE  K.Sif_GrOrg = ''' + @Sif_GrOrg + ''' AND K.Sif_GrDok = ''' + 
  96786.     @Sif_GrDok + ''' AND K.Sif_GrOrg_Prima '
  96787.     if @Sif_GrOrg_Prima IS NULL
  96788.         Set @SSQL = @SSQL + 'IS NULL'
  96789.     else
  96790.         Set @SSQL = @SSQL + ' = ''' + @Sif_GrOrg_Prima + ''''
  96791.     Exec(@SSQL)
  96792.   IF @@ROWCOUNT = 0
  96793.       RETURN 77000
  96794.    ELSE
  96795.       RETURN 0
  96796.  
  96797.  
  96798.  
  96799.  
  96800. Go
  96801. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniavtkontartmap]'))
  96802. drop procedure [dbo].[sp_podigniavtkontartmap]
  96803.  
  96804. Go
  96805. CREATE PROCEDURE sp_PodigniAvtKontArtMap
  96806. AS
  96807.     SELECT AM.*, A1.ImeAnal ImeKtoAvtKont, A2.ImeAnal ImeKtoArt, A3.ImeAnal ImeKtoKniz
  96808.     FROM AvtKontArtMap AM
  96809.     LEFT OUTER JOIN Anal A1 ON A1.Kto_Anal=AM.Kto_Anal_OdAvtKont
  96810.     LEFT OUTER JOIN Anal A2 ON A2.Kto_Anal=AM.Kto_Anal_Art
  96811.     LEFT OUTER JOIN Anal A3 ON A3.Kto_Anal=AM.Kto_Anal_Kniz
  96812.  
  96813.  
  96814.  
  96815. Go
  96816. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniavtkontos]'))
  96817. drop procedure [dbo].[sp_podigniavtkontos]
  96818.  
  96819. Go
  96820.  
  96821.  
  96822.  
  96823. CREATE       PROCEDURE sp_PodigniAvtKontOS
  96824.     @Kod_Kniz smallint
  96825. AS
  96826.     SELECT AV.*, A.ImeAnal, AA.ImeAnal ImeAnal2, AA.DaliOrg, AA.DetalDiv, AA.SoTrosok, AA.DaliVidTros
  96827.     FROM AvtKontOSn AV
  96828.     left outer join anal A on AV. Kto_Anal_OS = A.Kto_Anal
  96829.     left outer join anal AA on AV. Kto_Anal_Knz = AA.Kto_Anal
  96830.     Where AV.Kod_kniz=@Kod_Kniz    
  96831.     
  96832.  
  96833.  
  96834.  
  96835.  
  96836.  
  96837.  
  96838.  
  96839.  
  96840.  
  96841. Go
  96842. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniavtmail]'))
  96843. drop procedure [dbo].[sp_podigniavtmail]
  96844.  
  96845. Go
  96846.  
  96847.  
  96848.  
  96849. CREATE     PROCEDURE sp_PodigniAvtMail
  96850.         @Korisnik  varchar(20)=null
  96851. AS
  96852.         Declare @SSQL as varchar(8000)
  96853.  
  96854.     Set @SSQL = ' Select M.Grupa, M.Korisnik, M.Exec_Proc, M.Mail_Od, M.Mail_Do, M.Param_Zamena, 
  96855.                       M.[Format], M.Naslov, M.ImeRep, M.ImeProc, M.Param_ZameniSo, M.Rbr, M.RbrProc 
  96856.                       From AvtMail M'
  96857.         If @Korisnik Is Not Null
  96858.         Set @SSQL = @SSQL + ' where M.Korisnik = ''' + @Korisnik + ''' ' 
  96859.     Set @SSQL = @SSQL + ' order by M.Rbr, M.RbrProc'   
  96860.         Exec (@SSQL)     
  96861.  
  96862.  
  96863.  
  96864.  
  96865. Go
  96866. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniavtvrski]'))
  96867. drop procedure [dbo].[sp_podigniavtvrski]
  96868.  
  96869. Go
  96870.  
  96871. CREATE     PROCEDURE sp_PodigniAvtVrski
  96872.     @GStId int
  96873. AS
  96874.     SELECT V.*, F.Sifra_Kup, K.ImeKup, F.Sifra_OE, F.Sifra_Dok, F.Broj_Dok, F.BrojDok, F.Datum_Dok, F.Rok, F.Sifra_Pat,
  96875.     A.DaliOrg, A.DaliKupuv, A.DaliDev, F.Danok1, F.Danok2, F.Opis, F.Kojaval, F.Kurs, F.Sifra_Div,
  96876.     D.Datum_Dok DDatum_Dok
  96877.     FROM FAvtVrski V
  96878.     INNER JOIN GStav G ON V.GstID = G.GstID
  96879.     INNER JOIN Anal A ON G.Kto_Anal = A.Kto_Anal
  96880.     LEFT OUTER JOIN AnFinDok F ON V.AnID = F.AnID
  96881.     LEFT OUTER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup
  96882.     LEFT OUTER JOIN Dokr D ON V.DokrID = D.DokrID
  96883.     WHERE V.GStID  = @GStID
  96884.     ORDER BY V.RbrNalog
  96885. IF @@ERROR=0
  96886.     IF @@ROWCOUNT=1
  96887.         RETURN 0
  96888.     ELSE
  96889.         RETURN 77000
  96890. ELSE
  96891.     RETURN @@ERROR
  96892.  
  96893.  
  96894.  
  96895. Go
  96896. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignibanki]'))
  96897. drop procedure [dbo].[sp_podignibanki]
  96898.  
  96899. Go
  96900. CREATE PROCEDURE sp_PodigniBanki
  96901.     @Sifra_Banka    smallint
  96902.  AS
  96903.     Select B.Sifra_Ban, B.ImeBanka, B.ZiroSkaNBRM, B.Zabeleska, B.DanocenBr
  96904.     From Banki B
  96905.     Where B.Sifra_Ban=@Sifra_Banka
  96906.  
  96907.  
  96908. Go
  96909. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniblokiranid]'))
  96910. drop procedure [dbo].[sp_podigniblokiranid]
  96911.  
  96912. Go
  96913.  
  96914. CREATE  PROCEDURE sp_PodigniBlokiranID
  96915.    @DokrID int,
  96916.     @Blokiran Char(1) OUTPUT
  96917. AS
  96918.     Select @Blokiran=Blokiran From Dokr
  96919.     Where DokrID = @DokrID
  96920.     Return @@ERROR
  96921.  
  96922.  
  96923.  
  96924. Go
  96925. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniblokirankkluc]'))
  96926. drop procedure [dbo].[sp_podigniblokirankkluc]
  96927.  
  96928. Go
  96929.  
  96930. CREATE   PROCEDURE sp_PodigniBlokiranKKluc
  96931.    @Sifra_OE smallint,
  96932.    @Sifra_Dok smallint,
  96933.    @Broj_Dok int,
  96934.    @Sifra_Prim smallint,
  96935.     @Blokiran Char(1) OUTPUT
  96936. AS
  96937.     If @Sifra_Prim Is Null
  96938.         Select @Blokiran=Blokiran From Dokr
  96939.         Where Sifra_OE=@Sifra_OE
  96940.             And Sifra_Dok=@Sifra_Dok
  96941.             And Broj_Dok=@Broj_Dok
  96942.     Else
  96943.         Select @Blokiran=Blokiran From Dokr
  96944.         Where Sifra_OE=@Sifra_OE
  96945.             And Sifra_Dok=@Sifra_Dok
  96946.             And Broj_Dok=@Broj_Dok
  96947.             And Sifra_Prim=@Sifra_Prim
  96948.     Return @@ERROR
  96949.  
  96950.  
  96951.  
  96952. Go
  96953. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignibrdok]'))
  96954. drop procedure [dbo].[sp_podignibrdok]
  96955.  
  96956. Go
  96957.  
  96958. CREATE PROCEDURE sp_PodigniBrDok
  96959.    @Sifra_OE Smallint,
  96960.    @Sifra_Dok Smallint
  96961. AS
  96962.    SELECT *   FROM BrDok
  96963.    WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok 
  96964.    IF @@ERROR=0
  96965.       IF @@ROWCOUNT=1
  96966.          RETURN 0
  96967.       ELSE
  96968.          RETURN 77000
  96969.    ELSE
  96970.       RETURN @@ERROR
  96971.  
  96972.  
  96973.  
  96974. Go
  96975. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignibrnal]'))
  96976. drop procedure [dbo].[sp_podignibrnal]
  96977.  
  96978. Go
  96979.  
  96980. CREATE PROCEDURE sp_PodigniBrNal
  96981.    @Sifra_Nal Smallint
  96982. AS
  96983.    SELECT *   FROM BrNal
  96984.    WHERE Sifra_Nal=@Sifra_Nal  
  96985.    IF @@ERROR=0
  96986.       IF @@ROWCOUNT=1
  96987.          RETURN 0
  96988.       ELSE
  96989.          RETURN 77000
  96990.    ELSE
  96991.       RETURN @@ERROR
  96992.  
  96993.  
  96994.  
  96995. Go
  96996. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignibrnar]'))
  96997. drop procedure [dbo].[sp_podignibrnar]
  96998.  
  96999. Go
  97000.  
  97001. CREATE  PROCEDURE sp_PodigniBrNar
  97002.    @Sifra_OE Smallint,
  97003.    @Sifra_Nar Smallint
  97004. AS
  97005.    SELECT *   FROM BrNar
  97006.    WHERE Sifra_OE=@Sifra_OE AND Sifra_Nar=@Sifra_Nar 
  97007.    IF @@ERROR=0
  97008.       IF @@ROWCOUNT=1
  97009.          RETURN 0
  97010.       ELSE
  97011.          RETURN 77000
  97012.    ELSE
  97013.       RETURN @@ERROR
  97014.  
  97015.  
  97016.  
  97017. Go
  97018. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignibrstanarac]'))
  97019. drop procedure [dbo].[sp_podignibrstanarac]
  97020.  
  97021. Go
  97022. CREATE PROCEDURE sp_PodigniBrStaNarac
  97023.     @StaNarID    int
  97024.  AS
  97025.     Select SeriskiBr, StaNarId 
  97026.     From BrStaNar
  97027.     Where StaNarID=@StaNarID
  97028.  
  97029.  
  97030. Go
  97031. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignibrstavr]'))
  97032. drop procedure [dbo].[sp_podignibrstavr]
  97033.  
  97034. Go
  97035. CREATE PROCEDURE sp_PodigniBrStavr
  97036.     @DokID    int
  97037.  AS
  97038.     Select SeriskiBr, DokId 
  97039.     From BrStavr
  97040.     Where DokID=@DokID
  97041.  
  97042.  
  97043.  
  97044. Go
  97045. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignibrstavrsite]'))
  97046. drop procedure [dbo].[sp_podignibrstavrsite]
  97047.  
  97048. Go
  97049.  
  97050. CREATE  PROCEDURE sp_PodigniBrStavrSite
  97051.     @DokrID    int
  97052.  AS
  97053.     Select B.SeriskiBr, S.DokId, S.Sifra_Art From Stavr S INNER JOIN BrStavr B ON S.DokID=B.DokID
  97054.     Where S.DokrID=@DokrID
  97055.  
  97056.  
  97057.  
  97058.  
  97059. Go
  97060. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicekovi]'))
  97061. drop procedure [dbo].[sp_podignicekovi]
  97062.  
  97063. Go
  97064. CREATE PROCEDURE sp_PodigniCekovi
  97065.     @Datum_Vnes    smalldatetime, 
  97066.     @KojaSmetka    char(1)
  97067. AS
  97068.     Select C.Datum_Vnes, C.KojaSmetka, C.Iznos, C.Dat_Dosp, C.Br_Cek, C.Br_Tekovna, C.Sifra_Ban, B.ImeBanka, C.Opis
  97069.     From Cekovi C
  97070.     Left Outer Join Banki B On B.Sifra_Ban=C.Sifra_Ban
  97071.     Where C.Datum_Vnes=@Datum_Vnes and C.KojaSmetka=@KojaSmetka
  97072.     Return @@ERROR
  97073.  
  97074.  
  97075. Go
  97076. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenazagrorg]'))
  97077. drop procedure [dbo].[sp_podignicenazagrorg]
  97078.  
  97079. Go
  97080. CREATE  PROCEDURE sp_PodigniCenaZaGrOrg
  97081.     @Sifra_OE    Smallint,
  97082.     @Sifra_Art    Varchar(20),
  97083.     @Cena        Decimal(18,6) = NULL OUTPUT,
  97084.     @Dozvoleno    Char(1) = NULL OUTPUT,
  97085.     @Aktivna    Char(1) = NULL OUTPUT,
  97086.     @OptDozvoleno    Char(1) = NULL OUTPUT
  97087. AS
  97088.     Select @Cena=CC.Cena, @Dozvoleno=CC.Dozvoleno, @Aktivna = GG.Aktivna
  97089.     From CenGrOrg CC WITH(NOLOCK)
  97090.     Inner Join SGrOrg SS On CC.Sif_GrOrg=SS.Sif_GrOrg And SS.Sifra_OE=@Sifra_OE
  97091.     Inner Join GrOrg GG On CC.Sif_GrOrg=GG.Sif_GrOrg And GG.Edinstvena='D'
  97092.     Where Sifra_Art=@Sifra_Art
  97093.     Select @OptDozvoleno=Dozvoleno From OptZalPoOe With(NOLOCK)
  97094.     Where Sifra_Oe=@Sifra_Oe And Sifra_Art=@Sifra_Art
  97095.  
  97096.  
  97097. Go
  97098. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicendog]'))
  97099. drop procedure [dbo].[sp_podignicendog]
  97100.  
  97101. Go
  97102.  
  97103.  
  97104.  
  97105. CREATE    PROCEDURE sp_PodigniCenDog
  97106.  
  97107.     @Sifra_Kup    char(6), 
  97108.     @TipKup    varchar(11),
  97109.     @DogBr    char(10)
  97110. AS
  97111.     Declare @SSQL as varchar(8000)
  97112.     
  97113.     Set @SSQL = ' Select * From CenDog
  97114.             Where DogBr = ''' + @DogBr + ''' '
  97115.     If @Sifra_Kup Is Not Null
  97116.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''' + @Sifra_Kup + ''' '
  97117.     Else 
  97118.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''999000'' '--Set @SSQL = @SSQL + ' And Sifra_Kup Is Null '--Set @SSQL = @SSQL + ' And Sifra_Kup Is Null '
  97119.     If @TipKup Is Not Null
  97120.         Set @SSQL = @SSQL + ' And TipKup = ''' + @TipKup + ''' '
  97121.     Else
  97122.         Set @SSQL = @SSQL + ' And TipKup =''ALL'' '--Set @SSQL = @SSQL + ' And TipKup Is Null '
  97123.     Exec (@SSQL)     
  97124.  
  97125.  
  97126.  
  97127.  
  97128.  
  97129. Go
  97130. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicendogsta]'))
  97131. drop procedure [dbo].[sp_podignicendogsta]
  97132.  
  97133. Go
  97134.  
  97135. CREATE    PROCEDURE sp_PodigniCenDogSta
  97136.  
  97137.     @Sifra_Kup    char(6), 
  97138.     @TipKup    varchar(11),
  97139.     @DogBr    char(10)
  97140. AS
  97141.     Declare @SSQL as varchar(8000)
  97142.     
  97143.     Set @SSQL = ' Select C.*, K.ImeArt From CenDogSta C
  97144.                       LEFT OUTER JOIN KatArt K ON C.Sifra_Art = K.Sifra_Art
  97145.               Where DogBr = ''' + @DogBr + ''' '
  97146.     If @Sifra_Kup Is Not Null
  97147.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''' + @Sifra_Kup + ''' '
  97148.     Else 
  97149.         Set @SSQL = @SSQL + ' And Sifra_Kup = ''999000'' '--Set @SSQL = @SSQL + ' And Sifra_Kup Is Null '
  97150.     If @TipKup Is Not Null
  97151.         Set @SSQL = @SSQL + ' And TipKup = ''' + @TipKup + ''' '
  97152.     Else
  97153.         Set @SSQL = @SSQL + ' And TipKup =''ALL'' '--Set @SSQL = @SSQL + ' And TipKup Is Null '
  97154.  
  97155.     Exec (@SSQL)
  97156.  
  97157.  
  97158.  
  97159.  
  97160. Go
  97161. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicengrorgsodozv]'))
  97162. drop procedure [dbo].[sp_podignicengrorgsodozv]
  97163.  
  97164. Go
  97165.  
  97166.  
  97167.  
  97168. CREATE       PROCEDURE sp_PodigniCenGrOrgSoDozv
  97169.     @Sif_GrOrg varchar(6),
  97170.     @Tip_DozvOrgArt varchar(10) = NULL
  97171. AS
  97172.     CREATE TABLE #TmpCeni
  97173.     (Sif_GrOrg varchar(12), 
  97174.      Sifra_Art  varchar(20),
  97175.      Cena  Decimal(18,6),
  97176.      Dozv  char(1),
  97177.      Ispraten     varchar(120),
  97178.      CenaR    Decimal(18,6),
  97179.      ImeArt varchar(50) )
  97180.     INSERT INTO #TmpCeni
  97181.     SELECT C.*, A.ImeArt     FROM CenGrOrg C
  97182.     INNER JOIN KatArt A ON C.Sifra_Art = A.Sifra_Art
  97183.     WHERE C.Sif_GrOrg = @Sif_GrOrg
  97184. IF @Tip_DozvOrgArt IS NOT NULL
  97185. Begin
  97186. CREATE TABLE #TmpArt
  97187. ( Sifra_Art varchar(20))
  97188. IF @Tip_DozvOrgArt='PODG'
  97189.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Sifra_Podg IN 
  97190.     (SELECT Sifra_Podg FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg) AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97191. ELSE IF @Tip_DozvOrgArt='GR'
  97192.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Sifra_Podg IN 
  97193.     (SELECT Sifra_Podg FROM Grupi WHERE Sifra_Gr IN (SELECT Sifra_Gr FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg))
  97194.     AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97195. ELSE IF @Tip_DozvOrgArt='DR1'
  97196.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Drugo1 IN 
  97197.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg) AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97198. ELSE IF @Tip_DozvOrgArt='DR2'
  97199.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Drugo2 IN 
  97200.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg) AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97201. ELSE IF @Tip_DozvOrgArt='DR3'
  97202.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Drugo3 IN 
  97203.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg) AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97204. ELSE IF @Tip_DozvOrgArt='DR4'
  97205.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Drugo4 IN 
  97206.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg) AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97207. ELSE IF @Tip_DozvOrgArt='DR5'
  97208.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt WHERE Drugo5 IN 
  97209.     (SELECT Tuga_Sini FROM DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg) AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97210. ELSE IF @Tip_DozvOrgArt = 'SIF'
  97211.     Begin
  97212.     Declare @ArtOd varchar(20)
  97213.     Declare @ArtDo varchar(20)
  97214.     Declare DozvArtOdDo Cursor Fast_Forward For
  97215.         Select  Sifra_Od, Sifra_Do From DozvOrgArt WHERE Sif_GrOrg = @Sif_GrOrg
  97216.     Open DozvArtOdDo
  97217.     Fetch Next From DozvArtOdDo Into @ArtOd, @ArtDo
  97218.     While @@Fetch_Status = 0
  97219.     Begin            
  97220.         INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Art FROM KatArt 
  97221.         WHERE Sifra_Art >= @ArtOd AND Sifra_Art <= @ArtDo AND Sifra_Art NOT IN (SELECT Sifra_Art FROM #TmpCeni) 
  97222.         Fetch Next From DozvArtOdDo Into  @ArtOd, @ArtDo
  97223.     End
  97224.     Close DozvArtOdDo
  97225.     Deallocate DozvArtOdDo
  97226.     End
  97227.     INSERT INTO #TmpCeni (Sif_GrOrg, Sifra_Art, ImeArt, Cena, Dozv)
  97228.     SELECT @Sif_GrOrg, Sifra_Art, ImeArt, 0, 'D' FROM KatArt 
  97229.     WHERE Sifra_Art IN (SELECT Sifra_Art FROM #TmpArt)
  97230. End
  97231.     SELECT * FROM #TmpCeni  ORDER BY  Sifra_Art
  97232.     RETURN @@ERROR
  97233.  
  97234.  
  97235.  
  97236. Go
  97237. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenimp]'))
  97238. drop procedure [dbo].[sp_podignicenimp]
  97239.  
  97240. Go
  97241.  
  97242. CREATE  PROCEDURE sp_PodigniCENIMP
  97243.     @Sifra_VidDog    VARCHAR(20),
  97244.     @Sifra_Vernost    SMALLINT,
  97245.     @Sif_GrOrg        CHAR(6)
  97246. AS
  97247. If @Sif_GrOrg is Not Null
  97248.     SELECT C.*, K.ImeArt FROM CENIMP C 
  97249.     INNER JOIN Katart K ON C.Sifra_Art = K.Sifra_Art
  97250.     WHERE C.Sifra_VidDog = @Sifra_VidDog AND C.Sifra_Vernost = @Sifra_Vernost
  97251.     AND C.Sif_GrOrg  = @Sif_GrOrg ORDER BY C.Sifra_Art
  97252. ELSE
  97253.     SELECT C.*, K.ImeArt FROM CENIMP C 
  97254.     INNER JOIN Katart K ON C.Sifra_Art = K.Sifra_Art
  97255.     WHERE C.Sifra_VidDog = @Sifra_VidDog AND C.Sifra_Vernost = @Sifra_Vernost
  97256.     AND C.Sif_GrOrg IS NULL ORDER BY C.Sifra_Art
  97257.  
  97258.  
  97259.  
  97260. Go
  97261. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniceniplanski]'))
  97262. drop procedure [dbo].[sp_podigniceniplanski]
  97263.  
  97264. Go
  97265.  
  97266.  
  97267.  
  97268. CREATE    PROCEDURE sp_PodigniCeniPlanski
  97269.     @Sif_GrOrg        char(6),
  97270.     @Vazi_Od        smalldatetime
  97271. AS
  97272.     Select C.*, K.ImeArt, K.EdMera
  97273.     From CeniPlanski C INNER JOIN KatArt K ON C.Sifra_Art=K.Sifra_Art
  97274.     WHERE Sif_GrOrg=@Sif_GrOrg AND Vazi_Od=@Vazi_Od
  97275.     ORDER BY C.Sifra_Art
  97276.  
  97277.  
  97278.  
  97279. Go
  97280. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenizaorg]'))
  97281. drop procedure [dbo].[sp_podignicenizaorg]
  97282.  
  97283. Go
  97284.  
  97285.  
  97286. CREATE    PROCEDURE sp_PodigniCeniZaOrg
  97287.     @Sif_GrOrg     varchar(12),
  97288.     @Sifra_OE       smallint, 
  97289.     @Sifra_Art_Od varchar(20),
  97290.     @Sifra_Art_Do varchar(20),
  97291.     @Samo_Novi   char(1) = 'D'
  97292. AS
  97293.     Declare @SSQL Varchar(4000)
  97294.     Set @SSQL = 'Select Sifra_Art, Cena, Ispraten
  97295.     From CenGrOrg 
  97296.     WHERE Sif_GrOrg=''' + @Sif_GrOrg  + ''' ' 
  97297.     If @Sifra_Art_Od IS NOT NULL 
  97298.         Set @SSQL = @SSQL + ' AND Sifra_Art>=''' + @Sifra_Art_Od +''' ' 
  97299.     If @Sifra_Art_Do IS NOT NULL 
  97300.         Set @SSQL = @SSQL + ' AND Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  97301. /*    If @Samo_Novi = 'D'
  97302.         Set @SSQL = @SSQL + ' AND (Ispraten IS NULL OR Ispraten = '''' OR ' + 
  97303.         Cast(@Sifra_OE as varchar(5)) + ' NOT IN (' + @Isp + '))'
  97304. print(@SSQL)*/
  97305. EXEC (@SSQL)
  97306.  
  97307.  
  97308.  
  97309. Go
  97310. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenkartkor]'))
  97311. drop procedure [dbo].[sp_podignicenkartkor]
  97312.  
  97313. Go
  97314. CREATE PROCEDURE sp_PodigniCenKartKor
  97315.     @Sifra_CeniKartKor    smallint
  97316.  AS
  97317.     Select C.*, K.ImeArt
  97318.     From CenKartKor C
  97319.     Inner Join Katart K On K.Sifra_Art=C.Sifra_Art
  97320.     Where C.Sifra_CeniKartKor=@Sifra_CeniKartKor
  97321.  
  97322.  
  97323. Go
  97324. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenovnik]'))
  97325. drop procedure [dbo].[sp_podignicenovnik]
  97326.  
  97327. Go
  97328.  
  97329.  
  97330. CREATE       PROCEDURE sp_PodigniCenovnik
  97331.     @Sifra_kup    char(6),
  97332.     @Sifra_art    varchar(20),
  97333.     @Cena        decimal(18,4) OUTPUT,
  97334.     @Popust    decimal(6,2) = null OUTPUT,
  97335.     @SpeCena    decimal(18,4)=null OUTPUT,
  97336.     @SpePopust    decimal(6,2)=null OUTPUT,
  97337.     @PocDatum    smalldatetime=null OUTPUT,
  97338.     @KrajDatum    smalldatetime=null OUTPUT,
  97339.     @Aktiven    char(1) = Null OUTPUT,
  97340.     @SImeVal    char(3) = Null OUTPUT,
  97341.     @PopustGot    decimal(6,2) = null OUTPUT,
  97342.         @Sifra_Art_Cen    varchar (20) = null OUTPUT,
  97343.     @Sifra_Tar    char(3) = NULL OUTPUT,
  97344.     @ProcOsn    decimal(6,3)=NULL OUTPUT
  97345. AS
  97346.     Select @Cena=C.Cena, @Popust=C.Popust, @SpeCena=C.SpeCena, @SpePopust=C.SpePopust,
  97347.          @PocDatum=C.PocDatum, @KrajDatum=C.KrajDatum, @Aktiven=C.Aktiven, @SImeVal=C.SImeVal,
  97348.          @PopustGot=C.PopustGot, @Sifra_Art_Cen = C.Sifra_Art, @Sifra_Tar=A.Sifra_Tar, @ProcOsn=T.ProcOsn 
  97349.     From Cenovnik C
  97350.     Inner Join KatArt A on C.Sifra_Art=A.Sifra_Art 
  97351.     inner Join Tarifi T on T.Sifra_Tar=A.Sifra_Tar
  97352.     Where C.Sifra_Kup = @Sifra_Kup and C.Sifra_art = @Sifra_Art
  97353.  
  97354.  
  97355.  
  97356.  
  97357.  
  97358. Go
  97359. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenovnikotkup]'))
  97360. drop procedure [dbo].[sp_podignicenovnikotkup]
  97361.  
  97362. Go
  97363. Create procedure sp_PodigniCenovnikOtkup
  97364.     @Sifra_art varchar(20),
  97365.     @Vazi_od smalldatetime
  97366. As 
  97367.     Select * from CenovnikOtkup
  97368.     Where Sifra_Art=@Sifra_art and Vazi_od=@Vazi_od
  97369.  
  97370.  
  97371. Go
  97372. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenpoart]'))
  97373. drop procedure [dbo].[sp_podignicenpoart]
  97374.  
  97375. Go
  97376. CREATE PROCEDURE sp_PodigniCenPoArt
  97377.     @Tip_Cena    smallint, 
  97378.     @Sifra_Art    varchar(20)
  97379. AS
  97380.     Select Tip_Cena, Sifra_Art, Opis_Cena, Cena, Popust, SpeCena, SpePopust, PocDatum, KrajDatum
  97381.     From CenPoArt
  97382.     Where Tip_Cena=@Tip_Cena And Sifra_Art=@Sifra_Art
  97383.     Return @@ERROR
  97384.  
  97385.  
  97386. Go
  97387. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenpopodgr_kup]'))
  97388. drop procedure [dbo].[sp_podignicenpopodgr_kup]
  97389.  
  97390. Go
  97391.  
  97392. CREATE    PROCEDURE sp_PodigniCenPoPodgr_Kup
  97393.     @TipKup        varchar(11),
  97394.     @PodelArt    char(1) = Null,
  97395.     @VratiSitePodel    char(1) = Null
  97396.  
  97397. AS
  97398.  
  97399. IF @PodelArt IS NULL OR @PodelArt='P' OR @PodelArt='G' OR @PodelArt='7'
  97400.     Select C.*, '' as Ime_7, P.Ime_Podg, G.Ime_Gr
  97401.     From CenPoPodgr C
  97402.         Left Outer Join Drugo7 D on cast (C.Sifra_Podelba as int) = D.Sifra_7
  97403.         Left Outer Join Podgrupi P on C.Sifra_Podelba = P.Sifra_Podg
  97404.         Left Outer Join Grupi G on C.Sifra_Podelba = G.Sifra_Gr
  97405.     WHERE TipKup = @TipKup
  97406.         Order by Tip_Podelba, Sifra_Podelba
  97407.  
  97408. else if @PodelArt = '1' and @VratiSitePodel = 'D'
  97409.     Select C.Tip_Podelba, C.TipKup, C.Sifra_Podelba,
  97410.            D.Ime_1 as Ime_7, '' Ime_Podg, '' Ime_Gr, Uces, Uces2, Uces3, 1 ZaOrd,
  97411.            C.Cena, C.ParamN1, C.ParamN2, C.ParamN3
  97412.     From CenPoPodgr C
  97413.     Left Outer Join Drugo1 D 
  97414.         on cast (C.Sifra_Podelba as int) = D.Sifra_1
  97415.     WHERE TipKup = @TipKup  
  97416.  
  97417.     Union
  97418.  
  97419.     Select 'A' Tip_Podelba, Null TipKup, D.Sifra_1 Sifra_Podelba,
  97420.            D.Ime_1 as Ime_7, '' Ime_Podg, '' Ime_Gr, 0, 0, 0, 2 ZaOrd,
  97421.            0 Cena, 0 ParamN1, 0 ParamN2, 0 ParamN3
  97422.  
  97423.     From Drugo1 D
  97424.     Where sifra_1 not in (Select Sifra_1 From Drugo1 D
  97425.                 left Join CenPoPodgr C 
  97426.                     on cast (C.Sifra_Podelba as int) = D.Sifra_1
  97427.                 WHERE TipKup = @TipKup )
  97428.  
  97429.     Order by ZaOrd, Sifra_Podelba
  97430.  
  97431. ELSE IF @PodelArt='1'
  97432.     Select C.Tip_Podelba, C.TipKup, D.Sifra_1 Sifra_Podelba, C.Uces, C.Cena, C.Uces2, C.Uces3, C.ParamN1, C.ParamN2, C.ParamN3, D.Ime_1 as Ime_7, '' Ime_Podg, '' Ime_Gr 
  97433.         From Drugo1 D
  97434.     Left Outer Join CenPoPodgr C on cast (C.Sifra_Podelba as int) = D.Sifra_1
  97435.     WHERE (TipKup = @TipKup Or TipKup Is Null) 
  97436.     Union
  97437.     Select Null Tip_Podelba, Null TipKup, D.Sifra_1 Sifra_Podelba, Null Uces, Null Cena, Null Uces2, Null Uces3, Null ParamN1, 
  97438.     Null ParamN2, Null ParamN3, D.Ime_1 as Ime_7, '' Ime_Podg, '' Ime_Gr 
  97439.     From Drugo1 D
  97440.     Where sifra_1 not in (Select Sifra_1 From Drugo1 D
  97441.     left Join CenPoPodgr C on cast (C.Sifra_Podelba as int) = D.Sifra_1
  97442.     WHERE (TipKup = @TipKup Or TipKup Is Null))
  97443.     Order by Tip_Podelba, D.Sifra_1 --Sifra_Podelba
  97444.  
  97445. else if @PodelArt = '2' and @VratiSitePodel = 'D'
  97446.     Select C.Tip_Podelba, C.TipKup, C.Sifra_Podelba,
  97447.            D.Ime_2 as Ime_7, '' Ime_Podg, '' Ime_Gr, Uces, Uces2, Uces3, 1 ZaOrd,
  97448.            C.Cena, C.ParamN1, C.ParamN2, C.ParamN3
  97449.     From CenPoPodgr C
  97450.     Left Outer Join Drugo2 D 
  97451.         on cast (C.Sifra_Podelba as int) = D.Sifra_2
  97452.     WHERE TipKup = @TipKup  
  97453.  
  97454.     Union
  97455.  
  97456.     Select 'A' Tip_Podelba, Null TipKup, D.Sifra_2 Sifra_Podelba,
  97457.            D.Ime_2 as Ime_7, '' Ime_Podg, '' Ime_Gr, 0, 0, 0, 2 ZaOrd,
  97458.            0 Cena, 0 ParamN1, 0 ParamN2, 0 ParamN3
  97459.  
  97460.     From Drugo2 D
  97461.     Where sifra_2 not in (Select Sifra_2 From Drugo2 D
  97462.                 left Join CenPoPodgr C 
  97463.                     on cast (C.Sifra_Podelba as int) = D.Sifra_2
  97464.                 WHERE TipKup = @TipKup )
  97465.  
  97466.     Order by ZaOrd, Sifra_Podelba
  97467.  
  97468. ELSE IF @PodelArt='2'
  97469.  
  97470.     Select C.*, D.Ime_2 as Ime_7, '' Ime_Podg, '' Ime_Gr From CenPoPodgr C
  97471.     Left Outer Join Drugo2 D on cast (C.Sifra_Podelba as int) = D.Sifra_2
  97472.     WHERE TipKup = @TipKup  Order by Tip_Podelba, Sifra_Podelba
  97473.  
  97474. ELSE IF @PodelArt='3'
  97475.     Select C.*, D.Ime_3 as Ime_7, '' Ime_Podg, '' Ime_Gr From CenPoPodgr C
  97476.     Left Outer Join Drugo3 D on cast (C.Sifra_Podelba as int) = D.Sifra_3
  97477.     WHERE TipKup = @TipKup  Order by Tip_Podelba, Sifra_Podelba
  97478. ELSE IF @PodelArt='4'
  97479.     Select C.*, D.Ime_4 as Ime_7, '' Ime_Podg, '' Ime_Gr From CenPoPodgr C
  97480.     Left Outer Join Drugo4 D on cast (C.Sifra_Podelba as int) = D.Sifra_4
  97481.     WHERE TipKup = @TipKup  Order by Tip_Podelba, Sifra_Podelba
  97482. ELSE IF @PodelArt='5'
  97483.     Select C.*, D.Ime_5 as Ime_7, '' Ime_Podg, '' Ime_Gr From CenPoPodgr C
  97484.     Left Outer Join Drugo5 D on cast (C.Sifra_Podelba as int) = D.Sifra_5
  97485.     WHERE TipKup = @TipKup  Order by Tip_Podelba, Sifra_Podelba
  97486. ELSE IF @PodelArt='6'
  97487.     Select C.*, D.Ime_6 as Ime_7, '' Ime_Podg, '' Ime_Gr From CenPoPodgr C
  97488.     Left Outer Join Drugo6 D on cast (C.Sifra_Podelba as int) = D.Sifra_6
  97489.     WHERE TipKup = @TipKup  Order by Tip_Podelba, Sifra_Podelba
  97490.  
  97491.  
  97492.  
  97493.  
  97494. Go
  97495. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicenvidvozila]'))
  97496. drop procedure [dbo].[sp_podignicenvidvozila]
  97497.  
  97498. Go
  97499. CREATE PROCEDURE sp_PodigniCenVidVozila
  97500.     @Sifra_Vid_Voz    varchar(20)
  97501.  AS
  97502.     Select Sifra_Vid_Voz, KM, Cena 
  97503.     From CenVidVozila
  97504.     Where Sifra_Vid_Voz=@Sifra_Vid_Voz
  97505.  
  97506.  
  97507. Go
  97508. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignicrrkodovi]'))
  97509. drop procedure [dbo].[sp_podignicrrkodovi]
  97510.  
  97511. Go
  97512. CREATE  PROCEDURE sp_PodigniCRRKodovi
  97513.     @Sifra_Crr as tinyint
  97514. AS
  97515.     SELECT * FROM CRRKodovi WHERE Sifra_Crr = @Sifra_Crr
  97516.  
  97517.  
  97518.  
  97519. Go
  97520. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignideklart]'))
  97521. drop procedure [dbo].[sp_podignideklart]
  97522.  
  97523. Go
  97524.  
  97525.  
  97526. CREATE     PROCEDURE sp_PodigniDeklArt
  97527.     @Sifra_Art    varchar(20),
  97528.     @Ozn        varchar(20)
  97529. As
  97530.     Select * from DeklArt where Sifra_Art=@Sifra_Art and Ozn=@Ozn
  97531.     Return @@ERROR
  97532.  
  97533.  
  97534.  
  97535. Go
  97536. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidepozamb_site]'))
  97537. drop procedure [dbo].[sp_podignidepozamb_site]
  97538.  
  97539. Go
  97540. CREATE PROCEDURE sp_PodigniDepozAmb_Site
  97541. AS
  97542.     Select * From DepozAmb
  97543.  
  97544.  
  97545. Go
  97546. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevcar]'))
  97547. drop procedure [dbo].[sp_podignidevcar]
  97548.  
  97549. Go
  97550.  
  97551. CREATE          PROCEDURE sp_PodigniDevCar
  97552.    @ANID int
  97553. AS
  97554.     SELECT * FROM DevCar
  97555.     WHERE ANID= Cast(@ANID As Varchar(10))
  97556.  
  97557.  
  97558.  
  97559. Go
  97560. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevfra]'))
  97561. drop procedure [dbo].[sp_podignidevfra]
  97562.  
  97563. Go
  97564.  
  97565.  
  97566.  
  97567. CREATE   PROCEDURE sp_PodigniDevFra
  97568.    @Sifra_OE smallint,
  97569.    @Sifra_Dok smallint,
  97570.    @Broj_DevF int
  97571. AS
  97572.     SELECT D.*, O.ImeOrg, TD.ImeDok, TN.ImeNal, V.ImeVal, OB.ImeObj
  97573.     FROM DevFra  D
  97574.     INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  97575.     INNER JOIN KrsLista V ON D.KojaVal=V.SImeVal
  97576.     LEFT OUTER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  97577.     LEFT OUTER JOIN TipNal TN ON D.Sifra_Nal=TN.Sifra_Nal
  97578.         LEFT OUTER JOIN KObjekti OB ON D.Sifra_Obj=OB.Sifra_Obj  And D.Sifra_Kup=OB.Sifra_Kup
  97579.     WHERE D.Sifra_OE = @Sifra_OE AND D.Sifra_Dok = @Sifra_Dok AND
  97580.               D.Broj_DevF= @Broj_DevF
  97581.  
  97582.  
  97583.  
  97584.  
  97585. Go
  97586. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevfraidodspecanfin]'))
  97587. drop procedure [dbo].[sp_podignidevfraidodspecanfin]
  97588.  
  97589. Go
  97590.  
  97591. CREATE    PROCEDURE sp_PodigniDevFraIDOdSpecAnFin
  97592.     @Broj_SpecFin int,
  97593.     @DevFraID int output
  97594. AS
  97595.     SELECT @DevFraID = DevFraID FROM SpecAnFin WHERE Broj_SpecFin=@Broj_SpecFin
  97596. SET QUOTED_IDENTIFIER OFF 
  97597.  
  97598.  
  97599.  
  97600. Go
  97601. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevfrasoid]'))
  97602. drop procedure [dbo].[sp_podignidevfrasoid]
  97603.  
  97604. Go
  97605.  
  97606.  
  97607. CREATE    PROCEDURE sp_PodigniDevFraSoID
  97608.    @DevFraID Int
  97609. AS
  97610.    SELECT Sifra_Oe, Sifra_dok, Broj_DevF FROM DevFra
  97611.    WHERE DevFraID=@DevFraID
  97612.    IF @@ERROR=0
  97613.       IF @@ROWCOUNT=1
  97614.          RETURN 0
  97615.       ELSE
  97616.          RETURN 77000
  97617.    ELSE
  97618.       RETURN @@ERROR
  97619.  
  97620.  
  97621.  
  97622. Go
  97623. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevfsite]'))
  97624. drop procedure [dbo].[sp_podignidevfsite]
  97625.  
  97626. Go
  97627.  
  97628.  
  97629. CREATE                     PROCEDURE sp_PodigniDevfSite
  97630.    @Sifra_OE smallint,
  97631.    @Sifra_Dok smallint,
  97632.    @Broj_DevF int
  97633. AS
  97634.     Declare @SSQL VArchar(2000)
  97635.     Set @SSQL = 
  97636.         'SELECT D.[DevFraID],  D.[Sifra_OE],  O.[ImeOrg], D.[Sifra_Dok], 
  97637.         TD.[NaslovDok], TD.NaslovIspr, TD.NaslovPrIme, TD.NaslovObicPr, 
  97638.         D.[Broj_Dok], D.[Broj_Nal], D.[Identif_Br], D.[Ispratnica], D.[Opis],
  97639.         D.[Sifra_Kup], K.[ImeKup], K.[ImeKup2], K.[Adresa], K.[Adresa2],
  97640.         K.[SMesto], K.[Posta], K.[Zemja], K.[Alt_ImeKup], K.[Alt_Adresa], K.[IspZemja], K.[Danocen],
  97641.         D.[Datum_Dok], D.[Datum_Vnes], D.[Datum_Izm], D.[Rok_Dosp] Rok,
  97642.         D.[Sifra_Oper], D.[Sifra_OpIz], D.[Kto], D.[Kurs], D.[KojaVal],
  97643.         D.[TekstPosle], D.KojaSmetka, D.Koleti, D.Bruto, D.Neto, D.Swift, D.TekstPred,
  97644.         D.Banka, D.Vozilo, D.Paleti, D.Usluzna, D.DevIznos, D.DenLogo, D.Paritet, D.Sifra_Pat, P.ImePat, K.Telefon, K.Fax,
  97645.         D.Sifra_Nar, D.Sifra_OeNar, D.Broj_Nar, D.Sifra_Obj, OB.[ImeObj], OB.[Adresa] As OAdresa, 
  97646.                 OB.[Adresa2] As OAdresa2, OB.[SMesto] As OSMesto, OB.[Posta] As OPosta,
  97647.         OB.[Zemja] As OZemja, K.[IspMesto]
  97648.         FROM [DevFra] D
  97649.         INNER JOIN Orged O ON D.[Sifra_OE]=O.[Sifra_OE]
  97650.         INNER JOIN TipDok TD ON D.[Sifra_Dok]=TD.[Sifra_Dok] 
  97651.         LEFT OUTER JOIN Komint K ON D.[Sifra_Kup]=K.[Sifra_Kup]
  97652.                 LEFT OUTER JOIN Patnici P ON D.[Sifra_Pat]=P.[Sifra_Pat]
  97653.                 LEFT OUTER JOIN KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  97654.         WHERE D.[Sifra_OE]=' + Cast(@Sifra_OE As Varchar(10)) + 
  97655.         ' AND D.[Broj_DevF]=' + Cast(@Broj_DevF As varchar(10)) + ' '
  97656.         + '  and D.Sifra_Dok=' + Cast(@Sifra_Dok as varchar(10))    + ' '
  97657. Exec(@SSQL)
  97658.  
  97659.  
  97660.  
  97661.  
  97662. Go
  97663. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevkalk]'))
  97664. drop procedure [dbo].[sp_podignidevkalk]
  97665.  
  97666. Go
  97667.  
  97668.  
  97669.  
  97670.  
  97671.  
  97672. CREATE                PROCEDURE sp_PodigniDevKalk
  97673.     @Sifra_OE smallint,
  97674.     @Sifra_Dok    smallint=132,
  97675.     @Broj_Kalk int
  97676. AS
  97677.     SELECT D.*, O.ImeOrg, TD.ImeDok, TN.ImeNal, V.ImeVal
  97678.     FROM DevKalk D
  97679.     INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  97680.     left outer JOIN KrsLista V ON D.KojaVal=V.SImeVal
  97681.     LEFT OUTER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  97682.     LEFT OUTER JOIN TipNal TN ON D.Sifra_Nal=TN.Sifra_Nal
  97683.     WHERE D.Sifra_OE= @Sifra_OE   AND D.Broj_Kalk= @Broj_Kalk AND D.Sifra_Dok=@Sifra_Dok
  97684.  
  97685.  
  97686.  
  97687.  
  97688.  
  97689. Go
  97690. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevkons]'))
  97691. drop procedure [dbo].[sp_podignidevkons]
  97692.  
  97693. Go
  97694.  
  97695.  
  97696.  
  97697. CREATE   PROCEDURE sp_PodigniDevKons
  97698.    @Sifra_OE smallint,
  97699.    @Sifra_Dok smallint,
  97700.    @Broj_Kons int
  97701. AS
  97702.     SELECT D.*, O.ImeOrg, TD.ImeDok, TN.ImeNal, V.ImeVal
  97703.     FROM DevKons  D
  97704.     INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  97705.     LEFT OUTER JOIN KrsLista V ON D.KojaVal=V.SImeVal
  97706.     LEFT OUTER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  97707.     LEFT OUTER JOIN TipNal TN ON D.Sifra_Nal=TN.Sifra_Nal
  97708.     WHERE D.Sifra_OE= @Sifra_OE AND D.Sifra_DOk = @Sifra_DOK and  D.Broj_Kons= @Broj_Kons
  97709.  
  97710.  
  97711.  
  97712. Go
  97713. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevkonssite]'))
  97714. drop procedure [dbo].[sp_podignidevkonssite]
  97715.  
  97716. Go
  97717. CREATE     PROCEDURE sp_PodigniDevKonsSite
  97718.     @Sifra_OE smallint,
  97719.     @Sifra_Dok smallint,
  97720.     @Broj_Kons int
  97721. AS
  97722.     Declare @SSQL VArchar(4000)
  97723.     Set @SSQL = ' SELECT D.DevKonsID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Kons, D.Storno, D.Datum_Dok, D.Datum_Mag, D.Sifra_Kup, D.Kto, D.Ecd, 
  97724.     D.Opis, D.CarOzn, D.EvCarBroj, D.Paritet, D.RezimUvoz, D.Poteklo, D.KojaVal, D.Kurs, D.Sifra_Nal, D.Broj_Nal, D.Datum_Vnes, D.Datum_Izm, D.Rok_Dosp, 
  97725.     D.Swift, D.Banka, D.Vozilo, D.Koleti, D.Bruto, D.Neto, D.Paleti, D.KojaSmetka, D.TekstPosle, D.Sifra_Oper, D.Sifra_Opiz, D.Identif_Br, D.Ispratnica, D.DevIznos, D.VlIzl, 
  97726.     O.ImeOrg, TD.NaslovDok, TD.NaslovIspr, TD.NaslovPrIme, TD.NaslovObicPr, K.ImeKup, K.ImeKup2, K.Adresa, K.Adresa2, K.SMesto, K.Posta, 
  97727.     K.Zemja, K.Alt_ImeKup, K.Alt_Adresa, K.IspZemja, D.TekstPred
  97728.     FROM DevKons D
  97729.     INNER JOIN Orged O ON D.[Sifra_OE]=O.[Sifra_OE]
  97730.     INNER JOIN TipDok TD ON D.[Sifra_Dok]=TD.[Sifra_Dok] 
  97731.     LEFT OUTER JOIN Komint K ON D.[Sifra_Kup]=K.[Sifra_Kup]
  97732.     WHERE D.[Sifra_OE]=' + Cast(@Sifra_OE As Varchar(10)) + 
  97733.     ' AND D.Broj_Kons=' + Cast(@Broj_Kons As varchar(10)) + ' '
  97734.     + ' And D.Sifra_Dok=' + Cast(@Sifra_Dok as varchar(10))    + ' '
  97735.     Exec(@SSQL)
  97736.  
  97737.  
  97738. Go
  97739. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevnar]'))
  97740. drop procedure [dbo].[sp_podignidevnar]
  97741.  
  97742. Go
  97743. CREATE   PROCEDURE sp_PodigniDevNar
  97744.    @Sifra_OE smallint,
  97745.    @Sifra_Nar smallint,
  97746.    @Broj_DevN int
  97747. AS
  97748.     SELECT D.*, O.ImeOrg, TD.ImeNar, TN.ImeNal, V.ImeVal
  97749.     FROM DevNar D
  97750.     INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  97751.     INNER JOIN KrsLista V ON D.KojaVal=V.SImeVal
  97752.     LEFT OUTER JOIN TipNarac TD ON D.Sifra_Nar=TD.Sifra_Nar
  97753.     LEFT OUTER JOIN TipNal TN ON D.Sifra_Nal=TN.Sifra_Nal
  97754.     WHERE D.Sifra_OE = @Sifra_OE AND D.Sifra_Nar = @Sifra_Nar AND
  97755.               D.Broj_DevN= @Broj_DevN
  97756.  
  97757.  
  97758. Go
  97759. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidevnarsite]'))
  97760. drop procedure [dbo].[sp_podignidevnarsite]
  97761.  
  97762. Go
  97763.  
  97764.  
  97765.  
  97766. CREATE                  PROCEDURE sp_PodigniDevNarSite
  97767.    @Sifra_OE smallint,
  97768.    @Sifra_Nar smallint,
  97769.    @Broj_DevN int
  97770. AS
  97771.     Declare @SSQL VArchar(2000)
  97772.     Set @SSQL = 
  97773.         'SELECT D.Sifra_OE, O.ImeOrg, D.Broj_DevN, D.Storno, D.Datum_Nar, D.Sifra_Kup, D.Kto, D.ECD, D.Opis, D.KojaVal, D.Kurs, D.Sifra_Nal, 
  97774.             D.Broj_Nal, D.Datum_Vnes, D.Rok_Dosp, D.Swift, D.Banka, D.Vozilo, D.Koleti, D.Bruto, D.Neto, D.KojaSmetka, 
  97775.             D.TekstPosle, D.Sifra_Oper, D.Identif_Br, D.Ispratnica, D.Sifra_Nar, D.Broj_Nar, D.DevIznos, D.Paleti, D.TekstPred, D.Usluzna,
  97776.             TN.ImeNar, TN.Naslov, K.ImeKup, K.ImeKup2, K.Adresa, K.Adresa2, K.SMesto, K.Posta, K.Zemja, K.Alt_ImeKup, K.Alt_Adresa, K.IspZemja,
  97777.             D.Sifra_Pat, P.ImePat, K.Telefon, K.Fax, K.Danocen, D.Paritet, D.Izn_Prevoz, D.Usl_Plakanje, 
  97778.                         P.Adresa PatAdresa, P.SMesto PatSMesto, P.Telefon PatTelefon, P.TelMobil PatTelMobil, P.EMail PatEMail
  97779.         FROM DevNar D
  97780.     INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  97781.     INNER JOIN TipNarac TN ON D.Sifra_Nar=TN.Sifra_Nar 
  97782.     LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  97783.     LEFT OUTER JOIN Patnici P ON D.Sifra_Pat=P.Sifra_Pat
  97784.     WHERE D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + 
  97785.     ' AND D.Broj_DevN=' + Cast(@Broj_DevN As varchar(10)) + ' '
  97786.     + ' and D.Sifra_Nar=' + cast(@Sifra_Nar as varchar(10))    + ' '
  97787. Exec(@SSQL)
  97788.  
  97789.  
  97790.  
  97791.  
  97792.  
  97793. Go
  97794. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidijagnozi]'))
  97795. drop procedure [dbo].[sp_podignidijagnozi]
  97796.  
  97797. Go
  97798.  
  97799. CREATE PROCEDURE sp_PodigniDijagnozi
  97800.  
  97801.     @Sifra_Dijagn    char(5)
  97802. AS
  97803.     Select * From Dijagnozi 
  97804.     Where Sifra_Dijagn=@Sifra_Dijagn
  97805.  
  97806.  
  97807.  
  97808. Go
  97809. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidnevnik]'))
  97810. drop procedure [dbo].[sp_podignidnevnik]
  97811.  
  97812. Go
  97813.  
  97814. CREATE  PROCEDURE sp_PodigniDnevnik
  97815.     @IdDnevnik    int
  97816.  AS
  97817.     Select IdDnevnik, Sifra_Kup, Datum_Akt, Opis_Akt, Tip_Akt, Datum_SlAkt, Opis_SlAkt, Tip_SlAkt,
  97818.                DodadenOd, IzmenetOd
  97819.     From Dnevnik
  97820.     Where IdDnevnik=@IdDnevnik
  97821.     Return @@ERROR
  97822.  
  97823.  
  97824.  
  97825.  
  97826. Go
  97827. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidnizvskr]'))
  97828. drop procedure [dbo].[sp_podignidnizvskr]
  97829.  
  97830. Go
  97831. CREATE PROCEDURE sp_PodigniDnIzvSkr
  97832.     @Sema_DnIzvSkr    smallint
  97833.  AS
  97834.     Select Sema_DnIzvSkr, Sifra_Dok, VlIzlPari, DokrFin
  97835.     From DnIzvSkr 
  97836.     Where Sema_DnIzvSkr=@Sema_DnIzvSkr
  97837.  
  97838.  
  97839.  
  97840. Go
  97841. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidogtmobile]'))
  97842. drop procedure [dbo].[sp_podignidogtmobile]
  97843.  
  97844. Go
  97845. CREATE          PROCEDURE sp_PodigniDogTmobile
  97846.    @SifraKomint varchar(20)
  97847. AS
  97848.     SELECT * FROM DogTmobile
  97849.     WHERE SifraKomint= @SifraKomint
  97850.  
  97851.  
  97852.  
  97853. Go
  97854. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokosnsred]'))
  97855. drop procedure [dbo].[sp_podignidokosnsred]
  97856.  
  97857. Go
  97858.  
  97859.  
  97860. CREATE    PROCEDURE sp_PodigniDokOsnSred
  97861.     @Sifra_Oe    smallint, 
  97862.     @Sifra_Dok    smallint, 
  97863.     @Broj_Dok    int
  97864. AS
  97865.     Select DokOID, Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, Identif_Br, Sifra_Kup, Tip_StaOsn, Sifra_Nal, 
  97866.         Broj_Nal, Toc200, VlIzl, Danok1, Danok2, Kolic, Poc_Inv_Broj, Osn_Amor, Otpis_Pret, Delov_God, Orig_Nab_Vr, Orig_Nab_Vr_Val, Valuta,
  97867.         Sifra_MikLok, Sifra_MikLok_Od, Opis, Sifra_Div, Sifra_Div_Od, Sifra_TrosM, Sifra_TrosM_Od, Sifra_TrosV, Sifra_TrosV_Od
  97868.     From DokOsnSred
  97869.     Where Sifra_Oe=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok
  97870.     Return @@ERROR
  97871.  
  97872.  
  97873.  
  97874.  
  97875. Go
  97876. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokosnsred_pecdok]'))
  97877. drop procedure [dbo].[sp_podignidokosnsred_pecdok]
  97878.  
  97879. Go
  97880.  
  97881.  
  97882. CREATE    PROCEDURE sp_PodigniDokOsnSred_PecDok
  97883.     @Sifra_Oe    smallint, 
  97884.     @Sifra_Dok    smallint, 
  97885.     @Broj_Dok    int,
  97886.     @DokOID    int = Null Output
  97887. AS
  97888.     Set @DokOID = (Select DokOID
  97889.              From DokOsnSred
  97890.              Where Sifra_Oe=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok)
  97891.  
  97892.     Select DokOID, Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, Identif_Br, Sifra_Kup, Tip_StaOsn, Sifra_Nal, 
  97893.         Broj_Nal, Toc200, VlIzl, Danok1, Danok2, Kolic, Poc_Inv_Broj, Osn_Amor, Otpis_Pret, Delov_God, Orig_Nab_Vr, Orig_Nab_Vr_Val, Valuta,
  97894.         Sifra_MikLok, Sifra_MikLok_Od, Opis
  97895.     From DokOsnSred
  97896.     Where Sifra_Oe=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok
  97897.     Return @@ERROR
  97898.  
  97899.  
  97900. Go
  97901. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokr]'))
  97902. drop procedure [dbo].[sp_podignidokr]
  97903.  
  97904. Go
  97905. CREATE                      PROCEDURE sp_PodigniDokr
  97906.    @Sifra_OE smallint,
  97907.    @Sifra_Dok smallint,
  97908.    @Broj_Dok int,
  97909.    @Sifra_Prim smallint,
  97910.    @ImaDodatna char(1)
  97911. -- Ednoznacen Kluc
  97912. AS
  97913.     Declare @SSQL VArchar(4000)
  97914.     Set @SSQL = 'SELECT D.[DokrID], D.[Sifra_OE], O.[ImeOrg], D.[Sifra_Dok], TD.[NaslovDok], 
  97915.     D.[Broj_Dok], D.[Sifra_Prim], OO.[ImeOrg] As ImePrim, D.[ImaDodatna], D.[VlIzl], D.[Sifra_Za], D.Sifra_Nal, 
  97916.     D.[Broj_Nal], D.[Identif_Br], D.[Ispratnica], D.[Opis], D.[Sifra_Kup], D.[Sifra_Obj],
  97917.     K.[ImeKup], K.[Adresa], K.[Adresa2], K.[SMesto], K.[Posta], K.[Zemja], OB.[ImeObj],
  97918.     OB.[Adresa] As OAdresa, OB.[Adresa2] As OAdresa2, OB.[SMesto] As OSMesto,
  97919.     OB.[Posta] As OPosta, OB.[Zemja] As OZemja, D.[Datum_Dok], D.[Datum_Vnes], D.[Datum_Izm],
  97920.     D.[Uces], D.[Kasa], D.[Rok], D.[Sifra_Pat], D.[Sifra_Oper], D.[Sifra_OpIz], D.[SerBr],
  97921.     D.[Kto], D.[Kurs], D.[KojaVal], D.[Toc200], D.[MagVr], D.[MagVrDan], D.[Marza],
  97922.     D.[Danok1], D.[Danok2], D.[PDanok1], D.[PDanok2], D.[PTrosok], D.[DanDokCena], D.[DanMagCena],
  97923.     D.[CenaIznos], D.[ProcMarza], D.[Kod_Danok], D.[TekstPosle], D.[Prenesen], D.[Sifra_Nivo],
  97924.     D.[Kojasmetka], D.[KasaPoDDV], D.[Blokiran], D.[Spremil], D.[Sifra_Nar], D.[Broj_Nar], D.[Sifra_OeNar], 
  97925.     D.[Usluzna], D.[TekstPred], D.[Sifra_Mest], D.[Izrab_Nar], D.[Dokr_Stat], D.[Sifra_Prev], D.[Pec_Fisc], 
  97926.     D.[Spec_Forma_Pec], D.[Sifra_Div], D.[NarID_Zatv], D.Likvid, D.Plat_PerDan, D.Proc_PerDan,
  97927.     D.DogBr, D.Sifra_Kor, D.Spck_Stat, DZ.DokrZbID, D.Broj_Proekt, D.Prifaten
  97928.     FROM [Dokr] D
  97929.     INNER JOIN Orged O ON D.[Sifra_OE]=O.[Sifra_OE]
  97930.     INNER JOIN TipDok TD ON D.[Sifra_Dok]=TD.[Sifra_Dok] 
  97931.     LEFT OUTER JOIN Orged OO ON D.[Sifra_Prim]=OO.[Sifra_OE]
  97932.     LEFT OUTER JOIN Komint K ON D.[Sifra_Kup]=K.[Sifra_Kup]
  97933.     LEFT OUTER JOIN KObjekti OB ON D.Sifra_Obj=OB.Sifra_Obj  And D.Sifra_Kup=OB.Sifra_Kup
  97934.     LEFT OUTER JOIN DokrZbSta DZ ON D.DokrID=DZ.DokrID
  97935.     WHERE D.[Sifra_OE]=' + Cast(@Sifra_OE As Varchar(10)) + ' AND D.[Sifra_Dok]=' + Cast(@Sifra_Dok As Varchar(10)) + ' AND D.[Broj_Dok]=' + Cast(@Broj_Dok As varchar(10)) + ' '
  97936.     If @Sifra_Prim Is Not Null
  97937.         Set @SSQL = @SSQL + 'AND D.[Sifra_Prim]=' + Cast(@Sifra_Prim As Varchar(10)) + ' '
  97938.     If @ImaDodatna Is NOt Null
  97939.         Set @SSQL = @SSQL + 'AND D.[ImaDodatna]=''' + @ImaDodatna + ''' '
  97940.     Exec(@SSQL)
  97941.  
  97942.  
  97943.  
  97944.  
  97945.  
  97946.  
  97947. Go
  97948. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrabnal]'))
  97949. drop procedure [dbo].[sp_podignidokrabnal]
  97950.  
  97951. Go
  97952.  
  97953.  
  97954. CREATE  PROCEDURE sp_PodigniDokRabNal
  97955.      @RabNalID integer
  97956. AS
  97957.         SELECT DRN.*
  97958.         FROM [DokRAbNal] DRN
  97959.         WHERE DRN.RabNalID=@RabNalID
  97960.  
  97961.  
  97962.  
  97963. Go
  97964. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrabnaldokrid]'))
  97965. drop procedure [dbo].[sp_podignidokrabnaldokrid]
  97966.  
  97967. Go
  97968.  
  97969.  
  97970.  
  97971.  
  97972.  
  97973.  
  97974. CREATE    PROCEDURE sp_PodigniDokRabNalDokrID
  97975.     @DokrID            integer,
  97976.     @Broj_RabN        integer output,
  97977.     @Sifra_Rab        integer  = NULL output,
  97978.     @Sifra_Smena    smallint  = NULL output,
  97979.     @Sifra_mas        varchar (15) = NULL output,
  97980.     @Grupa_DokRab    smallint = NULL OUTPUT,
  97981.     @Kolic_Topli    decimal(18,4) = NULL OUTPUT
  97982. AS
  97983.     SELECT @Broj_RabN = R.Broj_Rabn, @Sifra_Rab = DRN.Sifra_Rab, @Grupa_DokRab =Grupa_DokRab, 
  97984.            @Sifra_Smena = DRN.Sifra_Smena, @Sifra_Mas = DRN.Sifra_Mas, @Kolic_Topli=DRN.Kolic_Topli
  97985.     FROM [DokRabNal] DRN, RabNal R
  97986.     WHERE DRN.DokrID=@DokrID and R.RabNalID = DRN.RabNalID
  97987.  
  97988.  
  97989.  
  97990.  
  97991.  
  97992. Go
  97993. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokridotvkniz]'))
  97994. drop procedure [dbo].[sp_podignidokridotvkniz]
  97995.  
  97996. Go
  97997.  
  97998. CREATE       PROCEDURE sp_PodigniDokrIDOtvKniz
  97999.     @Sifra_OE        smallint,
  98000.     @ImaDodatna        char(1),
  98001.     @Sifra_Prim        smallint,
  98002.     @Sifra_Dok        smallint,
  98003.     @Broj_Dok        int
  98004. AS
  98005.  
  98006. IF @ImaDodatna=''
  98007.     SELECT DokrID FROM Dokr WHERE 
  98008.     ((Sifra_OE = @Sifra_OE  AND ImaDodatna = 'D') OR 
  98009.     (Sifra_OE = @Sifra_Prim  AND ImaDodatna = 'P')) AND
  98010.     Sifra_Dok = @Sifra_Dok  AND Broj_Dok = @Broj_Dok
  98011. ELSE
  98012.                           
  98013.     SELECT DokrID FROM Dokr WHERE 
  98014.     Sifra_OE = @Sifra_OE    AND ImaDodatna = @ImaDodatna AND
  98015.     Sifra_Prim = @Sifra_Prim AND Sifra_Dok = @Sifra_Dok  AND
  98016.     Broj_Dok = @Broj_Dok
  98017.  
  98018. RETURN @@ERROR
  98019.  
  98020.  
  98021.  
  98022. Go
  98023. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrkratok]'))
  98024. drop procedure [dbo].[sp_podignidokrkratok]
  98025.  
  98026. Go
  98027.  
  98028. CREATE  PROCEDURE sp_PodigniDokrKratok
  98029.     @Sifra_OE smallint,
  98030.     @Sifra_Dok smallint,
  98031.     @Broj_Dok int,
  98032.     @Sifra_Prim smallint,
  98033.     @ImaDodatna char(1)
  98034. AS
  98035.     Declare @SSQL VArchar(2000)
  98036.     Set @SSQL = 'SELECT DokrID, Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna
  98037.         FROM Dokr
  98038.         WHERE Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + 
  98039.         ' AND [Sifra_Dok]=' + Cast(@Sifra_Dok As Varchar(10)) + 
  98040.         ' AND [Broj_Dok]=' + Cast(@Broj_Dok As varchar(10)) + ' '
  98041.     If @Sifra_Prim Is Not Null
  98042.         Set @SSQL = @SSQL + 'AND [Sifra_Prim]=' + Cast(@Sifra_Prim As Varchar(10)) + ' '
  98043.     If @ImaDodatna Is NOt Null
  98044.         Set @SSQL = @SSQL + 'AND [ImaDodatna]=''' + @ImaDodatna + ''' '
  98045.     Exec(@SSQL)
  98046.    IF @@ERROR=0 AND @@ROWCOUNT=0
  98047.       RETURN 77000
  98048.    ELSE
  98049.       RETURN @@ERROR
  98050.  
  98051.  
  98052.  
  98053. Go
  98054. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrsite]'))
  98055. drop procedure [dbo].[sp_podignidokrsite]
  98056.  
  98057. Go
  98058.  
  98059.  
  98060.  
  98061.  
  98062.  
  98063.  
  98064.  
  98065.  
  98066.  
  98067.  
  98068. CREATE                             PROCEDURE sp_PodigniDokrSite
  98069.     @Sifra_OE smallint,
  98070.     @Sifra_Dok smallint,
  98071.     @Broj_Dok int,
  98072.     @DajTezinaAmb char(1) = 'N'
  98073. AS
  98074.     Declare @SSQL VArchar(4000)
  98075.     Declare @TezinaAmb decimal(18,6)
  98076.     Declare @MestoIsporaka varchar(20)
  98077.  
  98078.     Select @MestoIsporaka = MestoIsporaka From KonfDat
  98079.  
  98080.     If @DajTezinaAmb = 'D'
  98081.     Begin
  98082.         Select @TezinaAmb = Sum(S.Kolic*A.Tezina_Amb/1000)
  98083.         From Stavr S 
  98084.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  98085.         Inner Join KatAmb A On  A.Sifra_Amb = K.Sifra_Amb
  98086.         Where S.Sifra_OE = @Sifra_OE And S.Sifra_Dok = @Sifra_Dok And Broj_Dok = @Broj_Dok
  98087.  
  98088.         If @TezinaAmb Is Null
  98089.             Set @TezinaAmb = 0
  98090.     End
  98091.  
  98092.     Set @SSQL = 
  98093.         'SELECT D.[DokrID], D.[Sifra_OE], O.[ImeOrg], D.[Sifra_Dok], TD.[NaslovDok], TD.NaslovIspr, TD.NaslovPrIme, TD.NaslovObicPr, 
  98094.         D.[Broj_Dok], D.[Sifra_Prim], OO.[ImeOrg] As ImePrim, D.[ImaDodatna], D.[VlIzl], D.[Sifra_Za], D.[Broj_Nal], D.[Identif_Br],
  98095.         D.[Ispratnica], D.[Opis], D.[Sifra_Kup], D.[Sifra_Obj], K.[ImeKup], K.[Adresa], K.[Adresa2], K.[SMesto], K.[Posta], K.[Zemja],
  98096.         OB.[ImeObj], OB.[Adresa] As OAdresa, OB.[Adresa2] As OAdresa2, OB.[SMesto] As OSMesto, OB.[Posta] As OPosta,
  98097.         OB.[Zemja] As OZemja, D.[Datum_Dok], D.[Datum_Vnes], D.[Datum_Izm], D.[Uces], D.[Kasa], D.KasaPoDDV, D.[Rok], D.[Sifra_Pat],
  98098.         D.[Sifra_Oper], D.[Sifra_OpIz], D.[SerBr], D.[Kto], D.[Kurs], D.[KojaVal], D.[Toc200], D.[MagVr], D.[MagVrDan], D.[Marza],
  98099.         D.[Danok1], D.[Danok2], D.[PDanok1], D.[PDanok2], D.[PTrosok], D.[DanDokCena], D.[DanMagCena], D.[CenaIznos],
  98100.         D.[ProcMarza], D.[Kod_Danok], D.[TekstPosle], D.[KojaSmetka], D.[Spremil], D.[Sifra_Nar], D.[Broj_Nar], D.[Sifra_OeNar],
  98101.         D.[Usluzna], D.[TekstPred], D.[Izrab_Nar], D.[Spec_Forma_Pec], D.Sifra_Mest, K.DogovorBroj, K.Telefon, '''' Opis_Ispratnici,
  98102.         D.Sifra_Prev, P.ImePrev, D.Pec_Dok, K.Danocen, K.Kontakt, K.ImeKup2, D.Plat_PerDan, D.Sifra_Nivo, N.ImeNivo, K.MatBr, D.AltBroj,
  98103.                 D.DogBr, '
  98104.     If @MestoIsporaka Is Not Null And @MestoIsporaka <> ''
  98105.         Set @SSQL = @SSQL + ' ''' + @MestoIsporaka + ''' as MestoIsporaka, '
  98106.     Else
  98107.         Set @SSQL = @SSQL + ' O.MestoIsporaka, '
  98108.     If @DajTezinaAmb = 'D'
  98109.         Set @SSQL = @SSQL + ' ' + Cast(@TezinaAmb as varchar(20)) + ' as TezinaAmb '
  98110.     Else 
  98111.         Set @SSQL = @SSQL + ' Null as TezinaAmb '
  98112.     Set @SSQL = @SSQL + ' FROM [Dokr] D
  98113.     INNER JOIN Orged O ON D.[Sifra_OE]=O.[Sifra_OE]
  98114.     INNER JOIN TipDok TD ON D.[Sifra_Dok]=TD.[Sifra_Dok] 
  98115.     LEFT OUTER JOIN Orged OO ON D.[Sifra_Prim]=OO.[Sifra_OE]
  98116.     LEFT OUTER JOIN Komint K ON D.[Sifra_Kup]=K.[Sifra_Kup]
  98117.     LEFT OUTER JOIN KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  98118.     LEFT OUTER JOIN Prevoznik P ON P.Sifra_Prev=D.Sifra_Prev
  98119.         LEFT OUTER JOIN Nivo N ON D.[Sifra_Nivo]=N.[Sifra_Nivo]
  98120.     WHERE D.[Sifra_OE]=' + Cast(@Sifra_OE As Varchar(10)) + 
  98121.         ' AND D.[Sifra_Dok]=' + Cast(@Sifra_Dok As Varchar(10)) + 
  98122.         ' AND D.[Broj_Dok]=' + Cast(@Broj_Dok As varchar(10)) + ' '
  98123.     Exec(@SSQL)
  98124.  
  98125.  
  98126.  
  98127. Go
  98128. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrzb]'))
  98129. drop procedure [dbo].[sp_podignidokrzb]
  98130.  
  98131. Go
  98132. CREATE                  PROCEDURE sp_PodigniDokrZb
  98133.    @Sifra_OE smallint,
  98134.    @Sifra_Dok smallint,
  98135.    @Broj_Dok int
  98136. AS
  98137.     SELECT D.* FROM DokrZb D
  98138.     WHERE D.Sifra_OE=@Sifra_OE  AND D.Sifra_Dok=@Sifra_Dok AND D.Broj_Dok=@Broj_Dok 
  98139.  
  98140.  
  98141.  
  98142. Go
  98143. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrzbsite]'))
  98144. drop procedure [dbo].[sp_podignidokrzbsite]
  98145.  
  98146. Go
  98147.  
  98148.  
  98149.  
  98150. CREATE          PROCEDURE sp_PodigniDokrZbSite
  98151.    @Sifra_OE smallint,
  98152.    @Sifra_Dok smallint,
  98153.    @Broj_Dok int
  98154. AS
  98155.     Declare @MestoIsporaka varchar(20)
  98156.     Select @MestoIsporaka = MestoIsporaka From KonfDat
  98157.  
  98158.     Declare @Opis_Ispratnici varchar(1000)
  98159.     Declare @wSifra_OE smallint
  98160.     Declare @wSifra_Dok smallint
  98161.     Declare @wBroj_Dok int
  98162.     CREATE TABLE #TmpDokr
  98163.     (Sifra_OE smallint,
  98164.     Sifra_Dok smallint,
  98165.     Broj_Dok  int)
  98166.     INSERT INTO #TmpDokr SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok FROM Dokr D
  98167.     INNER JOIN DokrZbSta ZbS ON D.DokrID = ZbS.DokrID
  98168.     INNER JOIN DokrZb Zb ON Zb.DokrZbId = ZbS.DokrZbID 
  98169.     WHERE Zb.Sifra_OE=@Sifra_OE AND Zb.Sifra_Dok=@Sifra_Dok AND Zb.Broj_Dok=@Broj_Dok    
  98170.     SET @Opis_Ispratnici=''
  98171.     Set Nocount On
  98172.     Declare Tabela1 Cursor Fast_Forward For
  98173.         Select Sifra_OE, Sifra_Dok, Broj_Dok From #TmpDokr
  98174.     Open Tabela1
  98175.     Fetch Next From Tabela1 Into @wSifra_OE, @wSifra_Dok, @wBroj_Dok
  98176.     While @@Fetch_Status = 0
  98177.     Begin            
  98178.         IF @Opis_Ispratnici <> '' SET @Opis_Ispratnici = @Opis_Ispratnici + ', '
  98179.         SET @Opis_Ispratnici = @Opis_Ispratnici + cast(@wSifra_OE as varchar(5))+'-'+ cast(@wSifra_Dok as varchar(5))+'/'+cast(@wBroj_Dok as varchar(8))
  98180.         Fetch Next From Tabela1 Into @wSifra_OE, @wSifra_Dok, @wBroj_Dok
  98181.     End
  98182.     Close Tabela1
  98183.     Deallocate Tabela1
  98184.     Set Nocount Off
  98185.     SELECT D.DokrZbID DokrID, D.Sifra_OE, O.ImeOrg, D.Sifra_Dok, TD.NaslovDok, TD.NaslovIspr, TD.NaslovPrIme, TD.NaslovObicPr, 
  98186.     D.Broj_Dok, 0 Sifra_Prim, '' As ImePrim, '' ImaDodatna, 'I' VlIzl, 1 Sifra_Za, D.Broj_Nal, D.Identif_Br,
  98187.     '' Ispratnica, D.Opis, D.Sifra_Kup, D.Sifra_Obj, K.ImeKup, K.Adresa, K.Adresa2, K.SMesto, K.Posta, K.Zemja,
  98188.     OB.ImeObj, OB.Adresa As OAdresa, OB.Adresa2 As OAdresa2, OB.SMesto As OSMesto, OB.Posta As OPosta,
  98189.     OB.Zemja As OZemja, D.Datum_Dok, D.Datum_Vnes, Null Datum_Izm, 0 Uces, D.Kasa, 0 KasaPoDDV, D.Rok, D.Sifra_Pat,
  98190.     D.Sifra_Oper, '' Sifra_OpIz, '' SerBr, D.Kto, 0 Kurs, Null KojaVal, D.Toc200, 0 MagVr, 0 MagVrDan, 0 Marza,
  98191.     D.Danok1, D.Danok2, 0 PDanok1, 0 PDanok2, 0 PTrosok, '' DanDokCena, '' DanMagCena, '' CenaIznos,
  98192.     0 ProcMarza, '' Kod_Danok, '' TekstPosle, D.KojaSmetka, '' Spremil, 0 Sifra_Nar, 0 Broj_Nar, 0 Sifra_OeNar,
  98193.     '' Usluzna, '' TekstPred, '' Izrab_Nar, D.Spec_Forma_Pec, 0 Sifra_Mest, K.DogovorBroj, K.Telefon, @Opis_Ispratnici Opis_Ispratnici,
  98194.     D.Sifra_Prev, P.ImePrev, K.Danocen, K.Kontakt, K.MatBr, '' AltBroj, '' DogBr, 
  98195.      (Case When @MestoIsporaka Is Not Null And @MestoIsporaka<>'' Then @MestoIsporaka Else O.MestoIsporaka End) as MestoIsporaka
  98196.     FROM DokrZb D
  98197.     INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  98198.     INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok 
  98199.     LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  98200.     LEFT OUTER JOIN KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  98201.     LEFT OUTER JOIN Prevoznik P On P.Sifra_Prev=D.Sifra_Prev
  98202.     WHERE D.Sifra_OE=@Sifra_OE AND D.Sifra_Dok=@Sifra_Dok AND D.Broj_Dok=@Broj_Dok
  98203.  
  98204.  
  98205.  
  98206. Go
  98207. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrzbsta]'))
  98208. drop procedure [dbo].[sp_podignidokrzbsta]
  98209.  
  98210. Go
  98211.  
  98212. CREATE  PROCEDURE sp_PodigniDokrZbSta
  98213.     @DokrZbId    int
  98214. AS
  98215. SELECT ZbS.*, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok
  98216. FROM DokrZbSta ZbS INNER JOIN Dokr D ON ZbS.DokrID=D.DokrID
  98217. WHERE ZbS.DokrZbID=@DokrZbId ORDER BY ZbS.RbrZb
  98218.  
  98219.  
  98220.  
  98221. Go
  98222. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokrzbstazaazur]'))
  98223. drop procedure [dbo].[sp_podignidokrzbstazaazur]
  98224.  
  98225. Go
  98226.  
  98227.  
  98228. CREATE   PROCEDURE sp_PodigniDokrZbStaZaAzur
  98229.     @DokrZbId    int
  98230. AS
  98231. SELECT ZbS.*, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok
  98232. FROM DokrZbSta ZbS INNER JOIN Dokr D ON ZbS.DokrID=D.DokrID
  98233. WHERE ZbS.DokrZbID=@DokrZbId AND D.Broj_Nal IS NULL ORDER BY ZbS.RbrZb
  98234.  
  98235.  
  98236.  
  98237. Go
  98238. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidokumentiskrsoid]'))
  98239. drop procedure [dbo].[sp_podignidokumentiskrsoid]
  98240.  
  98241. Go
  98242.  
  98243.  
  98244.  
  98245.  
  98246. CREATE PROCEDURE sp_PodigniDokumentiSkrSoID
  98247.     @DokrID Int
  98248. AS
  98249.     SELECT Sifra_OE, Sifra_Dok, Broj_Dok FROM Dokr WHERE DokrID=@DokrID
  98250.  
  98251.  
  98252.  
  98253. Go
  98254. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignidozvorgart]'))
  98255. drop procedure [dbo].[sp_podignidozvorgart]
  98256.  
  98257. Go
  98258.  
  98259.  
  98260. CREATE     PROCEDURE sp_PodigniDozvOrgArt
  98261.     @Sif_GrOrg        char(6), 
  98262.     @Tip_DozvOrgArt    varchar(10)=null
  98263. AS
  98264.     IF @Tip_DozvOrgArt IS NULL   RETURN
  98265. CREATE TABLE #TmpDozv
  98266. (    Sif_GrOrg char(6) NOT NULL,
  98267.     Sifra_Podg char(6) NULL,
  98268.     Sifra_Gr char(3) NULL,
  98269.     Tuga_Sini smallint NULL,
  98270.     Sifra_Od varchar(20) NULL,
  98271.     Sifra_Do varchar(20) NULL,
  98272.     Dozv char(1),
  98273.     Ime varchar(50), 
  98274.     ImeDo varchar(50))    
  98275.     Declare @SSQL varchar(1000)
  98276. Set @SSQL = 'SELECT D.*, ''D'' Dozv, '
  98277. IF @Tip_DozvOrgArt='PODG'
  98278.     Set @SSQL = @SSQL + 'P.Ime_Podg as Ime, '''' ImeDo '
  98279. ELSE IF @Tip_DozvOrgArt='GR'
  98280.     Set @SSQL = @SSQL + 'G.Ime_Gr as Ime, '''' ImeDo '
  98281. ELSE IF @Tip_DozvOrgArt='DR1'
  98282.     Set @SSQL = @SSQL + 'DR.Ime_1 as Ime, '''' ImeDo '
  98283. ELSE IF @Tip_DozvOrgArt='DR2'
  98284.     Set @SSQL = @SSQL + 'DR.Ime_2 as Ime, '''' ImeDo '
  98285. ELSE IF @Tip_DozvOrgArt='DR3'
  98286.     Set @SSQL = @SSQL + 'DR.Ime_3 as Ime, '''' ImeDo '
  98287. ELSE IF @Tip_DozvOrgArt='DR4'
  98288.     Set @SSQL = @SSQL + 'DR.Ime_4 as Ime, '''' ImeDo '
  98289. ELSE IF @Tip_DozvOrgArt='DR5'
  98290.     Set @SSQL = @SSQL + 'DR.Ime_5 as Ime, '''' ImeDo '
  98291. ELSE IF @Tip_DozvOrgArt='SIF'
  98292.     Set @SSQL = @SSQL + 'A.ImeArt as Ime, A1.ImeArt as ImeDo '
  98293. Set @SSQL = @SSQL + ' FROM DozvOrgArt D'
  98294. IF @Tip_DozvOrgArt='PODG'
  98295.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Podgrupi P ON D.Sifra_Podg=P.Sifra_Podg '
  98296. ELSE IF @Tip_DozvOrgArt='GR'
  98297.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Grupi G ON D.Sifra_Podg=G.Sifra_Gr '
  98298. ELSE IF @Tip_DozvOrgArt='DR1'
  98299.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Drugo1 DR ON D.Tuga_Sini=DR.Sifra_1 '
  98300. ELSE IF @Tip_DozvOrgArt='DR2'
  98301.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Drugo2 DR ON D.Tuga_Sini=DR.Sifra_2 '
  98302. ELSE IF @Tip_DozvOrgArt='DR3'
  98303.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Drugo3 DR ON D.Tuga_Sini=DR.Sifra_3 '
  98304. ELSE IF @Tip_DozvOrgArt='DR4'
  98305.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Drugo4 DR ON D.Tuga_Sini=DR.Sifra_4 '
  98306. ELSE IF @Tip_DozvOrgArt='DR5'
  98307.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN Drugo5 DR ON D.Tuga_Sini=DR.Sifra_5 '
  98308. ELSE IF @Tip_DozvOrgArt='SIF'
  98309.     Set @SSQL = @SSQL + ' LEFT OUTER JOIN KatArt A ON D.Sifra_Od=A.Sifra_Art LEFT OUTER JOIN KatArt A1 ON D.Sifra_Do=A1.Sifra_Art '
  98310. Set @SSQL = @SSQL + ' WHERE  D.Sif_GrOrg = ''' + @Sif_GrOrg + ''' ' 
  98311. INSERT INTO #TmpDozv EXEC (@SSQL)
  98312. IF @Tip_DozvOrgArt <> 'SIF'
  98313. Begin
  98314. IF @Tip_DozvOrgArt='PODG'
  98315.     Set @SSQL ='SELECT ''' + @Sif_GrOrg + ''' as Sif_GrOrg, Sifra_podg, '''' as Sifra_Gr, 0 as Tuga_Sini, '''' as Sifra_Od,
  98316.         '''' as Sifra_Do, ''N'' Dozv, Ime_Podg as Ime, '''' ImeDo FROM Podgrupi WHERE Sifra_Podg NOT IN (SELECT Sifra_Podg FROM #TmpDozv)'
  98317. ELSE IF @Tip_DozvOrgArt='GR'
  98318.     Set @SSQL = 'SELECT ''' + @Sif_GrOrg + ''' as Sif_GrOrg, '''' Sifra_podg, Sifra_Gr, 0 as Tuga_Sini, '''' as Sifra_Od,
  98319.         '''' as Sifra_Do, ''N'' Dozv, Ime_Gr as Ime , '''' ImeDoFROM Grupi WHERE Sifra_Gr NOT IN (SELECT Sifra_Gr FROM #TmpDozv)'
  98320. ELSE IF @Tip_DozvOrgArt='DR1'
  98321.     Set @SSQL = 'SELECT ''' + @Sif_GrOrg + ''' as Sif_GrOrg, '''' Sifra_podg, '''' as Sifra_Gr, Sifra_1 as Tuga_Sini, '''' as Sifra_Od,
  98322.         '''' as Sifra_Do, ''N'' Dozv, Ime_1 as Ime, '''' ImeDo FROM Drugo1 WHERE Sifra_1 NOT IN (SELECT Tuga_Sini FROM #TmpDozv)'
  98323. ELSE IF @Tip_DozvOrgArt='DR2'
  98324.     Set @SSQL = 'SELECT ''' + @Sif_GrOrg + ''' as Sif_GrOrg, '''' Sifra_podg, '''' as Sifra_Gr, Sifra_2 as Tuga_Sini, '''' as Sifra_Od,
  98325.         '''' as Sifra_Do, ''N'' Dozv, Ime_2 as Ime, '''' ImeDo FROM Drugo2 WHERE Sifra_2 NOT IN (SELECT Tuga_Sini FROM #TmpDozv)'
  98326. ELSE IF @Tip_DozvOrgArt='DR3'
  98327.     Set @SSQL = 'SELECT ''' + @Sif_GrOrg + ''' as Sif_GrOrg, '''' Sifra_podg, '''' as Sifra_Gr, Sifra_3 as Tuga_Sini, '''' as Sifra_Od,
  98328.         '''' as Sifra_Do, ''N'' Dozv, Ime_3 as Ime, '''' ImeDo FROM Drugo3 WHERE Sifra_3 NOT IN (SELECT Tuga_Sini FROM #TmpDozv)'
  98329. ELSE IF @Tip_DozvOrgArt='DR4'
  98330.     Set @SSQL = 'SELECT ''' + @Sif_GrOrg + ''' as Sif_GrOrg, '''' Sifra_podg, '''' as Sifra_Gr, Sifra_4 as Tuga_Sini, '''' as Sifra_Od,
  98331.         '''' as Sifra_Do, ''N'' Dozv, Ime_4 as Ime, '''' ImeDo FROM Drugo4 WHERE Sifra_4 NOT IN (SELECT Tuga_Sini FROM #TmpDozv)'
  98332. ELSE IF @Tip_DozvOrgArt='DR5'
  98333.     Set @SSQL = 'SELECT ''' + @Sif_GrOrg + ''' as Sif_GrOrg, '''' Sifra_podg, '''' as Sifra_Gr, Sifra_5 as Tuga_Sini, '''' as Sifra_Od,
  98334.         '''' as Sifra_Do, ''N'' Dozv, Ime_5 as Ime, '''' ImeDo FROM Drugo5 WHERE Sifra_5 NOT IN (SELECT Tuga_Sini FROM #TmpDozv)'
  98335. INSERT INTO #TmpDozv EXEC (@SSQL)
  98336. End
  98337.     SELECT  * FROM #TmpDozv
  98338.  
  98339.  
  98340.  
  98341. Go
  98342. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniekvivart]'))
  98343. drop procedure [dbo].[sp_podigniekvivart]
  98344.  
  98345. Go
  98346.  
  98347. CREATE  PROCEDURE sp_PodigniEkvivArt
  98348.     @IdEkviv varchar(50)
  98349. AS
  98350.     SELECT E.*, A.ImeArt FROM EkvivArt E INNER JOIN KatArt A ON E.Sifra_Art=A.Sifra_Art
  98351.     WHERE IdEkviv=@IdEkviv ORDER By E.Rbr
  98352.  
  98353.  
  98354.  
  98355. Go
  98356. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniekvivdezen]'))
  98357. drop procedure [dbo].[sp_podigniekvivdezen]
  98358.  
  98359. Go
  98360.  
  98361.  
  98362. CREATE   procedure sp_PodigniEkvivDezen
  98363.     @GrupaEkviv varchar(50)
  98364. As
  98365.     Select E.*, A.ImeArt ImeArtOsn, K.ImeArt ImeArtMap From EkvivDezen E 
  98366.     Inner Join KatArt A On E.Sifra_Art_Osn=A.Sifra_Art
  98367.     Inner Join KatArt K On E.Sifra_Art_MAp=K.Sifra_Art
  98368.     Where E.GrupaEkviv=@GrupaEkviv Order By E.Rbr
  98369.  
  98370.  
  98371.  
  98372.  
  98373.  
  98374. Go
  98375. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignievdekl]'))
  98376. drop procedure [dbo].[sp_podignievdekl]
  98377.  
  98378. Go
  98379. create procedure sp_PodigniEvDekl
  98380.     @Godina smallint,
  98381.     @Rbr int
  98382. As 
  98383.     Select *  from EvDekl
  98384.     Where Godina=@Godina  and Rbr=@Rbr
  98385.  
  98386.  
  98387. Go
  98388. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignievdeklstav]'))
  98389. drop procedure [dbo].[sp_podignievdeklstav]
  98390.  
  98391. Go
  98392.  
  98393. CREATE  procedure sp_PodigniEvDeklStav
  98394.     @Godina smallint,
  98395.     @Rbr int
  98396. As 
  98397.     Select E.*, C.Ime  from EvDeklStav E
  98398.     inner join Cbroevi C on E.CarBroj=C.CarBroj
  98399.     Where E.Godina=@Godina  and E.Rbr=@Rbr
  98400.  
  98401.  
  98402.  
  98403. Go
  98404. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignievproizvod]'))
  98405. drop procedure [dbo].[sp_podignievproizvod]
  98406.  
  98407. Go
  98408.  
  98409.  
  98410.  
  98411. CREATE    PROCEDURE sp_PodigniEvProizvod
  98412.     @DokrID    int
  98413. AS
  98414.     select Ev.*, Kata.ImeArt, Kata.EdMera 
  98415.     From EvProizvod Ev
  98416.     inner join Katart Kata  on Ev.Sifra_Art = Kata.Sifra_Art
  98417.     Where DokrID=@DokrID
  98418.  
  98419.  
  98420.  
  98421. Go
  98422. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifaktura]'))
  98423. drop procedure [dbo].[sp_podignifaktura]
  98424.  
  98425. Go
  98426.  
  98427.  
  98428. CREATE   PROCEDURE sp_PodigniFaktura
  98429.     @Godina    smallint,
  98430.     @Faktura_Br char(6)
  98431. AS
  98432. SELECT * FROM Faktura WHERE Godina_Fra=@Godina AND Faktura_Br=@Faktura_Br
  98433.  
  98434.  
  98435.  
  98436.  
  98437. Go
  98438. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifarmacevt]'))
  98439. drop procedure [dbo].[sp_podignifarmacevt]
  98440.  
  98441. Go
  98442.  
  98443. CREATE PROCEDURE sp_PodigniFarmacevt
  98444.  
  98445.     @Sifra_Farmacevt    char(6)
  98446. AS
  98447.     Select * From Farmacevt 
  98448.     Where Sifra_Farmacevt=@Sifra_Farmacevt 
  98449.  
  98450.  
  98451.  
  98452. Go
  98453. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifavtvrski_anid]'))
  98454. drop procedure [dbo].[sp_podignifavtvrski_anid]
  98455.  
  98456. Go
  98457.  
  98458. Create  PROCEDURE sp_PodigniFAvtVrski_AnID
  98459.     @AnID    int
  98460. AS
  98461.     SELECT * FROM FAvtVrski WHERE AnID = @AnID
  98462.  
  98463.  
  98464.  
  98465.  
  98466. Go
  98467. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifazi]'))
  98468. drop procedure [dbo].[sp_podignifazi]
  98469.  
  98470. Go
  98471.  
  98472. CREATE PROCEDURE sp_PodigniFazi
  98473.     @Sifra_Faza    smallint
  98474.  AS
  98475.     Select Sifra_Faza, Ime_Faza, Sifra_oe
  98476.     From Fazi
  98477.     Where Sifra_Faza=@Sifra_Faza
  98478.  
  98479.  
  98480.  
  98481. Go
  98482. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifikonta]'))
  98483. drop procedure [dbo].[sp_podignifikonta]
  98484.  
  98485. Go
  98486.  
  98487. CREATE  PROCEDURE sp_PodigniFiKonta
  98488.     @FiID    smallint
  98489. AS
  98490.     Select FK.*, T.ImeTrosM from FiKonta FK LEFT OUTER JOIN TrosokMesto T ON FK.Sifra_TrosM=T.Sifra_TrosM
  98491.     Where FK.FiID=@FiID  ORDER BY FK.FiID,FK.RbrFi
  98492.  
  98493.  
  98494.  
  98495.  
  98496. Go
  98497. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifintipdok]'))
  98498. drop procedure [dbo].[sp_podignifintipdok]
  98499.  
  98500. Go
  98501.  
  98502.  
  98503. CREATE     PROCEDURE sp_PodigniFinTipDok
  98504. AS
  98505.     SELECT Sifra_Dok, ImeDok, Sifra_Za, Dev, Vl_Izl, AnalKupDob FROM TipDok WHERE DaliMater = 'N'
  98506.            order by sifra_dok
  98507.  
  98508.  
  98509.  
  98510. Go
  98511. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifiraspredelba]'))
  98512. drop procedure [dbo].[sp_podignifiraspredelba]
  98513.  
  98514. Go
  98515.  
  98516.  
  98517.  
  98518.  
  98519.  
  98520. CREATE     PROCEDURE sp_PodigniFiRaspredelba
  98521.     @Sifra_FiRsp   smallint
  98522. AS
  98523.     SELECT F.*,  D.ImeDiv
  98524.     FROM  FiRaspredelba F
  98525.     INNER JOIN Divizii D ON F.Sifra_Div = D.Sifra_Div
  98526.     WHERE  F.Sifra_FiRsp = @Sifra_FiRsp
  98527.   IF @@ROWCOUNT = 0
  98528.       RETURN 77000
  98529.    ELSE
  98530.       RETURN 0
  98531.  
  98532.  
  98533.  
  98534.  
  98535.  
  98536. Go
  98537. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifirparal]'))
  98538. drop procedure [dbo].[sp_podignifirparal]
  98539.  
  98540. Go
  98541.  
  98542. CREATE  PROCEDURE sp_PodigniFirParal
  98543.  
  98544.     @ImeBaza    varchar(50) = Null
  98545.  
  98546. AS
  98547.     if @ImeBaza is not null
  98548.         Select * From FirParal
  98549.         where ImeBaza = @ImeBaza
  98550.     else
  98551.         Select * From FirParal
  98552.  
  98553.  
  98554.  
  98555.  
  98556. Go
  98557. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifiskprom]'))
  98558. drop procedure [dbo].[sp_podignifiskprom]
  98559.  
  98560. Go
  98561.  
  98562. CREATE   PROCEDURE sp_PodigniFiskProm
  98563.     @Sifra_Oe    smallint,
  98564.         @BrKasa         smallint,
  98565.     @Datum_dok    smalldatetime
  98566.  AS
  98567.     Select Sifra_Oe, Datum_Dok, Tar1, Tar2, Tar0, Gotovina, Cek, Kredit, Posn1, Posn2, Br_Smetki, Linii, Promet, Predadeno, Pocetno, OstVoKasa, Dr_Izlezi, Danok1, Danok2, Prenesen
  98568.     From FiskProm
  98569.     Where Sifra_Oe=@Sifra_Oe and Datum_Dok=@Datum_Dok and BrKasa = @BrKasa
  98570.  
  98571.  
  98572. Go
  98573. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifistavki]'))
  98574. drop procedure [dbo].[sp_podignifistavki]
  98575.  
  98576. Go
  98577. CREATE PROCEDURE sp_PodigniFiStavki
  98578.     @FiID    int
  98579. AS
  98580.     Select FS.*, O.ImeOrg, G.Ime_GrOrg  from FiStavki FS    
  98581.     LEFT OUTER JOIN OrgEd O ON FS.Sifra_OE = O.Sifra_OE
  98582.     LEFT OUTER JOIN GrOrg G ON FS.Sifra_GrOrg = G.Sif_GrOrg
  98583.     Where FS.FiID=@FiID  ORDER BY FS.FiID, FS.RbrFi
  98584.  
  98585.  
  98586.  
  98587. Go
  98588. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifitabela]'))
  98589. drop procedure [dbo].[sp_podignifitabela]
  98590.  
  98591. Go
  98592. CREATE  PROCEDURE sp_PodigniFiTabela
  98593.     @FiID    smallint
  98594. As
  98595.     Select FiID, RTrim(Ime) Ime, RTrim(Ime2) Ime2, Kto_Anal_Raspr, Kto_Anal, Egzaktno_KtoRaspr from FiTabela
  98596.     Where FiID = @FiID
  98597.    IF @@ROWCOUNT = 0
  98598.       RETURN 77000
  98599.    ELSE
  98600.       RETURN 0
  98601.  
  98602.  
  98603. Go
  98604. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignifizbir]'))
  98605. drop procedure [dbo].[sp_podignifizbir]
  98606.  
  98607. Go
  98608. CREATE PROCEDURE sp_PodigniFiZbir
  98609.     @FiID    smallint
  98610. AS
  98611.     Select * from FiZbir    
  98612.     Where FiID=@FiID ORDER BY FiID, RbrFi
  98613.  
  98614.  
  98615.  
  98616. Go
  98617. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigotsurorg]'))
  98618. drop procedure [dbo].[sp_podignigotsurorg]
  98619.  
  98620. Go
  98621.  
  98622.  
  98623.  
  98624. CREATE     PROCEDURE sp_PodigniGotSurOrg
  98625.     @Sifra_OE_Got    smallint
  98626. AS
  98627.     SELECT S.*, O.ImeOrg ImeOrg FROM  GotovSurovOrg S
  98628.     INNER JOIN OrgEd O ON S.Sifra_OE_Sur = O.Sifra_OE
  98629.     WHERE S.Sifra_OE_Got = @Sifra_OE_Got ORDER BY S.Reden
  98630.   IF @@ROWCOUNT = 0
  98631.       RETURN 77000
  98632.    ELSE
  98633.       RETURN 0
  98634.  
  98635.  
  98636.  
  98637. Go
  98638. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigrartdiv]'))
  98639. drop procedure [dbo].[sp_podignigrartdiv]
  98640.  
  98641. Go
  98642.  
  98643. create  procedure sp_PodigniGrArtDiv
  98644. @Sif_GrArt varchar(20) 
  98645. as
  98646. select * from GrArtDiv
  98647. where sif_grArt=@Sif_GrArt
  98648.  
  98649.  
  98650.  
  98651. Go
  98652. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigrkupdiv]'))
  98653. drop procedure [dbo].[sp_podignigrkupdiv]
  98654.  
  98655. Go
  98656. CREATE procedure sp_PodigniGrKupDiv
  98657. @Sif_GrKup varchar(20) 
  98658. as
  98659. select * from GrKupDiv
  98660. where sif_grkup=@Sif_GrKup
  98661.  
  98662.  
  98663. Go
  98664. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigrnar]'))
  98665. drop procedure [dbo].[sp_podignigrnar]
  98666.  
  98667. Go
  98668. CREATE PROCEDURE sp_PodigniGrNar
  98669.     @Sifra_GrNar    int
  98670.  AS
  98671.     Select * From GrNar
  98672.     Where Sifra_GrNar=@Sifra_GrNar
  98673.  
  98674.  
  98675.  
  98676. Go
  98677. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigrorg]'))
  98678. drop procedure [dbo].[sp_podignigrorg]
  98679.  
  98680. Go
  98681. CREATE PROCEDURE sp_PodigniGrOrg
  98682. AS
  98683.     SELECT * FROM GrOrg
  98684.  
  98685.  
  98686.  
  98687. Go
  98688. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigrorgtip]'))
  98689. drop procedure [dbo].[sp_podignigrorgtip]
  98690.  
  98691. Go
  98692.  
  98693. CREATE PROCEDURE sp_PodigniGrOrgTip
  98694.     @Sifra_GrKor  VARCHAR(20)
  98695. AS
  98696.     SELECT * FROM PrivilOrgTip WHERE Sifra_GrKor =@Sifra_GrKor 
  98697. RETURN @@Error
  98698.  
  98699.  
  98700.  
  98701. Go
  98702. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigrpat]'))
  98703. drop procedure [dbo].[sp_podignigrpat]
  98704.  
  98705. Go
  98706. CREATE PROCEDURE sp_PodigniGrPat
  98707. AS
  98708.     SELECT * FROM GrPat
  98709.  
  98710.  
  98711. Go
  98712. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigrpmarza]'))
  98713. drop procedure [dbo].[sp_podignigrpmarza]
  98714.  
  98715. Go
  98716.  
  98717.  
  98718. CREATE   PROCEDURE sp_PodigniGrpMarza
  98719.     @Grupa_Marza    smallint
  98720. AS
  98721.     CREATE TABLE #TmpM
  98722.     (Grupa_Marza smallint, 
  98723.     Ime_GrM varchar(30), 
  98724.     Sif_GrOrg char(6),
  98725.     Proc_Marza decimal(9,2))
  98726.     INSERT INTO #TmpM
  98727.     Select Top 1 Grupa_Marza, Ime_GrM, Sif_GrOrg,Proc_Marza From GrpMarza 
  98728.     Where Grupa_Marza=@Grupa_Marza
  98729.     IF @@ROWCOUNT=0 AND @Grupa_Marza>0
  98730.     INSERT INTO #TmpM VALUES (@Grupa_Marza, '', '',0)
  98731.     SELECT * FROM #TmpM
  98732.  
  98733.  
  98734.  
  98735. Go
  98736. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigsostav]'))
  98737. drop procedure [dbo].[sp_podignigsostav]
  98738.  
  98739. Go
  98740.  
  98741. CREATE     PROCEDURE sp_PodigniGSostav
  98742.     @Sif_GrOrg    char(6),
  98743.     @Sifra_Art    varchar(20)
  98744. AS
  98745.     SELECT S.*,  SU.ImeArt ImeSur, SU.EdMera FROM  GSostav S
  98746.     INNER JOIN KatArt  SU ON S.Sifra_Sur = SU.Sifra_Art
  98747.     WHERE S.Sif_GrOrg = @Sif_GrOrg AND S.Sifra_Art = @Sifra_Art
  98748.   IF @@ROWCOUNT = 0
  98749.       RETURN 77000
  98750.    ELSE
  98751.       RETURN 0
  98752.  
  98753.  
  98754.  
  98755. Go
  98756. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigst_kto_oe_odk]'))
  98757. drop procedure [dbo].[sp_podignigst_kto_oe_odk]
  98758.  
  98759. Go
  98760.  
  98761.  
  98762.  
  98763.  
  98764. CREATE    PROCEDURE  sp_PodigniGSt_Kto_Oe_Odk
  98765.     @Sifra_Nal    Smallint,
  98766.     @Broj_Nal    Int,
  98767.     @Kto_Anal    char(10),
  98768.     @Sifra_oe       smallint,
  98769.     @OdKade         char (1),
  98770.     @DaliDev        char (1),
  98771.     @DP             char (1),
  98772.     @KojaVal        char (3),
  98773.     @Sifra_Div        smallint = NULL
  98774. AS
  98775. IF @Sifra_Div IS NULL
  98776. BEGIN
  98777.     IF @DaliDev = 'D' and @DP = 'D'
  98778.         SELECT GStID FROM GStav 
  98779.         WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_Nal And Kto_anal = @Kto_Anal
  98780.         and Sifra_oe = @Sifra_oe and OdKade = @OdKade and KojaVal = @KojaVal and Dolzi <> 0
  98781.     ELSE IF @DaliDev = 'D' and @DP = 'P'
  98782.         SELECT GStID FROM GStav 
  98783.         WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_Nal And Kto_anal = @Kto_Anal
  98784.         and Sifra_oe = @Sifra_oe and OdKade = @OdKade and KojaVal = @KojaVal and Pobaruva <> 0
  98785.     ELSE
  98786.         SELECT GStID FROM GStav 
  98787.         WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_Nal And Kto_anal = @Kto_Anal
  98788.         and Sifra_oe = @Sifra_oe and OdKade = @OdKade
  98789. END
  98790. ELSE    
  98791. BEGIN
  98792.     IF @DaliDev = 'D' and @DP = 'D'
  98793.         SELECT GStID FROM GStav 
  98794.         WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_Nal And Kto_anal = @Kto_Anal
  98795.         and Sifra_oe = @Sifra_oe and OdKade = @OdKade and KojaVal = @KojaVal and Dolzi <> 0 AND Sifra_Div=@Sifra_Div
  98796.     ELSE IF @DaliDev = 'D' and @DP = 'P'
  98797.         SELECT GStID FROM GStav 
  98798.         WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_Nal And Kto_anal = @Kto_Anal
  98799.         and Sifra_oe = @Sifra_oe and OdKade = @OdKade and KojaVal = @KojaVal and Pobaruva <> 0 AND Sifra_Div=@Sifra_Div
  98800.     ELSE
  98801.         SELECT GStID FROM GStav 
  98802.         WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_Nal And Kto_anal = @Kto_Anal
  98803.         and Sifra_oe = @Sifra_oe and OdKade = @OdKade AND Sifra_Div=@Sifra_Div
  98804. END
  98805.  
  98806.  
  98807.  
  98808.  
  98809. Go
  98810. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigstandiv]'))
  98811. drop procedure [dbo].[sp_podignigstandiv]
  98812.  
  98813. Go
  98814.  
  98815.  
  98816.  
  98817.  
  98818. CREATE    PROCEDURE sp_PodigniGstAnDiv
  98819.     @GStId int,
  98820.     @AnId int
  98821. AS
  98822.     if @GstID is not null and @AnId is not null
  98823.         select GD.*, D.ImeDiv, TM.ImeTrosM, TV.ImeTrosV, T4.Ime4Tros
  98824.         from GstAnDiv GD
  98825.         left outer join Divizii D ON GD.Sifra_Div=D.Sifra_Div
  98826.         left outer join TrosokMesto TM ON GD.Sifra_TrosM=TM.Sifra_TrosM
  98827.         left outer join TrosokVid TV ON GD.Sifra_TrosV=TV.Sifra_TrosV
  98828.         left outer join Trosok4Tip T4 ON GD.Sifra_4Tros = T4.Sifra_4Tros
  98829.         where GD.GStId = @GstID and GD.AnId = @AnID
  98830.     else if @GstId is not null
  98831.         select GD.*, D.ImeDiv, TM.ImeTrosM, TV.ImeTrosV, T4.Ime4Tros
  98832.         from GstAnDiv GD
  98833.         left outer join Divizii D ON GD.Sifra_Div=D.Sifra_Div
  98834.         left outer join TrosokMesto TM ON GD.Sifra_TrosM=TM.Sifra_TrosM
  98835.         left outer join TrosokVid TV ON GD.Sifra_TrosV=TV.Sifra_TrosV
  98836.         left outer join Trosok4Tip T4 ON GD.Sifra_4Tros = T4.Sifra_4Tros
  98837.         where GD.GstId = @GstId
  98838.  
  98839.  
  98840.  
  98841. Go
  98842. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigstav]'))
  98843. drop procedure [dbo].[sp_podignigstav]
  98844.  
  98845. Go
  98846.  
  98847. CREATE    PROCEDURE sp_PodigniGStav
  98848.     @GStID  int
  98849. AS
  98850.     SELECT G.*, A.ImeAnal, O.ImeOrg
  98851.     FROM GStav G
  98852.     INNER JOIN Anal A ON G.Kto_Anal = A.Kto_Anal
  98853.     LEFT OUTER JOIN OrgEd O ON G.Sifra_Oe = O.Sifra_OE
  98854.     WHERE GStID = @GStID
  98855.    IF @@ERROR=0
  98856.       IF @@ROWCOUNT=1
  98857.          RETURN 0
  98858.       ELSE
  98859.          RETURN 77000
  98860.    ELSE
  98861.       RETURN @@ERROR
  98862.  
  98863.  
  98864.  
  98865. Go
  98866. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigstavsokto]'))
  98867. drop procedure [dbo].[sp_podignigstavsokto]
  98868.  
  98869. Go
  98870. CREATE    PROCEDURE  sp_PodigniGStavSoKto
  98871.     @Sifra_Nal    Smallint,
  98872.     @Broj_Nal    Int,
  98873.     @Kto_Anal    char(10),
  98874.     @KojaVal    char(3) = NULL,
  98875.     @Sifra_OE    smallint = NULL,
  98876.     @OdKade    char(1) = NULL
  98877. AS
  98878.     Declare @SSQL varchar(1000)
  98879.     SET @SSQL = 'SELECT TOP 1 GStID FROM GStav 
  98880.     WHERE Sifra_Nal = ' + cast(@Sifra_Nal as varchar(6)) + ' and Broj_Nal = ' + cast(@Broj_Nal as varchar(9)) +
  98881.     ' And Kto_anal = ' + @Kto_Anal
  98882.     If @KojaVal IS NOT NULL
  98883.         SET @SSQL = @SSQL + ' AND KojaVal = ' + @KojaVal
  98884.     If @Sifra_OE IS NOT NULL
  98885.         SET @SSQL = @SSQL + ' AND Sifra_OE = ' + cast(@Sifra_OE as varchar(5))
  98886.     If @OdKade IS NOT NULL
  98887.         SET @SSQL = @SSQL + ' AND OdKade = ''' + @OdKade +''' '
  98888.     EXEC(@SSQL)
  98889.  
  98890.  
  98891.  
  98892. Go
  98893. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignigstavsovrska]'))
  98894. drop procedure [dbo].[sp_podignigstavsovrska]
  98895.  
  98896. Go
  98897.  
  98898.  
  98899. CREATE    PROCEDURE  sp_PodigniGStavSoVrska
  98900.     @Sifra_Nal    Smallint,
  98901.     @Broj_Nal    Int,
  98902.     @Kto_Anal    char(10),
  98903.     @KojaVal    char(3) = NULL,
  98904.     @Sifra_OE    smallint = NULL,
  98905.     @OdKade    char(1) = NULL,
  98906.     @DP        char(1),
  98907.     @DokrID    int,
  98908.     @BrStavki    smallint OUTPUT,
  98909.     @GStID         int OUTPUT, 
  98910.     @Dolzi        decimal(18,6) OUTPUT,
  98911.     @Pobaruva    decimal(18,6) OUTPUT
  98912. AS
  98913.     CREATE  TABLE #TmpGStID
  98914. (    GStID    int,
  98915.     Dolzi    decimal(18,6),
  98916.     Pobaruva decimal(18,6)
  98917. )
  98918.     Declare @SSQL varchar(1000)
  98919.     SET @SSQL = 'SELECT V.GStID, V.Dolzi, V.Pobaruva FROM FAvtVrski V INNER JOIN GStav G ON V.GStID = G.GStID
  98920.     WHERE V.DokrID = ' + Cast(@DokrID as varchar(9)) + ' AND G.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(6)) + 
  98921.     ' and G.Broj_Nal = ' + cast(@Broj_Nal as varchar(9)) + ' And G.Kto_Anal = ' + @Kto_Anal 
  98922.     IF @DP = 'D'
  98923.         SET @SSQL = @SSQL + ' AND V.Dolzi <> 0 '
  98924.     IF @DP = 'P'
  98925.         SET @SSQL = @SSQL + ' AND V.Pobaruva <> 0 '
  98926.     If @KojaVal IS NOT NULL
  98927.         SET @SSQL = @SSQL + ' AND G.KojaVal = ' + @KojaVal
  98928.     If @Sifra_OE IS NOT NULL
  98929.         SET @SSQL = @SSQL + ' AND G.Sifra_OE = ' + cast(@Sifra_OE as varchar(5))
  98930.     Else
  98931.         SET @SSQL = @SSQL + ' AND G.Sifra_OE IS NULL ' 
  98932.     If @OdKade IS NOT NULL
  98933.         SET @SSQL = @SSQL + ' AND G.OdKade = ''' + @OdKade +''' '
  98934.     INSERT INTO #TmpGStID EXEC(@SSQL)
  98935.     SELECT @GStID = GStID, @Dolzi=Dolzi, @Pobaruva=Pobaruva FROM #TmpGStID
  98936.     SELECT @BrStavki = Count(*) FROM #TmpGStID
  98937.  
  98938.  
  98939.  
  98940. Go
  98941. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignihilzni]'))
  98942. drop procedure [dbo].[sp_podignihilzni]
  98943.  
  98944. Go
  98945.  
  98946. CREATE PROCEDURE sp_PodigniHilzni
  98947.     @Sifra_Hilzna smallint
  98948. AS
  98949.     Select Sifra_Hilzna, Ime_Hilzna, Tezina_Hilzna, Sirina_Hilzna, Precnik_Hilzna, Aktivna
  98950.     From Hilzni
  98951.     Where Sifra_Hilzna=@Sifra_Hilzna
  98952.  
  98953.  
  98954.  
  98955. Go
  98956. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniinvpopis]'))
  98957. drop procedure [dbo].[sp_podigniinvpopis]
  98958.  
  98959. Go
  98960. CREATE PROCEDURE sp_PodigniInvPopis
  98961.     @Sifra_Oe    smallint = Null,
  98962.     @BrojInvP    int = Null
  98963.  AS
  98964.     Select Sifra_Oe, BrojInvP, Datum_InvP, Sifra_Kup, Sifra_Obj, Sifra_Mest, Popis 
  98965.     From InvPopis
  98966.     Where Sifra_Oe=@Sifra_Oe and  BrojInvP= @BrojInvP
  98967.  
  98968.  
  98969. Go
  98970. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikarakterist]'))
  98971. drop procedure [dbo].[sp_podignikarakterist]
  98972.  
  98973. Go
  98974. CREATE PROCEDURE sp_PodigniKarakterist
  98975.     @Sifra_Karakt    smallint
  98976. AS
  98977.     SELECT Sifra_Karakt, ImeKarakt FROM Karakterist
  98978.     WHERE Sifra_Karakt = @Sifra_Karakt
  98979.  
  98980.  
  98981.  
  98982. Go
  98983. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikartdepoz]'))
  98984. drop procedure [dbo].[sp_podignikartdepoz]
  98985.  
  98986. Go
  98987. CREATE  PROCEDURE sp_PodigniKartDepoz
  98988.     @Broj_Depoz int
  98989. AS
  98990.     SELECT * FROM KartDepoz WHERE Broj_Depoz = @Broj_Depoz
  98991.  
  98992.  
  98993.  
  98994. Go
  98995. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikartkor]'))
  98996. drop procedure [dbo].[sp_podignikartkor]
  98997.  
  98998. Go
  98999. CREATE  PROCEDURE sp_PodigniKartKor
  99000.     @Sifra_Oe    smallint,
  99001.     @Sifra_Kor    varchar(20)
  99002. AS
  99003.     Select K.*, Kom.ImeKup, Tip.ImeKartKor from  KartKor K
  99004.     left outer join Komint Kom on Kom.Sifra_Kup = K.Sifra_Kup
  99005.     left outer join TipKartKor Tip on Tip.Sifra_TipKartKor = K.Sifra_TipKartKor
  99006.     Where Sifra_Oe = @Sifra_Oe and Sifra_Kor = @Sifra_Kor
  99007.     Return @@ERROR
  99008.  
  99009.  
  99010.  
  99011.  
  99012. Go
  99013. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikartkordetali]'))
  99014. drop procedure [dbo].[sp_podignikartkordetali]
  99015.  
  99016. Go
  99017.  
  99018.  
  99019. create  PROCEDURE sp_PodigniKartKorDetali
  99020.  
  99021.     @Sifra_Kor    varchar(20)
  99022. AS
  99023.     Select * from  KartKorDetali KD
  99024.     Where  Sifra_Kor = @Sifra_Kor 
  99025.     Return @@ERROR
  99026.  
  99027.  
  99028.  
  99029.  
  99030. Go
  99031. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikartprom]'))
  99032. drop procedure [dbo].[sp_podignikartprom]
  99033.  
  99034. Go
  99035. CREATE PROCEDURE sp_PodigniKartProm
  99036.     @Sifra_Mark    smallint,
  99037.     @Sifra_Oe    smallint,
  99038.     @Broj_ska    int,
  99039.     @Sifra_Kor    varchar(20),
  99040.     @Sifra_Nac    smallint,
  99041.     @Datum_Ska    smalldatetime
  99042. AS
  99043.     Select * From KartProm
  99044.     Where Sifra_Mark=@Sifra_Mark and Sifra_Oe=@Sifra_Oe and Broj_ska=@Broj_Ska and Sifra_Kor=@Sifra_Kor and Sifra_Nac=@Sifra_Nac and Datum_Ska=@Datum_Ska
  99045.     Return @@ERROR
  99046.  
  99047.  
  99048.  
  99049. Go
  99050. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikartprom_zaupl]'))
  99051. drop procedure [dbo].[sp_podignikartprom_zaupl]
  99052.  
  99053. Go
  99054.  
  99055. CREATE PROCEDURE sp_PodigniKartProm_ZaUpl
  99056.     @Sifra_Mark    smallint,
  99057.     @Sifra_Oe    smallint,
  99058.     @Broj_ska    int,
  99059.     @Sifra_Nac    smallint,
  99060.     @FraUpl        char (1)
  99061. AS
  99062.     Select Prom.*, Kor.ImeKor From KartProm Prom
  99063.     Left Outer Join KartKor Kor
  99064.     On Prom.Sifra_Kor = Kor.Sifra_kor
  99065.     Where Sifra_Mark=@Sifra_Mark and Prom.Sifra_Oe=@Sifra_Oe and Broj_ska=@Broj_Ska 
  99066.               and Sifra_Nac=@Sifra_Nac and FraUpl=@FraUpl
  99067. --Nema da vazzi ako ima razliccni Org.Ed vo KartKor (Z-Vane)
  99068.     Return @@ERROR
  99069.  
  99070.  
  99071.  
  99072. Go
  99073. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikasdnevn]'))
  99074. drop procedure [dbo].[sp_podignikasdnevn]
  99075.  
  99076. Go
  99077. CREATE PROCEDURE sp_PodigniKasDnevn
  99078.     @Sifra_Nal    smallint,
  99079.     @Broj_Nal    int    
  99080.  AS
  99081.     SELECT DnID, Sifra_Nal, Broj_Nal, Datum_Nal, Datum_Vnes, Datum_Knz, Sts_Kniz, Sifra_Oper
  99082.     FROM KasDnevn
  99083.     WHERE Sifra_Nal=@Sifra_Nal and Broj_Nal=@Broj_Nal
  99084.  
  99085.  
  99086.  
  99087. Go
  99088. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikasstav]'))
  99089. drop procedure [dbo].[sp_podignikasstav]
  99090.  
  99091. Go
  99092.  
  99093.  
  99094.  
  99095.  
  99096. CREATE     PROCEDURE sp_PodigniKasStav
  99097.     @Broj_dok    int,
  99098.     @Sifra_Nal    smallint,
  99099.     @P_I        char(1)
  99100. AS
  99101.     SELECT K.*, A.ImeAnal, A.DaliKupuv, A.DevZatvDen, F.Sifra_Pat
  99102.     FROM KasStav K
  99103.     LEFT OUTER JOIN Anal A ON K.Kto_Anal = A.Kto_Anal
  99104.     LEFT OUTER JOIN AnFinDok F ON K.AnID=F.AnID
  99105.     WHERE K.Sifra_Nal=@Sifra_Nal and K.Broj_Dok=@Broj_Dok and K.P_I=@P_I
  99106.  
  99107.  
  99108.  
  99109.  
  99110.  
  99111. Go
  99112. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikasstav1]'))
  99113. drop procedure [dbo].[sp_podignikasstav1]
  99114.  
  99115. Go
  99116.  
  99117.  
  99118.  
  99119. CREATE    PROCEDURE sp_PodigniKasStav1
  99120.     @Sifra_Nal    smallint,
  99121.     @Broj_Nal    int
  99122. AS
  99123.     SELECT K.*, A.DaliKupuv,A.ImeAnal
  99124.     FROM KasStav K
  99125.     LEFT OUTER JOIN Anal A ON K.Kto_Anal = A.Kto_Anal
  99126.     WHERE Sifra_Nal=@Sifra_Nal and Broj_Nal=@Broj_Nal 
  99127.     ORDER BY K.KStaID
  99128.  
  99129.  
  99130.  
  99131. Go
  99132. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikasstav4]'))
  99133. drop procedure [dbo].[sp_podignikasstav4]
  99134.  
  99135. Go
  99136.  
  99137.  
  99138.  
  99139. CREATE    PROCEDURE sp_PodigniKasStav4
  99140.     @Broj_dok    int,
  99141.     @Sifra_Nal    smallint,
  99142.     @P_I        char(1),
  99143.     @TipBlag    char(3)
  99144. AS
  99145.     SELECT K.*, A.ImeAnal, A.DaliKupuv
  99146.     FROM KasStav K
  99147.     LEFT OUTER JOIN Anal A ON K.Kto_Anal = A.Kto_Anal
  99148.     WHERE Sifra_Nal=@Sifra_Nal and Broj_Dok=@Broj_Dok and P_I=@P_I AND TipBlag=@TipBlag
  99149.  
  99150.  
  99151.  
  99152. Go
  99153. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikasstavdetal]'))
  99154. drop procedure [dbo].[sp_podignikasstavdetal]
  99155.  
  99156. Go
  99157.  
  99158.  
  99159. CREATE    PROCEDURE sp_PodigniKasStavDetal
  99160.     @KStaID    int
  99161. AS
  99162.      Select C.*, K.ImeAnal From KasStavDetal C
  99163.          LEFT OUTER JOIN Anal K ON C.Kto_Anal = K.Kto_Anal
  99164.          Where KStaID = @KStaID
  99165.  
  99166.  
  99167. Go
  99168. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikasstavsodokrid]'))
  99169. drop procedure [dbo].[sp_podignikasstavsodokrid]
  99170.  
  99171. Go
  99172. CREATE PROCEDURE sp_PodigniKasStavSoDokrID
  99173.     @DokrID    int
  99174. AS
  99175.     SELECT * FROM KasStav WHERE DokrID=@DokrID
  99176.  
  99177.  
  99178. Go
  99179. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatartoem]'))
  99180. drop procedure [dbo].[sp_podignikatartoem]
  99181.  
  99182. Go
  99183.  
  99184. create PROCEDURE sp_PodigniKatartOEM
  99185.     @Sifra_Art    varchar(20)
  99186.  
  99187. AS
  99188.  
  99189.     Select S.*
  99190.     From KatartOEM S
  99191.     Where S.Sifra_Art = @Sifra_Art
  99192.     Order By S.RbrOEM
  99193.  
  99194.  
  99195.  
  99196.  
  99197. Go
  99198. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatasortlisti]'))
  99199. drop procedure [dbo].[sp_podignikatasortlisti]
  99200.  
  99201. Go
  99202.  
  99203. CREATE       PROCEDURE sp_PodigniKatAsortListi
  99204.     @Broj_ALista    smallint,
  99205.     @KatAsortPoSto char(5)
  99206. AS
  99207.     Declare @SSQL varchar(2000)
  99208. SET @SSQL='SELECT L.*'
  99209. IF Substring(@KatAsortPoSto,1,1)='D'
  99210.     SET @SSQL = @SSQL +', K.ImeKup Ime1' 
  99211. ELSE IF Substring(@KatAsortPoSto,1,1)='G'
  99212.     SET @SSQL = @SSQL +', G.Ime_Gr Ime1' 
  99213. ELSE IF Substring(@KatAsortPoSto,1,1)='2'
  99214.     SET @SSQL = @SSQL +', D.Ime_2 Ime1' 
  99215. ELSE IF Substring(@KatAsortPoSto,1,1)='4'
  99216.     SET @SSQL = @SSQL +', D.Ime_4 Ime1' 
  99217. ELSE IF Substring(@KatAsortPoSto,1,1)='H'
  99218.     SET @SSQL = @SSQL +', D.Ime_KHier Ime1' 
  99219. ELSE
  99220.     SET @SSQL = @SSQL +', '''' Ime1' 
  99221. IF Substring(@KatAsortPoSto,2,1)='P'
  99222.     SET @SSQL = @SSQL +', P.Ime_Podg Ime2' 
  99223. ELSE
  99224.     SET @SSQL = @SSQL +', '''' Ime2' 
  99225. SET @SSQL = @SSQL +' FROM KatAsortLista L '
  99226. IF Substring(@KatAsortPoSto,1,1)='D'
  99227.     SET @SSQL = @SSQL +' INNER JOIN Komint K ON L.Sifra1=K.Sifra_Kup ' 
  99228. ELSE IF Substring(@KatAsortPoSto,1,1)='G'
  99229.     SET @SSQL = @SSQL +' INNER JOIN Grupi G ON L.Sifra1=G.Sifra_Gr ' 
  99230. ELSE IF Substring(@KatAsortPoSto,1,1)='2'
  99231.     SET @SSQL = @SSQL +' INNER JOIN Drugo2 D ON L.Sifra1=D.Sifra_2 ' 
  99232. ELSE IF Substring(@KatAsortPoSto,1,1)='4'
  99233.     SET @SSQL = @SSQL +' INNER JOIN Drugo4 D ON L.Sifra1=D.Sifra_4 ' 
  99234. ELSE IF Substring(@KatAsortPoSto,1,1)='H'
  99235.     SET @SSQL = @SSQL +' INNER JOIN KatHier D ON L.Sifra1=D.Sifra_KHier ' 
  99236. IF Substring(@KatAsortPoSto,2,1)='P'
  99237.     SET @SSQL = @SSQL +' LEFT OUTER JOIN Podgrupi P ON L.Sifra2=P.Sifra_Podg' 
  99238. SET @SSQL = @SSQL +' WHERE Broj_ALista=' + cast(@Broj_ALista as varchar(10)) + ' ORDER BY L.Reden_broj'
  99239. EXEC (@SSQL)
  99240.  
  99241.  
  99242.  
  99243. Go
  99244. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatkarakt]'))
  99245. drop procedure [dbo].[sp_podignikatkarakt]
  99246.  
  99247. Go
  99248. CREATE PROCEDURE sp_PodigniKatKarakt
  99249.     @Sifra_Art    VARCHAR(20)
  99250. AS
  99251.     SELECT * FROM KatKarakt WHERE Sifra_Art = @Sifra_Art
  99252.  
  99253.  
  99254.  
  99255. Go
  99256. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatlisti]'))
  99257. drop procedure [dbo].[sp_podignikatlisti]
  99258.  
  99259. Go
  99260.  
  99261.  
  99262. CREATE   PROCEDURE sp_PodigniKatListi
  99263.     @Broj_Lista    smallint
  99264. AS
  99265. SELECT L.*, K.ImeArt FROM KatListi L INNER JOIN KatArt K ON L.SIfra_Art=K.Sifra_Art 
  99266. WHERE Broj_Lista=@Broj_Lista ORDER BY L.Reden_broj
  99267.  
  99268.  
  99269.  
  99270. Go
  99271. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatlokprom]'))
  99272. drop procedure [dbo].[sp_podignikatlokprom]
  99273.  
  99274. Go
  99275. CREATE   PROCEDURE sp_PodigniKatLokProm
  99276.     @Sifra_Art    char(6)
  99277. AS
  99278.     SELECT K.* 
  99279.     FROM KatLokProm K
  99280.     WHERE Sifra_Art=@Sifra_Art
  99281.         ORDER BY DATUM_PROM
  99282.  
  99283.  
  99284.  
  99285. Go
  99286. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatpakuv]'))
  99287. drop procedure [dbo].[sp_podignikatpakuv]
  99288.  
  99289. Go
  99290. CREATE PROCEDURE sp_PodigniKatPakuv
  99291.     @Sifra_Art        varchar(    20),
  99292.     @Sifra_KatPak        smallint
  99293.  AS
  99294.     Select * From KatPakuv 
  99295.     Where Sifra_Art=@Sifra_Art And Sifra_KatPak=@Sifra_KatPak
  99296.  
  99297.  
  99298. Go
  99299. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatpakuv_pak_nom]'))
  99300. drop procedure [dbo].[sp_podignikatpakuv_pak_nom]
  99301.  
  99302. Go
  99303.  
  99304.  
  99305. CREATE   PROCEDURE sp_PodigniKatPakuv_Pak_Nom
  99306.     @Sifra_KatPak        smallint,
  99307.     @Sifra_KatPak4        smallint,
  99308.         @Nom_Pakuv        varchar (50),
  99309.     @Sifra_Art        varchar(20) OUTPUT,
  99310.     @Nom_Pomalo        varchar(50) OUTPUT,
  99311.     @Sodrzi_Kolic        decimal (18, 6) OUTPUT,
  99312.         @TipKutija        smallint OUTPUT
  99313.  AS
  99314.     Select @TipKutija = Sifra_KatPak, @Sifra_Art = Sifra_Art, @Nom_Pomalo = Nom_Pomalo, @Sodrzi_Kolic = Sodrzi_Kolic
  99315.     From KatPakuv 
  99316.     Where (Sifra_KatPak = @Sifra_KatPak Or Sifra_KatPak = @Sifra_KatPak4) And Nom_Pakuv = @Nom_Pakuv
  99317.  
  99318.  
  99319.  
  99320. Go
  99321. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatpakuvzaart]'))
  99322. drop procedure [dbo].[sp_podignikatpakuvzaart]
  99323.  
  99324. Go
  99325.  
  99326.  
  99327. CREATE PROCEDURE sp_PodigniKatPakuvZaArt
  99328.     @Sifra_Art    varchar (20)
  99329. AS
  99330. SELECT KP.*, K.ImeArt 
  99331. FROM KatPakuv KP
  99332. inner join Katart K
  99333. on KP.Sifra_Art = K.Sifra_Art
  99334. WHERE KP.Sifra_Art = @Sifra_Art
  99335.  
  99336.  
  99337.  
  99338. Go
  99339. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatpakuvzaartoddok]'))
  99340. drop procedure [dbo].[sp_podignikatpakuvzaartoddok]
  99341.  
  99342. Go
  99343.  
  99344.  
  99345. CREATE   PROCEDURE sp_PodigniKatPakuvZaArtOdDok
  99346.     @Sifra_OE    smallint,
  99347.     @Sifra_Dok    smallint,
  99348.     @Broj_Dok    int
  99349. AS
  99350. SELECT KP.*, K.ImeArt FROM KatPakuv KP
  99351. inner join Katart K
  99352. on KP.Sifra_Art = K.Sifra_Art
  99353. WHERE KP.Sifra_Art IN 
  99354. (SELECT DISTINCT Sifra_Art FROM Stavr 
  99355. WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok GROUP BY Sifra_Art)
  99356.  
  99357.  
  99358.  
  99359. Go
  99360. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatprior_vidobj]'))
  99361. drop procedure [dbo].[sp_podignikatprior_vidobj]
  99362.  
  99363. Go
  99364. CREATE PROCEDURE sp_PodigniKatPrior_VidObj
  99365.     @Sifra_Art    varchar(20)
  99366. AS
  99367.     Select Sifra_Art, Sifra_VPJ
  99368.     From KatPrior_VidObj
  99369.     Where Sifra_Art=@Sifra_Art
  99370.  
  99371.  
  99372. Go
  99373. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatserbr]'))
  99374. drop procedure [dbo].[sp_podignikatserbr]
  99375.  
  99376. Go
  99377.  
  99378. CREATE     PROCEDURE sp_PodigniKatSerBr
  99379.     @KontrSer    varchar(25)
  99380. AS
  99381.     Select S.*, K.ImeArt, K.EdMera 
  99382.     From KatSerBr S
  99383.     Left outer join Katart K 
  99384.         on S.Sifra_Art = K.Sifra_Art
  99385.     Where S.KontrSer = @KontrSer
  99386.  
  99387.  
  99388.  
  99389. Go
  99390. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatserbranaliza]'))
  99391. drop procedure [dbo].[sp_podignikatserbranaliza]
  99392.  
  99393. Go
  99394. CREATE PROCEDURE sp_PodigniKatSerBrAnaliza
  99395.     @KontrSer    varchar(25)
  99396. AS
  99397.     Select * From KatSerBrAnaliza 
  99398.     Where KontrSer=@KontrSer
  99399.     Return @@ERROR
  99400.  
  99401.  
  99402. Go
  99403. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatserbrsta]'))
  99404. drop procedure [dbo].[sp_podignikatserbrsta]
  99405.  
  99406. Go
  99407.  
  99408. CREATE  PROCEDURE sp_PodigniKatSerBrSta
  99409.     @KontrSer    varchar(25)
  99410. AS
  99411.     Select * From KatSerBrSta 
  99412.     Where KontrSer=@KontrSer
  99413.     Order by Rbr
  99414.     Return @@ERROR
  99415.  
  99416.  
  99417.  
  99418. Go
  99419. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatserklas]'))
  99420. drop procedure [dbo].[sp_podignikatserklas]
  99421.  
  99422. Go
  99423.  
  99424.  
  99425.  
  99426. CREATE   PROCEDURE sp_PodigniKatSerKlas
  99427.     @Sifra_Art    varchar(20),
  99428.     @KontrSer    varchar(30)
  99429.  
  99430. AS
  99431.  
  99432.     select K.*, D3.Ime_3
  99433.     from KatSerKlas K
  99434.     left outer join Drugo3 D3
  99435.         on K.SIfra_3 = D3.SifrA_3
  99436.     Where Sifra_Art = @Sifra_Art and KontrSer = @KontrSer 
  99437.  
  99438.     Return @@ERROR
  99439.  
  99440.  
  99441.  
  99442.  
  99443.  
  99444.  
  99445.  
  99446. Go
  99447. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatsliki]'))
  99448. drop procedure [dbo].[sp_podignikatsliki]
  99449.  
  99450. Go
  99451. CREATE PROCEDURE [dbo].[sp_PodigniKatSliki]
  99452.     @Sifra_Art    varchar(20)
  99453. AS
  99454.     Select Sifra_Art, SlikaArt, ImeFile, VerSlika
  99455.     From KatSliki
  99456.     Where Sifra_Art=@Sifra_Art 
  99457.  
  99458.     Return @@ERROR
  99459.  
  99460.  
  99461.  
  99462.  
  99463. Go
  99464. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatspecpakzaart]'))
  99465. drop procedure [dbo].[sp_podignikatspecpakzaart]
  99466.  
  99467. Go
  99468.  
  99469.  
  99470.  
  99471. CREATE     PROCEDURE sp_PodigniKatSpecPakZaArt
  99472.     @Sifra_art    varchar(20)
  99473.  AS
  99474.     Select K.Sifra_art, K.Vid_Pakuv, K.Sifra_TipMat, K.Opis_Komp, K.TEzina, T.ImeTipMat, K.Datum 
  99475.         from KatSpecPakuv K
  99476.         left outer join KatSpecTipMat T on T.Sifra_TipMat=K.Sifra_TipMat
  99477.         where Sifra_Art=@Sifra_art
  99478.  
  99479.  
  99480.  
  99481.  
  99482.  
  99483. Go
  99484. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatspectipmat]'))
  99485. drop procedure [dbo].[sp_podignikatspectipmat]
  99486.  
  99487. Go
  99488.  
  99489. create  PROCEDURE sp_PodigniKatSpecTipMat
  99490.     @Sifra_TipMat        smallint
  99491.  AS
  99492.     Select * From KatSpecTipMat
  99493.     Where Sifra_TipMat=@Sifra_TipMat
  99494.  
  99495.  
  99496.  
  99497. Go
  99498. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikatvelicboja]'))
  99499. drop procedure [dbo].[sp_podignikatvelicboja]
  99500.  
  99501. Go
  99502.  
  99503. CREATE  PROCEDURE sp_PodigniKatVelicBoja
  99504.     @Sifra_Art        varchar(20)
  99505. AS
  99506. SELECT K.* FROM KatVelicBoja K  WHERE Sifra_Art=@Sifra_Art
  99507.  
  99508.  
  99509. Go
  99510. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikbanki]'))
  99511. drop procedure [dbo].[sp_podignikbanki]
  99512.  
  99513. Go
  99514. CREATE PROCEDURE sp_PodigniKBanki
  99515.     @Sifra_Kup    char(6),
  99516.     @RbrBan    smallint
  99517.  AS
  99518.     Select KB.Sifra_Kup, KB.RbrBan, KB.ZiroSka, KB.Sifra_Ban, K.ImeKup, KB.ImeKor
  99519.     From KBanki KB
  99520.     Inner Join Komint K On K.Sifra_Kup = KB.Sifra_Kup
  99521.     Where KB.Sifra_Kup=@Sifra_Kup and KB.RbrBan=@RbrBan
  99522.  
  99523.  
  99524.  
  99525. Go
  99526. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikbankisite]'))
  99527. drop procedure [dbo].[sp_podignikbankisite]
  99528.  
  99529. Go
  99530.  
  99531. CREATE    PROCEDURE sp_PodigniKBankiSite
  99532.     @Sifra_Kup    char(6)
  99533.  AS
  99534.     Select Sifra_Kup, RbrBan, K.Sifra_Ban, ZiroSka, B.ImeBanka, K.ImeKor
  99535.     From KBanki K, Banki B
  99536.     Where Sifra_Kup=@Sifra_Kup and K.Sifra_Ban = B.Sifra_Ban
  99537.     Order by RbrBan
  99538.  
  99539.  
  99540.  
  99541.  
  99542. Go
  99543. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniklista]'))
  99544. drop procedure [dbo].[sp_podigniklista]
  99545.  
  99546. Go
  99547. CREATE PROCEDURE sp_PodigniKlista
  99548.     @Broj        int
  99549. AS
  99550.     Select Broj, Datum_Kam, Iznos, Datum_Fakt, Rok_Dosp, Identif_Br, Ekster, AnID1, AnID2
  99551.     From KLista
  99552.     Where Broj=@Broj
  99553.  
  99554.  
  99555. Go
  99556. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniklistad]'))
  99557. drop procedure [dbo].[sp_podigniklistad]
  99558.  
  99559. Go
  99560. CREATE PROCEDURE sp_PodigniKlistaD
  99561.     @Broj        int
  99562. AS
  99563.     Select Broj, Sifra_Kup, Opis, Datum_Kli, Datum_Vnes, Oper_Vnes, Datum_Izm, Oper_Izm
  99564.     From KlistaD
  99565.     Where Broj=@Broj
  99566.  
  99567.  
  99568.  
  99569. Go
  99570. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniklucsprometadh]'))
  99571. drop procedure [dbo].[sp_podigniklucsprometadh]
  99572.  
  99573. Go
  99574.  
  99575. create  procedure sp_PodigniKlucSPrometAdh
  99576.     @Kluc varchar(20)
  99577. As
  99578.     Select * from KlucSPrometAdh
  99579.     Where KlucSodrz=@Kluc
  99580.  
  99581.  
  99582.  
  99583. Go
  99584. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniknigatrg]'))
  99585. drop procedure [dbo].[sp_podigniknigatrg]
  99586.  
  99587. Go
  99588.  
  99589. CREATE PROCEDURE sp_PodigniKnigaTrg
  99590.     @InterenBr int
  99591. AS
  99592.     SELECT  *   FROM KnigaTrg 
  99593.     WHERE InterenBr = @InterenBr
  99594.   IF @@ROWCOUNT = 0
  99595.       RETURN 77000
  99596.    ELSE
  99597.       RETURN 0
  99598.  
  99599.  
  99600.  
  99601. Go
  99602. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikobj]'))
  99603. drop procedure [dbo].[sp_podignikobj]
  99604.  
  99605. Go
  99606.  
  99607.  
  99608.  
  99609. CREATE   PROCEDURE sp_PodigniKObj
  99610.    @Sifra_Kup varchar(15),
  99611.    @Sifra_Obj Smallint,
  99612.    @ImeTugaSifra char(1) = 'N'
  99613. AS
  99614.    If @ImeTugaSifra = 'D'
  99615.     SELECT KO.*, VO.Ime_VPJ, D1.Ime_1K, D2.Ime_2K, D3.Ime_3K, D4.Ime_4K, D5.Ime_5K, D6.Ime_6K, D7.Ime_7K, REG.ImeRegion, GR.ImeGrad, GTK.ImeTipKup
  99616.     FROM Kobjekti KO  WITH(NOLOCK) 
  99617.     LEFT OUTER JOIN VidProdObj VO ON VO.Sifra_VPJ=KO.Sifra_VPJ
  99618.                         Left Outer Join KDrugo1 D1 On D1.Sifra_1k = KO.KDrugo1
  99619.                         Left Outer Join KDrugo2 D2 On D2.Sifra_2k = KO.KDrugo2
  99620.                         Left Outer Join KDrugo3 D3 On D3.Sifra_3k = KO.KDrugo3
  99621.                         Left Outer Join KDrugo4 D4 On D4.Sifra_4k = KO.KDrugo4
  99622.                         Left Outer Join KDrugo5 D5 On D5.Sifra_5k = KO.KDrugo5
  99623.                         Left Outer Join KDrugo6 D6 On D6.Sifra_6k = KO.KDrugo6
  99624.                         Left Outer Join KDrugo7 D7 On D7.Sifra_7k = KO.KDrugo7
  99625.                         Left Outer Join Grad GR On GR.Sifra_grad = KO.Sifra_Grad
  99626.                         Left Outer Join GRegion REG On REG.Sifra_reg = KO.Sifra_reg 
  99627.                         Left Outer Join GTipkup GTK On GTK.TipKup = KO.TipKup  
  99628.     WHERE KO.Sifra_Kup=@Sifra_Kup AND KO.Sifra_Obj=@Sifra_Obj
  99629.    Else
  99630.     SELECT *   FROM KObjekti
  99631.     WHERE Sifra_Kup=@Sifra_Kup AND Sifra_Obj=@Sifra_Obj
  99632.    IF @@ERROR=0
  99633.       IF @@ROWCOUNT=1
  99634.          RETURN 0
  99635.       ELSE
  99636.          RETURN 77000
  99637.    ELSE
  99638.       RETURN @@ERROR
  99639.  
  99640.  
  99641.  
  99642.  
  99643. Go
  99644. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikobjsliki]'))
  99645. drop procedure [dbo].[sp_podignikobjsliki]
  99646.  
  99647. Go
  99648.  
  99649.  
  99650. CREATE   PROCEDURE sp_PodigniKObjSliki
  99651.     @Sifra_Obj    smallint,
  99652.     @Sifra_Kup varchar(20)
  99653. AS
  99654.     Select Sifra_Obj, SlikaKObj, ImeFile, Sifra_Kup
  99655.     From KObjSliki
  99656.     Where Sifra_Obj=@Sifra_Obj and Sifra_Kup=@Sifra_Kup 
  99657.     Return @@ERROR
  99658.  
  99659.  
  99660.  
  99661.  
  99662.  
  99663.  
  99664. Go
  99665. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikomintpat]'))
  99666. drop procedure [dbo].[sp_podignikomintpat]
  99667.  
  99668. Go
  99669. CREATE  PROCEDURE sp_PodigniKomintPat
  99670.     @Sifra_Kup    char(6),
  99671.     @Sifra_Obj    smallint
  99672. AS
  99673.     If @Sifra_Obj Is Not Null
  99674.         Select Sifra_Kup, Sifra_Obj, Sifra_Pat
  99675.         From KomintPat
  99676.         Where Sifra_Kup=@Sifra_Kup And Sifra_Obj=@Sifra_Obj
  99677.     Else
  99678.         Select Sifra_Kup, Sifra_Obj, Sifra_Pat
  99679.         From KomintPat
  99680.         Where Sifra_Kup=@Sifra_Kup And Sifra_Obj is null
  99681.  
  99682.  
  99683. Go
  99684. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikomintpatpat]'))
  99685. drop procedure [dbo].[sp_podignikomintpatpat]
  99686.  
  99687. Go
  99688. CREATE   PROCEDURE sp_PodigniKomintPatPat
  99689.     @Sifra_Pat smallint
  99690. AS
  99691. Select KP.Sifra_Kup, KP.Sifra_Obj, KP.Sifra_Pat, K.ImeKup, O.ImeObj
  99692. From KomintPat KP INNER JOIN Komint K ON KP.Sifra_Kup=K.Sifra_Kup 
  99693. LEFT OUTER JOIN KObjekti O ON KP.Sifra_Kup=O.Sifra_Kup AND KP.Sifra_Obj=O.Sifra_Obj
  99694. Where KP.Sifra_Pat=@Sifra_Pat
  99695.  
  99696.  
  99697.  
  99698. Go
  99699. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikomintstavki]'))
  99700. drop procedure [dbo].[sp_podignikomintstavki]
  99701.  
  99702. Go
  99703.  
  99704.  
  99705.  
  99706. CREATE    procedure sp_PodigniKomintStavki
  99707.     @Sif_GrKup varchar(20) ,
  99708.     @Sifra_Kup varchar(6) 
  99709. As
  99710.     Select KS.*,K.ImeKup from SGrKup KS
  99711.     left outer join Komint K on KS.Sifra_Kup=K.SIfra_Kup
  99712.     Where KS.Sif_GrKup=@Sif_GrKup and KS.Sifra_Kup=@Sifra_Kup
  99713.  
  99714.  
  99715.  
  99716.  
  99717.  
  99718. Go
  99719. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikomlimitdiv]'))
  99720. drop procedure [dbo].[sp_podignikomlimitdiv]
  99721.  
  99722. Go
  99723. create procedure sp_PodigniKomLimitDiv
  99724.     @Sifra_kup char(6)
  99725. AS
  99726.     Select KD.*, K.ImeKup, D.ImeDiv from KomLimitDiv KD
  99727.     Inner Join KOmint K on KD.Sifra_Kup=K.Sifra_Kup
  99728.     Inner Join Divizii D on KD.Sifra_Div=D.Sifra_Div
  99729.     Where KD.Sifra_kup=@Sifra_Kup
  99730.  
  99731.  
  99732. Go
  99733. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikompenz]'))
  99734. drop procedure [dbo].[sp_podignikompenz]
  99735.  
  99736. Go
  99737.  
  99738. CREATE   PROCEDURE sp_PodigniKompenz
  99739.     @Broj_Komp Int,
  99740.     @Datum_Komp Smalldatetime OUTPUT,
  99741.     @Opis Varchar(50) OUTPUT,
  99742.     @Datum_Do Smalldatetime OUTPUT,
  99743.     @KtoKup Varchar(10) OUTPUT,
  99744.     @KtoDob Varchar(10) OUTPUT,
  99745.     @Sifra_Kup Varchar(10) OUTPUT,
  99746.     @ImeKup Varchar(40) OUTPUT,
  99747.     @Adresa Varchar(40) OUTPUT,
  99748.     @Mesto Varchar(20) OUTPUT,
  99749.     @Posta Varchar(10) OUTPUT,
  99750.     @Ziro Varchar(25) OUTPUT,
  99751.     @Banka Varchar(50) OUTPUT,
  99752.     @Danocen Varchar(20) OUTPUT,
  99753.     @Telefon Varchar(15) OUTPUT
  99754. AS
  99755.     Select @Datum_Komp=K.Datum_Komp, @Sifra_Kup=K.Sifra_Kup, @Opis=K.Opis,
  99756.         @Datum_Do=K.Datum_Do, @KtoKup=K.KtoKup, @KtoDob=K.KtoDob,
  99757.         @ImeKup=Kup.ImeKup, @Adresa=Kup.Adresa, @Mesto=Kup.SMesto, @Posta=Kup.Posta,
  99758.         @Ziro=Kup.Posta, @Ziro=Kup.Ziro, @Banka=Kup.Banka, @Danocen=Kup.Danocen,
  99759.         @Telefon=Kup.Telefon
  99760.     From Kompenz K
  99761.     Inner Join Komint Kup On K.Sifra_Kup=Kup.Sifra_Kup
  99762.     Where K.Broj_Komp=@Broj_Komp
  99763.     Select KS.Sifra_OE, KS.Sifra_Dok, KS.Broj_Dok, KS.BrojDok, KS.Datum_Dok,
  99764.         KS.Dolzi, KS.Pobaruva From KompStav KS
  99765.     Where KS.[Broj_Komp]=@Broj_Komp
  99766.  
  99767.  
  99768.  
  99769. Go
  99770. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikompenzstav]'))
  99771. drop procedure [dbo].[sp_podignikompenzstav]
  99772.  
  99773. Go
  99774.  
  99775. CREATE    PROCEDURE sp_PodigniKompenzStav
  99776.     @Broj_Komp Int
  99777. AS
  99778.     Select KS.Sifra_OE, KS.Sifra_Dok, KS.Broj_Dok, KS.BrojDok, KS.Datum_Dok,
  99779.         KS.Dolzi, KS.Pobaruva From KompStav KS
  99780.     Where KS.[Broj_Komp]=@Broj_Komp
  99781.  
  99782.  
  99783.  
  99784. Go
  99785. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikompenzzag]'))
  99786. drop procedure [dbo].[sp_podignikompenzzag]
  99787.  
  99788. Go
  99789.  
  99790.  
  99791. CREATE    PROCEDURE sp_PodigniKompenzZag
  99792.     @Broj_Komp Int
  99793. AS
  99794.     Select K.Datum_Komp, K.Sifra_Kup, K.Opis, K.Datum_Do,
  99795.         K.KtoKup, K.KtoDob, Kup.ImeKup, Kup.Adresa, Kup.SMesto, Kup.Posta,
  99796.         Kup.Ziro, Kup.Banka, Kup.Danocen, Kup.Telefon
  99797.     From Kompenz K
  99798.     Inner Join Komint Kup On K.Sifra_Kup=Kup.Sifra_Kup
  99799.     Where K.Broj_Komp=@Broj_Komp
  99800.  
  99801.  
  99802.  
  99803. Go
  99804. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikomsliki]'))
  99805. drop procedure [dbo].[sp_podignikomsliki]
  99806.  
  99807. Go
  99808. CREATE PROCEDURE sp_PodigniKomSliki
  99809.     @Sifra_Kup    varchar(    20)
  99810. AS
  99811.     Select Sifra_Kup, SlikaKom, ImeFile
  99812.     From KomSliki
  99813.     Where Sifra_Kup=@Sifra_Kup 
  99814.     Return @@ERROR
  99815.  
  99816.  
  99817.  
  99818. Go
  99819. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikonfaccr]'))
  99820. drop procedure [dbo].[sp_podignikonfaccr]
  99821.  
  99822. Go
  99823. CREATE PROCEDURE sp_PodigniKonfAccr
  99824. AS
  99825. SELECT * FROM KonfAccr
  99826.  
  99827.  
  99828.  
  99829. Go
  99830. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikonfazurtros]'))
  99831. drop procedure [dbo].[sp_podignikonfazurtros]
  99832.  
  99833. Go
  99834.  
  99835.  
  99836.  
  99837.  
  99838.  
  99839. CREATE      PROCEDURE sp_PodigniKonfAzurTros
  99840. AS
  99841.     SELECT K.*, T.ImeDok, P.ImePat, O.ImeOrg, TM.ImeTrosM   
  99842.     FROM KonfAzurTros K
  99843.     left outer join TipDok T on T.Sifra_Dok = K.Sifra_Dok
  99844.     left outer join Orged O on O.Sifra_Oe = K.Sifra_Oe
  99845.     left outer join Patnici P on P.Sifra_Pat = K.Sifra_Pat
  99846.     left outer join TrosokMesto TM on TM.Sifra_TrosM = K.Sifra_TrosM
  99847.     
  99848.  
  99849.  
  99850.  
  99851.  
  99852.  
  99853.  
  99854.  
  99855.  
  99856.  
  99857. Go
  99858. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikonfceni]'))
  99859. drop procedure [dbo].[sp_podignikonfceni]
  99860.  
  99861. Go
  99862.  
  99863. CREATE PROCEDURE sp_PodigniKonfCeni
  99864.     @Sifra_Dok    Smallint,
  99865.     @Sifra_OE    Smallint,
  99866.     @Sifra_Prim    Smallint
  99867. AS
  99868.     SELECT *
  99869.     FROM KonfCeni
  99870.     WHERE Sifra_dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND Sifra_Prim = @Sifra_Prim
  99871.     RETURN @@ERROR
  99872.  
  99873.  
  99874.  
  99875. Go
  99876. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikonfmapword]'))
  99877. drop procedure [dbo].[sp_podignikonfmapword]
  99878.  
  99879. Go
  99880. CREATE  PROCEDURE sp_PodigniKonfMapWord
  99881.     @TempID varchar(20)
  99882. AS
  99883.     SELECT * FROM KonfMapWord
  99884.     WHERE TempID = @TempID
  99885.  
  99886.  
  99887.  
  99888. Go
  99889. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikonfnasobjopst]'))
  99890. drop procedure [dbo].[sp_podignikonfnasobjopst]
  99891.  
  99892. Go
  99893. CREATE PROCEDURE sp_PodigniKonfNasObjOpst 
  99894.     @Izvor    Char(10)
  99895. AS
  99896.     Select * From KonfNasObjOpst
  99897.     Where Izvor = @Izvor
  99898.  
  99899.  
  99900. Go
  99901. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikoravtmail]'))
  99902. drop procedure [dbo].[sp_podignikoravtmail]
  99903.  
  99904. Go
  99905.  
  99906.  
  99907. CREATE  PROCEDURE sp_PodigniKorAvtMail
  99908.  
  99909. AS
  99910.   Select distinct(Korisnik) From AvtMail 
  99911.  
  99912.  
  99913.  
  99914.  
  99915. Go
  99916. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikplkprompodokr]'))
  99917. drop procedure [dbo].[sp_podignikplkprompodokr]
  99918.  
  99919. Go
  99920.  
  99921.  
  99922. CREATE   PROCEDURE sp_PodigniKPlkPromPoDokr
  99923.     @Sifra_Oe    smallint, 
  99924.     @Sifra_Dok    smallint, 
  99925.     @Broj_Dok    int
  99926. AS
  99927.     Declare @Broj_Ska int
  99928.     SELECT @Broj_Ska=Broj_Ska FROM KPromet WHERE Sifra_Oe=@Sifra_Oe And Grp_Kasa=@Sifra_Dok And BrKasa=1 And Departm=@Broj_Dok
  99929.  
  99930.     Select P.Sifra_Oe, P.Grp_Kasa, P.BrKasa, P.Broj_Ska, P.Sifra_Nac, N.ImeNac, P.Iznos, P.Sifra_kup, P.Broj_Nac, P.Opis, P.Rbr, N.Fisc_Nacin
  99931.     From KPlkProm P
  99932.     Left Outer Join NacPlak N On N.Sifra_Nac=P.Sifra_Nac
  99933.     Where P.Sifra_Oe=@Sifra_Oe And P.Grp_Kasa=@Sifra_Dok And P.BrKasa=1 And P.Broj_Ska=@Broj_Ska
  99934.     Order By Rbr
  99935.  
  99936.  
  99937.  
  99938.  
  99939. Go
  99940. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikredit]'))
  99941. drop procedure [dbo].[sp_podignikredit]
  99942.  
  99943. Go
  99944.  
  99945.  
  99946.  
  99947.  
  99948. CREATE     procedure sp_PodigniKredit
  99949.  
  99950.     @Sifra_Oe as smallint, 
  99951.     @Broj_Kredit as int
  99952.  
  99953. As
  99954.  
  99955.     Select K.*, Kor.Profesija, Kor.ImeKor, Kor.Adresa, Kor.Smesto, Kor.RegBrLk,
  99956.        Kor.Telefon, Kor.LK, Kor.TelMobil, Stat.ImeStatusKredit, Opom.ImeTipOpomena, Kor.Sifra_Kup, Kom.ImeKup
  99957.     from Kredit K
  99958.     left outer join KartKor Kor on K.Sifra_Kor = KOr.Sifra_Kor
  99959.     left outer join KreditStatus Stat on K.Status_Kredit = Stat.Status_Kredit
  99960.     left outer join KreditTipOpomena Opom on K.Tip_Posl_Opomena = Opom.Tip_Opomena
  99961.         left outer join Komint Kom on Kor.Sifra_Kup = KOm.Sifra_Kup
  99962.     Where K.Sifra_Oe = @Sifra_Oe and K.Broj_Kredit = @Broj_Kredit
  99963.  
  99964.  
  99965.  
  99966.  
  99967.  
  99968.  
  99969.  
  99970.  
  99971. Go
  99972. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikreditopomena]'))
  99973. drop procedure [dbo].[sp_podignikreditopomena]
  99974.  
  99975. Go
  99976.  
  99977. CREATE  procedure sp_PodigniKreditOpomena
  99978.     @Sifra_Oe smallint,
  99979.     @Broj_kredit int ,
  99980.     @Broj_Opomena int
  99981. As
  99982.     Select * from KreditOpomena
  99983.     Where Sifra_oe=@Sifra_oe and Broj_kredit=@Broj_kredit and Broj_Opomena=@Broj_Opomena
  99984.  
  99985.  
  99986.  
  99987. Go
  99988. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikreditrati]'))
  99989. drop procedure [dbo].[sp_podignikreditrati]
  99990.  
  99991. Go
  99992.  
  99993.  
  99994. create   procedure sp_PodigniKreditRati
  99995.     @Sifra_Oe smallint,
  99996.     @Broj_kredit int
  99997.  
  99998. As 
  99999.  
  100000.     select * from KreditTransakc
  100001.     Where sifra_oe=@sifra_oe and broj_kredit=@broj_kredit and Dolzi>0 and Dolzi is not null
  100002.  
  100003.  
  100004.  
  100005.  
  100006.  
  100007. Go
  100008. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikreditstavki]'))
  100009. drop procedure [dbo].[sp_podignikreditstavki]
  100010.  
  100011. Go
  100012.  
  100013.  
  100014. CREATE   procedure sp_PodigniKreditStavki
  100015.     @Sifra_Oe smallint ,
  100016.     @Broj_kredit int 
  100017. As
  100018.     Select KS.*,K.ImeArt from KreditStavki KS
  100019.     left outer join Katart K on KS.Sifra_Art=K.SIfra_Art
  100020.     Where KS.Sifra_oe=@Sifra_oe and KS.broj_kredit=@broj_kredit --and rbr_kredart=@rbr_kredart
  100021.  
  100022.  
  100023.  
  100024.  
  100025. Go
  100026. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikredittransakc]'))
  100027. drop procedure [dbo].[sp_podignikredittransakc]
  100028.  
  100029. Go
  100030.  
  100031. CREATE  procedure sp_PodigniKreditTransakc
  100032.     @Sifra_Oe smallint,
  100033.     @Broj_kredit int
  100034.  
  100035. As 
  100036.  
  100037.     select * from KreditTransakc
  100038.     Where sifra_oe=@sifra_oe and broj_kredit=@broj_kredit
  100039.  
  100040.  
  100041.  
  100042.  
  100043. Go
  100044. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikredittransakc_rbr]'))
  100045. drop procedure [dbo].[sp_podignikredittransakc_rbr]
  100046.  
  100047. Go
  100048.  
  100049.  
  100050. create  procedure sp_PodigniKreditTransakc_Rbr
  100051.     @Sifra_Oe smallint,
  100052.     @Broj_Kredit int,
  100053.         @Rbr_KreditTrans int
  100054.  
  100055. As 
  100056.  
  100057.     select * from KreditTransakc
  100058.     Where Sifra_oe = @Sifra_oe and Broj_Kredit = @Broj_Kredit and Rbr_KreditTrans = @Rbr_KreditTrans
  100059.  
  100060.  
  100061.  
  100062.  
  100063.  
  100064.  
  100065. Go
  100066. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikreditvrskazatv]'))
  100067. drop procedure [dbo].[sp_podignikreditvrskazatv]
  100068.  
  100069. Go
  100070.  
  100071.  
  100072. create procedure sp_PodigniKreditVrskaZatv
  100073.     @Sifra_Oe_1 smallint,
  100074.     @Broj_kredit_1 int,
  100075.     @Rbr_KreditTrans_1 int
  100076.  
  100077. As
  100078.  
  100079.     select * 
  100080.     from KreditVrskaZatv
  100081.     where Sifra_Oe_1 = @Sifra_oe_1 and Broj_kredit_1 = @Broj_kredit_1
  100082.     and rbr_kredittrans_1 = @rbr_kredittrans_1 
  100083.  
  100084.  
  100085.  
  100086.  
  100087. Go
  100088. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikredtranakc]'))
  100089. drop procedure [dbo].[sp_podignikredtranakc]
  100090.  
  100091. Go
  100092.  
  100093.  
  100094. create  PROCEDURE sp_PodigniKredTranakc
  100095.     @Sifra_Oe smallint,
  100096.     @Broj_kredit int,
  100097.         @Rbr_KreditTrans int
  100098.  AS
  100099.     Select * From KreditTransakc KT
  100100.     Where KT.Sifra_Oe=@Sifra_Oe and KT.Broj_Kredit=@Broj_Kredit and 
  100101.               KT.Rbr_KreditTrans=@Rbr_KreditTrans
  100102.  
  100103.  
  100104.  
  100105.  
  100106. Go
  100107. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikrsvaznost]'))
  100108. drop procedure [dbo].[sp_podignikrsvaznost]
  100109.  
  100110. Go
  100111. CREATE PROCEDURE sp_PodigniKrsVaznost
  100112.     @Datum    smalldatetime,    
  100113.     @SImeVal    char(3)= NULL
  100114.  AS
  100115.     Declare @SSQL as varchar(2000)
  100116.     Set @SSQL = 'Select K.Datum, V.SImeVal, K.KursKupoven, K.KursProdazen, K.KursSreden, K.KursPazaren, V.ImeVal
  100117.             From KrsLista V LEFT OUTER JOIN  KrsVaznost K ON K.SImeVal=V.SImeVal
  100118.             AND K.Datum = ''' + cast(@Datum as varchar(25)) + ''' '
  100119.     If @SImeVal Is Not Null    
  100120.         Set @SSQL = @SSQL +  ' And K.SImeVal = ' + @SImeVal
  100121.     EXEC (@SSQL)
  100122.  
  100123.  
  100124.  
  100125. Go
  100126. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignikstapki]'))
  100127. drop procedure [dbo].[sp_podignikstapki]
  100128.  
  100129. Go
  100130. CREATE PROCEDURE sp_PodigniKStapki
  100131.     @Datum_Od        smalldatetime
  100132.  AS
  100133.     Select  Datum_Od, God_Real_St, God_Reval_St, Vaz_Metod, God_Mes
  100134.     From KStapki
  100135.     Where Datum_Od=@DAtum_Od
  100136.     Return @@ERROR
  100137.  
  100138.  
  100139.  
  100140. Go
  100141. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilekari]'))
  100142. drop procedure [dbo].[sp_podignilekari]
  100143.  
  100144. Go
  100145.  
  100146. CREATE PROCEDURE sp_PodigniLekari
  100147.  
  100148.     @Sifra_Lekar    char(6)
  100149. AS
  100150.     Select * From Lekari
  100151.     Where Sifra_Lekar=@Sifra_Lekar
  100152.     Return @@ERROR
  100153.  
  100154.  
  100155. Go
  100156. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilogo]'))
  100157. drop procedure [dbo].[sp_podignilogo]
  100158.  
  100159. Go
  100160.  
  100161.  
  100162.  
  100163. CREATE   PROCEDURE sp_PodigniLogo
  100164.     @Sifra_Dok    Smallint,
  100165.     @Sifra_OE    Smallint,
  100166.     @TipObr            varchar(2)
  100167. AS
  100168.     SELECT *
  100169.     FROM Logo
  100170.     WHERE Sifra_Dok = @Sifra_Dok AND Sifra_OE = @Sifra_OE AND TipObr = @TipObr
  100171.     RETURN @@ERROR
  100172.  
  100173.  
  100174.  
  100175. Go
  100176. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilotser]'))
  100177. drop procedure [dbo].[sp_podignilotser]
  100178.  
  100179. Go
  100180. CREATE PROCEDURE sp_PodigniLotSer
  100181.     @SpecOzn    varchar(30)
  100182. AS
  100183.     Select * From LotSer         --SpecOzn, Sifra_Art, TugaOzn
  100184.     Where SpecOzn=@SpecOzn
  100185.  
  100186.  
  100187.  
  100188. Go
  100189. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilotser_sifart]'))
  100190. drop procedure [dbo].[sp_podignilotser_sifart]
  100191.  
  100192. Go
  100193. CREATE PROCEDURE sp_PodigniLotSer_SifArt
  100194.     @Sifra_Art    varchar(20),
  100195.     @Tip_Set    smallint = Null
  100196. AS
  100197.     Declare @SSQL as varchar(8000)
  100198.     Set @SSQL = ' Select L.*, K.ImeArt 
  100199.             From LotSer L
  100200.             Where Sifra_Art = ''' + @Sifra_Art + ''' '
  100201.     If @Tip_Set Is Not Null 
  100202.         Set @SSQL=@SSQL + ' Anf L.Tip_Set = ' + Cast(@Tip_Set as varchar(5)) + ' '
  100203.     Exec @SSQL
  100204.  
  100205.  
  100206. Go
  100207. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilpopis]'))
  100208. drop procedure [dbo].[sp_podignilpopis]
  100209.  
  100210. Go
  100211.  
  100212.  
  100213.  
  100214.  
  100215. CREATE     PROCEDURE sp_PodigniLPopis
  100216.     @IDPopis int,
  100217.     @Broj int
  100218. AS
  100219.     SELECT LP.*, A.ImeArt, A.EdMera, A.RokKontrDali, 
  100220.     dbo.fn_Vraticena(S.Cena, T.ProcOsn, S.DanCena, 'D') As Cena, B.ImeBoja, V.ImeVelic
  100221.     FROM LPopis LP 
  100222.     INNER JOIN KatArt A ON LP.Sifra_Art = A.Sifra_Art
  100223.     INNER JOIN Tarifi T ON T.Sifra_Tar = A.Sifra_Tar 
  100224.     INNER JOIN Popis P ON P.IDPopis = @IDPopis
  100225.     LEFT OUTER JOIN SoArt S ON LP.Sifra_Art = S.Sifra_Art AND S.Sifra_OE = P.Sifra_OE
  100226.     Left Outer Join Boja B on LP.Sifra_Boja=B.Sifra_Boja
  100227.     left Outer Join Velicina V on LP.Sifra_Velic=V.Sifra_Velic
  100228.     WHERE  LP.IDpopis = @IDPopis AND LP.Broj = @Broj
  100229.     ORDER BY IDLPopis
  100230.   IF @@ROWCOUNT = 0
  100231.       RETURN 77000
  100232.    ELSE
  100233.       RETURN 0
  100234.  
  100235.  
  100236.  
  100237.  
  100238.  
  100239. Go
  100240. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilpopisos]'))
  100241. drop procedure [dbo].[sp_podignilpopisos]
  100242.  
  100243. Go
  100244.  
  100245.  
  100246.  
  100247.  
  100248. CREATE     PROCEDURE sp_PodigniLPopisOS
  100249.     @IDPopisOS smallint,
  100250.     @Broj_Lista int
  100251. AS
  100252.     SELECT LP.*, O.Ime, O.BarKod
  100253.     FROM LPopisOS LP 
  100254.     INNER JOIN OsnSred O ON LP.Inv_Broj = O.Inv_Broj
  100255.     INNER JOIN PopisOS P ON P.IDPopisOS = @IDPopisOS
  100256.     WHERE  LP.IDpopisOS = @IDPopisOS AND LP.Broj_Lista = @Broj_Lista
  100257.     ORDER BY IDLPopisOS
  100258.   IF @@ROWCOUNT = 0
  100259.       RETURN 77000
  100260.   ELSE
  100261.       RETURN 0
  100262.  
  100263.  
  100264.  
  100265. Go
  100266. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilpopisos_br]'))
  100267. drop procedure [dbo].[sp_podignilpopisos_br]
  100268.  
  100269. Go
  100270.  
  100271.  
  100272.  
  100273.  
  100274.  
  100275. CREATE      PROCEDURE sp_PodigniLPopisOS_Br
  100276.     @Broj_Lista int
  100277. AS
  100278.     SELECT LP.*, O.Ime, O.BarKod
  100279.     FROM LPopisOS LP 
  100280.     INNER JOIN OsnSred O ON LP.Inv_Broj = O.Inv_Broj
  100281.     --INNER JOIN PopisOS P ON P.IDPopisOS = @IDPopisOS
  100282.     WHERE  LP.IDpopisOS  in(Select IDPopisOS from LPopisOs where Broj_Lista=@Broj_Lista) 
  100283.     ORDER BY IDLPopisOS
  100284.   IF @@ROWCOUNT = 0
  100285.       RETURN 77000
  100286.   ELSE
  100287.       RETURN 0
  100288.  
  100289.  
  100290.  
  100291. Go
  100292. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilstpartic]'))
  100293. drop procedure [dbo].[sp_podignilstpartic]
  100294.  
  100295. Go
  100296.  
  100297. Create  PROCEDURE sp_PodigniLstPartic
  100298.  
  100299.  AS
  100300.  
  100301.     Select * From LstPartic
  100302.     Order By Iznos_Od
  100303.  
  100304.  
  100305. Go
  100306. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilstparticmarza]'))
  100307. drop procedure [dbo].[sp_podignilstparticmarza]
  100308.  
  100309. Go
  100310.  
  100311.  
  100312.  
  100313. CREATE    PROCEDURE sp_PodigniLstParticMarza
  100314.  
  100315.  AS
  100316.  
  100317.     Select * From LstPartic
  100318.     Order By Iznos_Od
  100319.  
  100320.  
  100321.  
  100322.  
  100323. Go
  100324. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilstparticskala]'))
  100325. drop procedure [dbo].[sp_podignilstparticskala]
  100326.  
  100327. Go
  100328.  
  100329. create  PROCEDURE sp_PodigniLstParticSkala
  100330.  
  100331.  AS
  100332.  
  100333.     Select * From LstParticSkala
  100334.     Order By Iznos_Od
  100335.  
  100336.  
  100337. Go
  100338. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignilstpoeniiznos]'))
  100339. drop procedure [dbo].[sp_podignilstpoeniiznos]
  100340.  
  100341. Go
  100342. Create  PROCEDURE sp_PodigniLstPoeniIznos
  100343.  
  100344.  AS
  100345.  
  100346.     Select * From LstPoeniIznos
  100347.     Order By Poeni_Od
  100348.  
  100349.  
  100350.  
  100351. Go
  100352. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_dokrid]'))
  100353. drop procedure [dbo].[sp_podignimagstavr_dokrid]
  100354.  
  100355. Go
  100356.  
  100357.  
  100358.  
  100359.  
  100360. CREATE     PROCEDURE sp_PodigniMagStavr_DokrID
  100361.     @DokrID    int
  100362. AS
  100363.     Select MS.*, K.ImeArt, K.EdMera, K.ImaBroevi, K.ImaKomerc
  100364.     From MagStavr MS
  100365.         Inner Join Katart K
  100366.         On MS.Sifra_Art = K.Sifra_Art
  100367.     Where DokrID=@DokrID 
  100368.         ORDER BY Rbr
  100369.  
  100370.  
  100371.  
  100372. Go
  100373. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_dokrid_zbirno]'))
  100374. drop procedure [dbo].[sp_podignimagstavr_dokrid_zbirno]
  100375.  
  100376. Go
  100377.  
  100378.  
  100379.  
  100380.  
  100381. create    PROCEDURE sp_PodigniMagStavr_DokrID_Zbirno
  100382.     @DokrID    int
  100383. AS
  100384.     Select MS.Sifra_Art, K.ImeArt, K.EdMera, sum(MS.Kolic) as SumKolic
  100385.     From MagStavr MS
  100386.         Inner Join Katart K
  100387.         On MS.Sifra_Art = K.Sifra_Art
  100388.     Where DokrID = @DokrID 
  100389.         Group By MS.Sifra_Art, K.ImeArt, K.EdMera
  100390.  
  100391.  
  100392.  
  100393. Go
  100394. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_dokrid1]'))
  100395. drop procedure [dbo].[sp_podignimagstavr_dokrid1]
  100396.  
  100397. Go
  100398.  
  100399.  
  100400.  
  100401. CREATE    PROCEDURE sp_PodigniMagStavr_DokrID1
  100402.     @DokrID    int
  100403. AS
  100404. Select MS.*, K.ImeArt, K.EdMera, K.ImaBroevi, K.ImaKomerc, K.Sifra_tar, T.ProcOsn, S.DokCena, S.DanDokCena
  100405. From MagStavr MS
  100406. Inner Join Katart K On MS.Sifra_Art = K.Sifra_Art
  100407. INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar
  100408. LEFT OUTER JOIN Stavr S ON S.DokrID=MS.DokrID AND MS.Sifra_Art=S.Sifra_Art
  100409. Where MS.DokrID=@DokrID        --ke ima povekekratni zapisi ako ima pov.zapisi za 1art.vo stavr-da se dotera ova!stavr se korisiti za cenata
  100410.  
  100411.  
  100412.  
  100413. Go
  100414. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_dokridart]'))
  100415. drop procedure [dbo].[sp_podignimagstavr_dokridart]
  100416.  
  100417. Go
  100418.  
  100419.  
  100420. CREATE     PROCEDURE sp_PodigniMagStavr_DokrIDArt
  100421.     @DokrID    int,
  100422.     @Sifra_Art    varchar(20)
  100423.  
  100424. AS
  100425.  
  100426.     Select MS.*, K.ImeArt, K.EdMera, K.ImaBroevi, K.ImaKomerc
  100427.     From MagStavr MS
  100428.         left outer Join Katart K
  100429.             On MS.Sifra_Art = K.Sifra_Art
  100430.     Where DokrID = @DokrID AND MS.Sifra_Art = @Sifra_Art 
  100431.     ORDER BY Rbr
  100432.  
  100433.  
  100434.  
  100435. Go
  100436. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_listdokrid]'))
  100437. drop procedure [dbo].[sp_podignimagstavr_listdokrid]
  100438.  
  100439. Go
  100440.  
  100441. create PROCEDURE sp_PodigniMagStavr_ListDokrID
  100442.     @DokrID_List    varchar(5000)
  100443.  
  100444. AS
  100445.  
  100446.     Declare @SSQL varchar(6000)
  100447.  
  100448.     set @SSQL = '
  100449.         Select MS.*, K.ImeArt, K.EdMera, K.ImaBroevi, K.ImaKomerc
  100450.         From MagStavr MS
  100451.             Inner Join Katart K
  100452.             On MS.Sifra_Art = K.Sifra_Art
  100453.         Where DokrID in (' + @DokrID_List + ')  
  100454.             ORDER BY MS.SIfra_Art, DokrId, MS.Rbr
  100455.         '
  100456.  
  100457.     exec (@SSQL)
  100458.  
  100459.  
  100460.  
  100461. Go
  100462. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_oe_art_ozn]'))
  100463. drop procedure [dbo].[sp_podignimagstavr_oe_art_ozn]
  100464.  
  100465. Go
  100466. CREATE PROCEDURE sp_PodigniMagStavr_Oe_Art_Ozn
  100467.     @Sifra_Oe    smallint,
  100468.     @Sifra_Art    varchar(20),
  100469.     @SpecOzn    varchar(30)
  100470. AS
  100471.     Select *
  100472.     From MagStavr
  100473.     Where Sifra_Oe=@Sifra_Oe And Sifra_Art=@Sifra_Art And SpecOzn=@SpecOzn
  100474.  
  100475.  
  100476.  
  100477. Go
  100478. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_oe_dok_broj]'))
  100479. drop procedure [dbo].[sp_podignimagstavr_oe_dok_broj]
  100480.  
  100481. Go
  100482.  
  100483.  
  100484.  
  100485.  
  100486.  
  100487. CREATE      PROCEDURE sp_PodigniMagStavr_Oe_Dok_Broj
  100488.     @Sifra_Oe    smallint,
  100489.     @Sifra_Dok    smallint,
  100490.     @Broj_Dok    int
  100491. AS
  100492.     Select S.*, K.ImeArt, K.RokTraDen, K.DeklArt, K.EdMera, K.ImaKomerc, KS.ImeKatStatus, D.VlIzl, K.Nom, K.DeklArt
  100493.     From Dokr D
  100494.     Inner Join MagStavr S On S.DokrID=D.DokrID
  100495.     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  100496.     Left Outer Join KatStatus KS ON KS.Sifra_KatStatus=S.Sifra_KatStatus
  100497.     Where D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  100498.         order by K.Sifra_art
  100499.  
  100500.  
  100501.  
  100502.  
  100503.  
  100504. Go
  100505. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_ozn_art]'))
  100506. drop procedure [dbo].[sp_podignimagstavr_ozn_art]
  100507.  
  100508. Go
  100509. CREATE PROCEDURE sp_PodigniMagStavr_Ozn_Art
  100510.     @Sifra_Art    varchar(20),
  100511.     @SpecOzn    varchar(30)
  100512. AS
  100513.     Select *
  100514.     From MagStavr
  100515.     Where Sifra_Art=@Sifra_Art And SpecOzn=@SpecOzn
  100516.  
  100517.  
  100518.  
  100519. Go
  100520. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavr_specozn]'))
  100521. drop procedure [dbo].[sp_podignimagstavr_specozn]
  100522.  
  100523. Go
  100524. CREATE PROCEDURE sp_PodigniMagStavr_SpecOzn
  100525.     @SpecOzn    varchar(30)
  100526. AS
  100527.     Select *
  100528.     From MagStavr
  100529.     Where SpecOzn=@SpecOzn
  100530.  
  100531.  
  100532.  
  100533. Go
  100534. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimagstavrkatserklas]'))
  100535. drop procedure [dbo].[sp_podignimagstavrkatserklas]
  100536.  
  100537. Go
  100538. CREATE PROCEDURE sp_PodigniMagStavrKatSerKlas
  100539.  
  100540.     @Sifra_Oe    smallint,
  100541.     @Sifra_Dok    smallint,
  100542.     @Broj_Dok    int
  100543. AS
  100544.     Select M.Sifra_Art, A.ImeArt, M.Kolic, M.VlIzl, M.Rbr, M.LotBr, K.KontrSerExt
  100545.     From Dokr D
  100546.     Inner Join MagStavr M On M.DokrID=D.DokrID
  100547.     Inner Join KatSerKlas K On K.Sifra_Art=M.Sifra_Art And K.KontrSer=M.LotBr
  100548.     Inner Join Katart A On A.Sifra_Art=M.Sifra_Art
  100549.     Where D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  100550.  
  100551. Go
  100552. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimapartimport]'))
  100553. drop procedure [dbo].[sp_podignimapartimport]
  100554.  
  100555. Go
  100556.  
  100557. CREATE   PROCEDURE sp_PodigniMapArtImport
  100558. AS
  100559.     SELECT MA.*, K.ImeArt 
  100560.     FROM MapArtImport MA
  100561.     LEFT OUTER JOIN KatArt K ON K.Sifra_Art=MA.Sifra_Art  
  100562.     order by MA.Sifra_Art_Import
  100563.  
  100564.  
  100565.  
  100566.  
  100567.  
  100568. Go
  100569. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimasini]'))
  100570. drop procedure [dbo].[sp_podignimasini]
  100571.  
  100572. Go
  100573. CREATE PROCEDURE sp_PodigniMasini
  100574.     @Sifra_Mas    varchar(15)
  100575. AS
  100576.     Select * From Masini 
  100577.     Where Sifra_Mas=@Sifra_Mas
  100578.  
  100579.  
  100580. Go
  100581. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimatic]'))
  100582. drop procedure [dbo].[sp_podignimatic]
  100583.  
  100584. Go
  100585.  
  100586. CREATE             PROCEDURE [dbo].[sp_PodigniMatic]
  100587.     @Sifra Varchar(20),
  100588.     @Tabela Varchar(20),
  100589.     @ImeTugaSifra Char(1) = 'N'
  100590.  
  100591. AS
  100592.  
  100593.     SET @Tabela=UPPER(@Tabela)
  100594.     IF @Tabela='KATART'
  100595.         If @ImeTugaSifra = 'D'
  100596.             SELECT K.*, H.Ime_KHier, P.Ime_Podg, B.Ime Ime_Brand, Dob.ImeKup as Ime_Dobav,
  100597.                         D1.Ime_1, D2.Ime_2,D3.Ime_3,D4.Ime_4,D5.Ime_5,D6.Ime_6,D7.Ime_7, DI.ImeDiv,
  100598.                         T.ImeTar
  100599.             FROM Katart K WITH(NOLOCK)
  100600.             Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  100601.             Left Outer Join DrgPodel B On B.Sifra_Drg = K.Sifra_Drg
  100602.             Left Outer Join KatHier H On K.Sifra_KHier = H.Sifra_KHier  
  100603.             Left Outer Join Komint Dob On K.Kto = Dob.Sifra_Kup 
  100604.                         Left Outer Join Drugo1 D1 On D1.Sifra_1 = K.Drugo1
  100605.                         Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2
  100606.                         Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3
  100607.                         Left Outer Join Drugo4 D4 On D4.Sifra_4 = K.Drugo4
  100608.                         Left Outer Join Drugo5 D5 On D5.Sifra_5 = K.Drugo5
  100609.                         Left Outer Join Drugo6 D6 On D6.Sifra_6 = K.Drugo6
  100610.                         Left Outer Join Drugo7 D7 On D7.Sifra_7 = K.Drugo7 
  100611.                         Left Outer Join Divizii DI On DI.Sifra_Div = K.sifra_div 
  100612.                         Left Outer Join Tarifi T On T.Sifra_Tar = K.sifra_tar 
  100613.             WHERE K.Sifra_Art=@Sifra
  100614.         else
  100615.             SELECT * FROM KatArt WITH(NOLOCK) WHERE Sifra_Art=@Sifra
  100616.     ELSE IF @Tabela='TARIFI'
  100617.         SELECT * FROM Tarifi WITH(NOLOCK)  WHERE Sifra_Tar=@Sifra
  100618.     ELSE IF @Tabela='GRUPI'
  100619.         SELECT * FROM Grupi WITH(NOLOCK)  WHERE Sifra_Gr=@Sifra
  100620.     ELSE IF @Tabela='PODGRUPI'
  100621.         If @ImeTugaSifra = 'D'
  100622.             SELECT P.*, G.Ime_Gr, PW.Ime_PodgrWeb  
  100623.             FROM Podgrupi P WITH(NOLOCK) 
  100624.             Left Outer Join Grupi G On G.Sifra_Gr = P.Sifra_Gr  
  100625.             Left Outer Join PodgrWeb PW On PW.Sifra_PodgrWeb = P.Sifra_PodgrWeb  
  100626.             WHERE P.Sifra_Podg=@Sifra
  100627.         Else 
  100628.             SELECT * FROM Podgrupi WITH(NOLOCK)  WHERE Sifra_Podg=@Sifra
  100629.     ELSE IF @Tabela='KOMINT'
  100630.         If @ImeTugaSifra = 'D'
  100631.             SELECT K.*, N.ImeNivo, N.Prioritet, N.Rok_Dosp as Rok_Dosp_Nivo, N.Uces as Uces_Nivo, N.Kasa as Kasa_Nivo, N.Kojacena as KojaCenaNivo,
  100632.                 TK.ImeTip, VO.Ime_VPJ, D1.Ime_1K, D2.Ime_2K, D3.Ime_3K, D4.Ime_4K, D5.Ime_5K, D6.Ime_6K, D7.Ime_7K,
  100633.                                REG.ImeRegion, GR.ImeGrad, GTK.ImeTipKup
  100634.             FROM Komint K  WITH(NOLOCK) 
  100635.             LEFT OUTER JOIN Nivo N ON N.Sifra_Nivo=K.Sifra_Nivo
  100636.             LEFT OUTER JOIN TipKomint TK ON TK.Sifra_Tip=K.Sifra_Tip
  100637.             LEFT OUTER JOIN VidProdObj VO ON VO.Sifra_VPJ=K.Sifra_VPJ
  100638.                         Left Outer Join KDrugo1 D1 On D1.Sifra_1k = K.KDrugo1
  100639.                         Left Outer Join KDrugo2 D2 On D2.Sifra_2k = K.KDrugo2
  100640.                         Left Outer Join KDrugo3 D3 On D3.Sifra_3k = K.KDrugo3
  100641.                         Left Outer Join KDrugo4 D4 On D4.Sifra_4k = K.KDrugo4
  100642.                         Left Outer Join KDrugo5 D5 On D5.Sifra_5k = K.KDrugo5
  100643.                         Left Outer Join KDrugo6 D6 On D6.Sifra_6k = K.KDrugo6
  100644.                         Left Outer Join KDrugo7 D7 On D7.Sifra_7k = K.KDrugo7   
  100645.                         Left Outer Join Grad GR On GR.Sifra_grad = K.Sifra_Grad
  100646.                         Left Outer Join GRegion REG On REG.Sifra_reg = K.Sifra_reg     
  100647.                         Left Outer Join GTipkup GTK On GTK.TipKup = K.TipKup    
  100648.             WHERE Sifra_Kup=@Sifra
  100649.         Else
  100650.             SELECT K.*, N.ImeNivo, N.Prioritet, N.Rok_Dosp as Rok_Dosp_Nivo, N.Uces as Uces_Nivo, N.Kasa as Kasa_Nivo, N.Kojacena as KojaCenaNivo
  100651.             FROM Komint K  WITH(NOLOCK) 
  100652.             LEFT OUTER JOIN Nivo N ON K.Sifra_Nivo=N.Sifra_Nivo
  100653.             WHERE Sifra_Kup=@Sifra
  100654.     ELSE IF @Tabela='ORGED'
  100655.         SELECT * FROM Orged  WITH(NOLOCK) WHERE Sifra_OE=@Sifra
  100656.     ELSE IF @Tabela='TIPDOK'
  100657.         SELECT * FROM TipDok WITH(NOLOCK)  WHERE Sifra_Dok=@Sifra
  100658.     ELSE IF @Tabela='TIPNAL'
  100659.         SELECT * FROM TipNal  WITH(NOLOCK) WHERE Sifra_nal=@Sifra
  100660.     ELSE IF @Tabela='ANAL'
  100661.         SELECT * FROM Anal  WITH(NOLOCK) WHERE Kto_Anal=@Sifra  
  100662.     ELSE IF @Tabela='KLAS'
  100663.         SELECT * FROM Klas WITH(NOLOCK)  WHERE Kto_Klas=@Sifra  
  100664.     ELSE IF @Tabela='GRANAL'
  100665.         SELECT * FROM GrAnal WITH(NOLOCK)  WHERE Kto_GrAn=@Sifra  
  100666.     ELSE IF @Tabela='SINT'
  100667.         SELECT * FROM Sint  WITH(NOLOCK) WHERE Kto_Sint=@Sifra  
  100668.     ELSE IF @Tabela='MARKETI'
  100669.         SELECT * FROM Marketi  WITH(NOLOCK) WHERE Sifra_Mark=@Sifra  
  100670.     ELSE IF @Tabela='Patnici' 
  100671.         SELECT * FROM Patnici  WITH(NOLOCK)  WHERE Sifra_Pat=@Sifra 
  100672.     ELSE IF @Tabela='KOBJEKTI'
  100673.         Select K.ImeKup, KO.*
  100674.         From KObjekti KO WITH(NOLOCK) 
  100675.         Inner Join Komint K On KO.Sifra_Kup=K.Sifra_Kup
  100676.         Where KO.Sifra_Obj=@Sifra
  100677.     ELSE IF @Tabela='GREGION'
  100678.         SELECT * FROM GRegion WITH(NOLOCK)  WHERE Sifra_Reg=@Sifra
  100679.     ELSE IF @Tabela='GTIPKUP'
  100680.         SELECT * FROM GTipKup  WITH(NOLOCK) WHERE TipKup=@Sifra
  100681.     ELSE IF @Tabela='DrgPodel'
  100682.         SELECT B.*,Z.Ime_Drg1  FROM DrgPodel B WITH(NOLOCK)  
  100683.                 Left Outer Join DrgPodel1 Z On Z.Sifra_Drg1 = B.Sifra_Drg1
  100684.                 WHERE Sifra_Drg=@Sifra
  100685.     ELSE IF @Tabela = 'GRORG'
  100686.         SELECT * FROM GrOrg WITH(NOLOCK)  WHERE Sif_GrOrg=@Sifra
  100687.         ELSE IF @Tabela = 'GRPAT'
  100688.         SELECT * FROM GrPAt WITH(NOLOCK)  WHERE Sif_GrPat=@Sifra
  100689.     ELSE IF @Tabela = 'DRGPODEL1'
  100690.         SELECT * FROM DrgPodel1 WITH(NOLOCK)  WHERE Sifra_Drg1=@Sifra
  100691.     ELSE IF @Tabela = 'DRUGO1'
  100692.         SELECT * FROM Drugo1 WITH(NOLOCK)  WHERE Sifra_1=@Sifra
  100693.     ELSE IF @Tabela = 'DRUGO2'
  100694.         SELECT * FROM Drugo2 WITH(NOLOCK)  WHERE Sifra_2=@Sifra
  100695.     ELSE IF @Tabela = 'DRUGO3'
  100696.         SELECT * FROM Drugo3 WITH(NOLOCK)  WHERE Sifra_3=@Sifra
  100697.     ELSE IF @Tabela = 'DRUGO4'
  100698.         SELECT * FROM Drugo4 WITH(NOLOCK)  WHERE Sifra_4=@Sifra
  100699.     ELSE IF @Tabela = 'DRUGO5'
  100700.         SELECT * FROM Drugo5 WITH(NOLOCK)  WHERE Sifra_5=@Sifra
  100701.         ELSE IF @Tabela = 'DRUGO6'
  100702.         SELECT * FROM Drugo6 WITH(NOLOCK)  WHERE Sifra_6=@Sifra
  100703.     ELSE IF @Tabela = 'DRUGO7'
  100704.         SELECT * FROM Drugo7 WITH(NOLOCK)  WHERE Sifra_7=@Sifra
  100705.         ELSE IF @Tabela = 'KDRUGO1'
  100706.         SELECT * FROM KDrugo1 WITH(NOLOCK)  WHERE Sifra_1k=@Sifra
  100707.     ELSE IF @Tabela = 'KDRUGO2'
  100708.         SELECT * FROM KDrugo2 WITH(NOLOCK)  WHERE Sifra_2k=@Sifra
  100709.     ELSE IF @Tabela = 'KDRUGO3'
  100710.         SELECT * FROM KDrugo3 WITH(NOLOCK)  WHERE Sifra_3k=@Sifra
  100711.     ELSE IF @Tabela = 'KDRUGO4'
  100712.         SELECT * FROM KDrugo4 WITH(NOLOCK)  WHERE Sifra_4k=@Sifra
  100713.     ELSE IF @Tabela = 'KDRUGO5'
  100714.         SELECT * FROM KDrugo5 WITH(NOLOCK)  WHERE Sifra_5k=@Sifra
  100715.         ELSE IF @Tabela = 'KDRUGO6'
  100716.         SELECT * FROM KDrugo6 WITH(NOLOCK)  WHERE Sifra_6k=@Sifra 
  100717.     ELSE IF @Tabela = 'KDRUGO7'
  100718.         SELECT * FROM KDrugo7 WITH(NOLOCK)  WHERE Sifra_7k=@Sifra
  100719.         ELSE IF @Tabela = 'KRSLISTA'
  100720.         SELECT * FROM KrsLista WITH(NOLOCK)  WHERE SImeVal=@Sifra
  100721.     ELSE IF @Tabela = 'CBROEVI'
  100722.         SELECT * FROM CBroevi WITH(NOLOCK)  WHERE CarBroj=@Sifra
  100723.     ELSE IF @Tabela = 'GRAD'
  100724.         SELECT * FROM Grad WITH(NOLOCK)  WHERE Sifra_Grad=@Sifra
  100725.     ELSE IF @Tabela = 'TIPNARAC'
  100726.         SELECT * FROM TipNarac WITH(NOLOCK)  WHERE Sifra_Nar=Cast(@Sifra As Smallint)
  100727.     ELSE IF @Tabela = 'NIVO'
  100728.         SELECT * FROM Nivo  WITH(NOLOCK) WHERE Sifra_Nivo=@Sifra
  100729.     ELSE IF @Tabela = 'BANKSMETKI'
  100730.         SELECT * FROM BankSmetki WITH(NOLOCK)  WHERE KojaSmetka=@Sifra
  100731.     ELSE IF @Tabela = 'GRNAR'
  100732.         SELECT * FROM GrNar WITH(NOLOCK)  WHERE Sifra_GrNar=@Sifra    
  100733.     ELSE IF @Tabela = 'BANKI'
  100734.         SELECT * FROM Banki WITH(NOLOCK)  WHERE Sifra_Ban=@Sifra    
  100735.     ELSE IF @Tabela = 'FIXTEKST'
  100736.         SELECT * FROM FixTekst WITH(NOLOCK)  WHERE Sifra_FixTekst=@Sifra    
  100737.     ELSE IF @Tabela = 'FIXTEKSTN'
  100738.         SELECT * FROM FixTekstN WITH(NOLOCK)  WHERE Sifra_FixTekst=@Sifra    
  100739.     ELSE IF @Tabela = 'PRODMEST'
  100740.         SELECT * FROM ProdMest P WITH(NOLOCK)  
  100741.         LEFT OUTER JOIN TipProdMesto T on T.Sif_TipProdM =  P.Sif_TipProdM
  100742.         WHERE Sifra_Mest=@Sifra
  100743.     ELSE IF @Tabela = 'FITABELA'
  100744.         SELECT * FROM FiTabela WITH(NOLOCK)  WHERE FiID=@Sifra
  100745.     ELSE IF @Tabela = 'TIPPERCENOVNIK'
  100746.         SELECT * FROM TipPerCenovnik WITH(NOLOCK)  WHERE Sifra_TipC=@Sifra
  100747.     ELSE IF @Tabela = 'BANKSMETKI'
  100748.         SELECT * FROM BankSmetki WITH(NOLOCK)  WHERE KojaSmetka=@Sifra
  100749.     ELSE IF @Tabela = 'UCESDENOVI'
  100750.         SELECT * FROM UCESDENOVI WITH(NOLOCK)  WHERE Denovi=@Sifra
  100751.     ELSE IF @Tabela = 'KATGAMB'
  100752.         SELECT * FROM KATGAMB WITH(NOLOCK)  WHERE Sifra_GAmb=@Sifra
  100753.     ELSE IF @Tabela = 'KATAMB'
  100754.         SELECT * FROM KATAMB WITH(NOLOCK)  WHERE Sifra_Amb=@Sifra
  100755.     ELSE IF @Tabela = 'LOKACIJA'
  100756.         SELECT * FROM LOKACIJA WITH(NOLOCK)  WHERE Sifra_Lok=@Sifra
  100757.     ELSE IF @Tabela='AMORGRP'
  100758.         SELECT * FROM AMORGRP WITH(NOLOCK)  WHERE Sifra_Amor=@Sifra
  100759.     ELSE IF @Tabela='OSNSRED'
  100760.         SELECT * FROM OSNSRED WITH(NOLOCK)  WHERE Inv_Broj=@Sifra
  100761.     ELSE IF @Tabela='MAKROLOK'
  100762.         SELECT * FROM MAKROLOK WITH(NOLOCK)  WHERE Sifra_MakLok=@Sifra
  100763.     ELSE IF @Tabela='MIKROLOK'
  100764.         SELECT * FROM MIKROLOK WITH(NOLOCK)  WHERE Sifra_MikLok=@Sifra
  100765.     ELSE IF @Tabela='RABOTNIK'
  100766.         If @ImeTugaSifra = 'D'
  100767.             SELECT R.*, O.ImeOrg, OPR.Ime_Opstina as ImeOpstRab, OPZ.Ime_Opstina as ImeOpstZivee, B.ImeBanka, F.ImeFirma
  100768.             FROM RABOTNIK R WITH(NOLOCK)
  100769.             Left Outer Join Orged O On O.Sifra_Oe=R.Sifra_Oe
  100770.             Left Outer Join Opstini OPR On OPR.Sif_Opstina = R.Sif_Opst_Rab
  100771.             Left Outer Join Opstini OPZ On OPZ.Sif_Opstina = R.Sif_Opst_Zivee
  100772.             Left Outer Join Banki B On B.Sifra_Ban = R.Sif_Banka
  100773.             Left Outer Join Firmi F On F.Sifra_Firma = R.Sifra_Firma
  100774.              WHERE Sifra_Rab=@Sifra
  100775.         Else 
  100776.             SELECT * FROM RABOTNIK WITH(NOLOCK)  WHERE Sifra_Rab=@Sifra
  100777.     ELSE IF @Tabela='DOZNAKI'
  100778.         SELECT * FROM Doznaki WITH(NOLOCK)  WHERE Broj_Doznaka=@Sifra
  100779.     ELSE IF @Tabela='PREVOZNIK'
  100780.         SELECT * FROM Prevoznik WITH(NOLOCK)  WHERE Sifra_Prev=@Sifra
  100781.     ELSE IF @Tabela='OPSTINI'
  100782.         If @ImeTugaSifra = 'D'
  100783.             SELECT O.*, 
  100784.             PD.Ime_Primatel as ImePrim_PD, 
  100785.             PIO.Ime_Primatel as ImePrim_PIO, 
  100786.             Zdr.Ime_Primatel as ImePrim_Zdr, 
  100787.             Vrab.Ime_Primatel as ImePrim_Vrab, 
  100788.             DZ.Ime_Primatel as ImePrim_DopolZdr, 
  100789.             VS.Ime_Primatel as ImePrim_Vodostop, 
  100790.             KRM.Ime_Primatel as ImePrim_KomoraRM, 
  100791.             KDR.Ime_Primatel as ImePrim_KomoraDr
  100792.             FROM Opstini O WITH(NOLOCK)  
  100793.             Left Outer Join Primateli PD On PD.Sif_Primatel=O.Sif_Prim_PD
  100794.             Left Outer Join Primateli PIO On PIO.Sif_Primatel=O.Sif_Prim_PIO
  100795.             Left Outer Join Primateli Zdr On Zdr.Sif_Primatel=O.Sif_Prim_Zdr
  100796.             Left Outer Join Primateli Vrab On Vrab.Sif_Primatel=O.Sif_Prim_Vrab
  100797.             Left Outer Join Primateli DZ On DZ.Sif_Primatel=O.Sif_Prim_DopolZdr
  100798.             Left Outer Join Primateli VS On VS.Sif_Primatel=O.Sif_Prim_Vodostop
  100799.             Left Outer Join Primateli KRM On KRM.Sif_Primatel=O.Sif_Prim_KomoraRM
  100800.             Left Outer Join Primateli KDR On KDR.Sif_Primatel=O.Sif_Prim_KomoraDr
  100801.             WHERE O.Sif_Opstina=@Sifra
  100802.         Else
  100803.             SELECT * FROM Opstini WITH(NOLOCK)  WHERE Sif_Opstina=@Sifra
  100804.     ELSE IF @Tabela='PROGRAMI'
  100805.         SELECT * FROM Programi WITH(NOLOCK)  WHERE Sif_Progr=@Sifra
  100806.     ELSE IF @Tabela='PRIMATELI'
  100807.         If @ImeTugaSifra = 'D'
  100808.             SELECT P.*, O.Ime_Opstina
  100809.             FROM Primateli P WITH(NOLOCK) 
  100810.             Left Outer Join Opstini O On O.Sif_Opstina=P.Sif_Opstina
  100811.              WHERE Sif_Primatel=@Sifra
  100812.         Else
  100813.             SELECT * FROM Primateli WITH(NOLOCK)  WHERE Sif_Primatel=@Sifra
  100814.     ELSE IF @Tabela='ZADRSKI'
  100815.         SELECT * FROM Zadrski WITH(NOLOCK)  WHERE Sif_Zadr=@Sifra
  100816.     ELSE IF @Tabela='PODMES'
  100817.         SELECT * FROM PodMes WITH(NOLOCK)  WHERE GodMes=@Sifra
  100818.     ELSE IF @Tabela='PODGOD'
  100819.         SELECT * FROM PodGod WITH(NOLOCK)  WHERE Godina=@Sifra
  100820.     ELSE IF @Tabela = 'ZARAB'
  100821.         SELECT * FROM Zarab WITH(NOLOCK)  WHERE Sif_Zarab=@Sifra
  100822.     ELSE IF @Tabela = 'INTERNIKART'
  100823.         SELECT * FROM InterniKart WITH(NOLOCK)  WHERE Interna_Kart=@Sifra
  100824.         ELSE IF @Tabela = 'VIDVOZILA'
  100825.         SELECT * FROM VidVozila WITH(NOLOCK)  WHERE Sifra_Vid_Voz=@Sifra
  100826.     ELSE IF @Tabela = 'NACPLAK'
  100827.         If @ImeTugaSifra = 'D'
  100828.             SELECT N.*, I.Ime_Int_Kart, O.ImeOrg
  100829.             FROM NacPlak N WITH(NOLOCK)
  100830.             Left Outer Join InterniKart I On I.Interna_Kart=N.Interna_Kart
  100831.             Left Outer Join Orged O On O.Sifra_Oe=N.Sifra_Oe
  100832.             WHERE N.Sifra_Nac=@Sifra
  100833.         Else
  100834.             SELECT * FROM NacPlak WITH(NOLOCK)  WHERE Sifra_Nac=@Sifra
  100835.     ELSE IF @Tabela = 'OPERATORI'
  100836.         If @ImeTugaSifra = 'D'
  100837.             SELECT O.*, G.ImeGrOper
  100838.             FROM Operatori O WITH(NOLOCK)
  100839.             Left Outer Join GrupiOper G On O.Sifra_GrOper=G.Sifra_GrOper
  100840.             WHERE Sifra_Oper=@Sifra
  100841.         Else
  100842.             SELECT * FROM Operatori WITH(NOLOCK)  WHERE Sifra_Oper=@Sifra
  100843.     ELSE IF @Tabela = 'FIRMI'
  100844.         If @ImeTugaSifra = 'D'
  100845.             SELECT F.*, B.ImeBanka
  100846.             FROM Firmi F WITH(NOLOCK)
  100847.             Left Outer Join Banki B On B.Sifra_Ban=F.Sifra_Ban
  100848.             WHERE F.Sifra_Firma=@Sifra
  100849.         Else
  100850.             SELECT * FROM Firmi WITH(NOLOCK) WHERE Sifra_Firma=@Sifra
  100851.     ELSE IF @Tabela = 'NACINPRESMZ'
  100852.         SELECT * FROM NacinPresmZ WITH(NOLOCK) WHERE Sif_NacPresZ=@Sifra
  100853.     ELSE IF @Tabela = 'GRPIZBOR'
  100854.         SELECT * FROM GrpIzbor WITH(NOLOCK) WHERE Sifra_GrpIzb=@Sifra
  100855.     ELSE IF @Tabela = 'GRPIZBORNIZA'
  100856.         SELECT G.Sifra_GrpIzb, GI.Ime_GrpIzb, G.Sifra_Nar_Izb, GN.Ime_GrpIzb Ime_NarIzbor, G.Sifra_Nar_Art, K.ImeArt ImeNarArt, G.Reden_Izb, G.Boja_Dugme, G.Boja_Tekst, G.Boja_Dugme2, G.Izgl_dugme
  100857.         FROM GrpIzborNiza G WITH(NOLOCK) 
  100858.         Left Outer Join GrpIzbor GI On GI.Sifra_GrpIzb=G.Sifra_GrpIzb
  100859.         Left Outer Join GrpIzbor GN On GN.Sifra_GrpIzb=G.Sifra_Nar_Izb
  100860.         Left Outer Join Katart K On K.Sifra_Art=G.Sifra_Nar_Art
  100861.         WHERE G.Sifra_GrpIzb=@Sifra
  100862.          order by G.Reden_Izb 
  100863.     ELSE IF @Tabela = 'DIVIZII'
  100864.         SELECT * FROM Divizii WITH(NOLOCK) WHERE Sifra_Div=@Sifra
  100865.     ELSE IF @Tabela = 'NIVOCENIKARTKOR'
  100866.         SELECT * FROM NivoCeniKartKor WITH(NOLOCK) WHERE Sifra_CeniKartKor=@Sifra
  100867.     ELSE IF @Tabela = 'TIPKARTKOR'
  100868.         SELECT * FROM TipKartKor WITH(NOLOCK) WHERE Sifra_TipKartKor=@Sifra
  100869.     ELSE IF @Tabela = 'KARTKOR'
  100870.         Select K.*, Kom.ImeKup, Tip.ImeKartKor from  KartKor K
  100871.         left outer join Komint Kom on Kom.Sifra_Kup = K.Sifra_Kup
  100872.         left outer join TipKartKor Tip on Tip.Sifra_TipKartKor = K.Sifra_TipKartKor
  100873.         Where Sifra_Kor = @Sifra
  100874.         ----- DO Okt 23, 2007  DK  SELECT * FROM KartKor WITH(NOLOCK) WHERE Sifra_Kor=@Sifra
  100875.     ELSE IF @Tabela = 'GRUPIOPER'
  100876.         SELECT * FROM GrupiOper WITH(NOLOCK) WHERE Sifra_GrOper=@Sifra
  100877.     ELSE IF @Tabela = 'RELACISPOR'
  100878.         SELECT * FROM RelacIspor WITH(NOLOCK) WHERE Sifra_RelIspor=@Sifra
  100879.     ELSE IF @Tabela = 'VIDPRODOBJ'
  100880.         SELECT * FROM VidProdObj WITH(NOLOCK) WHERE Sifra_VPJ=@Sifra
  100881.     ELSE IF @Tabela = 'TIPKOMINT'
  100882.         SELECT * FROM TipKomint WITH(NOLOCK) WHERE Sifra_Tip=@Sifra
  100883.     ELSE IF @Tabela = 'AKCIIPROMO'
  100884.         SELECT A.*, K.Ime_1K FROM AkciiPromo A WITH(NOLOCK) LEFT OUTER JOIN KDrugo1 K ON A.Sifra_Podelba=K.Sifra_1K  WHERE A.Ozn_Akcija=@Sifra
  100885.         ELSE IF @Tabela = 'AKCIIPROMOSTA'
  100886.         --SELECT * FROM AkciiPromoSta WITH(NOLOCK) WHERE Ozn_Akcija=@Sifra
  100887.     SELECT S.Ozn_Akcija, S.Sifra_Art_Osnoven, O.ImeArt ImeArtOsn, S.Sifra_Art_Paket, P.ImeArt ImeArtPak, S.Kolicina, S.Cena, S.Rabat
  100888.         FROM AkciiPromoSta S WITH(NOLOCK) 
  100889.         Left Outer Join KatArt O On O.Sifra_Art=S.Sifra_Art_Osnoven
  100890.         Left Outer Join KatArt P On P.Sifra_Art=S.Sifra_Art_Paket
  100891.              WHERE S.Ozn_Akcija=@Sifra
  100892.                 order by S.Sifra_art_Paket
  100893.     ELSE IF @Tabela = 'KONFSLAGANJE'
  100894.         SELECT Top 1 * FROM KonfSlaganje WITH(NOLOCK) WHERE Sifra_Slag=@Sifra  
  100895.     ELSE IF @Tabela='GRUPAWEB'
  100896.         SELECT * FROM GrupaWeb WITH(NOLOCK)  WHERE Sifra_GrWeb=@Sifra
  100897.     ELSE IF @Tabela='PODGRWEB'
  100898.         If @ImeTugaSifra = 'D'
  100899.             SELECT P.*, G.Ime_GrWeb
  100900.             FROM PodgrWeb P WITH(NOLOCK) 
  100901.             Left Outer Join GrupaWeb G On G.Sifra_GrWeb = P.Sifra_GrWeb  
  100902.             WHERE P.Sifra_PodgrWeb=@Sifra
  100903.         Else 
  100904.             SELECT * FROM PodgrWeb WITH(NOLOCK)  WHERE Sifra_PodgrWeb=@Sifra
  100905.     ELSE IF @Tabela='KATSTATUS'
  100906.         SELECT * FROM KatStatus WITH(NOLOCK)  WHERE Sifra_KatStatus=@Sifra
  100907.      ELSE IF @Tabela = 'TIPKATPAKUV'
  100908.         SELECT * FROM TipKatPakuv  WHERE Sifra_KatPak=@Sifra
  100909.      ELSE IF @Tabela = 'VIDDOG'
  100910.         SELECT * FROM VidDog  WHERE Sifra_VidDog=@Sifra
  100911.      ELSE IF @Tabela = 'VERNTRAENJE'
  100912.         SELECT * FROM VernTraenje  WHERE Sifra_Vernost=@Sifra
  100913.      ELSE IF @Tabela = 'TARMODEL'
  100914.         SELECT * FROM TarModel  WHERE Sifra_TarModel=@Sifra
  100915.         ELSE IF @Tabela = 'CRRKodovi'
  100916.         SELECT * FROM CRRKodovi  WHERE Sifra_Crr=@Sifra
  100917.     ELSE IF @Tabela = 'KARAKTERIST'
  100918.         SELECT * FROM Karakterist WHERE Sifra_Karakt = @Sifra
  100919.         ELSE IF @Tabela = 'FORMULADEF'
  100920.         SELECT * FROM FormulaDef WITH(NOLOCK) WHERE Sifra_Formula = @Sifra
  100921.         ELSE IF @Tabela = 'KREDITSTATUS'
  100922.         SELECT * FROM KreditStatus WITH(NOLOCK) WHERE Status_Kredit = @Sifra
  100923.         ELSE IF @Tabela = 'KREDITTIPOPOMENA'
  100924.         SELECT * FROM KreditTipOPomena WITH(NOLOCK) WHERE Tip_Opomena = @Sifra
  100925.         ELSE IF @Tabela = 'OSNGRPODEL'
  100926.         SELECT * FROM OsnGrPodel WITH(NOLOCK) WHERE Sifra_OsnGrPodel = @Sifra 
  100927.     ELSE IF @Tabela = 'TROSOKMESTO'
  100928.         SELECT * FROM TROSOKMESTO WITH(NOLOCK) WHERE Sifra_TrosM = @Sifra
  100929.     ELSE IF @Tabela = 'TROSOKVID'
  100930.         SELECT * FROM TROSOKVID WITH(NOLOCK) WHERE Sifra_TrosV = @Sifra
  100931.     ELSE IF @Tabela = 'TROSOK4TIP'
  100932.         SELECT * FROM TROSOK4TIP WITH(NOLOCK) WHERE Sifra_4Tros = @Sifra 
  100933.     ELSE IF @Tabela = 'GRKUP'
  100934.         SELECT * FROM GrKUP WITH(NOLOCK)  WHERE Sif_GrKUP=@Sifra
  100935.     ELSE IF @Tabela = 'PROEKT'
  100936.         SELECT * FROM Proekt WITH(NOLOCK)  WHERE Broj_Proekt=@Sifra
  100937.     ELSE IF @Tabela = 'TIPPRODMESTO'
  100938.         SELECT * FROM TipProdMesto WITH(NOLOCK) WHERE Sif_TipProdM = @Sifra
  100939.     ELSE IF @Tabela = 'GRART'
  100940.         SELECT * FROM GrART WITH(NOLOCK)  WHERE Sif_GrArt=@Sifra
  100941.         ELSE IF @Tabela = 'BOJA'
  100942.         SELECT * FROM Boja WITH(NOLOCK)  WHERE Sifra_Boja=@Sifra   
  100943.         ELSE IF @Tabela = 'VELICINA'
  100944.         SELECT * FROM Velicina WITH(NOLOCK)  WHERE Sifra_Velic=@Sifra    
  100945.      ELSE IF @Tabela='RABKALENDAR'
  100946.         SELECT * FROM RabKalendar with (NOLOCK) where Datum=@Sifra
  100947.     ELSE IF @Tabela='SPREMAC'
  100948.         SELECT * FROM Spremac with (NOLOCK) where Sif_Spremac=@Sifra
  100949.     ELSE IF @Tabela='FAZI'
  100950.         SELECT * FROM Fazi with (NOLOCK) where Sifra_Faza=@Sifra
  100951.     ELSE IF @Tabela='KATPODSIFRA'
  100952.         SELECT K.*, B.ImeBoja, V.ImeVelic 
  100953.         FROM KatPodSifra K with (NOLOCK) LEFT OUTER JOIN
  100954.             Boja B ON K.Sifra_Boja = B.Sifra_Boja LEFT OUTER JOIN
  100955.             Velicina V ON V.Sifra_Velic = K.Sifra_Velic
  100956.         where Sifra_Art=@Sifra
  100957.         IF @@ROWCOUNT = 0
  100958.         RETURN 77000
  100959.     ELSE
  100960.         RETURN 0
  100961.         
  100962.  
  100963.  
  100964.  
  100965. Go
  100966. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimatic_mk]'))
  100967. drop procedure [dbo].[sp_podignimatic_mk]
  100968.  
  100969. Go
  100970.  
  100971.  
  100972. CREATE PROCEDURE sp_PodigniMatic_MK
  100973.     @Sifra nVarchar(20),
  100974.     @Tabela Varchar(20),
  100975.     @ImeTugaSifra Char(1) = 'N'
  100976. AS
  100977.     SET @Tabela=UPPER(@Tabela)
  100978.     IF @Tabela='KATHIER'
  100979.         If @ImeTugaSifra = 'D'
  100980.             SELECT KH.*, G.Ime_KHier as Ime_KHier_Hier
  100981.             FROM KatHier KH WITH(NOLOCK)
  100982.             Left Outer Join KatHier G On G.Sifra_KHier = KH.Sifra_KHier_Hier
  100983.             WHERE KH.Sifra_KHier=@Sifra
  100984.         Else
  100985.                 SELECT * FROM KatHier WITH(NOLOCK) WHERE Sifra_KHier=@Sifra
  100986.     IF @@ROWCOUNT = 0
  100987.         RETURN 77000
  100988.     ELSE
  100989.         RETURN 0
  100990.  
  100991.  
  100992.  
  100993. Go
  100994. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimattipdok]'))
  100995. drop procedure [dbo].[sp_podignimattipdok]
  100996.  
  100997. Go
  100998.  
  100999.  
  101000.  
  101001. CREATE      PROCEDURE sp_PodigniMatTipDok
  101002. AS
  101003.     SELECT Sifra_Dok, ImeDok, Sifra_Za, Dev, Vl_Izl, AnalKupDob, TipDok FROM TipDok WHERE DaliMater = 'D'
  101004.            order by sifra_dok
  101005.  
  101006.  
  101007.  
  101008. Go
  101009. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimattipdok_neg]'))
  101010. drop procedure [dbo].[sp_podignimattipdok_neg]
  101011.  
  101012. Go
  101013.  
  101014.  
  101015. create  PROCEDURE sp_PodigniMatTipDok_Neg
  101016. AS
  101017.     SELECT Sifra_Dok, ImeDok, Sifra_Za, Dev, Vl_Izl, AnalKupDob, TipDok 
  101018.     FROM TipDok 
  101019.     WHERE DaliMater = 'D' and plus_minus = '-'
  101020.         order by sifra_dok
  101021.  
  101022.  
  101023.  
  101024. Go
  101025. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimaxbrdok]'))
  101026. drop procedure [dbo].[sp_podignimaxbrdok]
  101027.  
  101028. Go
  101029.  
  101030. create PROCEDURE [dbo].[sp_PodigniMaxBrDok]
  101031.    @Sifra_OE Smallint,
  101032.    @Sifra_Dok Smallint,
  101033.     @Broj_Dok int output
  101034. AS    
  101035.    SELECT @Broj_Dok = MAX(Broj_Dok)  FROM BrDok
  101036.    WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok 
  101037.  
  101038.       RETURN @@ERROR
  101039.  
  101040.  
  101041.  
  101042.  
  101043.  
  101044.  
  101045. Go
  101046. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimaxspecanfin]'))
  101047. drop procedure [dbo].[sp_podignimaxspecanfin]
  101048.  
  101049. Go
  101050.  
  101051. CREATE    PROCEDURE sp_PodigniMaxSpecAnFin
  101052.     @NovID int=0 output
  101053. AS
  101054.     SELECT @NovID = MAX(Broj_SpecFin) + 1 FROM SpecAnFin 
  101055.     IF @NovID IS Null set @NovID=1
  101056.  
  101057.  
  101058.  
  101059. Go
  101060. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimckatpoz]'))
  101061. drop procedure [dbo].[sp_podignimckatpoz]
  101062.  
  101063. Go
  101064.  
  101065. create          PROCEDURE [dbo].[sp_PodigniMCKatPoz]
  101066.     @Sif_MCPozicija int
  101067. AS
  101068.     SELECT    *
  101069.     FROM    MCKatPozicija
  101070.     WHERE    Sif_MCPozicija = @Sif_MCPozicija
  101071.  
  101072.  
  101073.  
  101074.  
  101075.  
  101076. Go
  101077. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimclista]'))
  101078. drop procedure [dbo].[sp_podignimclista]
  101079.  
  101080. Go
  101081. create  PROCEDURE [dbo].[sp_PodigniMCLista]
  101082.     @Br_MCLista    smallint,
  101083.     @Sif_MCPozicija    smallint
  101084. AS
  101085.  
  101086.     SELECT    *
  101087.     FROM    MCLista
  101088.     WHERE    Br_MCLista = @Br_MCLista AND Sif_MCPozicija = @Sif_MCPozicija
  101089.     Return @@Error
  101090.  
  101091.  
  101092.  
  101093. Go
  101094. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimcstavki]'))
  101095. drop procedure [dbo].[sp_podignimcstavki]
  101096.  
  101097. Go
  101098.  
  101099.  
  101100. CREATE    PROCEDURE [dbo].[sp_PodigniMCStavki]
  101101.     @Sifra_Pat smallint,
  101102.     @cDatum_MC char(6),
  101103.     @Br_MCLista    smallint,
  101104.     @Sif_MCPozicija    smallint,
  101105.     @Sifra_Kup char(6),
  101106.     @Sifra_Obj smallint
  101107. AS
  101108.  
  101109. declare @SSQL as varchar(300)
  101110.  
  101111. set @SSQL = ' SELECT    * FROM    MCStavki
  101112.     WHERE 1 = 1 '
  101113.  
  101114.     IF @Sifra_Pat is not null
  101115.         SET @SSQL = @SSQL + ' AND Sifra_Pat = ' +cast(@Sifra_Pat as varchar(5))+ ' '
  101116.     IF @cDAtum_MC is not null
  101117.         SET @SSQL = @SSQL + ' AND cDatum_MC = ' +cast(@cDatum_MC as varchar(6))+ ' ' 
  101118.     IF @Br_MCLista is not null
  101119.         SET @SSQL = @SSQL + ' AND Br_MCLista = ' +cast(@Br_MCLista as varchar(5))+ ' ' 
  101120.     IF @Sif_MCPozicija is not null
  101121.         SET @SSQL = @SSQL + ' AND Sif_MCPozicija = ' +cast(@Sif_MCPozicija as varchar(5))+ ' ' 
  101122.     IF @Sifra_Kup is not null
  101123.         SET @SSQL = @SSQL + ' AND Sifra_Kup = ' +cast(@Sifra_Kup as char(6))+ ' ' 
  101124.     IF @Sifra_Obj is not null
  101125.         SET @SSQL = @SSQL + ' AND Sifra_Obj = ' +cast(@Sifra_Obj as varchar(6))+ ' ' 
  101126.     else if @Sifra_Obj is null
  101127.         set @SSQL = @SSQL + ' AND SIFRA_Obj is null '    
  101128.     
  101129.      
  101130.     exec (@SSQL)        
  101131.     print(@SSQL)
  101132.         
  101133.  
  101134.  
  101135.  
  101136.  
  101137.  
  101138.  
  101139. Go
  101140. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimerenjazaart]'))
  101141. drop procedure [dbo].[sp_podignimerenjazaart]
  101142.  
  101143. Go
  101144.  
  101145.  
  101146.  
  101147. CREATE    PROCEDURE sp_PodigniMerenjaZaArt
  101148.     @Sifra_Kup    char(6),
  101149.     @Datum        smalldatetime,
  101150.     @Sifra_Art    varchar(20)
  101151. AS
  101152.     SELECT * 
  101153.     FROM MerenjaZaArt
  101154.     WHERE Sifra_Kup=@Sifra_Kup and Datum=@Datum and Sifra_Art=@Sifra_Art
  101155.  
  101156.  
  101157.  
  101158.  
  101159. Go
  101160. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimmozalpoorged]'))
  101161. drop procedure [dbo].[sp_podignimmozalpoorged]
  101162.  
  101163. Go
  101164.  
  101165.  
  101166. CREATE      PROCEDURE sp_PodigniMMOZalPoOrgEd
  101167.     @Sifra_Oe    smallint,
  101168.         @ImeArtDel    nvarchar(20) = Null,
  101169.         @SifArtDel    varchar(20) = Null,
  101170.         @SifArtTocen    varchar(20) = Null
  101171.  
  101172. AS
  101173.  
  101174.         Declare @SSQL as varchar(8000)
  101175.  
  101176.     Set @SSQL = '
  101177.             Select K.Sifra_Art, K.ImeArt, O.Dozvoleno, O.MinZal, O.MaxZal, O.OptZal
  101178.         From KatArt K 
  101179.             Left Outer Join OptZalPoOe O 
  101180.             ON K.Sifra_Art=O.Sifra_Art and O.Sifra_Oe = ' +  Cast(@Sifra_Oe as varchar(6))
  101181.  
  101182.     Set @SSQL = @SSQL + ' Where 1=1 '
  101183.     If @ImeArtDel IS NOT NULL  
  101184.            Set @SSQL = @SSQL + ' and K.ImeArt Like ''' + @ImeArtDel + '%'' '   
  101185.         If @SifArtDel IS NOT NULL 
  101186.            Set @SSQL = @SSQL + ' and K.Sifra_Art Like ''' + @SifArtDel + '%'' '   
  101187.         If @SifArtTocen IS NOT NULL 
  101188.            Set @SSQL = @SSQL + ' and K.Sifra_Art = ''' + @SifArtTocen + ''' ' 
  101189.  
  101190.         Set @SSQL = @SSQL + ' order by K.ImeArt '
  101191.  
  101192. --       print (@SSQL)
  101193.  
  101194.        exec (@SSQL)
  101195.        Return @@ERROR
  101196.  
  101197.  
  101198.  
  101199.  
  101200.  
  101201.  
  101202.  
  101203. Go
  101204. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignimozevlez]'))
  101205. drop procedure [dbo].[sp_podignimozevlez]
  101206.  
  101207. Go
  101208.  
  101209. CREATE PROCEDURE sp_PodigniMozeVlez
  101210.     @Sifra_Art varchar(20),
  101211.     @Sifra_OE  smallint,
  101212.     @Zabr_Fors char(1)  OUTPUT,
  101213.     @Zabr_Top  char(1)  OUTPUT
  101214. AS
  101215.     Set @Zabr_Fors = 'N'
  101216.     Set @Zabr_Top  = 'N'
  101217.     SELECT @Zabr_Fors=KojaZabr_F, @Zabr_Top=KojaZabr_T
  101218.     FROM MozeVlez 
  101219.     WHERE Sifra_Art = @Sifra_Art AND Sifra_OE = @Sifra_OE
  101220. /*   IF @@ERROR=0 AND @@ROWCOUNT=0
  101221.       RETURN 77000
  101222.    ELSE
  101223.       RETURN @@ERROR */
  101224.  
  101225.  
  101226.  
  101227. Go
  101228. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninadvkor]'))
  101229. drop procedure [dbo].[sp_podigninadvkor]
  101230.  
  101231. Go
  101232. CREATE  PROCEDURE [dbo].[sp_PodigniNadvKor]
  101233.     @KorIme    varchar(15),
  101234.     @Lozinka          varchar(100)
  101235.  AS
  101236.     --Select *,KorIme, Sifra_Kup, Lozinka, Aktiven, Aktiven_Od, Aktiven_Do, Jazik
  101237.     Declare @Datum smalldatetime
  101238.     Set @Datum = GetDate()
  101239.     Select *
  101240.     From NadvKor N
  101241.     left outer join komint K on K.Sifra_Kup = N.Sifra_Kup
  101242.     Where KorIme=@KorIme and Lozinka = cast(@Lozinka as varbinary(100)) and @Datum > N. Aktiven_Od and   @Datum < N.Aktiven_Do
  101243.  
  101244. Go
  101245. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninadvkorkomint]'))
  101246. drop procedure [dbo].[sp_podigninadvkorkomint]
  101247.  
  101248. Go
  101249. CREATE  procedure [dbo].[sp_PodigniNadvKorKomint]
  101250.  @SifraKup char(6),
  101251.  @LokAdm char(1)=null,
  101252.  @Podred varchar(50) = Null
  101253. AS
  101254.  
  101255. Declare @SSQL as varchar(2000)
  101256.  
  101257. Set @SSQL = ' Select * From NadvKor N
  101258.         left outer join komint K on K.Sifra_Kup = N.Sifra_Kup
  101259.         Where 1=1 '
  101260. If @LokAdm = 'L'
  101261.     Set @SSQL = @SSQL + ' And N.Sifra_Kup = ' + @SifraKup + ' '
  101262. If @Podred Is Not Null
  101263.     Set @SSQL = @SSQL + ' Order By N.' + @Podred + ' '
  101264.  
  101265. If @LokAdm In ('L', 'A')
  101266.     Exec(@SSQL)
  101267.  
  101268.  
  101269. Go
  101270. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninalozi]'))
  101271. drop procedure [dbo].[sp_podigninalozi]
  101272.  
  101273. Go
  101274. CREATE   PROCEDURE sp_PodigniNalozi
  101275.    @Sifra_Nal Smallint,
  101276.    @Broj_Nal Int
  101277. AS
  101278.    SELECT N.*, T.PredlDatNaDok  FROM Nalozi N INNER JOIN TipNal T ON N.Sifra_Nal = T.Sifra_Nal
  101279.    WHERE N.Sifra_Nal=@Sifra_Nal AND N.Broj_Nal=@Broj_Nal
  101280.    IF @@ERROR=0
  101281.       IF @@ROWCOUNT=1
  101282.          RETURN 0
  101283.       ELSE
  101284.          RETURN 77000
  101285.    ELSE
  101286.       RETURN @@ERROR
  101287.  
  101288.  
  101289. Go
  101290. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninaplata]'))
  101291. drop procedure [dbo].[sp_podigninaplata]
  101292.  
  101293. Go
  101294. CREATE PROCEDURE sp_PodigniNaplata
  101295.     @Sifra_OE    smallint = Null,
  101296.     @Sifra_Dok    smallint = Null,
  101297.     @Broj_Dok    int = Null
  101298. AS
  101299.     Select Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Kup, Pobaruva, Datum_Dok
  101300.     From Naplata
  101301.     Where Sifra_OE=@Sifra_Oe and Sifra_Dok=@Sifra_Dok and Broj_Dok=@Broj_Dok
  101302.  
  101303.  
  101304. Go
  101305. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninaracki]'))
  101306. drop procedure [dbo].[sp_podigninaracki]
  101307.  
  101308. Go
  101309.  
  101310.  
  101311.  
  101312. CREATE                  PROCEDURE sp_PodigniNaracki
  101313.     @Sifra_OE Smallint,
  101314.     @Sifra_Nar Smallint,
  101315.     @Broj_Nar Int
  101316. AS
  101317.     SELECT N.NarID, N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Sifra_Obj, N.Datum_Nar, N.Datum_Vnes, N.Datum_Izm, N.Uces, N.Rok, N.Sifra_Pat, N.Sifra_Oper, 
  101318.         N.Sifra_OpIz, N.Toc200, N.KojaVal, N.Kurs, N.DanDokCena, N.DanmagCena, N.CenaIznos, N.TekstPosle, N.Realiziran, N.Realiz_Na, N.DokrID, N.Kasa, N.Sifra_Nivo, N.Prenesen, 
  101319.         N.Spremil, N.SiteTros, N.Prevoz, N.Osiguruv, N.Carina, N.Spedicija, N.Smena, N.KojaSmetka, N.PlakOpis, N.Dat_Ocek, N.Dat_Pristig, N.Dat_Utov, N.Vet_Broj, N.Dat_Vet_Vazn, 
  101320.         N.Vozilo_Kont, N.Stat_Nar, N.Stat_Dok_Nar, K.ImeKup, O.ImeOrg, K.Limit_Dolzi, KO.ImeObj, N.Broj_Proekt, N.TekstPred,
  101321.         N.Sifra_Prev, N.Sifra_Za_Prim, N.Dat_Isporaka
  101322.     FROM Naracki N Left Outer Join Komint K ON N.Sifra_Kup=K.Sifra_Kup
  101323.     INNER JOIN OrgEd O ON N.Sifra_Oe=O.Sifra_OE
  101324.     LEFT OUTER JOIN KObjekti KO on KO.Sifra_Kup=N.Sifra_Kup and KO.Sifra_Obj=N.Sifra_Obj
  101325.     WHERE N.Sifra_OE=@Sifra_OE AND N.Sifra_Nar=@Sifra_Nar AND N.Broj_Nar=@Broj_Nar
  101326. --    WHERE Sifra_OE=cast(@Sifra_OE as varchar(6))  AND Sifra_Nar=cast(@Sifra_Nar as varchar(6))  AND Broj_Nar=cast(@Broj_Nar as varchar(8))
  101327.  
  101328.  
  101329.  
  101330.  
  101331.  
  101332.  
  101333.  
  101334.  
  101335.  
  101336.  
  101337.  
  101338. Go
  101339. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninarackiskrsoid]'))
  101340. drop procedure [dbo].[sp_podigninarackiskrsoid]
  101341.  
  101342. Go
  101343.  
  101344.  
  101345.  
  101346. CREATE           PROCEDURE sp_PodigniNarackiSkrSoID
  101347.     @NarID Int
  101348. AS
  101349.     SELECT Sifra_OE, Sifra_Nar, Broj_Nar FROM Naracki WHERE NarID=@NarID
  101350.  
  101351.  
  101352.  
  101353. Go
  101354. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninarackizakup]'))
  101355. drop procedure [dbo].[sp_podigninarackizakup]
  101356.  
  101357. Go
  101358.  
  101359.  
  101360.  
  101361.  
  101362.  
  101363.  
  101364. CREATE                 PROCEDURE sp_PodigniNarackiZaKup
  101365.     @Sifra_Kup    char(6),
  101366.     @Sifra_Obj    smallint,
  101367.     @Sifra_Nar    varchar(20)=NULL
  101368. AS
  101369. Declare @SSQL varchar(2000)
  101370. CREATE TABLE #TmpTN
  101371. (Sifra_Nar    smallint)
  101372. IF @Sifra_Nar IS NOT NULL
  101373. Begin
  101374.     SET @SSQL='INSERT INTO #TmpTN SELECT Sifra_Nar FROM TipNarac WHERE Sifra_Nar IN ('+@Sifra_Nar+')'
  101375.     EXEC (@SSQL)
  101376. End
  101377. ELSE
  101378.     INSERT INTO #TmpTN SELECT Sifra_Nar FROM TipNarac  
  101379.  
  101380. CREATE TABLE #TmpN
  101381. (Sifra_Oe    smallint,
  101382. Sifra_Nar    smallint,
  101383. Broj_Nar    int,
  101384. Datum_Nar    smalldatetime,
  101385. Sifra_Pat    smallint,
  101386. Odobreno        char(1))
  101387.  
  101388. CREATE TABLE #TmpO
  101389. (Sifra_Oe    smallint,
  101390. Sifra_Nar    smallint,
  101391. Broj_Nar    int,
  101392. Odobreno        char(1))
  101393.  
  101394. IF @Sifra_Obj IS NULL
  101395.     INSERT INTO #TmpN (Sifra_Oe, Sifra_Nar, Broj_Nar, Datum_Nar, Sifra_Pat, Odobreno)
  101396.     SELECT TOP 20 N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_Pat,0
  101397.     FROM Naracki N INNER JOIN TipNarac TN ON N.Sifra_Nar=TN.Sifra_Nar
  101398.     INNER JOIN #TmpTN T ON N.Sifra_Nar=T.Sifra_Nar
  101399.     WHERE N.Sifra_Kup=@Sifra_Kup AND TN.VlIzl='I' ORDER BY N.NarID DESC
  101400. ELSE
  101401.     INSERT INTO #TmpN (Sifra_Oe, Sifra_Nar, Broj_Nar, Datum_Nar, Sifra_Pat,Odobreno)
  101402.     SELECT TOP 20 N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Sifra_Pat,0
  101403.     FROM Naracki N INNER JOIN TipNarac TN ON N.Sifra_Nar=TN.Sifra_Nar
  101404.     INNER JOIN #TmpTN T ON N.Sifra_Nar=T.Sifra_Nar
  101405.     WHERE N.Sifra_Kup=@Sifra_Kup AND N.Sifra_Obj=@Sifra_Obj AND TN.VlIzl='I' ORDER BY N.NarID DESC
  101406.  
  101407. INSERT INTO #TmpO SELECT N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, Count(DISTINCT S.Lokacija) FROM #TmpN N 
  101408. INNER JOIN StaNarac S ON S.Sifra_OE=N.Sifra_OE AND S.Sifra_Nar=N.Sifra_Nar AND S.Broj_Nar=N.Broj_Nar AND (Lokacija IS NOT NULL AND Lokacija<>'')
  101409. GROUP BY N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar
  101410. UPDATE #TmpO SET Odobreno=0 WHERE Odobreno IS NULL
  101411.  
  101412. UPDATE #TmpN SET Odobreno=S.Odobreno FROM #TmpO S WHERE S.Sifra_OE=#TmpN.Sifra_OE AND S.Sifra_Nar=#TmpN.Sifra_Nar AND S.Broj_Nar=#TmpN.Broj_Nar
  101413.  
  101414. SELECT * FROM #TmpN 
  101415.  
  101416.  
  101417.  
  101418.  
  101419.  
  101420.  
  101421.  
  101422. Go
  101423. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninaracsite]'))
  101424. drop procedure [dbo].[sp_podigninaracsite]
  101425.  
  101426. Go
  101427.  
  101428. CREATE                   PROCEDURE sp_PodigniNaracSite
  101429.    @Sifra_OE smallint,
  101430.    @Sifra_Nar smallint,
  101431.    @Broj_Nar int, 
  101432.    @Usluzna char(1) = Null OUTPUT
  101433. AS
  101434.     SELECT Nar.*,
  101435.         O.[ImeOrg], TN.[ImeNar], TN.[VlIzl], TN.[Naslov], K.[ImeKup], K.[Adresa], K.[Adresa2], K.[SMesto], K.[Posta], K.[Zemja], K.[Telefon], OB.[ImeObj], 
  101436.         OB.[Adresa] As OAdresa, OB.[Adresa2] As OAdresa2, OB.[SMesto] As OSMesto, OB.[Posta] As OPosta, OB.[Zemja] As OZemja, OB.[Telefon] As OTelefon, 
  101437.         TN.Obrazec, P.ImePat, (Case When OB.Sifra_Reg Is not Null Then OB.Sifra_Reg Else K.Sifra_Reg End) Sifra_Reg, R.ImeRegion, TN.Oznaka_Obrazec 
  101438.     FROM [Naracki] Nar
  101439.     INNER JOIN Orged O ON Nar.[Sifra_OE]=O.[Sifra_OE]
  101440.     INNER JOIN TipNarac TN ON Nar.[Sifra_Nar]=TN.[Sifra_Nar] 
  101441.     LEFT OUTER JOIN Komint K ON Nar.[Sifra_Kup]=K.[Sifra_Kup]
  101442.     LEFT OUTER JOIN KObjekti OB ON Nar.Sifra_Kup=OB.Sifra_Kup And Nar.Sifra_Obj=OB.Sifra_Obj
  101443.     LEFT OUTER JOIN Patnici P On P.Sifra_Pat=Nar.Sifra_Pat
  101444.     LEFT OUTER JOIN GRegion R On R.Sifra_Reg = (Case When OB.Sifra_Reg Is not Null Then OB.Sifra_Reg Else K.Sifra_Reg End)
  101445.     WHERE Nar.[Sifra_OE]=@Sifra_OE
  101446.         AND Nar.[Sifra_Nar]=@Sifra_Nar
  101447.         AND Nar.[Broj_Nar]=@Broj_Nar
  101448. ------------------------  Proverka dali site artikli vo narackata se usluzni  -------------------------
  101449.     Declare @SiteStavki as int
  101450.     Declare @UslStavki as int
  101451.     Select @SiteStavki=count(SN.StaNarID)
  101452.     From Naracki N 
  101453.     Inner Join StaNarac SN On SN.NarID=N.NarID
  101454.     Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  101455.     WHERE N.Sifra_OE=@Sifra_OE AND N.Sifra_Nar=@Sifra_Nar AND N.Broj_Nar=@Broj_Nar
  101456.     Select @UslStavki=count(SN.StaNarID)
  101457.     From Naracki N 
  101458.     Inner Join StaNarac SN On SN.NarID=N.NarID
  101459.     Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art
  101460.     WHERE N.Sifra_OE=@Sifra_OE AND N.Sifra_Nar=@Sifra_Nar AND N.Broj_Nar=@Broj_Nar
  101461.     And K.SMatUsl = 'U'
  101462.     If @SiteStavki=@UslStavki 
  101463.         Set @Usluzna = 'D'
  101464. ---------------------------------------------------------------------------------------------------------------------------------
  101465.  
  101466.  
  101467.  
  101468. Go
  101469. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninarreallok]'))
  101470. drop procedure [dbo].[sp_podigninarreallok]
  101471.  
  101472. Go
  101473. CREATE PROCEDURE sp_PodigniNarRealLok
  101474.     @NarID        int,
  101475.     @Lokacija    varchar(10)
  101476.  AS
  101477.     Select  NarID, Lokacija, Sifra_Oper, Dodaden_Na
  101478.     From NarRealLok
  101479.     Where NarID=@NarID And Lokacija=@Lokacija
  101480.  
  101481.  
  101482. Go
  101483. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigningbillcodes]'))
  101484. drop procedure [dbo].[sp_podigningbillcodes]
  101485.  
  101486. Go
  101487.  
  101488.  
  101489.  
  101490. CREATE    PROCEDURE sp_PodigniNGBillCodes
  101491.     @Sifra_BillCode    char(10)
  101492. AS
  101493.     Select Sifra_BillCode, ImeBillCode, DefIznos, BrojRati, DenoviVoGod, DP, Tip_BillCode, DefProcent,
  101494.            PoDatumi, Datum1, Datum2, Datum3, Datum4, Datum5, Datum6,
  101495.            Datum7, Datum8, Datum9, Datum10, Datum11, Datum12, Opis_Fakt,
  101496.            DniDospDef
  101497.     From NGBillCodes 
  101498.     Where Sifra_BillCode=@Sifra_BillCode
  101499.  
  101500.  
  101501.  
  101502.  
  101503.  
  101504.  
  101505. Go
  101506. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigningcoursetype]'))
  101507. drop procedure [dbo].[sp_podigningcoursetype]
  101508.  
  101509. Go
  101510. CREATE  PROCEDURE sp_PodigniNGCourseType
  101511.     @Sifra_CourseType    char(10)
  101512. AS
  101513.     Select Sifra_CourseType, ImeCourseType, NivoCourseType
  101514.     From NGCourseType 
  101515.     Where Sifra_CourseType=@Sifra_CourseType
  101516.  
  101517.  
  101518. Go
  101519. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigningfamilija]'))
  101520. drop procedure [dbo].[sp_podigningfamilija]
  101521.  
  101522. Go
  101523. CREATE PROCEDURE sp_PodigniNGFamilija
  101524.     @Sifra_Famil    char(20)
  101525. AS
  101526.     Select Sifra_Famil, ImeFAmil
  101527.     From NGFamilija 
  101528.     Where Sifra_Famil=@Sifra_Famil
  101529.  
  101530.  
  101531.  
  101532. Go
  101533. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigningfrasta]'))
  101534. drop procedure [dbo].[sp_podigningfrasta]
  101535.  
  101536. Go
  101537. CREATE PROCEDURE sp_PodigniNGFraSta
  101538.     @Sifra_Student        char(6), 
  101539.     @Broj_Inv        int = Null,
  101540.     @Sifra_Famil        char(20) = Null,
  101541.     @Kurs            decimal(18,4) = 1,
  101542.     @BrFri            smallint = Null Output
  101543. AS
  101544.     Declare @SSQL as varchar(8000)
  101545.     Set @SSQL = ' Select F.Sifra_Student, S.ImeStudent, FS.Sifra_Oe, FS.Broj_Inv, FS.RbrStavka, FS.Datum_Stavka, 
  101546.                 (Case When BK.Tip_BillCode In (''C'',''N'',''P'') Then Null Else FS.Datum_Dosp_Stavka End) Datum_Dosp_Stavka, 
  101547.                 FS.Sifra_BillCode, BK.ImeBillCode, FS.Sifra_OtherCode, FS.Opis_Stavka, BK.Tip_BillCode, '
  101548.     If @Kurs > 1 
  101549.         Set @SSQL = @SSQL + ' FS.Iznos_Stavka * ' + Cast(@Kurs as varchar(20)) + ' Iznos_Stavka '
  101550.     Else 
  101551.         Set @SSQL = @SSQL + ' FS.Iznos_Stavka '
  101552.     Set @SSQL = @SSQL + ' From NGInvoice F
  101553.                   Inner Join NGInvoiceSta FS On FS.Sifra_Oe=F.Sifra_Oe And FS.Broj_Inv=F.Broj_Inv
  101554.                   Inner Join NGStudents S On S.Sifra_Student=F.Sifra_Student
  101555.                   Left Outer Join NGBillCodes BK On BK.Sifra_BillCode=FS.Sifra_BillCode
  101556.                   Where 1=1 ' 
  101557.     If @Sifra_Student Is Not Null
  101558.         Set @SSQL = @SSQL + ' And F.Sifra_Student = ''' + @Sifra_Student + ''' '
  101559.     If @Broj_Inv Is Not Null
  101560.         Set @SSQL = @SSQL + ' And F.Broj_Inv = ' + Cast(@Broj_Inv as varchar(10)) + ' '
  101561.     If @Sifra_Famil Is Not Null
  101562.         Set @SSQL = @SSQL + ' And S.Sifra_Famil = ''' + @Sifra_Famil + ''' '
  101563.     Exec(@SSQL)
  101564.  
  101565.     Create Table #Tab
  101566.     (
  101567.         BrFri    smallint
  101568.     )
  101569.     Set @SSQL = ' Select Count(F.Broj_Inv) 
  101570.             From NGInvoice F
  101571.             Inner Join NGStudents S On S.Sifra_Student=F.Sifra_Student
  101572.             Where 1=1 '
  101573.     If @Sifra_Student Is Not Null
  101574.         Set @SSQL = @SSQL + ' And F.Sifra_Student = ''' + @Sifra_Student + ''' '
  101575.     If @Broj_Inv Is Not Null 
  101576.         Set @SSQL = @SSQL + ' And F.Broj_Inv = ' + Cast(@Broj_Inv as varchar(6)) + ' '
  101577.     If @Sifra_Famil Is Not Null 
  101578.         Set @SSQL = @SSQL + ' And S.Sifra_Famil = ''' + @Sifra_Famil + ''' '
  101579.     Insert Into #Tab Exec(@SSQL)
  101580.     Set @BrFri = (Select BrFri From #Tab)
  101581.  
  101582. Go
  101583. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninginvoice]'))
  101584. drop procedure [dbo].[sp_podigninginvoice]
  101585.  
  101586. Go
  101587.  
  101588. CREATE  PROCEDURE sp_PodigniNGInvoice
  101589.     @Sifra_Oe    smallint,
  101590.     @Broj_Inv    int
  101591. AS
  101592.     Select Sifra_Oe, Broj_Inv, FiscPeriod, Sifra_Student, Datum_Inv, Opis_Invoice, SlobTekst,
  101593.         Y.ImeSchoolYear
  101594.     From NGInvoice I
  101595.     left outer join NGSchoolYear Y  on I.FiscPeriod = Y.Sifra_SchoolYear
  101596.     Where Sifra_Oe=@Sifra_Oe And Broj_Inv=@Broj_Inv
  101597.  
  101598.  
  101599.  
  101600. Go
  101601. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninginvoicestasite]'))
  101602. drop procedure [dbo].[sp_podigninginvoicestasite]
  101603.  
  101604. Go
  101605.  
  101606.  
  101607. CREATE   PROCEDURE sp_PodigniNGInvoiceStaSite
  101608.  
  101609.     @Sifra_Oe        smallint, 
  101610.     @Broj_Inv        int
  101611. AS
  101612.     Select Sifra_Oe, Broj_Inv, RbrStavka, Datum_Stavka, Datum_Dosp_Stavka, S.Sifra_BillCode, 
  101613.         Sifra_OtherCode, Iznos_Stavka, Opis_Stavka, C.Tip_BillCode
  101614.     From NGInvoiceSta S
  101615.     Left Outer Join NGBillCodes C on S.Sifra_BillCode = C.Sifra_BillCode
  101616.     Where Sifra_Oe=@Sifra_Oe And Broj_Inv=@Broj_Inv
  101617.  
  101618.  
  101619.  
  101620. Go
  101621. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninginvoicestastavka]'))
  101622. drop procedure [dbo].[sp_podigninginvoicestastavka]
  101623.  
  101624. Go
  101625. CREATE PROCEDURE sp_PodigniNGInvoiceStaStavka
  101626.     @Sifra_Oe        smallint, 
  101627.     @Broj_Inv        int, 
  101628.     @RbrStavka        smallint
  101629. AS
  101630.     Select Sifra_Oe, Broj_Inv, RbrStavka, Datum_Stavka, Datum_Dosp_Stavka, Sifra_BillCode, Sifra_OtherCode, Iznos_Stavka, Opis_Stavka
  101631.     From NGInvoiceSta
  101632.     Where Sifra_Oe=@Sifra_Oe And Broj_Inv=@Broj_Inv And RbrStavka=@RbrStavka
  101633.  
  101634.  
  101635. Go
  101636. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigningschoolyear]'))
  101637. drop procedure [dbo].[sp_podigningschoolyear]
  101638.  
  101639. Go
  101640.  
  101641. create   PROCEDURE sp_PodigniNGSchoolYear
  101642.     @Sifra_SchoolYear    char(10)
  101643. AS
  101644.     Select Sifra_SchoolYear, ImeSchoolYear
  101645.     From NGSchoolYear
  101646.     Where Sifra_SchoolYear = @Sifra_SchoolYear
  101647.  
  101648.  
  101649.  
  101650. Go
  101651. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigningstudents]'))
  101652. drop procedure [dbo].[sp_podigningstudents]
  101653.  
  101654. Go
  101655.  
  101656.  
  101657.  
  101658. CREATE    PROCEDURE sp_PodigniNGStudents
  101659.     @Sifra_Student    char(6)
  101660. AS
  101661.     Select Sifra_Student, ImeStudent, Adresa, Posta, SMesto, Telefon, S.Sifra_Famil, 
  101662.         S.Sifra_CourseType, Godina, Aktiven, Adresa_Bill, Posta_Bill, SMesto_Bill,
  101663.         ImeStudent_Bill, TelMob, eMailAdr, C.ImeCourseType, Fam.ImeFamil, Zemja
  101664.     From NGStudents  S
  101665.     left outer join NGFamilija Fam on S.Sifra_Famil = Fam.Sifra_Famil
  101666.     left outer join NGCourseType C on S.Sifra_CourseType = C.Sifra_CourseType
  101667.     Where Sifra_Student=@Sifra_Student
  101668.  
  101669.  
  101670.  
  101671.  
  101672.  
  101673. Go
  101674. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigninisto]'))
  101675. drop procedure [dbo].[sp_podigninisto]
  101676.  
  101677. Go
  101678.  
  101679.  
  101680. create  PROCEDURE sp_PodigniNisto
  101681. AS
  101682. select imepret from Konfig
  101683. RETURN @@ERROR
  101684.  
  101685.  
  101686.  
  101687. Go
  101688. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignioeodgrorg]'))
  101689. drop procedure [dbo].[sp_podignioeodgrorg]
  101690.  
  101691. Go
  101692. CREATE PROCEDURE sp_PodigniOEOdGrOrg
  101693.     @Sif_GrOrg    char(6)
  101694. AS
  101695. SELECT Sifra_Oe, ImeOrg FROM Orged WHERE Sifra_OE IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrg)
  101696.  
  101697.  
  101698. Go
  101699. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignioperaciisite]'))
  101700. drop procedure [dbo].[sp_podignioperaciisite]
  101701.  
  101702. Go
  101703.  
  101704. CREATE  PROCEDURE sp_PodigniOperaciiSite
  101705. AS
  101706.     SELECT * FROM  Operacii
  101707.   IF @@ROWCOUNT = 0
  101708.       RETURN 77000
  101709.    ELSE
  101710.       RETURN 0
  101711.  
  101712.  
  101713.  
  101714. Go
  101715. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignioperacija]'))
  101716. drop procedure [dbo].[sp_podignioperacija]
  101717.  
  101718. Go
  101719.  
  101720. CREATE  PROCEDURE sp_PodigniOperacija
  101721. AS
  101722.     SELECT *  FROM  Operacii
  101723.     WHERE Operacija = 'a-komint'
  101724. IF @@ROWCOUNT = 0
  101725.       RETURN 77000
  101726. ELSE
  101727.       RETURN 0
  101728.  
  101729.  
  101730.  
  101731. Go
  101732. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniopersolozinka]'))
  101733. drop procedure [dbo].[sp_podigniopersolozinka]
  101734.  
  101735. Go
  101736. CREATE     PROCEDURE sp_PodigniOperSoLozinka
  101737.     @Login_Ime    varchar(20),
  101738.     @Lozinka    varchar(20),
  101739.     @Sifra_Oper    smallint = null OUTPUT,
  101740.     @Ime_Oper    varchar(50) = null OUTPUT,
  101741.     @Sifra_OE    smallint = null OUTPUT,
  101742.     @MaxPopust    decimal (6, 2) = null OUTPUT,
  101743.     @Sif_GrOrg    char(6) = null OUTPUT    
  101744. AS
  101745. SELECT @Sifra_Oper = Sifra_Oper, @Ime_Oper = Ime_Oper, @Sifra_OE=Sifra_OE, @MaxPopust=MaxPopust, @Sif_GrOrg=Sif_GrOrg
  101746. FROM Operatori WHERE Login_Ime = @Login_Ime And Lozinka = @Lozinka
  101747.  
  101748.  
  101749.  
  101750. Go
  101751. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignioptzalpooe]'))
  101752. drop procedure [dbo].[sp_podignioptzalpooe]
  101753.  
  101754. Go
  101755. CREATE PROCEDURE sp_PodigniOptZalPoOe
  101756.     @Sifra_Art    varchar(20)
  101757. AS
  101758.     Select O.Sifra_Oe, O.Sifra_Art, O.MinZal, O.MaxZal, O.OptZal, OE.ImeOrg, O.Dozvoleno
  101759.     From OptZalPoOe O INNER JOIN OrgEd OE ON O.Sifra_Oe=OE.Sifra_OE
  101760.     Where O.Sifra_Art = @Sifra_Art
  101761.     Return @@ERROR
  101762.  
  101763.  
  101764. Go
  101765. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniorged]'))
  101766. drop procedure [dbo].[sp_podigniorged]
  101767.  
  101768. Go
  101769.  
  101770. CREATE  Procedure sp_PodigniOrgEd
  101771. As
  101772.     Select distinct D.Sifra_Oe, Cast(D.Sifra_Oe as varchar(3))+' '+ O.ImeOrg
  101773.     From Dokr D
  101774.     Inner Join Orged O on D.Sifra_oe=O.Sifra_Oe
  101775.     Where D.Sifra_Dok=100
  101776.  
  101777.  
  101778.  
  101779.  
  101780. Go
  101781. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniosnovosig]'))
  101782. drop procedure [dbo].[sp_podigniosnovosig]
  101783.  
  101784. Go
  101785.  
  101786. CREATE PROCEDURE sp_PodigniOsnovOsig
  101787.  
  101788.     @Sifra_OsnovOsig    char(2)
  101789. AS
  101790.     Select * From OsnovOsig 
  101791.     Where Sifra_OsnovOsig=@Sifra_OsnovOsig
  101792.  
  101793.  
  101794.  
  101795. Go
  101796. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniosnpodelbi]'))
  101797. drop procedure [dbo].[sp_podigniosnpodelbi]
  101798.  
  101799. Go
  101800.  
  101801.  
  101802.  
  101803.  
  101804.  
  101805. CREATE     PROCEDURE sp_PodigniOsnPodelbi
  101806.     @Sifra_OsnGrPodel smallint,
  101807.     @Sifra_OsnPodel smallint 
  101808. AS
  101809.     SELECT OP.Sifra_OsnGrPodel,OP.Sifra_OsnPodel,OP.Vrednost, GP.ImeOsnGrPodel 
  101810.         FROM  OsnPodelbi OP
  101811.     INNER JOIN OsnGrPodel GP ON OP.Sifra_OsnGrPodel = GP.Sifra_OsnGrPodel
  101812.     WHERE OP.Sifra_OsnGrPodel = @Sifra_OsnGrPodel and OP.Sifra_OsnPodel = @Sifra_OsnPodel  
  101813.   IF @@ROWCOUNT = 0
  101814.       RETURN 77000
  101815.    ELSE
  101816.       RETURN 0
  101817.  
  101818.  
  101819.  
  101820.  
  101821.  
  101822.  
  101823.  
  101824.  
  101825. Go
  101826. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniosnpodelbisite]'))
  101827. drop procedure [dbo].[sp_podigniosnpodelbisite]
  101828.  
  101829. Go
  101830.  
  101831.  
  101832.  
  101833.  
  101834.  
  101835. CREATE PROCEDURE sp_PodigniOsnPodelbiSite
  101836.     @Sifra_OsnGrPodel smallint
  101837. AS
  101838.     SELECT OP.Sifra_OsnGrPodel,OP.Sifra_OsnPodel,OP.Vrednost 
  101839.         FROM  OsnPodelbi OP
  101840.     WHERE OP.Sifra_OsnGrPodel = @Sifra_OsnGrPodel  
  101841.   IF @@ROWCOUNT = 0
  101842.       RETURN 77000
  101843.    ELSE
  101844.       RETURN 0
  101845.  
  101846.  
  101847.  
  101848.  
  101849.  
  101850.  
  101851.  
  101852.  
  101853. Go
  101854. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniosnpodelsta]'))
  101855. drop procedure [dbo].[sp_podigniosnpodelsta]
  101856.  
  101857. Go
  101858.  
  101859.  
  101860.  
  101861.  
  101862.  
  101863. create        PROCEDURE sp_PodigniOsnPodelSta
  101864.     @Inv_Broj    char(10)
  101865. AS
  101866.     SELECT S.Inv_Broj, S.Sifra_OsnPodel, S.Sifra_OsnGrPodel, OP.Vrednost,OG.ImeOsnGrPodel FROM  OsnPodelSta S
  101867.         inner join OsnGrPodel OG ON S.Sifra_OsnGRPodel = OG.Sifra_OsnGrPodel          
  101868.     inner join OsnPodelbi OP ON S.Sifra_OsnPodel = OP.Sifra_OsnPodel And S.Sifra_OsnGRPodel = OP.Sifra_OsnGrPodel 
  101869.  
  101870.         WHERE S.Inv_Broj = @Inv_Broj
  101871.   
  101872. IF @@ROWCOUNT = 0
  101873.   RETURN 77000
  101874. ELSE
  101875. RETURN 0
  101876.  
  101877.  
  101878.  
  101879.  
  101880.  
  101881.  
  101882. Go
  101883. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniotkrojsema]'))
  101884. drop procedure [dbo].[sp_podigniotkrojsema]
  101885.  
  101886. Go
  101887. CREATE PROCEDURE sp_PodigniOtkrojSema
  101888.     @Sifra_Otkr    smallint
  101889.  AS
  101890.     Select Sifra_Otkr, Proc1, Proc2, Proc3, Proc4, Proc5
  101891.     From OtkrojSema
  101892.     Where Sifra_Otkr=@Sifra_Otkr
  101893.  
  101894.  
  101895.  
  101896. Go
  101897. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipacienti]'))
  101898. drop procedure [dbo].[sp_podignipacienti]
  101899.  
  101900. Go
  101901.  
  101902.  
  101903. CREATE  PROCEDURE sp_PodigniPacienti
  101904.  
  101905.     @EMBG        char(13)
  101906. AS
  101907.     Select P.*, L.ImeLekar, Os.ImeOsnovOsig From Pacienti P
  101908.         Left Outer Join Lekari L on P.Sifra_Lekar = L.SIfra_Lekar
  101909.         Left Outer Join OsnovOsig Os on P.Sifra_OsnovOsig = Os.SIfra_OsnovOsig
  101910.     Where EMBG=@EMBG
  101911.  
  101912.  
  101913.  
  101914.  
  101915. Go
  101916. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipaklista]'))
  101917. drop procedure [dbo].[sp_podignipaklista]
  101918.  
  101919. Go
  101920.  
  101921. CREATE   PROCEDURE sp_PodigniPakLista
  101922.     @Sifra_OE    smallint,
  101923.     @Mesto_Pak    smallint, 
  101924.     @Sifra_Pak    smallint, 
  101925.     @Broj_Pak    int
  101926.  AS
  101927.     SELECT PL.* FROM PakLista PL
  101928.     WHERE Sifra_OE=@Sifra_OE and Mesto_Pak=@Mesto_Pak and Sifra_Pak=@Sifra_Pak and Broj_Pak=@Broj_Pak
  101929.     RETURN @@ERROR
  101930.  
  101931.  
  101932.  
  101933. Go
  101934. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipaklistastav]'))
  101935. drop procedure [dbo].[sp_podignipaklistastav]
  101936.  
  101937. Go
  101938. Create  PROCEDURE sp_PodigniPakListaStav
  101939.     @Sifra_OE    smallint,
  101940.     @Broj_Pak    int
  101941.  AS
  101942.     SELECT P.*
  101943.     FROM PakListaStav P
  101944.     WHERE Sifra_OE=@Sifra_OE and Broj_Pak=@Broj_Pak
  101945.     RETURN @@ERROR
  101946.  
  101947.  
  101948.  
  101949. Go
  101950. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipakuvart]'))
  101951. drop procedure [dbo].[sp_podignipakuvart]
  101952.  
  101953. Go
  101954.  
  101955.  
  101956. CREATE  PROCEDURE sp_PodigniPakuvArt
  101957.     @Broj_DokPak    int,
  101958.     @KontrSer_Pak    Varchar(25) = Null Output,
  101959.     @Kolic_Pak    Decimal(18,6) = Null Output
  101960. AS
  101961.     SELECT P.*,  SU.ImeArt ImeSur, SU.EdMera EdMeraSur,
  101962.                  GP.ImeArt ImeArt, GP.EdMera, SU.Alt_Ime2 AltIme2  
  101963.     FROM PakuvArt P
  101964.     Left outer JOIN KatArt GP ON P.Sifra_Art_Pak = GP.Sifra_Art
  101965.     Left outer JOIN KatArt SU ON P.Sifra_Art_Ed = SU.Sifra_Art
  101966.     WHERE P.Broj_DokPak = @Broj_DokPak
  101967.     Order by P.Rbr
  101968.     SELECT Top 1 @KontrSer_Pak=KontrSer_Pak, @Kolic_Pak=Kolic_Pak
  101969.     FROM PakuvArt P
  101970.     WHERE Broj_DokPak = @Broj_DokPak
  101971.  
  101972.  
  101973.  
  101974. Go
  101975. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipatnik]'))
  101976. drop procedure [dbo].[sp_podignipatnik]
  101977.  
  101978. Go
  101979.  
  101980. CREATE PROCEDURE sp_PodigniPatnik
  101981.     @Sifra_Pat as Smallint
  101982. AS
  101983.     SELECT [Sifra_Pat], 
  101984.         [ImePat], [Adresa], [Adresa2], [SMesto], [Posta], [Zemja], 
  101985.         [Aktiven], [Telefon], [TelMobil], [Fax], [EMail], [LK], [Sopst_Mat]
  101986.     FROM [Patnici]
  101987.     WHERE [Sifra_Pat]=@Sifra_Pat
  101988. RETURN @@ERROR
  101989.  
  101990.  
  101991.  
  101992. Go
  101993. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipercenceni]'))
  101994. drop procedure [dbo].[sp_podignipercenceni]
  101995.  
  101996. Go
  101997.  
  101998. CREATE      PROCEDURE sp_PodigniPerCenCeni
  101999.     @Sifra_TipC smallint,
  102000.     @Datum_Od smalldatetime,
  102001.     @Osn_OrgEd smallint,
  102002.     @CeniOdCenGrOrg char(1)
  102003. AS
  102004. If @CeniOdCenGrOrg='D'
  102005. Begin
  102006.     Declare @GrOrg as char(6)
  102007.     SELECT @GrOrg = S.Sif_GrOrg FROM SGrOrg S, GrOrg G
  102008.     WHERE S.Sifra_OE = @Osn_OrgEd AND S.Sif_GrOrg = G.Sif_GrOrg AND G.Edinstvena = 'D'
  102009.     SELECT C.*, K.ImeArt, S.Cena StCena, K.Nabavna FROM PerCenCeni C
  102010.     INNER JOIN KatArt K ON C.Sifra_Art = K.Sifra_Art
  102011.     LEFT OUTER JOIN CenGrOrg S ON S.Sifra_Art = K.Sifra_Art AND Sif_GrOrg = @GrOrg
  102012.     WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od
  102013. End
  102014. ELSE
  102015.     SELECT C.*, K.ImeArt, S.Cena StCena, K.Nabavna FROM PerCenCeni C
  102016.     INNER JOIN KatArt K ON C.Sifra_Art = K.Sifra_Art
  102017.     LEFT OUTER JOIN SoArt S ON S.Sifra_Art = K.Sifra_Art AND S.Sifra_OE = @Osn_OrgEd
  102018.     WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od    
  102019. RETURN @@ERROR
  102020.  
  102021.  
  102022.  
  102023.  
  102024. Go
  102025. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipercenceni1]'))
  102026. drop procedure [dbo].[sp_podignipercenceni1]
  102027.  
  102028. Go
  102029. CREATE     PROCEDURE sp_PodigniPerCenCeni1
  102030.     @Sifra_TipC smallint,
  102031.     @Datum_Od smalldatetime
  102032. AS
  102033.     SELECT TOP 1 *
  102034.     FROM PerCenCeni 
  102035.     WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od
  102036.     RETURN @@ERROR
  102037.  
  102038.  
  102039.  
  102040. Go
  102041. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipercenceni1redov]'))
  102042. drop procedure [dbo].[sp_podignipercenceni1redov]
  102043.  
  102044. Go
  102045.  
  102046.  
  102047. CREATE      PROCEDURE sp_PodigniPerCenCeni1Redov
  102048.     @Sifra_TipC smallint,
  102049.     @Datum_Od smalldatetime
  102050. AS
  102051. Declare @Resen char(1)   --ako ima bar 1 resen, da ne moze da se menuva
  102052. SELECT TOP 1 @Resen = Resen FROM PerCenCeniRedov WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od And Resen = 'D'
  102053. SELECT TOP 1 Sifra_TipC,Datum_Od, @Resen As Resen FROM PerCenCeniRedov WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od
  102054.     RETURN @@ERROR
  102055.  
  102056.  
  102057.  
  102058.  
  102059.  
  102060. Go
  102061. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipercenceniredov]'))
  102062. drop procedure [dbo].[sp_podignipercenceniredov]
  102063.  
  102064. Go
  102065.  
  102066.  
  102067. CREATE      PROCEDURE sp_PodigniPerCenCeniRedov
  102068.     @Sifra_TipC smallint,
  102069.     @Datum_Od smalldatetime
  102070. AS
  102071. Declare    @Osn_OrgEd smallint  
  102072. SELECT TOP 1 @Osn_OrgEd = Sifra_OE FROM TipPerCenVaziZa WHERE Sifra_TipC=@Sifra_TipC ORDER BY Sifra_OE
  102073.  
  102074. CREATE TABLE #TmpPC
  102075. (    Sifra_Art varchar (20),
  102076.     NabCena decimal(18, 6),
  102077.     Rabat decimal(6,2),
  102078.     Cena decimal(18, 6))
  102079. INSERT INTO #TmpPC (Sifra_Art, NabCena, Rabat, Cena)
  102080. SELECT DISTINCT Sifra_Art, NabCena, Rabat, Cena FROM PerCenCeniRedov WHERE Sifra_TipC = @Sifra_TipC AND Datum_Od = @Datum_Od    
  102081.  
  102082.      SELECT C.*, K.ImeArt, K.Nabavna, S.Cena StCena FROM #TmpPC C
  102083.     INNER JOIN KatArt K ON C.Sifra_Art = K.Sifra_Art
  102084.     LEFT OUTER JOIN SoArt S ON S.Sifra_Art = K.Sifra_Art AND S.Sifra_OE = @Osn_OrgEd
  102085. RETURN @@ERROR
  102086.  
  102087.  
  102088.  
  102089.  
  102090.  
  102091. Go
  102092. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipicklist]'))
  102093. drop procedure [dbo].[sp_podignipicklist]
  102094.  
  102095. Go
  102096.  
  102097. create PROCEDURE sp_PodigniPickList
  102098.     @ImeTabela as varchar(50),
  102099.     @Polinja as varchar(1000) = Null,
  102100.     @Filtri as varchar(1000) = Null
  102101. AS
  102102. DECLARE @SSQL as varchar(8000)
  102103. SET @SSQL = 'SELECT '
  102104. IF @Polinja IS NULL 
  102105.     SET @SSQL = @SSQL + '*'
  102106. ELSE
  102107.     SET @SSQL = @SSQL + @Polinja
  102108. SET @SSQL = @SSQL + ' FROM ' + @ImeTabela
  102109. IF @Filtri IS NOT NULL
  102110.     SET @SSQL = @SSQL + ' WHERE ' + @Filtri
  102111. PRINT @SSQL
  102112. EXEC (@SSQL)
  102113.  
  102114.  
  102115.  
  102116. Go
  102117. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniplanbudzet]'))
  102118. drop procedure [dbo].[sp_podigniplanbudzet]
  102119.  
  102120. Go
  102121.  
  102122.  
  102123.  
  102124.  
  102125. CREATE      PROCEDURE sp_PodigniPlanBudzet
  102126.     @Godina    smallint=Null,
  102127.     @KojSifr varchar(10)='DIV'
  102128. AS
  102129.     Declare @SSQL As Varchar(2000)
  102130.     Set @SSQL='Select P.Godina, P.Mesec, P.Sifra, P.Iznos, '
  102131.     if @KojSifr = 'DIV'
  102132.           Set @SSQL=@SSQL + 'D.ImeDiv Ime From PlanBudzet P inner join Divizii D on D.Sifra_Div=P.Sifra '
  102133.     ELSE IF @KojSifr = 'ANAL'
  102134.           Set @SSQL=@SSQL + 'A.ImeAnal Ime From PlanBudzet P inner join Anal A on A.Kto_Anal=P.Sifra '
  102135.     Set @SSQL=@SSQL+ ' Where 1=1 '
  102136.     If @Godina Is Not Null 
  102137.         Set @SSQL=@SSQL+ ' And P.Godina = ' + cast(@Godina as varchar(4)) + ' '
  102138.     if @KojSifr = 'DIV'
  102139.         Set @SSQL=@SSQL+ ' order by dbo.fn_LevoNuli (cast(P.Sifra as int),4), P.mesec'    
  102140.     ELSE
  102141.         Set @SSQL=@SSQL+ ' order by P.Sifra, P.mesec '    
  102142. Exec(@SSQL)
  102143.  
  102144.  
  102145.  
  102146.  
  102147.  
  102148.  
  102149. Go
  102150. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniplanmes]'))
  102151. drop procedure [dbo].[sp_podigniplanmes]
  102152.  
  102153. Go
  102154. CREATE      PROCEDURE sp_PodigniPlanMes
  102155.     @Godina    smallint=Null,
  102156.     @Mesec    smallint=Null,
  102157.     @Sifra_Art varchar(20)=Null,
  102158.     @Sifra_Oe smallint,
  102159.         @ImePlan varchar(10),
  102160.     @PlanMesGod    char(1) = 'M'
  102161. AS
  102162.     Declare @SSQL As Varchar(2000)
  102163.     Set @SSQL='Select P.Godina, P.Mesec, P.Sifra_Art, K.ImeArt, K.EdMera, P.Plan_Kol, P.Plan_Proc, P.Plan_Cena, P.Sifra_Oe, P.RbrVoPlan, ImePlan, Plan_Vred
  102164.             From PlanMes P
  102165.             Inner Join Katart K On K.Sifra_art=P.Sifra_art
  102166.             Where 1=1 '
  102167.     If @PlanMesGod = 'G'
  102168.         Set @SSQL=@SSQL+' And P.Mesec = 0 ' 
  102169.     Else 
  102170.         Set @SSQL=@SSQL+' And P.Mesec <> 0 ' 
  102171.     If @Godina Is Not Null 
  102172.         Set @SSQL=@SSQL+ ' And P.Godina = ' + cast(@Godina as varchar(4)) + ' '
  102173.     If @Mesec Is Not Null 
  102174.         Set @SSQL=@SSQL+ ' And P.Mesec = ' + cast(@Mesec as varchar(2)) + ' '
  102175.     If @Sifra_Art Is Not Null 
  102176.         Set @SSQL=@SSQL+ ' And P.Sifra_art = ''' + @Sifra_art + ''' '    
  102177.     Set @SSQL=@SSQL+ ' And P.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6))    
  102178.     Set @SSQL=@SSQL+ ' And P.ImePlan = ''' + @ImePlan + ''' '    
  102179.     --mnogu e vazno da e podredeno po rbr+artikli!!!!!    D.K. Fev 22, 2004
  102180.     Set @SSQL=@SSQL+ ' order by godina, P.RbrVoPlan, P.sifra_art, mesec '    
  102181.     Exec(@SSQL)
  102182.  
  102183.  
  102184. Go
  102185. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniplanmespodel]'))
  102186. drop procedure [dbo].[sp_podigniplanmespodel]
  102187.  
  102188. Go
  102189.  
  102190.  
  102191.  
  102192.  
  102193. CREATE            PROCEDURE sp_PodigniPlanMesPodel
  102194.     @Godina    smallint=Null,
  102195.     @Mesec    smallint=Null,
  102196.     @Sifra_Podel nvarchar(20)=Null,
  102197.     @Sifra_Oe smallint,
  102198.         @ImePlan nvarchar(10),
  102199.     @PlanMesGod    char(1) = 'M',
  102200.         @KojaPodel  varchar(10)
  102201. AS
  102202.     Declare @SSQL As Varchar(2000)
  102203.         Set @SSQL='Select P.Godina, P.Mesec, P.Sifra_Podel, K.Ime_KHier Ime, P.Plan_Kol, P.Plan_Proc, P.Plan_Cena, P.Sifra_Oe, P.RbrVoPlan, P.ImePlan, P.Plan_Vred, P.KojaPodel
  102204.             From PlanMesPodel P
  102205.             Inner Join KatHier K On K.Sifra_KHier=P.Sifra_Podel
  102206.             Where P.KojaPodel=''' + @KojaPodel + ''' '
  102207.     If @PlanMesGod = 'G'
  102208.         Set @SSQL=@SSQL+' And P.Mesec = 0 ' 
  102209.     Else 
  102210.         Set @SSQL=@SSQL+' And P.Mesec <> 0 ' 
  102211.     If @Godina Is Not Null 
  102212.         Set @SSQL=@SSQL+ ' And P.Godina = ' + cast(@Godina as varchar(4)) + ' '
  102213.     If @Mesec Is Not Null 
  102214.         Set @SSQL=@SSQL+ ' And P.Mesec = ' + cast(@Mesec as varchar(2)) + ' '
  102215.     If @Sifra_Podel Is Not Null 
  102216.         Set @SSQL=@SSQL+ ' And P.Sifra_Podel = ''' + @Sifra_Podel + ''' '    
  102217.     Set @SSQL=@SSQL+ ' And P.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6))    
  102218.     Set @SSQL=@SSQL+ ' And P.ImePlan = ''' + @ImePlan + ''' '    
  102219.     --mnogu e vazno da e podredeno po rbr+artikli!!!!!    D.K. Fev 22, 2004
  102220.     Set @SSQL=@SSQL+ ' order by godina, P.RbrVoPlan, P.sifra_podel, mesec '    
  102221.     Exec(@SSQL)
  102222.  
  102223.  
  102224.  
  102225.  
  102226.  
  102227.  
  102228.  
  102229.  
  102230. Go
  102231. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniplanpat]'))
  102232. drop procedure [dbo].[sp_podigniplanpat]
  102233.  
  102234. Go
  102235. CREATE PROCEDURE sp_PodigniPlanPat
  102236.     @Sifra_Plan    smallint, 
  102237.     @Mesec    smallint, 
  102238.     @Godina    smallint
  102239. AS
  102240.     Select P.Sifra_Plan, Pat.ImePat, P.Sifra_Pat, P.Mesec, P.Godina, P.UspesniPoseti, P.ProdMesta, P.Prodazba
  102241.     From PlanPat P
  102242.     Inner Join Patnici Pat On PAt.Sifra_Pat=P.Sifra_Pat
  102243.     Where P.Sifra_Plan=@Sifra_Plan And P.Mesec=@Mesec And P.Godina=@Godina
  102244.  
  102245.  
  102246. Go
  102247. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniplanper]'))
  102248. drop procedure [dbo].[sp_podigniplanper]
  102249.  
  102250. Go
  102251. CREATE PROCEDURE sp_PodigniPlanPer
  102252.     @Sifra_Kup    char(6),
  102253.     @Sifra_Obj    smallint
  102254.  AS
  102255.     Declare @SSQL as varchar(2000)
  102256.     Set @SSQL = 'Select P.*, A.ImeArt
  102257.             From PlanPer P INNER JOIN KatArt A ON P.Sifra_Art = A.Sifra_Art
  102258.             AND P.Sifra_Kup = ' + @Sifra_Kup
  102259.     If @Sifra_Obj Is Not Null    
  102260.         Set @SSQL = @SSQL +  ' And P.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) 
  102261.     EXEC (@SSQL)
  102262.  
  102263.  
  102264.  
  102265. Go
  102266. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniplanpro]'))
  102267. drop procedure [dbo].[sp_podigniplanpro]
  102268.  
  102269. Go
  102270. CREATE PROCEDURE sp_PodigniPlanPro
  102271.     @Sif_GrOrg char(6),
  102272.     @Sifra_Nar smallint,
  102273.     @Broj_Plan char(10)
  102274. AS
  102275. SELECT P.* FROM PlanPro P 
  102276. WHERE P.Sif_GrOrg=@Sif_GrOrg AND P.Sifra_Nar=@Sifra_Nar AND P.Broj_Plan=@Broj_Plan
  102277.  
  102278.  
  102279.  
  102280. Go
  102281. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniplanprosta]'))
  102282. drop procedure [dbo].[sp_podigniplanprosta]
  102283.  
  102284. Go
  102285.  
  102286.  
  102287.  
  102288. CREATE    PROCEDURE sp_PodigniPlanProSta
  102289.     @Sif_GrOrg char(6),
  102290.     @Sifra_Nar smallint,
  102291.     @Broj_Plan char(10)
  102292. AS
  102293. SELECT P.*, A.ImeArt, A.EdMera SEdMera FROM PlanProSta P LEFT OUTER JOIN KatArt A ON P.Sifra_Art=A.Sifra_Art
  102294. WHERE P.Sif_GrOrg=@Sif_GrOrg AND P.Sifra_Nar=@Sifra_Nar AND P.Broj_Plan=@Broj_Plan
  102295. ORDER BY P.Rbr
  102296.  
  102297.  
  102298.  
  102299. Go
  102300. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipocnabceni]'))
  102301. drop procedure [dbo].[sp_podignipocnabceni]
  102302.  
  102303. Go
  102304. CREATE PROCEDURE sp_PodigniPocNabCeni
  102305.     @Sifra_Oe    smallint, 
  102306.     @Sifra_Art    varchar(20)
  102307. AS
  102308.     Select  Sifra_Oe, Sifra_Art, NabCena, Datum_Dok, Datum_Vnes, Datum_Izm
  102309.     From PocNabCeni
  102310.     Where Sifra_Oe=@Sifra_Oe And Sifra_Art=@Sifra_Art
  102311.  
  102312.  
  102313. Go
  102314. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipocsostosn]'))
  102315. drop procedure [dbo].[sp_podignipocsostosn]
  102316.  
  102317. Go
  102318. CREATE PROCEDURE sp_PodigniPocSostOsn
  102319.     @Inv_Broj    char(10), 
  102320.     @Godina    smallint
  102321. AS
  102322.     Select  Inv_Broj, Godina, Osn_Amor, Otpis_Pret, Sifra_MikLok, Sifra_Amor, Kto_Anal, Sifra_Rab
  102323.     From PocSostOsn
  102324.     Where Inv_Broj=@Inv_Broj and Godina=@Godina
  102325.     Return @@ERROR
  102326.  
  102327.  
  102328. Go
  102329. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipodatvozilo]'))
  102330. drop procedure [dbo].[sp_podignipodatvozilo]
  102331.  
  102332. Go
  102333.  
  102334.  
  102335. CREATE   procedure sp_PodigniPodatVozilo
  102336.     @Sifra_Art varchar(20)=null
  102337. As
  102338.     Select V.Sifra_Art SifArtVoz, V.KomOznaka, V.VarijIzvedba, V.Kateg_ESE, V.Kateg_MKS, V.BrSasija, V.BrMotor, V.GodProiz, V.GodModel, V.SilaMotor, V.KubiciMotor,
  102339.            V.Nosivost, V.MasaKgr, V.Dolzina, V.sirina, V.Visina, V.Rastoj_Oski, V.Optovar_Oski1, V.Optovar_Oski2, V.BrojOskiPrikl, V.MaxMasaPrikl1,
  102340.            V.MaxMasaPrikl2, V.DozvPnevm1, V.DozvPnevm2, V.MestaSedenje, V.MestaStoenje, V.MestaLezenje, V.MaxBrzina, V.TehnOznaka, V.Registracija,
  102341.            V.BrojVrati, V.Sopstvenik, V.Adresa, V.Telefon, V.Datum_Garanc, V.OznakaOdobr, V.PotvrdaSoobr, V.DozvPnevm, V.TipMOtor, V.VrteziMin, V.VrteziBucava,
  102342.            V.Bucava, V.Sila_Masa, V.CO2, V.Poc_KM, V.Poteklo, V.Sifra_Kup, K.Sifra_art, K.ImeArt, D3.Ime_3, D4.Ime_4, B.Ime ImeDrg
  102343.            from Vozila V
  102344.            INNER JOIN Katart K ON V.Sifra_Art=K.Sifra_Art 
  102345.            Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3
  102346.        Left Outer Join Drugo1 D1 On D1.Sifra_1 = K.Drugo1
  102347.            Left Outer Join Drugo4 D4 On D4.Sifra_4 = K.Drugo4
  102348.            Left Outer Join DrgPodel B On B.Sifra_Drg = K.Sifra_Drg     
  102349.      Where v.Sifra_Art=@Sifra_Art
  102350.  
  102351.  
  102352. Go
  102353. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipodelartkomusl]'))
  102354. drop procedure [dbo].[sp_podignipodelartkomusl]
  102355.  
  102356. Go
  102357. CREATE  PROCEDURE sp_PodigniPodelArtKomUsl
  102358. AS
  102359.     Select *
  102360.     From PodelArtKomUsl 
  102361.     Order by PodelArtKomerc Desc, Sifra_Kanal Desc -- mnogu vazno
  102362.     Return @@ERROR
  102363.  
  102364.  
  102365. Go
  102366. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipodracnisluzbi]'))
  102367. drop procedure [dbo].[sp_podignipodracnisluzbi]
  102368.  
  102369. Go
  102370.  
  102371. CREATE PROCEDURE sp_PodigniPodracniSluzbi
  102372.  
  102373.     @Sifra_PodrSluzba    char(4)
  102374. AS
  102375.     Select * From PodracniSluzbi 
  102376.     Where Sifra_PodrSluzba=@Sifra_PodrSluzba
  102377.     Return @@ERROR
  102378.  
  102379.  
  102380.  
  102381. Go
  102382. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipopis]'))
  102383. drop procedure [dbo].[sp_podignipopis]
  102384.  
  102385. Go
  102386.  
  102387. CREATE PROCEDURE sp_PodigniPopis
  102388.     @Sifra_OE smallint,
  102389.     @Datum smalldatetime
  102390. AS
  102391.     SELECT P.*, O.ImeOrg, T.ImeDok
  102392.     FROM Popis P 
  102393.     INNER JOIN OrgEd O ON P.Sifra_OE = O.Sifra_OE
  102394.     LEFT OUTER JOIN TipDok T ON P.Sifra_dokK = T.Sifra_dok
  102395.     WHERE P.Sifra_OE = @Sifra_OE AND  P.Datum = @Datum
  102396.   IF @@ROWCOUNT = 0
  102397.       RETURN 77000
  102398.    ELSE
  102399.       RETURN 0
  102400.  
  102401.  
  102402.  
  102403. Go
  102404. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipopisdok_stavki]'))
  102405. drop procedure [dbo].[sp_podignipopisdok_stavki]
  102406.  
  102407. Go
  102408. CREATE        PROCEDURE sp_PodigniPopisDok_Stavki 
  102409.     @RbrPopis        smallint,
  102410.     @Sifra_Oe        smallint, 
  102411.     @Sifra_Dok        smallint, 
  102412.     @Broj_Dok        int
  102413. AS
  102414.     Select P.RbrPopis, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Sifra_Art, K.ImeArt, P.Rbr, P.Datum_PopisDok, P.Kolic, P.Popis, P.Ostaveno, 
  102415.         P.Cena, P.DanCena, P.Posn, T.ImeDok, O.ImeOrg, P.DokrId_Vrat, P.Datum_Dok, P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj,
  102416.         Kup.Adresa, Kup.SMesto, Kup.Posta, KO.Adresa AdresaObj, KO.SMesto SMestoObj, KO.Posta PostaObj, P.Uces, P.RasporID, P.TipPopisDok,
  102417.         Kup.Uces UcesKup
  102418.     From PopisDok P
  102419.     Inner Join Katart K On K.Sifra_Art=P.Sifra_Art
  102420.     Left Outer Join TipDok T on P.Sifra_Dok = T.Sifra_Dok
  102421.     Left Outer Join OrgEd O on P.Sifra_Oe = O.Sifra_Oe
  102422.     Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_Kup
  102423.     Left Outer Join KObjekti KO On KO.Sifra_Kup=P.Sifra_Kup And KO.Sifra_Obj=P.Sifra_Obj
  102424.     Where P.RbrPopis=@RbrPopis And P.Sifra_Oe=@Sifra_Oe And P.Sifra_Dok=@Sifra_Dok And P.Broj_Dok=@Broj_Dok
  102425.     Order By Rbr
  102426.     Return @@ERROR
  102427.  
  102428.  
  102429. Go
  102430. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipopisid]'))
  102431. drop procedure [dbo].[sp_podignipopisid]
  102432.  
  102433. Go
  102434.  
  102435. CREATE PROCEDURE sp_PodigniPopisID
  102436.     @IDPopis int
  102437. AS
  102438.     SELECT P.*, O.ImeOrg, T.ImeDok
  102439.     FROM Popis P 
  102440.     INNER JOIN OrgEd O ON P.Sifra_OE = O.Sifra_OE
  102441.     LEFT OUTER JOIN TipDok T ON P.Sifra_dokK = T.Sifra_dok
  102442.     WHERE P.IDPopis = @IDPopis
  102443.   IF @@ROWCOUNT = 0
  102444.       RETURN 77000
  102445.    ELSE
  102446.       RETURN 0
  102447.  
  102448.  
  102449.  
  102450. Go
  102451. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipopisos]'))
  102452. drop procedure [dbo].[sp_podignipopisos]
  102453.  
  102454. Go
  102455.  
  102456.  
  102457.  
  102458. CREATE    PROCEDURE sp_PodigniPopisOS
  102459.     @Sifra_OE    smallint,
  102460.     @Datum        smalldatetime,
  102461.     @Sifra_MikLok    char(10)=Null,
  102462.     @Sifra_MakLok    char(10)=Null,
  102463.     @Sifra_Rab        int=Null
  102464. AS
  102465. DECLARE @SSQL varchar(1000)
  102466. SET @SSQL = 'SELECT * FROM PopisOS WHERE Sifra_OE=' + cast(@Sifra_OE as varchar(4))
  102467. + ' AND Datum='''+cast(@Datum as varchar(35))+''' '
  102468. IF @Sifra_MikLok IS NOT NULL
  102469.     SET @SSQL = @SSQL + ' AND Sifra_MikLok='''+@Sifra_MikLok+''' '
  102470. ELSE
  102471.     SET @SSQL = @SSQL + ' AND Sifra_MikLok IS NULL '
  102472. IF @Sifra_MakLok IS NOT NULL
  102473.     SET @SSQL = @SSQL + ' AND Sifra_MakLok='''+@Sifra_MakLok+''' '
  102474. ELSE
  102475.     SET @SSQL = @SSQL + ' AND Sifra_MakLok IS NULL '
  102476. IF @Sifra_Rab IS NOT NULL
  102477.     SET @SSQL = @SSQL + ' AND Sifra_Rab='+cast(@Sifra_Rab as varchar(6))+' '
  102478. ELSE
  102479.     SET @SSQL = @SSQL + ' AND Sifra_Rab IS NULL '
  102480. --print @ssql
  102481. EXEC (@SSQL)
  102482.  
  102483.  
  102484.  
  102485. Go
  102486. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipopisos_br]'))
  102487. drop procedure [dbo].[sp_podignipopisos_br]
  102488.  
  102489. Go
  102490.  
  102491.  
  102492.  
  102493.  
  102494. Create     PROCEDURE sp_PodigniPopisOS_Br
  102495.     @Broj_Lista    smallint
  102496. AS
  102497. Select * From PopisOs Where IDPopisOS in(Select IDPopisOS from LPopisOs where Broj_Lista=@Broj_Lista) 
  102498.  
  102499.  
  102500.  
  102501. Go
  102502. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignipopisos_oe_dat]'))
  102503. drop procedure [dbo].[sp_podignipopisos_oe_dat]
  102504.  
  102505. Go
  102506. CREATE    PROCEDURE sp_PodigniPopisOS_Oe_Dat
  102507.     @Sifra_OE    smallint,
  102508.     @Datum    smalldatetime
  102509. AS
  102510.     SELECT * FROM PopisOS WHERE Sifra_OE=@Sifra_OE And Datum=@Datum
  102511.  
  102512.  
  102513. Go
  102514. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniporastcenist]'))
  102515. drop procedure [dbo].[sp_podigniporastcenist]
  102516.  
  102517. Go
  102518. CREATE PROCEDURE sp_PodigniPorastCeniSt
  102519.     @Mesec    smallint,
  102520.     @Godina    smallint
  102521.  AS
  102522.     Select Mesec, Godina, Stapka 
  102523.     From PorastCeniSt 
  102524.     Where Mesec=@Mesec and Godina=@Godina
  102525.  
  102526.  
  102527. Go
  102528. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniposlrabnalzatip]'))
  102529. drop procedure [dbo].[sp_podigniposlrabnalzatip]
  102530.  
  102531. Go
  102532. CREATE PROCEDURE sp_PodigniPoslRabNalZaTip
  102533.     @Tip_RabNal char(1),
  102534.     @Sifra_OEPrim smallint
  102535. AS
  102536. Declare @RabNalID int
  102537. Declare @DokrID    int
  102538. SELECT @RabNalID = MAX(RabNalID) FROM RabNal WHERE Tip_RabNal=@Tip_RabNal AND Sifra_OEPrim=@Sifra_OEPrim
  102539. SELECT @DokrID = DokrID FROM DokRabNal WHERE RabNalID = @RabNalID
  102540. SELECT P.*, K.ImeArt, K.EdMera From EvProizvod P
  102541. INNER JOIN Katart K ON P.Sifra_Art = K.Sifra_Art Where DokrID=@DokrID
  102542.  
  102543.  
  102544.  
  102545. Go
  102546. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniprivfilt_run]'))
  102547. drop procedure [dbo].[sp_podigniprivfilt_run]
  102548.  
  102549. Go
  102550.  
  102551. create PROCEDURE sp_PodigniPrivFilt_Run
  102552.     @NIme_User    varchar(30),
  102553.     @PlusKoeMeni    varchaR(30)
  102554.  
  102555.  AS
  102556.  
  102557.     select *
  102558.     from PrivFiltOper
  102559.     where NIme_User = @NIme_User and
  102560.         (OpcMeni is null or OpcMeni = '' or OpcMeni = @PlusKoeMeni)
  102561.  
  102562.  
  102563.  
  102564. Go
  102565. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniprivfiltoper]'))
  102566. drop procedure [dbo].[sp_podigniprivfiltoper]
  102567.  
  102568. Go
  102569.  
  102570.  
  102571.  
  102572.  
  102573.  
  102574. create PROCEDURE sp_PodigniPrivFiltOper
  102575.     @NIme_User varchar(30),
  102576.     @TipPrivil varchar(30),
  102577.     @PodTipPrivil varchar(30),
  102578.     @OpcMeni varchar(30)
  102579.  AS
  102580.     Select PO.*
  102581.     From PrivFiltOper PO
  102582.     Where PO.NIme_User=@NIme_User and PO.TipPrivil = @TipPrivil and PO.PodTipPrivil = @PodTipPrivil and PO.OpcMeni = @OpcMeni
  102583.  
  102584.     Return @@ERROR
  102585.  
  102586.  
  102587.  
  102588.  
  102589.  
  102590.  
  102591.  
  102592.  
  102593. Go
  102594. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniprivilegii]'))
  102595. drop procedure [dbo].[sp_podigniprivilegii]
  102596.  
  102597. Go
  102598.  
  102599. CREATE PROCEDURE sp_PodigniPrivilegii
  102600.     @Sifra_GrKor varchar(20)
  102601. AS
  102602.     SELECT * FROM Privilegii
  102603.     WHERE Sifra_GrKor = @Sifra_GrKor
  102604.  
  102605.  
  102606.  
  102607. Go
  102608. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniprivkoncept]'))
  102609. drop procedure [dbo].[sp_podigniprivkoncept]
  102610.  
  102611. Go
  102612.  
  102613.  
  102614. create       PROCEDURE sp_PodigniPrivKoncept
  102615.     @Sifra_GrKor varchar (20)
  102616. AS
  102617.     SELECT *
  102618.     FROM PrivKoncept
  102619.     WHERE Sifra_GrKor = @Sifra_GrKor
  102620.  
  102621.  
  102622.  
  102623. Go
  102624. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniproizvtrosfix]'))
  102625. drop procedure [dbo].[sp_podigniproizvtrosfix]
  102626.  
  102627. Go
  102628. CREATE   PROCEDURE sp_PodigniProizvTrosFix
  102629.     @Proiz_Sema        smallint
  102630.  AS
  102631.     Select P.Proiz_Sema, P.Sifra_art, P.Cena, P.PoVodeckiArtikal, K.ImeArt
  102632.     From ProizvTrosFix P
  102633.     Inner Join Katart K On K.Sifra_Art=P.Sifra_Art
  102634.     Where Proiz_Sema=@Proiz_Sema
  102635.  
  102636.  
  102637. Go
  102638. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirabkalendar]'))
  102639. drop procedure [dbo].[sp_podignirabkalendar]
  102640.  
  102641. Go
  102642. CREATE Procedure sp_PodigniRabKalendar
  102643.     @Datum smalldatetime
  102644. AS
  102645.     Select * from RabKalendar    Where Datum=@Datum  
  102646.  
  102647.  
  102648. Go
  102649. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirabnal]'))
  102650. drop procedure [dbo].[sp_podignirabnal]
  102651.  
  102652. Go
  102653. CREATE  PROCEDURE sp_PodigniRabNal
  102654.    @Sifra_OERAB smallint,
  102655.    @Broj_RABN int,
  102656.    @Sema_Fix    smallint = Null OUTPUT
  102657. AS
  102658.     SELECT RN.*
  102659.     FROM RabNal RN
  102660.     WHERE RN.Sifra_OERAB= @Sifra_OERAB AND RN.Broj_RABN= @Broj_RABN
  102661.     Set @Sema_Fix=(Select RN.Sema_Fix
  102662.             FROM RabNal RN
  102663.             WHERE RN.Sifra_OERAB=@Sifra_OERAB   AND RN.Broj_RABN=@Broj_RABN)
  102664.  
  102665.  
  102666. Go
  102667. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirabnalfazi]'))
  102668. drop procedure [dbo].[sp_podignirabnalfazi]
  102669.  
  102670. Go
  102671.  
  102672.  
  102673.  
  102674.  
  102675. CREATE     PROCEDURE sp_PodigniRabNalFazi
  102676.     @RabNalID    integer,
  102677.     @Sifra_Faza    smallint,
  102678.     @Sifra_Smena    smallint,
  102679.     @Datum_Dok    smalldatetime    
  102680. AS
  102681.     Select RF.*, A.ImeArt, A.EdMera, B.ImeBoja, V.ImeVelic FROM RabNalFazi RF 
  102682.     INNER JOIN KatArt A ON RF.Sifra_Art=A.Sifra_Art
  102683.     LEFT OUTER JOIN Boja B ON RF.Sifra_Boja=B.Sifra_Boja
  102684.     LEFT OUTER JOIN Velicina V ON RF.Sifra_Velic=V.Sifra_Velic
  102685.     where RabNalID=@RabNalID  AND Sifra_Smena=@Sifra_Smena AND Sifra_Faza=@Sifra_Faza AND Datum_Dok=@Datum_Dok
  102686.     Return @@ERROR
  102687.  
  102688.  
  102689.  
  102690.  
  102691.  
  102692. Go
  102693. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirabnalfazisoid]'))
  102694. drop procedure [dbo].[sp_podignirabnalfazisoid]
  102695.  
  102696. Go
  102697.  
  102698.  
  102699.  
  102700.  
  102701. CREATE    PROCEDURE sp_PodigniRabNalFaziSoID
  102702.    @RabNalID    int
  102703.    
  102704. AS
  102705.     SELECT * FROM RabNal WHERE RabNalID=@RabNalID
  102706.     
  102707.  
  102708.  
  102709.  
  102710.  
  102711. Go
  102712. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirabnalprim]'))
  102713. drop procedure [dbo].[sp_podignirabnalprim]
  102714.  
  102715. Go
  102716.  
  102717. CREATE  PROCEDURE [dbo].[sp_PodigniRabNalPrim]
  102718.    @Sifra_OEPrim smallint,
  102719.    @Broj_RABN int,
  102720.    @PoluprDali char(1) = Null
  102721.  
  102722. AS
  102723.  
  102724.     if @PoluprDali = 'D'
  102725.         SELECT RN.*
  102726.         FROM RabNal RN
  102727.         WHERE RN.Sifra_OEPOLU = @Sifra_OEPrim AND RN.Broj_RABN = @Broj_RABN
  102728.     else
  102729.         SELECT RN.*
  102730.         FROM RabNal RN
  102731.         WHERE RN.Sifra_OEPrim= @Sifra_OEPrim AND RN.Broj_RABN = @Broj_RABN
  102732.  
  102733.  
  102734.  
  102735.  
  102736. Go
  102737. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirabnalsoid]'))
  102738. drop procedure [dbo].[sp_podignirabnalsoid]
  102739.  
  102740. Go
  102741.  
  102742.  
  102743.  
  102744. CREATE   PROCEDURE sp_PodigniRabNalSoID
  102745.    @RabNalID    int,
  102746.    @Sema_Fix    smallint = Null OUTPUT
  102747. AS
  102748.     SELECT * FROM RabNal WHERE RabNalID=@RabNalID
  102749.     Set @Sema_Fix=(Select Sema_Fix FROM RabNal WHERE RabNalID=@RabNalID)
  102750.  
  102751.  
  102752.  
  102753. Go
  102754. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniraspispor]'))
  102755. drop procedure [dbo].[sp_podigniraspispor]
  102756.  
  102757. Go
  102758. CREATE PROCEDURE sp_PodigniRaspIspor
  102759.     @Sifra_Oe        smallint,
  102760.     @Sifra_Nar        smallint,
  102761.     @Broj_Nar        int,
  102762.     @Broj_Raspored    int=Null OUTPUT,
  102763.     @RasporId        int=Null OUTPUT
  102764. AS
  102765.     Select @Broj_Raspored=Broj_Raspored, @RasporId=RasporId
  102766.     From RasporedIspor
  102767.     Where Sifra_Oe=@Sifra_Oe and Sifra_Nar=@Sifra_Nar And Broj_Nar=@Broj_Nar
  102768.  
  102769.  
  102770. Go
  102771. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirasporedispor]'))
  102772. drop procedure [dbo].[sp_podignirasporedispor]
  102773.  
  102774. Go
  102775. CREATE                        PROCEDURE sp_PodigniRasporedIspor
  102776.     @Sifra_Oe        smallint, 
  102777.     @Sifra_Nar        smallint, 
  102778.     @Broj_Raspored    int
  102779. AS
  102780.     Select RasporID, R.Sifra_OE, R.Sifra_Nar, Broj_Raspored, Datum_Raspor, O.ImeOrg, N.ImeNar, R.Broj_Nar, R.Proknizen, R.Broj_Nar_Lista, R.Tip_Raspored, R.ZaKadeRaspored
  102781.     From RasporedIspor R
  102782.         Left Outer Join OrgEd O on R.Sifra_oe = O.Sifra_oe
  102783.         Left Outer Join TipNarac N on R.Sifra_nar = N.Sifra_nar
  102784.     Where R.Sifra_OE=@Sifra_OE and R.Sifra_Nar=@Sifra_Nar And Broj_Raspored=@Broj_Raspored
  102785.  
  102786.  
  102787. Go
  102788. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirasporedispstavki]'))
  102789. drop procedure [dbo].[sp_podignirasporedispstavki]
  102790.  
  102791. Go
  102792.  
  102793. CREATE            PROCEDURE sp_PodigniRasporedIspStavki
  102794.     @RasporId    int
  102795. AS
  102796.     Select R.RasporStaId, R.RasporId, R.Sifra_Kup, Kup.ImeKup, R.Sifra_Art, K.ImeArt, R.Kolic, R.Sifra_Obj
  102797.     From RasporedIspStavki R
  102798.     Left Outer Join Komint Kup On Kup.Sifra_kup = R.Sifra_Kup
  102799.     Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  102800.     Where R.RasporId=@RasporId
  102801.  
  102802.  
  102803.  
  102804. Go
  102805. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirasporedispstavki_ponar]'))
  102806. drop procedure [dbo].[sp_podignirasporedispstavki_ponar]
  102807.  
  102808. Go
  102809.  
  102810.  
  102811. CREATE        PROCEDURE sp_PodigniRasporedIspStavki_PoNar
  102812.     @Sifra_Oe    smallint,
  102813.     @Sifra_Nar    smallint,
  102814.     @Broj_Raspored    int
  102815. AS
  102816.     Select S.RasporStaId, S.RasporId, S.Sifra_Kup, Kup.ImeKup, S.Sifra_Art, K.ImeArt, S.Kolic, R.Broj_Raspored, R.Proknizen, S.Sifra_Obj
  102817.     From RasporedIspStavki S
  102818.     Inner Join RasporedIspor R on R.RasporId = S.RasporId
  102819.     Left Outer Join Komint Kup On Kup.Sifra_kup = S.Sifra_Kup
  102820.     Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  102821.     Where R.Sifra_Oe=@Sifra_Oe and R.Sifra_Nar=@Sifra_Nar and R.Broj_Raspored=@Broj_Raspored
  102822.  
  102823.  
  102824.  
  102825. Go
  102826. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirazlfin]'))
  102827. drop procedure [dbo].[sp_podignirazlfin]
  102828.  
  102829. Go
  102830.  
  102831. CREATE  PROCEDURE sp_PodigniRazlFin
  102832.     @Broj_RazlFin    int,
  102833.     @Sifra_Oe    smallint
  102834.  AS
  102835.     SELECT R.broj_razlfin, R.Datum_dok, R.SifrA_oe, R.Sifra_art, R.Posn,
  102836.                R.Ptar, R.VlIzl, R.Sifra_Nal, R.Broj_Nal, R.Iznos_Razl, K.imeart, K.edmera as sedmera
  102837.         from RazlFin R          
  102838.         left outer join KATART K  on R.sifrA_art = K.sifra_art
  102839.     WHERE Broj_RazlFin=@Broj_RazlFin and Sifra_Oe=@Sifra_Oe
  102840.  
  102841.  
  102842.  
  102843. Go
  102844. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirazlfindat]'))
  102845. drop procedure [dbo].[sp_podignirazlfindat]
  102846.  
  102847. Go
  102848.  
  102849.  
  102850. CREATE    PROCEDURE sp_PodigniRazlFinDat
  102851.     @Sifra_Oe    smallint,
  102852.     @Broj_RazlFin    int,
  102853.     @Datum_Dok    smalldatetime OUTPUT
  102854.  AS
  102855.     SELECT top 1 @Datum_dok = datum_dok  
  102856.     FROM RazlFin R          
  102857.     WHERE Broj_RazlFin=@Broj_RazlFin and Sifra_Oe=@Sifra_Oe
  102858.  
  102859.     SELECT R.broj_razlfin, R.Datum_dok, R.Sifra_oe, R.Sifra_art, A.ImeArt, 
  102860.     R.Posn, R.Ptar, R.VlIzl, R.Sifra_Nal, R.Broj_Nal, R.Iznos_Razl, A.Kto_Anal
  102861.     FROM RazlFin R          
  102862.     INNER JOIN KatArt A ON R.Sifra_Art = A.Sifra_Art
  102863.     WHERE R.Broj_RazlFin=@Broj_RazlFin and R.Sifra_Oe=@Sifra_Oe
  102864.  
  102865.  
  102866.  
  102867.  
  102868. Go
  102869. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirazlprod]'))
  102870. drop procedure [dbo].[sp_podignirazlprod]
  102871.  
  102872. Go
  102873. CREATE  PROCEDURE sp_PodigniRazlProd
  102874.     @Broj_RazlProd    int,
  102875.     @Sifra_Oe    smallint
  102876.  AS
  102877.     SELECT R.broj_razlProd, R.Datum_dok, R.SifrA_oe, R.Sifra_art, R.Posn,
  102878.                R.Ptar, R.VlIzl, R.Sifra_Nal, R.Broj_Nal, R.Iznos_Razl, K.imeart, K.edmera as sedmera,
  102879.       R.Kolic, R.StaraCena, R.NovaCena, R.DanVredn
  102880.         from RazlProd R          
  102881.         left outer join KATART K  on R.sifrA_art = K.sifra_art
  102882.     WHERE Broj_RazlProd=@Broj_RazlProd and Sifra_Oe=@Sifra_Oe
  102883.  
  102884.  
  102885.  
  102886. Go
  102887. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirazlproddat]'))
  102888. drop procedure [dbo].[sp_podignirazlproddat]
  102889.  
  102890. Go
  102891.  
  102892.  
  102893. CREATE    PROCEDURE sp_PodigniRazlProdDat
  102894.     @Sifra_Oe    smallint,
  102895.     @Broj_RazlProd    int,
  102896.     @Datum_Dok    smalldatetime OUTPUT
  102897.  AS
  102898.     SELECT top 1 @Datum_dok = datum_dok  
  102899.     FROM RazlProd R          
  102900.     WHERE Broj_RazlProd=@Broj_RazlProd and Sifra_Oe=@Sifra_Oe
  102901.     SELECT R.broj_razlProd, R.Datum_dok, R.Sifra_oe, R.Sifra_art, A.ImeArt, 
  102902.     R.Posn, R.Ptar, R.VlIzl, R.Sifra_Nal, R.Broj_Nal, R.Iznos_Razl, R.Kolic, R.StaraCena, R.NovaCena, R.DanVredn
  102903.     FROM RazlProd R          
  102904.     INNER JOIN KatArt A ON R.Sifra_Art = A.Sifra_Art
  102905.     WHERE R.Broj_RazlProd=@Broj_RazlProd and R.Sifra_Oe=@Sifra_Oe
  102906.  
  102907.  
  102908.  
  102909. Go
  102910. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirecepti]'))
  102911. drop procedure [dbo].[sp_podignirecepti]
  102912.  
  102913. Go
  102914.  
  102915.  
  102916.  
  102917.  
  102918.  
  102919. CREATE     PROCEDURE sp_PodigniRecepti
  102920.  
  102921.     @Broj_Recept        int,
  102922.     @Sifra_Apteka        char(2)
  102923. AS
  102924.     Select R.*, Lek1.ImeLekar as ImeLekarMatic, Lek2.ImeLekar as ImeLekarSpec,
  102925.                L.ImeArt, A.ImeATC, F.ImeFarmacevt, D.ImeDijagn, Os.ImeOsnovOSig, P.ImePacient,
  102926.                PS.ImePodrSluzba
  102927.   From Recepti R 
  102928.         Left Outer Join Lekari Lek1 on R.Sifra_Lekar = Lek1.Sifra_Lekar
  102929.         Left Outer Join Lekari Lek2 on R.Sifra_Lekar_Spec = Lek2.Sifra_Lekar
  102930.         Left Outer Join Katart L on R.Sifra_Art = L.Sifra_Art
  102931.         Left Outer Join ATCKodovi A on R.Sifra_ATC = A.Sifra_ATC
  102932.         Left Outer Join Farmacevt F on R.Sifra_Farmacevt = F.Sifra_Farmacevt
  102933.         Left Outer Join Dijagnozi D on R.Sifra_Dijagn = D.Sifra_Dijagn
  102934.         Left Outer Join OsnovOsig Os on R.Sifra_OSnovOsig = Os.Sifra_OsnovOSig
  102935.         Left Outer Join PodracniSluzbi PS on substring(R.Sifra_Kompanija,1,4) = PS.Sifra_PodrSluzba
  102936.     LEFT OUTER JOIN Pacienti P ON R.EMBG=P.EMBG
  102937.  
  102938.     Where R.Broj_Recept=@Broj_Recept And R.Sifra_Apteka=@Sifra_Apteka
  102939.  
  102940.  
  102941.  
  102942.  
  102943.  
  102944.  
  102945. Go
  102946. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirecepti_p]'))
  102947. drop procedure [dbo].[sp_podignirecepti_p]
  102948.  
  102949. Go
  102950.  
  102951. CREATE  PROCEDURE sp_PodigniRecepti_P
  102952.     @Broj_Recept        int,
  102953.     @Sifra_Apteka        char(2)
  102954. AS
  102955.     Select R.*, Lek1.ImeLekar as ImeLekarMatic, Lek2.ImeLekar as ImeLekarSpec,
  102956.                L.ImeArt, A.ImeATC, F.ImeFarmacevt, D.ImeDijagn, Os.ImeOsnovOSig, P.ImePacient,
  102957.                PS.ImePodrSluzba
  102958.   From Recepti_P R 
  102959.         Left Outer Join Lekari Lek1 on R.Sifra_Lekar = Lek1.Sifra_Lekar
  102960.         Left Outer Join Lekari Lek2 on R.Sifra_Lekar_Spec = Lek2.Sifra_Lekar
  102961.         Left Outer Join Katart L on R.Sifra_Art = L.Sifra_Art
  102962.         Left Outer Join ATCKodovi A on R.Sifra_ATC = A.Sifra_ATC
  102963.         Left Outer Join Farmacevt F on R.Sifra_Farmacevt = F.Sifra_Farmacevt
  102964.         Left Outer Join Dijagnozi D on R.Sifra_Dijagn = D.Sifra_Dijagn
  102965.         Left Outer Join OsnovOsig Os on R.Sifra_OSnovOsig = Os.Sifra_OsnovOSig
  102966.         Left Outer Join PodracniSluzbi PS on substring(R.Sifra_Kompanija,1,4) = PS.Sifra_PodrSluzba
  102967.     LEFT OUTER JOIN Pacienti P ON R.EMBG=P.EMBG
  102968.     Where R.Broj_Recept=@Broj_Recept And R.Sifra_Apteka=@Sifra_Apteka
  102969.  
  102970.  
  102971.  
  102972.  
  102973. Go
  102974. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirelacisporstav]'))
  102975. drop procedure [dbo].[sp_podignirelacisporstav]
  102976.  
  102977. Go
  102978.  
  102979. CREATE  PROCEDURE sp_PodigniRelacIsporStav
  102980.     @Sifra_RelIspor    smallint
  102981. AS
  102982.     Select R.*, G.ImeGrad From RelacIsporStav R INNER JOIN Grad G ON R.Sifra_Grad=G.Sifra_Grad
  102983.     Where Sifra_RelIspor=@Sifra_RelIspor
  102984.  
  102985.  
  102986.  
  102987. Go
  102988. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirkasprivil]'))
  102989. drop procedure [dbo].[sp_podignirkasprivil]
  102990.  
  102991. Go
  102992.  
  102993. CREATE   PROCEDURE sp_PodigniRKasPrivil
  102994.     @Sifra_Oper     smallint,
  102995.     @Sifra_GrOper    char(20),
  102996.     @Sifra_Operac    char(20)
  102997. AS
  102998.     SELECT * FROM RKasPrivil
  102999.     WHERE Sifra_Oper = @Sifra_Oper And Sifra_GrOper = @Sifra_GrOper And Sifra_Operac = @Sifra_Operac
  103000.  
  103001.  
  103002.  
  103003. Go
  103004. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirpopis]'))
  103005. drop procedure [dbo].[sp_podignirpopis]
  103006.  
  103007. Go
  103008.  
  103009. CREATE PROCEDURE sp_PodigniRPopis
  103010.     @IDPopis smallint
  103011. AS
  103012.     SELECT RP.*, A.ImeArt
  103013.     FROM RPopis RP 
  103014.     INNER JOIN KatArt A ON RP.Sifra_Art = A.Sifra_Art
  103015.     WHERE  RP.IDpopis = @IDPopis 
  103016.   IF @@ROWCOUNT = 0
  103017.       RETURN 77000
  103018.    ELSE
  103019.       RETURN 0
  103020.  
  103021.  
  103022.  
  103023. Go
  103024. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirutiplan]'))
  103025. drop procedure [dbo].[sp_podignirutiplan]
  103026.  
  103027. Go
  103028.  
  103029.  
  103030.  
  103031.  
  103032. CREATE     PROCEDURE sp_PodigniRutiPlan
  103033.     @Sifra_Pat smallint,
  103034.     @Datum_Od smalldatetime,
  103035.     @DenOdNedela char(1)
  103036.  AS
  103037.     Select R.Sifra_Pat, R.Datum_Od, R.DenOdNedela, R.Rbr, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, KO.Adresa
  103038.     From RutiPlan R
  103039.     left outer join Komint K on K.Sifra_Kup = R.Sifra_Kup
  103040.     left outer join KOBjekti KO on R.Sifra_Kup = KO.Sifra_Kup and R.Sifra_Obj =KO.Sifra_Obj
  103041.     Where R.Sifra_Pat=@Sifra_Pat and R.Datum_Od = @Datum_Od and R.DenOdNedela = @DenOdNedela
  103042.     order by rbr
  103043.     Return @@ERROR
  103044.  
  103045.  
  103046.  
  103047.  
  103048.  
  103049.  
  103050.  
  103051. Go
  103052. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignirutizadatum]'))
  103053. drop procedure [dbo].[sp_podignirutizadatum]
  103054.  
  103055. Go
  103056.  
  103057.  
  103058.  
  103059.  
  103060.  
  103061. CREATE     PROCEDURE sp_PodigniRutiZaDatum
  103062.     @Sifra_Pat smallint,
  103063.     @Datum smalldatetime
  103064.     
  103065.  AS
  103066.     Select R.Sifra_Pat, R.Datum, R.Rbr, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, KO.Adresa
  103067.     From RutiZaDatum R
  103068.     left outer join Komint K on K.Sifra_Kup = R.Sifra_Kup
  103069.     left outer join KOBjekti KO on R.Sifra_Kup = KO.Sifra_Kup and R.Sifra_Obj = KO.Sifra_Obj
  103070.     Where R.Sifra_Pat=@Sifra_Pat and R.Datum = @Datum 
  103071.     order by rbr
  103072.     Return @@ERROR
  103073.  
  103074.  
  103075.  
  103076.  
  103077.  
  103078.  
  103079.  
  103080.  
  103081. Go
  103082. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisams_statusuredi]'))
  103083. drop procedure [dbo].[sp_podignisams_statusuredi]
  103084.  
  103085. Go
  103086.  
  103087. CREATE            PROCEDURE sp_PodigniSams_StatusUredi
  103088.     @Sams_UredId varchar(20),
  103089.     @Komanda varchar(10) output,
  103090.     @TekKorisnik varchar(20) output,
  103091.     @ImeKorisnik varchar(40) output, 
  103092.     @SaldoKorisnik decimal(18, 6) output    
  103093. As
  103094.     
  103095. Select @Komanda = Komanda, @TekKorisnik = Tek_Korisnik, @ImeKorisnik = ImeKor, @SaldoKorisnik = Novi_Limi - novi_promet from Sams_StatusUredi S 
  103096. inner join ArkaKartKor AK on AK.Sifra_Kor = S.Tek_Korisnik
  103097. where Sams_UredId = @Sams_UredId
  103098.  
  103099. declare @NeraskSaldo as decimal(18, 6)  
  103100. set @NeraskSaldo = 0
  103101. select @NeraskSaldo = sum(AK.Dolzi - AK.Pobaruva) from Arkakartkpm AK where AK.Sifra_Kor =  @TekKorisnik and AK.Rasknizen is null
  103102.  
  103103. If @NeraskSaldo <> 0
  103104.     set @SaldoKorisnik = @SaldoKorisnik - @NeraskSaldo
  103105.  
  103106. Return @@ERROR
  103107.  
  103108.  
  103109.  
  103110. Go
  103111. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisamsslikaporaka]'))
  103112. drop procedure [dbo].[sp_podignisamsslikaporaka]
  103113.  
  103114. Go
  103115.  
  103116. create  PROCEDURE sp_PodigniSamsSlikaPoraka
  103117.     @Sifra_Art    varchar(20)
  103118. AS
  103119.     Select Sifra_Art, SlikaArt, ImeFile
  103120.     From KatSliki
  103121.     Where Sifra_Art=@Sifra_Art 
  103122.     Return @@ERROR
  103123.  
  103124.  
  103125.  
  103126.  
  103127.  
  103128. Go
  103129. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisamstemp]'))
  103130. drop procedure [dbo].[sp_podignisamstemp]
  103131.  
  103132. Go
  103133.  
  103134.  
  103135.  
  103136. CREATE  PROCEDURE sp_PodigniSamsTemp    
  103137.  
  103138. as
  103139. select distinct S.sifra_kor, K.imekor from sams_temp S
  103140. inner join ArkaKartKor K on K.Sifra_Kor = S.Sifra_Kor 
  103141.  
  103142.  
  103143.  
  103144.  
  103145.  
  103146.  
  103147.  
  103148.  
  103149.  
  103150.  
  103151.  
  103152.  
  103153.  
  103154.  
  103155.  
  103156.  
  103157.  
  103158.  
  103159.  
  103160.  
  103161. Go
  103162. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisamstempscan]'))
  103163. drop procedure [dbo].[sp_podignisamstempscan]
  103164.  
  103165. Go
  103166. CREATE PROCEDURE sp_PodigniSamsTempScan
  103167.     @Sifra_Kor as varchar(20) = null
  103168. as
  103169.     select S.Nom, S.Sifra_Art, S.Kolic, S.KratkaImeArt, S.Uces, S.DokCena, S.ImaKomerc, S.ProcOsn, S.Sifra_Tar, S.Rascisten, S.EdMera, S.DokVredn, null as drzimesto  from sams_temp S
  103170.     where S.Sifra_Kor = @Sifra_Kor
  103171.  
  103172.  
  103173.  
  103174. Go
  103175. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisgrart]'))
  103176. drop procedure [dbo].[sp_podignisgrart]
  103177.  
  103178. Go
  103179.  
  103180.  
  103181.  
  103182.  
  103183. create      procedure sp_PodigniSgrart
  103184.     @Sif_GrArt varchar(20) 
  103185.     --@Sifra_Kup varchar(6) 
  103186. As
  103187.     Select KS.*,K.ImeArt from SGrArt KS
  103188.     left outer join KatArt K on KS.Sifra_Art=K.SIfra_Art
  103189.     Where KS.Sif_GrArt=@Sif_GrArt
  103190.     Order by KS.Sifra_Art --and KS.Sifra_Kup=@Sifra_Kup
  103191.  
  103192.  
  103193.  
  103194.  
  103195.  
  103196.  
  103197.  
  103198. Go
  103199. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisgrkup]'))
  103200. drop procedure [dbo].[sp_podignisgrkup]
  103201.  
  103202. Go
  103203.  
  103204.  
  103205.  
  103206. CREATE     procedure sp_PodigniSgrKup
  103207.     @Sif_GrKup varchar(20) 
  103208.     --@Sifra_Kup varchar(6) 
  103209. As
  103210.     Select KS.*,K.ImeKup from SGrKup KS
  103211.     left outer join Komint K on KS.Sifra_Kup=K.SIfra_Kup
  103212.     Where KS.Sif_GrKup=@Sif_GrKup
  103213.     Order by KS.Sifra_Kup --and KS.Sifra_Kup=@Sifra_Kup
  103214.  
  103215.  
  103216.  
  103217.  
  103218.  
  103219.  
  103220. Go
  103221. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisgrkupobj]'))
  103222. drop procedure [dbo].[sp_podignisgrkupobj]
  103223.  
  103224. Go
  103225. CREATE Procedure sp_PodigniSGrKupObj
  103226.     @Sif_GrKup varchar(20) 
  103227.     --@Sifra_Kup varchar(6)
  103228. As
  103229.     Select KS.*, K.ImeKup, KO.ImeObj from SGrKupObj KS
  103230.     Left outer join Komint K on KS.Sifra_Kup=K.SIfra_Kup
  103231.     Left outer join Kobjekti KO on KS.Sifra_Kup=KO.Sifra_Kup and KS.Sifra_Obj=KO.Sifra_Obj
  103232.     Where KS.Sif_GrKup=@Sif_GrKup
  103233.     Order by KS.Sifra_Kup
  103234.  
  103235.  
  103236.  
  103237.  
  103238.  
  103239.  
  103240.  
  103241.  
  103242. Go
  103243. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisitegstavodgknal]'))
  103244. drop procedure [dbo].[sp_podignisitegstavodgknal]
  103245.  
  103246. Go
  103247.  
  103248. CREATE    PROCEDURE  sp_PodigniSiteGStavOdGkNal
  103249.     @Sifra_Nal    Smallint,
  103250.     @Broj_Nal    Int
  103251. AS
  103252.     SELECT GStID FROM GStav 
  103253.     WHERE Sifra_Nal = @Sifra_Nal and Broj_Nal = @Broj_Nal
  103254.     ORDER BY RbrNalog
  103255.  
  103256.  
  103257.  
  103258. Go
  103259. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisiteorg]'))
  103260. drop procedure [dbo].[sp_podignisiteorg]
  103261.  
  103262. Go
  103263. CREATE PROCEDURE sp_PodigniSiteOrg
  103264. AS
  103265.     Select * From Orged
  103266.  
  103267.  
  103268. Go
  103269. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisjazici]'))
  103270. drop procedure [dbo].[sp_podignisjazici]
  103271.  
  103272. Go
  103273.  
  103274. CREATE    PROCEDURE sp_PodigniSJazici
  103275.     @Sif_Rabot integer
  103276. AS
  103277.     SELECT Sif_Jazik FROM SJazik
  103278.     WHERE Sifra_Rab = @Sif_Rabot
  103279.     ORDER BY Sif_Jazik
  103280.     RETURN @@ERROR
  103281.  
  103282.  
  103283.  
  103284. Go
  103285. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniskroznaka]'))
  103286. drop procedure [dbo].[sp_podigniskroznaka]
  103287.  
  103288. Go
  103289.  
  103290. CREATE  PROCEDURE sp_PodigniSkrOznaka
  103291.     @SkrOznaka    varchar(20),
  103292.     @SkrGrupa    char(1)
  103293. AS
  103294.     SELECT *  FROM SkrDok
  103295.     WHERE SkrOznaka = @SkrOznaka AND SkrGrupa=@SkrGrupa
  103296.  
  103297.  
  103298.  
  103299. Go
  103300. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisledenbrojwbn_tnar]'))
  103301. drop procedure [dbo].[sp_podignisledenbrojwbn_tnar]
  103302.  
  103303. Go
  103304. CREATE PROCEDURE sp_PodigniSledenBrojWbn_TNar
  103305.     @Sifra_Oe Smallint,
  103306.     @Sifra_Nar Smallint
  103307. AS
  103308.     Select MAX(Broj_Nar) From Wbn_TNar Where Sifra_Oe=@Sifra_Oe and Sifra_Nar=@Sifra_Nar
  103309.  
  103310.  
  103311.  
  103312. Go
  103313. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignismeni]'))
  103314. drop procedure [dbo].[sp_podignismeni]
  103315.  
  103316. Go
  103317.  
  103318. CREATE PROCEDURE sp_PodigniSmeni
  103319.     @Sifra_Smena    smallint
  103320.  AS
  103321.     Select Sifra_Smena, Ime_Smena, Aktivna
  103322.     From Smeni
  103323.     Where Sifra_Smena=@Sifra_Smena
  103324.  
  103325.  
  103326.  
  103327. Go
  103328. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignismeniev]'))
  103329. drop procedure [dbo].[sp_podignismeniev]
  103330.  
  103331. Go
  103332. CREATE PROCEDURE sp_PodigniSmeniEv
  103333.     @BrSmena    smallint,
  103334.     @Datum_Evid    smalldatetime
  103335.  AS
  103336.     Select BrSmena, Datum_Evid, Datum_Otv, Datum_Zatv, Sifra_Oe, Sifra_Oper, Dozv_Oper
  103337.     From SmeniEv
  103338.     Where BrSmena=@BrSmena And Datum_Evid=@Datum_Evid
  103339.  
  103340.  
  103341.  
  103342. Go
  103343. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisostav]'))
  103344. drop procedure [dbo].[sp_podignisostav]
  103345.  
  103346. Go
  103347.  
  103348. CREATE  procedure sp_PodigniSostav
  103349.     @Sifra_Art   varchar(20)
  103350. AS
  103351.     SELECT S.*,  SU.ImeArt ImeSur, SU.EdMera EdMeraSur
  103352.     FROM  Sostav S
  103353.     INNER JOIN KatArt  SU ON S.Sifra_Sur = SU.Sifra_Art
  103354.     WHERE  S.Sifra_Art = @Sifra_Art
  103355.   IF @@ROWCOUNT = 0
  103356.       RETURN 77000
  103357.    ELSE
  103358.       RETURN 0
  103359.  
  103360.  
  103361.  
  103362. Go
  103363. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisostavboivel]'))
  103364. drop procedure [dbo].[sp_podignisostavboivel]
  103365.  
  103366. Go
  103367.  
  103368.  
  103369.  
  103370. create     PROCEDURE [dbo].[sp_PodigniSostavBoiVel]
  103371.   @Sifra_Art    varchar(20),    
  103372.   @Sifra_Boja    smallint    
  103373. AS
  103374.     SELECT S.*,  SU.ImeArt, B.ImeBoja FROM  SostavBoiVel S
  103375.     INNER JOIN KatArt SU ON S.Sifra_Art = SU.Sifra_Art
  103376.     INNER JOIN Boja B ON S.Sifra_Boja = B.Sifra_Boja
  103377.     WHERE S.Sifra_Boja = @Sifra_Boja AND S.Sifra_Art = @Sifra_Art
  103378.   IF @@ROWCOUNT = 0
  103379.       RETURN 77000
  103380.    ELSE
  103381.       RETURN 0
  103382.  
  103383.  
  103384.  
  103385.  
  103386.  
  103387.  
  103388.  
  103389. Go
  103390. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisostavkontr]'))
  103391. drop procedure [dbo].[sp_podignisostavkontr]
  103392.  
  103393. Go
  103394.  
  103395.  
  103396.  
  103397.  
  103398. CREATE    PROCEDURE sp_PodigniSostavKontr
  103399.     @Sifra_Art varchar(20),
  103400.     @KontrSer varchar(25)
  103401. AS
  103402. SELECT S.*, A.ImeArt, SUR.ImeArt ImeSur, SUR.EdMera EdmeraSur FROM SostavKontr S
  103403. INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  103404. INNER JOIN KatArt SUR ON S.Sifra_Sur=SUR.Sifra_Art
  103405. WHERE S.Sifra_Art=@Sifra_Art AND KontrSer=@KontrSer
  103406.   IF @@ROWCOUNT = 0
  103407.       RETURN 77000
  103408.    ELSE
  103409.       RETURN 0
  103410.  
  103411.  
  103412.  
  103413. Go
  103414. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisostboivelstavki]'))
  103415. drop procedure [dbo].[sp_podignisostboivelstavki]
  103416.  
  103417. Go
  103418.  
  103419. CREATE    procedure [dbo].[sp_PodigniSostBoiVelStavki]
  103420.     @Sifra_Art   varchar(20),
  103421.     @Sifra_Boja   smallint,
  103422.     @DaliSurov    char(1)=NULL
  103423. AS
  103424. IF @DaliSurov IS NULL
  103425.     SELECT S.*,  SU.ImeArt ImeSur, B.ImeBoja ImeBojaSur, SU.Edmera
  103426.     FROM  SostavBoiVel S
  103427.     INNER JOIN KatArt  SU ON S.Sifra_Sur = SU.Sifra_Art
  103428.     LEFT OUTER JOIN Boja  B ON S.Sifra_Boja_Sur = B.Sifra_Boja
  103429.     WHERE  S.Sifra_Art = @Sifra_Art and  S.Sifra_Boja = @Sifra_Boja
  103430. ELSE 
  103431.     SELECT S.*,  SU.ImeArt ImeSur, B.ImeBoja ImeBojaSur, SU.Edmera
  103432.     FROM  SostavBoiVel S
  103433.     INNER JOIN KatArt  SU ON S.Sifra_Sur = SU.Sifra_Art
  103434.     LEFT OUTER JOIN Boja  B ON S.Sifra_Boja_Sur = B.Sifra_Boja
  103435.     WHERE  S.Sifra_Art = @Sifra_Art and  S.Sifra_Boja = @Sifra_Boja AND SU.DaliSurov=@DaliSurov
  103436.  
  103437.   IF @@ROWCOUNT = 0
  103438.       RETURN 77000
  103439.    ELSE
  103440.       RETURN 0
  103441.  
  103442.  
  103443.  
  103444.  
  103445. Go
  103446. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignisostkor]'))
  103447. drop procedure [dbo].[sp_podignisostkor]
  103448.  
  103449. Go
  103450. CREATE     PROCEDURE sp_PodigniSostKor
  103451. AS
  103452.     Declare @Mesec as smalldatetime
  103453.     Declare @Godina as smalldatetime
  103454.     Set @Mesec = Month(GetDate())
  103455.     Set @Godina = Year(GetDate())
  103456.     Create Table #PromTekMes
  103457.     (
  103458.      Sifra_Kor    varchar(20),
  103459.      Promet        decimal(18,6)
  103460.     )
  103461.     Insert Into #PromTekMes
  103462.     Select Sifra_Kor, Sum(Dolzi) 
  103463.     From KartProm 
  103464.     Where Month(Datum_Ska) = @Mesec And Year(Datum_Ska) = @Godina
  103465.     Group By Sifra_Kor
  103466.     Select K.Sifra_Kor, Sum(K.Dolzi-K.Pobaruva) Saldo, M.Promet 
  103467.     From KartProm K
  103468.     Left Outer Join #PromTekMes M On M.Sifra_Kor=K.Sifra_Kor
  103469.     Group By K.Sifra_Kor, M.Promet
  103470.  
  103471.  
  103472. Go
  103473. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistaambal]'))
  103474. drop procedure [dbo].[sp_podignistaambal]
  103475.  
  103476. Go
  103477. CREATE PROCEDURE sp_PodigniStaAmbal
  103478.     @DokrID    int
  103479. AS
  103480.     Select S.DokrID, S.Sifra_Amb, S.Kolic, S.So_GAmb, A.ImeAmb, A.Sifra_GAmb, G.ImeAmb ImeGAmb
  103481.     From StaAmbal S
  103482.     Left Outer Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb
  103483.     Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb
  103484.     Where DokrID=@DokrID
  103485.  
  103486.  
  103487. Go
  103488. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistadokrodobr]'))
  103489. drop procedure [dbo].[sp_podignistadokrodobr]
  103490.  
  103491. Go
  103492.  
  103493.  
  103494.  
  103495.  
  103496. CREATE     PROCEDURE sp_PodigniStaDokrOdobr
  103497.     @Sifra_Oe    smallint,
  103498.     @Sifra_Dok    smallint,
  103499.     @Broj_Dok    int
  103500.  
  103501. AS
  103502.  
  103503.     Select S.*, K.ImeArt, K.EdMera, K.ImaBroevi, K.ImaKomerc, T.ProcOsn as POsnOdArt, K.Sifra_Tar
  103504.     From StaDokrOdobr S
  103505.         Left Outer Join Katart K On S.Sifra_Art = K.Sifra_Art
  103506.         Left Outer Join Tarifi T On T.Sifra_Tar = K.Sifra_Tar
  103507.     Where Sifra_Oe = @Sifra_Oe and Sifra_Dok = @Sifra_Dok and Broj_dok = @Broj_Dok 
  103508.         ORDER BY Rbr
  103509.  
  103510.  
  103511.  
  103512.  
  103513.  
  103514. Go
  103515. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistadokrodobr_zadolz]'))
  103516. drop procedure [dbo].[sp_podignistadokrodobr_zadolz]
  103517.  
  103518. Go
  103519.  
  103520.  
  103521.  
  103522.  
  103523. CREATE      PROCEDURE sp_PodigniStaDokrOdobr_Zadolz
  103524.     @Sifra_OE smallint,
  103525.     @Sifra_Dok smallint,
  103526.     @Broj_Dok int,
  103527.     @NacinPresm varchar(3) = Null Output,
  103528.         @TekstPosle varchar(1500) = Null Output,
  103529.         @OdobrNeto decimal(18, 4) = Null Output,  
  103530.         @OdobrBruto decimal(18, 4) = Null Output,
  103531.         @ImaDanok char(1) = Null Output 
  103532. AS
  103533.     Declare @SSQL VArchar(4000)
  103534.     SELECT S.DokrID, S.Sifra_OE, S.Sifra_Dok, S.Broj_Dok, S.ImaDodatna, S.ZadolzDali, S.Datum_Dok, 
  103535.         S.RBr, S.Sifra_Art, K.ImeArt, S.ImeMat, S.DanNacinPresm, S.VlIzl, S.Kolic, S.BaznaCena, 
  103536.         S.ProcOz, S.EdOdobrNeto, S.OdobrNeto, S.POsn, S.OdobrBruto ,
  103537.         D.Sifra_Kup, Kup.ImeKup, D.Sifra_Obj, KO.ImeObj, K.Edmera, S.ImaDanok,
  103538.                 Kup.Adresa, Kup.SMesto, Kup.Posta, KO.Adresa OAdresa, KO.SMesto OSMesto, KO.Posta OPosta 
  103539.     FROM StaDokrOdobr S
  103540.     Inner Join Dokr D oN D.DokrID=S.DokrID
  103541.     Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  103542.     Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  103543.     Left Outer Join Kobjekti KO On KO.Sifra_Kup = D.Sifra_Kup And KO.Sifra_Obj = D.Sifra_Obj
  103544.     WHERE S.Sifra_OE=@Sifra_OE And S.Sifra_Dok=@Sifra_Dok And S.Broj_Dok=@Broj_Dok
  103545.     Select @NacinPresm=NacinPresm
  103546.       From StaDokrOdobr S
  103547.     Where Sifra_OE=@Sifra_OE And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  103548.         Select @TekstPosle=TekstPosle
  103549.       From Dokr D
  103550.     Where Sifra_OE=@Sifra_OE And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  103551.         Select @OdobrNeto=Sum(OdobrNeto)
  103552.       From StaDokrOdobr S
  103553.     Where Sifra_OE=@Sifra_OE And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  103554.         Select @OdobrBruto=Sum(OdobrBruto)
  103555.       From StaDokrOdobr S
  103556.     Where Sifra_OE=@Sifra_OE And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  103557.         Select @ImaDanok=ImaDanok
  103558.       From StaDokrOdobr S
  103559.     Where Sifra_OE=@Sifra_OE And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  103560.  
  103561.  
  103562.  
  103563. Go
  103564. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistanarac]'))
  103565. drop procedure [dbo].[sp_podignistanarac]
  103566.  
  103567. Go
  103568.  
  103569.  
  103570.  
  103571.  
  103572.  
  103573.  
  103574. CREATE                      PROCEDURE sp_PodigniStaNarac
  103575.     @Sifra_OE Smallint,
  103576.     @Sifra_Nar Smallint,
  103577.     @Broj_Nar Int,
  103578.     @Podred    char(1)=NULL    --dod.16.12.09 L-po lokacii
  103579. AS
  103580. IF @Podred='L'
  103581.     SELECT N.StaNarID, N.NarID,    N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar,    N.RBr, N.Sifra_Art, N.Kolic, N.DokCena, N.MagCena,
  103582.     N.POsn, N.PTar, N.Uces, N.DanDokCena, N.DanMagCena,    N.CenaIznos, N.ImeMat, N.EdMera, N.Realiziran, N.Realiz_Na, 
  103583.     N.DokrID, A.ImeArt, A.EdMera as SEdMera, A.Lokacija, A.DogCena, A.MalCena, N.Kutija_Br, N.NarIdOdNar, N.CarProc, N.DrugiTros, 
  103584.     N.SrednaNabC, N.TekProdC, N.PrifPredlog,S.NNabcena, S.Vlez - S.Izlez as TekSostojba, A.Sifra_Podg, P.Marza_Gol, P.Marza_Mal, 
  103585.     N.TekNabC, N.DokNabC, N.Realiz_Kolic, N.Paketi, N.KontrSer, UcesOsn, UcesKol, UcesDod, Alt_Kolic, A.SMatUsl, N.Kolic_BO, 
  103586.     N.RealFlag_KBO, A.Tezina, N.KolicOdZal, N.SIfra_CRR, N.Sifra_Boja, N.Sifra_Velic, B.ImeBoja, V.ImeVelic, N.Sifra_KatStatus, N.Lokacija NarLokac, N.Ozn_Dekl 
  103587.     FROM StaNarac N
  103588.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103589.     LEFT OUTER JOIN PODGRUPI P  on P.sifra_podg = A.SifrA_podg
  103590.     LEFT OUTER JOIN SOART S ON S.Sifra_oe = N.Sifra_oe and S.Sifra_Art = N.SifrA_art
  103591.     LEFT OUTER JOIN Boja B ON N.Sifra_Boja=B.Sifra_Boja
  103592.     LEFT OUTER JOIN Velicina V ON N.Sifra_Velic=V.Sifra_Velic
  103593.     WHERE N.Sifra_OE=@Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar
  103594.     ORDER BY A.Lokacija
  103595. ELSE
  103596.     SELECT N.StaNarID, N.NarID,    N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar,    N.RBr, N.Sifra_Art, N.Kolic, N.DokCena, N.MagCena,
  103597.     N.POsn, N.PTar, N.Uces, N.DanDokCena, N.DanMagCena,    N.CenaIznos, N.ImeMat, N.EdMera, N.Realiziran, N.Realiz_Na, 
  103598.     N.DokrID, A.ImeArt, A.EdMera as SEdMera, A.Lokacija, A.DogCena, A.MalCena, N.Kutija_Br, N.NarIdOdNar, N.CarProc, N.DrugiTros, 
  103599.     N.SrednaNabC, N.TekProdC, N.PrifPredlog,S.NNabcena, S.Vlez - S.Izlez as TekSostojba, A.Sifra_Podg, P.Marza_Gol, P.Marza_Mal, 
  103600.     N.TekNabC, N.DokNabC, N.Realiz_Kolic, N.Paketi, N.KontrSer, UcesOsn, UcesKol, UcesDod, Alt_Kolic, A.SMatUsl, N.Kolic_BO, 
  103601.     N.RealFlag_KBO, A.Tezina, N.KolicOdZal, N.SIfra_CRR, N.Sifra_Boja, N.Sifra_Velic, B.ImeBoja, V.ImeVelic, N.Sifra_KatStatus, N.Lokacija NarLokac, N.Ozn_Dekl 
  103602.     FROM StaNarac N
  103603.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103604.     LEFT OUTER JOIN PODGRUPI P  on P.sifra_podg = A.SifrA_podg
  103605.     LEFT OUTER JOIN SOART S ON S.Sifra_oe = N.Sifra_oe and S.Sifra_Art = N.SifrA_art
  103606.     LEFT OUTER JOIN Boja B ON N.Sifra_Boja=B.Sifra_Boja
  103607.     LEFT OUTER JOIN Velicina V ON N.Sifra_Velic=V.Sifra_Velic
  103608.     WHERE N.Sifra_OE=@Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar
  103609.     ORDER BY Rbr
  103610.     RETURN @@Error
  103611.  
  103612.  
  103613.  
  103614.  
  103615.  
  103616.  
  103617.  
  103618.  
  103619. Go
  103620. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistanarac_lista]'))
  103621. drop procedure [dbo].[sp_podignistanarac_lista]
  103622.  
  103623. Go
  103624. CREATE    PROCEDURE sp_PodigniStaNarac_Lista
  103625.     @Sifra_OE Smallint,
  103626.     @Sifra_Nar Smallint,
  103627.     @Broj_Nar_Lista varchar (50)
  103628. AS
  103629.     Declare @SSQL Varchar    (8000)
  103630.     Create Table #Art
  103631.     (
  103632.      Broj_Nar    Smallint,
  103633.      Rbr        Smallint,
  103634.      Sifra_Art    Varchar(20)
  103635.     )
  103636.     Set @SSQL = ' Insert Into #Art Select Min(Broj_Nar), Min(StaNarID), Sifra_Art 
  103637.             From StaNarac
  103638.              WHERE Sifra_OE='  + cast(@Sifra_OE as varchar (5)) + 
  103639.                             ' And Sifra_Nar=' + cast(@Sifra_Nar as Varchar(5)) + 
  103640.                             ' And Broj_Nar in (' + @Broj_Nar_Lista + ') 
  103641.                         group by Sifra_Art' 
  103642.     Exec(@SSQL)
  103643.     set @SSQL = ' SELECT S.Sifra_art, K.ImeArt, sum (S.Kolic) as Kolic 
  103644.             FROM [StaNarac] S
  103645.             INNER JOIN KatArt K  ON S.Sifra_Art = K.Sifra_Art
  103646.             INNER JOIN #Art A  ON S.Sifra_Art = A.Sifra_Art
  103647.             WHERE S.Sifra_OE='  + cast(@Sifra_OE as varchar (5)) + 
  103648.                             ' And S.Sifra_Nar=' + cast(@Sifra_Nar as Varchar(5)) + 
  103649.                             ' And S.Broj_Nar in (' + @Broj_Nar_Lista + ') 
  103650.                         group by S.Sifra_Art, K.ImeArt, A.Rbr, A.Broj_Nar
  103651.         Order By A.Broj_Nar, A.Rbr' 
  103652.     Exec(@SSQL)
  103653.  
  103654.  
  103655. Go
  103656. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistanarac_lokacija]'))
  103657. drop procedure [dbo].[sp_podignistanarac_lokacija]
  103658.  
  103659. Go
  103660.  
  103661.  
  103662.  
  103663.  
  103664.  
  103665.  
  103666. CREATE                    PROCEDURE sp_PodigniStaNarac_Lokacija
  103667.     @Sifra_OE     Smallint,
  103668.     @Sifra_Nar    Smallint,
  103669.     @Broj_Nar     Int,
  103670.     @Lokacija    varchar(10),
  103671.     @Sifra_OE_ZaCeni smallint,
  103672.     @DajZalPoLot char(1)='N',
  103673.     @Podred    char(1)    = 'R'        --R-rbr,P-podgrupa,L-lokacija
  103674. AS
  103675. CREATE TABLE #TmpZalPoLot
  103676. (Sifra_Art    varchar(20),
  103677. LotBr        varchar(50),
  103678. Sostojba    decimal(18,4))
  103679. IF @DajZalPoLot='D'
  103680. Begin
  103681.     IF @Lokacija IS NULL
  103682.         INSERT INTO #TmpZalPoLot (Sifra_Art, LotBr) SELECT S.Sifra_Art, MIN(M.LotBr) FROM StaNarac S 
  103683.         LEFT OUTER JOIN SoMag M ON M.Sifra_OE=@Sifra_OE_ZaCeni AND S.Sifra_Art=M.Sifra_Art 
  103684.         WHERE S.Sifra_Oe=@Sifra_Oe AND S.Sifra_Nar=@Sifra_Nar AND S.Broj_Nar=@Broj_Nar AND M.Sostojba>0
  103685.         GROUP BY S.Sifra_Art
  103686.     ELSE
  103687.     Begin
  103688.         INSERT INTO #TmpZalPoLot (Sifra_Art, LotBr) SELECT DISTINCT S.Sifra_Art, MIN(M.LotBr) FROM StaNarac S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  103689.         LEFT OUTER JOIN SoMag M ON M.Sifra_OE=@Sifra_OE_ZaCeni AND S.Sifra_Art=M.Sifra_Art
  103690.         WHERE S.Sifra_Oe=@Sifra_Oe AND S.Sifra_Nar=@Sifra_Nar AND S.Broj_Nar=@Broj_Nar AND A.Lokacija=@Lokacija AND M.Sostojba>0
  103691.         GROUP BY S.Sifra_Art
  103692.  
  103693.         UPDATE #TmpZalPoLot SET Sostojba=M.Sostojba FROM SoMag M WHERE M.Sifra_OE=@Sifra_OE AND #TmpZalPoLot.Sifra_Art=M.Sifra_Art AND #TmpZalPoLot.LotBr=M.LotBr
  103694.     End
  103695. End
  103696. IF @Podred='P'
  103697. BEGIN  --\--
  103698. IF @Lokacija IS NULL 
  103699.     SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod  
  103700.     FROM StaNarac N
  103701.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103702.     LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103703.     LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103704.     WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar 
  103705.     ORDER BY A.Sifra_Podg
  103706. ELSE
  103707.     SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod   
  103708.     FROM StaNarac N
  103709.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103710.     LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103711.     LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103712.     WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar And A.Lokacija=@Lokacija
  103713.     ORDER BY A.Sifra_Podg
  103714. END     --\--
  103715. ELSE IF @Podred='L'
  103716. BEGIN  --\-
  103717. IF @Lokacija IS NULL 
  103718.     SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod  
  103719.     FROM StaNarac N
  103720.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103721.     LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103722.     LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103723.     WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar 
  103724.     ORDER BY A.Lokacija
  103725. ELSE
  103726.     SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod   
  103727.     FROM StaNarac N
  103728.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103729.     LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103730.     LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103731.     WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar And A.Lokacija=@Lokacija
  103732.     ORDER BY A.Lokacija
  103733. END     --\-
  103734. ELSE
  103735. BEGIN  ---
  103736. IF @Lokacija IS NULL 
  103737.     SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod  
  103738.     FROM StaNarac N
  103739.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103740.     LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103741.     LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103742.     WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar 
  103743.     ORDER BY N.Rbr
  103744. ELSE
  103745.     SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod   
  103746.     FROM StaNarac N
  103747.     INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103748.     LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103749.     LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103750.     WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar And A.Lokacija=@Lokacija
  103751.     ORDER BY N.Rbr
  103752. END     ---
  103753. RETURN @@Error
  103754.  
  103755.  
  103756.  
  103757.  
  103758. Go
  103759. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistanarac_mob]'))
  103760. drop procedure [dbo].[sp_podignistanarac_mob]
  103761.  
  103762. Go
  103763.  
  103764.  
  103765.  
  103766.  
  103767. CREATE     PROCEDURE sp_PodigniStaNarac_Mob
  103768.     @Sifra_OE     Smallint,
  103769.     @Sifra_Nar    Smallint,
  103770.     @Broj_Nar     Int,
  103771.     @Lokacija    varchar(10),
  103772.     @Sifra_OE_ZaCeni smallint
  103773. AS
  103774.  
  103775. SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, N.DanDokCena, N.UcesOsn, N.UcesDod, N.UcesKol,
  103776. A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, Nar.Sifra_Kup, Nar.Sifra_Obj, Nar.Rok, N.KontrSer
  103777. FROM StaNarac N INNER JOIN Naracki Nar ON N.NarID=Nar.NarID
  103778. INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103779. LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103780. WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar
  103781. ORDER BY N.Rbr
  103782.  
  103783.     RETURN @@Error
  103784.  
  103785.  
  103786.  
  103787.  
  103788.  
  103789.  
  103790.  
  103791. Go
  103792. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistanarac_mobpotv]'))
  103793. drop procedure [dbo].[sp_podignistanarac_mobpotv]
  103794.  
  103795. Go
  103796.  
  103797.  
  103798.  
  103799.  
  103800.  
  103801.  
  103802. CREATE       PROCEDURE sp_PodigniStaNarac_MobPotv
  103803.     @Sifra_OE     Smallint,
  103804.     @Sifra_Nar    Smallint,
  103805.     @Broj_Nar     Int,
  103806.     @Lokacija    varchar(10)
  103807. AS
  103808.  
  103809. SELECT N.RBr, N.Sifra_Art, N.Kolic_BO Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, N.DanDokCena, N.UcesOsn, N.UcesDod, N.UcesKol,
  103810. A.ImeArt, A.EdMera, A.ImaKomerc, Nar.Sifra_Kup, Nar.Sifra_Obj, Nar.Rok, N.KontrSer
  103811. FROM StaNarac N INNER JOIN Naracki Nar ON N.NarID=Nar.NarID
  103812. INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103813. WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar AND N.Lokacija=@Lokacija AND Kolic_BO>0 AND Odobril IS NOT NULL
  103814. ORDER BY N.Rbr
  103815.  
  103816.  
  103817.  
  103818.  
  103819.  
  103820.  
  103821.  
  103822.  
  103823.  
  103824. Go
  103825. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistanarac_povlokacii]'))
  103826. drop procedure [dbo].[sp_podignistanarac_povlokacii]
  103827.  
  103828. Go
  103829.  
  103830.  
  103831.  
  103832.  
  103833.  
  103834.  
  103835. CREATE                  PROCEDURE sp_PodigniStaNarac_PovLokacii
  103836.     @Sifra_OE     Smallint,
  103837.     @Sifra_Nar    Smallint,
  103838.     @Broj_Nar     Int,
  103839.     @Lokacija    varchar(50),        --moze pov.lokacii
  103840.     @Sifra_OE_ZaCeni smallint,
  103841.     @DajZalPoLot char(1)='N',
  103842.     @Podred    char(1)    = 'R'        --R-rbr,P-podgrupa,L-lokacija
  103843. AS
  103844. CREATE TABLE #TmpZalPoLot
  103845. (Sifra_Art    varchar(20),
  103846. LotBr        varchar(50),
  103847. Sostojba    decimal(18,4))
  103848. Declare @SSQL as varchar(3000)
  103849.  
  103850.     IF @DajZalPoLot='D'
  103851.     Begin
  103852.         IF @Lokacija IS NULL
  103853.             INSERT INTO #TmpZalPoLot (Sifra_Art, LotBr) SELECT S.Sifra_Art, MIN(M.LotBr) FROM StaNarac S 
  103854.             LEFT OUTER JOIN SoMag M ON M.Sifra_OE=@Sifra_OE_ZaCeni AND S.Sifra_Art=M.Sifra_Art 
  103855.             WHERE S.Sifra_Oe=@Sifra_Oe AND S.Sifra_Nar=@Sifra_Nar AND S.Broj_Nar=@Broj_Nar AND M.Sostojba>0
  103856.             GROUP BY S.Sifra_Art
  103857.         ELSE
  103858.         Begin
  103859.             INSERT INTO #TmpZalPoLot (Sifra_Art, LotBr) EXEC (@SSQL)
  103860.             SET @SSQL='SELECT DISTINCT S.Sifra_Art, MIN(M.LotBr) FROM StaNarac S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  103861.             LEFT OUTER JOIN SoMag M ON M.Sifra_OE='+ cast(@Sifra_OE_ZaCeni as varchar(5)) +' AND S.Sifra_Art=M.Sifra_Art
  103862.             WHERE S.Sifra_Oe='+ cast(@Sifra_Oe as varchar(5)) +' AND S.Sifra_Nar='+ cast(@Sifra_Nar as varchar(5)) +
  103863.             ' AND S.Broj_Nar='+ cast(@Broj_Nar as varchar(10)) +' AND A.Lokacija IN ('+ @Lokacija +') AND M.Sostojba>0 GROUP BY S.Sifra_Art'
  103864.  
  103865.             UPDATE #TmpZalPoLot SET Sostojba=M.Sostojba FROM SoMag M WHERE M.Sifra_OE=@Sifra_OE AND #TmpZalPoLot.Sifra_Art=M.Sifra_Art AND #TmpZalPoLot.LotBr=M.LotBr
  103866.         End
  103867.     End
  103868.  
  103869.     IF @Lokacija IS NULL 
  103870.     BEGIN
  103871.     If @podred = 'P'
  103872.         SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod   
  103873.         FROM StaNarac N
  103874.         INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103875.         LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103876.         LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103877.         WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar 
  103878.         ORDER BY A.Sifra_podg
  103879.     ELSE If @podred = 'L'
  103880.         SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod   
  103881.         FROM StaNarac N
  103882.         INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103883.         LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103884.         LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103885.         WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar 
  103886.         ORDER BY A.Lokacija
  103887.     ELSE
  103888.         SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod   
  103889.         FROM StaNarac N
  103890.         INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103891.         LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE=@Sifra_OE_ZaCeni
  103892.         LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103893.         WHERE N.Sifra_OE= @Sifra_OE And N.Sifra_Nar=@Sifra_Nar And N.Broj_Nar=@Broj_Nar 
  103894.         ORDER BY N.RBR
  103895.     END
  103896.     ELSE
  103897.         BEGIN
  103898.         SET @SSQL='SELECT N.RBr, N.Sifra_Art, N.Kolic, N.Paketi, N.DokCena, N.Uces, N.Posn, N.PTar, A.ImeArt, A.EdMera, A.ImaKomerc, S.Cena, S.DanCena, M.LotBr, M.Sostojba,N.UcesOsn,N.UcesKol,N.UcesDod 
  103899.         FROM StaNarac N
  103900.         INNER JOIN KatArt  A  ON N.Sifra_Art = A.Sifra_Art
  103901.         LEFT OUTER JOIN SoArt S ON N.Sifra_art = S.Sifra_Art AND S.Sifra_OE='+ cast(@Sifra_OE_ZaCeni as varchar(10)) +' 
  103902.         LEFT OUTER JOIN #TmpZalPoLot M ON N.Sifra_Art=M.Sifra_Art
  103903.         WHERE N.Sifra_OE='+ cast(@Sifra_OE as varchar(10)) +' And N.Sifra_Nar='+ cast(@Sifra_Nar as varchar(10)) +
  103904.         ' And N.Broj_Nar='+ cast(@Broj_Nar as varchar(10)) +' And A.Lokacija IN ('+@Lokacija+') '
  103905.         IF @podred = 'P' 
  103906.                 SET @SSQL = @SSQL + 'ORDER BY A.Sifra_Podg'
  103907.         ELSE IF @podred = 'P' 
  103908.                 SET @SSQL = @SSQL + 'ORDER BY A.Lokacija'
  103909.         ELSE     
  103910.                 SET @SSQL = @SSQL + 'ORDER BY N.Rbr'
  103911.  
  103912.         EXEC (@SSQL)
  103913.         END
  103914.  
  103915.     RETURN @@Error
  103916.  
  103917.  
  103918.  
  103919.  
  103920. Go
  103921. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistanaracreal]'))
  103922. drop procedure [dbo].[sp_podignistanaracreal]
  103923.  
  103924. Go
  103925. CREATE PROCEDURE sp_PodigniStaNaracReal
  103926.     @NarId        int,
  103927.     @Sifra_Art    varchar(20),
  103928.     @Kolic        decimal(18,6) Output,
  103929.     @Kolic_BO    decimal(18,6) Output,
  103930.     @Sifra_Nar    smallint Output,
  103931.     @DokrID    int Output,
  103932.     @Datum_Real    smalldatetime Output,
  103933.     @Opis_Real    nvarchar(50) Output,
  103934.     @Ozn_Real    char(1) Output
  103935. AS
  103936.     Select @Kolic=Kolic, @Kolic_BO=Kolic_BO, @Sifra_Nar=Sifra_Nar, @DokrID=DokrID, @Datum_Real=Datum_Real, @Opis_Real=Opis_Real, @Ozn_Real=Ozn_Real
  103937.     From StaNaracReal 
  103938.     Where NarId=@NarID And Sifra_Art=@Sifra_Art
  103939.     Return @@ERROR
  103940.  
  103941.  
  103942. Go
  103943. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistaodobr]'))
  103944. drop procedure [dbo].[sp_podignistaodobr]
  103945.  
  103946. Go
  103947.  
  103948. CREATE           PROCEDURE sp_PodigniStaOdobr
  103949.     @AnID_Odob int
  103950. AS
  103951. SELECT S.*, F.Sifra_Oe, F.Sifra_Dok, F.Broj_Dok, F.Datum_Dok, F.Rok, F.Plateno_Dolzi
  103952. FROM StaOdobr S INNER JOIN AnFinDok F ON S.AnID_Fak=F.AnID
  103953. WHERE S.AnID_Odob= @AnID_Odob
  103954.  
  103955.  
  103956.  
  103957. Go
  103958. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistaprodmest]'))
  103959. drop procedure [dbo].[sp_podignistaprodmest]
  103960.  
  103961. Go
  103962.  
  103963.  
  103964.  
  103965.  
  103966.  
  103967. CREATE             PROCEDURE sp_PodigniStaProdMest
  103968.     @Broj_Dok Int
  103969. AS
  103970.     SELECT S.Broj_Dok, S.Sifra_Mest, S.Datum_Dok, S.Opis OpisOdStaPrMest, S.Sifra_Kup, S.Sifra_Obj, S.VlIzlPros, S.Iznos,
  103971.          PM.Opis OpisOdPrMest, KUP.ImeKup, KO.ImeObj, S.Sifra_Ser, S.Identif_Br, K.ImeKup ImeSer,
  103972.                  PM.Proizv, PR.ImeKup ImeProizv, PM.Godina, PM.Dimenzii, PM.Led, PM.Zabel, Kup.Adresa, PR.Adresa PrAdresa, K.Adresa SerAdresa,
  103973.                  PM.Litri, PM.BrMotor, PM.BarKod, PM.Sif_TipProdM, TPM.ImeTipProdM, PM.Opis2
  103974.     FROM StaProdMest S
  103975.     INNER JOIN ProdMest PM On PM.Sifra_Mest = S.Sifra_Mest
  103976.     LEFT OUTER JOIN Komint KUP On KUP.Sifra_Kup = S.Sifra_Kup
  103977.         LEFT OUTER JOIN Komint PR On PR.Sifra_Kup = PM.Proizv
  103978.     LEFT OUTER JOIN Komint K On K.Sifra_Kup =S.Sifra_Ser
  103979.     LEFT OUTER JOIN KObjekti KO On KO.Sifra_Kup = S.Sifra_Kup and KO.Sifra_Obj = S.Sifra_Obj
  103980.         LEFT OUTER JOIN TipProdMesto TPM On TPM.Sif_TipProdM = PM.Sif_TipProdM
  103981.     WHERE  Broj_Dok=@Broj_Dok
  103982.  RETURN @@Error
  103983.  
  103984.  
  103985.  
  103986.  
  103987.  
  103988.  
  103989. Go
  103990. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistarabnal]'))
  103991. drop procedure [dbo].[sp_podignistarabnal]
  103992.  
  103993. Go
  103994.  
  103995.  
  103996.  
  103997.  
  103998. CREATE    PROCEDURE sp_PodigniStaRabNal
  103999.      @RabNalID integer
  104000. AS
  104001.     SELECT S.RabNalID, S.Sifra_Art, K.ImeArt, K.EdMera, S.Kolic, S.Cena,
  104002.         KontrSer, Kolic_Repro, Proizv_EdVreme, Potros_EdVreme, Sir_Hilz, Opis_StaRab, Proc_Proiz_Od_Repro, 
  104003.         Proc_Skart_Plan, Kolic_Energ_Aktuel, Kolic_Energ_Alt_Aktuel, Kolic_Skart_Aktuel,Ozn_Dekl
  104004.     FROM StaRabNal S
  104005.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  104006.     WHERE RabNalID = @RabNalID
  104007.     ORDER BY S.SRNID
  104008.  
  104009.  
  104010.  
  104011.  
  104012. Go
  104013. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistarabnalboivel]'))
  104014. drop procedure [dbo].[sp_podignistarabnalboivel]
  104015.  
  104016. Go
  104017.  
  104018.  
  104019.  
  104020.  
  104021. CREATE     PROCEDURE sp_PodigniStaRabNalBoiVel
  104022.     @RabNalID    int
  104023. AS
  104024. SELECT S.RabNalID, S.SRNID, S.Sifra_Boja, S.Sifra_Velic, S.Kolicina, B.ImeBoja SkrImeBoja, V.ImeVelic SkrImeVelic, RS.Sifra_Art, RS.Cena, RS.Opis_StaRab, A.ImeArt, A.EdMera, A.Sifra_Tar, T.ProcOsn
  104025. FROM StaRabNalVelicBoja S
  104026. INNER JOIN StaRabNal RS ON S.SRNID=RS.SRNID
  104027. INNER JOIN KatArt A ON A.Sifra_Art=RS.Sifra_Art
  104028. INNER JOIN Tarifi T ON T.Sifra_Tar=A.Sifra_Tar
  104029. LEFT OUTER JOIN Boja B ON S.Sifra_Boja=B.Sifra_Boja
  104030. LEFT OUTER JOIN Velicina V ON S.Sifra_Velic=V.Sifra_Velic
  104031. WHERE S.RabNalID = @RabNalID 
  104032.  
  104033.  
  104034.  
  104035.  
  104036.  
  104037. Go
  104038. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistarabnalvelicboja]'))
  104039. drop procedure [dbo].[sp_podignistarabnalvelicboja]
  104040.  
  104041. Go
  104042.  
  104043.  
  104044.  
  104045. CREATE    PROCEDURE sp_PodigniStaRabNalVelicBoja
  104046.     @RabNalID integer
  104047. AS
  104048.     SELECT S.RabNalID, S.Sifra_Art, K.ImeArt, K.EdMera, Sum(VB.Kolicina) Kolicina, S.Cena,VB.Sifra_Boja,
  104049.         KontrSer, Kolic_Repro, Proizv_EdVreme, Potros_EdVreme, Sir_Hilz, Opis_StaRab, Proc_Proiz_Od_Repro, 
  104050.         Proc_Skart_Plan, Kolic_Energ_Aktuel, Kolic_Energ_Alt_Aktuel, Kolic_Skart_Aktuel 
  104051.     FROM StaRabNal S
  104052.     INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art
  104053.     inner join StaRabNalVelicBoja VB on VB.RabNalID=S.RabNalID
  104054.     WHERE S.RabNalID = @RabNalID
  104055.     GROUP BY S.RabNalID, S.Sifra_Art, K.ImeArt, K.EdMera,S.Cena,VB.Sifra_Boja, KontrSer, Kolic_Repro, Proizv_EdVreme, Potros_EdVreme, Sir_Hilz, Opis_StaRab, Proc_Proiz_Od_Repro, 
  104056.         Proc_Skart_Plan, Kolic_Energ_Aktuel, Kolic_Energ_Alt_Aktuel, Kolic_Skart_Aktuel,  S.SRNID 
  104057.     ORDER BY S.SRNID
  104058.  
  104059.  
  104060.  
  104061.  
  104062.  
  104063. Go
  104064. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistarabnkarakt]'))
  104065. drop procedure [dbo].[sp_podignistarabnkarakt]
  104066.  
  104067. Go
  104068.  
  104069.  
  104070. CREATE  PROCEDURE sp_PodigniStaRabNKarakt
  104071.  
  104072.     @RabNalId int
  104073.  
  104074. AS
  104075.  
  104076.     SELECT S.*, K.ImeArt, Kar.SkrOzn
  104077.         FROM StaRabN_Karakt S 
  104078.         INNER JOIN KatArt K ON S.Sifra_Art = K.Sifra_Art 
  104079.     left outer join Karakterist Kar on S.Sifra_Karakt = Kar.Sifra_Karakt
  104080.         WHERE S.RabNalID = @RabNalId
  104081.  
  104082.  
  104083.  
  104084.  
  104085. Go
  104086. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistavosnsred]'))
  104087. drop procedure [dbo].[sp_podignistavosnsred]
  104088.  
  104089. Go
  104090.  
  104091.  
  104092.  
  104093.  
  104094. CREATE     PROCEDURE sp_PodigniStavOSnSred
  104095.     @DokOID        int
  104096. AS
  104097.     Select S.DokOID, S.StaOID, S.Inv_Broj, S.Datum_Dok, S.Tip_StaOsn, S.VlIzl, S.Sifra_MikLok, S.RedTrans, S.Osn_Amor, S.Otpis_Pret, S.Sifra_MikLok_Od, 
  104098.     S.Sifra_Rab, S.Sifra_RabOd, O.DatNab, O.Ime, P.Osn_Amor PocOsnAmor, P.Otpis_Pret PocOtpis, O.DatAkt,
  104099.         S.Sifra_Div, S.Sifra_Div_Od, S.Sifra_TrosM, S.Sifra_TrosM_Od, S.Sifra_TrosV, S.Sifra_TrosV_Od
  104100.     From StavOsnSred S INNER JOIN OsnSred O ON S.Inv_broj=O.Inv_Broj 
  104101.     Left Outer Join PocSostOsn P ON P.Inv_Broj = S.Inv_Broj AND P.Godina = S.Delov_God
  104102.     Where S.DokOID=@DokOID ORDER BY S.StaOID
  104103.     Return @@ERROR
  104104.  
  104105.  
  104106.  
  104107.  
  104108. Go
  104109. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistavr_dokridart]'))
  104110. drop procedure [dbo].[sp_podignistavr_dokridart]
  104111.  
  104112. Go
  104113.  
  104114.  
  104115.  
  104116.  
  104117.  
  104118. CREATE    PROCEDURE sp_PodigniStavr_DokrIDArt
  104119.     @DokrID    int,
  104120.     @Sifra_Art    varchar(20)
  104121. AS
  104122.     Select * From Stavr Where DokrID=@DokrID AND Sifra_Art=@Sifra_Art  
  104123.  
  104124.  
  104125.  
  104126.  
  104127. Go
  104128. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignistavrzaetikrokovi]'))
  104129. drop procedure [dbo].[sp_podignistavrzaetikrokovi]
  104130.  
  104131. Go
  104132.  
  104133.  
  104134. CREATE     PROCEDURE sp_PodigniStavrZaEtikRokovi
  104135.     @Sifra_Oe    smallint,
  104136.     @Sifra_Dok    smallint,
  104137.     @Broj_Dok    int,
  104138.     @Sifra_ArtOd varchar(20) = NULL,
  104139.     @Sifra_ArtDo varchar(20) = NULL
  104140. AS
  104141. Declare @SSQL varchar(3000)
  104142.  
  104143. SET @SSQL = 'SELECT S.Sifra_Art, S.Kolic, 1 AS Paketi, K.ImeArt, K.RokTraDen, K.DeklArt, K.EdMera, K.ImaKomerc, K.Nom,
  104144.     ''L''+Substring(S.Sifra_Art,1,6)+CASE Substring(S.KontrSer,1,3) WHEN ''KK>'' THEN Substring(S.KontrSer,4,22) ELSE Substring(S.KontrSer,12,2)+Substring(S.KontrSer,7,2)+Substring(S.KontrSer,4,2)+Substring(S.KontrSer,14,12) END SpecOzn,
  104145.     CASE Substring(S.KontrSer,1,3) WHEN ''KK>'' THEN Substring(S.KontrSer,4,22) ELSE Substring(S.KontrSer,12,2)+Substring(S.KontrSer,7,2)+Substring(S.KontrSer,4,2)+Substring(S.KontrSer,14,12) END LotBr  
  104146.     FROM Stavr S Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  104147.     WHERE S.Sifra_Oe='+cast(@Sifra_Oe as varchar(5))+' And S.Sifra_Dok='+Cast(@Sifra_Dok as varchar(5))+
  104148.     ' And S.Broj_Dok='+cast(@Broj_Dok as varchar(8))+ ' AND S.KontrSer IS NOT NULL '
  104149. IF @Sifra_ArtOd IS NOT NULL
  104150.     SET @SSQL = @SSQL +' AND S.Sifra_Art >='''+@Sifra_ArtOd+''' ' 
  104151. IF @Sifra_ArtDo IS NOT NULL
  104152.     SET @SSQL = @SSQL +' AND S.Sifra_Art <='''+@Sifra_ArtDo+''' ' 
  104153. SET @SSQL = @SSQL +' ORDER BY S.DokID'
  104154. EXEC (@SSQL)
  104155.  
  104156.  
  104157.  
  104158.  
  104159. Go
  104160. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitabela]'))
  104161. drop procedure [dbo].[sp_podignitabela]
  104162.  
  104163. Go
  104164. CREATE                PROCEDURE sp_PodigniTabela
  104165.    @Tabela Varchar(20)
  104166. AS
  104167.     Declare @SSQL as varchar(2000)
  104168.     If @Tabela Is Not Null
  104169.         Set @SSQL = ' SELECT * FROM ' + @Tabela
  104170.     Exec(@SSQL)
  104171.     IF @@ROWCOUNT = 0
  104172.         RETURN 77000
  104173.     ELSE
  104174.         RETURN 0
  104175.  
  104176.  
  104177. Go
  104178. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitarifa]'))
  104179. drop procedure [dbo].[sp_podignitarifa]
  104180.  
  104181. Go
  104182.  
  104183. CREATE PROCEDURE sp_PodigniTarifa
  104184.     @Sifra_Tar char(3)
  104185. AS
  104186.     SELECT * FROM Tarifi 
  104187.     WHERE Sifra_Tar = @Sifra_Tar
  104188.  
  104189.  
  104190.  
  104191. Go
  104192. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitekstsmetki]'))
  104193. drop procedure [dbo].[sp_podignitekstsmetki]
  104194.  
  104195. Go
  104196.  
  104197.  
  104198. CREATE   PROCEDURE sp_PodigniTekstSmetki
  104199.  
  104200.     @Kade        varchar(10)
  104201.  AS
  104202.  
  104203.     Select Kade, Rbr, Tekst 
  104204.     From TekstSmetki 
  104205.     Where Kade=@Kade
  104206.     Order By Rbr
  104207.  
  104208.  
  104209.  
  104210.  
  104211. Go
  104212. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitipdok]'))
  104213. drop procedure [dbo].[sp_podignitipdok]
  104214.  
  104215. Go
  104216. CREATE     PROCEDURE sp_PodigniTipDok
  104217. AS
  104218.     SELECT Sifra_Dok, ImeDok, Sifra_Za, Dev, Vl_Izl, AnalKupDob FROM TipDok 
  104219.            order by sifra_dok
  104220.  
  104221.  
  104222. Go
  104223. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitipkarakt]'))
  104224. drop procedure [dbo].[sp_podignitipkarakt]
  104225.  
  104226. Go
  104227. CREATE PROCEDURE sp_PodigniTipKarakt
  104228.     @Sifra_7    SMALLINT
  104229. AS
  104230.     SELECT * FROM TipKarakt
  104231.     WHERE Sifra_7=@Sifra_7
  104232.  
  104233.  
  104234.  
  104235. Go
  104236. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitippercenvaziza]'))
  104237. drop procedure [dbo].[sp_podignitippercenvaziza]
  104238.  
  104239. Go
  104240. CREATE PROCEDURE sp_PodigniTipPerCenVaziZa
  104241.     @Sifra_TipC Smallint
  104242. AS
  104243.     SELECT T.*, O.ImeOrg, G.Ime_GrOrg 
  104244.     FROM TipPerCenVaziZa T 
  104245.     INNER JOIN Orged O On O.Sifra_Oe = T.Sifra_Oe
  104246.     LEFT OUTER JOIN GrOrg G ON T.Sif_GrOrg=G.Sif_GrOrg
  104247.     Where Sifra_TipC=@Sifra_TipC
  104248. RETURN @@ERROR
  104249.  
  104250.  
  104251. Go
  104252. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmaneks]'))
  104253. drop procedure [dbo].[sp_podignitmaneks]
  104254.  
  104255. Go
  104256.  
  104257.  
  104258.  
  104259. CREATE      PROCEDURE sp_PodigniTmAneks
  104260.     @Sifra_Oe    smallint,
  104261.     @BrojBaranje    int,
  104262.     @BrojPrilog    int,
  104263.     @Sifra_Aneks    int
  104264. AS
  104265.     SELECT * FROM tmAneks 
  104266.     WHERE     Sifra_Oe = @Sifra_Oe AND BrojBaranje = @BrojBaranje AND BrojPrilog = @BrojPrilog AND Sifra_Aneks = @Sifra_Aneks
  104267. RETURN @@ERROR
  104268.  
  104269.  
  104270.  
  104271. Go
  104272. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmbaranje]'))
  104273. drop procedure [dbo].[sp_podignitmbaranje]
  104274.  
  104275. Go
  104276.  
  104277. CREATE   PROCEDURE sp_PodigniTmBaranje
  104278.     @Sifra_OE         smallint,
  104279.     @BrojBaranje         int
  104280. AS
  104281.     SELECT * from tmBaranje where Sifra_Oe=@Sifra_Oe and BrojBaranje=@BrojBaranje
  104282. RETURN @@ERROR
  104283.  
  104284.  
  104285.  
  104286. Go
  104287. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmbaranje_datum]'))
  104288. drop procedure [dbo].[sp_podignitmbaranje_datum]
  104289.  
  104290. Go
  104291. CREATE PROCEDURE sp_PodigniTmBaranje_Datum
  104292.     @Sifra_Oe    smallint,
  104293.     @DatumBar    smalldatetime
  104294. AS
  104295.     Select * From tmBaranje 
  104296.     Where Sifra_Oe=@Sifra_Oe And DatumBar=@DatumBar
  104297.  
  104298.  
  104299. Go
  104300. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmpdistitems]'))
  104301. drop procedure [dbo].[sp_podignitmpdistitems]
  104302.  
  104303. Go
  104304.  
  104305. CREATE PROCEDURE sp_PodigniTmpDistItems
  104306. AS
  104307.     SELECT DISTINCT Cst_Code As ISifra_Kup, Doc_No As BrDok, Agent as Sifra_OE
  104308.     FROM TmpItems 
  104309.  
  104310.  
  104311.  
  104312. Go
  104313. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmpitems]'))
  104314. drop procedure [dbo].[sp_podignitmpitems]
  104315.  
  104316. Go
  104317.  
  104318. CREATE PROCEDURE sp_PodigniTmpItems
  104319.     @Doc_no    varchar(30),
  104320.     @Agent        varchar(4),
  104321.     @Poz        char(1) = 'D'
  104322. AS
  104323.     Declare @SSQL varchar(2000)
  104324.     Set @SSQL = 'SELECT I.Cst_Code As ISifra_Kup, I.Item_Code As Sifra_Art, K.Sifra_Tar, T.ProcOsn, I.Quantity As Kolic, I.Value as Vred, 
  104325.     I.Discount as Popust, I.Doc_No As BrDok, I.Agent as Sifra_OE, KK.Sifra_Kup as Sifra_Kup, I.Trans_date as Datum_dok
  104326.     FROM TmpItems I
  104327.     LEFT OUTER JOIN KatArt K ON K.Sifra_Art = I.Item_Code 
  104328.     LEFT OUTER JOIN Tarifi T ON T.Sifra_tar = K.Sifra_Tar
  104329.     LEFT OUTER JOIN Komint KK ON I.Cst_Code = KK.Sifra_Kup
  104330.     WHERE I.Doc_No = ''' + @Doc_no + ''' AND I.Agent = ''' + @Agent + ''' AND '
  104331.     If @Poz = 'D'
  104332.         Set @SSQL = @SSQL + 'I.Quantity > 0 '
  104333.     Else
  104334.         Set @SSQL = @SSQL + 'I.Quantity < 0 '
  104335. EXEC(@SSQL)
  104336.  
  104337.  
  104338.  
  104339. Go
  104340. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmsim]'))
  104341. drop procedure [dbo].[sp_podignitmsim]
  104342.  
  104343. Go
  104344. CREATE   PROCEDURE sp_PodigniTmSim
  104345.     @Sifra_OE         smallint,
  104346.     @BrojBaranje         int,
  104347.     @BrojPrilog         int
  104348. AS
  104349.     SELECT * from tmSim where Sifra_Oe=@Sifra_Oe and BrojBaranje=@BrojBaranje and BrojPrilog=@BrojPrilog
  104350. RETURN @@ERROR
  104351.  
  104352.  
  104353. Go
  104354. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmsim_opcusl]'))
  104355. drop procedure [dbo].[sp_podignitmsim_opcusl]
  104356.  
  104357. Go
  104358. CREATE   PROCEDURE sp_PodigniTmSim_OpcUsl
  104359.     @Sifra_OE     smallint,
  104360.     @BrojBaranje    int,
  104361.     @BrojPrilog    int
  104362. AS
  104363.     Select * From TmSim_OpcUsl 
  104364.     Where Sifra_OE=@Sifra_Oe And BrojBaranje=@BrojBaranje And BrojPrilog=@BrojPrilog
  104365.     RETURN @@ERROR
  104366.  
  104367.  
  104368. Go
  104369. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmtarifmodel]'))
  104370. drop procedure [dbo].[sp_podignitmtarifmodel]
  104371.  
  104372. Go
  104373. CREATE  PROCEDURE sp_PodigniTmTarifModel
  104374.     @Sifra_TarifModel    smallint
  104375. AS
  104376.     SELECT * from tmTarifModel where Sifra_TarifModel=@Sifra_TarifModel
  104377. RETURN @@ERROR
  104378.  
  104379.  
  104380.  
  104381. Go
  104382. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmtel]'))
  104383. drop procedure [dbo].[sp_podignitmtel]
  104384.  
  104385. Go
  104386. CREATE  PROCEDURE sp_PodigniTmTel
  104387.     @Sifra_Tel    int
  104388. AS
  104389.     Select * From TmTel 
  104390.     Where Sifra_Tel=@Sifra_Tel
  104391.  
  104392.  
  104393.  
  104394. Go
  104395. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmuslugi]'))
  104396. drop procedure [dbo].[sp_podignitmuslugi]
  104397.  
  104398. Go
  104399. CREATE PROCEDURE sp_PodigniTmUslugi
  104400.     @Sifra_TmUsl    smallint
  104401. AS
  104402.     Select * From TmUslugi 
  104403.     Where Sifra_TmUsl=@Sifra_TmUsl
  104404.  
  104405.  
  104406. Go
  104407. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitmuslugi_site]'))
  104408. drop procedure [dbo].[sp_podignitmuslugi_site]
  104409.  
  104410. Go
  104411. create PROCEDURE sp_podignitmuslugi_site
  104412. AS
  104413.     select * from TmUslugi
  104414.     order by Sifra_TmUsl ASC
  104415.  
  104416.  
  104417.  
  104418. Go
  104419. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitransnal]'))
  104420. drop procedure [dbo].[sp_podignitransnal]
  104421.  
  104422. Go
  104423. CREATE PROCEDURE sp_PodigniTransNal
  104424.     @Sifra_Oe    smallint, 
  104425.     @Broj_Trans    int
  104426. AS
  104427.     Select Sifra_Oe, Broj_Trans, Sifra_Prev, Vozilo, Vozac, Krajna_Dest, Oddalecenost, Br_Istov_Mesta, Datum_TransNal, Sifra_Vid_Voz
  104428.     From TransNal     Where Sifra_Oe=@Sifra_Oe and Broj_Trans=@Broj_Trans
  104429.  
  104430.  
  104431. Go
  104432. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitransnalstav]'))
  104433. drop procedure [dbo].[sp_podignitransnalstav]
  104434.  
  104435. Go
  104436. CREATE PROCEDURE sp_PodigniTransNalStav
  104437.     @Sifra_Oe    smallint, 
  104438.     @Broj_Trans    int
  104439. AS
  104440.     Select S.Sifra_Oe, S.Broj_Trans, S.DokrID, S.Opis, D.Sifra_OE OEDok, D.Sifra_Dok, D.Broj_Dok, 
  104441.     D.Datum_Dok, D.Toc200, D.Sifra_Kup, K.ImeKup
  104442.     From TransNalStav S INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  104443.     LEFT OUTER JOIN Komint K ON D.Sifra_Kup = K.Sifra_Kup
  104444.     Where S.Sifra_Oe=@Sifra_Oe And S.Broj_Trans=@Broj_Trans
  104445.  
  104446.  
  104447. Go
  104448. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitrospatn]'))
  104449. drop procedure [dbo].[sp_podignitrospatn]
  104450.  
  104451. Go
  104452.  
  104453.  
  104454.  
  104455. CREATE    PROCEDURE [dbo].[sp_PodigniTrosPatn]
  104456.     @Sifra_Oe     smallint,
  104457.     @Datum_Od    smalldatetime,
  104458.     @Datum_Do    smalldatetime,
  104459.     @Sif_Tros    smallint= null
  104460. AS
  104461. CREATE TABLE #Tmp (
  104462.     IdTrosPatn int IDENTITY (1, 1) NOT NULL ,
  104463.     Sifra_Oe smallint,
  104464.     Datum_Dok smalldatetime,
  104465.     Opis varchar(250),
  104466.     Poc_Km char(7),
  104467.     Kr_Km char(7),
  104468.     Iznos decimal(18, 6) NULL,
  104469.     Sif_Tros nvarchar(2),
  104470.     ImeOrg varchar(40) 
  104471. ) ON [PRIMARY]
  104472.  
  104473.  
  104474.     
  104475.     INSERT INTO #Tmp (Sifra_Oe, Datum_Dok, Opis, Poc_Km, Kr_Km,Iznos,Sif_Tros,ImeOrg)  
  104476.     SELECT T.Sifra_Oe,T.Datum_Dok,T.Opis,T.Poc_Km,T.Kr_Km,T.Iznos,T.Sif_Tros, O.ImeOrg 
  104477.     From TrosPatn T
  104478.     INNER Join Orged O On O.Sifra_oe = T.Sifra_Oe
  104479.     WHERE T.Sifra_Oe = @Sifra_Oe and T.Datum_Dok>=@Datum_Od and T.Datum_Dok<=@Datum_Do 
  104480.     ORDER By Datum_Dok, Kr_Km
  104481.  
  104482.     DECLARE @PocKmPretDen as int
  104483.     SET @PocKmPretDen = 0
  104484.     SELECT TOP 1 @PocKmPretDen = Kr_Km  From TrosPatn T 
  104485.     Where T.Sifra_Oe = @Sifra_Oe and T.Datum_Dok<@Datum_Od AND ISNUMERIC(kR_kM) = 1 And Kr_Km <> '.'
  104486.     ORDER BY Datum_Dok Desc, Kr_Km desc
  104487.  
  104488.     declare @IdTrosPatn as int
  104489.     declare @Kr_Km as int 
  104490.     SET @IdTrosPatn = 0
  104491.     SET @Kr_Km = 0
  104492.         
  104493.     Declare PocetniKm Cursor Fast_Forward For Select T.IdTrosPatn,T.Kr_Km  From #Tmp T
  104494.     Where T.Kr_Km is not null and T.Kr_Km <> 0
  104495.     Open PocetniKm
  104496.     Fetch Next From PocetniKm Into @IdTrosPatn, @Kr_Km
  104497.     While @@Fetch_Status = 0
  104498.         begin
  104499.         If @IDTrosPatn = 1 
  104500.             begin
  104501.             update #Tmp set Poc_Km = @PocKmPretDen where #Tmp.IdTrosPatn = @IDTrosPatn and (#Tmp.Poc_Km = '' or #Tmp.Poc_Km is null)
  104502.             update #Tmp set Poc_Km = @Kr_Km from #Tmp where #Tmp.IdTrosPatn = @IDTrosPatn + 1 and (#Tmp.Poc_Km = '' or #Tmp.Poc_Km is null)
  104503.             end
  104504.         else
  104505.             update #Tmp set Poc_Km = @Kr_Km from #Tmp where #Tmp.IdTrosPatn = @IDTrosPatn + 1 and (#Tmp.Poc_Km = '' or #Tmp.Poc_Km is null)
  104506.         Fetch Next From PocetniKm Into @IdTrosPatn, @Kr_Km
  104507.         
  104508.     end
  104509.     Close PocetniKm
  104510.     Deallocate PocetniKm
  104511.  
  104512.     --za pred 20.09.2010 se predlagaat krajnite km
  104513.     DECLARE @KrKmPretDen as int
  104514.     SET @KrKmPretDen = 0
  104515.     SELECT TOP 1 @KrKmPretDen = Poc_Km From TrosPatn T Where T.Sifra_Oe = @Sifra_Oe and T.Datum_Dok>@Datum_Od AND ISNUMERIC(pOC_kM) = 1
  104516.     ORDER BY Datum_Dok asc, Poc_Km Asc
  104517.  
  104518.     print @KrKmPretDen
  104519.     declare @Poc_Km as int 
  104520.     SET @IdTrosPatn = 0
  104521.     SET @Poc_Km = 0
  104522.         
  104523.     Declare KrajniKm Cursor Fast_Forward For Select T.IdTrosPatn,T.Poc_Km From #Tmp T
  104524.     Where T.Poc_Km is not null and T.Poc_Km <> 0
  104525.     Open KrajniKm
  104526.     Fetch Next From KrajniKm Into @IdTrosPatn, @Poc_Km
  104527.     While @@Fetch_Status = 0
  104528.         begin
  104529.         If @IDTrosPatn = 1 
  104530.             begin
  104531.             update #Tmp set Kr_Km = @KrKmPretDen where #Tmp.IdTrosPatn = @IDTrosPatn and (#Tmp.Kr_Km = '' or #Tmp.Kr_Km is null)
  104532.             update #Tmp set Kr_Km = @Poc_Km from #Tmp where #Tmp.IdTrosPatn = @IDTrosPatn - 1 and (#Tmp.Kr_Km = '' or #Tmp.Kr_Km is null)
  104533.             end
  104534.         else
  104535.             update #Tmp set Kr_Km = @Poc_Km from #Tmp where #Tmp.IdTrosPatn = @IDTrosPatn - 1 and (#Tmp.Kr_Km = '' or #Tmp.Kr_Km is null)
  104536.         Fetch Next From KrajniKm Into @IdTrosPatn, @Poc_Km
  104537.         
  104538.     end
  104539.     Close KrajniKm
  104540.     Deallocate KrajniKm
  104541.      
  104542.     if @Sif_tros is null
  104543.         select * from #Tmp
  104544.     else
  104545.         select * from #Tmp where Sif_tros=@Sif_Tros
  104546.  
  104547.     Return @@ERROR
  104548. Go
  104549. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignitrospatn_grupaoe]'))
  104550. drop procedure [dbo].[sp_podignitrospatn_grupaoe]
  104551.  
  104552. Go
  104553.  
  104554.  
  104555.  
  104556. CREATE    PROCEDURE sp_PodigniTrosPatn_GrupaOe
  104557.     @KoiOe     varchar(10),
  104558.     @Datum_Od    smalldatetime,
  104559.     @Datum_Do    smalldatetime,
  104560.     @Sif_Tros    smallint= null
  104561. AS
  104562.  
  104563.     CREATE TABLE #TmpGr (
  104564.         IdTrosPatn int ,
  104565.         Sifra_Oe smallint,
  104566.         Datum_Dok smalldatetime,
  104567.         Opis varchar(250),
  104568.         Poc_Km char(7),
  104569.         Kr_Km char(7),
  104570.         Iznos decimal(18, 6) NULL,
  104571.         Sif_Tros nvarchar(2),
  104572.         ImeOrg varchar(40) 
  104573.     ) ON [PRIMARY]
  104574.     
  104575.     Declare @Sifra_Oe as smallint
  104576.     
  104577.     Declare OE Cursor Fast_Forward For Select Sifra_Oe From SGrOrg Where Sif_GrOrg = @KoiOe
  104578.     Open OE
  104579.     Fetch Next From OE Into @Sifra_Oe
  104580.     While @@Fetch_Status = 0
  104581.     Begin
  104582.         Insert Into #TmpGr Exec sp_PodigniTrosPatn @Sifra_Oe, @Datum_Od, @Datum_Do, @Sif_Tros
  104583.         
  104584.         Fetch Next From OE Into @Sifra_Oe
  104585.     End
  104586.     Close OE
  104587.     Deallocate OE
  104588.  
  104589.     Select * From #TmpGr
  104590.  
  104591.     Return @@ERROR
  104592. Go
  104593. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniulinreo]'))
  104594. drop procedure [dbo].[sp_podigniulinreo]
  104595.  
  104596. Go
  104597.  
  104598.  
  104599. create   procedure sp_PodigniUliNReo
  104600.     @Sifra_NReo   smallint
  104601. AS
  104602.     SELECT S.*,  SU.ImeUli
  104603.     FROM  UliNReo S
  104604.     INNER JOIN Ulici  SU ON S.Sifra_Uli = SU.Sifra_Uli
  104605.     WHERE  S.Sifra_NReo = @Sifra_NReo
  104606.   IF @@ROWCOUNT = 0
  104607.       RETURN 77000
  104608.    ELSE
  104609.       RETURN 0
  104610.  
  104611.  
  104612.  
  104613.  
  104614. Go
  104615. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniusl_komerc_opsti]'))
  104616. drop procedure [dbo].[sp_podigniusl_komerc_opsti]
  104617.  
  104618. Go
  104619. CREATE PROCEDURE sp_PodigniUsl_Komerc_Opsti
  104620.     @VlIzl        char(1), 
  104621.     @Tip_Sif_Kup    char(1), 
  104622.     @Sif_Kup_Gen    varchar(11),
  104623.     @Tip_Sif_Art    char(1),
  104624.     @Sif_Art_Gen    varchar(20)
  104625. AS
  104626.     Select VlIzl, Tip_Sif_Kup, Sif_Kup_Gen, Tip_Sif_Art, Sif_Art_Gen, Rok_Dosp, Uces, Cena 
  104627.     From  Usl_Komerc_Opsti
  104628.     Where VlIzl=@VlIzl And Tip_Sif_Kup=@Tip_Sif_Kup And Sif_Kup_Gen=@Sif_Kup_Gen And Tip_Sif_Art=@Tip_Sif_Art And Sif_Art_Gen=@Sif_Art_Gen
  104629.  
  104630.  
  104631. Go
  104632. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniusl_komerc_per]'))
  104633. drop procedure [dbo].[sp_podigniusl_komerc_per]
  104634.  
  104635. Go
  104636.  
  104637. CREATE            PROCEDURE sp_PodigniUsl_Komerc_Per
  104638.     @VlIzl            char(1)='I', 
  104639.     @Tip_Sif_Kup        char(1)='', 
  104640.     @Sif_Kup_Gen        varchar(11)='',
  104641.     @Tip_Sif_Art        char(1)='A',
  104642.     @Datum_Od        smalldatetime,
  104643.     @Datum_Do        smalldatetime=Null,        --ova da se koristi za periodicen cenovnik
  104644.     @Sif_GrOrg_ZaZal    char(6)=Null,
  104645.     @ZemiOdPrethCen    char(1)=Null,
  104646.     @DajSamoArt        char(1)='N',             --ovoj par. da se napravi da se pusta 
  104647.     @Ostanati        char(1)='N',             --ovoj par. da se napravi da se pusta 
  104648.     @Sifra_Podg        char(6)=Null,
  104649.     @Sifra_Gr        char(3)=Null,
  104650.     @Sifra_Drg        smallint=Null,
  104651.     @SamoZaDadKup    char(1)='N'                --dod.03.11.07 
  104652. AS
  104653. Declare @SSQL varchar(3000)
  104654. CREATE TABLE #TmpArt
  104655. (Sifra_art    varchar(20))
  104656. IF @Tip_Sif_Art = 'A'
  104657. Begin
  104658.     If @Sif_GrOrg_ZaZal IS NOT NULL
  104659.     Begin
  104660.         CREATE Table #TmpZal
  104661.         (Sifra_Art    varchar(20),
  104662.          Kolic         decimal(18,4))
  104663.         INSERT INTO #TmpZal (Sifra_Art, Kolic) SELECT Sifra_Art, SUM(Vlez - Izlez) FROM SoArt WHERE Sifra_OE IN 
  104664.                 (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=@Sif_GrOrg_ZaZal) GROUP BY Sifra_Art
  104665.     End
  104666.     SET @SSQL = 'SELECT A.Sifra_Art FROM KatArt A ' 
  104667.     IF @Sifra_Gr IS NOT NULL
  104668.         SET @SSQL = @SSQL + 'INNER JOIN Podgrupi P ON A.Sifra_Podg=P.Sifra_Podg '
  104669.     SET @SSQL = @SSQL +' WHERE 1=1 '    
  104670.     IF @Sifra_Podg IS NOT NULL
  104671.         SET @SSQL = @SSQL + ' AND A.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  104672.     IF @Sifra_Gr IS NOT NULL
  104673.         SET @SSQL = @SSQL + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  104674.     IF @Sifra_Drg IS NOT NULL
  104675.         SET @SSQL = @SSQL + ' AND A.Sifra_Drg = ' + Cast(@Sifra_Drg as varchar(5)) + ' '
  104676.     If @Sif_GrOrg_ZaZal IS NOT NULL
  104677.         SET @SSQL = @SSQL + ' AND A.Sifra_Art IN (SELECT Sifra_Art FROM #TmpZal) '
  104678.     INSERT INTO #TmpArt (Sifra_Art) EXEC (@SSQL)
  104679. End
  104680. ELSE IF @Tip_Sif_Art= 'P'
  104681.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Podg FROM Podgrupi ORDER BY Sifra_Podg
  104682. ELSE IF @Tip_Sif_Art= 'G'
  104683.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Gr FROM Grupi ORDER BY Sifra_Gr
  104684. ELSE IF @Tip_Sif_Art= 'B'
  104685.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_Drg FROM DrgPodel ORDER BY Sifra_Drg
  104686. ELSE IF @Tip_Sif_Art= '1'
  104687.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_1 FROM Drugo1 ORDER BY Sifra_1
  104688. ELSE IF @Tip_Sif_Art= '2'
  104689.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_2 FROM Drugo2 ORDER BY Sifra_2
  104690. ELSE IF @Tip_Sif_Art= '3'
  104691.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_3 FROM Drugo3 ORDER BY Sifra_3
  104692. ELSE IF @Tip_Sif_Art= '4'
  104693.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_4 FROM Drugo4 ORDER BY Sifra_4
  104694. ELSE IF @Tip_Sif_Art= '5'
  104695.     INSERT INTO #TmpArt (Sifra_Art) SELECT Sifra_5 FROM Drugo5 ORDER BY Sifra_5
  104696. ELSE IF @Tip_Sif_Art= 'D'
  104697.     INSERT INTO #TmpArt (Sifra_Art) SELECT Distinct Kto FROM KatArt ORDER BY Kto
  104698. ELSE 
  104699.     INSERT INTO #TmpArt (Sifra_Art) VALUES ('')
  104700. IF @ZemiOdPrethCen = 'D' or @DajSamoArt='D'
  104701. Begin
  104702.     CREATE TABLE #TmpCen
  104703.     (VlIzl char (1) ,
  104704.     Tip_Sif_Kup char (1) ,
  104705.     Sif_Kup_Gen varchar (11) ,
  104706.     Tip_Sif_Art char (1) ,
  104707.     Sif_Art_Gen varchar (20),
  104708.     Datum_Od smalldatetime NULL ,
  104709.     Rok_Dosp smallint NULL ,
  104710.     Datum_Do smalldatetime NULL ,
  104711.     Uces decimal(6, 2) NULL ,
  104712.     Dod_Uces decimal(6, 2) NULL ,
  104713.     Cena decimal(18, 4) NULL ,
  104714.     MalCena decimal(18, 4) NULL ,
  104715.     DanCena char (1) ,
  104716.     DanMalCena char (1),
  104717.     ImeKup    varchar(40),
  104718.     ImeArt    varchar(40), 
  104719.     Proc_Marza decimal(6,2) )
  104720.     Declare @fRok as smallint, @fUces as decimal(6,2), @fDodUces as decimal(6,2)
  104721.     Declare @fCena as decimal(18,4), @fMalCena as decimal(18,4)
  104722.     Declare @fDanCena as char(1), @fDanMalCena as char(1), @fSifArtGen as varchar(20)
  104723.     IF @ZemiOdPrethCen = 'D'
  104724.     Begin
  104725.     Set Nocount On
  104726.     Declare TabC Cursor Fast_Forward For
  104727.         Select Sifra_Art From #TmpArt
  104728.     Open TabC
  104729.     Fetch Next From TabC Into @fSifArtGen
  104730.     While @@Fetch_Status = 0
  104731.     Begin            
  104732.       IF @SamoZaDadKup='D'
  104733.         INSERT INTO #TmpCen (Sif_art_Gen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena)
  104734.         SELECT @FSifArtGen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena 
  104735.         FROM dbo.fix_DajCenaZaDatumZaDadKup(@VlIzl, @Tip_Sif_Kup, @Sif_Kup_Gen, @Tip_Sif_Art, @fSifArtGen, @Datum_Od)
  104736.       ELSE
  104737.         INSERT INTO #TmpCen (Sif_art_Gen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena)
  104738.         SELECT @FSifArtGen, Rok_Dosp, Uces, Dod_Uces, Cena, MalCena, DanCena, DanMalCena 
  104739.         FROM dbo.fix_DajCenaZaDatum(@VlIzl, @Tip_Sif_Kup, @Sif_Kup_Gen, @Tip_Sif_Art, @fSifArtGen, @Datum_Od)
  104740.         Fetch Next From TabC Into @fSifArtGen
  104741.     End
  104742.     Close TabC
  104743.     Deallocate TabC
  104744.     Set Nocount Off
  104745.     End 
  104746.     if @Ostanati = 'D'
  104747.      begin
  104748.         INSERT INTO #TmpCen (Sif_Art_Gen) SELECT Sifra_Art FROM #TmpArt 
  104749.         WHERE Sifra_Art NOT IN (SELECT Sif_Art_Gen FROM #TmpCen)
  104750.     end
  104751.     UPDATE #TmpCen SET VlIzl = @VlIzl, Tip_Sif_Kup =@Tip_Sif_kup, Sif_Kup_Gen=@Sif_Kup_Gen
  104752.     IF @Tip_Sif_Art= 'A'
  104753.         UPDATE #TmpCen SET ImeArt= A.ImeArt, Proc_Marza=A.Proc_Marza FROM KatArt A WHERE A.Sifra_Art=#TmpCen.Sif_Art_Gen
  104754.     ELSE IF @Tip_Sif_Art= 'P'
  104755.         UPDATE #TmpCen SET ImeArt= P.Ime_Podg FROM  Podgrupi P WHERE P.Sifra_Podg=#TmpCen.Sif_Art_Gen
  104756.     ELSE IF @Tip_Sif_Art= 'G'
  104757.         UPDATE #TmpCen SET ImeArt= G.Ime_Gr FROM Grupi G WHERE G.Sifra_Gr=#TmpCen.Sif_Art_Gen
  104758.     ELSE IF @Tip_Sif_Art= 'B'
  104759.         UPDATE #TmpCen SET ImeArt= D.Ime FROM  DrgPodel D WHERE D.Sifra_Drg=#TmpCen.Sif_Art_Gen
  104760.     ELSE IF @Tip_Sif_Art= '1'
  104761.         UPDATE #TmpCen SET ImeArt= D.Ime_1 FROM  Drugo1 D WHERE D.Sifra_1=#TmpCen.Sif_Art_Gen
  104762.     ELSE IF @Tip_Sif_Art= '2'
  104763.         UPDATE #TmpCen SET ImeArt= D.Ime_2 FROM  Drugo2 D WHERE D.Sifra_2=#TmpCen.Sif_Art_Gen
  104764.     ELSE IF @Tip_Sif_Art= '3'
  104765.         UPDATE #TmpPrCen SET ImeArt= D.Ime_3 FROM Drugo3 D WHERE D.Sifra_3=#TmpCen.Sif_Art_Gen
  104766.     ELSE IF @Tip_Sif_Art= '4'
  104767.         UPDATE #TmpCen SET ImeArt= D.Ime_4 FROM Drugo4 D WHERE D.Sifra_4=#TmpCen.Sif_Art_Gen
  104768.     ELSE IF @Tip_Sif_Art= '5'
  104769.         UPDATE #TmpCen SET ImeArt= D.Ime_5 FROM Drugo5 D WHERE D.Sifra_5=#TmpCen.Sif_Art_Gen
  104770.     ELSE IF @Tip_Sif_Art= 'D'
  104771.         UPDATE #TmpCen SET ImeArt= K.ImeKup FROM Komint K WHERE K.Sifra_Kup=#TmpCen.Sif_Art_Gen
  104772.     IF @Tip_Sif_Kup= 'K'
  104773.         UPDATE #TmpCen SET ImeKup= K.ImeKup FROM Komint K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_Kup 
  104774.     ELSE IF @Tip_Sif_Kup= '1'
  104775.         UPDATE #TmpCen SET ImeKup= K.Ime_1K FROM KDrugo1 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_1K 
  104776.     ELSE IF @Tip_Sif_Kup= '2'
  104777.         UPDATE #TmpCen SET ImeKup= K.Ime_2K FROM KDrugo2 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_2K 
  104778.     ELSE IF @Tip_Sif_Kup= '3'
  104779.         UPDATE #TmpCen SET ImeKup= K.Ime_3K FROM KDrugo3 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_3K 
  104780.     ELSE IF @Tip_Sif_Kup= '4'
  104781.         UPDATE #TmpCen SET ImeKup= K.Ime_4K FROM KDrugo4 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_4K 
  104782.     ELSE IF @Tip_Sif_Kup= '5'
  104783.         UPDATE #TmpCen SET ImeKup= K.Ime_5K FROM KDrugo5 K WHERE #TmpCen.Sif_Kup_Gen=K.Sifra_5K 
  104784.     SELECT * FROM #TmpCen ORDER BY Sif_Art_Gen
  104785. End
  104786. ELSE
  104787. Begin
  104788.     SET @SSQL = 'SELECT U.*, '
  104789.     IF @Tip_Sif_Kup= 'K'
  104790.         SET @SSQL = @SSQL + ' K.ImeKup ImeKup, '
  104791.     ELSE IF @Tip_Sif_Kup= '1'
  104792.         SET @SSQL = @SSQL + ' K.Ime_1K ImeKup, '
  104793.     ELSE IF @Tip_Sif_Kup= '2'
  104794.         SET @SSQL = @SSQL + ' K.Ime_2K ImeKup, '
  104795.     ELSE IF @Tip_Sif_Kup= '3'
  104796.         SET @SSQL = @SSQL + ' K.Ime_3K ImeKup, '
  104797.     ELSE IF @Tip_Sif_Kup= '4'
  104798.         SET @SSQL = @SSQL + ' K.Ime_4K ImeKup, '
  104799.     ELSE IF @Tip_Sif_Kup= '5'
  104800.         SET @SSQL = @SSQL + ' K.Ime_5K ImeKup,'
  104801.     ELSE IF @Tip_Sif_Kup= 'T'        --TipKomint
  104802.         SET @SSQL = @SSQL + ' K.ImeTip ImeKup,'
  104803.     ELSE 
  104804.         SET @SSQL = @SSQL + ' '''' ImeKup, '
  104805.     IF @Tip_Sif_Art= 'A'
  104806.         SET @SSQL = @SSQL + ' A.ImeArt ImeArt, A.Proc_Marza '
  104807.     ELSE IF @Tip_Sif_Art= 'P'
  104808.         SET @SSQL = @SSQL + ' P.Ime_Podg ImeArt, '''' Proc_Marza '
  104809.     ELSE IF @Tip_Sif_Art= 'G'
  104810.         SET @SSQL = @SSQL + ' G.Ime_Gr ImeArt, '''' Proc_Marza '
  104811.     ELSE IF @Tip_Sif_Art= 'B'
  104812.         SET @SSQL = @SSQL + ' D.Ime ImeArt, '''' Proc_Marza '
  104813.     ELSE IF @Tip_Sif_Art= '1'
  104814.         SET @SSQL = @SSQL + ' D.Ime_1 ImeArt, '''' Proc_Marza '
  104815.     ELSE IF @Tip_Sif_Art= '2'
  104816.         SET @SSQL = @SSQL + ' D.Ime_2 ImeArt, '''' Proc_Marza '
  104817.     ELSE IF @Tip_Sif_Art= '3'
  104818.         SET @SSQL = @SSQL + ' D.Ime_3 ImeArt, '''' Proc_Marza '
  104819.     ELSE IF @Tip_Sif_Art= '4'
  104820.         SET @SSQL = @SSQL + ' D.Ime_4 ImeArt, '''' Proc_Marza '
  104821.     ELSE IF @Tip_Sif_Art= '5'
  104822.         SET @SSQL = @SSQL + ' D.Ime_5 ImeArt,'''' Proc_Marza '
  104823.     ELSE IF @Tip_Sif_Art= 'D'
  104824.         SET @SSQL = @SSQL + ' KD.ImeKup ImeArt,'''' Proc_Marza '
  104825.     ELSE 
  104826.         SET @SSQL = @SSQL + ' '''' ImeArt, '''' Proc_Marza '
  104827.     SET @SSQL = @SSQL + ' From  Usl_Komerc_Per U '
  104828.     IF @Tip_Sif_Kup= 'K'
  104829.         SET @SSQL = @SSQL + ' INNER JOIN Komint K ON U.Sif_Kup_Gen=K.Sifra_Kup '
  104830.     ELSE IF @Tip_Sif_Kup= '1'
  104831.         SET @SSQL = @SSQL + ' INNER JOIN KDrugo1 K ON U.Sif_Kup_Gen=K.Sifra_1K '
  104832.     ELSE IF @Tip_Sif_Kup= '2'
  104833.         SET @SSQL = @SSQL + ' INNER JOIN KDrugo2 K ON U.Sif_Kup_Gen=K.Sifra_2K '
  104834.     ELSE IF @Tip_Sif_Kup= '3'
  104835.         SET @SSQL = @SSQL + ' INNER JOIN KDrugo3 K ON U.Sif_Kup_Gen=K.Sifra_3K '
  104836.     ELSE IF @Tip_Sif_Kup= '4'
  104837.         SET @SSQL = @SSQL + ' INNER JOIN KDrugo4 K ON U.Sif_Kup_Gen=K.Sifra_4K '
  104838.     ELSE IF @Tip_Sif_Kup= '5'
  104839.         SET @SSQL = @SSQL + ' INNER JOIN KDrugo5 K ON U.Sif_Kup_Gen=K.Sifra_5K '
  104840.     ELSE IF @Tip_Sif_Kup= 'T'
  104841.         SET @SSQL = @SSQL + ' INNER JOIN TipKomint K ON U.Sif_Kup_Gen=K.Sifra_Tip '
  104842.     IF @Tip_Sif_Art= 'A'
  104843.         SET @SSQL = @SSQL + ' INNER JOIN KatArt A ON A.Sifra_Art=U.Sif_Art_Gen'
  104844.     ELSE IF @Tip_Sif_Art= 'P'
  104845.         SET @SSQL = @SSQL + ' INNER JOIN Podgrupi P ON P.Sifra_Podg=U.Sif_Art_Gen'
  104846.     ELSE IF @Tip_Sif_Art= 'G'
  104847.         SET @SSQL = @SSQL + ' INNER JOIN Grupi G ON G.Sifra_Gr=U.Sif_Art_Gen'
  104848.     ELSE IF @Tip_Sif_Art= 'B'
  104849.         SET @SSQL = @SSQL + ' INNER JOIN DrgPodel D ON D.Sifra_Drg=U.Sif_Art_Gen'
  104850.     ELSE IF @Tip_Sif_Art= '1'
  104851.         SET @SSQL = @SSQL + ' INNER JOIN Drugo1 D ON D.Sifra_1=U.Sif_Art_Gen'
  104852.     ELSE IF @Tip_Sif_Art= '2'
  104853.         SET @SSQL = @SSQL + ' INNER JOIN Drugo2 D ON D.Sifra_2=U.Sif_Art_Gen'
  104854.     ELSE IF @Tip_Sif_Art= '3'
  104855.         SET @SSQL = @SSQL + ' INNER JOIN Drugo3 D ON D.Sifra_3=U.Sif_Art_Gen'
  104856.     ELSE IF @Tip_Sif_Art= '4'
  104857.         SET @SSQL = @SSQL + ' INNER JOIN Drugo4 D ON D.Sifra_4=U.Sif_Art_Gen'
  104858.     ELSE IF @Tip_Sif_Art= '5'
  104859.         SET @SSQL = @SSQL + ' INNER JOIN Drugo5 D ON D.Sifra_5=U.Sif_Art_Gen'
  104860.     ELSE IF @Tip_Sif_Art= 'D'
  104861.         SET @SSQL = @SSQL + ' INNER JOIN Komint KD ON KD.Sifra_Kup=U.Sif_Art_Gen'
  104862.     SET @SSQL = @SSQL + ' Where U.VlIzl=''' + @VlIzl + ''' And U.Tip_Sif_Kup=''' + @Tip_Sif_Kup + ''' And U.Sif_Kup_Gen=''' + @Sif_Kup_Gen +
  104863.         ''' And U.Tip_Sif_Art=''' + @Tip_Sif_Art + ''' AND U.Datum_Od = ''' + Cast(@Datum_Od as varchar(30)) + 
  104864.         '''  AND U.Sif_Art_Gen IN (SELECT Sifra_Art FROM #TmpArt) '
  104865.     SET @SSQL = @SSQL + ' ORDER BY U.Sif_Art_Gen'
  104866.     EXEC (@SSQL)
  104867. End
  104868.  
  104869.  
  104870.  
  104871. Go
  104872. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignivelicskala]'))
  104873. drop procedure [dbo].[sp_podignivelicskala]
  104874.  
  104875. Go
  104876.  
  104877.  
  104878. CREATE  PROCEDURE sp_PodigniVelicSkala
  104879.     @Sifra_VelSkala varchar(20)
  104880. AS
  104881.     SELECT * FROM VelicSkala
  104882.     WHERE Sifra_VelSkala=@Sifra_VelSkala
  104883.      RETURN @@ERROR
  104884.  
  104885.  
  104886.  
  104887.  
  104888. Go
  104889. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignivelicskalastav]'))
  104890. drop procedure [dbo].[sp_podignivelicskalastav]
  104891.  
  104892. Go
  104893.  
  104894.  
  104895.  
  104896. CREATE   PROCEDURE sp_PodigniVelicSkalaStav
  104897.     @Sifra_VelSkala varchar(20)
  104898. AS
  104899.     SELECT S.*,V.ImeVelic FROM VelicSkalaStav  S
  104900.     INNER JOIN Velicina V On S.Sifra_Velic=V.Sifra_Velic
  104901.     WHERE Sifra_VelSkala=@Sifra_VelSkala
  104902.      RETURN @@ERROR
  104903.  
  104904.  
  104905.  
  104906.  
  104907.  
  104908. Go
  104909. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignivirmani]'))
  104910. drop procedure [dbo].[sp_podignivirmani]
  104911.  
  104912. Go
  104913. CREATE PROCEDURE sp_PodigniVirmani
  104914.     @VirID int
  104915. AS
  104916.     SELECT * FROM VirmanIzv WHERE VirID = @VirID
  104917.  
  104918.  
  104919.  
  104920. Go
  104921. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignivozila]'))
  104922. drop procedure [dbo].[sp_podignivozila]
  104923.  
  104924. Go
  104925. CREATE procedure sp_PodigniVozila
  104926.     @Sifra_Art varchar(20)
  104927. As
  104928.     Select * from Vozila
  104929.     Where Sifra_Art=@Sifra_Art
  104930.  
  104931.  
  104932. Go
  104933. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignivozizjava]'))
  104934. drop procedure [dbo].[sp_podignivozizjava]
  104935.  
  104936. Go
  104937. CREATE procedure sp_PodigniVozIzjava
  104938.     @Sifra_Oe smallint,
  104939.     @Broj_izjava int
  104940. As
  104941.     select * from VozIzjava
  104942.     where Sifra_Oe=@Sifra_Oe and Broj_Izjava=@Broj_izjava  
  104943.  
  104944.  
  104945. Go
  104946. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignivpjsite]'))
  104947. drop procedure [dbo].[sp_podignivpjsite]
  104948.  
  104949. Go
  104950. CREATE PROCEDURE sp_PodigniVPJSite
  104951. AS
  104952.     Select * From VidProdObj
  104953.  
  104954.  
  104955. Go
  104956. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwbn_tnarzakor]'))
  104957. drop procedure [dbo].[sp_podigniwbn_tnarzakor]
  104958.  
  104959. Go
  104960.  
  104961.  
  104962. CREATE   Procedure sp_PodigniWbn_TNarZaKor
  104963.     @Kod_Korisnik_Vnes Varchar(20),
  104964.     @Sifra_Nar smallint
  104965.  As
  104966.     Select N.*, K.ImeKup From
  104967.     Wbn_TNar N Left outer Join Komint K 
  104968.     on N.Sifra_Kup = K.Sifra_Kup
  104969.     where N.Kod_Korisnik_Vnes=@Kod_Korisnik_Vnes
  104970.     and N.Sifra_Nar=@Sifra_Nar
  104971.  
  104972.  
  104973.  
  104974.  
  104975.  
  104976. Go
  104977. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwbn_tsnarzakor]'))
  104978. drop procedure [dbo].[sp_podigniwbn_tsnarzakor]
  104979.  
  104980. Go
  104981.  
  104982. CREATE    Procedure sp_PodigniWbn_TSNarZaKor
  104983.     @Broj_Nar int
  104984.  As
  104985.     Select * From Wbn_TSNar
  104986.     where Broj_Nar=@Broj_Nar
  104987.  
  104988.  
  104989.  
  104990.  
  104991. Go
  104992. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwebnaracki]'))
  104993. drop procedure [dbo].[sp_podigniwebnaracki]
  104994.  
  104995. Go
  104996.  
  104997.  
  104998.  
  104999. CREATE     PROCEDURE sp_PodigniWEBNaracki
  105000.     @Sifra_Nar     smallint = Null,
  105001.     @Sifra_OE     smallint = Null,
  105002.     @Datum_Od    smalldatetime = Null,
  105003.     @Datum_Do    smalldatetime = Null
  105004.     
  105005. AS
  105006. Select N.NarID, N.Sifra_Oe , N.Sifra_Nar, N.Broj_Nar , N.Datum_Nar, N.Sifra_Kup,K.ImeKup From Naracki N 
  105007. Left Outer Join Komint K On K.Sifra_Kup = N.Sifra_Kup 
  105008. Where (N.Datum_Nar  between @Datum_Od and @Datum_DO) and N.Sifra_oe=@Sifra_Oe and N.Sifra_Nar=@Sifra_Nar
  105009. Order By N.Datum_Nar Desc
  105010.  
  105011.  
  105012. Select S.NarID,S.StaNarID, S.Sifra_Oe , S.Sifra_Nar, S.Broj_Nar ,S.Sifra_Art , A.ImeArt, S.Kolic, S.DokCena, 
  105013. (case when PrifPredlog='O' then 'True' else 'False' end) as Odobren  From StaNarac S 
  105014. Left Outer Join Katart A On A.Sifra_Art = S.Sifra_Art
  105015. Left Outer Join Naracki N On N.NarID = S.NarID and  N.Sifra_Oe=S.Sifra_Oe and N.Sifra_Nar=S.Sifra_Nar and N.Broj_Nar=S.Broj_Nar
  105016. Where (N.Datum_Nar  between @Datum_Od and @Datum_DO) and N.Sifra_oe=@Sifra_Oe and N.Sifra_Nar=@Sifra_Nar
  105017.  
  105018.  
  105019.  
  105020.  
  105021.  
  105022.  
  105023.  
  105024. Go
  105025. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmfxr]'))
  105026. drop procedure [dbo].[sp_podigniwhmfxr]
  105027.  
  105028. Go
  105029. CREATE PROCEDURE sp_PodigniWhmFXR
  105030.  
  105031.     @Sifra_Oe    smallint, 
  105032.     @FXR_ID    varchar(30)
  105033. AS
  105034.  
  105035.     Select * From WhmFXR 
  105036.     Where Sifra_Oe=@Sifra_Oe And FXR_ID=@FXR_ID
  105037.     Return @@ERROR
  105038.  
  105039. Go
  105040. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmlokacgrupi]'))
  105041. drop procedure [dbo].[sp_podigniwhmlokacgrupi]
  105042.  
  105043. Go
  105044.  
  105045. CREATE  procedure sp_PodigniWhmLokacGrupi
  105046.     @Sifra_Oe smallint,
  105047.     @Sifra_Gr char(3)
  105048. AS
  105049.     Select w.*, wl.Lokac_ime from WhmLokacGrupi W
  105050.     LEFT OUTER JOIN WhmLokacija WL ON W.Sifra_OE=WL.Sifra_OE AND W.Lokac_ID=WL.Lokac_ID
  105051.     Where W.Sifra_Oe=@Sifra_Oe and W.Sifra_Gr=@Sifra_Gr  
  105052.     return @@error
  105053.  
  105054.  
  105055.  
  105056. Go
  105057. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmlokaciizaorged]'))
  105058. drop procedure [dbo].[sp_podigniwhmlokaciizaorged]
  105059.  
  105060. Go
  105061.  
  105062.  
  105063.  
  105064.  
  105065.  
  105066. CREATE PROCEDURE sp_PodigniWhmLokaciiZaOrged
  105067.     @Sifra_OE       smallint 
  105068. AS
  105069.     SELECT * FROM WhmLokacija S
  105070.     WHERE  S.Sifra_Oe = @Sifra_Oe
  105071.   IF @@ROWCOUNT = 0
  105072.       RETURN 77000
  105073.    ELSE
  105074.       RETURN 0
  105075.  
  105076.  
  105077.  
  105078.  
  105079.  
  105080. Go
  105081. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmlokacija]'))
  105082. drop procedure [dbo].[sp_podigniwhmlokacija]
  105083.  
  105084. Go
  105085.  
  105086. CREATE  PROCEDURE sp_PodigniWhmLokacija
  105087.  
  105088.     @Sifra_Oe        smallint,
  105089.     @Lokac_ID        varchar(30)
  105090. AS
  105091.  
  105092.     SELECT * FROM WhmLokacija
  105093.     Where Sifra_Oe=@Sifra_Oe And Lokac_ID=@Lokac_ID
  105094.     Return @@ERROR
  105095.  
  105096.  
  105097. Go
  105098. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmlokackarakterist]'))
  105099. drop procedure [dbo].[sp_podigniwhmlokackarakterist]
  105100.  
  105101. Go
  105102. CREATE PROCEDURE sp_PodigniWhmLokacKarakterist
  105103.  
  105104.     @Sifra_Oe    smallint,
  105105.     @Sekc_ID    varchar(15) = Null,
  105106.     @Lokac_X    char(4) = Null,
  105107.     @Lokac_Y    char(4) = Null,
  105108.     @Lokac_Z    char(4) = Null,
  105109.     @Lokac_ID    varchar(30) = Null,
  105110.     @FXR_ID    varchar(30) = Null, 
  105111.     @Sifra_Karakt    smallint
  105112.  
  105113. AS
  105114.     Declare @SSQL as varchar(8000)
  105115.  
  105116.     Set @SSQL = ' Select * From WhmLokacKarakterist
  105117.             Where Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' And Sifra_Karakt = ' + Cast(@Sifra_Karakt as varchar(6)) + ' '
  105118.  
  105119.     If @Sekc_ID Is Not Null
  105120.         Set @SSQL = @SSQL + ' And Sekc_ID = ' + @Sekc_ID + ' '
  105121.     Else 
  105122.         Set @SSQL = @SSQL + ' And Sekc_ID Is Null '
  105123.  
  105124.     If @Lokac_X Is Not Null
  105125.         Set @SSQL = @SSQL + ' And Lokac_X = ' + @Lokac_X + ' '
  105126.     Else 
  105127.         Set @SSQL = @SSQL + ' And Lokac_X Is Null '
  105128.  
  105129.     If @Lokac_Y Is Not Null
  105130.         Set @SSQL = @SSQL + ' And Lokac_Y = ' + @Lokac_Y + ' '
  105131.     Else 
  105132.         Set @SSQL = @SSQL + ' And Lokac_Y Is Null '
  105133.  
  105134.     If @Lokac_Z Is Not Null
  105135.         Set @SSQL = @SSQL + ' And Lokac_Z = ' + @Lokac_Z + ' '
  105136.     Else 
  105137.         Set @SSQL = @SSQL + ' And Lokac_Z Is Null '
  105138.  
  105139.     If @Lokac_ID Is Not Null
  105140.         Set @SSQL = @SSQL + ' And Lokac_ID = ' + @Lokac_ID + ' '
  105141.     Else 
  105142.         Set @SSQL = @SSQL + ' And Lokac_ID Is Null '
  105143.  
  105144.     If @FXR_ID Is Not Null
  105145.         Set @SSQL = @SSQL + ' And FXR_ID = ' + @FXR_ID + ' '
  105146.     Else 
  105147.         Set @SSQL = @SSQL + ' And FXR_ID Is Null '
  105148.     
  105149.     Exec(@SSQL)
  105150.  
  105151. Go
  105152. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmlokackatstatus]'))
  105153. drop procedure [dbo].[sp_podigniwhmlokackatstatus]
  105154.  
  105155. Go
  105156. CREATE PROCEDURE sp_PodigniWhmLokacKatStatus
  105157.  
  105158.     @Sifra_Oe        smallint, 
  105159.     @Sekc_ID        varchar(15) = Null,
  105160.     @Lokac_X        char(4) = Null,
  105161.     @Lokac_Y        char(4) = Null,
  105162.     @Lokac_Z        char(4) = Null,
  105163.     @Lokac_ID        varchar(30) = Null,
  105164.     @FXR_ID        varchar(30) = Null,
  105165.     @Sifra_KatStatus    smallint
  105166. AS
  105167.     Declare @SSQL as varchar(8000)
  105168.  
  105169.     Set @SSQL = ' Select * From WhmLokacKatStatus
  105170.             Where Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' And Sifra_KatStatus = ' + Cast(@Sifra_KatStatus as varchar(6)) + ' '
  105171.  
  105172.     If @Sekc_ID Is Not Null
  105173.         Set @SSQL = @SSQL + ' And Sekc_ID = ' + @Sekc_ID + ' '
  105174.     Else 
  105175.         Set @SSQL = @SSQL + ' And Sekc_ID Is Null '
  105176.  
  105177.     If @Lokac_X Is Not Null
  105178.         Set @SSQL = @SSQL + ' And Lokac_X = ' + @Lokac_X + ' '
  105179.     Else 
  105180.         Set @SSQL = @SSQL + ' And Lokac_X Is Null '
  105181.  
  105182.     If @Lokac_Y Is Not Null
  105183.         Set @SSQL = @SSQL + ' And Lokac_Y = ' + @Lokac_Y + ' '
  105184.     Else 
  105185.         Set @SSQL = @SSQL + ' And Lokac_Y Is Null '
  105186.  
  105187.     If @Lokac_Z Is Not Null
  105188.         Set @SSQL = @SSQL + ' And Lokac_Z = ' + @Lokac_Z + ' '
  105189.     Else 
  105190.         Set @SSQL = @SSQL + ' And Lokac_Z Is Null '
  105191.  
  105192.     If @Lokac_ID Is Not Null
  105193.         Set @SSQL = @SSQL + ' And Lokac_ID = ' + @Lokac_ID + ' '
  105194.     Else 
  105195.         Set @SSQL = @SSQL + ' And Lokac_ID Is Null '
  105196.  
  105197.     If @FXR_ID Is Not Null
  105198.         Set @SSQL = @SSQL + ' And FXR_ID = ' + @FXR_ID + ' '
  105199.     Else 
  105200.         Set @SSQL = @SSQL + ' And FXR_ID Is Null '
  105201.     
  105202.     Exec(@SSQL)
  105203.  
  105204. Go
  105205. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmmvc]'))
  105206. drop procedure [dbo].[sp_podigniwhmmvc]
  105207.  
  105208. Go
  105209. CREATE PROCEDURE sp_PodigniWhmMVC
  105210.  
  105211.     @MVC_ID        int
  105212. AS
  105213.     Select * From WhmMVC 
  105214.     Where MVC_ID=@MVC_ID
  105215.     Return @@ERROR
  105216.  
  105217. Go
  105218. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmprivoper]'))
  105219. drop procedure [dbo].[sp_podigniwhmprivoper]
  105220.  
  105221. Go
  105222.  
  105223. CREATE  PROCEDURE sp_PodigniWhmPrivOper
  105224.  
  105225.     @Sifra_Oper        smallint,
  105226.     @Sifra_Oe_WHM    smallint
  105227. AS
  105228.  
  105229.     Create Table #WhmPrivIme
  105230.     (
  105231.         Sifra_Oper    smallint,
  105232.         Sifra_Oe_Whm    smallint,
  105233.         ImePrivilWhm    varchar(30),
  105234.         OpisImePrivilWhm varchar(100),
  105235.         Moze_Vlez    char(1),
  105236.         Opc_Spec1    varchar(10),
  105237.         Opc_Spec2    varchar(10)
  105238.     )
  105239.     Insert Into #WhmPrivIme
  105240.     Select @Sifra_Oper, @Sifra_Oe_WHM, ImePrivilWhm, OpisImePrivilWhm, Null, Null, Null
  105241.     From WhmPrivIme
  105242.  
  105243.     Update     #WhmPrivIme Set Moze_Vlez = O.Moze_Vlez, Opc_Spec1=O.Opc_Spec1, Opc_Spec2=O.Opc_Spec2
  105244.     From WhmPrivOper O
  105245.     Where O.Sifra_Oper=#WhmPrivIme.Sifra_Oper And O.Sifra_Oe_Whm=#WhmPrivIme.Sifra_Oe_Whm And O.ImePrivilWhm=#WhmPrivIme.ImePrivilWhm
  105246.  
  105247.     Select * From #WhmPrivIme Order By ImePrivilWHM
  105248. Go
  105249. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmsekciizaorged]'))
  105250. drop procedure [dbo].[sp_podigniwhmsekciizaorged]
  105251.  
  105252. Go
  105253.  
  105254.  
  105255.  
  105256.  
  105257. create     PROCEDURE sp_PodigniWhmSekciiZaOrged
  105258.     @Sifra_OE       smallint 
  105259. AS
  105260.     SELECT * FROM WhmSekcija S
  105261.     WHERE  S.Sifra_Oe = @Sifra_Oe
  105262.   IF @@ROWCOUNT = 0
  105263.       RETURN 77000
  105264.    ELSE
  105265.       RETURN 0
  105266.  
  105267.  
  105268.  
  105269.  
  105270. Go
  105271. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podigniwhmsekcija]'))
  105272. drop procedure [dbo].[sp_podigniwhmsekcija]
  105273.  
  105274. Go
  105275. CREATE PROCEDURE sp_PodigniWhmSekcija
  105276.  
  105277.     @Sifra_Oe        smallint,
  105278.     @Sekc_ID        varchar(15)
  105279. AS
  105280.  
  105281.     SELECT * FROM WhmSekcija
  105282.     Where Sifra_Oe=@Sifra_Oe And Sekc_ID=@Sekc_ID
  105283.     Return @@ERROR
  105284.  
  105285. Go
  105286. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfaktnapraveno]'))
  105287. drop procedure [dbo].[sp_podignixfaktnapraveno]
  105288.  
  105289. Go
  105290. CREATE PROCEDURE sp_PodigniXFAktNapraveno
  105291.        @Broj_Napraveno int
  105292. AS
  105293.   SELECT * FROM XFAktNapraveno WHERE Broj_Napraveno = @Broj_Napraveno
  105294.  
  105295.  
  105296.  
  105297. Go
  105298. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfaktnapravenosta]'))
  105299. drop procedure [dbo].[sp_podignixfaktnapravenosta]
  105300.  
  105301. Go
  105302.  
  105303. create  PROCEDURE sp_PodigniXFAktNapravenoSta
  105304.     @Broj_Napraveno int
  105305. AS
  105306.     SELECT * FROM XFAktNapravenoSta
  105307.     WHERE Broj_Napraveno = @Broj_Napraveno
  105308.  
  105309.  
  105310.  
  105311. Go
  105312. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfbaranje]'))
  105313. drop procedure [dbo].[sp_podignixfbaranje]
  105314.  
  105315. Go
  105316.  
  105317.  
  105318. CREATE     PROCEDURE sp_PodigniXFBaranje
  105319.     @Broj_Baranje int
  105320. AS
  105321.     SELECT B.*, K.ImeKup, I.ImeIzvrs as ImeIzvrsOd, OBL.ImeOblast FROM XFBaranje B
  105322.     left outer join Komint K on B.Sifra_Kup = K.Sifra_Kup
  105323.     left outer join XFIzvrsitel I on B.Sifra_Izvrs_Od = I.Sifra_Izvrs
  105324.     left outer join XFOblast OBL on B.Sifra_Oblast = OBL.Sifra_Oblast
  105325.     WHERE Broj_Baranje = @Broj_Baranje
  105326.  
  105327.  
  105328.  
  105329. Go
  105330. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfbaranjefile]'))
  105331. drop procedure [dbo].[sp_podignixfbaranjefile]
  105332.  
  105333. Go
  105334.  
  105335. CREATE PROCEDURE sp_PodigniXFBaranjeFile
  105336.     @Broj_Baranje int
  105337. AS
  105338.     -- Namerno ne go podigan IMAGE-to zaradi efikasnost
  105339.     SELECT FileID, File_Ime, Datum_Kreiran, Datum_Izmena
  105340.     FROM XFBaranjeFile
  105341.         WHERE Broj_Baranje = @Broj_Baranje
  105342.  
  105343.  
  105344.  
  105345. Go
  105346. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfbaranjeopsirno]'))
  105347. drop procedure [dbo].[sp_podignixfbaranjeopsirno]
  105348.  
  105349. Go
  105350. CREATE    PROCEDURE sp_PodigniXFBaranjeOpsirno
  105351.     @Broj_Baranje    int,
  105352.     @SlikaGoreX        smallint=0 OUTPUT,
  105353.     @SlikaGoreY        smallint=0 OUTPUT,
  105354.     @SlikaDoluX     smallint=0 OUTPUT,
  105355.     @SlikaDoluY     smallint=0 OUTPUT,
  105356.     @TekstGoreX     smallint=0 OUTPUT,
  105357.     @TekstGoreY     smallint=0 OUTPUT,
  105358.     @TekstDoluX     smallint=0 OUTPUT,
  105359.     @TekstDoluY     smallint=0 OUTPUT,
  105360.     @SirSlikaGore     smallint=0 OUTPUT,
  105361.     @VisSlikaGore     smallint=0 OUTPUT,
  105362.     @SirSlikaDolu     smallint=0 OUTPUT,
  105363.     @VisSlikaDolu    smallint=0 OUTPUT,
  105364.     @Sifra_Oe    smallint=0 OUTPUT,
  105365.     @Sifra_Nar    smallint=0 OUTPUT,
  105366.     @Broj_Nar    int=0 OUTPUT
  105367. AS
  105368.     SELECT @SlikaGoreX = V.SlikaGoreX, @SlikaGoreY = V.SlikaGoreY, @SlikaDoluX = V.SlikaDoluX,
  105369.     @SlikaDoluY    = V.SlikaDoluY,    @TekstGoreX = V.TekstGoreX,    @TekstGoreY = V.TekstGoreY,
  105370.     @TekstDoluX    = V.TekstDoluX,    @TekstDoluY = V.TekstDoluY,    @SirSlikaGore = V.SirSlikaGore,
  105371.     @VisSlikaGore = V.VisSlikaGore,    @SirSlikaDolu = V.SirSlikaDolu, @VisSlikaDolu = V.VisSlikaDolu,
  105372.     @Sifra_Oe = B.Sifra_OE,    @Sifra_Nar = B.Sifra_Nar, @Broj_Nar    = B.Broj_Nar
  105373.     FROM XFBaranje B LEFT OUTER JOIN XFVidBaranje V ON B.Sifra_VidBaranje=V.Sifra_VidBaranje
  105374.     WHERE B.Broj_Baranje=@Broj_Baranje
  105375.     SELECT B.*, K.ImeKup, S.ImeStatusBaranje, ST.Sifra_VidBaranje Sifra_VidBaranjeSta, VST.ImeVidBaranje ImeVidBaranjeSta,
  105376.     V.ImeVidBaranje, V.Nivo_VidBaranje, V.Samo_Informacija, V.SlikaGore, V.SlikaDolu, V.TekstGore, V.TekstDolu, V.NaslovVidBaranje,
  105377.     IZVR.ImeIzvrs, IZVRod.ImeIzvrs as ImeIzvrOd, O.ImeOblast, TP.ImeTipPredmet, K.Adresa, K.Posta, K.SMesto, P.ImePredmet,
  105378.     AN.OpisNapraveno
  105379.     FROM XFBaranje B 
  105380.     LEFT OUTER JOIN XFPredmet P ON B.Broj_Predmet=P.Broj_Predmet
  105381.     LEFT OUTER JOIN Komint K ON B.sifra_Kup=K.Sifra_Kup
  105382.     LEFT OUTER JOIN XFStatusBaranje S ON B.Sifra_StatusBaranje=S.Sifra_StatusBaranje
  105383.     LEFT OUTER JOIN XFVidBaranje V ON B.Sifra_VidBaranje=V.Sifra_VidBaranje
  105384.     LEFT OUTER JOIN XFBaranjeSta ST ON B.Broj_Baranje=ST.Broj_Baranje
  105385.     LEFT OUTER JOIN XFVidBaranje VST ON ST.Sifra_VidBaranje=VST.Sifra_VidBaranje
  105386.     LEFT OUTER JOIN XFIzvrsitel IZVR ON B.Sifra_Izvrs=IZVR.Sifra_Izvrs
  105387.     LEFT OUTER JOIN XFIzvrsitel IZVRod ON B.Sifra_Izvrs_Od=IZVRod.Sifra_Izvrs
  105388.     LEFT OUTER JOIN XFOblast O On O.Sifra_Oblast=B.Sifra_Oblast
  105389.     LEFT OUTER JOIN XFTipPredmet TP On TP.Sifra_TipPredmet=B.Sifra_TipPredmet
  105390.     LEFT OUTER JOIN XFAktNapraveno AN On AN.Broj_Baranje=B.Broj_Baranje
  105391.     WHERE B.Broj_Baranje=@Broj_Baranje
  105392.  
  105393.  
  105394. Go
  105395. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfbaranjesta]'))
  105396. drop procedure [dbo].[sp_podignixfbaranjesta]
  105397.  
  105398. Go
  105399.  
  105400.  
  105401.  
  105402.  
  105403. CREATE      PROCEDURE sp_PodigniXFBaranjeSta
  105404.     @Broj_Baranje int
  105405. AS
  105406.     SELECT S.*, B.ImeVidBaranje
  105407.     FROM XFBaranjeSta S
  105408.     Left Outer Join XFVidBaranje B
  105409.     on S.Sifra_VidBaranje = B.Sifra_VidBaranje
  105410.     WHERE Broj_Baranje = @Broj_Baranje
  105411.  
  105412.  
  105413.  
  105414. Go
  105415. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfbaranjestaizvrs]'))
  105416. drop procedure [dbo].[sp_podignixfbaranjestaizvrs]
  105417.  
  105418. Go
  105419.  
  105420.  
  105421. CREATE    PROCEDURE sp_PodigniXFBaranjeStaIzvrs
  105422.     @Broj_Baranje int
  105423. AS
  105424.     SELECT S.*, I.ImeIzvrs 
  105425.     FROM XFBaranjeStaIzvrs S
  105426.     Inner Join XFIzvrsitel I
  105427.     On S.Sifra_Izvrs = I.Sifra_Izvrs
  105428.     WHERE Broj_Baranje = @Broj_Baranje
  105429.  
  105430.  
  105431.  
  105432. Go
  105433. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfbaranjponarac]'))
  105434. drop procedure [dbo].[sp_podignixfbaranjponarac]
  105435.  
  105436. Go
  105437. CREATE PROCEDURE sp_PodigniXFBaranjPoNarac
  105438.     @Sifra_OE    smallint,
  105439.     @Sifra_Nar    smallint,
  105440.     @Broj_Nar    int
  105441. AS
  105442. SELECT * FROM XFBaranje where sifra_Oe=@Sifra_OE AND Sifra_Nar=@Sifra_Nar AND Broj_Nar=@Broj_Nar
  105443.  
  105444.  
  105445.  
  105446. Go
  105447. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfizvrsitel]'))
  105448. drop procedure [dbo].[sp_podignixfizvrsitel]
  105449.  
  105450. Go
  105451. CREATE PROCEDURE sp_PodigniXFIzvrsitel
  105452.     @Sifra_Izvrs    int
  105453. AS
  105454.     SELECT * FROM XFIzvrsitel
  105455.     WHERE Sifra_Izvrs = @Sifra_Izvrs
  105456.  
  105457.  
  105458.  
  105459. Go
  105460. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfnapraveno]'))
  105461. drop procedure [dbo].[sp_podignixfnapraveno]
  105462.  
  105463. Go
  105464. CREATE PROCEDURE sp_PodigniXFNapraveno
  105465.     @Sifra_Napraveno    smallint
  105466. AS
  105467.     SELECT * FROM XFNapraveno
  105468.     WHERE Sifra_Napraveno = @Sifra_Napraveno
  105469.  
  105470.  
  105471.  
  105472. Go
  105473. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfoblast]'))
  105474. drop procedure [dbo].[sp_podignixfoblast]
  105475.  
  105476. Go
  105477. CREATE PROCEDURE sp_PodigniXFOblast
  105478.     @Sifra_Oblast    smallint
  105479. AS
  105480.     SELECT * FROM XFOblast
  105481.     WHERE Sifra_Oblast = @Sifra_Oblast
  105482.  
  105483.  
  105484.  
  105485. Go
  105486. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfoddel]'))
  105487. drop procedure [dbo].[sp_podignixfoddel]
  105488.  
  105489. Go
  105490. CREATE PROCEDURE sp_PodigniXFOddel
  105491.     @Sifra_Oddel    smallint
  105492. AS
  105493.     SELECT * FROM XFOddel
  105494.     WHERE Sifra_Oddel = @Sifra_Oddel
  105495.  
  105496.  
  105497.  
  105498. Go
  105499. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfpredmet]'))
  105500. drop procedure [dbo].[sp_podignixfpredmet]
  105501.  
  105502. Go
  105503. CREATE PROCEDURE sp_PodigniXFPredmet
  105504.        @Broj_Predmet INT
  105505. AS
  105506.     SELECT P.*,  TP.ImeTipPredmet, O.ImeOblast, I.ImeIzvrs, S.ImeStatusPredmet
  105507.     FROM XFPredmet P
  105508.     Left Outer Join XFTipPredmet TP On TP.Sifra_TipPredmet=P.Sifra_TipPredmet
  105509.     Left Outer Join XFOblast O On O.Sifra_Oblast=P.Sifra_Oblast
  105510.     Left Outer Join XFIzvrsitel I On I.Sifra_Izvrs=P.Sifra_Izvrs
  105511.     Left Outer Join XFStatusPredmet S On S.Sifra_StatusPredmet=P.Sifra_StatusPredmet
  105512.     WHERE Broj_Predmet = @Broj_Predmet
  105513.  
  105514.  
  105515. Go
  105516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfslednobaranje]'))
  105517. drop procedure [dbo].[sp_podignixfslednobaranje]
  105518.  
  105519. Go
  105520. CREATE PROCEDURE sp_PodigniXFSlednoBaranje
  105521.     @Sifra_VidBaranje        smallint
  105522. AS
  105523.     Select SB.Sifra_VidBaranje, SB.Sifra_VidBaranje_Sledno, VB.ImeVidBaranje as ImeVidBaranje_Sledno, SB.Zabrana
  105524.     From XFSlednoBaranje SB
  105525.     Left Outer Join XFVidBaranje VB On VB.Sifra_VidBaranje=SB.Sifra_VidBaranje_Sledno
  105526.     Where SB.Sifra_VidBaranje=@Sifra_VidBaranje
  105527.  
  105528.  
  105529.  
  105530. Go
  105531. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfstatusbaranje]'))
  105532. drop procedure [dbo].[sp_podignixfstatusbaranje]
  105533.  
  105534. Go
  105535. CREATE PROCEDURE sp_PodigniXFStatusBaranje
  105536.     @Sifra_StatusBaranje    smallint
  105537. AS
  105538.     SELECT * FROM XFStatusBaranje
  105539.     WHERE Sifra_StatusBaranje = @Sifra_StatusBaranje
  105540.  
  105541.  
  105542.  
  105543. Go
  105544. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfstatuspredmet]'))
  105545. drop procedure [dbo].[sp_podignixfstatuspredmet]
  105546.  
  105547. Go
  105548. CREATE PROCEDURE sp_PodigniXFStatusPredmet
  105549.     @Sifra_StatusPredmet    smallint
  105550. AS
  105551.     SELECT * FROM XFStatusPredmet
  105552.     WHERE Sifra_StatusPredmet = @Sifra_StatusPredmet
  105553.  
  105554.  
  105555.  
  105556. Go
  105557. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixftippredmet]'))
  105558. drop procedure [dbo].[sp_podignixftippredmet]
  105559.  
  105560. Go
  105561. CREATE PROCEDURE sp_PodigniXFTipPredmet
  105562.     @Sifra_TipPredmet    smallint
  105563. AS
  105564.     SELECT * FROM XFTipPredmet
  105565.     WHERE Sifra_TipPredmet = @Sifra_TipPredmet
  105566.  
  105567.  
  105568.  
  105569. Go
  105570. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfvidbaranje]'))
  105571. drop procedure [dbo].[sp_podignixfvidbaranje]
  105572.  
  105573. Go
  105574. CREATE PROCEDURE sp_PodigniXFVidBaranje
  105575.     @Sifra_VidBaranje    smallint
  105576. AS
  105577.     SELECT * FROM XFVidBaranje
  105578.     WHERE Sifra_VidBaranje = @Sifra_VidBaranje
  105579.  
  105580.  
  105581.  
  105582. Go
  105583. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfvidbarizvrs]'))
  105584. drop procedure [dbo].[sp_podignixfvidbarizvrs]
  105585.  
  105586. Go
  105587. CREATE PROCEDURE sp_PodigniXFVidBarIzvrs
  105588.     @Sifra_VidBaranje    smallint
  105589. AS
  105590.     Select VB.Sifra_VidBaranje, VB.Sifra_Izvrs, I.ImeIzvrs, VB.Sifra_Oddel, ImeOddel, VB.Zabrana 
  105591.     From XFVidBarIzvrs VB
  105592.     Left Outer Join XFIzvrsitel I On I.Sifra_Izvrs=VB.Sifra_Izvrs
  105593.     Left Outer Join XFOddel O On O.Sifra_Oddel=VB.Sifra_Oddel
  105594.     Where Sifra_VidBaranje=@Sifra_VidBaranje
  105595.  
  105596.  
  105597. Go
  105598. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_podignixfvraboddel]'))
  105599. drop procedure [dbo].[sp_podignixfvraboddel]
  105600.  
  105601. Go
  105602. CREATE PROCEDURE sp_PodigniXFVrabOddel
  105603.     @Sifra_Izvrs    int
  105604. --    @Sifra_Oddel    smallint
  105605. AS
  105606.     SELECT *, O.ImeOddel 
  105607.     FROM XFVrabOddel V
  105608.     Left Outer Join XFOddel O On O.Sifra_Oddel=V.Sifra_Oddel
  105609.     WHERE Sifra_Izvrs = @Sifra_Izvrs-- AND Sifra_Oddel = @Sifra_Oddel
  105610.  
  105611.  
  105612. Go
  105613. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polni_optzalpooe_od_promet]'))
  105614. drop procedure [dbo].[sp_polni_optzalpooe_od_promet]
  105615.  
  105616. Go
  105617.  
  105618.  
  105619. CREATE   PROCEDURE SP_Polni_OptZalPoOe_Od_Promet
  105620.     @Sifra_Oe    smallint, 
  105621.     @Datum_Od    smalldatetime,
  105622.     @Datum_Do    smalldatetime,
  105623.     @Min_Denovi    smallint,
  105624.     @Max_Denovi    smallint,
  105625.     @Insertiraj    char(1) = 'D'
  105626.  
  105627. AS
  105628.  
  105629.     Create Table #Prod
  105630.     (
  105631.      Sifra_Art    varchar(20),
  105632.      Prodazba    decimal(18, 6),
  105633.      DnevnaProd     decimal(18, 6),
  105634.      Min_Dat    smalldatetime,
  105635.      Max_Dat    smalldatetime,
  105636.      Denovi        int
  105637.     )
  105638.  
  105639.     Declare @SSQL2 varchaR(3000)
  105640.  
  105641.     insert into #PRod
  105642.     (Sifra_Art, Prodazba, DnevnaProd, Min_Dat, Max_Dat, Denovi)
  105643.         Select S.Sifra_Art, Sum(S.Kolic), 0, Min(S.Datum_Dok), Max(S.Datum_Dok), 0
  105644.         From Stavr S
  105645.         INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art 
  105646.         Where S.Sifra_Oe = @Sifra_Oe And S.VlIzl = 'I'
  105647.             and S.Sifra_DOk = 100
  105648.             And S.Datum_Dok >= @Datum_Od and S.Datum_Dok <= @Datum_Do
  105649.             and (K.SmatUsl is null or K.SmatUsl <> 'U')
  105650.             and (K.Lokacija is null or K.Lokacija <> 'P')
  105651.         group by S.Sifra_Art
  105652.  
  105653.     Update #Prod
  105654.     set Denovi = datediff (d, Min_Dat, Max_Dat) + 1
  105655.     where Min_Dat is not null and Max_Dat is not null
  105656.  
  105657.     Update #Prod
  105658.     set DnevnaProd = Prodazba / Denovi
  105659.     where Denovi > 60
  105660.  
  105661.     if @Insertiraj = 'D'
  105662.         insert into OptZalPoOe
  105663.         (Sifra_Oe, Sifra_Art, MinZal, MaxZal, OptZal)
  105664.         select @Sifra_Oe, Sifra_Art, 
  105665.             ceiling(DnevnaProd * @Min_Denovi),
  105666.             ceiling(DnevnaProd * @Max_Denovi), 0
  105667.         from #Prod
  105668.     else
  105669.         select @Sifra_Oe, Sifra_Art, 
  105670.             ceiling(DnevnaProd * @Min_Denovi),
  105671.             ceiling(DnevnaProd * @Max_Denovi), 0,
  105672.             Min_Dat, Max_Dat, Denovi
  105673.         from #Prod
  105674.  
  105675.  
  105676.  
  105677.  
  105678. Go
  105679. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polniakciipromostatemp]'))
  105680. drop procedure [dbo].[sp_polniakciipromostatemp]
  105681.  
  105682. Go
  105683. CREATE procedure sp_PolniAkciiPromoStaTemp
  105684.     @Sifra_art_paket varchar(20)
  105685. as
  105686.     Declare @Br as smallint
  105687.     Set @Br = (select count(*) from AkciiPromoStaTemp Where Sifra_art_paket= @Sifra_art_paket)
  105688.  
  105689.     If @Br = 0 
  105690.         insert into AkciiPromoStaTemp
  105691.         select *, 1
  105692.         from AkciiPromoSta
  105693.         Where Sifra_art_paket= @Sifra_art_paket
  105694.  
  105695.  
  105696.  
  105697. Go
  105698. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polnianfinoddrugabaza]'))
  105699. drop procedure [dbo].[sp_polnianfinoddrugabaza]
  105700.  
  105701. Go
  105702.  
  105703.  
  105704.  
  105705. CREATE       PROCEDURE sp_PolniAnFinOdDrugaBaza
  105706.     @BazaOd    varchar(15),
  105707.     @Kto        char(10),
  105708.     @Sifra_Za    char(1),
  105709.     @Datum_Od    smalldatetime,
  105710.     @Vo_Sifra_Nal    varchar(5),
  105711.     @Vo_Broj_Nal    varchar(10),
  105712.     @Vo_Dat_Nal    smalldatetime,
  105713.     @Prefix_ZaBr    varchar(3),
  105714.     @Datum_Do_SmeniBr smalldatetime
  105715. AS
  105716. Declare @SSQL varchar(3000)
  105717. Declare @iPrefix as integer
  105718. SET @iPrefix = Cast(@Prefix_ZaBr as smallint) * 1000000
  105719. --prvo tie sto se so golemi broevi (veke ednas prefrleni)
  105720. SET @SSQL = 'INSERT INTO AnFinDok (Sifra_OE, Sifra_Dok, Broj_Dok, BrojDok, Sifra_Nal, Broj_Nal,Datum_Nal, Kto, Sifra_Za, Sifra_Kup, Dolzi, Pobaruva,
  105721.     Plateno_Dolzi, Plateno_Pobar, Dev_Dolzi, Dev_Pobaruva, Dev_Plat_Dolzi, Dev_Plat_Pobar, Kurs, KojaVal, Sifra_Pat, Datum_Dok, 
  105722.     Datum_Vnes, Datum_Izm, Rok, Sifra_Oper, Sifra_OpIz, Danok1, Danok2, Opis, Broj_Kalk, Odnadvor, TipDevKalk, Sifra_Nivo, SlobText,
  105723.     Kto_Kontra, Prenesen, Zaklucen, Sifra_Div, Sifra_DokDK)
  105724. SELECT Sifra_OE, Sifra_Dok, Broj_Dok, BrojDok, '+@Vo_Sifra_Nal+', ' +@Vo_Broj_Nal+',''' +cast(@Vo_Dat_Nal as varchar(30))+
  105725.     ''', Kto, Sifra_Za, Sifra_Kup, Dolzi, Pobaruva, 0, 0, Dev_Dolzi, Dev_Pobaruva, 0, 0, Kurs, KojaVal, Sifra_Pat, Datum_Dok, 
  105726.     Datum_Vnes, Datum_Izm, Rok, Sifra_Oper, Sifra_OpIz, Danok1, Danok2, Opis,
  105727.     Broj_Kalk, Odnadvor, TipDevKalk, Sifra_Nivo, SlobText,     Kto_Kontra, Prenesen, Zaklucen, Sifra_Div, Sifra_DokDK FROM ' + @BazaOd + '..AnFinDok 
  105728.     WHERE Kto=''' +@Kto + ''' AND Sifra_Za=' + @Sifra_Za + ' AND Datum_Dok>''' + Cast(@Datum_Od as varchar(30))+
  105729.     ''' AND Datum_Dok<='''+cast(@Datum_Do_SmeniBr as varchar(30))+''' AND Broj_Dok>999999'
  105730. EXEC (@SSQL)
  105731. --posle godinasnite so nov prefix
  105732. SET @SSQL = 'INSERT INTO AnFinDok (Sifra_OE, Sifra_Dok, Broj_Dok, BrojDok, Sifra_Nal, Broj_Nal,Datum_Nal, Kto, Sifra_Za, Sifra_Kup, Dolzi, Pobaruva,
  105733.     Plateno_Dolzi, Plateno_Pobar, Dev_Dolzi, Dev_Pobaruva, Dev_Plat_Dolzi, Dev_Plat_Pobar, Kurs, KojaVal, Sifra_Pat, Datum_Dok, 
  105734.     Datum_Vnes, Datum_Izm, Rok, Sifra_Oper, Sifra_OpIz, Danok1, Danok2, Opis, Broj_Kalk, Odnadvor, TipDevKalk, Sifra_Nivo, SlobText,
  105735.     Kto_Kontra, Prenesen, Zaklucen, Sifra_Div, Sifra_DokDK)
  105736. SELECT Sifra_OE, Sifra_Dok, '+cast(@iPrefix as varchar(10))+'+Broj_Dok, BrojDok, '+@Vo_Sifra_Nal+', ' +@Vo_Broj_Nal+',''' +cast(@Vo_Dat_Nal as varchar(30))+
  105737.     ''', Kto, Sifra_Za, Sifra_Kup, Dolzi, Pobaruva, 0, 0, Dev_Dolzi, Dev_Pobaruva, 0, 0, Kurs, KojaVal, Sifra_Pat, Datum_Dok, 
  105738.     Datum_Vnes, Datum_Izm, Rok, Sifra_Oper, Sifra_OpIz, Danok1, Danok2, substring(Opis+'+''' n.''+'+'Cast(Sifra_Nal as varchar(3))+'+'''/'''+'+cast(Broj_Nal as varchar(8)),1,40),
  105739.     Broj_Kalk, Odnadvor, TipDevKalk, Sifra_Nivo, SlobText,     Kto_Kontra, Prenesen, Zaklucen, Sifra_Div, Sifra_DokDK FROM ' + @BazaOd + '..AnFinDok 
  105740.     WHERE Kto=''' +@Kto + ''' AND Sifra_Za=' + @Sifra_Za + ' AND Datum_Dok>''' + Cast(@Datum_Od as varchar(30))+ 
  105741.     ''' AND Datum_Dok<='''+cast(@Datum_Do_SmeniBr as varchar(30))+''' AND Broj_Dok<1000000'
  105742. EXEC (@SSQL)
  105743. SET @SSQL = 'INSERT INTO AnFinDok (Sifra_OE, Sifra_Dok, Broj_Dok, BrojDok, Sifra_Nal, Broj_Nal,Datum_Nal, Kto, Sifra_Za, Sifra_Kup, Dolzi, Pobaruva,
  105744.     Plateno_Dolzi, Plateno_Pobar, Dev_Dolzi, Dev_Pobaruva, Dev_Plat_Dolzi, Dev_Plat_Pobar, Kurs, KojaVal, Sifra_Pat, Datum_Dok, 
  105745.     Datum_Vnes, Datum_Izm, Rok, Sifra_Oper, Sifra_OpIz, Danok1, Danok2, Opis, Broj_Kalk, Odnadvor, TipDevKalk, Sifra_Nivo, SlobText,
  105746.     Kto_Kontra, Prenesen, Zaklucen, Sifra_Div, Sifra_DokDK)
  105747. SELECT Sifra_OE, Sifra_Dok, Broj_Dok, BrojDok, Sifra_Nal, Broj_Nal, Datum_Nal, 
  105748.     Kto, Sifra_Za, Sifra_Kup, Dolzi, Pobaruva, 0, 0, Dev_Dolzi, Dev_Pobaruva, 0, 0, Kurs, KojaVal, Sifra_Pat, Datum_Dok, 
  105749.     Datum_Vnes, Datum_Izm, Rok, Sifra_Oper, Sifra_OpIz, Danok1, Danok2, Opis,
  105750.     Broj_Kalk, Odnadvor, TipDevKalk, Sifra_Nivo, SlobText, Kto_Kontra, Prenesen, Zaklucen, Sifra_Div, Sifra_DokDK FROM ' + @BazaOd + '..AnFinDok 
  105751.     WHERE Kto=''' +@Kto + ''' AND Sifra_Za=' + @Sifra_Za + ' AND Datum_Dok>'''+cast(@Datum_Do_SmeniBr as varchar(30))+''' '
  105752. EXEC (@SSQL)
  105753.  
  105754.  
  105755.  
  105756.  
  105757. Go
  105758. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polnianzatvoddrugabaza]'))
  105759. drop procedure [dbo].[sp_polnianzatvoddrugabaza]
  105760.  
  105761. Go
  105762.  
  105763.  
  105764.  
  105765.  
  105766. CREATE      PROCEDURE sp_PolniAnZatvOdDrugaBaza
  105767.     @BazaOd    varchar(15),
  105768.     @Sifra_Za    char(1),
  105769.     @Kto        char(10),
  105770.     @Datum_Do    smalldatetime,
  105771.     @Datum_Do_SmeniBr smalldatetime,
  105772.     @Prefix_ZaBr    varchar(3) 
  105773. AS
  105774. Declare @SSQL varchar(3000)    
  105775. CREATE TABLE #TmpZatv
  105776. (AnID1        int,
  105777. AnId2        int,
  105778. Iznos        decimal(18,2),
  105779. Sif_OE1        smallint,
  105780. Sif_Dok1    smallint,
  105781. Br_Dok1    int,
  105782. Dat_Dok1    smalldatetime,
  105783. Dolzi_1        decimal(18,4),
  105784. Pobar_1    decimal(18,4),
  105785. Tip_Dok1    char(1),
  105786. Br_Dok1Nov    int,
  105787. AnID1Nov    int,
  105788. Sif_OE2        smallint,
  105789. Sif_Dok2    smallint,
  105790. Br_Dok2    int,
  105791. Dat_Dok2    smalldatetime,
  105792. Dolzi_2        decimal(18,4),
  105793. Pobar_2    decimal(18,4),
  105794. Tip_Dok2    char(1),
  105795. Br_Dok2Nov    int,
  105796. AnID2Nov    int,
  105797. Sifra_Kup    char(6))
  105798. SET @SSQL = 'SELECT AnId1, AnID2, Iznos FROM '+@BazaOd+'..AnZatv
  105799. WHERE AnID1 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok>'''+cast(@Datum_Do as varchar(30))+''') 
  105800. OR AnID2 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok >'''+cast(@Datum_Do as varchar(30))+''')'
  105801. INSERT INTO #TmpZatv (Anid1, AnId2, Iznos) EXEC (@SSQL)
  105802. SET @SSQL = 'UPDATE #TmpZatv SET Sif_OE1= F.Sifra_OE, Sif_Dok1 = F.Sifra_Dok, Br_Dok1 = F.Broj_Dok, Dat_DOk1 = F.Datum_Dok, 
  105803. Dolzi_1=F.Dolzi, Pobar_1=F.Pobaruva, Sifra_Kup=F.Sifra_Kup
  105804. FROM '+@BazaOd+'..AnFinDok F WHERE #TmpZatv.AnID1 = F.AnID'
  105805. EXEC (@SSQL)
  105806. SET @SSQL = 'UPDATE #TmpZatv SET Sif_OE2= F.Sifra_OE, Sif_Dok2 = F.Sifra_Dok, Br_Dok2 = F.Broj_Dok, Dat_Dok2 = F.Datum_Dok,
  105807. Dolzi_2=F.Dolzi, Pobar_2=F.Pobaruva, Sifra_Kup=F.Sifra_Kup
  105808. FROM '+@BazaOd+'..AnFinDok F WHERE #TmpZatv.AnID2 = F.AnID'
  105809. EXEC (@SSQL)
  105810. --UPDATE #TmpZatv SET Tip_Dok1 = T.TipDok FROM TipDok T WHERE #TmpZatv.Sif_Dok1=T.Sifra_Dok
  105811. --UPDATE #TmpZatv SET Tip_Dok2 = T.TipDok FROM TipDok T WHERE #TmpZatv.Sif_Dok2=T.Sifra_Dok
  105812. Declare @iPrefix as integer
  105813. SET @iPrefix = Cast(@Prefix_ZaBr as smallint) * 1000000
  105814.                             --dok. koj go zadrzuvaat brojot i dok.so golem broj, da so OR
  105815. UPDATE #TmpZatv SET Br_Dok1Nov = Br_Dok1 WHERE Dat_Dok1>@Datum_Do_SmeniBr OR Br_Dok1>999999
  105816. UPDATE #TmpZatv SET Br_Dok2Nov = Br_Dok2 WHERE Dat_Dok2>@Datum_Do_SmeniBr OR Br_Dok2>999999
  105817. UPDATE #TmpZatv SET Br_Dok1Nov = @iPrefix + Br_Dok1 WHERE Dat_Dok1>@Datum_Do AND Dat_Dok1<=@Datum_Do_SmeniBr AND Br_Dok1<1000000
  105818. UPDATE #TmpZatv SET Br_Dok2Nov = @iPrefix + Br_Dok2 WHERE Dat_Dok2>@Datum_Do AND Dat_Dok2<=@Datum_Do_SmeniBr AND Br_Dok2<1000000
  105819. UPDATE #TmpZatv SET AnID1Nov = F.AnID FROM AnFinDok F WHERE #TmpZatv.Sif_OE1=F.Sifra_OE AND #TmpZatv.Sif_Dok1=F.Sifra_Dok AND #TmpZatv.Br_Dok1Nov=F.Broj_Dok
  105820. UPDATE #TmpZatv SET AnID2Nov = F.AnID FROM AnFinDok F WHERE #TmpZatv.Sif_OE2=F.Sifra_OE AND #TmpZatv.Sif_Dok2=F.Sifra_Dok AND #TmpZatv.Br_Dok2Nov=F.Broj_Dok
  105821. CREATE TABLE #TmpPocSost
  105822. (Sifra_Kup    char(6),
  105823.  AnID_Dol    int,
  105824.  Dolzi_D    decimal(18,4),
  105825.  AnID_Pob    int,
  105826.  Pobar_P    Decimal(18,4) )
  105827. INSERT INTO #TmpPocSost (Sifra_Kup) SELECT DISTINCT Sifra_Kup FROM #TmpZatv
  105828. UPDATE #TmpPocSost SET AnID_Dol=F.AnID, Dolzi_D=F.Dolzi FROM AnFinDok F WHERE #TmpPocSost.Sifra_Kup=F.Sifra_Kup AND F.Dolzi<>0 AND 
  105829. F.Datum_Dok=@Datum_Do AND F.Kto = @Kto AND F.Sifra_Za = @Sifra_Za
  105830. UPDATE #TmpPocSost SET AnID_Pob=F.AnID, Pobar_P=F.Pobaruva FROM AnFinDok F WHERE #TmpPocSost.Sifra_Kup=F.Sifra_Kup AND F.Pobaruva<>0 AND 
  105831. F.Datum_Dok=@Datum_Do AND F.Kto = @Kto AND F.Sifra_Za = @Sifra_Za
  105832. UPDATE #TmpZatv SET AnID1Nov = P.AnID_Dol FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105833. #TmpZatv.AnID1Nov IS NULL AND #TmpZatv.Dat_Dok1<=@Datum_Do AND 
  105834. ((#TmpZatv.Dolzi_1>0 AND P.Dolzi_D>0) OR (#TmpZatv.Dolzi_1<0 AND P.Dolzi_D<0) OR (#TmpZatv.Pobar_1<0 AND P.Dolzi_D>0) OR (#TmpZatv.Pobar_1>0 AND P.Dolzi_D<0))
  105835. UPDATE #TmpZatv SET AnID1Nov = P.AnID_Pob FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105836. #TmpZatv.AnID1Nov IS NULL AND #TmpZatv.Dat_Dok1<=@Datum_Do AND 
  105837. ((#TmpZatv.Pobar_1>0 AND P.Pobar_P>0) OR (#TmpZatv.Pobar_1<0 AND P.Pobar_P<0) OR (#TmpZatv.Dolzi_1<0 AND P.Pobar_P>0) OR (#TmpZatv.Dolzi_1>0 AND P.Pobar_P<0))
  105838. UPDATE #TmpZatv SET AnID2Nov = P.AnID_Dol FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105839. #TmpZatv.AnID2Nov IS NULL AND #TmpZatv.Dat_Dok2<=@Datum_Do AND 
  105840. ((#TmpZatv.Dolzi_2>0 AND P.Dolzi_D>0) OR (#TmpZatv.Dolzi_2<0 AND P.Dolzi_D<0) OR (#TmpZatv.Pobar_2<0 AND P.Dolzi_D>0) OR (#TmpZatv.Pobar_2>0 AND P.Dolzi_D<0))
  105841. UPDATE #TmpZatv SET AnID2Nov = P.AnID_Pob FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105842. #TmpZatv.AnID2Nov IS NULL AND #TmpZatv.Dat_Dok2<=@Datum_Do AND 
  105843. ((#TmpZatv.Pobar_2>0 AND P.Pobar_P>0) OR (#TmpZatv.Pobar_2<0 AND P.Pobar_P<0) OR (#TmpZatv.Dolzi_2<0 AND P.Pobar_P>0) OR (#TmpZatv.Dolzi_2>0 AND P.Pobar_P<0))
  105844. INSERT INTO AnZatv(AnID1, AnID2, Iznos, DatumZatv, Iznos_Dev)
  105845. SELECT AnID1Nov, AnID2Nov, Iznos, GETDATE(), Iznos FROM #TmpZatv
  105846. WHERE AnID1Nov IS NOT NULL AND AnID2Nov IS NOT NULL        --Datum_Dok1>@Datum_Do AND Datum_Dok2>@Datum_Do
  105847.  
  105848.  
  105849.  
  105850. Go
  105851. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polnianzatvoddrugabazasamopoc]'))
  105852. drop procedure [dbo].[sp_polnianzatvoddrugabazasamopoc]
  105853.  
  105854. Go
  105855.  
  105856.  
  105857. CREATE       PROCEDURE sp_PolniAnZatvOdDrugaBazaSamoPoc
  105858.     @BazaOd    varchar(15),
  105859.     @Sifra_Za    char(1),
  105860.     @Kto        char(10),
  105861.     @Datum_Do    smalldatetime
  105862. AS
  105863. Declare @SSQL varchar(3000)    
  105864. CREATE TABLE #TmpZatv
  105865. (AnID1        int,
  105866. AnId2        int,
  105867. Iznos        decimal(18,2),
  105868. Sif_OE1        smallint,
  105869. Sif_Dok1    smallint,
  105870. Br_Dok1    int,
  105871. Dat_Dok1    smalldatetime,
  105872. Dolzi_1        decimal(18,4),
  105873. Pobar_1    decimal(18,4),
  105874. Tip_Dok1    char(1),
  105875. Br_Dok1Nov    int,
  105876. AnID1Nov    int,
  105877. Sif_OE2        smallint,
  105878. Sif_Dok2    smallint,
  105879. Br_Dok2    int,
  105880. Dat_Dok2    smalldatetime,
  105881. Dolzi_2        decimal(18,4),
  105882. Pobar_2    decimal(18,4),
  105883. Tip_Dok2    char(1),
  105884. Br_Dok2Nov    int,
  105885. AnID2Nov    int,
  105886. Sifra_Kup    char(6))
  105887. SET @SSQL = 'SELECT AnId1, AnID2, Iznos FROM '+@BazaOd+'..AnZatv
  105888. WHERE AnID1 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok>'''+cast(@Datum_Do as varchar(30))+''') 
  105889. AND AnID2 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok <='''+cast(@Datum_Do as varchar(30))+''')'
  105890. INSERT INTO #TmpZatv (Anid1, AnId2, Iznos) EXEC (@SSQL)
  105891. UPDATE #TmpZatv SET Dolzi_1=0, Dolzi_2=0, Pobar_1=0, Pobar_2=0
  105892. SET @SSQL = 'SELECT AnId1, AnID2, Iznos FROM '+@BazaOd+'..AnZatv
  105893. WHERE AnID2 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok>'''+cast(@Datum_Do as varchar(30))+''') 
  105894. AND AnID1 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok <='''+cast(@Datum_Do as varchar(30))+''')'
  105895. INSERT INTO #TmpZatv (Anid1, AnId2, Iznos) EXEC (@SSQL)
  105896. SET @SSQL = 'UPDATE #TmpZatv SET Sif_OE1= F.Sifra_OE, Sif_Dok1 = F.Sifra_Dok, Br_Dok1 = F.Broj_Dok, Dat_DOk1 = F.Datum_Dok, 
  105897. Dolzi_1=F.Dolzi, Pobar_1=F.Pobaruva, Sifra_Kup=F.Sifra_Kup, Br_Dok1Nov = Br_Dok1, AnID1Nov=AnID1
  105898. FROM '+@BazaOd+'..AnFinDok F WHERE #TmpZatv.AnID1 = F.AnID AND F.Datum_Dok >'''+cast(@Datum_Do as varchar(30))+''''
  105899. EXEC (@SSQL)
  105900. SET @SSQL = 'UPDATE #TmpZatv SET Sif_OE2= F.Sifra_OE, Sif_Dok2 = F.Sifra_Dok, Br_Dok2 = F.Broj_Dok, Dat_Dok2 = F.Datum_Dok,
  105901. Dolzi_2=F.Dolzi, Pobar_2=F.Pobaruva, Sifra_Kup=F.Sifra_Kup, Br_Dok2Nov = Br_Dok2, AnID2Nov=AnID2
  105902. FROM '+@BazaOd+'..AnFinDok F WHERE #TmpZatv.AnID2 = F.AnID AND F.Datum_Dok >'''+cast(@Datum_Do as varchar(30))+''''
  105903. EXEC (@SSQL)
  105904. CREATE TABLE #TmpPocSost
  105905. (Sifra_Kup    char(6),
  105906.  AnID_Dol    int,
  105907.  Dolzi_D    decimal(18,4),
  105908.  AnID_Pob    int,
  105909.  Pobar_P    Decimal(18,4) )
  105910. INSERT INTO #TmpPocSost (Sifra_Kup) SELECT DISTINCT Sifra_Kup FROM #TmpZatv
  105911. UPDATE #TmpPocSost SET AnID_Dol=F.AnID, Dolzi_D=F.Dolzi FROM AnFinDok F WHERE #TmpPocSost.Sifra_Kup=F.Sifra_Kup AND F.Dolzi<>0 AND 
  105912. F.Datum_Dok=@Datum_Do AND F.Kto = @Kto AND F.Sifra_Za = @Sifra_Za
  105913. UPDATE #TmpPocSost SET AnID_Pob=F.AnID, Pobar_P=F.Pobaruva FROM AnFinDok F WHERE #TmpPocSost.Sifra_Kup=F.Sifra_Kup AND F.Pobaruva<>0 AND 
  105914. F.Datum_Dok=@Datum_Do AND F.Kto = @Kto AND F.Sifra_Za = @Sifra_Za
  105915. UPDATE #TmpZatv SET AnID1Nov = P.AnID_Dol FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105916. #TmpZatv.AnID1Nov IS NULL AND #TmpZatv.Dat_Dok1 IS NULL AND 
  105917. ((#TmpZatv.Pobar_2>0 AND P.Dolzi_D>0) OR (#TmpZatv.Pobar_2<0 AND P.Dolzi_D<0) OR (#TmpZatv.Dolzi_2<0 AND P.Dolzi_D>0) OR (#TmpZatv.Dolzi_2>0 AND P.Dolzi_D<0))
  105918. UPDATE #TmpZatv SET AnID1Nov = P.AnID_Pob FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105919. #TmpZatv.AnID1Nov IS NULL AND #TmpZatv.Dat_Dok1 IS NULL AND 
  105920. ((#TmpZatv.Dolzi_2>0 AND P.Pobar_P>0) OR (#TmpZatv.Dolzi_2<0 AND P.Pobar_P<0) OR (#TmpZatv.Pobar_2<0 AND P.Pobar_P>0) OR (#TmpZatv.Pobar_2>0 AND P.Pobar_P<0))
  105921. UPDATE #TmpZatv SET AnID2Nov = P.AnID_Dol FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105922. #TmpZatv.AnID2Nov IS NULL AND #TmpZatv.Dat_Dok2 IS NULL AND 
  105923. ((#TmpZatv.Pobar_1>0 AND P.Dolzi_D>0) OR (#TmpZatv.Pobar_1<0 AND P.Dolzi_D<0) OR (#TmpZatv.Dolzi_1<0 AND P.Dolzi_D>0) OR (#TmpZatv.Dolzi_1>0 AND P.Dolzi_D<0))
  105924. UPDATE #TmpZatv SET AnID2Nov = P.AnID_Pob FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND
  105925. #TmpZatv.AnID2Nov IS NULL AND #TmpZatv.Dat_Dok2 IS NULL AND 
  105926. ((#TmpZatv.Dolzi_1>0 AND P.Pobar_P>0) OR (#TmpZatv.Dolzi_1<0 AND P.Pobar_P<0) OR (#TmpZatv.Pobar_1<0 AND P.Pobar_P>0) OR (#TmpZatv.Pobar_1>0 AND P.Pobar_P<0))
  105927. --select * from #tmppocsost
  105928. --select * from #tmpzatv
  105929. INSERT INTO AnZatv(AnID1, AnID2, Iznos, DatumZatv, Iznos_Dev)
  105930. SELECT AnID1Nov, AnID2Nov, Iznos, GETDATE(), Iznos FROM #TmpZatv
  105931. WHERE AnID1Nov IS NOT NULL AND AnID2Nov IS NOT NULL        --Datum_Dok1>@Datum_Do AND Datum_Dok2>@Datum_Do
  105932.  
  105933.  
  105934.  
  105935. Go
  105936. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polnianzatvoddrugabazasamopocoe]'))
  105937. drop procedure [dbo].[sp_polnianzatvoddrugabazasamopocoe]
  105938.  
  105939. Go
  105940.  
  105941.  
  105942.  
  105943.  
  105944. CREATE      PROCEDURE sp_PolniAnZatvOdDrugaBazaSamoPocOE
  105945.     @BazaOd    varchar(15),
  105946.     @Sifra_Za    char(1),
  105947.     @Kto        char(10),
  105948.     @Datum_Do    smalldatetime
  105949. AS
  105950. Declare @SSQL varchar(3000)    
  105951. CREATE TABLE #TmpZatv
  105952. (AnID1        int,
  105953. AnId2        int,
  105954. Iznos        decimal(18,2),
  105955. Sif_OE1        smallint,
  105956. Sif_Dok1    smallint,
  105957. Br_Dok1    int,
  105958. Dat_Dok1    smalldatetime,
  105959. Dolzi_1        decimal(18,4),
  105960. Pobar_1    decimal(18,4),
  105961. Tip_Dok1    char(1),
  105962. Br_Dok1Nov    int,
  105963. AnID1Nov    int,
  105964. Sif_OE2        smallint,
  105965. Sif_Dok2    smallint,
  105966. Br_Dok2    int,
  105967. Dat_Dok2    smalldatetime,
  105968. Dolzi_2        decimal(18,4),
  105969. Pobar_2    decimal(18,4),
  105970. Tip_Dok2    char(1),
  105971. Br_Dok2Nov    int,
  105972. AnID2Nov    int,
  105973. Sifra_Kup    char(6))
  105974. SET @SSQL = 'SELECT AnId1, AnID2, Iznos FROM '+@BazaOd+'..AnZatv
  105975. WHERE AnID1 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok>'''+cast(@Datum_Do as varchar(30))+''') 
  105976. AND AnID2 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok <='''+cast(@Datum_Do as varchar(30))+''')'
  105977. INSERT INTO #TmpZatv (Anid1, AnId2, Iznos) EXEC (@SSQL)
  105978. UPDATE #TmpZatv SET Dolzi_1=0, Dolzi_2=0, Pobar_1=0, Pobar_2=0
  105979. SET @SSQL = 'SELECT AnId1, AnID2, Iznos FROM '+@BazaOd+'..AnZatv
  105980. WHERE AnID2 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok>'''+cast(@Datum_Do as varchar(30))+''') 
  105981. AND AnID1 IN (SELECT AnID FROM '+@BazaOd+'..AnFinDok WHERE Sifra_Za='+@Sifra_Za+' AND Kto='''+@Kto+''' AND Datum_Dok <='''+cast(@Datum_Do as varchar(30))+''')'
  105982. INSERT INTO #TmpZatv (Anid1, AnId2, Iznos) EXEC (@SSQL)
  105983. SET @SSQL = 'UPDATE #TmpZatv SET Sif_OE1= F.Sifra_OE, Sif_Dok1 = F.Sifra_Dok, Br_Dok1 = F.Broj_Dok, Dat_DOk1 = F.Datum_Dok, 
  105984. Dolzi_1=F.Dolzi, Pobar_1=F.Pobaruva, Sifra_Kup=F.Sifra_Kup, Br_Dok1Nov = Br_Dok1, AnID1Nov=AnID1
  105985. FROM '+@BazaOd+'..AnFinDok F WHERE #TmpZatv.AnID1 = F.AnID AND F.Datum_Dok >'''+cast(@Datum_Do as varchar(30))+''''
  105986. EXEC (@SSQL)
  105987. SET @SSQL = 'UPDATE #TmpZatv SET Sif_OE2= F.Sifra_OE, Sif_Dok2 = F.Sifra_Dok, Br_Dok2 = F.Broj_Dok, Dat_Dok2 = F.Datum_Dok,
  105988. Dolzi_2=F.Dolzi, Pobar_2=F.Pobaruva, Sifra_Kup=F.Sifra_Kup, Br_Dok2Nov = Br_Dok2, AnID2Nov=AnID2
  105989. FROM '+@BazaOd+'..AnFinDok F WHERE #TmpZatv.AnID2 = F.AnID AND F.Datum_Dok >'''+cast(@Datum_Do as varchar(30))+''''
  105990. EXEC (@SSQL)
  105991. CREATE TABLE #TmpPocSost
  105992. (Sifra_Kup    char(6),
  105993.  Sifra_OE    smallint,
  105994.  AnID_Dol    int,
  105995.  Dolzi_D    decimal(18,4),
  105996.  AnID_Pob    int,
  105997.  Pobar_P    Decimal(18,4) )
  105998.  
  105999. INSERT INTO #TmpPocSost (Sifra_Kup, Sifra_OE) SELECT DISTINCT Sifra_Kup, Sif_OE1 FROM #TmpZatv WHERE Sif_OE1 IS NOT NULL
  106000. UNION SELECT DISTINCT Sifra_Kup, Sif_OE2 FROM #TmpZatv WHERE Sif_OE2 IS NOT NULL
  106001.  
  106002. UPDATE #TmpPocSost SET AnID_Dol=F.AnID, Dolzi_D=F.Dolzi FROM AnFinDok F WHERE #TmpPocSost.Sifra_Kup=F.Sifra_Kup AND F.Dolzi<>0 AND 
  106003. F.Datum_Dok=@Datum_Do AND F.Kto = @Kto AND F.Sifra_Za = @Sifra_Za AND #TmpPocSost.Sifra_OE=F.Sifra_OE
  106004. UPDATE #TmpPocSost SET AnID_Pob=F.AnID, Pobar_P=F.Pobaruva FROM AnFinDok F WHERE #TmpPocSost.Sifra_Kup=F.Sifra_Kup AND F.Pobaruva<>0 AND 
  106005. F.Datum_Dok=@Datum_Do AND F.Kto = @Kto AND F.Sifra_Za = @Sifra_Za AND #TmpPocSost.Sifra_OE=F.Sifra_OE
  106006.  
  106007. UPDATE #TmpZatv SET AnID1Nov = P.AnID_Dol FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND #TmpZatv.Sif_OE2 = P.Sifra_OE AND
  106008. #TmpZatv.AnID1Nov IS NULL AND #TmpZatv.Dat_Dok1 IS NULL AND 
  106009. ((#TmpZatv.Pobar_2>0 AND P.Dolzi_D>0) OR (#TmpZatv.Pobar_2<0 AND P.Dolzi_D<0) OR (#TmpZatv.Dolzi_2<0 AND P.Dolzi_D>0) OR (#TmpZatv.Dolzi_2>0 AND P.Dolzi_D<0))
  106010.  
  106011. UPDATE #TmpZatv SET AnID1Nov = P.AnID_Pob FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND #TmpZatv.Sif_OE2 = P.Sifra_OE AND
  106012. #TmpZatv.AnID1Nov IS NULL AND #TmpZatv.Dat_Dok1 IS NULL AND 
  106013. ((#TmpZatv.Dolzi_2>0 AND P.Pobar_P>0) OR (#TmpZatv.Dolzi_2<0 AND P.Pobar_P<0) OR (#TmpZatv.Pobar_2<0 AND P.Pobar_P>0) OR (#TmpZatv.Pobar_2>0 AND P.Pobar_P<0))
  106014.  
  106015. UPDATE #TmpZatv SET AnID2Nov = P.AnID_Dol FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND #TmpZatv.Sif_OE1 = P.Sifra_OE AND
  106016. #TmpZatv.AnID2Nov IS NULL AND #TmpZatv.Dat_Dok2 IS NULL AND 
  106017. ((#TmpZatv.Pobar_1>0 AND P.Dolzi_D>0) OR (#TmpZatv.Pobar_1<0 AND P.Dolzi_D<0) OR (#TmpZatv.Dolzi_1<0 AND P.Dolzi_D>0) OR (#TmpZatv.Dolzi_1>0 AND P.Dolzi_D<0))
  106018.  
  106019. UPDATE #TmpZatv SET AnID2Nov = P.AnID_Pob FROM #TmpPocSost P WHERE #TmpZatv.Sifra_Kup = P.Sifra_Kup AND #TmpZatv.Sif_OE1 = P.Sifra_OE AND
  106020. #TmpZatv.AnID2Nov IS NULL AND #TmpZatv.Dat_Dok2 IS NULL AND 
  106021. ((#TmpZatv.Dolzi_1>0 AND P.Pobar_P>0) OR (#TmpZatv.Dolzi_1<0 AND P.Pobar_P<0) OR (#TmpZatv.Pobar_1<0 AND P.Pobar_P>0) OR (#TmpZatv.Pobar_1>0 AND P.Pobar_P<0))
  106022. --select * from #tmppocsost
  106023. --select * from #tmpzatv
  106024. INSERT INTO AnZatv(AnID1, AnID2, Iznos, DatumZatv, Iznos_Dev)
  106025. SELECT AnID1Nov, AnID2Nov, Iznos, GETDATE(), Iznos FROM #TmpZatv
  106026. WHERE AnID1Nov IS NOT NULL AND AnID2Nov IS NOT NULL        --Datum_Dok1>@Datum_Do AND Datum_Dok2>@Datum_Do
  106027.  
  106028.  
  106029.  
  106030.  
  106031.  
  106032. Go
  106033. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polniknigatrgzv]'))
  106034. drop procedure [dbo].[sp_polniknigatrgzv]
  106035.  
  106036. Go
  106037. CREATE PROCEDURE sp_PolniKnigaTrgZV
  106038.  
  106039.     @Datum_Do    smalldatetime
  106040. AS
  106041.  
  106042.     Declare @Datum_Od as smalldatetime
  106043.  
  106044.     Set @Datum_Od = (select max(datum_dok) from knigatrg where broj like '100-10%') -- proverka do koj datum e vneseno
  106045.     
  106046.     If @Datum_Od Is Null
  106047.         Set @Datum_Od = '2000-01-01'
  106048.  
  106049.     Set @Datum_Od = DateAdd(Day, 1, @Datum_Od)
  106050.  
  106051.     Create Table #Tab
  106052.     (
  106053.      Brojac        int identity(1,1),
  106054.      InterBr    int,
  106055.      Sifra_Oe    smallint,
  106056.      Sifra_Dok    smallint,
  106057.      Broj_Dok    int,
  106058.      Datum_Dok    smalldatetime,
  106059.      Toc200    decimal(18,4),
  106060.      NabVred    decimal(18,4)
  106061.     )
  106062.     Insert Into #Tab(Sifra_Oe, Sifra_Dok, Broj_Dok, Datum_Dok, Toc200, NabVred) 
  106063.     Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Toc200, Sum(S.Kolic*S.NabCena)
  106064.     From Dokr D
  106065.     Inner Join Stavr S On S.DokrID=D.DokrID
  106066.     Where D.Sifra_oe=100 And D.Sifra_Dok in(106,107) and D.Datum_Dok >= @Datum_Od and D.Datum_Dok <= @Datum_Do
  106067.     Group by D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok, D.Toc200
  106068.     Order By D.Datum_Dok
  106069.  
  106070.     Declare @MaxKT as int
  106071.     Set @MaxKT = (Select max(interenBr) From KnigaTrg)   
  106072.  
  106073.     Update #Tab Set InterBr=Brojac+@MaxKT
  106074.  
  106075.  
  106076.     Insert Into KnigaTrg (InterenBr, Datum_Dok, Datum_Knz, Broj, Opis, ProdVredn, VkalkDan, ObvrskaDan, VrednProd, Sifra_OE, NabVred)
  106077.     Select InterBr, Datum_Dok, Datum_Dok, '100-' + Cast(Sifra_Dok as varchar(6)) + '/' + Cast(Broj_Dok as varchar(6)), ' ', Toc200, 0, 0, 0, 1, NabVred From #Tab order by interbr
  106078.  
  106079. Go
  106080. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polnimaticoddrugabaza]'))
  106081. drop procedure [dbo].[sp_polnimaticoddrugabaza]
  106082.  
  106083. Go
  106084.  
  106085.  
  106086.  
  106087.  
  106088.  
  106089.  
  106090. CREATE            PROCEDURE sp_PolniMaticOdDrugaBaza
  106091.      @BazaOd as varchar(15)
  106092. As
  106093. Declare @SSQL as varchar(8000)
  106094. Set @SSQL = 'Insert Into Konfig Select * From ' + @BazaOd + '..Konfig '
  106095. Exec(@SSQL) 
  106096. Set @SSQL = 'Insert Into Grupi Select * From ' + @BazaOd + '..Grupi '
  106097. Exec(@SSQL) 
  106098. Set @SSQL = 'Insert Into PodGrupi Select * From ' + @BazaOd + '..PodGrupi '
  106099. Exec(@SSQL) 
  106100. Set @SSQL = 'Insert Into Drugo1 Select * From ' + @BazaOd + '..Drugo1 '
  106101. Exec(@SSQL) 
  106102. Set @SSQL = 'Insert Into Drugo2 Select * From ' + @BazaOd + '..Drugo2 '
  106103. Exec(@SSQL) 
  106104. Set @SSQL = 'Insert Into Drugo3 Select * From ' + @BazaOd + '..Drugo3 '
  106105. Exec(@SSQL) 
  106106. Set @SSQL = 'Insert Into Drugo4 Select * From ' + @BazaOd + '..Drugo4 '
  106107. Exec(@SSQL) 
  106108. Set @SSQL = 'Insert Into Drugo5 Select * From ' + @BazaOd + '..Drugo5 '
  106109. Exec(@SSQL) 
  106110. Set @SSQL = 'Insert Into Drugo6 Select * From ' + @BazaOd + '..Drugo6 '
  106111. Exec(@SSQL)
  106112. Set @SSQL = 'Insert Into Drugo7 Select * From ' + @BazaOd + '..Drugo7 '
  106113. Exec(@SSQL)
  106114. Set @SSQL = 'Insert Into AtcKodovi Select * From ' + @BazaOd + '..AtcKodovi'
  106115. Exec(@SSQL)     
  106116. Set @SSQL = 'Insert Into DrgPodel1 Select * From ' + @BazaOd + '..DrgPodel1 '
  106117. Exec(@SSQL) 
  106118. Set @SSQL = 'Insert Into DrgPodel Select * From ' + @BazaOd + '..DrgPodel '
  106119. Exec(@SSQL) 
  106120. Set @SSQL = 'Insert Into Firparal Select * From ' + @BazaOd + '..Firparal '
  106121. Exec(@SSQL) 
  106122. Set @SSQL = 'Insert Into FDrugo1 Select * From ' + @BazaOd + '..FDrugo1 '
  106123. Exec(@SSQL) 
  106124. Set @SSQL = 'Insert Into FDrugo2 Select * From ' + @BazaOd + '..FDrugo2 '
  106125. Exec(@SSQL) 
  106126. Set @SSQL = 'Insert Into FDrugo3 Select * From ' + @BazaOd + '..FDrugo3 '
  106127. Exec(@SSQL)
  106128. Set @SSQL = 'Insert Into KDrugo1 Select * From ' + @BazaOd + '..KDrugo1 '
  106129. Exec(@SSQL) 
  106130. Set @SSQL = 'Insert Into KDrugo2 Select * From ' + @BazaOd + '..KDrugo2 '
  106131. Exec(@SSQL) 
  106132. Set @SSQL = 'Insert Into KDrugo3 Select * From ' + @BazaOd + '..KDrugo3 '
  106133. Exec(@SSQL) 
  106134. Set @SSQL = 'Insert Into KDrugo4 Select * From ' + @BazaOd + '..KDrugo4 '
  106135. Exec(@SSQL) 
  106136. Set @SSQL = 'Insert Into KDrugo5 Select * From ' + @BazaOd + '..KDrugo5 '
  106137. Exec(@SSQL)  
  106138. Set @SSQL = 'Insert Into KDrugo6 Select * From ' + @BazaOd + '..KDrugo6 '
  106139. Exec(@SSQL)
  106140. Set @SSQL = 'Insert Into KDrugo7 Select * From ' + @BazaOd + '..KDrugo7 '
  106141. Exec(@SSQL)
  106142. Set @SSQL = 'Insert Into GRegion Select * From ' + @BazaOd + '..GRegion '
  106143. Exec(@SSQL) 
  106144. Set @SSQL = 'Insert Into GTipKup Select * From ' + @BazaOd + '..GTipKup '
  106145. Exec(@SSQL) 
  106146. Set @SSQL = 'Insert Into Grad Select * From ' + @BazaOd + '..Grad '
  106147. Exec(@SSQL) 
  106148. Set @SSQL = 'Insert Into Orged Select * From ' + @BazaOd + '..Orged '
  106149. Exec(@SSQL)  
  106150. Set @SSQL = 'Insert Into GrOrg Select * From ' + @BazaOd + '..GrOrg '
  106151. Exec(@SSQL)  
  106152. Set @SSQL = 'Insert Into SGrOrg Select * From ' + @BazaOd + '..SGrOrg '
  106153. Exec(@SSQL)  
  106154. Set @SSQL = 'Insert Into KrsLista Select * From ' + @BazaOd + '..KrsLista '
  106155. Exec(@SSQL)  
  106156. Set @SSQL = 'Insert Into KrsVaznost Select * From ' + @BazaOd + '..KrsVaznost '
  106157. Exec(@SSQL)  
  106158. Set @SSQL = 'Insert Into FixTekst Select * From ' + @BazaOd + '..FixTekst '
  106159. Exec(@SSQL)  
  106160. Set @SSQL = 'Insert Into FixTekstN Select * From ' + @BazaOd + '..FixTekstN '
  106161. Exec(@SSQL)  
  106162. Set @SSQL = 'Insert Into TipNal Select * From ' + @BazaOd + '..TipNal '
  106163. Exec(@SSQL)
  106164. Set @SSQL = 'Insert Into TipDok Select * From ' + @BazaOd + '..TipDok '
  106165. Exec(@SSQL)  
  106166. Set @SSQL = 'Insert Into DDVStapki Select * From ' + @BazaOd + '..DDVStapki '
  106167. Exec(@SSQL)  
  106168. Set @SSQL = 'Insert Into KonfMeni Select * From ' + @BazaOd + '..KonfMeni '
  106169. Exec(@SSQL)  
  106170. Set @SSQL = 'Insert Into Marketi Select * From ' + @BazaOd + '..Marketi '
  106171. Exec(@SSQL) 
  106172. Set @SSQL = 'Insert Into Masini Select * From ' + @BazaOd + '..Masini '
  106173. Exec(@SSQL)
  106174. Set @SSQL = 'Insert Into Meniedno Select * From ' + @BazaOd + '..Meniedno '
  106175. Exec(@SSQL)
  106176. Set @SSQL = 'Insert Into NasiBoi Select * From ' + @BazaOd + '..NasiBoi '
  106177. Exec(@SSQL)
  106178. Set @SSQL = 'Insert Into Nivo Select * From ' + @BazaOd + '..Nivo '
  106179. Exec(@SSQL)
  106180. Set @SSQL = 'Insert Into menipokor Select * From ' + @BazaOd + '..menipokor '
  106181. Exec(@SSQL)
  106182. Set @SSQL = 'Insert Into Operacii Select * From ' + @BazaOd + '..Operacii '
  106183. Exec(@SSQL)
  106184. Set @SSQL = 'Insert Into CBroevi Select * From ' + @BazaOd + '..CBroevi '
  106185. Exec(@SSQL)
  106186. Set @SSQL = 'Insert Into CenPoPodgr Select * From ' + @BazaOd + '..CenPoPodgr '
  106187. Exec(@SSQL)
  106188. Set @SSQL = 'Insert Into TipPerCenovnik Select * From ' + @BazaOd + '..TipPerCenovnik '
  106189. Exec(@SSQL)
  106190. Set @SSQL = 'Insert Into TipPerCenVaziZa Select * From ' + @BazaOd + '..TipPerCenVaziZa '
  106191. Exec(@SSQL)
  106192. Set @SSQL = 'Insert Into PrivKoncept Select * From ' + @BazaOd + '..PrivKoncept '
  106193. Exec(@SSQL)
  106194. Set @SSQL = 'Insert Into SkrDok Select * From ' + @BazaOd + '..SkrDok '
  106195. Exec(@SSQL)
  106196. Set @SSQL = 'Insert Into Operatori Select * From ' + @BazaOd + '..Operatori '
  106197. Exec(@SSQL)
  106198. Set @SSQL = 'Insert Into Privilegii Select * From ' + @BazaOd + '..Privilegii '
  106199. Exec(@SSQL)
  106200. Set @SSQL = 'Insert Into PrivilOrgTip Select * From ' + @BazaOd + '..PrivilOrgTip '
  106201. Exec(@SSQL)
  106202. Set @SSQL = 'Insert Into FiTabela Select * From ' + @BazaOd + '..FiTabela '
  106203. Exec(@SSQL)
  106204. Set @SSQL = 'Insert Into FiStavki Select * From ' + @BazaOd + '..FiStavki '
  106205. Exec(@SSQL)
  106206. Set @SSQL = 'Insert Into FiKonta Select * From ' + @BazaOd + '..FiKonta '
  106207. Exec(@SSQL)
  106208. Set @SSQL = 'Insert Into FiZbir Select * From ' + @BazaOd + '..FiZbir '
  106209. Exec(@SSQL)
  106210. --Set @SSQL = 'Insert Into FiTabela (Ime, Ime2, Kto_Anal_Raspr, Kto_Anal, Egzaktno_KtoRaspr)
  106211. --        SELECT Ime, Ime2, Kto_Anal_Raspr, Kto_Anal, Egzaktno_KtoRaspr FROM ' + @BazaOd + '..FiTabela '
  106212. --Exec(@SSQL)                Dijana 28.07.05
  106213. Set @SSQL = 'Insert Into Logo(TipObr, Sifra_OE, Sifra_Dok, ImeFile, Picture, SirinaLogo, VisinaLogo, LeftLogo, TopLogo, ImePret, Telefon, Banka, Ziro, DDVBroj, EMail, TextDolu1, TextDolu2, TextDolu3, TextDolu4, TextDolu5, TextDolu6, FontI_ImePret, FontSi_ImePret, FontSt_ImePret, FontI_Nsl, FontSi_Nsl, FontSt_Nsl, FontI_EMail, FontSi_EMail, FontSt_EMail, FontI_Komint, FontSi_Komint, FontSt_Komint, TopKomint, LeftKomint, SirinaKomint, VisinaKomint, FontI_SlTekst, FontSi_SlTekst, FontSt_SlTekst, TopSlTekst, LeftSlTekst, SirinaSlTekst, VisinaSlTekst, FontI_Dospeva, FontSi_Dospeva, FontSt_Dospeva, FontI_Dolu1, FontSi_Dolu1, FontSt_Dolu1, FontI_Dolu2, FontSi_Dolu2, FontSt_Dolu2, Adresa, Mesto, PrikPakuv, PrikKomint, LeftOff, AltSifArt, AltImeArt, DecKolic, DecCena, Kasa, IznSoBukvi, TextDolu7, LeftDolu4, TopDolu4, LeftDolu5, TopDolu5, LeftDolu6, TopDolu6, LeftDolu7, TopDolu7, PatnikDaNe, PrikBarKod, PrikSubPoTarifi, MemoGore, VisMemoGore, MemoDolu, VisMemoDolu, PresmPak,
  106214.                 PrikNeispArt, PrikKontrBr, DopTekst, LeftDopTxt, TopDopTxt, SpecFormaTekst, PrikTezina)
  106215.         SELECT TipObr, Sifra_OE, Sifra_Dok, ImeFile, Picture, SirinaLogo, VisinaLogo, LeftLogo, TopLogo, ImePret, Telefon, Banka, Ziro, DDVBroj, EMail, TextDolu1, TextDolu2, TextDolu3, TextDolu4, TextDolu5, TextDolu6, FontI_ImePret, FontSi_ImePret, FontSt_ImePret, FontI_Nsl, FontSi_Nsl, FontSt_Nsl, FontI_EMail, FontSi_EMail, FontSt_EMail, FontI_Komint, FontSi_Komint, FontSt_Komint, TopKomint, LeftKomint, SirinaKomint, VisinaKomint, FontI_SlTekst, FontSi_SlTekst, FontSt_SlTekst, TopSlTekst, LeftSlTekst, SirinaSlTekst, VisinaSlTekst, FontI_Dospeva, FontSi_Dospeva, FontSt_Dospeva, FontI_Dolu1, FontSi_Dolu1, FontSt_Dolu1, FontI_Dolu2, FontSi_Dolu2, FontSt_Dolu2, Adresa, Mesto, PrikPakuv, PrikKomint, LeftOff, AltSifArt, AltImeArt, DecKolic, DecCena, Kasa, IznSoBukvi, TextDolu7, LeftDolu4, TopDolu4, LeftDolu5, TopDolu5, LeftDolu6, TopDolu6, LeftDolu7, TopDolu7, PatnikDaNe, PrikBarKod, PrikSubPoTarifi, MemoGore, VisMemoGore, MemoDolu, VisMemoDolu, PresmPak,
  106216.                 PrikNeispArt, PrikKontrBr, DopTekst, LeftDopTxt, TopDopTxt, SpecFormaTekst, PrikTezina From ' + @BazaOd + '..Logo '
  106217. Exec(@SSQL)
  106218. Set @SSQL = 'Insert Into Kstapki Select * From ' + @BazaOd + '..Kstapki '
  106219. Exec(@SSQL)
  106220. Set @SSQL = 'Insert Into UprosRedosled Select * From ' + @BazaOd + '..UprosRedosled '
  106221. Exec(@SSQL)
  106222. Set @SSQL = 'Insert Into Banki Select * From ' + @BazaOd + '..Banki '
  106223. Exec(@SSQL)
  106224. Set @SSQL = 'Insert Into Site1sif Select * From ' + @BazaOd + '..Site1sif '
  106225. Exec(@SSQL)
  106226. Set @SSQL = 'Insert Into Site11si Select * From ' + @BazaOd + '..Site11si '
  106227. Exec(@SSQL)
  106228. Set @SSQL = 'Insert Into UcesDenovi Select * From ' + @BazaOd + '..UcesDenovi '
  106229. Exec(@SSQL)
  106230. Set @SSQL = 'Insert Into Tarifi Select * From ' + @BazaOd + '..Tarifi '
  106231. Exec(@SSQL)
  106232. Set @SSQL = 'Insert Into TipKomint Select * From ' + @BazaOd + '..TipKomint '
  106233. Exec(@SSQL)
  106234. Set @SSQL = 'Insert Into GrNar Select * From ' + @BazaOd + '..GrNar '
  106235. Exec(@SSQL)
  106236. Set @SSQL = 'Insert Into TipNarac Select * From ' + @BazaOd + '..TipNarac '
  106237. Exec(@SSQL)
  106238. Set @SSQL = 'Insert Into AltIm Select * From ' + @BazaOd + '..AltIm '
  106239. Exec(@SSQL)
  106240. Set @SSQL = 'Insert Into BankSmetki Select * From ' + @BazaOd + '..BankSmetki '
  106241. Exec(@SSQL)
  106242. Set @SSQL = 'Insert Into SifAkc Select * From ' + @BazaOd + '..SifAkc '
  106243. Exec(@SSQL)
  106244. Set @SSQL = 'Insert Into Klas Select * From ' + @BazaOd + '..Klas '
  106245. Exec(@SSQL)
  106246. Set @SSQL = 'Insert Into Sint Select * From ' + @BazaOd + '..Sint '
  106247. Exec(@SSQL)
  106248. Set @SSQL = 'Insert Into Anal Select * From ' + @BazaOd + '..Anal '
  106249. Exec(@SSQL)
  106250. Set @SSQL = 'Insert Into Rabotnik Select * From ' + @BazaOd + '..Rabotnik '
  106251. Exec(@SSQL)
  106252. Set @SSQL = 'Insert Into Divizii Select * From ' + @BazaOd + '..Divizii '
  106253. Exec(@SSQL)
  106254. Set @SSQL = 'Insert Into VidProdObj Select * From ' + @BazaOd + '..VidProdObj '
  106255. Exec(@SSQL)
  106256. Set @SSQL = 'Insert Into Patnici Select * From ' + @BazaOd + '..Patnici '
  106257. Exec(@SSQL)
  106258. Set @SSQL = 'Insert Into Komint Select * From ' + @BazaOd + '..Komint '
  106259. Exec(@SSQL)
  106260. Delete From KObjekti
  106261. Set @SSQL = 'Insert Into KObjekti Select * From ' + @BazaOd + '..KObjekti '--KO2 Where KO2.Sifra_Obj <> 0 '
  106262. Exec(@SSQL)
  106263. Declare @BrPM int
  106264. CREATE TABLE #TmpPM (BrPM int)
  106265. Set @SSQL = 'Select COUNT(*) From ' + @BazaOd + '..ProdMest'
  106266. INSERT INTO #TmpPM Exec(@SSQL)
  106267. SELECT @BrPM = BrPM FROM #TmpPM
  106268. IF @BrPM>0
  106269. Begin        --ova pagase ne znam z's, pa zatoa se vovedoa gornite komplikacii
  106270.     Set @SSQL = 'Insert Into ProdMest Select * From ' + @BazaOd + '..ProdMest '
  106271.     Exec(@SSQL)
  106272. End
  106273. Set @SSQL = 'Insert Into KBanki Select * From ' + @BazaOd + '..KBanki '
  106274. Exec(@SSQL)
  106275. Set @SSQL = 'Insert Into KatAmb Select * From ' + @BazaOd + '..KatAmb '
  106276. Exec(@SSQL)
  106277. Set @SSQL = 'Insert Into Katart Select * From ' + @BazaOd + '..Katart '
  106278. Exec(@SSQL)
  106279. Set @SSQL = 'Insert Into ABarKod (Sifra_Art, Nom, Drugo2) Select Sifra_Art, Nom, Drugo2 From ' + @BazaOd + '..ABarKod '
  106280. Exec(@SSQL) 
  106281. Set @SSQL = 'Insert Into CenGrOrg Select * From ' + @BazaOd + '..CenGrOrg '
  106282. Exec(@SSQL)
  106283. Set @SSQL = 'Insert Into Cenovnik Select * From ' + @BazaOd + '..Cenovnik '
  106284. Exec(@SSQL)
  106285. Set @SSQL = 'Insert Into PerCenCeni Select * From ' + @BazaOd + '..PerCenCeni '
  106286. Exec(@SSQL)
  106287. Set @SSQL = 'Insert Into Sostav Select * From ' + @BazaOd + '..Sostav '
  106288. Exec(@SSQL)
  106289. Set @SSQL = 'Insert Into NadvKor Select * From ' + @BazaOd + '..NadvKor '
  106290. Exec(@SSQL)
  106291. Set @SSQL = 'Insert Into AvtKont Select * From ' + @BazaOd + '..AvtKont '
  106292. Exec(@SSQL)
  106293. Declare @BrSP int
  106294. CREATE TABLE #Tmp (BrSP int)
  106295. Set @SSQL = 'Select COUNT(*) From ' + @BazaOd + '..StaProdMest'
  106296. INSERT INTO #Tmp Exec(@SSQL)
  106297. SELECT @BrSP = BrSP FROM #Tmp    
  106298. IF @BrSP>0
  106299. Begin        --ova pagase ne znam z's, pa zatoa se vovedoa gornite komplikacii
  106300.     Set @SSQL = 'Insert Into StaProdMest Select * From ' + @BazaOd + '..StaProdMest WHERE Sifra_Mest IS NOT NULL'
  106301.     Exec(@SSQL)
  106302. End
  106303. Set @SSQL = 'Insert Into KonfCeni Select * From ' + @BazaOd + '..KonfCeni '
  106304. Exec(@SSQL)
  106305. Set @SSQL = 'Insert Into ProizvTrosFix Select * From ' + @BazaOd + '..ProizvTrosFix '
  106306. Exec(@SSQL)
  106307. Set @SSQL = 'Insert Into DnIzvSkr Select * From ' + @BazaOd + '..DnIzvSkr '
  106308. Exec(@SSQL)
  106309. Set @SSQL = 'Insert Into GrAnal Select * From ' + @BazaOd + '..GrAnal '
  106310. Exec(@SSQL)
  106311. Set @SSQL = 'Insert Into NacPlak Select * From ' + @BazaOd + '..NacPlak '
  106312. Exec(@SSQL)
  106313. Set @SSQL = 'Insert Into NivoCeniKartKor Select * From ' + @BazaOd + '..NivoCeniKartKor '
  106314. Exec(@SSQL)
  106315. Set @SSQL = 'Insert Into TipKartKor Select * From ' + @BazaOd + '..TipKartKor '
  106316. Exec(@SSQL)
  106317. Set @SSQL = 'Insert Into KartKor Select * From ' + @BazaOd + '..KartKor '
  106318. Exec(@SSQL)
  106319. Set @SSQL = 'Insert Into KartProm Select * From ' + @BazaOd + '..KartProm '
  106320. Exec(@SSQL)
  106321. Set @SSQL = 'Insert Into CenKartKor Select * From ' + @BazaOd + '..CenKartKor '
  106322. Exec(@SSQL)
  106323. Set @SSQL = 'Insert Into MozeVlez Select * From ' + @BazaOd + '..MozeVlez '
  106324. Exec(@SSQL)
  106325. Set @SSQL = 'Insert Into OptZalPoOe Select * From ' + @BazaOd + '..OptZalPoOe '
  106326. Exec(@SSQL)
  106327. Set @SSQL = 'Insert Into DozvObj Select * From ' + @BazaOd + '..DozvObj '
  106328. Exec(@SSQL)
  106329. Set @SSQL = 'Insert Into PodelArtKomUsl Select * From ' + @BazaOd + '..PodelArtKomUsl '
  106330. Exec(@SSQL)
  106331. Set @SSQL = 'Insert Into IstBlokKom Select * From ' + @BazaOd + '..IstBlokKom '
  106332. Exec(@SSQL)
  106333. Set @SSQL = 'Insert Into GrupiOper Select * From ' + @BazaOd + '..GrupiOper '
  106334. Exec(@SSQL)
  106335. Set @SSQL = 'Insert Into OperacInter Select * From ' + @BazaOd + '..OperacInter '
  106336. Exec(@SSQL)
  106337. Set @SSQL = 'Insert Into PrivOper Select * From ' + @BazaOd + '..PrivOper '
  106338. Exec(@SSQL)
  106339. Set @SSQL = 'Insert Into DepozAmb Select * From ' + @BazaOd + '..DepozAmb '
  106340. Exec(@SSQL)
  106341. Set @SSQL = 'Insert Into KonfIzvArt Select * From ' + @BazaOd + '..KonfIzvArt '
  106342. Exec(@SSQL)
  106343. Set @SSQL = 'Insert Into KonfDokPrenos Select * From ' + @BazaOd + '..KonfDokPrenos '
  106344. Exec(@SSQL)
  106345. Set @SSQL = 'Insert Into CeniPlanski Select * From ' + @BazaOd + '..CeniPlanski '
  106346. Exec(@SSQL)
  106347. Set @SSQL = 'Insert Into RelacIspor Select * From ' + @BazaOd + '..RelacIspor '
  106348. Exec(@SSQL)
  106349. Set @SSQL = 'Insert Into RelacIsporStav Select * From ' + @BazaOd + '..RelacIsporStav '
  106350. Exec(@SSQL)
  106351. Set @SSQL = 'Insert Into KonfAccr Select * From ' + @BazaOd + '..KonfAccr '
  106352. Exec(@SSQL)
  106353. Set @SSQL = 'Insert Into KatHier Select * From ' + @BazaOd + '..KatHier '
  106354. Exec(@SSQL)
  106355. Set @SSQL = 'Insert Into KatPrior_VidObj Select * From ' + @BazaOd + '..KatPrior_VidObj '
  106356. Exec(@SSQL)
  106357. Set @SSQL = 'Insert Into Usl_KolRab_Fra Select * From ' + @BazaOd + '..Usl_KolRab_Fra '
  106358. Exec(@SSQL)
  106359. Set @SSQL = 'Insert Into KomintPat Select * From ' + @BazaOd + '..KomintPat '
  106360. Exec(@SSQL)
  106361. Set @SSQL = 'Insert Into SostavKontr Select * From ' + @BazaOd + '..SostavKontr '
  106362. Exec(@SSQL)
  106363. Set @SSQL = 'Insert Into AkciiPromo Select * From ' + @BazaOd + '..AkciiPromo '
  106364. Exec(@SSQL)
  106365. Set @SSQL = 'Insert Into AkciiPromoSta Select * From ' + @BazaOd + '..AkciiPromoSta '
  106366. Exec(@SSQL)
  106367. Set @SSQL = 'Insert Into Fazi Select * From ' + @BazaOd + '..Fazi '
  106368. Exec(@SSQL)
  106369. Set @SSQL = 'Insert Into Hilzni Select * From ' + @BazaOd + '..Hilzni '
  106370. Exec(@SSQL)
  106371. Set @SSQL = 'Insert Into Smeni Select * From ' + @BazaOd + '..Smeni '
  106372. Exec(@SSQL)
  106373. Set @SSQL = 'Insert Into KonfMeniUser Select * From ' + @BazaOd + '..KonfMeniUser '
  106374. Exec(@SSQL)
  106375. Set @SSQL = 'Insert Into KatGAmb Select * From ' + @BazaOd + '..KatGAmb '
  106376. Exec(@SSQL)
  106377. Set @SSQL = 'Insert Into GrpMarza Select * From ' + @BazaOd + '..GrpMarza '
  106378. Exec(@SSQL)
  106379. Set @SSQL = 'Insert Into KonfSlaganje Select * From ' + @BazaOd + '..KonfSlaganje '
  106380. Exec(@SSQL)
  106381. --za prenos vo tx, pusti prvo xx_NabCeniTx koja ja popolnuva PomNabC2005
  106382. Set @SSQL = 'Insert Into StariNabavniC Select * From ' + @BazaOd + '..PomNabC2005 '    --ova neka bide posledno zasto go nema negde
  106383. Exec(@SSQL)
  106384. Set @SSQL = 'Insert Into GrupaWeb Select * From ' + @BazaOd + '..GrupaWeb '
  106385. Exec(@SSQL)
  106386. Set @SSQL = 'Insert Into PodgrWeb Select * From ' + @BazaOd + '..PodgrWeb '
  106387. Exec(@SSQL)
  106388. Set @SSQL = 'Insert Into Periodi Select * From ' + @BazaOd + '..Periodi '
  106389. Exec(@SSQL)
  106390. Set @SSQL = 'Insert Into GrPat Select * From ' + @BazaOd + '..GrPat '
  106391. Exec(@SSQL)
  106392. Set @SSQL = 'Insert Into SGrPat Select * From ' + @BazaOd + '..SGrPat '
  106393. Exec(@SSQL)
  106394. Set @SSQL = 'Insert Into AvtKontArtMap Select * From ' + @BazaOd + '..AvtKontArtMap '
  106395. Exec(@SSQL)
  106396. Set @SSQL = 'Insert Into KonfMapWord Select * From ' + @BazaOd + '..KonfMapWord '
  106397. Exec(@SSQL)
  106398. Set @SSQL = 'Insert Into Udf_Izv Select * From ' + @BazaOd + '..Udf_Izv '
  106399. Exec(@SSQL)
  106400. Set @SSQL = 'Insert Into KatStatus Select * From ' + @BazaOd + '..KatStatus '
  106401. Exec(@SSQL)
  106402. Set @SSQL = 'Insert Into tmUslugi Select * From ' + @BazaOd + '..tmUslugi '
  106403. Exec(@SSQL)
  106404. Set @SSQL = 'Insert Into tmTarifModel Select * From ' + @BazaOd + '..tmTarifModel '
  106405. Exec(@SSQL)
  106406. Set @SSQL = 'Insert Into tmTel Select * From ' + @BazaOd + '..tmTel '
  106407. Exec(@SSQL)
  106408. Set @SSQL = 'Insert Into TipKatPakuv Select * From ' + @BazaOd + '..TipKatPakuv '
  106409. Exec(@SSQL)
  106410. Set @SSQL = 'Insert Into KatPakuv Select * From ' + @BazaOd + '..KatPakuv '
  106411. Exec(@SSQL)
  106412. Set @SSQL = 'Insert Into LstPartic Select * From ' + @BazaOd + '..LstPartic '
  106413. Exec(@SSQL)
  106414. Set @SSQL = 'Insert Into XFIzvrsitel Select * From ' + @BazaOd + '..XFIzvrsitel '
  106415. Exec(@SSQL)
  106416. Set @SSQL = 'Insert Into XFIzvrsitel Select * From ' + @BazaOd + '..XFIzvrsitel '
  106417. Exec(@SSQL)
  106418. Set @SSQL = 'Insert Into XFOddel Select * From ' + @BazaOd + '..XFOddel '
  106419. Exec(@SSQL)
  106420. Set @SSQL = 'Insert Into XFVrebOddel Select * From ' + @BazaOd + '..XFVrebOddel '
  106421. Exec(@SSQL)
  106422. Set @SSQL = 'Insert Into XFVidBaranje Select * From ' + @BazaOd + '..XFVidBaranje '
  106423. Exec(@SSQL)
  106424. Set @SSQL = 'Insert Into XFSlednoBaranje Select * From ' + @BazaOd + '..XFSlednoBaranje '
  106425. Exec(@SSQL)
  106426. Set @SSQL = 'Insert Into XFVidBarIzvrs Select * From ' + @BazaOd + '..XFVidBarIzvrs '
  106427. Exec(@SSQL)
  106428. Set @SSQL = 'Insert Into XFTipPredmet Select * From ' + @BazaOd + '..XFTipPredmet '
  106429. Exec(@SSQL)
  106430. Set @SSQL = 'Insert Into XFStatusPredmet Select * From ' + @BazaOd + '..XFStatusPredmet '
  106431. Exec(@SSQL)
  106432. Set @SSQL = 'Insert Into XFOblast Select * From ' + @BazaOd + '..XFOblast '
  106433. Exec(@SSQL)
  106434. Set @SSQL = 'Insert Into XFNapraveno Select * From ' + @BazaOd + '..XFNapraveno '
  106435. Exec(@SSQL)
  106436. Set @SSQL = 'Insert Into XFStatusBaranje Select * From ' + @BazaOd + '..XFStatusBaranje '
  106437. Exec(@SSQL)
  106438. Set @SSQL = 'Insert Into KonfMerenoVaga Select * From ' + @BazaOd + '..KonfMerenoVaga '
  106439. Exec(@SSQL)
  106440. Set @SSQL = 'Insert Into DeklArt Select * From ' + @BazaOd + '..DeklArt '
  106441. Exec(@SSQL)
  106442. Set @SSQL = 'Insert Into KartDepoz Select * From ' + @BazaOd + '..KartDepoz '
  106443. Exec(@SSQL)
  106444.  
  106445. --- za 2009
  106446. Set @SSQL = 'Insert Into AdrTaggy Select * From ' + @BazaOd + '..AdrTaggy  '
  106447. Exec(@SSQL)
  106448. Set @SSQL = 'Insert Into AmorGrp Select * From ' + @BazaOd + '..AmorGrp  '
  106449. Exec(@SSQL)
  106450. Set @SSQL = 'Insert Into VidVozila Select * From ' + @BazaOd + '..VidVozila  '
  106451. Exec(@SSQL)
  106452. Set @SSQL = 'Insert Into CenVidVozila Select * From ' + @BazaOd + '..CenVidVozila  '
  106453. Exec(@SSQL)
  106454. Set @SSQL = 'Insert Into GotovSurovOrg Select * From ' + @BazaOd + '..GotovSurovOrg  '
  106455. Exec(@SSQL)
  106456. Set @SSQL = 'Insert Into GrpIzbor Select * From ' + @BazaOd + '..GrpIzbor  '
  106457. Exec(@SSQL)
  106458. Set @SSQL = 'Insert Into GrpIzborNiza Select * From ' + @BazaOd + '..GrpIzborNiza  '
  106459. Exec(@SSQL)
  106460. Set @SSQL = 'Insert Into GSostav Select * From ' + @BazaOd + '..GSostav  '
  106461. Exec(@SSQL)
  106462. Set @SSQL = 'Insert Into InterniKart Select * From ' + @BazaOd + '..InterniKart  '
  106463. Exec(@SSQL)
  106464. Set @SSQL = 'Insert Into Karakterist Select * From ' + @BazaOd + '..Karakterist  '
  106465. Exec(@SSQL)
  106466. Set @SSQL = 'Insert Into TipKarakt Select * From ' + @BazaOd + '..TipKarakt  '
  106467. Exec(@SSQL)
  106468. Set @SSQL = 'Insert Into KatKarakt Select * From ' + @BazaOd + '..KatKarakt  '
  106469. Exec(@SSQL)
  106470. Set @SSQL = 'Insert Into KatAsortLista Select * From ' + @BazaOd + '..KatAsortLista  '
  106471. Exec(@SSQL)
  106472. Set @SSQL = 'Insert Into KatCombo Select * From ' + @BazaOd + '..KatCombo  '
  106473. Exec(@SSQL)
  106474. Set @SSQL = 'Insert Into KatOpcii Select * From ' + @BazaOd + '..KatOpcii  '
  106475. Exec(@SSQL)
  106476. Set @SSQL = 'Insert Into KatSliki Select * From ' + @BazaOd + '..KatSliki  '
  106477. Exec(@SSQL)
  106478. Set @SSQL = 'Insert Into KonfDat Select * From ' + @BazaOd + '..KonfDat  '
  106479. Exec(@SSQL)
  106480. Set @SSQL = 'Insert Into KonfLokPrn Select * From ' + @BazaOd + '..KonfLokPrn  '
  106481. Exec(@SSQL)
  106482. Set @SSQL = 'Insert Into KonfMerenoVaga Select * From ' + @BazaOd + '..KonfMerenoVaga  '
  106483. Exec(@SSQL)
  106484. Set @SSQL = 'Insert Into konfMoznosti Select * From ' + @BazaOd + '..konfMoznosti  '
  106485. Exec(@SSQL)
  106486. Set @SSQL = 'Insert Into KonfNasObjDok Select * From ' + @BazaOd + '..KonfNasObjDok  '
  106487. Exec(@SSQL)
  106488. Set @SSQL = 'Insert Into KonfNasObjMatic Select * From ' + @BazaOd + '..KonfNasObjMatic  '
  106489. Exec(@SSQL)
  106490. Set @SSQL = 'Insert Into KonfNasObjOpst Select * From ' + @BazaOd + '..KonfNasObjOpst  '
  106491. Exec(@SSQL)
  106492. Set @SSQL = 'Insert Into Lokacija Select * From ' + @BazaOd + '..Lokacija  '
  106493. Exec(@SSQL)
  106494. Set @SSQL = 'Insert Into MakroLok Select * From ' + @BazaOd + '..MakroLok  '
  106495. Exec(@SSQL)
  106496. Set @SSQL = 'Insert Into MikroLok Select * From ' + @BazaOd + '..MikroLok  '
  106497. Exec(@SSQL)
  106498. Set @SSQL = 'Insert Into OsnSred Select * From ' + @BazaOd + '..OsnSred  '
  106499. Exec(@SSQL)
  106500. Set @SSQL = 'Insert Into PerCeniProm Select * From ' + @BazaOd + '..PerCeniProm  '
  106501. Exec(@SSQL)
  106502. Set @SSQL = 'Insert Into PlanPat Select * From ' + @BazaOd + '..PlanPat WHERE Godina >' + cast(Year(GetDate()) as char(4))
  106503. Exec(@SSQL)
  106504. Set @SSQL = 'Insert Into Prevoznik Select * From ' + @BazaOd + '..Prevoznik  '
  106505. Exec(@SSQL)
  106506. Set @SSQL = 'Insert Into RKasGrupaOperac Select * From ' + @BazaOd + '..RKasGrupaOperac  '
  106507. Exec(@SSQL)
  106508. Set @SSQL = 'Insert Into RKasi Select * From ' + @BazaOd + '..RKasi  '
  106509. Exec(@SSQL)
  106510. Set @SSQL = 'Insert Into RKasOperac Select * From ' + @BazaOd + '..RKasOperac  '
  106511. Exec(@SSQL)
  106512. Set @SSQL = 'Insert Into RKasPrivil Select * From ' + @BazaOd + '..RKasPrivil  '
  106513. Exec(@SSQL)
  106514. Set @SSQL = 'Insert Into SifKupArt Select * From ' + @BazaOd + '..SifKupArt  '
  106515. Exec(@SSQL)
  106516. Set @SSQL = 'Insert Into TekstSmetki Select * From ' + @BazaOd + '..TekstSmetki  '
  106517. Exec(@SSQL)
  106518. Set @SSQL = 'Insert Into UDF_Stavki Select * From ' + @BazaOd + '..UDF_Stavki  '
  106519. Exec(@SSQL)
  106520. Set @SSQL = 'Insert Into Usl_Komerc_Per Select * From ' + @BazaOd + '..Usl_Komerc_Per  '
  106521. Exec(@SSQL)
  106522.  
  106523.  
  106524. Set @SSQL = 'Insert Into KomSliki Select * From ' + @BazaOd + '..KomSliki'
  106525. Exec(@SSQL)
  106526. Set @SSQL = 'Insert Into BonSpec Select * From ' + @BazaOd + '..BonSpec'
  106527. Exec(@SSQL)
  106528. Set @SSQL = 'Insert Into KumulSki Select * From ' + @BazaOd + '..KumulSki'
  106529. Exec(@SSQL)
  106530. Set @SSQL = 'Insert Into ApKonfigParam Select * From ' + @BazaOd + '..ApKonfigParam'
  106531. Exec(@SSQL)
  106532. Set @SSQL = 'Insert Into KObjSliki Select * From ' + @BazaOd + '..KObjSliki'
  106533. Exec(@SSQL)
  106534. Set @SSQL = 'Insert Into CRRKodovi Select * From ' + @BazaOd + '..CRRKodovi'
  106535. Exec(@SSQL)
  106536. Set @SSQL = 'Insert Into FormulaDef Select * From ' + @BazaOd + '..FormulaDef'
  106537. Exec(@SSQL)
  106538. Set @SSQL = 'Insert Into EkvivDezen Select * From ' + @BazaOd + '..EkvivDezen'
  106539. Exec(@SSQL)
  106540. Set @SSQL = 'Insert Into CenDog Select * From ' + @BazaOd + '..CenDog'
  106541. Exec(@SSQL)
  106542. Set @SSQL = 'Insert Into CenDogSta Select * From ' + @BazaOd + '..CenDogSta'
  106543. Exec(@SSQL)
  106544. Set @SSQL = 'Insert Into WhmLokacija Select * From ' + @BazaOd + '..WhmLokacija'
  106545. Exec(@SSQL)
  106546. Set @SSQL = 'Insert Into WhmFXR Select * From ' + @BazaOd + '..WhmFXR'
  106547. Exec(@SSQL)
  106548. Set @SSQL = 'Insert Into WhmMVC Select * From ' + @BazaOd + '..WhmMVC'
  106549. Exec(@SSQL)
  106550. Set @SSQL = 'Insert Into WhmLokacKarakterist Select * From ' + @BazaOd + '..WhmLokacKarakterist'
  106551. Exec(@SSQL)
  106552. Set @SSQL = 'Insert Into WhmLokacKatStatus Select * From ' + @BazaOd + '..WhmLokacKatStatus'
  106553. Exec(@SSQL)
  106554. Set @SSQL = 'Insert Into LogNadvKor Select * From ' + @BazaOd + '..LogNadvKor'
  106555. Exec(@SSQL)
  106556. Set @SSQL = 'Insert Into Lekari Select * From ' + @BazaOd + '..Lekari'
  106557. Exec(@SSQL)
  106558. Set @SSQL = 'Insert Into OsnovOsig Select * From ' + @BazaOd + '..OsnovOsig'
  106559. Exec(@SSQL)
  106560. Set @SSQL = 'Insert Into PodracniSluzbi Select * From ' + @BazaOd + '..PodracniSluzbi'
  106561. Exec(@SSQL)
  106562. Set @SSQL = 'Insert Into Dijagnozi Select * From ' + @BazaOd + '..Dijagnozi'
  106563. Exec(@SSQL)
  106564. Set @SSQL = 'Insert Into Farmacevt Select * From ' + @BazaOd + '..Farmacevt'
  106565. Exec(@SSQL)
  106566. Set @SSQL = 'Insert Into Apteka Select * From ' + @BazaOd + '..Apteka'
  106567. Exec(@SSQL)
  106568. Set @SSQL = 'Insert Into Pacienti Select * From ' + @BazaOd + '..Pacienti'
  106569. Exec(@SSQL)
  106570. Set @SSQL = 'Insert Into Sams_Uredi Select * From ' + @BazaOd + '..Sams_Uredi'
  106571. Exec(@SSQL)
  106572. Set @SSQL = 'Insert Into Sams_StatusUredi Select * From ' + @BazaOd + '..Sams_StatusUredi'
  106573. Exec(@SSQL)
  106574. Set @SSQL = 'Insert Into Vozila Select * From ' + @BazaOd + '..Vozila'
  106575. Exec(@SSQL)
  106576. Set @SSQL = 'Insert Into StatusKasi Select * From ' + @BazaOd + '..StatusKasi'
  106577. Exec(@SSQL)
  106578. Set @SSQL = 'Insert Into PomBrojDok Select * From ' + @BazaOd + '..PomBrojDok'
  106579. Exec(@SSQL)
  106580. Set @SSQL = 'Insert Into KartKorDetali Select * From ' + @BazaOd + '..KartKorDetali'
  106581. Exec(@SSQL)
  106582. Set @SSQL = 'Insert Into KonfPregled Select * From ' + @BazaOd + '..KonfPregled'
  106583. Exec(@SSQL)
  106584. Set @SSQL = 'Insert Into OsnGrPodel Select * From ' + @BazaOd + '..OsnGrPodel'
  106585. Exec(@SSQL)
  106586. Set @SSQL = 'Insert Into OsnPodelbi Select * From ' + @BazaOd + '..OsnPodelbi'
  106587. Exec(@SSQL)
  106588. Set @SSQL = 'Insert Into OsnPodelSta Select * From ' + @BazaOd + '..OsnPodelSta'
  106589. Exec(@SSQL)
  106590. Set @SSQL = 'Insert Into NacKonKart Select * From ' + @BazaOd + '..NacKonKart'
  106591. Exec(@SSQL)
  106592. Set @SSQL = 'Insert Into TrosokVid Select * From ' + @BazaOd + '..TrosokVid'
  106593. Exec(@SSQL)
  106594. Set @SSQL = 'Insert Into TrosokMesto Select * From ' + @BazaOd + '..TrosokMesto'
  106595. Exec(@SSQL)
  106596. Set @SSQL = 'Insert Into KonfAzurTros Select * From ' + @BazaOd + '..KonfAzurTros'
  106597. Exec(@SSQL)
  106598.  
  106599. --NE SE DODADENI: CenImp, CenPoArt, DozvOrgArt, Etik*, Firmi, KatListi(nikoj ne ja koristi)
  106600. --            LotSer?!, NG*, OtkrojSema, PisiBrisiBarKod, PlanPro,PlanProSta, PocNabCeni, PrometODL
  106601. --            StatusKasi?!, VernTraenje, VidDog
  106602. -- plata    NacinPresmZ, Obrazovanie, Opstini, Primateli, Programi, RabKalendar, RabMesta, Rabotnik
  106603. --            StsRabMesto, StrSprema, TipResenijaVrab
  106604.  
  106605.  
  106606.  
  106607.  
  106608. Go
  106609. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polninalozidrugabaza]'))
  106610. drop procedure [dbo].[sp_polninalozidrugabaza]
  106611.  
  106612. Go
  106613. CREATE PROCEDURE sp_PolniNaloziDrugaBaza
  106614.     @BazaOd    varchar(15),
  106615.     @Datum_Od    smalldatetime
  106616. AS
  106617. Declare @SSQL varchar(3000)
  106618. SET @SSQL = 'INSERT INTO Nalozi SELECT * FROM '+@BazaOd + '..Nalozi WHERE Datum_Nal>=''' + cast(@Datum_Od as varchar(30))+''' '
  106619. EXEC (@SSQL)
  106620.  
  106621.  
  106622. Go
  106623. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_polnitabartzawebnaracki]'))
  106624. drop procedure [dbo].[sp_polnitabartzawebnaracki]
  106625.  
  106626. Go
  106627. CREATE PROCEDURE sp_PolniTabArtzaWEBNaracki
  106628.     @Sifra_Kup    char(6),
  106629.     @Sifra_Art    varchar(20),
  106630.     @Kolic        decimal(18,6)
  106631. AS
  106632. Declare @ImeTab varchar(20)
  106633. SET @ImeTab = '##wNar'+@Sifra_Kup
  106634. Declare @SSQL varchar(3000)
  106635.  
  106636. SET @SSQL = 'INSERT INTO ' + @ImeTab + ' (Sifra_Art, Kolic) VALUES ('''+@Sifra_Art +''','+ cast(@Kolic as varchar(30))+')'
  106637.  
  106638. EXEC (@SSQL)
  106639.  
  106640.  
  106641.  
  106642. Go
  106643. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_poluproizvodi_utrossok]'))
  106644. drop procedure [dbo].[sp_poluproizvodi_utrossok]
  106645.  
  106646. Go
  106647. CREATE PROCEDURE sp_Poluproizvodi_Utrossok
  106648.     @Sifra_Oe    smallint,
  106649.     @TipDok    varchar(200)
  106650. AS
  106651.     Declare @SSQL as varchar(8000)
  106652.     Set @SSQL = ' Select K.KontrSer, K.Sifra_Art, K.Dolzina_Proiz, K.Tezina_Dara, K.Tezina_Bruto, K.Tezina_Neto, K.Precnik_Proiz, K.Sifra_Boja, 
  106653.             K.Broj_Prekini, K.Vreme_Pocetok, K.Vreme_Kraj, K.Sirina_Proiz, K.Precnik_Amb, K.Kolku_Edinici, K.Kolic, K.OznPodBr, K.Sifra_Hilzna, K.Sifra_OeRab, 
  106654.             K.Broj_RabN, K.Kvalitet
  106655.         From KatSerBr K
  106656.         Where K.KontrSer In (Select KontrSerSta From KatSerBrSta)
  106657.         And K.KontrSer Not In (Select M.SpecOzn From MagStavr M Inner Join Stavr S On S.DokrID=M.DokrID 
  106658.                     Where S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + '
  106659.                     And S.Sifra_Dok In ( ' + @TipDok + ')) '
  106660.     Exec(@SSQL)
  106661.  
  106662.  
  106663. Go
  106664. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pomlagernadat]'))
  106665. drop procedure [dbo].[sp_pomlagernadat]
  106666.  
  106667. Go
  106668.  
  106669. CREATE PROCEDURE sp_PomLagerNaDat
  106670.     @SifMarket  char(2),
  106671.     @Datum   smalldatetime    
  106672. AS
  106673. Set Nocount On
  106674. ---
  106675.     Declare @ImeDat char(8)
  106676.     Set @ImeDat = 'TZ'+@SifMarket+'0'+cast(month(@Datum) as varchar(1))+'03'
  106677.     Declare @SSQL varchar(4000)
  106678.     SET @SSQL = 'SELECT Sifra_Art, 
  106679.                 Vlez=
  106680.                 CASE 
  106681.                      WHEN VlIzl = ''V'' THEN Kolic 
  106682.                    ELSE  0
  106683.                 END,                     
  106684.                  Izlez=
  106685.                 CASE 
  106686.                      WHEN VlIzl = ''I'' THEN Kolic 
  106687.                    ELSE  0
  106688.                 END
  106689.                 FROM Stavr  
  106690.                 WHERE Sifra_OE=1 AND Datum_Dok<=''' + Cast(@Datum As Varchar(35)) + ''' '
  106691.     CREATE TABLE #PrometArt
  106692.     ( Sifra_Art  varchar(20),
  106693.       Vlez Numeric(18,4),
  106694.       Izlez Numeric(18,4)
  106695.     )
  106696.     INSERT INTO #PrometArt EXEC(@SSQL)
  106697. --    Set @SSQL = 'If Exists (select * from dbo.sysobjects where id = object_id(N'+
  106698. --        @ImeDat+') and OBJECTPROPERTY(id, N'IsTable') = 1)
  106699. --        Drop Table @ImeDat
  106700.     Set @SSQL = 'CREATE TABLE '+@ImeDat+
  106701.     ' (Sifra_Art  Varchar(20),
  106702.      Kolic decimal(15,3), 
  106703.      Vrednost  decimal(15,3))'
  106704.     EXEC(@SSQL)
  106705.     Set @SSQL = 'INSERT INTO '+@ImeDat+
  106706.     ' SELECT Sifra_Art, SUM(Vlez - Izlez) AS Kolic, 0 AS Vrednost
  106707.     FROM #PrometArt
  106708.     GROUP BY Sifra_Art'
  106709.     EXEC(@SSQL)
  106710.     Set @SSQL = 'UPDATE '+ @ImeDat +' SET Vrednost = S.Cena * T.Kolic
  106711.     FROM Soart S, ' + @ImeDat + ' T
  106712.     WHERE S.Sifra_Art = T.Sifra_Art AND S.Sifra_OE = 1'
  106713.     EXEC(@SSQL)
  106714.     DROP TABLE #PrometArt
  106715.     Set Nocount Off
  106716.  
  106717.  
  106718.  
  106719. Go
  106720. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popis_i_ostvarenpromet]'))
  106721. drop procedure [dbo].[sp_popis_i_ostvarenpromet]
  106722.  
  106723. Go
  106724. CREATE          PROCEDURE sp_Popis_i_OstvarenPromet 
  106725.     @Sifra_Oe        smallint,
  106726.     @Datum_Od        smalldatetime,    
  106727.     @Datum_Do        smalldatetime,
  106728.     @Sifra_Dok_Ispor    smallint,
  106729.     @Sifra_Kup        char(6),
  106730.     @Sifra_Reg        smallint,
  106731.     @Sifra_Grad        smallint,
  106732.     @DaliZbirno        char (1) = Null,
  106733.     @Sifra_Obj        smallint = Null
  106734. AS
  106735.     Declare @SSQL as varchar(8000)
  106736.     Create Table #Popis
  106737.     (
  106738.      RbrPopis    int,
  106739.      Sifra_Oe    smallint,
  106740.      Sifra_Dok    smallint,
  106741.      Broj_Dok    int,
  106742.      Sifra_Kup    char(6),
  106743.      Sifra_Obj    smallint,
  106744.      Datum_Dok    smalldatetime,
  106745.      Uces        decimal(6,2),
  106746.      UcesKom    decimal(6,2),
  106747.      IznPrimeno    decimal(18,6),
  106748.      IznPopis    decimal(18,6),
  106749.      IznOstaveno    decimal(18,6),
  106750.      IznosUpl    decimal(18,6),
  106751.      Razdolz    decimal(18,6)
  106752.     )
  106753.     If @DaliZbirno = 'D'
  106754.         Set @SSQL = ' Select Null RbrPopis, Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok, P.Sifra_Kup, Null Sifra_Obj, Null Datum_Dok, Null Uces, Kup.Uces as UcesKom,
  106755.                 Sum(Kolic*Cena) as IznPrimeno, Sum(Popis*Cena) as IznPopis, Sum(Ostaveno*Cena) as IznOstaveno,
  106756.                 Sum(U.IznosUpl) IznosUpl, (F.Plateno_Dolzi) Razdolz '
  106757.     Else 
  106758.         Set @SSQL = ' Select P.RbrPopis, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Sifra_Kup, P.Sifra_Obj, P.Datum_Dok, P.Uces, Kup.Uces as UcesKom,
  106759.                 Sum(Kolic*Cena) as IznPrimeno, Sum(Popis*Cena) as IznPopis, Sum(Ostaveno*Cena) as IznOstaveno,
  106760.                 Sum(U.IznosUpl) IznosUpl, (F.Plateno_Dolzi) Razdolz '
  106761.     Set @SSQL = @SSQL + ' From PopisDok P
  106762.             Left Outer Join PopisDokUpl U On U.RbrPopis=P.RbrPopis And U.Sifra_Oe=P.Sifra_Oe And U.Sifra_Dok=P.Sifra_Dok And U.Broj_Dok=P.Broj_Dok
  106763.             Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_kup 
  106764.             Left Outer Join AnFinDok F On F.Sifra_Oe=P.Sifra_Oe And F.Broj_Dok=P.Broj_Dok And F.Sifra_Dok = 99
  106765.             Where P.Sifra_Dok = ' + Cast(@Sifra_Dok_Ispor as varchar(6)) + ' 
  106766.             And P.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + '
  106767.             And P.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + '''
  106768.             And P.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  106769.     If @Sifra_Kup Is Not Null
  106770.         Set @SSQL = @SSQL + ' And P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  106771.     If @Sifra_Obj Is Not Null
  106772.         Set @SSQL = @SSQL + ' And P.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  106773.     If @Sifra_Reg Is Not Null
  106774.         Set @SSQL = @SSQL + ' And Kup.Sifra_Reg = ' + Cast(@Sifra_Reg as varchar(6)) + ' '
  106775.     If @Sifra_Grad Is Not Null
  106776.         Set @SSQL = @SSQL + ' And Kup.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ' '
  106777.     If @DaliZbirno = 'D'
  106778.         Set @SSQL = @SSQL + ' Group By P.Sifra_Kup, Kup.ImeKup, Kup.Uces, F.Plateno_Dolzi '
  106779.     Else
  106780.         Set @SSQL = @SSQL + ' Group By P.RbrPopis, P.SIfra_oe, P.Sifra_Dok, P.Broj_Dok, P.Sifra_Kup, P.Sifra_Obj, 
  106781.                     P.Datum_Dok, P.Uces, Kup.ImeKUp, Kup.Uces, F.Plateno_Dolzi '
  106782.     If @DaliZbirno = 'D'
  106783.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup '
  106784.     Else
  106785.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup, P.Datum_Dok '
  106786.     Insert Into #Popis Exec(@SSQL)
  106787.     -- Uplatite od AnFinDok koi se odnesuvaat na mesecot od @Datum_Od (ako ne zatvaraat dobro)
  106788.     Set @SSQL = 'Select Null RbrPopis, Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok, 
  106789.                 F.Sifra_Kup, Null Sifra_Obj, Null Datum_Dok, Null Uces, Kup.Uces as UcesKom,
  106790.                 0 IznPrimeno, 0 IznPopis, 0 IznOstaveno,
  106791.                 0 IznosUpl, Sum(F.Pobaruva-F.Plateno_Pobar) Razdolz 
  106792.             From AnFinDok F
  106793.             Inner Join Komint Kup On Kup.Sifra_Kup = F.Sifra_Kup
  106794.             Where F.Sifra_kup In (Select Sifra_Kup From #Popis)
  106795.             And F.BrojDok = ''' + (Case When Month(@Datum_Od) < 10 Then '0' Else '' End) + Cast(Month(@Datum_Od) as varchar(2)) + '/' +  Cast(Year(@Datum_Od) as varchar(4)) + ''' '
  106796.     If @Sifra_Obj Is Not Null
  106797.         Set @SSQL = @SSQL + ' And F.Opis = ''M' + Cast(@Sifra_Obj as varchar(6)) + ''' '
  106798.     Set @SSQL = @SSQL + ' Group By F.Sifra_Kup, Kup.ImeKup, Kup.Uces '
  106799.     Insert Into #Popis Exec (@SSQL)
  106800. print @SSQL
  106801.     If @DaliZbirno = 'D'
  106802.         Set @SSQL = ' Select Null RbrPopis, Null Sifra_Oe, Null Sifra_Dok, Null Broj_Dok, P.Sifra_Kup, Null Sifra_Obj, Null Datum_Dok, Null Uces, P.UcesKom,
  106803.                 Kup.ImeKup, 
  106804.                 Sum(IznPrimeno) as IznPrimeno, Sum(IznPopis) as IznPopis, Sum(IznOstaveno) as IznOstaveno,
  106805.                 Sum(IznosUpl) IznosUpl, Sum(Razdolz) Razdolz '
  106806.     Else 
  106807.         Set @SSQL = ' Select P.RbrPopis, P.Sifra_Oe, P.Sifra_Dok, P.Broj_Dok, P.Sifra_Kup, P.Sifra_Obj, P.Datum_Dok, P.Uces, P.UcesKom,
  106808.                 Kup.ImeKup, 
  106809.                 Sum(IznPrimeno) as IznPrimeno, Sum(IznPopis) as IznPopis, Sum(IznOstaveno) as IznOstaveno,
  106810.                 Sum(IznosUpl) IznosUpl, Sum(Razdolz) Razdolz '
  106811.     Set @SSQL = @SSQL + ' From #Popis P
  106812.             Left Outer Join Komint Kup On Kup.Sifra_Kup=P.Sifra_kup '
  106813.     If @DaliZbirno = 'D'
  106814.         Set @SSQL = @SSQL + ' Group By P.Sifra_Kup, Kup.ImeKup, P.UcesKom '
  106815.     Else
  106816.         Set @SSQL = @SSQL + ' Group By P.RbrPopis, P.SIfra_oe, P.Sifra_Dok, P.Broj_Dok, P.Sifra_Kup, P.Sifra_Obj, 
  106817.                     P.Datum_Dok, P.Uces, Kup.ImeKUp, P.UcesKom '
  106818.     If @DaliZbirno = 'D'
  106819.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup '
  106820.     Else
  106821.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup, P.Datum_Dok '
  106822.     Exec(@SSQL)
  106823.  
  106824.  
  106825. Go
  106826. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popis_povekeoe]'))
  106827. drop procedure [dbo].[sp_popis_povekeoe]
  106828.  
  106829. Go
  106830. CREATE PROCEDURE sp_Popis_PovekeOe 
  106831.     @Datum    smalldatetime
  106832. AS
  106833. Set Nocount On
  106834.     Create Table #Rez
  106835.     (
  106836.      Sifra_Art    varchar(20),
  106837.      Evid100    decimal(18,4),
  106838.      Popis100    decimal(18,4),
  106839.      Evid3        decimal(18,4),
  106840.      Popis3        decimal(18,4),
  106841.      Evid4        decimal(18,4),
  106842.      Popis4        decimal(18,4),
  106843.      Evid5        decimal(18,4),
  106844.      Popis5        decimal(18,4),
  106845.      Evid1        decimal(18,4),
  106846.      Popis1        decimal(18,4),
  106847.      Popis60    decimal(18,4)
  106848.     )
  106849.     Insert Into #Rez
  106850.     Select Distinct Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
  106851.     From Soart Where Sifra_oe In (100, 1, 3, 4, 5, 60)
  106852.     Insert Into #Rez
  106853.     Select Distinct LP.Sifra_Art, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
  106854.     From LPopis LP
  106855.     Inner Join Popis P On P.IDPopis=LP.IDPopis
  106856.     Where P.Sifra_Oe In (100, 1, 3, 4, 5, 60) And P.Datum=@Datum And LP.Sifra_Art Not In (Select Sifra_Art From #Rez)
  106857.     ------------ ZALIHA -------------
  106858.     Create Table #Zaliha
  106859.     (
  106860.      Sifra_Oe    smallint,
  106861.      Sifra_Art    varchar(20),
  106862.      Kolic        decimal(18,4)
  106863.     )
  106864.     Insert Into #Zaliha
  106865.     Select Sifra_Oe, Sifra_Art, Sum(Case When VlIzl='V' Then Kolic Else -1*Kolic End)
  106866.     From Stavr
  106867.     Where Datum_Dok<=@Datum
  106868.     Group By Sifra_Oe, Sifra_Art
  106869.     ------------ POPIS -------------
  106870.     Create Table #Popis
  106871.     (
  106872.      Sifra_Oe    smallint,
  106873.      Sifra_Art    varchar(20),
  106874.      Kolic        decimal(18,4)
  106875.     )
  106876.     Insert Into #Popis
  106877.     Select P.Sifra_Oe, LP.Sifra_Art, Sum(LP.Popis)
  106878.     From LPopis LP
  106879.     Inner Join Popis P On P.IDPopis=LP.IDPopis
  106880.     Where P.Sifra_Oe In (100, 3, 4, 5, 60) And P.Datum=@Datum
  106881.     Group By P.Sifra_Oe, LP.Sifra_Art
  106882.     ------------------------------------------------------------------------------------------------------------------------------------------
  106883.     Update #Rez Set Evid100=#Zaliha.Kolic From #Zaliha Where #Zaliha.Sifra_Art=#Rez.Sifra_Art And #Zaliha.Sifra_Oe=100
  106884.     Update #Rez Set Evid3=#Zaliha.Kolic From #Zaliha Where #Zaliha.Sifra_Art=#Rez.Sifra_Art And #Zaliha.Sifra_Oe=3
  106885.     Update #Rez Set Evid4=#Zaliha.Kolic From #Zaliha Where #Zaliha.Sifra_Art=#Rez.Sifra_Art And #Zaliha.Sifra_Oe=4
  106886.     Update #Rez Set Evid5=#Zaliha.Kolic From #Zaliha Where #Zaliha.Sifra_Art=#Rez.Sifra_Art And #Zaliha.Sifra_Oe=5
  106887.     Update #Rez Set Evid1=#Zaliha.Kolic From #Zaliha Where #Zaliha.Sifra_Art=#Rez.Sifra_Art And #Zaliha.Sifra_Oe=1
  106888.     Update #Rez Set Popis100=#Popis.Kolic From #Popis Where #Popis.Sifra_Art=#Rez.Sifra_Art And #Popis.Sifra_Oe=100
  106889.     Update #Rez Set Popis3=#Popis.Kolic From #Popis Where #Popis.Sifra_Art=#Rez.Sifra_Art And #Popis.Sifra_Oe=3
  106890.     Update #Rez Set Popis4=#Popis.Kolic From #Popis Where #Popis.Sifra_Art=#Rez.Sifra_Art And #Popis.Sifra_Oe=4
  106891.     Update #Rez Set Popis5=#Popis.Kolic From #Popis Where #Popis.Sifra_Art=#Rez.Sifra_Art And #Popis.Sifra_Oe=5
  106892.     Update #Rez Set Popis1=Popis100+Popis3+Popis4
  106893.     Update #Rez Set Popis60=#Popis.Kolic From #Popis Where #Popis.Sifra_Art=#Rez.Sifra_Art And #Popis.Sifra_Oe=60
  106894.     Select R.Sifra_Art, K.ImeArt, R.Evid100, R.Popis100, (R.Popis100 - R.Evid100) Razl100, R.Evid3, R.Popis3, (R.Popis3 - R.Evid3) Razl3,
  106895.         R.Evid4, R.Popis4, (R.Popis4 - R.Evid4) Razl4, R.Evid5, R.Popis5, (R.Popis5 - R.Evid5) Razl5, 
  106896.         R.Evid1, (R.Evid100+R.Evid3+R.Evid4) EvidZb, R.Popis1, (R.Popis1 - R.Evid1) Razl1, R.Popis60
  106897.     From #Rez R
  106898.     Inner Join Katart K On K.Sifra_Art=R.Sifra_Art
  106899.     Order By R.Sifra_Art
  106900. Set NoCount Off
  106901.  
  106902.  
  106903. Go
  106904. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popisisporedba]'))
  106905. drop procedure [dbo].[sp_popisisporedba]
  106906.  
  106907. Go
  106908.  
  106909. CREATE  PROCEDURE sp_PopisiSporedba
  106910.     @PopisID    varchar(200)=Null,
  106911.     @Sifra_Oe    smallint,
  106912.     @Koi_Oe    varchar(1000),
  106913.     @Datum_Od    smalldatetime,
  106914.     @Datum_Do    smalldatetime,
  106915.     @Sifra_Art_Od    varchar(20)=Null,
  106916.     @Sifra_Art_Do    varchar(20)=Null,
  106917.     @Sifra_Podg    char(6)=Null,
  106918.     @Sifra_Gr    char(3)=Null,
  106919.     @ADrugo1    smallint=Null,
  106920.     @ADrugo2    smallint=Null,
  106921.     @ADrugo3    smallint=Null,
  106922.     @ADrugo4    smallint=Null,
  106923.     @ADrugo5    smallint=Null,
  106924.     @Kto        char(6)=Null,
  106925.     @Sifra_Drg    smallint=Null
  106926. AS
  106927.     Declare @SSQL as varchar(8000)
  106928.     Set @SSQL = ' Select P.Sifra_Oe, R.Sifra_Art, K.ImeArt, K.EdMera, P.Datum, R.Popis, R.KnigSost, R.Cena, 
  106929.             R.DanCena, R.POsn, R.Sifra_Tar, O.ImeOrg
  106930.             From RPopis R
  106931.             Inner Join Popis P On P.IdPopis=R.Idpopis
  106932.             Inner Join Katart K On K.Sifra_Art=R.Sifra_Art
  106933.             Left Outer Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  106934.             Left Outer Join Orged O On O.Sifra_Oe=P.Sifra_Oe
  106935.             Where 1=1 '
  106936.     If @PopisID Is Not Null
  106937.         Set @SSQL = @SSQL + ' And P.IDPopis IN (' + @PopisID + ') '
  106938.     If @Sifra_Oe Is Not Null
  106939.         Set @SSQL = @SSQL + ' and P.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  106940.     If @Koi_OE Is Not NULL
  106941.              Set @SSQL = @SSQL + ' and P.Sifra_Oe In (' + @Koi_Oe + ') ' --P.Sifra_OE IN (Select G.Sifra_Oe From SGrOrg G where G.Sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  106942.     If @Datum_Od Is Not Null
  106943.         Set @SSQL = @SSQL + ' and P.Datum >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  106944.     If @Datum_Do Is Not Null
  106945.         Set @SSQL = @SSQL + ' and P.Datum <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  106946.     If @Sifra_Art_Od Is Not Null
  106947.         Set @SSQL = @SSQL + ' and R.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  106948.     If @Sifra_Art_Do Is Not Null
  106949.         Set @SSQL = @SSQL + ' and R.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  106950.     If @Sifra_Podg Is Not Null
  106951.         Set @SSQL = @SSQL + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  106952.     If @Sifra_Gr Is Not Null
  106953.         Set @SSQL = @SSQL + ' and PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  106954.     If @ADrugo1 Is Not Null
  106955.         Set @SSQL = @SSQL + ' and K.Drugo1 = ''' + cast(@ADrugo1 as varchar(6)) + ''' '
  106956.     If @ADrugo2 Is Not Null
  106957.         Set @SSQL = @SSQL + ' and K.Drugo2 = ''' + cast(@ADrugo2 as varchar(6)) + ''' '
  106958.     If @ADrugo3 Is Not Null
  106959.         Set @SSQL = @SSQL + ' and K.Drugo3 = ''' + cast(@ADrugo3 as varchar(6)) + ''' '
  106960.     If @ADrugo4 Is Not Null
  106961.         Set @SSQL = @SSQL + ' and K.Drugo4 = ''' + cast(@ADrugo4 as varchar(6)) + ''' '
  106962.     If @ADrugo5 Is Not Null
  106963.         Set @SSQL = @SSQL + ' and K.Drugo5 = ''' + cast(@ADrugo5 as varchar(6)) + ''' '
  106964.     If @Kto Is Not Null
  106965.         Set @SSQL = @SSQL + ' and K.Kto = ''' + @Kto + ''' '
  106966.     If @Sifra_Drg Is Not Null
  106967.         Set @SSQL = @SSQL + ' and K.Sifra_Drg = ''' + cast(@Sifra_Drg as varchar(6)) + ''' '
  106968.     Exec(@SSQL)
  106969.  
  106970.  
  106971.  
  106972. Go
  106973. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popolni_c_intdok]'))
  106974. drop procedure [dbo].[sp_popolni_c_intdok]
  106975.  
  106976. Go
  106977.  
  106978. CREATE     PROCEDURE sp_Popolni_C_IntDok
  106979.  
  106980.     @Sifra_OE     Smallint=Null,    
  106981.     @Datum_Dok_Od   Smalldatetime,
  106982.     @Datum_Dok_Do   Smalldatetime
  106983.  
  106984. AS
  106985.  
  106986.     Declare @Sif_GrOrg char(6)
  106987.     set @Sif_GrOrg = 'PROS'
  106988.  
  106989.     Declare @Sifra_Oe_Dava smallint
  106990.     set @Sifra_Oe_Dava = 1
  106991.  
  106992.     Declare @Sifra_Dok_Dava smallint
  106993.     set @Sifra_Dok_Dava = 6
  106994.  
  106995.     Declare @SIfra_Kup_Dava chaR(6)
  106996.     set @Sifra_Kup_Dava = '006448'
  106997.  
  106998.     Declare @Sifra_Dok_Prima smallint
  106999.     set @Sifra_Dok_Prima = 206
  107000.  
  107001.     create TABLE #NabCeniIzlez
  107002.     (    Sifra_Oe    smallint,
  107003.         Sifra_Art     Varchar(20),
  107004.         Sifra_Obj     smallint null,
  107005.         Vk_NabVr     decimal(18, 4) NULL,
  107006.         Vk_Kolic    decimal(18,4) NULL,
  107007.         NaBCenaProsGol    decimal(18,6) NULL,
  107008.         NaBCenaProsMal    decimal(18,6) NULL,
  107009.         Sifra_Oe_Prod    smallint null,
  107010.         Sifra_Art_Mal    VarchaR(20)
  107011.     )
  107012.  
  107013.     insert into #NabCeniIzlez
  107014.           (Sifra_Art, Sifra_Obj, Vk_NabVr, Vk_Kolic)
  107015.        select  S.SifrA_ARt, D.SIfrA_Obj, sum(S.Kolic * S.NabCena), sum(S.Kolic)
  107016.        from Stavr S
  107017.        inner join Dokr D
  107018.         on S.DokrId = D.DokrId
  107019.        where S.Sifra_Oe in (select SifrA_oe from SGrOrg where Sif_GrOrg = @Sif_GrOrg) and
  107020.          S.SifrA_Dok = @Sifra_Dok_Dava
  107021.          and D.Sifra_Kup = @Sifra_Kup_Dava
  107022.          and S.Datum_Dok >= @Datum_Dok_Od
  107023.          and S.Datum_Dok <= @Datum_Dok_Do
  107024.        group by S.SifrA_Art, D.Sifra_Obj
  107025.  
  107026.     update #NabCeniIzlez
  107027.     set NabCenaProsGol = Vk_NabVr / Vk_Kolic
  107028.     where Vk_Kolic > 0 and Vk_NabVr > 0
  107029.  
  107030.     update #NabCeniIzlez
  107031.     set NabCenaProsMal = NabCenaProsGol
  107032.  
  107033.     update #NabCeniIzlez
  107034.     set NabCenaProsMal = NabCenaProsGol  / 50
  107035.     where Sifra_Art Like '30015%'
  107036.  
  107037.     update #NabCeniIzlez
  107038.     set Sifra_Oe_Prod = 600 + Sifra_Obj
  107039.  
  107040.     update #NabCeniIzlez
  107041.     set Sifra_Art_Mal = K.Sifra_Art
  107042.     from Katart K
  107043.     where K.Alt_Ime2 = #NabCeniIzlez.Sifra_Art
  107044.  
  107045.     --select *
  107046.     --from #NabCeniIzlez
  107047.  
  107048.     Update Stavr
  107049.     set NabCena = NC.NabCenaProsMal
  107050.     From #NabCeniIzlez NC
  107051.     where Stavr.SifrA_Dok = @Sifra_Dok_Prima
  107052.          and Stavr.Datum_Dok >= @Datum_Dok_Od
  107053.          and Stavr.Datum_Dok <= @Datum_Dok_Do
  107054.          and Stavr.SifrA_Art = NC.SIfrA_ARt_Mal
  107055.          and Stavr.Sifra_Oe = NC.Sifra_Oe_Prod 
  107056.  
  107057.     --select S.NabCena, NC.NabCenaProsMal, S.DokCena, S.DanDOkCena, S.MagCena, S.DanMagCena, NC.* 
  107058.     --from Stavr S
  107059.      --   inner join #NabCeniIzlez NC 
  107060.     --    on NC.Sifra_Art_Mal = S.SIfra_Art
  107061.     --        and NC.SifrA_Oe_PRod = S.SifrA_Oe
  107062.     --   where S.SifrA_Dok = @Sifra_Dok_Prima
  107063.     --     and S.Datum_Dok >= @Datum_Dok_Od
  107064.     --     and S.Datum_Dok <= @Datum_Dok_Do
  107065.  
  107066.  
  107067.     -- Sega popravi vo DOKR
  107068.     create TABLE #DokrVlez
  107069.     (
  107070.         Sifra_Oe     smallint,
  107071.         Sifra_Dok    smallint,
  107072.         Broj_DOk     int
  107073.     )
  107074.  
  107075.     insert into #DokrVlez
  107076.         (Sifra_Oe, Sifra_Dok, Broj_dok)
  107077.     select sifra_oe, sifrA_dok, broj_dok
  107078.     from Dokr
  107079.     where SifrA_Dok = @Sifra_Dok_Prima
  107080.          and Datum_Dok >= @Datum_Dok_Od
  107081.          and Datum_Dok <= @Datum_Dok_Do
  107082.  
  107083.     DECLARE DokrPopravi CURSOR FAST_FORWARD 
  107084.         FOR SELECT * 
  107085.         FROM #DokrVlez
  107086.  
  107087.     Declare @Sifra_Oe_Popravi smallint
  107088.     Declare @Sifra_Dok_Popravi smallint
  107089.     Declare @Broj_Dok_Popravi int
  107090.  
  107091.         OPEN DokrPopravi
  107092.         FETCH NEXT FROM DokrPopravi 
  107093.         INTO @Sifra_Oe_Popravi, @SifrA_Dok_Popravi, @Broj_Dok_Popravi
  107094.         WHILE @@FETCH_STATUS = 0
  107095.       Begin
  107096.          print cast(@SifrA_oe_Popravi as varchaR(8)) + '-' 
  107097.            + cast(@Sifra_Dok_Popravi as varchaR(8)) + '/' 
  107098.            + cast(@Broj_Dok_Popravi as varchaR(8))
  107099.  
  107100.          EXEC sp_Popravi1Dokr @Sifra_OE_Popravi, @Sifra_Dok_Popravi, @Broj_Dok_Popravi
  107101.  
  107102.          FETCH NEXT FROM DokrPopravi 
  107103.             INTO @Sifra_Oe_Popravi, @SifrA_Dok_Popravi, @Broj_Dok_Popravi
  107104.       End
  107105.  
  107106.         CLOSE DokrPopravi
  107107.         DEALLOCATE DokrPopravi
  107108.     
  107109.     
  107110.  
  107111.  
  107112.  
  107113.  
  107114. Go
  107115. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popolni_c_intdok_storno]'))
  107116. drop procedure [dbo].[sp_popolni_c_intdok_storno]
  107117.  
  107118. Go
  107119.  
  107120.  
  107121.  
  107122.  
  107123.  
  107124. create  PROCEDURE sp_Popolni_C_IntDok_Storno
  107125.  
  107126.     @Sifra_OE     Smallint=Null,    
  107127.     @Datum_Dok_Od   Smalldatetime,
  107128.     @Datum_Dok_Do   Smalldatetime
  107129.  
  107130. AS
  107131.  
  107132.     Declare @Sifra_Oe_Dava smallint
  107133.     set @Sifra_Oe_Dava = 1
  107134.  
  107135.     Declare @Sifra_Dok_Dava smallint
  107136.     set @Sifra_Dok_Dava = 7
  107137.  
  107138.     Declare @SIfra_Kup_Dava chaR(6)
  107139.     set @Sifra_Kup_Dava = '006448'
  107140.  
  107141.     Declare @Sifra_Dok_Prima smallint
  107142.     set @Sifra_Dok_Prima = 207
  107143.  
  107144.     create TABLE #NabCeniIzlez
  107145.     (
  107146.         Sifra_Art     Varchar(20),
  107147.         Sifra_Obj     smallint null,
  107148.         Vk_NabVr     decimal(18, 4) NULL,
  107149.         Vk_Kolic    decimal(18,4) NULL,
  107150.         NaBCenaProsGol    decimal(18,6) NULL,
  107151.         NaBCenaProsMal    decimal(18,6) NULL,
  107152.         Sifra_Oe_Prod    smallint null,
  107153.         Sifra_Art_Mal    VarchaR(20)
  107154.     )
  107155.  
  107156.     insert into #NabCeniIzlez
  107157.           (Sifra_Art, Sifra_Obj, Vk_NabVr, Vk_Kolic)
  107158.        select S.SifrA_ARt, D.SIfrA_Obj, sum(S.Kolic * S.NabCena), sum(S.Kolic)
  107159.        from Stavr S
  107160.        inner join Dokr D
  107161.         on S.DokrId = D.DokrId
  107162.        where S.Sifra_Oe = @SifrA_Oe_Dava and
  107163.          S.SifrA_Dok = @Sifra_Dok_Dava
  107164.          and D.Sifra_Kup = @Sifra_Kup_Dava
  107165.          and S.Datum_Dok >= @Datum_Dok_Od
  107166.          and S.Datum_Dok <= @Datum_Dok_Do
  107167.        group by S.SifrA_Art, D.Sifra_Obj
  107168.  
  107169.     update #NabCeniIzlez
  107170.     set NabCenaProsGol = Vk_NabVr / Vk_Kolic
  107171.     where Vk_Kolic > 0 and Vk_NabVr > 0
  107172.  
  107173.     update #NabCeniIzlez
  107174.     set NabCenaProsMal = NabCenaProsGol
  107175.  
  107176.     update #NabCeniIzlez
  107177.     set NabCenaProsMal = NabCenaProsGol  / 50
  107178.     where Sifra_Art Like '30015%'
  107179.  
  107180.     update #NabCeniIzlez
  107181.     set Sifra_Oe_Prod = 600 + Sifra_Obj
  107182.  
  107183.     update #NabCeniIzlez
  107184.     set Sifra_Art_Mal = K.Sifra_Art
  107185.     from Katart K
  107186.     where K.Alt_Ime2 = #NabCeniIzlez.Sifra_Art
  107187.  
  107188.     --select *
  107189.     --from #NabCeniIzlez
  107190.  
  107191.     Update Stavr
  107192.     set NabCena = NC.NabCenaProsMal
  107193.     From #NabCeniIzlez NC
  107194.     where Stavr.SifrA_Dok = @Sifra_Dok_Prima
  107195.          and Stavr.Datum_Dok >= @Datum_Dok_Od
  107196.          and Stavr.Datum_Dok <= @Datum_Dok_Do
  107197.          and Stavr.SifrA_Art = NC.SIfrA_ARt_Mal
  107198.          and Stavr.Sifra_Oe = NC.Sifra_Oe_Prod 
  107199.  
  107200.     --select S.NabCena, NC.NabCenaProsMal, S.DokCena, S.DanDOkCena, S.MagCena, S.DanMagCena, NC.* 
  107201.     --from Stavr S
  107202.      --   inner join #NabCeniIzlez NC 
  107203.     --    on NC.Sifra_Art_Mal = S.SIfra_Art
  107204.     --        and NC.SifrA_Oe_PRod = S.SifrA_Oe
  107205.     --   where S.SifrA_Dok = @Sifra_Dok_Prima
  107206.     --     and S.Datum_Dok >= @Datum_Dok_Od
  107207.     --     and S.Datum_Dok <= @Datum_Dok_Do
  107208.  
  107209.  
  107210.     -- Sega popravi vo DOKR
  107211.     create TABLE #DokrVlez
  107212.     (
  107213.         Sifra_Oe     smallint,
  107214.         Sifra_Dok    smallint,
  107215.         Broj_DOk     int
  107216.     )
  107217.  
  107218.     insert into #DokrVlez
  107219.         (Sifra_Oe, Sifra_Dok, Broj_dok)
  107220.     select sifra_oe, sifrA_dok, broj_dok
  107221.     from Dokr
  107222.     where SifrA_Dok = @Sifra_Dok_Prima
  107223.          and Datum_Dok >= @Datum_Dok_Od
  107224.          and Datum_Dok <= @Datum_Dok_Do
  107225.  
  107226.     DECLARE DokrPopravi CURSOR FAST_FORWARD 
  107227.         FOR SELECT * 
  107228.         FROM #DokrVlez
  107229.  
  107230.     Declare @Sifra_Oe_Popravi smallint
  107231.     Declare @Sifra_Dok_Popravi smallint
  107232.     Declare @Broj_Dok_Popravi int
  107233.  
  107234.         OPEN DokrPopravi
  107235.         FETCH NEXT FROM DokrPopravi 
  107236.         INTO @Sifra_Oe_Popravi, @SifrA_Dok_Popravi, @Broj_Dok_Popravi
  107237.         WHILE @@FETCH_STATUS = 0
  107238.       Begin
  107239.          print cast(@SifrA_oe_Popravi as varchaR(8)) + '-' 
  107240.            + cast(@Sifra_Dok_Popravi as varchaR(8)) + '/' 
  107241.            + cast(@Broj_Dok_Popravi as varchaR(8))
  107242.  
  107243.          EXEC sp_Popravi1Dokr @Sifra_OE_Popravi, @Sifra_Dok_Popravi, @Broj_Dok_Popravi
  107244.  
  107245.          FETCH NEXT FROM DokrPopravi 
  107246.             INTO @Sifra_Oe_Popravi, @SifrA_Dok_Popravi, @Broj_Dok_Popravi
  107247.       End
  107248.  
  107249.         CLOSE DokrPopravi
  107250.         DEALLOCATE DokrPopravi
  107251.     
  107252.     
  107253.  
  107254.  
  107255.  
  107256.  
  107257. Go
  107258. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popolnidozvobj]'))
  107259. drop procedure [dbo].[sp_popolnidozvobj]
  107260.  
  107261. Go
  107262. CREATE PROCEDURE sp_PopolniDozvObj
  107263. AS
  107264.     Insert Into DozvObj
  107265.     Select Name, Id, Null 
  107266.     From SysObjects 
  107267.     Where xtype='P' And Name Like 'sp_%'
  107268.     And Name Not In (Select ObjIme from DozvObj)
  107269.     Order by Name
  107270.     Insert Into DozvObj
  107271.     Select Name, Id, Null 
  107272.     From SysObjects 
  107273.     Where xtype='FN' And (Name Like 'fn_%' Or Name Like 'fix_%')
  107274.     And Name Not In (Select ObjIme from DozvObj)
  107275.     Order by Name
  107276.  
  107277.  
  107278. Go
  107279. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popolnifinpodvorecept_rcp_od_do_ceni]'))
  107280. drop procedure [dbo].[sp_popolnifinpodvorecept_rcp_od_do_ceni]
  107281.  
  107282. Go
  107283.  
  107284. CREATE    PROCEDURE [dbo].[sp_PopolniFinPodVoRecept_Rcp_Od_Do_Ceni]
  107285.     @Sifra_Apteka    char(2) = Null,
  107286.     @Broj_Recept_Od    int,
  107287.     @Broj_Recept_Do int
  107288.  
  107289. -- Pazi identiccna logika so Sp_PopolniFinPodVoRecept_SkalaMaza
  107290. -- samo filterot e razliccen, i ne formira SPECIFIKACII
  107291.  
  107292. AS
  107293.  
  107294.     -- Za sekoj sluccaj, obezbedi se
  107295.     if @Sifra_Apteka is null
  107296.         set @Sifra_Apteka = '01'
  107297.     else if @Sifra_Apteka = ''
  107298.         set @Sifra_Apteka = '01'
  107299.     else if @SifrA_Apteka = '1'
  107300.         set @Sifra_Apteka = '01'
  107301.     else if @SifrA_Apteka = '2'
  107302.         set @Sifra_Apteka = '02'
  107303.     else if @SifrA_Apteka = '3'
  107304.         set @Sifra_Apteka = '03'
  107305.  
  107306.     UPDATE Recepti 
  107307.     SET Rangiran = '0',
  107308.         Cena_Tender = L.SpeCena,
  107309.         Vid_Marza = '1', 
  107310.         Sifra_Oslobod = '0',
  107311.         Proc_Marza=0 
  107312.     FROM Katart L 
  107313.     WHERE Recepti.Sifra_Art = L.Sifra_Art
  107314.         AND Recepti.Specif_Br IS NULL
  107315.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107316.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107317.  
  107318.     UPDATE Recepti 
  107319.     SET Iznos_Tender = Round(Kolku_Pakuv * Cena_Tender,2) 
  107320.     WHERE Recepti.Kolku_Pakuv > 0 
  107321.         AND Recepti.Specif_Br IS NULL
  107322.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107323.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107324.  
  107325.     UPDATE Recepti 
  107326.     SET Iznos_Tender = Round(Recepti.Kolku_Kolic * Recepti.Cena_Tender / L.SodrziEd, 2) 
  107327.     FROM Katart L 
  107328.     WHERE Recepti.Sifra_Art = L.Sifra_Art
  107329.         AND Recepti.Kolku_Kolic > 0
  107330.         AND Recepti.Specif_Br IS NULL
  107331.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107332.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107333.  
  107334.     ------ Okt 2, 2007
  107335.     UPDATE Recepti 
  107336.     SET Iznos_Marza = P.Izn_Marza 
  107337.     FROM LstPartic P 
  107338.     WHERE Recepti.Iznos_Tender Between P.Iznos_Od AND P.Iznos_Do
  107339.         AND Recepti.Specif_Br IS NULL
  107340.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107341.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107342.     ------ Gotovo so Okt 2, 2007
  107343.  
  107344.     UPDATE Recepti 
  107345.     SET Osnov_DDV = Iznos_Tender + Iznos_Marza  
  107346.     WHERE Recepti.Specif_Br IS NULL
  107347.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107348.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107349.  
  107350.     UPDATE Recepti 
  107351.     SET ProcDDV = T.ProcOsn 
  107352.     FROM Tarifi T, Katart L 
  107353.     WHERE Recepti.Sifra_Art = L.Sifra_Art AND L.Sifra_Tar=T.Sifra_Tar
  107354.           and Recepti.Specif_Br IS NULL
  107355.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107356.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107357.  
  107358.     UPDATE Recepti 
  107359.     SET Iznos_Na_DDV = Round(Osnov_DDV * ProcDDV / 100, 2)  
  107360.     WHERE Recepti.Specif_Br IS NULL
  107361.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107362.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107363.  
  107364.     UPDATE Recepti 
  107365.     SET Iznos_So_DDV = Osnov_DDV + Iznos_Na_DDV  
  107366.     WHERE Recepti.Specif_Br IS NULL
  107367.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107368.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107369.  
  107370.     UPDATE Recepti 
  107371.     SET Iznos_Partic = P.Izn_Partic 
  107372.     FROM LstParticSkala P 
  107373.     WHERE Recepti.Iznos_So_DDV Between P.Iznos_Od AND P.Iznos_Do
  107374.           and Recepti.Specif_Br IS NULL
  107375.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107376.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107377.  
  107378.     UPDATE Recepti 
  107379.     SET Naplat_Partic=Iznos_Partic  
  107380.     WHERE Recepti.Specif_Br IS NULL
  107381.         AND Recepti.Broj_Recept >= @Broj_Recept_Od and Recepti.Broj_Recept <= @Broj_Recept_Do
  107382.         AND Recepti.Sifra_Apteka = @Sifra_Apteka
  107383.         and (Recepti.BezPartic IS NULL OR Recepti.BezPartic<>'D')
  107384.  
  107385.  
  107386.  
  107387.  
  107388.  
  107389.  
  107390.  
  107391.  
  107392.  
  107393. Go
  107394. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popolnifinpodvorecept_skalamarza]'))
  107395. drop procedure [dbo].[sp_popolnifinpodvorecept_skalamarza]
  107396.  
  107397. Go
  107398.  
  107399.  
  107400.  
  107401. CREATE     PROCEDURE sp_PopolniFinPodVoRecept_SkalaMarza
  107402.     @Godina    smallint,
  107403.     @Mesec    smallint
  107404. AS
  107405.     Declare @DatOd smalldatetime
  107406.     Declare @DatDo smalldatetime
  107407.     SET @DatOd = dbo.fn_NapraviDatum(@Godina, @Mesec,1)
  107408.     SET @DatDo = dbo.fn_VratiDatumOdDo(@Godina, @Mesec, 31)
  107409.     UPDATE Recepti 
  107410.     SET Rangiran='0' 
  107411.     FROM Katart L 
  107412.     WHERE Recepti.Sifra_Art = L.Sifra_Art AND L.Lokacija = 'P'
  107413.         AND Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107414.     UPDATE Recepti 
  107415.     SET Cena_Tender = L.SpeCena
  107416.     FROM Katart L 
  107417.     WHERE Recepti.Sifra_Art = L.Sifra_Art and L.Lokacija = 'P'
  107418.         AND Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107419.     UPDATE Recepti 
  107420.     SET Vid_Marza='1', Sifra_Oslobod='0' 
  107421.     WHERE  Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107422.     UPDATE Recepti 
  107423.     SET Proc_Marza=0 
  107424.     WHERE Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107425.     UPDATE Recepti 
  107426.     SET Iznos_Tender = Round(Kolku_Pakuv * Cena_Tender,2) 
  107427.     WHERE Kolku_Pakuv>0 AND Specif_Br IS NULL AND Datum_Izdav>=@DatOd AND Datum_Izdav<=@DatDo
  107428.     UPDATE Recepti 
  107429.     SET Iznos_Tender = Round(Recepti.Kolku_Kolic * Recepti.Cena_Tender / L.SodrziEd, 2) 
  107430.     FROM Katart L 
  107431.     WHERE Recepti.Kolku_Kolic>0 AND L.Sifra_Art=Recepti.Sifra_Art
  107432.         AND Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107433.     ------ Okt 2, 2007
  107434.     UPDATE Recepti 
  107435.     SET Iznos_Marza = P.Izn_Marza 
  107436.     FROM LstPartic P 
  107437.     WHERE Recepti.Iznos_Tender Between P.Iznos_Od AND P.Iznos_Do AND
  107438.         Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107439.     ------ Gotovo so Okt 2, 2007
  107440.     UPDATE Recepti 
  107441.     SET Osnov_DDV = Iznos_Tender + Iznos_Marza  
  107442.     WHERE Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107443.     UPDATE Recepti 
  107444.     SET ProcDDV = T.ProcOsn 
  107445.     FROM Tarifi T, Katart L 
  107446.     WHERE Recepti.Sifra_Art = L.Sifra_Art AND L.Sifra_Tar=T.Sifra_Tar
  107447.         AND Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107448.     UPDATE Recepti 
  107449.     SET Iznos_Na_DDV=Round(Osnov_DDV * ProcDDV/100,2)  
  107450.     WHERE Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107451.     UPDATE Recepti 
  107452.     SET Iznos_So_DDV=Osnov_DDV + Iznos_Na_DDV  
  107453.     WHERE Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107454.     UPDATE Recepti 
  107455.     SET Iznos_Partic=P.Izn_Partic 
  107456.     FROM LstParticSkala P 
  107457.     WHERE round(Recepti.Iznos_So_DDV, 0) > P.Iznos_Od AND round(Recepti.Iznos_So_DDV, 0) <= P.Iznos_Do AND
  107458.         Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107459.     UPDATE Recepti 
  107460.     SET Naplat_Partic=Iznos_Partic  
  107461.     WHERE Recepti.Specif_Br IS NULL AND Recepti.Datum_Izdav>=@DatOd AND Recepti.Datum_Izdav<=@DatDo
  107462.         and (Recepti.BezPartic IS NULL OR Recepti.BezPartic<>'D')
  107463.  
  107464.  
  107465.  
  107466.  
  107467. Go
  107468. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popravi1dokr]'))
  107469. drop procedure [dbo].[sp_popravi1dokr]
  107470.  
  107471. Go
  107472.  
  107473. CREATE           PROCEDURE sp_Popravi1Dokr
  107474.     @Sifra_OE    Smallint,
  107475.     @Sifra_Dok    Smallint,
  107476.     @Broj_Dok    int
  107477. AS
  107478.     Declare @SSQL As Varchar(1000)
  107479.     Declare @SSQL2 As Varchar(1000)
  107480.     Declare @SSQL3 As Varchar(1000)
  107481.     Declare @Uces As Decimal(6,2)
  107482.     Declare @Kasa as decimal(6,2)
  107483.     Declare @POsn As Decimal(6,2)
  107484.     Declare @DanDokCena As Char(1)
  107485.     Declare @DanMagCena As Char(1)
  107486.     Declare @Kolic As Decimal(18,6)
  107487.     Declare @DokCena As Decimal(18,6)
  107488.     Declare @MagCena As Decimal(18,6)
  107489.     Declare @dFaktorDDV As Decimal(6,4)
  107490.     Declare @dFaktorNeto As Decimal(6,4)
  107491.     Declare @mFaktorDDV As Decimal(6,4)
  107492.     Declare @mFaktorNeto As Decimal(6,4)
  107493.     Declare @Danok1 As Decimal(18,6)
  107494.     Declare @Danok2 As Decimal(18,6)
  107495.     Declare @PDanok1 As Decimal(18,6)
  107496.     Declare @PDanok2 As Decimal(18,6)
  107497.     Declare @NabIznos As Decimal(18,6)
  107498.     Declare @MagIznos As Decimal(18,6)
  107499.     Declare @MagIznosDan As Decimal(18,6)
  107500.     Declare @SumaNabIznos As Decimal(18,6)
  107501.     Declare @SumaMagIznos As Decimal(18,6)
  107502.     Declare @SumaMagIznosDan As Decimal(18,6)
  107503.     Declare @SumaDanok1 As Decimal(18,6)
  107504.     Declare @SumaDanok2 As Decimal(18,6)
  107505.     Declare @SumaPDanok1 As Decimal(18,6)
  107506.     Declare @SumaPDanok2 As Decimal(18,6)
  107507.     Declare @Suma As Decimal(18,6)    
  107508.     Create Table #tStavr
  107509.     (  Uces Decimal(6,2),
  107510.         Kasa Decimal(6,2),
  107511.         POsn Decimal(6,2),
  107512.         DanDokCena Char(1),
  107513.         DanMagCena Char(1),
  107514.         Kolic Decimal(18,6),
  107515.         DokCena Decimal(18,6),
  107516.         MagCena Decimal(18,6)
  107517.     )
  107518.  
  107519.         Set @SSQL2 = 'Select S.Uces, D.Kasa, S.POsn, S.DanDokCena, S.DanMagCena, S.Kolic, S.DokCena, S.MagCena
  107520.                     From Stavr S INNER JOIN Dokr D ON D.DokrID=S.DokrID 
  107521.                     Where S.Sifra_OE='+Cast(@Sifra_OE As Varchar(5)) + ' And S.Sifra_Dok=' + 
  107522.                     Cast(@Sifra_Dok As Varchar(5)) + ' And S.Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) + ' '
  107523.         Truncate Table #tStavr
  107524.         Insert #tStavr Exec(@SSQL2)
  107525.         Declare tStavr Cursor Fast_Forward For Select * From #tStavr
  107526.         Open tStavr
  107527.         Fetch Next From tStavr Into @Uces, @Kasa, @POsn, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena
  107528.         Set @SumaNabIznos = 0
  107529.         Set @SumaMagIznos = 0
  107530.         Set @SumaMagIznosDan = 0
  107531.         Set @SumaDanok1 = 0
  107532.         Set @SumaDanok2 = 0
  107533.         Set @SumaPDanok1 = 0
  107534.         Set @SumaPDanok2 = 0
  107535.         While @@Fetch_Status=0
  107536.         Begin
  107537.             If @DanDokCena='D'
  107538.                 Begin
  107539.                     Set @dFaktorDDV = 1
  107540.                     Set @dFaktorNeto = 1 + @POsn/100
  107541.                 End
  107542.             Else
  107543.                 Begin
  107544.                     Set @dFaktorDDV = 1 + @POsn/100
  107545.                     Set @dFaktorNeto = 1 
  107546.                 End
  107547.             If @DanMagCena='D'
  107548.                 Begin
  107549.                     Set @mFaktorDDV = 1 
  107550.                     Set @mFaktorNeto = 1 + @POsn/100
  107551.                 End
  107552.             Else
  107553.                 Begin
  107554.                     Set @mFaktorDDV = 1 + @POsn/100
  107555.                     Set @mFaktorNeto = 1 
  107556.                 End
  107557.             If @POsn > 15
  107558.                 Begin
  107559.                     Set @Danok1  = @Kolic * @DokCena * (1 - @Uces/100) * (1-@Kasa/100) / @dFaktorNeto * @POsn/100
  107560.                     Set @PDanok1 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  107561.                     Set @Danok2 = 0
  107562.                     Set @PDanok2 = 0
  107563.                 End
  107564.             Else
  107565.                 Begin
  107566.                     Set @Danok1  = 0
  107567.                     Set @PDanok1 = 0
  107568.                     Set @Danok2 = @Kolic * @DokCena * (1 - @Uces/100)* (1-@Kasa/100) / @dFaktorNeto * @POsn/100
  107569.                     Set @PDanok2 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  107570.                 End
  107571.             Set @NabIznos = @Kolic * @DokCena * @dFaktorDDV * (1 - @Uces/100)* (1-@Kasa/100)
  107572.             Set @MagIznos = @Kolic * @MagCena / @mFaktorNeto
  107573.             Set @MagIznosDan = @Kolic * @MagCena * @mFaktorDDV
  107574.             Set @SumaNabIznos = @SumaNabIznos + @NabIznos
  107575.             Set @SumaMagIznos = @SumaMagIznos + @MagIznos
  107576.             Set @SumaMagIznosDan = @SumaMagIznosDan + @MagIznosDan
  107577.             Set @SumaDanok1 = @SumaDanok1 + @Danok1
  107578.             Set @SumaDanok2 = @SumaDanok2 + @Danok2
  107579.             Set @SumaPDanok1 = @SumaPDanok1 + @PDanok1
  107580.             Set @SumaPDanok2 = @SumaPDanok2 + @PDanok2
  107581.             Fetch Next From tStavr Into @Uces, @Kasa, @POsn, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena
  107582.             End --While
  107583.         Close tStavr
  107584.         Deallocate tStavr
  107585.          Set @SSQL3 = 'Update Dokr
  107586.             Set Toc200  = ' + Cast(@SumaNabIznos As Varchar(20)) + ', 
  107587.                  MagVr   = ' + Cast(@SumaMagIznos As Varchar(20)) + ',         
  107588.                  MagVrDan= ' + Cast(@SumaMagIznosDan As Varchar(20)) + ',         
  107589.                  Marza   = ' + Cast(@SumaMagIznos - (@SumaNabIznos - @SumaDanok1 - @SumaDanok2) As Varchar(20)) + ',         
  107590.                  Danok1  = ' + Cast(@SumaDanok1 As Varchar(20)) + ',         
  107591.                  Danok2  = ' + Cast(@SumaDanok2 As Varchar(20)) + ',         
  107592.                  PDanok1 = ' + Cast(@SumaPDanok1 As Varchar(20)) + ',         
  107593.                  PDanok2 = ' + Cast(@SumaPDanok2 As Varchar(20)) + ' 
  107594.         Where Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' And Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + ' And Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) + ' '
  107595.         Exec(@SSQL3)
  107596.  
  107597.  
  107598.  
  107599. Go
  107600. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popravidokr]'))
  107601. drop procedure [dbo].[sp_popravidokr]
  107602.  
  107603. Go
  107604.  
  107605. CREATE            PROCEDURE sp_PopraviDokr
  107606.     @Sifra_OE Smallint,
  107607.     @Sifra_Dok Smallint,
  107608.     @Datum_Od Smalldatetime = Null,
  107609.     @Datum_Do Smalldatetime = Null,
  107610.     @KolkuDok Int OUTPUT
  107611. AS
  107612.     Declare @SSQL As Varchar(1000)
  107613.     Declare @SSQL2 As Varchar(1000)
  107614.     Declare @SSQL3 As Varchar(1000)
  107615.     Declare @Broj_Dok As Int
  107616.     Declare @Sifra_Prim As Smallint
  107617.     Declare @ImaDodatna As Char(1)
  107618.     Declare @Uces As Decimal(6,2)
  107619.     Declare @Kasa as decimal(6,2)
  107620.     Declare @POsn As Decimal(6,2)
  107621.     Declare @DanDokCena As Char(1)
  107622.     Declare @DanMagCena As Char(1)
  107623.     Declare @Kolic As Decimal(18,6)
  107624.     Declare @DokCena As Decimal(18,6)
  107625.     Declare @MagCena As Decimal(18,6)
  107626.     Declare @dFaktorDDV As Decimal(6,4)
  107627.     Declare @dFaktorNeto As Decimal(6,4)
  107628.     Declare @mFaktorDDV As Decimal(6,4)
  107629.     Declare @mFaktorNeto As Decimal(6,4)
  107630.     Declare @Danok1 As Decimal(18,6)
  107631.     Declare @Danok2 As Decimal(18,6)
  107632.     Declare @PDanok1 As Decimal(18,6)
  107633.     Declare @PDanok2 As Decimal(18,6)
  107634.     Declare @NabIznos As Decimal(18,6)
  107635.     Declare @MagIznos As Decimal(18,6)
  107636.     Declare @MagIznosDan As Decimal(18,6)
  107637.     Declare @SumaNabIznos As Decimal(18,6)
  107638.     Declare @SumaMagIznos As Decimal(18,6)
  107639.     Declare @SumaMagIznosDan As Decimal(18,6)
  107640.     Declare @SumaDanok1 As Decimal(18,6)
  107641.     Declare @SumaDanok2 As Decimal(18,6)
  107642.     Declare @SumaPDanok1 As Decimal(18,6)
  107643.     Declare @SumaPDanok2 As Decimal(18,6)
  107644.     Declare @Suma As Decimal(18,6)    
  107645.     Set @SSQL = 'Select Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna From Dokr Where 1=1 '
  107646.     If @Sifra_OE Is Not NULL
  107647.         Set @SSQL = @SSQL + 'And Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  107648.     If @Sifra_Dok Is Not NULL
  107649.         Set @SSQL = @SSQL + 'And Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + ' '
  107650.     If @Datum_Od Is Not NULL
  107651.         Set @SSQL = @SSQL + 'And Datum_Dok >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  107652.     If @Datum_Do Is Not NULL
  107653.         Set @SSQL = @SSQL + 'And Datum_Dok <=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  107654.     Create Table #tStavr
  107655.     (  Uces Decimal(6,2),
  107656.         Kasa Decimal(6,2),
  107657.         POsn Decimal(6,2),
  107658.         DanDokCena Char(1),
  107659.         DanMagCena Char(1),
  107660.         Kolic Decimal(18,6),
  107661.         DokCena Decimal(18,6),
  107662.         MagCena Decimal(18,6)
  107663.     )
  107664.     Create Table #tDokr
  107665.     (  Sifra_OE Smallint,
  107666.         Sifra_Dok Smallint,
  107667.         Broj_Dok Int,
  107668.         Sifra_Prim Smallint,
  107669.         ImaDodatna Char(1)
  107670.     )
  107671.     Insert #tDokr Exec(@SSQL)
  107672.     Set @KolkuDok=@@RowCount
  107673.     Declare tDokr Cursor Fast_Forward For Select * From #tDokr
  107674.     Open tDokr
  107675.     Fetch Next From tDokr Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna
  107676.     While @@Fetch_Status = 0
  107677.     Begin
  107678.         Print 'Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + '; Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + '; Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) --+ '; Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + '; ImaDodatna='  + @ImaDodatna
  107679.         Set @SSQL2 = 'Select S.Uces, D.Kasa, S.POsn, S.DanDokCena, S.DanMagCena, S.Kolic, S.DokCena, S.MagCena
  107680.                     From Stavr S INNER JOIN Dokr D ON D.DokrID=S.DokrID 
  107681.                     Where S.Sifra_OE='+Cast(@Sifra_OE As Varchar(5)) + ' And S.Sifra_Dok=' + 
  107682.                     Cast(@Sifra_Dok As Varchar(5)) + ' And S.Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) + ' '
  107683.         If @Sifra_Prim Is Not NULL
  107684.             Set @SSQL2 = @SSQL2 + 'And S.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + ' '
  107685.         If @ImaDodatna Is Not NULL
  107686.             Set @SSQL2 = @SSQL2 + 'And S.ImaDodatna=''' + @ImaDodatna + ''' '
  107687.         Truncate Table #tStavr
  107688.         Insert #tStavr Exec(@SSQL2)
  107689.         Declare tStavr Cursor Fast_Forward For Select * From #tStavr
  107690.         Open tStavr
  107691.         Fetch Next From tStavr Into @Uces, @Kasa, @POsn, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena
  107692.         Set @SumaNabIznos = 0
  107693.         Set @SumaMagIznos = 0
  107694.         Set @SumaMagIznosDan = 0
  107695.         Set @SumaDanok1 = 0
  107696.         Set @SumaDanok2 = 0
  107697.         Set @SumaPDanok1 = 0
  107698.         Set @SumaPDanok2 = 0
  107699.         While @@Fetch_Status=0
  107700.         Begin
  107701.             If @DanDokCena='D'
  107702.                 Begin
  107703.                     Set @dFaktorDDV = 1
  107704.                     Set @dFaktorNeto = 1 + @POsn/100
  107705.                 End
  107706.             Else
  107707.                 Begin
  107708.                     Set @dFaktorDDV = 1 + @POsn/100
  107709.                     Set @dFaktorNeto = 1 
  107710.                 End
  107711.             If @DanMagCena='D'
  107712.                 Begin
  107713.                     Set @mFaktorDDV = 1 
  107714.                     Set @mFaktorNeto = 1 + @POsn/100
  107715.                 End
  107716.             Else
  107717.                 Begin
  107718.                     Set @mFaktorDDV = 1 + @POsn/100
  107719.                     Set @mFaktorNeto = 1 
  107720.                 End
  107721.             If @POsn > 15
  107722.                 Begin
  107723.                     Set @Danok1  = @Kolic * @DokCena * (1 - @Uces/100) * (1-@Kasa/100) / @dFaktorNeto * @POsn/100
  107724.                     Set @PDanok1 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  107725.                     Set @Danok2 = 0
  107726.                     Set @PDanok2 = 0
  107727.                 End
  107728.             Else
  107729.                 Begin
  107730.                     Set @Danok1  = 0
  107731.                     Set @PDanok1 = 0
  107732.                     Set @Danok2 = @Kolic * @DokCena * (1 - @Uces/100)* (1-@Kasa/100) / @dFaktorNeto * @POsn/100
  107733.                     Set @PDanok2 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  107734.                 End
  107735.             Set @NabIznos = @Kolic * @DokCena * @dFaktorDDV * (1 - @Uces/100)* (1-@Kasa/100)
  107736.             Set @MagIznos = @Kolic * @MagCena / @mFaktorNeto
  107737.             Set @MagIznosDan = @Kolic * @MagCena * @mFaktorDDV
  107738.             Set @SumaNabIznos = @SumaNabIznos + @NabIznos
  107739.             Set @SumaMagIznos = @SumaMagIznos + @MagIznos
  107740.             Set @SumaMagIznosDan = @SumaMagIznosDan + @MagIznosDan
  107741.             Set @SumaDanok1 = @SumaDanok1 + @Danok1
  107742.             Set @SumaDanok2 = @SumaDanok2 + @Danok2
  107743.             Set @SumaPDanok1 = @SumaPDanok1 + @PDanok1
  107744.             Set @SumaPDanok2 = @SumaPDanok2 + @PDanok2
  107745.             Fetch Next From tStavr Into @Uces, @Kasa, @POsn, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena
  107746.             End --While
  107747.         Close tStavr
  107748.         Deallocate tStavr
  107749. print @SumaNabIznos
  107750. print @SumaMagIznos
  107751. print @SumaMAgIznosDan
  107752. print @SumaDanok1
  107753. print @SumaDanok2
  107754. print @SumaPDanok1
  107755. print @SumaPDanok2
  107756. print '-----------'
  107757. SET @SumaNabIznos = round(@SumaNabIznos,0)
  107758.         Set @SSQL3 = 'Update Dokr
  107759.             Set Toc200  = ' + Cast(@SumaNabIznos As Varchar(20)) + ', 
  107760.                  MagVr   = ' + Cast(@SumaMagIznos As Varchar(20)) + ',         
  107761.                  MagVrDan= ' + Cast(@SumaMagIznosDan As Varchar(20)) + ',         
  107762.                  Marza   = ' + Cast(@SumaMagIznos - (@SumaNabIznos - @SumaDanok1 - @SumaDanok2) As Varchar(20)) + ',         
  107763.                  Danok1  = ' + Cast(@SumaDanok1 As Varchar(20)) + ',         
  107764.                  Danok2  = ' + Cast(@SumaDanok2 As Varchar(20)) + ',         
  107765.                  PDanok1 = ' + Cast(@SumaPDanok1 As Varchar(20)) + ',         
  107766.                  PDanok2 = ' + Cast(@SumaPDanok2 As Varchar(20)) + ' 
  107767.         Where Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' And Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + ' And Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) + ' '
  107768.         If @Sifra_Prim Is Not NULL
  107769.             Set @SSQL3 = @SSQL3 + 'And Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + ' '
  107770.         If @ImaDodatna Is Not NULL
  107771.             Set @SSQL3 = @SSQL3 + 'And ImaDodatna=''' + @ImaDodatna + ''' '
  107772.         Exec(@SSQL3)
  107773.         Fetch Next From tDokr Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna
  107774.     End --While
  107775.     Close tDokr
  107776.     Deallocate tDokr
  107777.     Return @@Error
  107778.  
  107779.  
  107780.  
  107781. Go
  107782. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_popravidokr_tkn]'))
  107783. drop procedure [dbo].[sp_popravidokr_tkn]
  107784.  
  107785. Go
  107786.  
  107787. create      PROCEDURE sp_PopraviDokr_TKN
  107788.     @Sifra_OE Smallint,
  107789.     @Datum_Od Smalldatetime = Null,
  107790.     @Datum_Do Smalldatetime = Null,
  107791.     @KolkuDok Int OUTPUT
  107792. AS
  107793.  
  107794.     Declare @Sifra_Dok Smallint
  107795.     set @SIfra_DOk = 912
  107796.  
  107797.     Declare @SSQL As Varchar(1000)
  107798.     Declare @SSQL2 As Varchar(1000)
  107799.     Declare @SSQL3 As Varchar(1000)
  107800.     Declare @Broj_Dok As Int
  107801.     Declare @Sifra_Prim As Smallint
  107802.     Declare @ImaDodatna As Char(1)
  107803.     Declare @Uces As Decimal(6,2)
  107804.     Declare @Kasa as decimal(6,2)
  107805.     Declare @POsn As Decimal(6,2)
  107806.     Declare @DanDokCena As Char(1)
  107807.     Declare @DanMagCena As Char(1)
  107808.     Declare @Kolic As Decimal(18,6)
  107809.     Declare @DokCena As Decimal(18,6)
  107810.     Declare @MagCena As Decimal(18,6)
  107811.     Declare @dFaktorDDV As Decimal(6,4)
  107812.     Declare @dFaktorNeto As Decimal(6,4)
  107813.     Declare @mFaktorDDV As Decimal(6,4)
  107814.     Declare @mFaktorNeto As Decimal(6,4)
  107815.     Declare @Danok1 As Decimal(18,6)
  107816.     Declare @Danok2 As Decimal(18,6)
  107817.     Declare @PDanok1 As Decimal(18,6)
  107818.     Declare @PDanok2 As Decimal(18,6)
  107819.     Declare @NabIznos As Decimal(18,6)
  107820.     Declare @MagIznos As Decimal(18,6)
  107821.     Declare @MagIznosDan As Decimal(18,6)
  107822.     Declare @SumaNabIznos As Decimal(18,6)
  107823.     Declare @SumaMagIznos As Decimal(18,6)
  107824.     Declare @SumaMagIznosDan As Decimal(18,6)
  107825.     Declare @SumaDanok1 As Decimal(18,6)
  107826.     Declare @SumaDanok2 As Decimal(18,6)
  107827.     Declare @SumaPDanok1 As Decimal(18,6)
  107828.     Declare @SumaPDanok2 As Decimal(18,6)
  107829.     Declare @Suma As Decimal(18,6)    
  107830.     Set @SSQL = 'Select Sifra_OE, Sifra_Dok, Broj_Dok, Sifra_Prim, ImaDodatna From Dokr Where 1=1 '
  107831.     If @Sifra_OE Is Not NULL
  107832.         Set @SSQL = @SSQL + 'And Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  107833.     If @Sifra_Dok Is Not NULL
  107834.         Set @SSQL = @SSQL + 'And Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + ' '
  107835.     If @Datum_Od Is Not NULL
  107836.         Set @SSQL = @SSQL + 'And Datum_Dok >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  107837.     If @Datum_Do Is Not NULL
  107838.         Set @SSQL = @SSQL + 'And Datum_Dok <=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  107839.     Create Table #tStavr
  107840.     (      Uces Decimal(6,2),
  107841.         Kasa Decimal(6,2),
  107842.         POsn Decimal(6,2),
  107843.         DanDokCena Char(1),
  107844.         DanMagCena Char(1),
  107845.         Kolic Decimal(18,6),
  107846.         DokCena Decimal(18,6),
  107847.         MagCena Decimal(18,6)
  107848.     )
  107849.     Create Table #tDokr
  107850.     (  Sifra_OE Smallint,
  107851.         Sifra_Dok Smallint,
  107852.         Broj_Dok Int,
  107853.         Sifra_Prim Smallint,
  107854.         ImaDodatna Char(1)
  107855.     )
  107856.     Insert #tDokr Exec(@SSQL)
  107857.     Set @KolkuDok=@@RowCount
  107858.     Declare tDokr Cursor Fast_Forward For Select * From #tDokr
  107859.     Open tDokr
  107860.     Fetch Next From tDokr Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna
  107861.     While @@Fetch_Status = 0
  107862.     Begin
  107863.         Print 'Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + '; Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + '; Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) --+ '; Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + '; ImaDodatna='  + @ImaDodatna
  107864.         Set @SSQL2 = 'Select S.Uces, D.Kasa, S.POsn, S.DanDokCena, S.DanMagCena, S.Alt_Kolic, S.DokCena, S.MagCena
  107865.                     From Stavr S INNER JOIN Dokr D ON D.DokrID=S.DokrID 
  107866.                     Where S.Sifra_OE='+Cast(@Sifra_OE As Varchar(5)) + ' And S.Sifra_Dok=' + 
  107867.                     Cast(@Sifra_Dok As Varchar(5)) + ' And S.Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) + ' '
  107868.         If @Sifra_Prim Is Not NULL
  107869.             Set @SSQL2 = @SSQL2 + 'And S.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + ' '
  107870.         If @ImaDodatna Is Not NULL
  107871.             Set @SSQL2 = @SSQL2 + 'And S.ImaDodatna=''' + @ImaDodatna + ''' '
  107872.         Truncate Table #tStavr
  107873.         Insert #tStavr Exec(@SSQL2)
  107874.         Declare tStavr Cursor Fast_Forward For Select * From #tStavr
  107875.         Open tStavr
  107876.         Fetch Next From tStavr Into @Uces, @Kasa, @POsn, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena
  107877.         Set @SumaNabIznos = 0
  107878.         Set @SumaMagIznos = 0
  107879.         Set @SumaMagIznosDan = 0
  107880.         Set @SumaDanok1 = 0
  107881.         Set @SumaDanok2 = 0
  107882.         Set @SumaPDanok1 = 0
  107883.         Set @SumaPDanok2 = 0
  107884.         While @@Fetch_Status=0
  107885.         Begin
  107886.             If @DanDokCena='D'
  107887.                 Begin
  107888.                     Set @dFaktorDDV = 1
  107889.                     Set @dFaktorNeto = 1 + @POsn/100
  107890.                 End
  107891.             Else
  107892.                 Begin
  107893.                     Set @dFaktorDDV = 1 + @POsn/100
  107894.                     Set @dFaktorNeto = 1 
  107895.                 End
  107896.             If @DanMagCena='D'
  107897.                 Begin
  107898.                     Set @mFaktorDDV = 1 
  107899.                     Set @mFaktorNeto = 1 + @POsn/100
  107900.                 End
  107901.             Else
  107902.                 Begin
  107903.                     Set @mFaktorDDV = 1 + @POsn/100
  107904.                     Set @mFaktorNeto = 1 
  107905.                 End
  107906.             If @POsn > 15
  107907.                 Begin
  107908.                     Set @Danok1  = @Kolic * @DokCena * (1 - @Uces/100) * (1-@Kasa/100) / @dFaktorNeto * @POsn/100
  107909.                     Set @PDanok1 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  107910.                     Set @Danok2 = 0
  107911.                     Set @PDanok2 = 0
  107912.                 End
  107913.             Else
  107914.                 Begin
  107915.                     Set @Danok1  = 0
  107916.                     Set @PDanok1 = 0
  107917.                     Set @Danok2 = @Kolic * @DokCena * (1 - @Uces/100)* (1-@Kasa/100) / @dFaktorNeto * @POsn/100
  107918.                     Set @PDanok2 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  107919.                 End
  107920.  
  107921.             Set @NabIznos = @Kolic * (@MagCena * @mFaktorDDV - @DokCena * @dFaktorDDV)
  107922.             set @MagIznosDan = @NabIznos
  107923.  
  107924.             set @NabIznos = 0
  107925.  
  107926.                 Set @SumaNabIznos = @SumaNabIznos + @NabIznos
  107927.                 Set @SumaMagIznosDan = @SumaMagIznosDan + @MagIznosDan
  107928.  
  107929.             Fetch Next From tStavr Into @Uces, @Kasa, @POsn, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena
  107930.             End --While
  107931.         Close tStavr
  107932.         Deallocate tStavr
  107933. print @SumaNabIznos
  107934. print @SumaMagIznos
  107935. print @SumaMAgIznosDan
  107936. print @SumaDanok1
  107937. print @SumaDanok2
  107938. print @SumaPDanok1
  107939. print @SumaPDanok2
  107940. print '-----------'
  107941. SET @SumaNabIznos = round(@SumaNabIznos,0)
  107942.  
  107943.         Set @SSQL3 = 'Update Dokr set
  107944.                  MagVrDan= ' + Cast(@SumaMagIznosDan As Varchar(20)) + ',         
  107945.                  Toc200 = ' + Cast(@SumaNabIznos As Varchar(20)) + ' 
  107946.         Where Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' And Sifra_Dok=' + Cast(@Sifra_Dok As Varchar(5)) + ' And Broj_Dok=' + Cast(@Broj_Dok As Varchar(6)) + ' '
  107947.         If @Sifra_Prim Is Not NULL
  107948.             Set @SSQL3 = @SSQL3 + 'And Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + ' '
  107949.         If @ImaDodatna Is Not NULL
  107950.             Set @SSQL3 = @SSQL3 + 'And ImaDodatna=''' + @ImaDodatna + ''' '
  107951.         Exec(@SSQL3)
  107952.         Fetch Next From tDokr Into @Sifra_OE, @Sifra_Dok, @Broj_Dok, @Sifra_Prim, @ImaDodatna
  107953.     End --While
  107954.     Close tDokr
  107955.     Deallocate tDokr
  107956.     Return @@Error
  107957.  
  107958.  
  107959.  
  107960.  
  107961.  
  107962.  
  107963. Go
  107964. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_posldevcena]'))
  107965. drop procedure [dbo].[sp_posldevcena]
  107966.  
  107967. Go
  107968.  
  107969. CREATE  PROCEDURE sp_PoslDevCena
  107970.     @Sifra_Art varchar(20),
  107971.     @DevCena    decimal(18,6) = Null Output
  107972. AS
  107973. Set @DevCena = (Select Top 1 S.DevCena From  DevKalk D 
  107974. Inner Join DevStavk S On D.Sifra_Oe=S.Sifra_Oe And D.Broj_Kalk=S.Broj_Kalk AND D.Sifra_Dok=S.Sifra_Dok
  107975. Where D.Sifra_Oe <= 900 And S.Sifra_Art = @Sifra_Art
  107976. Order By D.Datum_Dok Desc, D.Broj_Kalk Desc)
  107977.  
  107978.  
  107979.  
  107980. Go
  107981. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_posldomcena]'))
  107982. drop procedure [dbo].[sp_posldomcena]
  107983.  
  107984. Go
  107985.  
  107986.  
  107987. Create  PROCEDURE sp_PoslDomCena
  107988.     @Sifra_Art varchar(20),
  107989.     @Sifra_Oe  smallint,
  107990.     @DokCena    decimal(18,6) = Null Output,
  107991.     @DanDokCena    char (1) = Null Output
  107992.  AS
  107993.         Declare @DokId integer
  107994.     Set @DokId = (Select Top 1 S.DokId 
  107995.             From  Stavr S 
  107996.             Where S.Sifra_Oe = @Sifra_Oe And S.Sifra_Art = @Sifra_Art
  107997.                               And (S.Imadodatna = '' or S.Imadodatna is null) And VlIzl = 'V'
  107998.             Order By S.Datum_Dok Desc)
  107999.     if @DokId is Not Null
  108000.         select @DokCena = Dokcena, @DanDokCena = DanDokCena
  108001.         from Stavr
  108002.         where DokId = @DokId
  108003.  
  108004.  
  108005.  
  108006. Go
  108007. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_poslnabcenazaart]'))
  108008. drop procedure [dbo].[sp_poslnabcenazaart]
  108009.  
  108010. Go
  108011. CREATE        PROCEDURE sp_PoslNabCenaZaArt
  108012.     @Sifra_Art   varchar(20),
  108013.     @Datum_Do Smalldatetime,
  108014.     @IskluciKup   varchar(200) = '660663, 660660, 021000',
  108015.     @OrgEdZaNabCeni smallint = 100,            
  108016.     @TipDokPriem    smallint = 1,                    
  108017.     @CenaSoDDV decimal(18,6)    OUTPUT,
  108018.     @CenaBEZDDV decimal(18,6)   OUTPUT,
  108019.     @Sifra_Kup  varchar(9) = ''  OUTPUT
  108020. AS
  108021.     Declare @SSQL   Varchar(2000)
  108022.     Declare @DokID int
  108023.     Declare @MaxDat  smalldatetime
  108024.     SELECT @MaxDat =  max(Datum_Dok), @DokID = max(DokID)
  108025.     FROM Stavr 
  108026.     WHERE Sifra_Art = @Sifra_Art
  108027.     AND Datum_Dok <= Cast(@Datum_Do As Varchar(35))  
  108028.     AND Kolic > 0 AND VlIZl = 'V' AND (ImaDodatna Is NULL  OR ImaDodatna =' ' OR ImaDodatna ='') 
  108029.     AND Sifra_OE =   Cast(@OrgEdZaNabCeni as varchar(4))
  108030.     AND Sifra_Dok = Cast(@TipDokPriem as varchar(3))
  108031.     SELECT @CenaSoDDV = dbo.fn_VratiVredIzl(1, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces,D.Kasa, 'D'),
  108032.          @CenaBezDDV = dbo.fn_VratiVredIzl(1, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces,D.Kasa,  'N'),
  108033.          @Sifra_kup = D.Sifra_Kup
  108034.              FROM Stavr S
  108035.     INNER JOIN Dokr D ON D.DokrID = S.DokrID
  108036.     WHERE S.DokID = @DokID
  108037.  
  108038.  
  108039. Go
  108040. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_poslprodcenazakup]'))
  108041. drop procedure [dbo].[sp_poslprodcenazakup]
  108042.  
  108043. Go
  108044.  
  108045.  
  108046.  
  108047.  
  108048. CREATE     PROCEDURE sp_PoslProdCenaZaKup
  108049.     @Sifra_Art    Varchar(20), 
  108050.     @Sifra_OE    smallint=NULL,
  108051.     @Sifra_Kup    char(6),
  108052.     @VratiCenaSoDan char(1),
  108053.     @VlIzl    char(1)='I'
  108054. AS
  108055. IF @Sifra_OE IS NOT NULL
  108056.     Select TOP 1 dbo.fn_VratiCena(S.DokCena, S.POsn,S.DanDokCena,@VratiCenaSoDan)  FROM Stavr S WITH(NOLOCK) INNER JOIN Dokr D ON S.DokrID=D.DokrID
  108057.     WHERE S.Sifra_Art = @Sifra_Art AND S.Sifra_Oe = @Sifra_oe AND D.Sifra_Kup=@Sifra_Kup AND D.VlIzl=@VlIzl ORDER By S.Datum_Dok Desc
  108058. ELSE
  108059.     Select TOP 1 dbo.fn_VratiCena(S.DokCena, S.POsn,S.DanDokCena,@VratiCenaSoDan) FROM Stavr S WITH(NOLOCK) INNER JOIN Dokr D ON S.DokrID=D.DokrID
  108060.     WHERE S.Sifra_Art = @Sifra_Art AND D.Sifra_Kup=@Sifra_Kup AND D.VlIzl=@VlIzl ORDER By S.Datum_Dok Desc
  108061.  
  108062.  
  108063.  
  108064.  
  108065.  
  108066.  
  108067. Go
  108068. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_poslprodcenazaoe]'))
  108069. drop procedure [dbo].[sp_poslprodcenazaoe]
  108070.  
  108071. Go
  108072.  
  108073.  
  108074.  
  108075.  
  108076.  
  108077. CREATE     PROCEDURE sp_PoslProdCenaZaOE
  108078.     @Sifra_Art    Varchar(20), 
  108079.     @Sifra_OE    smallint=NULL,
  108080.     @Sifra_OEPrim    smallint,
  108081.     @VratiCenaSoDan char(1) 
  108082. AS
  108083. Select TOP 1 dbo.fn_VratiCena(S.DokCena, S.POsn,S.DanDokCena,@VratiCenaSoDan) FROM Stavr S WITH(NOLOCK) 
  108084. WHERE S.Sifra_Art = @Sifra_Art AND S.Sifra_OE=@Sifra_OE AND S.Sifra_Prim=@Sifra_OEPrim AND S.VlIzl='I'  ORDER By S.Datum_Dok Desc
  108085.  
  108086.  
  108087.  
  108088.  
  108089.  
  108090.  
  108091.  
  108092. Go
  108093. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavi_datum_poc_proiz]'))
  108094. drop procedure [dbo].[sp_postavi_datum_poc_proiz]
  108095.  
  108096. Go
  108097.  
  108098.  
  108099.  
  108100.  
  108101. CREATE  PROCEDURE sp_Postavi_Datum_Poc_Proiz 
  108102.     @RabNalID    int,
  108103.     @Datum_Poc_Proiz smalldatetime
  108104. AS
  108105.     UPDATE RabNal SET Datum_Poc_Proiz=@Datum_Poc_Proiz
  108106.     WHERE RabNalID = @RabNalID
  108107.               and (Datum_Poc_Proiz is null or Datum_Poc_Proiz < '2006-1-1')
  108108.     RETURN @@ERROR
  108109.  
  108110.  
  108111.  
  108112. Go
  108113. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavi_nalog_ispor]'))
  108114. drop procedure [dbo].[sp_postavi_nalog_ispor]
  108115.  
  108116. Go
  108117.  
  108118.  
  108119. CREATE   PROCEDURE sp_Postavi_Nalog_Ispor
  108120.     @Sifra_Oe    smallint,
  108121.     @Sifra_Nar    smallint,
  108122.     @Broj_Nar    int,
  108123.     @Sifra_Za_Dok    smallint = Null,
  108124.     @Sifra_Za_Org    smallint = Null,
  108125.     @Opis         char(50)=Null,
  108126.     @Dat_Za_Ispor    smalldatetime = Null,
  108127.     @Sifra_Za_Prim    smallint = Null
  108128.  
  108129. AS
  108130.  
  108131.     Declare @SetStat char(1)
  108132.  
  108133.     if @SIfra_Za_Dok is null and @Sifra_Za_Org is null
  108134.        Begin
  108135.         set @SetStat = null
  108136.         set @Dat_Za_ISpor = null
  108137.         end
  108138.     else
  108139.         set @SetStat = 'P'
  108140.  
  108141.     Update Naracki 
  108142.     Set Sifra_Za_Dok = @Sifra_Za_Dok, Sifra_Za_Org = @Sifra_Za_Org,
  108143.         Stat_Dok_Nar  = @SetStat, Dat_Isporaka = @Dat_Za_Ispor,
  108144.         Sifra_Za_Prim = @Sifra_Za_Prim
  108145.     Where Sifra_Oe=@Sifra_Oe And Sifra_Nar=@Sifra_Nar And Broj_Nar=@Broj_Nar
  108146.  
  108147.  
  108148. Go
  108149. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavicena]'))
  108150. drop procedure [dbo].[sp_postavicena]
  108151.  
  108152. Go
  108153.  
  108154.  
  108155.  
  108156. CREATE  PROCEDURE sp_PostaviCena
  108157.     @Sifra_OE Smallint,
  108158.     @Sifra_Art Varchar(20),
  108159.     @Cena Decimal(18,6),
  108160.     @DanCena Char(1),
  108161.     @POsn Decimal(6,2),
  108162.     @Dodaden Tinyint OUTPUT,
  108163.     @Izmenet Tinyint OUTPUT
  108164. AS
  108165. if exists (Select sifra_oe from orged where sifra_Oe=@Sifra_OE)
  108166. Begin
  108167.     Select @Sifra_OE, @Sifra_Art From Soart
  108168.     Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  108169.     If @@RowCount = 1
  108170.         Begin
  108171.             Update Soart
  108172.                 Set Cena=@Cena,
  108173.                      DanCena=@DanCena
  108174.             Where Sifra_OE=@Sifra_OE And Sifra_Art=@Sifra_Art
  108175.             Set @Dodaden = 0
  108176.             Set @Izmenet = 1
  108177.         End
  108178.     Else
  108179.         Begin
  108180.             Insert Soart
  108181.                 (Sifra_OE, Sifra_Art, Vlez, Izlez, Prof_Rez, Cena, DanCena, POsn, NabCena, DokCena, Uces)
  108182.             Values(@Sifra_OE, @Sifra_Art, 0, 0,   0,       @Cena, @DanCena, @POsn, 0,     0,       0)
  108183.             Set @Dodaden = 1
  108184.             Set @Izmenet = 0
  108185.         End
  108186. End
  108187.     Return @@Error
  108188.  
  108189.  
  108190.  
  108191. Go
  108192. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postaviceni]'))
  108193. drop procedure [dbo].[sp_postaviceni]
  108194.  
  108195. Go
  108196.  
  108197. CREATE   PROCEDURE sp_PostaviCeni
  108198.     @Sifra_Art Varchar(20),
  108199.     @DogCena Decimal(18,4),
  108200.     @MalCena Decimal(18,4),
  108201.     @GotCena Decimal(18,4),
  108202.         @Fakturna Decimal(18,4)
  108203. AS
  108204.     If Exists (Select Sifra_Art From Katart Where Sifra_Art=@Sifra_Art)
  108205.     Update Katart Set DogCena=@DogCena,    MalCena=@MalCena, GotCena=@GotCena, Fakturna=@Fakturna,
  108206.     IzmenetNa=GetDate(), IzmenetOd=SUser_SName()         Where Sifra_Art=@Sifra_Art
  108207.     Return @@Error
  108208.  
  108209.  
  108210.  
  108211. Go
  108212. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postaviceniodgrorg]'))
  108213. drop procedure [dbo].[sp_postaviceniodgrorg]
  108214.  
  108215. Go
  108216. CREATE  PROCEDURE sp_PostaviCeniOdGrOrg
  108217.     @Za_OrgEd    smallint,
  108218.     @Od_GrOrgEd    char(6),
  108219.     @Datum_RazlCeni smalldatetime
  108220. AS
  108221.     Declare @Sifra_Art Varchar(20)
  108222.     Declare @KrCena Decimal(18,6)
  108223.     Declare Ceni1 Cursor Fast_Forward For
  108224.         Select Sifra_Art, Cena  From CenGrOrg WHERE Sif_GrOrg = @Od_GrOrgEd
  108225.     Open Ceni1
  108226.     Fetch Next From Ceni1 Into @Sifra_Art, @KrCena
  108227.     While @@Fetch_Status = 0
  108228.     Begin            
  108229.         exec sp_902  @Za_OrgEd, @Sifra_Art, @KrCena,'D', @Datum_RazlCeni
  108230.         Fetch Next From Ceni1 Into @Sifra_Art, @KrCena
  108231.     End
  108232.     Close Ceni1
  108233.     Deallocate Ceni1
  108234.  
  108235.  
  108236.  
  108237. Go
  108238. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postaviceniodkatart]'))
  108239. drop procedure [dbo].[sp_postaviceniodkatart]
  108240.  
  108241. Go
  108242. CREATE  PROCEDURE sp_PostaviCeniOdKatart
  108243.     @Za_OrgEd    smallint,
  108244.     @Datum_RazlCeni smalldatetime
  108245. AS
  108246.     Declare @Sifra_Art Varchar(20)
  108247.     Declare @KrCena Decimal(18,6)
  108248.     Declare Ceni1 Cursor Fast_Forward For
  108249.         Select Sifra_Art, DogCena  From Katart WHERE DogCena > 0
  108250.     Open Ceni1
  108251.     Fetch Next From Ceni1 Into @Sifra_Art, @KrCena
  108252.     While @@Fetch_Status = 0
  108253.     Begin            
  108254.         exec sp_902  @Za_OrgEd, @Sifra_Art, @KrCena,'D', @Datum_RazlCeni
  108255.         Fetch Next From Ceni1 Into @Sifra_Art, @KrCena
  108256.     End
  108257.     Close Ceni1
  108258.     Deallocate Ceni1
  108259.  
  108260. Go
  108261. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavidatumaktkartkor]'))
  108262. drop procedure [dbo].[sp_postavidatumaktkartkor]
  108263.  
  108264. Go
  108265. CREATE PROCEDURE sp_PostaviDatumAktKartKor
  108266.  
  108267. AS
  108268.  
  108269.     Create Table #DatAktKor
  108270.     (
  108271.         Sifra_Kor    varchar(20),
  108272.         Datum_Akt    smalldatetime
  108273.     )
  108274.  
  108275.     Insert Into #DatAktKor 
  108276.     Select KP.Sifra_Kor, Min(KP.Datum_Ska) 
  108277.     From KartProm KP
  108278.     Inner Join KartKor KK On KK.Sifra_Kor=KP.Sifra_Kor
  108279.     Where KK.Datum_Akt Is Null
  108280.     Group By KP.Sifra_Kor
  108281.  
  108282.     Update KartKor 
  108283.     Set KartKor.Datum_Akt = #DatAktKor.Datum_Akt
  108284.     From #DatAktKor
  108285.     Where KartKor.Sifra_Kor=#DatAktKor.Sifra_Kor
  108286.     And KartKor.Datum_Akt Is Null
  108287. Go
  108288. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavidogc]'))
  108289. drop procedure [dbo].[sp_postavidogc]
  108290.  
  108291. Go
  108292.  
  108293. CREATE   PROCEDURE sp_PostaviDogC
  108294.     @Sifra_Art Varchar(20),
  108295.     @DogCena Decimal(18,4)
  108296. AS
  108297.     If Exists (Select Sifra_Art From Katart Where Sifra_Art=@Sifra_Art)
  108298.         Update Katart Set DogCena=@DogCena, IzmenetNa=GetDate(), IzmenetOd=SUser_SName()
  108299.         Where Sifra_Art=@Sifra_Art
  108300.     Return @@Error
  108301.  
  108302.  
  108303.  
  108304. Go
  108305. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavidokneispecfisk]'))
  108306. drop procedure [dbo].[sp_postavidokneispecfisk]
  108307.  
  108308. Go
  108309. CREATE PROCEDURE sp_PostaviDokNeispecFisk
  108310.     @Sifra_Oe    smallint,
  108311.     @Sifra_Dok    smallint,
  108312.     @Broj_Dok    int
  108313. AS
  108314.     Update Dokr 
  108315.     Set Pec_Fisc = 0 
  108316.     Where Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  108317.  
  108318.  
  108319. Go
  108320. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavidozvobj]'))
  108321. drop procedure [dbo].[sp_postavidozvobj]
  108322.  
  108323. Go
  108324. CREATE PROCEDURE sp_PostaviDozvObj
  108325.     @GrupaKor    varchar(20)
  108326. AS
  108327.     Declare @SSQL as varchar(1000)
  108328.     Declare @ObjIme as varchar(128)
  108329.     Declare Dozv Cursor Fast_Forward For 
  108330.         Select ObjIme From DozvObj Where Dozvoleno = 'D' Order By ObjIme
  108331.     Open Dozv
  108332.     Fetch Next From Dozv Into @ObjIme
  108333.     While @@Fetch_Status = 0
  108334.     Begin
  108335.         Set @SSQL = ' GRANT EXECUTE ON [dbo].[' + @ObjIme + '] TO [' + @GrupaKor + '] '
  108336.         Print @SSQL
  108337.         Exec(@SSQL)
  108338.         Fetch Next From Dozv Into @ObjIme
  108339.     End
  108340.     Close Dozv
  108341.     Deallocate Dozv
  108342.     -------------------------------------------------------------------------------------------------------------------------------------------------------------
  108343.     Declare NeDozv Cursor Fast_Forward For 
  108344.         Select ObjIme From DozvObj Where (Dozvoleno <>'D' Or Dozvoleno Is Null) Order By ObjIme
  108345.     Open NeDozv
  108346.     Fetch Next From NeDozv Into @ObjIme
  108347.     While @@Fetch_Status = 0
  108348.     Begin
  108349.         Set @SSQL = ' DENY EXECUTE ON [dbo].[' + @ObjIme + '] TO [' + @GrupaKor + '] '
  108350.         Print @SSQL
  108351.         Exec(@SSQL)
  108352.         Fetch Next From NeDozv Into @ObjIme
  108353.     End
  108354.     Close NeDozv
  108355.     Deallocate NeDozv
  108356.  
  108357.  
  108358. Go
  108359. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavinabcenausl]'))
  108360. drop procedure [dbo].[sp_postavinabcenausl]
  108361.  
  108362. Go
  108363. CREATE  PROCEDURE sp_PostaviNabCenaUsl
  108364.     @DokrId    int
  108365. AS
  108366.     Update Stavr 
  108367.     Set Stavr.NabCena = 0
  108368.     Where Stavr.DokrId = @DokrId
  108369.     and Stavr.Sifra_Art In 
  108370.     (Select K.Sifra_art 
  108371.      From Katart K 
  108372.      Where K.smatusl='U')
  108373.  
  108374.  
  108375. Go
  108376. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postaviperceni]'))
  108377. drop procedure [dbo].[sp_postaviperceni]
  108378.  
  108379. Go
  108380.  
  108381.  
  108382. CREATE    PROCEDURE sp_PostaviPerCeni
  108383.     @Za_Datum    smalldatetime
  108384. AS
  108385. SELECT 1
  108386.  
  108387.  
  108388.  
  108389. Go
  108390. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postaviperceni1]'))
  108391. drop procedure [dbo].[sp_postaviperceni1]
  108392.  
  108393. Go
  108394.  
  108395.  
  108396.  
  108397.  
  108398. CREATE      PROCEDURE sp_PostaviPerCeni1
  108399.     @Za_Datum    smalldatetime
  108400. AS
  108401.     SET @Za_Datum = dbo.fn_VratiDatum(@Za_Datum)
  108402.     Declare @SSQL varchar(500)
  108403. --BEGIN TRANSACTION
  108404.     CREATE TABLE #TmpDat
  108405. (    Sifra_Art    varchar(20),
  108406.     Sifra_OE    smallint,
  108407.     Cena        decimal(18,6),
  108408.     Prioritet        smallint,
  108409.     CenaTek    decimal(18,6)
  108410. )
  108411.     INSERT INTO #TmpDat (Sifra_Art, Sifra_OE, Prioritet) 
  108412.     SELECT P.Sifra_Art, V.Sifra_OE, max(T.Prioritet) FROM PerCenCeni P
  108413.     INNER JOIN TipPerCenovnik T ON T.Sifra_TipC = P.Sifra_TipC
  108414.     INNER JOIN TipPerCenVaziZa V ON V.Sifra_TipC = T.Sifra_TipC
  108415.     WHERE (T.TipCen IS NULL OR T.TipCen=1) AND P.Datum_Od <= @Za_Datum AND P.Datum_Do >= @Za_Datum
  108416.     GROUP BY P.Sifra_Art, V.Sifra_OE
  108417.  
  108418.     UPDATE #TmpDat SET Cena = P.Cena FROM PerCenCeni P
  108419.     INNER JOIN TipPerCenovnik T ON T.Sifra_TipC = P.Sifra_TipC 
  108420.     INNER JOIN TipPerCenVaziZa V ON V.Sifra_TipC = T.Sifra_TipC
  108421.     WHERE (T.TipCen IS NULL OR T.TipCen=1) AND P.Datum_Od <= @Za_Datum AND P.Datum_Do >= @Za_Datum AND T.Prioritet = #TmpDat.Prioritet
  108422.     AND #TmpDat.Sifra_Art = P.Sifra_Art AND #TmpDat.Sifra_OE = V.Sifra_OE
  108423.  
  108424.     UPDATE #TmpDat SET CenaTek = S.Cena     FROM SoArt S
  108425.     WHERE #TmpDat.Sifra_Art=S.Sifra_Art AND S.Sifra_OE = #TmpDat.Sifra_OE
  108426.     UPDATE #TmpDat SET  CenaTek = 0 WHERE CenaTek IS NULL
  108427.  
  108428.     UPDATE PerCeniProm SET Cena = T.Cena, CenaR = T.CenaTek FROM #TmpDat T 
  108429.     WHERE T.Sifra_OE=PerCeniProm.Sifra_OE AND T.Sifra_Art=PerCeniProm.Sifra_Art AND T.Cena <> T.CenaTek
  108430.     INSERT INTO PerCeniProm (Sifra_OE, Sifra_Art, Cena, CenaR)
  108431.     SELECT T.Sifra_OE, T.Sifra_Art, T.Cena, T.CenaTek FROM #TmpDat T LEFT OUTER JOIN PerCeniProm P ON T.Sifra_OE=P.Sifra_OE AND T.Sifra_Art=P.Sifra_Art
  108432.     WHERE T.Cena <> T.CenaTek AND P.Sifra_Art IS NULL AND P.Sifra_OE IS NULL
  108433.  
  108434.     Declare @Sifra_OE Smallint
  108435.     Declare @Sifra_Art Varchar(20)
  108436.     Declare @KrCena Decimal(18,6)
  108437.     Declare Ceni1 Cursor Fast_Forward For
  108438.         Select Sifra_OE, Sifra_Art, Cena  From #TmpDat   WHERE Cena <> CenaTek
  108439.     Open Ceni1
  108440.     Fetch Next From Ceni1 Into @Sifra_OE, @Sifra_Art, @KrCena
  108441.     While @@Fetch_Status = 0
  108442.     Begin            
  108443.         exec sp_902  @Sifra_OE, @Sifra_Art, @KrCena,'D', @Za_Datum
  108444.         Fetch Next From Ceni1 Into @Sifra_OE, @Sifra_Art, @KrCena
  108445.     End
  108446.     Close Ceni1
  108447.     Deallocate Ceni1
  108448. --sega da se vratat starite ceni kade sto treba
  108449.     CREATE TABLE #TmpDat1
  108450. (    Sifra_Art    varchar(20),
  108451.     Sifra_OE    smallint,
  108452.     Cena        decimal(18,6),
  108453.     CenaR        decimal(18,6))
  108454.     INSERT INTO #TmpDat1 (Sifra_Art, Sifra_OE, Cena, CenaR)
  108455.     SELECT P.Sifra_Art, P.Sifra_OE, P.Cena, P.CenaR FROM PerCeniProm P 
  108456.     LEFT OUTER JOIN #TmpDat C ON P.Sifra_Art = C.Sifra_Art AND P.Sifra_OE = C.Sifra_OE
  108457.     WHERE C.Sifra_OE IS NULL AND C.Sifra_Art IS NULL AND P.Cena <> P.CenaR AND P.CenaR>0
  108458.     UPDATE PerCeniProm SET Cena = #TmpDat1.CenaR
  108459.     FROM #TmpDat1 WHERE PerCeniProm.Sifra_Art = #TmpDat1.Sifra_Art AND PerCeniProm.Sifra_OE = #TmpDat1.Sifra_OE
  108460.     Declare Ceni2 Cursor Fast_Forward For
  108461.         Select Sifra_OE, Sifra_Art, CenaR  From #TmpDat1   
  108462.     Open Ceni2
  108463.     Fetch Next From Ceni2 Into @Sifra_OE, @Sifra_Art, @KrCena
  108464.     While @@Fetch_Status = 0
  108465.     Begin            
  108466.         exec sp_902  @Sifra_OE, @Sifra_Art, @KrCena,'D', @Za_Datum
  108467.         Fetch Next From Ceni2 Into @Sifra_OE, @Sifra_Art, @KrCena
  108468.     End
  108469.     Close Ceni2  
  108470.     Deallocate Ceni2
  108471. --COMMIT
  108472.  
  108473.     Declare @Nabavna decimal(18,6), @Rabat decimal(6,2), @Datum_Od smalldatetime, @Sif_GrOrg char(6)
  108474.     Declare Ceni3 Cursor Fast_Forward For
  108475.         SELECT P.Sifra_OE, P.Sifra_Art, P.Datum_Od, P.Cena, P.NabCena, P.Rabat, V.Sif_GrOrg FROM PerCenCeniRedov P
  108476.     INNER JOIN TipPerCenovnik T ON T.Sifra_TipC = P.Sifra_TipC
  108477.     INNER JOIN TipPerCenVaziZa V ON V.Sifra_TipC = T.Sifra_TipC
  108478.     WHERE T.TipCen=2 AND (P.Datum_Od=@Za_Datum OR P.Datum_Od=dateadd(day, -1, @Za_Datum)) AND P.Resen IS NULL  
  108479.      ORDER BY P.Sifra_OE, P.Sifra_Art, P.Datum_Od
  108480.     Open Ceni3
  108481.     Fetch Next From Ceni3 Into @Sifra_OE, @Sifra_Art, @Datum_Od, @KrCena, @Nabavna, @Rabat,@Sif_GrOrg
  108482.     While @@Fetch_Status = 0
  108483.     Begin            
  108484.         exec sp_902  @Sifra_OE, @Sifra_Art, @KrCena,'D', @Za_Datum
  108485.         IF @Nabavna>0 UPDATE KatArt SET Nabavna=@Nabavna WHERE Sifra_Art=@Sifra_Art AND Nabavna<>@Nabavna
  108486.         IF @Sif_GrOrg IS NOT NULL UPDATE CenGrOrg SET Cena=@KrCena WHERE Sif_GrOrg=@Sif_GrOrg AND Sifra_Art=@Sifra_Art AND Cena<>@KrCena
  108487.         UPDATE PerCenCeniRedov SET Resen='D' WHERE Sifra_OE=@Sifra_OE AND Sifra_Art=@Sifra_Art AND Datum_Od=@Datum_Od
  108488.         Fetch Next From Ceni3 Into @Sifra_OE, @Sifra_Art, @Datum_Od, @KrCena, @Nabavna, @Rabat,@Sif_GrOrg
  108489.     End    
  108490.     Close Ceni3
  108491.     Deallocate Ceni3 
  108492.  
  108493.  
  108494.  
  108495.  
  108496.  
  108497. Go
  108498. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postaviraspored_proknizen]'))
  108499. drop procedure [dbo].[sp_postaviraspored_proknizen]
  108500.  
  108501. Go
  108502.  
  108503.  
  108504. CREATE   PROCEDURE sp_PostaviRaspored_Proknizen
  108505.     @Sifra_Oe    smallint,
  108506.     @Sifra_Nar    smallint,
  108507.     @Broj_Raspored    int,
  108508.     @Proknizen    char(1)
  108509. AS
  108510.     Update RasporedIspor
  108511.     Set Proknizen=@Proknizen
  108512.     Where Sifra_Oe=@Sifra_Oe And Sifra_Nar=@Sifra_Nar And Broj_Raspored=@Broj_Raspored
  108513.  
  108514.  
  108515.  
  108516. Go
  108517. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavistatnar]'))
  108518. drop procedure [dbo].[sp_postavistatnar]
  108519.  
  108520. Go
  108521.  
  108522. create PROCEDURE sp_PostaviStatNar
  108523.     @Sifra_Oe    smallint,
  108524.     @Sifra_Nar    smallint,
  108525.     @Broj_Nar    int,
  108526.         @Stat_Nar    char (1)
  108527. AS
  108528.     Update Naracki
  108529.     Set Stat_Nar = @Stat_Nar 
  108530.     Where Sifra_Oe=@Sifra_Oe And Sifra_Nar=@Sifra_Nar And Broj_Nar=@Broj_Nar
  108531.  
  108532.  
  108533.  
  108534. Go
  108535. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postavivratiodcengrorg]'))
  108536. drop procedure [dbo].[sp_postavivratiodcengrorg]
  108537.  
  108538. Go
  108539.  
  108540. CREATE   PROCEDURE sp_PostaviVratiOdCenGrOrg
  108541.     @Za_Datum    smalldatetime
  108542. AS
  108543.     SET @Za_Datum = dbo.fn_VratiDatum(@Za_Datum)
  108544.     Declare @SSQL varchar(500)
  108545.     CREATE TABLE #TmpDat1
  108546. (    Sifra_Art    varchar(20),
  108547.     Sif_GrOrg    char(6),
  108548.     Cena        decimal(18,6),
  108549.     CenaR        decimal(18,6)
  108550. )
  108551.     INSERT INTO #TmpDat1 (Sifra_Art, Sif_GrOrg, Cena, CenaR)
  108552.     SELECT Sifra_Art, Sif_GrOrg, Cena, CenaR FROM CenGrOrg WHERE Cena <> CenaR AND CenaR>0
  108553.     CREATE TABLE #TmpTekCeni
  108554. (    Sifra_Art    varchar(20),
  108555.     Sif_GrOrg    char(6),
  108556.     Cena        decimal(18,6),
  108557.     Prioritet        smallint
  108558. )
  108559.     INSERT INTO #TmpTekCeni (Sifra_Art, Sif_GrOrg, Prioritet) 
  108560.     SELECT P.Sifra_Art, V.Sif_GrOrg, max(T.Prioritet) FROM PerCenCeni P
  108561.     INNER JOIN TipPerCenovnik T ON T.Sifra_TipC = P.Sifra_TipC
  108562.     INNER JOIN TipPerCenVaziZa V ON V.Sifra_TipC = T.Sifra_TipC
  108563.     WHERE P.Datum_Od <= @Za_Datum AND P.Datum_Do >= @Za_Datum
  108564.     GROUP BY P.Sifra_Art, V.Sif_GrOrg
  108565.     UPDATE #TmpTekCeni SET Cena = P.Cena
  108566.     FROM PerCenCeni P
  108567.     INNER JOIN TipPerCenovnik T ON T.Sifra_TipC = P.Sifra_TipC 
  108568.     INNER JOIN TipPerCenVaziZa V ON V.Sifra_TipC = T.Sifra_TipC
  108569.     WHERE P.Datum_Od <= @Za_Datum AND P.Datum_Do >= @Za_Datum AND T.Prioritet = #TmpTekCeni.Prioritet
  108570.     AND #TmpTekCeni.Sifra_Art = P.Sifra_Art AND #TmpTekCeni.Sif_GrOrg = V.Sif_GrOrg
  108571.     CREATE TABLE #TmpDat
  108572. (    Sifra_Art    varchar(20),
  108573.     Sif_GrOrg    char(6),
  108574.     Cena        decimal(18,6),
  108575.     CenaR        decimal(18,6)
  108576. )
  108577.     INSERT INTO #TmpDat (Sifra_Art, Sif_GrOrg, Cena, CenaR)
  108578.     SELECT T.Sifra_Art, T.Sif_GrOrg, T.Cena, T.CenaR FROM #TmpDat1 T
  108579.     LEFT OUTER JOIN #TmpTekCeni C ON T.Sifra_Art = C.Sifra_Art AND T.Sif_GrOrg = C.Sif_GrOrg
  108580.     WHERE C.Sif_GrOrg IS NULL AND C.Sifra_Art IS NULL
  108581.     CREATE TABLE #TmpDatOE
  108582. (    Sifra_Art    varchar(20),
  108583.     Sifra_OE    smallint,
  108584.     Cena        decimal(18,6),
  108585.     CenaR        decimal(18,6)
  108586. )
  108587.     INSERT INTO #TmpDatOE (Sifra_Art, Sifra_OE, Cena, CenaR) 
  108588.     SELECT T.Sifra_Art, S.Sifra_OE, T.Cena, T.CenaR  FROM #TmpDat T 
  108589.     INNER JOIN SGrOrg S ON S.Sif_GrOrg = T.Sif_GrOrg  
  108590.     UPDATE CenGrOrg SET Cena = #TmpDat.CenaR
  108591.     FROM #TmpDat WHERE CenGrOrg.Sifra_Art = #TmpDat.Sifra_Art AND CenGrOrg.Sif_GrOrg = #TmpDat.Sif_GrOrg
  108592.     AND #TmpDat.Cena <> #TmpDat.CenaR  
  108593.     INSERT INTO RazlFix (Tip, Sif_GrOrg, Sifra_Art, Stara_Cena, Nova_Cena, Datum, Sifra_Oper)
  108594.     SELECT 'P', Sif_GrOrg, Sifra_Art, Cena, CenaR, GetDate(), 'proc' FROM #TmpDat 
  108595.     WHERE #TmpDat.Cena <> #TmpDat.CenaR   
  108596.     Declare @Sifra_OE Smallint
  108597.     Declare @Sifra_Art Varchar(20)
  108598.     Declare @KrCena Decimal(18,6)
  108599.     Declare @Datum smalldatetime
  108600.     SET @Datum = @Za_Datum        --GetDate()
  108601.     Declare Ceni1 Cursor Fast_Forward For
  108602.         Select Sifra_OE, Sifra_Art, CenaR  From #TmpDatOE WHERE Cena <> CenaR 
  108603.     Open Ceni1
  108604.     Fetch Next From Ceni1 Into @Sifra_OE, @Sifra_Art, @KrCena
  108605.     While @@Fetch_Status = 0
  108606.     Begin            
  108607.         exec sp_902  @Sifra_OE, @Sifra_Art, @KrCena,'D', @Datum
  108608.         Fetch Next From Ceni1 Into @Sifra_OE, @Sifra_Art, @KrCena
  108609.     End
  108610.     Close Ceni1
  108611.     Deallocate Ceni1
  108612.  
  108613.  
  108614.  
  108615. Go
  108616. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postoililok_vo_org]'))
  108617. drop procedure [dbo].[sp_postoililok_vo_org]
  108618.  
  108619. Go
  108620.  
  108621.  
  108622. CREATE  PROCEDURE sp_PostoiLiLok_Vo_Org
  108623.     @Sifra_OE     Smallint,
  108624.        @Lokac_BarKod    varchar(30),
  108625.         @DaliPostoi     char(1) = Null OUTPUT,
  108626.     @Lokac_DaliPovekeArt chaR(1) = Null OUTPUT,
  108627.     @Lokac_DaliPovekeLot chaR(1) = Null OUTPUT,
  108628.     @Lokac_Pick chaR(1) = Null OUTPUT
  108629.  
  108630. AS
  108631.  
  108632.     if exists (select Lokac_Id
  108633.            from WhmLokacija
  108634.            where Sifra_Oe = @Sifra_Oe and Lokac_BarKod = @Lokac_BarKod)
  108635.         begin
  108636.             set @DaliPostoi = 'D'
  108637.  
  108638.             select    @Lokac_DaliPovekeArt = Lokac_DaliPovekeArt,
  108639.                 @Lokac_DaliPovekeLot = Lokac_DaliPovekeLot,
  108640.                 @Lokac_Pick = Lokac_Pick
  108641.             from WhmLokacija
  108642.             where Sifra_Oe = @Sifra_Oe and Lokac_BarKod = @Lokac_BarKod
  108643.         end
  108644.  
  108645.     else
  108646.         set @DaliPostoi = 'N'
  108647.  
  108648.  
  108649.  
  108650.  
  108651.  
  108652. Go
  108653. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_postojanikomintenti]'))
  108654. drop procedure [dbo].[sp_postojanikomintenti]
  108655.  
  108656. Go
  108657.  
  108658. CREATE     PROCEDURE sp_PostojaniKomintenti
  108659.     @Mesec_Od Smallint,
  108660.     @Mesec_Do Smallint,
  108661.     @Komint_Od Varchar(10) = Null,
  108662.     @Komint_Do Varchar(10) = Null,
  108663.     @Podelba1 Smallint = Null,
  108664.     @Podelba2 Smallint = Null,
  108665.     @Podelba3 Smallint = Null,
  108666.     @Podelba4 Smallint = Null,
  108667.     @Podelba5 Smallint = Null,
  108668.     @Podelba6 Smallint = Null,
  108669.     @Podelba7 Smallint = Null,
  108670.     @KFPod1 char(1) = Null,
  108671.     @KFPod2 char(1) = Null,
  108672.     @KFPod3 char(1) = Null,
  108673.     @KFPod4 char(1) = Null,
  108674.     @KFPod5 char(1) = Null,
  108675.     @KFPod6 char(1) = Null,
  108676.     @KFPod7 char(1) = Null,
  108677.     @Sifra_Tip Smallint = Null,
  108678.     @Grad Smallint = Null,
  108679.     @Patnik Smallint = Null,
  108680.     @TipKup Varchar(11) = Null,
  108681.     @KojaCena char(1) = Null,
  108682.     @Sifra_reg    smallint = Null,
  108683.     @Sifra_Nivo    Char(2) = Null,
  108684.     @Aktiven    Char(1) = Null,
  108685.     @MozeIsporaka    Char(1) = Null,
  108686.     @Patnik_OdKomintPat char(1)='N',
  108687.     @Sifra_VPJ    smallint = Null,
  108688.     @DatumIzm_Od    smalldatetime = NULL,
  108689.     @DatumIzm_Do    smalldatetime = NULL
  108690. AS
  108691.     Declare @SSQL Varchar(3000)
  108692.     Declare @Mesec Smallint
  108693.     Declare @Godina Smallint
  108694.     Create Table #Sifri_Kup (    Sifra_Kup Varchar(10))
  108695.     Set @Godina = Year(GetDate())
  108696.     Set @Mesec = @Mesec_Od
  108697.     Set @SSQL = 'Insert Into #Sifri_Kup Select Distinct D.Sifra_Kup From Dokr D
  108698.         Inner Join Komint Kup On D.Sifra_Kup=Kup.Sifra_Kup '
  108699.     IF @Patnik_OdKomintPat = 'D' AND @Patnik IS NOT NULL
  108700.             Set @SSQL = @SSQL + ' Left Outer Join KomintPat KP On KP.Sifra_Kup=Kup.Sifra_Kup AND KP.Sifra_Obj=Null '
  108701.     Set @SSQL = @SSQL + ' Where Month(Datum_Dok)=' + Cast(@Mesec As Varchar(3)) + ' And Year(Datum_Dok)=' + Cast(@Godina As Varchar(4)) + ' And Sifra_Za=''1'' And VlIzl=''I'' '
  108702.     If @Komint_Od Is Not Null
  108703.         Set @SSQL = @SSQL + 'And Kup.Sifra_Kup>=''' + @Komint_Od + ''' '
  108704.     If @Komint_Do Is Not Null
  108705.         Set @SSQL = @SSQL + 'And Kup.Sifra_Kup<=''' + @Komint_Do + ''' '
  108706.     If @Podelba1 Is Not NULL
  108707.         If @KFPod1 = 'D'
  108708.             Set @SSQL = @SSQL + 'And (Kup.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or Kup.KDrugo1 Is Null) '
  108709.         Else
  108710.             Set @SSQL = @SSQL + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  108711.     If @Podelba2 Is Not NULL
  108712.         If @KFPod2 = 'D'
  108713.             Set @SSQL = @SSQL + 'And (Kup.KDrugo2<>' + Cast(@Podelba2 As Varchar(10)) + ' Or Kup.KDrugo2 Is Null) '
  108714.         Else
  108715.             Set @SSQL = @SSQL + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  108716.     If @Podelba3 Is Not NULL
  108717.         If @KFPod3 = 'D'
  108718.             Set @SSQL = @SSQL + 'And (Kup.KDrugo3<>' + Cast(@Podelba3 As Varchar(10)) + ' Or Kup.KDrugo3 Is Null) '
  108719.         Else
  108720.             Set @SSQL = @SSQL + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  108721.     If @Podelba4 Is Not NULL
  108722.         If @KFPod4 = 'D'
  108723.             Set @SSQL = @SSQL + 'And (Kup.KDrugo4<>' + Cast(@Podelba4 As Varchar(10)) + ' Or Kup.KDrugo4 Is Null) '
  108724.         Else
  108725.             Set @SSQL = @SSQL + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  108726.     If @Podelba5 Is Not NULL
  108727.         If @KFPod5 = 'D'
  108728.             Set @SSQL = @SSQL + 'And (Kup.KDrugo5<>' + Cast(@Podelba5 As Varchar(10)) + ' Or Kup.KDrugo5 Is Null) '
  108729.         Else
  108730.             Set @SSQL = @SSQL + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  108731.     If @Podelba6 Is Not NULL
  108732.         If @KFPod6 = 'D'
  108733.             Set @SSQL = @SSQL + 'And (Kup.KDrugo6<>' + Cast(@Podelba6 As Varchar(10)) + ' Or Kup.KDrugo6 Is Null) '
  108734.         Else
  108735.             Set @SSQL = @SSQL + 'And Kup.KDrugo6=' + Cast(@Podelba6 As Varchar(10)) + ' '
  108736.     If @Podelba7 Is Not NULL
  108737.         If @KFPod7 = 'D'
  108738.             Set @SSQL = @SSQL + 'And (Kup.KDrugo7<>' + Cast(@Podelba7 As Varchar(10)) + ' Or Kup.KDrugo7 Is Null) '
  108739.         Else
  108740.             Set @SSQL = @SSQL + 'And Kup.KDrugo7=' + Cast(@Podelba7 As Varchar(10)) + ' '
  108741. /*    If @Podelba1 Is Not Null
  108742.         Set @SSQL = @SSQL + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  108743.     If @Podelba2 Is Not Null
  108744.         Set @SSQL = @SSQL + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  108745.     If @Podelba3 Is Not Null
  108746.         Set @SSQL = @SSQL + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  108747.     If @Podelba4 Is Not Null
  108748.         Set @SSQL = @SSQL + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  108749.     If @Podelba5 Is Not Null
  108750.         Set @SSQL = @SSQL + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  108751. */
  108752.     If @Sifra_Tip Is Not Null
  108753.         Set @SSQL = @SSQL + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  108754.     If @Sifra_VPJ Is Not Null
  108755.         Set @SSQL = @SSQL + 'And Kup.Sifra_VPJ=' + Cast(@Sifra_VPJ As Varchar(10)) + ' '
  108756.     If @Grad Is Not Null
  108757.         Set @SSQL = @SSQL + 'And Kup.Sifra_Grad=' + Cast(@Grad As Varchar(10)) + ' '
  108758.     If @Sifra_Reg Is Not Null
  108759.         Set @SSQL = @SSQL + 'And Kup.Sifra_Reg=' + Cast(@Sifra_Reg As Varchar(10)) + ' '
  108760.     If @Sifra_Nivo Is Not Null
  108761.         Set @SSQL = @SSQL + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  108762.     If @Aktiven = 'N'
  108763.         Set @SSQL = @SSQL + 'And Kup.Aktiven = ''N'' '
  108764.     Else If @Aktiven = 'A'
  108765.         Set @SSQL = @SSQL + 'And (Kup.Aktiven <> ''N'' or Kup.Aktiven Is Null) '
  108766.     If @MozeIsporaka = 'N'
  108767.         Set @SSQL = @SSQL + 'And Kup.MozeIsporaka = ''N'' '
  108768.     Else If @MozeIsporaka = 'D'
  108769.         Set @SSQL = @SSQL + 'And (Kup.MozeIsporaka <> ''N'' or Kup.MozeIsporaka Is Null) '
  108770.     If @Patnik Is Not Null
  108771.     Begin
  108772.         IF @Patnik_OdKomintPat = 'D'
  108773.             Set @SSQL = @SSQL + 'And KP.Sifra_Pat=' + Cast(@Patnik As Varchar(10)) + ' '
  108774.         ELSE
  108775.             Set @SSQL = @SSQL + 'And Kup.Sifra_Pat=' + Cast(@Patnik As Varchar(10)) + ' '
  108776.     End
  108777.     If @KojaCena Is Not Null
  108778.         Set @SSQL = @SSQL + 'And Kup.KojaCena=''' + @KojaCena + ''' '
  108779.     IF @DatumIzm_Od IS NOT NULL  
  108780.         Set @SSQL = @SSQL + ' AND (Kup.DodadenNa>=''' +cast(@DatumIzm_Od as varchar(35))+''' OR Kup.IzmenetNa>=''' +cast(@DatumIzm_Od as varchar(35))+ ''' )'
  108781.     IF @DatumIzm_Do IS NOT NULL
  108782.         Set @SSQL = @SSQL + ' AND (Kup.DodadenNa<=''' +cast(@DatumIzm_Do as varchar(35))+''' OR Kup.IzmenetNa<=''' +cast(@DatumIzm_Do as varchar(35))+ ''' )'
  108783.     Exec(@SSQL)
  108784.     Set @Mesec = @Mesec + 1
  108785.     While @Mesec <= @Mesec_Do
  108786.     Begin
  108787.         Set @SSQL = 'Delete #Sifri_Kup
  108788.         Where Sifra_Kup Not In (Select D.Sifra_Kup From Dokr D
  108789.         Inner Join Komint Kup On D.Sifra_Kup=Kup.Sifra_Kup    
  108790.         Where Month(Datum_Dok)=' + Cast(@Mesec As Varchar(3)) + '
  108791.         And Year(Datum_Dok)=' + Cast(@Godina As Varchar(4)) + '
  108792.         And Sifra_Za=''1'' And VlIzl=''I'' '
  108793.         If @Komint_Od Is Not Null
  108794.             Set @SSQL = @SSQL + 'And Kup.Sifra_Kup>=''' + @Komint_Od + ''' '
  108795.         If @Komint_Do Is Not Null
  108796.             Set @SSQL = @SSQL + 'And Kup.Sifra_Kup<=''' + @Komint_Do + ''' '
  108797.         If @Podelba1 Is Not NULL
  108798.             If @KFPod1 = 'D'
  108799.                 Set @SSQL = @SSQL + 'And (Kup.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or Kup.KDrugo1 Is Null) '
  108800.             Else
  108801.                 Set @SSQL = @SSQL + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  108802.         If @Podelba2 Is Not NULL
  108803.             If @KFPod2 = 'D'
  108804.                 Set @SSQL = @SSQL + 'And (Kup.KDrugo2<>' + Cast(@Podelba2 As Varchar(10)) + ' Or Kup.KDrugo2 Is Null) '
  108805.             Else
  108806.                 Set @SSQL = @SSQL + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  108807.         If @Podelba3 Is Not NULL
  108808.             If @KFPod3 = 'D'
  108809.                 Set @SSQL = @SSQL + 'And (Kup.KDrugo3<>' + Cast(@Podelba3 As Varchar(10)) + ' Or Kup.KDrugo3 Is Null) '
  108810.             Else
  108811.                 Set @SSQL = @SSQL + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  108812.         If @Podelba4 Is Not NULL
  108813.             If @KFPod4 = 'D'
  108814.                 Set @SSQL = @SSQL + 'And (Kup.KDrugo4<>' + Cast(@Podelba4 As Varchar(10)) + ' Or Kup.KDrugo4 Is Null) '
  108815.             Else
  108816.                 Set @SSQL = @SSQL + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  108817.         If @Podelba5 Is Not NULL
  108818.             If @KFPod5 = 'D'
  108819.                 Set @SSQL = @SSQL + 'And (Kup.KDrugo5<>' + Cast(@Podelba5 As Varchar(10)) + ' Or Kup.KDrugo5 Is Null) '
  108820.             Else
  108821.                 Set @SSQL = @SSQL + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  108822.         If @Podelba6 Is Not NULL
  108823.             If @KFPod6 = 'D'
  108824.                 Set @SSQL = @SSQL + 'And (Kup.KDrugo6<>' + Cast(@Podelba6 As Varchar(10)) + ' Or Kup.KDrugo6 Is Null) '
  108825.             Else
  108826.                 Set @SSQL = @SSQL + 'And Kup.KDrugo6=' + Cast(@Podelba6 As Varchar(10)) + ' '
  108827.         If @Podelba7 Is Not NULL
  108828.             If @KFPod7 = 'D'
  108829.                 Set @SSQL = @SSQL + 'And (Kup.KDrugo7<>' + Cast(@Podelba7 As Varchar(10)) + ' Or Kup.KDrugo7 Is Null) '
  108830.             Else
  108831.                 Set @SSQL = @SSQL + 'And Kup.KDrugo7=' + Cast(@Podelba7 As Varchar(10)) + ' '
  108832. /*        If @Podelba1 Is Not Null
  108833.             Set @SSQL = @SSQL + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  108834.         If @Podelba2 Is Not Null
  108835.             Set @SSQL = @SSQL + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  108836.         If @Podelba3 Is Not Null
  108837.             Set @SSQL = @SSQL + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  108838.         If @Podelba4 Is Not Null
  108839.             Set @SSQL = @SSQL + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  108840.         If @Podelba5 Is Not Null
  108841.             Set @SSQL = @SSQL + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '*/
  108842.         If @Sifra_Tip Is Not Null
  108843.             Set @SSQL = @SSQL + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '        If @Sifra_VPJ Is Not Null
  108844.             Set @SSQL = @SSQL + 'And Kup.Sifra_VPJ=' + Cast(@Sifra_VPJ As Varchar(10)) + ' '        If @Grad Is Not Null
  108845.             Set @SSQL = @SSQL + 'And Kup.Sifra_Grad=' + Cast(@Grad As Varchar(10)) + ' '
  108846.         If @Sifra_Reg Is Not Null
  108847.             Set @SSQL = @SSQL + 'And Kup.Sifra_Reg=' + Cast(@Sifra_Reg As Varchar(10)) + ' '
  108848.         If @Sifra_Nivo Is Not Null
  108849.             Set @SSQL = @SSQL + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  108850.         If @Aktiven = 'N'
  108851.             Set @SSQL = @SSQL + 'And Kup.Aktiven = ''N'' '
  108852.         Else If @Aktiven = 'A'
  108853.             Set @SSQL = @SSQL + 'And (Kup.Aktiven <> ''N'' or Kup.Aktiven Is Null) '
  108854.         If @MozeIsporaka = 'N'
  108855.             Set @SSQL = @SSQL + 'And Kup.MozeIsporaka = ''N'' '
  108856.         Else If @MozeIsporaka = 'D'
  108857.             Set @SSQL = @SSQL + 'And (Kup.MozeIsporaka <> ''N'' or Kup.MozeIsporaka Is Null) '
  108858.         If @KojaCena Is Not Null
  108859.             Set @SSQL = @SSQL + 'And Kup.KojaCena=''' + @KojaCena + ''' '
  108860.         Set @SSQL = @SSQL + ') '
  108861.         Exec(@SSQL)
  108862.         Set @Mesec = @Mesec + 1
  108863.     End
  108864.     Select Kup.*,
  108865.         P.ImePat, G.ImeGrad, R.ImeRegion, N.ImeNivo,
  108866.         KD1.Ime_1K, KD2.Ime_2K, TK.ImeTipKup, Kup.KojaCena
  108867.         From Komint Kup
  108868.         Left Outer Join Patnici P On Kup.Sifra_Pat=P.Sifra_Pat
  108869.         Left Outer Join Grad G On Kup.Sifra_Grad=G.Sifra_Grad
  108870.         Left Outer Join GRegion R On Kup.Sifra_Reg=R.Sifra_Reg
  108871.         Left Outer Join Nivo N On Kup.Sifra_Nivo=N.Sifra_Nivo
  108872.         Left Outer Join KDrugo1 KD1 On Kup.KDrugo1=KD1.Sifra_1K
  108873.         Left Outer Join KDrugo2 KD2 On Kup.KDrugo1=KD2.Sifra_2K
  108874.         Left Outer Join GTipKup TK On Kup.TipKup=TK.TipKup
  108875.     Where Kup.Sifra_Kup In (Select Sifra_Kup From #Sifri_Kup)
  108876.         and TK.TipKup = @TipKup
  108877.     Order By Kup.KDrugo1, Kup.KDrugo2, Kup.Sifra_Kup
  108878.  
  108879.  
  108880.  
  108881. Go
  108882. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_potreben_li_e_dezen]'))
  108883. drop procedure [dbo].[sp_potreben_li_e_dezen]
  108884.  
  108885. Go
  108886.  
  108887. create  PROCEDURE sp_Potreben_Li_E_Dezen
  108888.  
  108889.     @Sifra_Art Varchar(20),
  108890.     @Kolku_So_Dezen int OUTPUT
  108891.  
  108892. AS
  108893.  
  108894.     select @Kolku_So_Dezen = count (*)
  108895.     from Sostav
  108896.     where Sifra_Art = @SifrA_art and VodeckiArtikal = 'D'
  108897.  
  108898. --print @Kolku_So_Dezen
  108899.  
  108900.     Return @@Error
  108901.  
  108902.  
  108903.  
  108904.  
  108905. Go
  108906. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_potrosokponormativ]'))
  108907. drop procedure [dbo].[sp_potrosokponormativ]
  108908.  
  108909. Go
  108910.  
  108911. CREATE   PROCEDURE sp_PotrosokPoNormativ
  108912.     @Sifra_OE_Tros    smallint,
  108913.     @Sifra_OE_Pvo        smallint,
  108914.     @Sifra_Dok_Tros    varchar(200),
  108915.     @Sifra_Dok_Pvo    varchar(200),
  108916.     @Datum_Od        smalldatetime,
  108917.     @Datum_Do        smalldatetime,
  108918.     @BrojRabN_Od        int,
  108919.     @BrojRabN_Do        int
  108920. --    @Sifra_Art_Od        varchar(20) = Null,
  108921. --    @Sifra_Art_Do        varchar(20) = Null
  108922.  AS
  108923.     Declare @SSQL as varchar(4000)
  108924.     Create Table #Tabela1
  108925.     (
  108926.         Sifra_Art    varchar(20),
  108927.         Sifra_Sur    varchar(20),
  108928.         Potroseno    decimal(18,4),
  108929.         Normativ    decimal(18,4),
  108930.         Razlika        decimal(18,4),
  108931.         Cena        decimal(18,4),
  108932.         Vrednost    decimal(18,4)
  108933.     )
  108934.     Set @SSQL = ' Select S.Sifra_Art, S.Sifra_Art, sum(S.Kolic) Potroseno, 0 as Normativ
  108935.             From Stavr S
  108936.             Inner Join Dokr D On D.DokrId=S.DokrId
  108937.             Left Outer Join DokRabnal DRN On DRN.DokrID=D.DokrID
  108938.             Left Outer Join Rabnal R On DRN.RabNalID=R.RabNalID
  108939.             Inner Join Katart K On K.Sifra_art = S.Sifra_art
  108940.             Where S.VlIzl =  ''I'' '--S.Sifra_Dok = 991
  108941.     If @Sifra_OE_Tros Is Not Null
  108942.         Set @SSQL = @SSQL +  ' And S.Sifra_Oe = ' + cast(@Sifra_Oe_Tros as Varchar(10)) +  ' '
  108943.     If @Sifra_Dok_Tros Is Not Null
  108944.         Set @SSQL = @SSQL +  ' And S.Sifra_Dok In (' + @Sifra_Dok_Tros  + ') '
  108945.     If @Datum_Od is Not Null 
  108946.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35))  + ''' '
  108947.     If @Datum_Do is Not Null 
  108948.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35))  + ''' '
  108949.     If @BrojRabN_Od is Not Null 
  108950.         Set @SSQL = @SSQL + ' And R.Broj_RabN >= ' + cast(@BrojRabN_Od as Varchar(8))  + ' '
  108951.     If @BrojRabN_Do is Not Null 
  108952.         Set @SSQL = @SSQL + ' And R.Broj_RabN <= ' + cast(@BrojRabN_Do as Varchar(8))  + ' '
  108953. --    If @Sifra_Art_Od is Not Null 
  108954. --        Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od  + ''' '
  108955. --    If @Sifra_Art_Do is Not Null 
  108956. --        Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do  + ''' '
  108957.     Set @SSQL=@SSQL + 'Group By S.Sifra_Art '
  108958.     Insert Into #Tabela1 (Sifra_Art, Sifra_Sur, Potroseno, Normativ)  Exec(@SSQL)
  108959. --select * from #tabela1
  108960.     CREATE TABLE #Tabela2
  108961.     (
  108962.     Sifra_Art    varchar(20),
  108963.     Kolicina        decimal(18,6)
  108964.     )
  108965.     Set @SSQL= 'Select S.Sifra_Art, Sum(S.Kolic)
  108966.             From Stavr S
  108967.             Inner Join Dokr D On D.DokrId=S.DokrId
  108968.             Left Outer Join DokRabnal DRN On DRN.DokrID=D.DokrID
  108969.             Left Outer Join Rabnal R On DRN.RabNalID=R.RabNalID
  108970.             Where S.VlIzl= ''V'' '
  108971. --Where S.Sifra_Dok = 46 and S.VlIzl= ''V'' '
  108972.     If @Sifra_Oe_Pvo is Not Null
  108973.         Set @SSQL=@SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe_Pvo as Varchar(10)) +  ' '
  108974.     If @Sifra_Dok_Pvo is Not Null
  108975.         Set @SSQL=@SSQL + ' And S.Sifra_Dok In (' + @Sifra_Dok_Pvo + ') '
  108976.     If @Datum_Od is Not Null
  108977.         Set @SSQL=@SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) +  ''' '
  108978.     If @Datum_Do is Not Null
  108979.         Set @SSQL=@SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) +  ''' '
  108980.     If @BrojRabN_Od is Not Null 
  108981.         Set @SSQL = @SSQL + ' And R.Broj_RabN >= ' + cast(@BrojRabN_Od as Varchar(8))  + ' '
  108982.     If @BrojRabN_Do is Not Null 
  108983.         Set @SSQL = @SSQL + ' And R.Broj_RabN <= ' + cast(@BrojRabN_Do as Varchar(8))  + ' '
  108984. --    If @Sifra_Art_Od is Not Null 
  108985. --        Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od  + ''' '
  108986. --    If @Sifra_Art_Do is Not Null 
  108987. --        Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do  + ''' '
  108988.     Set @SSQL=@SSQL + ' Group by S.Sifra_Art '
  108989.     INSERT INTO #Tabela2 Exec(@SSQL)
  108990. --select * from #tabela2
  108991.     Set @SSQL= ' SELECT  T.Sifra_Art, S.Sifra_Sur, 0 as Potroseno, Sum(T.Kolicina * S.Ima_Kolic/S.Za_Kolku) Normativ
  108992.                 FROM #Tabela2 T
  108993.                 LEFT OUTER JOIN Sostav S On T.Sifra_Art = S.Sifra_Art
  108994.                 GROUP BY T.Sifra_Art, S.Sifra_Sur '
  108995.     Insert Into #Tabela1 (Sifra_Art, Sifra_Sur, Potroseno, Normativ) Exec(@SSQL)    
  108996. --select * from #Tabela1 
  108997.     Create Table #NabCeni
  108998.     (
  108999.      Sifra_Sur    varchar(20),
  109000.      PoslNabCena    decimal(18,4)
  109001.     )
  109002.     Insert Into #NabCeni (Sifra_Sur) Select Distinct Sifra_Sur From  #Tabela1
  109003.     Update #NabCeni Set PoslNabCena = dbo.fn_CenaDatum(@Sifra_OE_Tros, Sifra_Sur, (Case When @Datum_Do Is Not Null Then @Datum_Do Else GetDate() End), 'N')
  109004.     Select T.Sifra_Sur, K.Imeart, K.EdMera, Sum(Potroseno) Potroseno, Sum(Normativ) Normativ, Sum(T.Potroseno - T.Normativ) Razlika, N.PoslNabCena, K.Sifra_Podg, P.Ime_Podg
  109005.     From #Tabela1 T
  109006.     Inner Join Katart K On K.Sifra_art = T.Sifra_Sur
  109007.     Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  109008.     Left Outer Join #NabCeni N On N.Sifra_Sur = T.Sifra_Sur
  109009.     Group By T.Sifra_Sur, K.ImeArt, K.EdMera, N.PoslNabCena, K.Sifra_Podg, P.Ime_Podg
  109010.     Order by T.Sifra_Sur
  109011.  
  109012.  
  109013.  
  109014. Go
  109015. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_potrossurovini]'))
  109016. drop procedure [dbo].[sp_potrossurovini]
  109017.  
  109018. Go
  109019.  
  109020.  
  109021. CREATE  PROCEDURE sp_PotrosSurovini
  109022.     @Sifra_Oe_Tros        smallint,
  109023.     @Sifra_Dok_Tros        smallint,
  109024.     @Sifra_Oe_Pvo        smallint,
  109025.     @Sifra_Dok_Pvo        smallint,
  109026.     @Datum_Od        smalldatetime,
  109027.     @Datum_Do        smalldatetime,
  109028.     @Broj_DokOd        int,
  109029.     @Broj_DokDo        int,
  109030.     @PvoTros        char(1),        -- P - Proizvodstvo,         T - Trosok,             S - Zaedno(Pvo i Trosok)
  109031.     @KojIzv            char(1) = Null, -- E - od EvProizvod    Else - Od Stavr
  109032.         @Broj_Proekt int     = null 
  109033.  
  109034.  AS
  109035.  
  109036.     CREATE TABLE #Tabela1
  109037.     (
  109038.     RabNalID    int,
  109039.     Sifra_OeRab    smallint,
  109040.     Sifra_Dok    smallint,
  109041.     Broj_RabN    int,
  109042.     Broj_Dok    int,
  109043.     Datum_Dok    smalldatetime,
  109044.     VlIzl        char(1),
  109045.     Sifra_Art    varchar(20),
  109046.     Kolicina        decimal(18,6),
  109047.     DokCena    decimal(18,6),
  109048.     Vrednost    decimal(18,6),
  109049.     KontrSer    varchar(25),
  109050.     Tezina_Dara    decimal(18,0),
  109051.     Tezina_Neto    decimal(18,0),
  109052.     Tezina_Bruto    decimal(18,0),
  109053.     Sifra_OeRab_Tocen    int
  109054.     )
  109055.  
  109056.     DECLARE @SSQL as varchar(8000)
  109057.     If @KojIzv = 'E'
  109058.     Begin
  109059.     --------------------------------------------------------------------------------------------------------   T  R  O  S  O  K   -----------------------------------------------------------------------------------------------------
  109060.         If @PvoTros <> 'P' Or @PvoTros Is Null
  109061.         Begin
  109062.             Set @SSQL= 'Select RN.RabNalID, RN.Sifra_OeRab, D.Sifra_Dok, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, 
  109063.                         E.Sifra_Art, Sum(E.Kolic), Null as DokCena, Null as Vrednost, E.KontrSer, E.Tezina_Dara, E.Tezina_Neto, E.Tezina_Bruto,
  109064.                         RN.SIfra_OeRab    
  109065.                     From Dokr D 
  109066.                     Left Outer Join DokRabNal DRN On DRN.DokrId=D.DokrId
  109067.                     Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID
  109068.                     Left Outer Join EvProizvod E On E.DokrID=DRN.DokrID '
  109069. --                    Left Outer Join StaRabNal SRN On SRN.RabNalID = RN.RabNalID 
  109070.             Set @SSQL = @SSQL + ' Where D.VlIzl = ''I'' '
  109071.             If @Sifra_Oe_Tros is Not Null
  109072.                 Set @SSQL=@SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe_Tros as Varchar(10)) +  ' '
  109073.             If @Sifra_Dok_Tros is Not Null
  109074.                 Set @SSQL=@SSQL + ' And D.Sifra_Dok = ' + cast(@Sifra_Dok_Tros as Varchar(10)) +  ' '
  109075.             If @Datum_Od is Not Null
  109076.                 Set @SSQL=@SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) +  ''' '
  109077.             If @Datum_Do is Not Null
  109078.                 Set @SSQL=@SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) +  ''' '
  109079.             If @Broj_DokOd is Not Null
  109080.                 Set @SSQL=@SSQL + ' And D.Broj_Dok >= ' + cast(@Broj_DokOd as Varchar(10)) +  ' '
  109081.             If @Broj_DokDo is Not Null
  109082.                 Set @SSQL=@SSQL + ' And D.Broj_Dok <= ' + cast(@Broj_DokDo as Varchar(10)) +  ' '
  109083.             If @Broj_Proekt is Not Null
  109084.                 Set @SSQL=@SSQL + ' And RN.Broj_Proekt = ' + cast(@Broj_Proekt as Varchar(6)) +  ' '
  109085.             Set @SSQL=@SSQL + ' Group by RN.RabNalID, RN.Sifra_OeRab, D.Sifra_Dok, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, 
  109086.                         E.Sifra_Art, E.KontrSer, E.Tezina_Dara, E.Tezina_Neto, E.Tezina_Bruto '
  109087.             INSERT INTO #Tabela1 Exec(@SSQL)
  109088.         End
  109089.         --    Select * from #Tabela1
  109090.         ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109091.         --------------------------------------------------------------------------------   P  R  O  I  Z  V  O  D  S  T  V  O  -------------------------------------------------------------------------------------
  109092.         If @PvoTros <> 'T' Or @PvoTros Is Null
  109093.         Begin
  109094.             Set @SSQL= 'Select RN.RabNalID, RN.Sifra_OeRab, D.Sifra_Dok, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, 
  109095.                         E.Sifra_Art, Sum(E.Kolic), Null as DokCena, Null as Vrednost, E.KontrSer, E.Tezina_Dara, E.Tezina_Neto, E.Tezina_Bruto,
  109096.                         RN.SIfra_OeRab 
  109097.                     From Dokr D 
  109098.                     Left Outer Join DokRabNal DRN On DRN.DokrId=D.DokrId
  109099.                     Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID
  109100.                     Left Outer Join EvProizvod E On E.DokrID=DRN.DokrID '
  109101. --                    Left Outer Join StaRabNal SRN On SRN.RabNalID = RN.RabNalID 
  109102.             Set @SSQL = @SSQL + ' Where D.VlIzl = ''V'' '
  109103.             If @Sifra_Oe_Pvo is Not Null
  109104.                 Set @SSQL=@SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe_Pvo as Varchar(10)) +  ' '
  109105.             If @Sifra_Dok_Pvo is Not Null
  109106.                 Set @SSQL=@SSQL + ' And D.Sifra_Dok = ' + cast(@Sifra_Dok_Pvo as Varchar(10)) +  ' '
  109107.             If @Datum_Od is Not Null
  109108.                 Set @SSQL=@SSQL + ' And D.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) +  ''' '
  109109.             If @Datum_Do is Not Null
  109110.                 Set @SSQL=@SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) +  ''' '
  109111.             If @Broj_DokOd is Not Null
  109112.                 Set @SSQL=@SSQL + ' And D.Broj_Dok >= ' + cast(@Broj_DokOd as Varchar(10)) +  ' '
  109113.             If @Broj_DokDo is Not Null
  109114.                 Set @SSQL=@SSQL + ' And D.Broj_Dok <= ' + cast(@Broj_DokDo as Varchar(10)) +  ' '
  109115.             If @Broj_Proekt is Not Null
  109116.                 Set @SSQL=@SSQL + ' And RN.Broj_Proekt = ' + cast(@Broj_Proekt as Varchar(6)) +  ' '
  109117.             Set @SSQL=@SSQL + ' Group by RN.RabNalID, RN.Sifra_OeRab, D.Sifra_Dok, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, 
  109118.                         E.Sifra_Art, E.KontrSer, E.Tezina_Dara, E.Tezina_Neto, E.Tezina_Bruto '
  109119.             INSERT INTO #Tabela1 Exec(@SSQL)
  109120.         End
  109121.     End -- If @KojIzv = 'E'
  109122.     Else 
  109123.     Begin
  109124.         ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109125.         --------------------------------------------------------------------------------------------------------   T  R  O  S  O  K   -----------------------------------------------------------------------------------------------------
  109126.         If @PvoTros <> 'P' Or @PvoTros Is Null
  109127.         Begin
  109128.             Set @SSQL= 'Select RN.RabNalID, RN.Sifra_OeRab, D.Sifra_Dok, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, 
  109129.                     S.Sifra_Art, Sum(S.Kolic), S.DokCena, Sum(S.Kolic*S.DokCena), Null, Null, Null, Null,
  109130.                     RN.SIfra_OeRab
  109131.                     From Stavr S
  109132.                     Inner Join Dokr D On S.DokrId=D.DokrID
  109133.                     Left Outer Join DokRabNal DRN On DRN.DokrId=D.DokrId
  109134.                     Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID
  109135.                     Where D.VlIzl = ''I'' '
  109136. --                    Left Outer Join StaRabNal SRN On SRN.RabNalID = RN.RabNalID
  109137.             If @Sifra_Oe_Tros is Not Null
  109138.                 Set @SSQL=@SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe_Tros as Varchar(10)) +  ' '
  109139.             If @Sifra_Dok_Tros is Not Null
  109140.                 Set @SSQL=@SSQL + ' And S.Sifra_Dok = ' + cast(@Sifra_Dok_Tros as Varchar(10)) +  ' '
  109141.             If @Datum_Od is Not Null
  109142.                 Set @SSQL=@SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) +  ''' '
  109143.             If @Datum_Do is Not Null
  109144.                 Set @SSQL=@SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) +  ''' '
  109145.             If @Broj_DokOd is Not Null
  109146.                 Set @SSQL=@SSQL + ' And S.Broj_Dok >= ' + cast(@Broj_DokOd as Varchar(10)) +  ' '
  109147.             If @Broj_DokDo is Not Null
  109148.                 Set @SSQL=@SSQL + ' And S.Broj_Dok <= ' + cast(@Broj_DokDo as Varchar(10)) +  ' '
  109149.                 If @Broj_Proekt is Not Null
  109150.                 Set @SSQL=@SSQL + ' And RN.Broj_Proekt = ' + cast(@Broj_Proekt as Varchar(6)) +  ' '
  109151.             Set @SSQL=@SSQL + ' Group by RN.RabNalID, D.Sifra_Dok, RN.Sifra_OeRab, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, S.Sifra_Art, S.DokCena '
  109152.  
  109153.             INSERT INTO #Tabela1 Exec(@SSQL)
  109154.         End
  109155.         --    Select * from #Tabela1
  109156.         ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109157.         --------------------------------------------------------------------------------   P  R  O  I  Z  V  O  D  S  T  V  O  -------------------------------------------------------------------------------------
  109158.         If @PvoTros <> 'T' Or @PvoTros Is Null
  109159.         Begin
  109160.             Set @SSQL= 'Select RN.RabNalID, RN.Sifra_OePrim, D.Sifra_Dok, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, 
  109161.                     S.Sifra_Art, Sum(S.Kolic), S.DokCena, Sum(S.Kolic*S.DokCena), Null, Null, Null, Null,
  109162.                     RN.SIfra_OeRab
  109163.                     From Stavr S
  109164.                     Inner Join Dokr D On S.DokrId=D.DokrID
  109165.                     Left Outer Join DokRabNal DRN On DRN.DokrId=D.DokrId
  109166.                     Left Outer Join RabNal RN On RN.RabNalID = DRN.RabNalID
  109167.                     Where D.VlIzl = ''V'' '
  109168. --                    Left Outer Join StaRabNal SRN On SRN.RabNalID = RN.RabNalID
  109169.             If @Sifra_Oe_Pvo is Not Null
  109170.                 Set @SSQL=@SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe_Pvo as Varchar(10)) +  ' '
  109171.             If @Sifra_Dok_Pvo is Not Null
  109172.                 Set @SSQL=@SSQL + ' And S.Sifra_Dok = ' + cast(@Sifra_Dok_Pvo as Varchar(10)) +  ' '
  109173.             If @Datum_Od is Not Null
  109174.                 Set @SSQL=@SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as Varchar(35)) +  ''' '
  109175.             If @Datum_Do is Not Null
  109176.                 Set @SSQL=@SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as Varchar(35)) +  ''' '
  109177.             If @Broj_DokOd is Not Null
  109178.                 Set @SSQL=@SSQL + ' And S.Broj_Dok >= ' + cast(@Broj_DokOd as Varchar(10)) +  ' '
  109179.             If @Broj_DokDo is Not Null
  109180.                 Set @SSQL=@SSQL + ' And S.Broj_Dok <= ' + cast(@Broj_DokDo as Varchar(10)) +  ' '
  109181.                 If @Broj_Proekt is Not Null
  109182.                 Set @SSQL=@SSQL + ' And RN.Broj_Proekt = ' + cast(@Broj_Proekt as Varchar(6)) +  ' '
  109183.             Set @SSQL=@SSQL + ' Group by RN.RabNalID, D.Sifra_Dok, RN.Sifra_OePrim, RN.Broj_RabN, D.Broj_Dok, D.Datum_Dok, D.VlIzl, S.Sifra_Art,  S.DokCena,
  109184.                     RN.SIfra_OeRab '
  109185.  
  109186.             INSERT INTO #Tabela1 Exec(@SSQL)
  109187.         End
  109188.         ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109189.     End 
  109190.     Select T.RabNalID, T.Sifra_OeRab, T.Sifra_Dok, T.Broj_RabN, T.Broj_Dok, T.Datum_Dok, T.VlIzl, T.Sifra_Art, K.ImeArt, T.Kolicina, T.DokCena, T.Vrednost, K.Tezina, K.BTezina,
  109191.         T.KontrSer, T.Tezina_Dara, T.Tezina_Neto, T.Tezina_Bruto, K.ImaKomerc, K.Volumen, 
  109192.         Kup.ImeKup, R.Broj_Proekt, Pr.ImeProekt, T.Sifra_OeRab_Tocen
  109193.     From #Tabela1 T
  109194.     Inner Join Katart K 
  109195.         On K.Sifra_Art = T.Sifra_Art
  109196.     Left Outer Join RabNal R
  109197.         on T.Sifra_OeRab_Tocen = R.Sifra_OeRab and T.Broj_RabN = R.Broj_RabN
  109198.     Left Outer Join Proekt Pr
  109199.         on R.Broj_Proekt = Pr.Broj_Proekt
  109200.     Left Outer Join Komint Kup
  109201.         on Kup.Sifra_Kup = Pr.Sifra_Kup
  109202.  
  109203.  
  109204.  
  109205.  
  109206. Go
  109207. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_predlodsomag]'))
  109208. drop procedure [dbo].[sp_predlodsomag]
  109209.  
  109210. Go
  109211.  
  109212.  
  109213. CREATE  PROCEDURE sp_PredlOdSoMag
  109214.     @Sifra_OE    smallint,
  109215.     @Sifra_Dok    smallint,
  109216.     @Broj_Dok    int
  109217. AS
  109218. CREATE TABLE #TmpStavr
  109219. (Sifra_Art    varchar(20),
  109220. Kolic        decimal(18,6))
  109221. INSERT INTO #TmpStavr SELECT Sifra_Art, SUM(Kolic) FROM Stavr 
  109222. WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok GROUP BY Sifra_Art
  109223. CREATE TABLE #TmpSoMag
  109224. (Sifra_Art    varchar(20),
  109225. ImeArt          varchar(40),
  109226. Sostojba    decimal(18,6),
  109227. LotBr        varchar(30),
  109228. Lokacija    varchar(50),
  109229. Sifra_KatPak smallint,
  109230. Sifra_KatStatus smallint,
  109231. RokRed        varchar(6),
  109232. Kolic        decimal(18,6),
  109233. Rbr            int IDENTITY (1, 1))
  109234. INSERT INTO #TmpSoMag (Sifra_Art, ImeArt, Sostojba, LotBr, Lokacija, Sifra_KatPak, Sifra_KatStatus, RokRed, Kolic)
  109235.   SELECT S.Sifra_Art, K.ImeArt, S.Sostojba, S.LotBr, S.Lokacija, S.Sifra_KatPak, S.Sifra_KatStatus, S.RokRed, 0
  109236.   FROM SoMag S inner join Katart K on S.Sifra_Art = K.Sifra_Art WHERE Sifra_Oe=@Sifra_OE AND S.Sifra_Art IN (SELECT S.Sifra_Art FROM #TmpStavr)
  109237.   AND S.Sostojba>0   --pretpostavuvame deka proc. ke treba samo za pozitivni fakuri
  109238. Declare @Sifra_Art    varchar(20)
  109239. Declare @Kolic        decimal(18,6)
  109240. Declare @Sostojba    decimal(18,6)
  109241. Declare @Rbr         int
  109242. Declare @PredlKol    decimal(18,6)
  109243. Declare TabM Cursor Fast_Forward For  Select Sifra_Art, Kolic From #TmpStavr
  109244. Open TabM
  109245. Fetch Next From TabM Into @Sifra_Art, @Kolic
  109246. While @@Fetch_Status = 0
  109247. Begin        
  109248. --------
  109249.     Declare TabSM Cursor Fast_Forward For  Select Sostojba, Rbr From #TmpSoMag WHERE Sifra_Art=@Sifra_Art ORDER BY Lokacija, RokRed
  109250.     Open TabSM
  109251.     Fetch Next From TabSM Into @Sostojba, @Rbr
  109252.     While @@Fetch_Status = 0 AND @Kolic <> 0
  109253.     Begin        
  109254.         IF @Sostojba >= @Kolic
  109255.             SET @PredlKol = @Kolic
  109256.         ELSE IF @Sostojba < @Kolic
  109257.             SET @PredlKol = @Sostojba
  109258.         UPDATE #TmpSoMag SET Kolic = @PredlKol WHERE Rbr=@Rbr
  109259.         SET @Kolic = @Kolic - @PredlKol
  109260.         Fetch Next From TabSM Into @Sostojba, @Rbr
  109261.     End
  109262.     Close TabSM
  109263.     Deallocate TabSM
  109264. --------    
  109265.     Fetch Next From TabM Into  @Sifra_Art, @Kolic 
  109266. End
  109267. Close TabM
  109268. Deallocate TabM
  109269. SELECT * FROM #TmpSoMag WHERE Kolic<>0 ORDER BY Sifra_Art, Lokacija, RokRed
  109270.  
  109271.  
  109272.  
  109273. Go
  109274. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_predlogtreb]'))
  109275. drop procedure [dbo].[sp_predlogtreb]
  109276.  
  109277. Go
  109278.  
  109279.  
  109280.  
  109281.  
  109282. CREATE          PROCEDURE sp_PredlogTreb
  109283.     @Sifra_Oe_Dava    smallint, 
  109284.     @Sifra_Oe_Prima    smallint, 
  109285.     @Sifra_Art_Od        varchar(20) = Null,
  109286.     @Sifra_Art_Do        varchar(20) = Null,
  109287.     @MinMaxOptPod    char(1) = 'M',        -- M Min,   X Max,  O Optimalna     
  109288.     @MinMaxOptDo        char(1) = 'X'        -- M Min,   X Max,  O Optimalna     
  109289. AS
  109290.     Set Nocount On
  109291.     Declare @SSQL varchar(8000)
  109292.     Create Table #Zal 
  109293.     (
  109294.      Sifra_Oe    smallint,
  109295.      Sifra_Art    varchar(20),
  109296.      MMOZalOd    decimal(18,6),
  109297.      MMOZalDo    decimal(18,6),
  109298.      TekZalPrima    decimal(18,6),
  109299.      TekZalDava    decimal(18,6),
  109300.      Potrebno    decimal(18,6)
  109301.     )
  109302. -- Ja polnime tabelata so zalihata koja sto ja sporeduvame (min, max, opt)
  109303.     Set @SSQL='SELECT S.Sifra_OE, S.Sifra_Art, '
  109304.     If @MinMaxOptPod = 'M'
  109305.         SET @SSQL = @SSQL + ' S.MinZal, '
  109306.     Else If @MinMaxOptPod = 'X'
  109307.         SET @SSQL = @SSQL + ' S.MaxZal, '
  109308.     Else 
  109309.         SET @SSQL = @SSQL + ' S.OptZal, '
  109310.     If @MinMaxOptDo = 'M'
  109311.         SET @SSQL = @SSQL + ' S.MinZal '
  109312.     Else If @MinMaxOptDo = 'X'
  109313.         SET @SSQL = @SSQL + ' S.MaxZal '
  109314.     Else 
  109315.         SET @SSQL = @SSQL + ' S.OptZal '
  109316.     SET @SSQL = @SSQL + ' FROM OptZalPoOe S 
  109317.                  WHERE 1=1 '
  109318.     If @Sifra_Oe_Prima Is Not Null
  109319.         Set @SSQL=@SSQL+'AND (S.Sifra_Oe=' + Cast(@Sifra_Oe_Prima As Varchar(6)) + ') '
  109320.     If @Sifra_Art_Od Is Not Null
  109321.         Set @SSQL=@SSQL+'AND S.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  109322.     If @Sifra_Art_Do Is Not Null
  109323.         Set @SSQL=@SSQL+'AND S.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  109324.     Insert Into #Zal (Sifra_Oe, Sifra_Art, MMOZalOd, MMOZalDo) Exec (@SSQL)
  109325. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109326. -- Tekovna Zaliha za Prima OE
  109327.     Create Table #TekZalPrima
  109328.     (
  109329.      Sifra_Oe    smallint,
  109330.      Sifra_Art    varchar(20),
  109331.      Zal        decimal(18,6)
  109332.     )
  109333.     Set @SSQL='SELECT S.Sifra_OE, S.Sifra_Art, (S.Vlez-S.Izlez) 
  109334.             FROM Soart S 
  109335.              WHERE 1=1 '
  109336.     If @Sifra_Oe_Prima Is Not Null
  109337.         Set @SSQL=@SSQL+'AND (S.Sifra_Oe=' + Cast(@Sifra_Oe_Prima As Varchar(6)) + ') '
  109338.     If @Sifra_Art_Od Is Not Null
  109339.         Set @SSQL=@SSQL+'AND S.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  109340.     If @Sifra_Art_Do Is Not Null
  109341.         Set @SSQL=@SSQL+'AND S.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  109342.     Insert Into #TekZalPrima Exec(@SSQL)
  109343.     Update #Zal
  109344.     Set #Zal.TekZalPrima=#TekZalPrima.Zal
  109345.     From #TekZalPrima
  109346.     Where #Zal.Sifra_Oe=#TekZalPrima.Sifra_Oe And #Zal.Sifra_Art=#TekZalPrima.Sifra_Art
  109347. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109348. -- Tekovna Zaliha za OE sto Dava
  109349.     Create Table #TekZalDava
  109350.     (
  109351.      Sifra_Oe    smallint,
  109352.      Sifra_Art    varchar(20),
  109353.      Zal        decimal(18,6)
  109354.     )
  109355.     Set @SSQL='SELECT S.Sifra_OE, S.Sifra_Art, (S.Vlez-S.Izlez) 
  109356.             FROM Soart S 
  109357.              WHERE 1=1 '
  109358.     If @Sifra_Oe_Dava Is Not Null
  109359.         Set @SSQL=@SSQL+'AND (S.Sifra_Oe=' + Cast(@Sifra_Oe_Dava As Varchar(6)) + ') '
  109360.     If @Sifra_Art_Od Is Not Null
  109361.         Set @SSQL=@SSQL+'AND S.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  109362.     If @Sifra_Art_Do Is Not Null
  109363.         Set @SSQL=@SSQL+'AND S.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  109364.     Insert Into #TekZalDava Exec(@SSQL)
  109365.     Update #Zal
  109366.     Set #Zal.TekZalDava=#TekZalDava.Zal
  109367.     From #TekZalDava
  109368.     Where #Zal.Sifra_Art=#TekZalDava.Sifra_Art
  109369. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109370.     Update #Zal Set TekZalPrima = 0 Where TekZalPrima Is Null
  109371.     Update #Zal Set TekZalDava = 0 Where TekZalDava Is Null
  109372.     Update #Zal Set Potrebno = (MMOZalDo-TekZalPrima) Where (TekZalPrima < MMOZalOd)
  109373.     Select Sifra_Art, (Case When (TekZalDava > Potrebno) Then Potrebno Else TekZalDava End) Predlog
  109374.     From #Zal
  109375.     Where Potrebno > 0 And TekZalDava > 0
  109376.     Order By Sifra_Art
  109377.     Set Nocount Off
  109378.  
  109379.  
  109380.  
  109381. Go
  109382. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_predlozispecanfindok]'))
  109383. drop procedure [dbo].[sp_predlozispecanfindok]
  109384.  
  109385. Go
  109386.  
  109387.  
  109388. CREATE     PROCEDURE sp_PredloziSpecAnFinDok
  109389.     @Sifra_Dok varchar(200), 
  109390.     @Datum_Dok_Od Datetime,
  109391.     @Datum_Dok_Do Datetime,
  109392.     @Broj_SpecFin  Int =NULL,
  109393.     @DevFraID    int=0 OUTPUT,
  109394.     @Sifra_Kup    char(6)='' OUTPUT,
  109395.     @KojaVal    char(3)='' OUTPUT,
  109396.     @Kurs        decimal(18,6)=0 OUTPUT
  109397. AS
  109398.     Declare @SSQL Varchar(4000)
  109399.     Declare @SSQLSel Varchar(4000)
  109400.     Set @SSQLSel = ' ' 
  109401.     Set @SSQL = ' ' 
  109402.     If @Broj_SpecFin Is NOT Null
  109403.         BEGIN
  109404.         SET @Sifra_Dok =Null 
  109405.         SET @Datum_Dok_Od =Null
  109406.         SET @Datum_Dok_Do =Null
  109407.         SET @SSQL = @SSQL + 'AND A.AnId IN (SELECT AnID FROM SpecAnFin WHERE Broj_SpecFin=''' + Cast(@Broj_SpecFin As Varchar(35)) +''' ) '
  109408.         SELECT @DevFraID=DevFraID, @Sifra_Kup=Sifra_Kup, @KojaVal=KojaVal, @Kurs=Kurs FROM DevFra
  109409.         WHERE DevFraID IN (SELECT DevFraID FROM SpecAnFin WHERE Broj_SpecFin=@Broj_SpecFin)
  109410.         END
  109411.     ELSE
  109412.         SET @SSQL = @SSQL + 'AND A.AnId NOT IN (SELECT AnID FROM SpecAnFin) '
  109413.     If @Sifra_Dok Is NOT Null 
  109414.         SET @SSQL = @SSQL + ' AND Sifra_Dok IN (' + Cast(@Sifra_Dok As Varchar(200)) + ') '
  109415.     If @Datum_Dok_Od Is NOT Null
  109416.         SET @SSQL = @SSQL + 'AND A.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  109417.     If @Datum_Dok_Do Is NOT Null
  109418.          SET @SSQL = @SSQL + 'AND A.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  109419.     SET @SSQLSel = 'SELECT A.*, K.ImeKup, K.SMesto, KL.ImeVal FROM AnFinDok A
  109420.       LEFT OUTER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  109421.       Left Outer Join KrsLista KL On KL.SImeVal = A.KojaVal
  109422.       WHERE 1=1  '
  109423.     --print (@SSQLSel+@SSQL)
  109424.     EXEC(@SSQLSel+@SSQL)
  109425.  
  109426.  
  109427.  
  109428. Go
  109429. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preg_finnal]'))
  109430. drop procedure [dbo].[sp_preg_finnal]
  109431.  
  109432. Go
  109433.  
  109434.  
  109435. CREATE       PROCEDURE sp_Preg_FinNal
  109436.     @Sifra_Nal Smallint,
  109437.     @Broj_Nal Int,
  109438.     @Sifra_OE Smallint,
  109439.     @Datum_Nal Smalldatetime = Null,
  109440.     @Sifra_Za Char(1) = Null,
  109441.     @DaliDev char(1) OUTPUT
  109442. AS
  109443.     Declare @SSQL Varchar(4000)
  109444.     Set @SSQL = 'SELECT A.*, K.ImeKup, K.SMesto, S.Stapka1, S.Stapka2, TD.Dev, V.ImeVal
  109445.         FROM AnFinDok A
  109446.         INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  109447.         Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  109448.         Left Outer Join TipDok TD On TD.Sifra_Dok=A.Sifra_Dok
  109449.         Left Outer Join KrsLista V On V.SImeVal  = A.KojaVal
  109450.         WHERE A.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  109451.     If @Broj_Nal Is Not Null
  109452.         Set @SSQL = @SSQL + ' AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  109453.     If @Datum_Nal Is Not Null And @Broj_Nal Is Null
  109454.         Set @SSQL = @SSQL + ' AND A.Datum_Nal=''' + Cast(@Datum_Nal As Varchar(30)) + ' '''
  109455.     If @Sifra_OE Is Not Null 
  109456.         Set @SSQL = @SSQL + ' AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10))
  109457.     If @Sifra_Za = '1' Or @Sifra_Za = '2'
  109458.         Set @SSQL = @SSQL + ' And A.Sifra_Za = ''' + @Sifra_Za + ''' '
  109459.     EXEC(@SSQL)
  109460. ------------------------------  Dodadeno 13.04.2004 za Parametarot @DaliDev ----------------------------------------------------------------------------------------------
  109461.     Create Table #SifriDok
  109462.     (Sifra_Dok Int)
  109463. --                  INNER JOIN Komint K ON A.Sifra_Kup=K.Sifra_Kup
  109464. --                  Left Outer Join DDVStapki S On A.Datum_Dok >= S.Datum_Od And A.Datum_Dok <= S.Datum_Do
  109465.     Set @SSQL = ' SELECT DISTINCT A.Sifra_Dok FROM AnFinDok A
  109466.                   WHERE Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + ' '
  109467. --                  AND Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  109468.     If @Broj_Nal Is Not Null
  109469.         Set @SSQL = @SSQL + ' AND A.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  109470.     If @Datum_Nal Is Not Null And @Broj_Nal Is Null
  109471.         Set @SSQL = @SSQL + ' AND A.Datum_Nal=''' + Cast(@Datum_Nal As Varchar(30)) + ' '''
  109472.     If @Sifra_OE Is Not Null 
  109473.         Set @SSQL = @SSQL + ' AND Sifra_OE=' + Cast(@Sifra_OE As Varchar(10))
  109474.     If @Sifra_Za Is Not Null AND @Sifra_Za <> ' '
  109475.         Set @SSQL = @SSQL + ' And A.Sifra_Za = ''' + @Sifra_Za + ''' '
  109476.     Insert Into #SifriDok Exec (@SSQL)
  109477.     Select @DaliDev = TD.Dev  FROM TipDok TD Where TD.Dev='D' and TD.Sifra_Dok In (Select Distinct Sifra_Dok From #SifriDok)
  109478. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109479. /*
  109480.     If Exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Preg_FinNal]') and OBJECTPROPERTY(id, N'IsView') = 1)
  109481.         Set @SSQL = 'ALTER VIEW Preg_FinNal AS ' + @SSQL
  109482.     Else
  109483.         Set @SSQL = 'CREATE VIEW Preg_FinNal AS ' + @SSQL
  109484. */
  109485. --   EXEC(@SSQL)
  109486. --   SELECT PFN.* FROM Preg_FinNal PFN
  109487.  
  109488.  
  109489.  
  109490. Go
  109491. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregedcrrkodovi]'))
  109492. drop procedure [dbo].[sp_pregedcrrkodovi]
  109493.  
  109494. Go
  109495. CREATE procedure sp_PregedCrrKodovi
  109496.     @Sifra_Oe        smallint = Null,
  109497.     @Koi_Oe        varchar(10) = Null,
  109498.     @Datum_Dok_Od    smalldatetime = Null,
  109499.     @Datum_Dok_Do    smalldatetime = Null,
  109500.     @Sifra_Art_Od        varchar(20) = Null,
  109501.     @Sifra_Art_Do        varchar(20) = Null,
  109502.     @Sifra_Podg        char(6) = Null
  109503. As
  109504.     Declare @SSQL as Varchar(8000)
  109505.     Declare @SSQLUsl as Varchar(8000)
  109506. -------------------------------------------
  109507. Set @SSQLUsl=''
  109508.     If @Sifra_Oe Is Not Null
  109509.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  109510.     If @Koi_Oe Is Not Null
  109511.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  109512.     If @Datum_Dok_Od Is Not Null
  109513.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Dok >= ''' + @Datum_Dok_Od + ''' '
  109514.     If @Datum_Dok_Do Is Not Null
  109515.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Dok <= ''' + @Datum_Dok_Do + ''' '
  109516.     If @Sifra_Art_Od Is Not Null
  109517.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  109518.     If @Sifra_Art_Do Is Not Null
  109519.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  109520.     If @Sifra_Podg Is Not Null
  109521.         Set @SSQLUsl = @SSQLUsl + ' And KA.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  109522. -------------------------------------------------------------------------------------------
  109523.         Set @SSQL=' Select D.Sifra_Kup, K.ImeKup,D.Sifra_Obj, KO.ImeObj, S.Sifra_Crr, CR.ImeCrr
  109524.                    From Stavr S
  109525.                    Inner Join Dokr D On D.DokrID=S.DokrID
  109526.                    Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  109527.                    Inner Join KatArt KA on S.Sifra_Art=KA.Sifra_Art 
  109528.                    Left Outer Join CrrKodovi CR on S.Sifra_Crr=CR.Sifra_Crr
  109529.                    Where S.Sifra_Crr is not null '
  109530.         Set @SSQL= @SSQL+@SSQLUsl
  109531. print(@ssql)
  109532. exec(@ssql)
  109533.  
  109534.  
  109535.  
  109536.  
  109537.  
  109538. Go
  109539. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_abarpak]'))
  109540. drop procedure [dbo].[sp_pregl_abarpak]
  109541.  
  109542. Go
  109543.  
  109544.  
  109545.  
  109546.  
  109547. CREATE      PROCEDURE sp_Pregl_ABarPak
  109548.     @Sifra_Art_Od    varchar(20) = Null,
  109549.     @Sifra_Art_Do    varchar(20) = Null,
  109550.     @Sifra_Gr    char(3) = Null,
  109551.     @Sifra_Podg    char(6) = Null,
  109552.     @APod1    smallint = Null,
  109553.     @APod2    smallint = Null,
  109554.     @APod3    smallint = Null,
  109555.     @APod4    smallint = Null,
  109556.     @APod5    smallint = Null,
  109557.         @APod6    smallint = Null,
  109558.         @APod7    smallint = Null, 
  109559.     @Lokacija    varchar(10) = Null,
  109560.     @Podred    char(1) = Null,      -- S-Sifra,   A-Ime
  109561.     @Sifra_Div    smallint = Null
  109562. AS
  109563.  
  109564.     Declare @SSQL as Varchar(8000)
  109565.     Set @SSQL = ' Select A.Sifra_art, A.Nom, A.ZaKolic, A.CenaPak, A.OpisPak, A.Sifra_KatPak,
  109566.                       K.ImeArt, K.Sifra_Podg, K.Drugo1, K.Drugo2, K.Drugo3, K.Drugo4, K.Drugo5, K.Drugo6, K.Drugo7,
  109567.                       K.Sifra_Drg, K.Lokacija, K.Sifra_Div, 
  109568.                       P.Ime_Podg, G.Ime_Gr, TKP.ImeKatPak
  109569.                       from ABarPak A
  109570.               Left Outer Join TipKatPakuv TKP
  109571.                 on A.Sifra_KatPak = TKP.Sifra_KatPak
  109572.                       Inner Join KatArt K On A.Sifra_Art=K.Sifra_Art
  109573.                       Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  109574.               Inner Join Grupi G On G.Sifra_Gr=P.Sifra_Gr '  
  109575.     Set @SSQL = @SSQL + ' Where 1=1 '
  109576.     If @Lokacija Is Not Null
  109577.         Set @SSQL = @SSQL + ' And K.Lokacija = ''' + @Lokacija + ''' '
  109578.     If @APod5 Is Not Null
  109579.         Set @SSQL = @SSQL + ' And K.Drugo5 = ''' + Cast(@APod5 as varchar(6)) + ''' '
  109580.     If @APod4 Is Not Null
  109581.         Set @SSQL = @SSQL + ' And K.Drugo4 = ''' + Cast(@APod4 as varchar(6)) + ''' '
  109582.     If @APod3 Is Not Null
  109583.         Set @SSQL = @SSQL + ' And K.Drugo3 = ''' + Cast(@APod3 as varchar(6)) + ''' '
  109584.     If @APod2 Is Not Null
  109585.         Set @SSQL = @SSQL + ' And K.Drugo2 = ''' + Cast(@APod2 as varchar(6)) + ''' '
  109586.     If @APod1 Is Not Null
  109587.         Set @SSQL = @SSQL + ' And K.Drugo1 = ''' + Cast(@APod1 as varchar(6)) + ''' '
  109588.         If @APod6 Is Not Null
  109589.         Set @SSQL = @SSQL + ' And K.Drugo6 = ''' + Cast(@APod6 as varchar(6)) + ''' '
  109590.         If @APod7 Is Not Null
  109591.         Set @SSQL = @SSQL + ' And K.Drugo7 = ''' + Cast(@APod7 as varchar(6)) + ''' ' 
  109592.     If @Sifra_Podg Is Not Null
  109593.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  109594.     If @Sifra_Gr Is Not Null
  109595.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  109596.     If @Sifra_Art_Do Is Not Null
  109597.         Set @SSQL = @SSQL + ' And K.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  109598.     If @Sifra_Art_Od Is Not Null
  109599.         Set @SSQL = @SSQL + ' And K.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  109600.     If @Sifra_Div Is Not Null
  109601.         Set @SSQL = @SSQL + ' And K.Sifra_Div=''' + Cast(@Sifra_Div As Varchar(6)) + ''' '
  109602.     If @Podred = 'S'
  109603.         Set @SSQL = @SSQL + ' Order By K.Sifra_art '
  109604.     Else If @Podred = 'A'
  109605.         Set @SSQL = @SSQL + ' Order By K.Ime_Art '
  109606.     Exec (@SSQL)
  109607.  
  109608.  
  109609.  
  109610.  
  109611.  
  109612.  
  109613.  
  109614.  
  109615.  
  109616. Go
  109617. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_akciipromo]'))
  109618. drop procedure [dbo].[sp_pregl_akciipromo]
  109619.  
  109620. Go
  109621. CREATE    PROCEDURE sp_Pregl_AkciiPromo
  109622.     @Ozn_Akcija    char(10) = Null,
  109623.     @Sifra_Art_Paket    varchar(20) = Null
  109624. AS
  109625.     Declare @SSQL as Varchar(8000)
  109626.     Set @SSQL = ' SELECT S.*, A.Aktivna, A.Opis_Akcija, A.Datum_poc, A.Datum_Kr, K1.ImeArt ImeArtOsn, K2.ImeArt ImeArtPaket
  109627.             FROM AkciiPromoSta S 
  109628.             INNER JOIN AkciiPromo A ON A.Ozn_Akcija=S.Ozn_Akcija
  109629.             LEFT OUTER JOIN KatArt K1 ON S.Sifra_Art_Osnoven=K1.Sifra_Art
  109630.             LEFT OUTER JOIN KatArt K2 ON S.Sifra_Art_Paket=K2.Sifra_Art
  109631.             Where 1=1 '
  109632.     If @Ozn_Akcija Is Not Null
  109633.         Set @SSQL = @SSQL + ' And A.Ozn_Akcija = ''' + @Ozn_Akcija + ''' '
  109634.     If @Sifra_Art_Paket Is Not Null
  109635.         Set @SSQL = @SSQL + ' And S.Sifra_Art_Paket = ''' + @Sifra_Art_Paket + ''' '
  109636.     Exec (@SSQL)
  109637.  
  109638.  
  109639. Go
  109640. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_ambalaza_kupdob]'))
  109641. drop procedure [dbo].[sp_pregl_ambalaza_kupdob]
  109642.  
  109643. Go
  109644. CREATE      PROCEDURE sp_Pregl_Ambalaza_KupDob
  109645.     @KupDob    char(1) = 'K',
  109646.     @Sifra_Kup    char(6) = Null,
  109647.     @Sifra_Amb    char(6) = Null,     -- Mora da se vnese ili Sifra_Amb ili Sifra_GAmb
  109648. --    @Sifra_GAmb    char(6) = Null,
  109649.     @Datum    smalldatetime = Null,
  109650.     @Amb_GAmb    char(1) = 'A',      --  A - Po Ambalaza    G - Po Grupna Ambalaza
  109651.     @Sifra_Oe    smallint = Null,
  109652.     @Koi_Oe    varchar(10) = Null,
  109653.     @TipKup    varchar(500) = Null
  109654. AS
  109655.     Set @Amb_GAmb = Null
  109656.     Declare @SSQL as varchar(8000)
  109657. ----------------------------------------------------------------------  Od Stavr prodadeni proizvodi so ambalaza -------------------------------------------------------------------
  109658. -------------------------------------------------------------------------------  TEKOVEN PROMET-----------------------------------------------------------------------------------------
  109659.     Create Table #Tab
  109660.     (
  109661.      Sifra_Kup    char(6),
  109662.      Sifra_Obj    smallint,
  109663.      Sifra_Amb    char(6),
  109664.      Sifra_GAmb    char(6),
  109665.      Zadolzenie    decimal(18,6),
  109666.      Razdolzenie    decimal(18,6),
  109667.      So_GAmb    char(1)
  109668.     )
  109669. ----------------------------------------------------------------------  Od Stavr prodadeni proizvodi so ambalaza -------------------------------------------------------------------
  109670.     Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, K.Sifra_Amb, Null,  
  109671.             (Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End),
  109672.             Abs((Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End)),
  109673.             ''D''
  109674.             From Dokr D
  109675.             Inner Join Stavr S On S.DokrId=D.DokrID
  109676.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  109677.             Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb '
  109678.     If @TipKup Is Not Null
  109679.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup '
  109680.     Set @SSQL = @SSQL + ' Where 1=1 '
  109681.     If @KupDob = 'K'
  109682.         Set @SSQL = @SSQL + ' And D.VlIzl = ''I'' and D.Sifra_Za = ''1'''
  109683.     Else If @KupDob = 'D'
  109684.         Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' '
  109685.     If @Sifra_Amb Is Not Null
  109686.         Set @SSQL = @SSQL + ' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  109687.     If @Sifra_Kup Is Not Null 
  109688.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  109689.     If @Datum Is Not Null 
  109690.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum as varchar(30)) + ''' '
  109691.     If @Sifra_Oe Is Not Null 
  109692.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  109693.     If @Koi_OE Is Not NULL
  109694.              Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  109695.     If @TipKup Is Not Null
  109696.         Set @SSQL = @SSQL + 'And KUP.TipKup In (' + @TipKup + ') '
  109697.     Insert Into #Tab Exec(@SSQL)
  109698. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109699. ------------------------------------------------------------------------------ Od StaAmbal dadena ambalaza ---------------------------------------------------------------------------
  109700.     Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, S.Sifra_Amb, Null,
  109701.             (Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End),
  109702.             Abs((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End)),
  109703.             S.So_GAmb
  109704.             From Dokr D
  109705.             Inner Join StaAmbal S On S.DokrId=D.DokrID
  109706.             Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb '
  109707.     If @TipKup Is Not Null
  109708.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup '
  109709.     Set @SSQL = @SSQL + ' Where 1=1 '
  109710.     If @KupDob = 'K' 
  109711.         Set @SSQL = @SSQL + ' And D.VlIzl = ''I''  and D.Sifra_Za = ''1'''
  109712.     Else If @KupDob = 'D'
  109713.         Set @SSQL = @SSQL + ' And D.VlIzl = ''V'' '
  109714.     If @Sifra_Amb Is Not Null
  109715.         Set @SSQL = @SSQL + ' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  109716.     If @Sifra_Kup Is Not Null 
  109717.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  109718.     If @Datum Is Not Null 
  109719.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum as varchar(30)) + ''' '
  109720.     If @Sifra_Oe Is Not Null 
  109721.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  109722.     If @Koi_OE Is Not NULL
  109723.              Set @SSQL = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  109724.     If @TipKup Is Not Null
  109725.         Set @SSQL = @SSQL + 'And KUP.TipKup In (' + @TipKup + ') '
  109726.     If @Amb_GAmb = 'G' -- Grupna Ambalaza (Gajbi)
  109727.         Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''G'') '
  109728.     Else  If @Amb_GAmb = 'A' -- Ambalaza
  109729.         Set @SSQL = @SSQL + ' And (S.So_GAmb = ''D'' or S.So_GAmb = ''N'') '
  109730.     Insert Into #Tab Exec(@SSQL)
  109731. --select * from #tab
  109732. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109733.     Set @SSQL = ' Select 1 as Red, T.Sifra_Kup, Kup.ImeKup, T.Sifra_Obj, KO.ImeObj, T.Sifra_Amb, A.ImeAmb, A.VoGAmb, Null as Sifra_GAmb, Null as ImeGAmb, 
  109734.             Round(Sum(Case When T.So_GAmb In (''D'', ''G'') Then (Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then T.Zadolzenie Else (T.Zadolzenie/A.VoGAmb) End) Else 0 End), 4) ZadolzGAmb, 
  109735.             Round(Sum(Case When T.So_GAmb In (''D'', ''G'') Then (Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then T.Razdolzenie Else (T.Razdolzenie/A.VoGAmb) End) Else 0 End), 4) RazdolzGAmb, 
  109736.             Round(Sum(Case When T.So_GAmb In (''D'', ''N'') Then (Zadolzenie) Else 0 End), 4) as ZadolzAmb, 
  109737.             Round(Sum(Case When T.So_GAmb In (''D'', ''N'') Then (Razdolzenie) Else 0 End), 4) as RazdolzAmb 
  109738.         From #Tab T
  109739.         Left Outer Join Komint Kup On Kup.Sifra_Kup = T.Sifra_Kup
  109740.         Left Outer Join KObjekti KO On KO.Sifra_Kup = T.Sifra_Kup And KO.Sifra_Obj=T.Sifra_Obj
  109741.         Left Outer Join KatAmb A On A.Sifra_Amb=T.Sifra_Amb
  109742.         Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb
  109743.         Where T.Sifra_Amb IS Not Null And A.Povratna = ''D''
  109744.         Group By T.Sifra_Kup, T.Sifra_Obj, KO.ImeObj, Kup.ImeKup, T.Sifra_Amb, A.ImeAmb, A.VoGAmb '
  109745.     Exec (@SSQL)
  109746. /*
  109747.     If @Amb_GAmb = 'G'
  109748.         Set @SSQL = @SSQL + ' Round(Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then T.Zadolzenie Else (T.Zadolzenie/A.VoGAmb) End), 4) Zadolzenie, 
  109749.                       Round(Sum(Case When (A.VoGAmb Is Null Or A.VoGAmb = 0) Then T.Razdolzenie Else (T.Razdolzenie/A.VoGAmb) End), 4) Razdolzenie '
  109750.     Else --If @Amb_GAmb = 'A'
  109751.         Set @SSQL = @SSQL + ' Sum(Zadolzenie) as Zadolzenie, Sum(Razdolzenie) as Razdolzenie '
  109752. */
  109753.  
  109754.  
  109755. Go
  109756. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_ambalaza_oe]'))
  109757. drop procedure [dbo].[sp_pregl_ambalaza_oe]
  109758.  
  109759. Go
  109760.  
  109761. CREATE     PROCEDURE sp_Pregl_Ambalaza_OE
  109762.     @Sifra_Oe        char(6),
  109763.     @Koi_Oe        Varchar(10) = Null,
  109764.     @Sifra_Amb        char(6),    
  109765. --    @Sifra_GAmb        char(6),
  109766.     @Datum        smalldatetime,
  109767.     @Amb_GAmb        char(1) = 'A',      --  A - Po Ambalaza    G - i so Grupna Ambalaza(25.12.10)
  109768.     @VkluciAmbOdDok    char(1) = 'D',
  109769.     @KojIzv        char(1) = 'C'    -- D - Izv vo odnos na dobavuvac,    K - Izv vo odnos na kupuvac,     C - Celosen
  109770. AS
  109771.     Declare @SSQL as varchar(8000)
  109772. -------------------------------------------------------------------------------  TEKOVEN PROMET-----------------------------------------------------------------------------------------
  109773.     Create Table #Tab
  109774.     (
  109775.      Sifra_Oe    smallint,
  109776.      Sifra_Amb    char(6),
  109777.      Sifra_GAmb    char(6),
  109778.      Zadolzenie    decimal(18,6),
  109779.      Razdolzenie    decimal(18,6)
  109780.     )
  109781. ----------------------------------------------------------------------  Od Stavr prodadeni proizvodi so ambalaza -------------------------------------------------------------------
  109782.     -- MOMENTALNO NE GLEDAME OD STAVR (SAMO OD STAAMBAL)     
  109783.     -- Ovoj del od procedurata ne se koristi
  109784.     If @VkluciAmbOdDok = 'D'
  109785.     Begin
  109786.         If @KojIzv in ('C', 'D')
  109787.         Begin
  109788.             Set @SSQL = 'Select D.Sifra_Oe, K.Sifra_Amb, ''D'',
  109789.                     (Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End),
  109790.                     Abs((Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End))
  109791.                     From Dokr D
  109792.                     Inner Join Stavr S On S.DokrId=D.DokrID
  109793.                     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  109794.                     Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  109795.                     Where D.VlIzl = ''V'' And A.Povratna =''D'' '
  109796.             If @Sifra_Amb Is Not Null
  109797.                 Set @SSQL = @SSQL + ' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  109798.             If @Datum Is Not Null 
  109799.                 Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum as varchar(30)) + ''' '
  109800.             If @Sifra_Oe Is Not Null 
  109801.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  109802.             If @Koi_OE Is Not NULL
  109803.                      Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  109804.             Insert Into #Tab Exec(@SSQL)
  109805.         End
  109806.         If @KojIzv in ('C', 'K')
  109807.         Begin
  109808.             Set @SSQL = 'Select D.Sifra_Oe, K.Sifra_Amb, ''D'',
  109809.                     Abs((Case WHEN S.Kolic < 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End)),
  109810.                     (Case WHEN S.Kolic > 0 Then (Case When (A.SodrziArt <> 0 and A.SodrziArt Is Not Null) Then (S.Kolic/A.SodrziArt) Else S.Kolic End) Else 0 End)
  109811.                     From Dokr D
  109812.                     Inner Join Stavr S On S.DokrId=D.DokrID
  109813.                     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  109814.                     Inner Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb 
  109815.                     Where D.VlIzl = ''I'' And A.Povratna =''D'' '
  109816.             If @Sifra_Amb Is Not Null
  109817.                 Set @SSQL = @SSQL + ' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  109818.             If @Datum Is Not Null 
  109819.                 Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum as varchar(30)) + ''' '
  109820.             If @Sifra_Oe Is Not Null 
  109821.                 Set @SSQL = @SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  109822.             If @Koi_OE Is Not NULL
  109823.                      Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  109824.             Insert Into #Tab Exec(@SSQL)
  109825.         End
  109826.     End
  109827. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109828. ------------------------------------------------------------------------------ Od StaAmbal dadena ambalaza ---------------------------------------------------------------------------
  109829.     If @KojIzv in ('C', 'D')
  109830.     Begin
  109831.         Set @SSQL = 'Select D.Sifra_Oe, S.Sifra_Amb, So_GAmb,
  109832.                 (Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End),
  109833.                 Abs((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End))
  109834.                 From Dokr D
  109835.                 Inner Join StaAmbal S On S.DokrId=D.DokrID
  109836.                 Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  109837.                 Where D.VlIzl = ''V'' And A.Povratna =''D'' '
  109838.         If @Sifra_Amb Is Not Null
  109839.             Set @SSQL = @SSQL + ' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  109840.         If @Datum Is Not Null 
  109841.             Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum as varchar(30)) + ''' '
  109842.         If @Sifra_Oe Is Not Null 
  109843.             Set @SSQL = @SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  109844.         If @Koi_OE Is Not NULL
  109845.                  Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  109846.         Insert Into #Tab Exec(@SSQL)
  109847.     End
  109848.  
  109849.     If @KojIzv in ('C', 'K')
  109850.     Begin
  109851.         Set @SSQL = 'Select D.Sifra_Oe, S.Sifra_Amb, So_GAmb,
  109852.                 Abs((Case WHEN S.Kolic < 0 Then S.Kolic Else 0 End)),
  109853.                 (Case WHEN S.Kolic > 0 Then S.Kolic Else 0 End)
  109854.                 From Dokr D
  109855.                 Inner Join StaAmbal S On S.DokrId=D.DokrID
  109856.                 Inner Join KatAmb A On A.Sifra_Amb=S.Sifra_Amb 
  109857.                 Where D.VlIzl = ''I'' And A.Povratna =''D'' '
  109858.         If @Sifra_Amb Is Not Null
  109859.             Set @SSQL = @SSQL + ' And S.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  109860.         If @Datum Is Not Null 
  109861.             Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + cast(@Datum as varchar(30)) + ''' '
  109862.         If @Sifra_Oe Is Not Null 
  109863.             Set @SSQL = @SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  109864.         If @Koi_OE Is Not NULL
  109865.                  Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @Koi_Oe  +  ''') '
  109866.         Insert Into #Tab Exec(@SSQL)
  109867.     End
  109868. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  109869.     If @Amb_GAmb = 'A'
  109870.     Begin
  109871.         Select T.Sifra_Oe, O.ImeOrg, T.Sifra_Amb, A.ImeAmb,  A.VoGAmb, Null as Sifra_GAmb, Null as ImeGAmb, Sum(Zadolzenie) as Zadolzenie, Sum(Razdolzenie) as Razdolzenie 
  109872.         From #Tab T
  109873.         Left Outer Join Orged O On O.Sifra_Oe = T.Sifra_Oe
  109874.         Left Outer Join KatAmb A On A.Sifra_Amb=T.Sifra_Amb
  109875.         Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb
  109876.         Where T.Sifra_Amb IS Not Null
  109877.         Group By T.Sifra_Oe, O.ImeOrg, T.Sifra_Amb, A.ImeAmb, A.VoGAmb
  109878.     End
  109879.     Else If @Amb_GAmb = 'G'            --treba za avt.povratnica
  109880.         Select T.Sifra_Oe, O.ImeOrg, T.Sifra_Amb, A.ImeAmb,  A.VoGAmb, T.Sifra_GAmb, Null as ImeGAmb, Sum(Zadolzenie) as Zadolzenie, Sum(Razdolzenie) as Razdolzenie 
  109881.         From #Tab T
  109882.         Left Outer Join Orged O On O.Sifra_Oe = T.Sifra_Oe
  109883.         Left Outer Join KatAmb A On A.Sifra_Amb=T.Sifra_Amb
  109884.         Left Outer Join KatAmb G On G.Sifra_Amb=A.Sifra_GAmb
  109885.         Where T.Sifra_Amb IS Not Null
  109886.         Group By T.Sifra_Oe, O.ImeOrg, T.Sifra_Amb, A.ImeAmb, A.VoGAmb, T.Sifra_GAmb
  109887.  
  109888.  
  109889.  
  109890. Go
  109891. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_anfindok]'))
  109892. drop procedure [dbo].[sp_pregl_anfindok]
  109893.  
  109894. Go
  109895.  
  109896. CREATE        PROCEDURE sp_Pregl_AnFinDok
  109897.     @Sifra_Oe    int=NULL,
  109898.     @Sifra_Dok    int,
  109899.     @Broj_Dok    int,
  109900.         @P_I        char (1)
  109901. AS
  109902.     Select A.Sifra_oe, A.Sifra_Dok, a.Broj_dok, A.Datum_Dok as Dod_Datum, A.Kto as Kto_Anal, A.Dolzi, A.Pobaruva, A.Broj_Nal, A.Sifra_Nal, 
  109903.         A.Opis, A.BrojDok as Opis2, A.Sifra_Kup, KUP.ImeKup, KUP.Smesto, A.KojaVal,V.ImeVal, A.Kurs, A.Dev_Dolzi, A.Dev_Pobaruva as Dev_Pobar, A.Datum_Vnes,
  109904.         ' ' as Lice, null as KasaGrupa, @P_I as P_I, '' as ImeNac, '' as TipBlag, '' as Kto_Osnovica
  109905.     From AnFindok A
  109906.     Left Outer Join Komint KUP On A.Sifra_Kup=KUP.Sifra_Kup
  109907.     Left Outer Join KrsLista V ON A.KojaVal=V.SImeVal
  109908.     Where A.Sifra_Oe=@Sifra_oe and A.Sifra_Dok=@Sifra_Dok and A.Broj_Dok=@Broj_Dok
  109909.  
  109910.  
  109911.  
  109912. Go
  109913. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_artikli]'))
  109914. drop procedure [dbo].[sp_pregl_artikli]
  109915.  
  109916. Go
  109917.  
  109918.  
  109919. CREATE    PROCEDURE sp_Pregl_Artikli
  109920.     @Sifra_Art_Od    varchar(20) = Null,
  109921.     @Sifra_Art_Do    varchar(20) = Null,
  109922.     @Sifra_Gr    char(3) = Null,
  109923.     @Sifra_Podg    char(6) = Null,
  109924.     @Sifra_Tar    char(3) = Null,
  109925.     @APod1    smallint = Null,
  109926.     @APod2    smallint = Null,
  109927.     @APod3    smallint = Null,
  109928.     @APod4    smallint = Null,
  109929.     @APod5    smallint = Null,
  109930.     @Sifra_Amb    char(6) = Null,
  109931.     @Lokacija    varchar(10) = Null,
  109932.     @Aktiven    char(1) = Null,
  109933.     @DatDodOd    smalldatetime = Null,
  109934.     @DatDodDo    smalldatetime = Null,
  109935.     @DatIzmOd    smalldatetime = Null,
  109936.     @DatIzmDo    smalldatetime = Null,
  109937.     @PocnuvaSo    char(1) = Null,
  109938.     @Podred    char(1) = Null,      -- S-Sifra,   A-Ime
  109939.     @Sifra_Div    smallint = Null,
  109940.     @Sifra_KHier    varchar(20) = Null,
  109941.     @PrikHierarhii    char(1) = 'N',
  109942.     @SlikaPrik    char(1) = 'N',
  109943.         @VoPDA          char(1) = null 
  109944. AS
  109945.  
  109946.     Declare @SSQL as Varchar(8000)
  109947.     Set @SSQL = ' Select K.Sifra_Art, K.ImeArt, K.ImeArt2, K.EdMera, K.Alt_Ime, K.Alt_Ime2, K.Alt_EdMera, 
  109948.             K.Sifra_Podg, P.Ime_Podg, 
  109949.             P.Sifra_Gr, G.Ime_Gr, 
  109950.             K.Sifra_Tar, T.ImeTar, 
  109951.             K.Kto, D.ImeKup,
  109952.             K.Cena, K.Sostojba, K.CarBroj, K.SMatUsl, 
  109953.             K.Sifra_Drg, B.Ime as ImeDrg, K.KolkuDrg, 
  109954.             K.Drugo1, K1.Ime_1, 
  109955.             K.Drugo2, K2.Ime_2, 
  109956.             K.Drugo3, K3.Ime_3, 
  109957.             K.Drugo4, K4.Ime_4, 
  109958.             K.Drugo5, K5.Ime_5, 
  109959.             K.DaliSurov, K.Uces, K.Datum_Cena, K.Fakturna, K.Nabavna, K.DogCena, K.MalCena, K.GotCena, K.SpeCena, K.PCena4, K.PCena5, K.PCena6, 
  109960.             K.Proc_Marza, K.Nom, K.SMin_Sost, K.SMax_Sost, K.SOpt_Sost, K.Lokacija, K.Popust, K.ImaBroevi, K.ImaKomerc, K.Tezina, K.PopusMar, K.DodadenNa, 
  109961.             K.DodadenOd, K.IzmenetNa, K.IzmenetOd, K.Alt_Sifra, K.Iskluci, K.SpecRabat, K.SpecRabatOd, K.SpecRabatDo, K.BTezina, K.Volumen, 
  109962.             K.Rabat_Dali, K.SodrziEd, K.Propagiraj, K.ProcAlk, K.RokKontrDali, K.Aktiven, 
  109963.             K.Sifra_Amb, A.ImeAmb , '''' as Prikazi, T.ProcOsn, K.ImaPaleta, '
  109964.  
  109965.     if @SlikaPrik = 'D'
  109966.         Set @SSQL = @SSQL + ' Slik.SlikaArt, '
  109967.  
  109968.     If @PrikHierarhii = 'D'
  109969.         Set @SSQL = @SSQL + ' H1.Sifra_KHier, H1.Ime_KHier, H1.Alt_ImeKHier,
  109970.                     H2.Sifra_KHier Sifra_KHier2, H2.Ime_KHier Ime_KHier2, H2.Alt_ImeKHier Alt_ImeKHier2, 
  109971.                     H3.Sifra_KHier Sifra_KHier3, H3.Ime_KHier Ime_KHier3, H3.Alt_ImeKHier Alt_ImeKHier3, 
  109972.                     H4.Sifra_KHier Sifra_KHier4, H4.Ime_KHier Ime_KHier4, H4.Alt_ImeKHier Alt_ImeKHier4 '
  109973.     Else 
  109974.         Set @SSQL = @SSQL + ' Null Sifra_KHier, Null Ime_KHier, Null Alt_ImeKHier,
  109975.                     Null Sifra_KHier2, Null Ime_KHier2, Null Alt_ImeKHier2,
  109976.                     Null Sifra_KHier3, Null Ime_KHier3, Null Alt_ImeKHier3,
  109977.                     Null Sifra_KHier4, Null Ime_KHier4, Null Alt_ImeKHier4 '
  109978.     Set @SSQL = @SSQL + ' From Katart K
  109979.             Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  109980.             Inner Join Grupi G On G.Sifra_Gr=P.Sifra_Gr
  109981.             Left Outer Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar
  109982.             Left Outer Join Drugo1 K1 On K1.Sifra_1=K.Drugo1 
  109983.             Left Outer Join Drugo2 K2 On K2.Sifra_2=K.Drugo2 
  109984.             Left Outer Join Drugo3 K3 On K3.Sifra_3=K.Drugo3 
  109985.             Left Outer Join Drugo4 K4 On K4.Sifra_4=K.Drugo4 
  109986.             Left Outer Join Drugo5 K5 On K5.Sifra_5=K.Drugo5 
  109987.             Left Outer Join KatAmb A On A.Sifra_Amb=K.Sifra_Amb
  109988.             Left Outer Join Komint D On D.Sifra_Kup=K.Kto
  109989.             Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  109990.  
  109991.     if @SlikaPrik = 'D'
  109992.         Set @SSQL = @SSQL + ' left outer Join KatSliki Slik on K.SifrA_Art=Slik.Sifra_Art '
  109993.  
  109994.     If @PrikHierarhii = 'D'
  109995.         Set @SSQL = @SSQL + ' Left Outer Join KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  109996.             Left Outer Join KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  109997.             Left Outer Join KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  109998.             Left Outer Join KatHier H4 On H4.Sifra_KHier=H3.Sifra_KHier_Hier '
  109999.     Set @SSQL = @SSQL + ' Where 1=1 '
  110000.     If @Aktiven = 'N'
  110001.         Set @SSQL = @SSQL + ' And K.Aktiven = ''N'' '
  110002.     Else If @Aktiven = 'D'
  110003.         Set @SSQL = @SSQL + ' And (K.Aktiven <> ''N'' Or K.Aktiven Is Null) '
  110004. /*    If @Aktiven = 'D'
  110005.         Set @SSQL = @SSQL + ' And (K.Aktiven = ''D'' Or K.Aktiven Is Null) '
  110006.     Else If @Aktiven = 'N'
  110007.         Set @SSQL = @SSQL + ' And K.Aktiven = ''N'' '
  110008. */    If @Lokacija Is Not Null
  110009.         Set @SSQL = @SSQL + ' And K.Lokacija = ''' + @Lokacija + ''' '
  110010.     If @Sifra_Amb Is Not Null
  110011.         Set @SSQL = @SSQL + ' And K.Sifra_Amb = ''' + @Sifra_Amb + ''' '
  110012.     If @APod5 Is Not Null
  110013.         Set @SSQL = @SSQL + ' And K.Drugo5 = ''' + Cast(@APod5 as varchar(6)) + ''' '
  110014.     If @APod4 Is Not Null
  110015.         Set @SSQL = @SSQL + ' And K.Drugo4 = ''' + Cast(@APod4 as varchar(6)) + ''' '
  110016.     If @APod3 Is Not Null
  110017.         Set @SSQL = @SSQL + ' And K.Drugo3 = ''' + Cast(@APod3 as varchar(6)) + ''' '
  110018.     If @APod2 Is Not Null
  110019.         Set @SSQL = @SSQL + ' And K.Drugo2 = ''' + Cast(@APod2 as varchar(6)) + ''' '
  110020.     If @APod1 Is Not Null
  110021.         Set @SSQL = @SSQL + ' And K.Drugo1 = ''' + Cast(@APod1 as varchar(6)) + ''' '
  110022.     If @DatDodOd Is Not Null
  110023.         Set @SSQL = @SSQL + ' And K.DodadenNa >= ''' + Cast(@DatDodOd as varchar(30)) + ''' '
  110024.     If @DatDodDo Is Not Null
  110025.         Set @SSQL = @SSQL + ' And K.DodadenNa <= ''' + Cast(@DatDodDo as varchar(30)) + ''' '
  110026.     If @DatIzmOd Is Not Null
  110027.         Set @SSQL = @SSQL + ' And K.IzmenetNa >= ''' + Cast(@DatIzmOd as varchar(30)) + ''' '
  110028.     If @DatIzmDo Is Not Null
  110029.         Set @SSQL = @SSQL + ' And K.IzmenetNa <= ''' + Cast(@DatIzmDo as varchar(30)) + ''' '
  110030.     If @Sifra_Tar Is Not Null
  110031.         Set @SSQL = @SSQL + ' And K.Sifra_Tar = ''' + @Sifra_Tar + ''' '
  110032.     If @Sifra_Podg Is Not Null
  110033.         If @PocnuvaSo = 'D'
  110034.             Set @SSQL = @SSQL + 'And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  110035.         Else 
  110036.             Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  110037.     If @Sifra_Gr Is Not Null
  110038.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  110039.     If @Sifra_Art_Do Is Not Null
  110040.         Set @SSQL = @SSQL + ' And K.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  110041.     If @Sifra_Art_Od Is Not Null
  110042.         Set @SSQL = @SSQL + ' And K.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  110043.     If @Sifra_Div Is Not Null
  110044.         Set @SSQL = @SSQL + ' And K.Sifra_Div=''' + Cast(@Sifra_Div As Varchar(6)) + ''' '
  110045.     If @Sifra_KHier Is Not Null
  110046.         Set @SSQL = @SSQL + ' And (H1.Sifra_KHier = ' + @Sifra_KHier + ' Or H2.Sifra_KHier = ' + @Sifra_KHier + ' 
  110047.                       Or H3.Sifra_KHier = ' + @Sifra_KHier + ' Or H4.Sifra_KHier = ' + @Sifra_KHier + ') '
  110048.     If @VoPDA Is Not Null and @VoPDA <> ''
  110049.         Set @SSQL = @SSQL + ' And K.VoPDA = ''' + @VoPDA + ''' '
  110050.         If @Podred = 'S'
  110051.         Set @SSQL = @SSQL + ' Order By K.Sifra_art '
  110052.     Else If @Podred = 'A'
  110053.         Set @SSQL = @SSQL + ' Order By K.Ime_Art '
  110054.     Exec (@SSQL)
  110055.  
  110056.  
  110057.  
  110058.  
  110059.  
  110060. Go
  110061. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_cengrorg]'))
  110062. drop procedure [dbo].[sp_pregl_cengrorg]
  110063.  
  110064. Go
  110065.  
  110066. CREATE               PROCEDURE sp_Pregl_CenGrOrg
  110067.     @Sif_GrOrg    varchar(8),
  110068.     @Tip_Podr    char(1) = Null,
  110069.     @Sifra_Od    varchar(12) = Null,
  110070.     @Sifra_Do    varchar(12) = Null,
  110071.     @Kto        char(6) = Null,
  110072.     @Sifra_Gr    char(3) = Null,
  110073.     @Sifra_Podg    char(6) = Null,
  110074.     @Lokacija    varchar(10) = Null,
  110075.     @Sifra_Tar    char(3) = Null,
  110076.     @Sifra_Brand    Smallint = Null,
  110077.     @Sifra_ZBrand    Smallint = Null,
  110078.     @Marza_Od     Decimal(6,2) = Null,
  110079.     @Marza_Do    Decimal(6,2) = Null,
  110080.     @DajPoslDob    char(1) = 'N',        -- Daj posleden Dobavuvac
  110081.         @MarzaN_Od     Decimal(6,2) = Null,
  110082.     @MarzaN_Do    Decimal(6,2) = Null
  110083. AS
  110084.     Set Nocount Off
  110085.     Declare @SSQL varchar(4000)
  110086.     Declare @SSQLUsl varchar(4000)
  110087.     Set @SSQLUsl = ' '
  110088.     ------------------------------------------------------ POSLEDEN DOBAVUVAC ------------------------------------------------------------------------
  110089.     If @DajPoslDob='D'
  110090.     Begin
  110091.         CREATE TABLE #TmpDok
  110092.         (
  110093.             Sifra_Art    char(6),
  110094.             Sifra_Oe     smallint,
  110095.             Sifra_Dok    smallint,
  110096.             Broj_Dok    int,
  110097.             Identif_br    varchar(25),    
  110098.             Sifra_Kup    char(6),
  110099.             Datum        smalldatetime,
  110100.             Kolicina        decimal(18,6)
  110101.         )
  110102.         Set @SSQL = ' INSERT INTO #TmpDok (Sifra_Art)  
  110103.                 SELECT DISTINCT Sifra_Art 
  110104.                 FROM Stavr WHERE VlIzl = ''V'' '
  110105.         If @Sifra_Od IS NOT NULL 
  110106.             Set @SSQL = @SSQL + 'AND Sifra_Art>=' + @Sifra_Od + ' '
  110107.         If @Sifra_Do IS NOT NULL 
  110108.             Set @SSQL = @SSQL + 'AND Sifra_Art<=' + @Sifra_Do + ' '
  110109.         Exec(@SSQL)
  110110.         CREATE TABLE #DokArtN
  110111.         ( Sifra_Art  varchar(20),    
  110112.           Datum      smalldatetime,
  110113.           DokID  int
  110114.         )
  110115.         CREATE TABLE #DokDat
  110116.         ( Sifra_Art  varchar(20),    
  110117.           Datum smalldatetime
  110118.         )
  110119.         Set @SSQL = 'SELECT S.Sifra_art,  max(S.Datum_Dok) Datum FROM Stavr S '
  110120.         Set @SSQL = @SSQL + ' WHERE S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '')  
  110121.                        AND S.Sifra_Art IN (SELECT Sifra_Art FROM #TmpDok) '
  110122.         If @Sif_GrOrg Is Not Null
  110123.             Set @SSQL = @SSQL + ' And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Sif_GrOrg + ''') '
  110124.         Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art '
  110125.         INSERT INTO #DokDat EXEC (@SSQL)
  110126.         Set @SSQL = 'SELECT S.Sifra_art, S.Datum_Dok, max(S.DokID) DokID FROM Stavr S 
  110127.                 INNER JOIN #DokDat C ON S.Sifra_Art = C.Sifra_Art AND S.Datum_Dok = C.Datum '
  110128.         Set @SSQL = @SSQL + ' WHERE 
  110129.                 S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '') '
  110130.         If @Sif_GrOrg Is Not Null
  110131.             Set @SSQL = @SSQL + ' And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Sif_GrOrg + ''') '
  110132.         Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art, S.Datum_Dok '
  110133.         INSERT INTO #DokArtN EXEC (@SSQL)
  110134.         UPDATE #TmpDok
  110135.         SET    Sifra_oe = D.Sifra_Oe, Sifra_Dok = D.Sifra_Dok, Broj_Dok = D.Broj_Dok, Identif_br = D.Identif_br, Sifra_Kup = D.Sifra_Kup, Datum = D.Datum_Dok, Kolicina = S.Kolic
  110136.                  FROM #DokArtN C, Stavr S, Dokr D
  110137.         WHERE #TmpDok.Sifra_Art = C.Sifra_Art AND S.DokID = C.DokID AND D.DokrID = S.DokrID
  110138.     End
  110139. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  110140.     ------------------------------------ TEKOVNA ZALIHA --------------------------------------
  110141.     Create Table #TmpZal
  110142.     (
  110143.      Sifra_Art    varchar(20),
  110144.      Zaliha        decimal(18,6)
  110145.     )
  110146.     Set @SSQL = ' Select C.Sifra_Art, Sum(C.Vlez-C.Izlez) 
  110147.             From Soart C
  110148.             INNER JOIN Katart K ON C.Sifra_Art=K.Sifra_Art '
  110149.     If @Sifra_Gr Is Not NULL
  110150.         Set @SSQL=@SSQL+'INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  110151.     If @Sifra_ZBrand Is Not Null
  110152.         Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  110153.     Set @SSQL=@SSQL + '    Where Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Sif_GrOrg + ''') '
  110154.     -- Uslov
  110155.     If @Sifra_Od IS NOT NULL 
  110156.         Set @SSQLUsl = @SSQLUsl + 'AND C.Sifra_Art>=' + @Sifra_Od + ' '
  110157.     If @Sifra_Do IS NOT NULL 
  110158.         Set @SSQLUsl = @SSQLUsl + 'AND C.Sifra_Art<=' + @Sifra_Do + ' '
  110159.     If @Sifra_Brand Is Not Null
  110160.         Set @SSQLUsl=@SSQLUsl+'AND (K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  110161.     If @Sifra_ZBrand Is Not Null
  110162.         Set @SSQLUsl=@SSQLUsl+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  110163.     If @Kto Is Not Null
  110164.         Set @SSQLUsl=@SSQLUsl+'AND (K.Kto='''+@Kto+''') '
  110165.     If @Sifra_Gr Is Not Null
  110166.         Set @SSQLUsl=@SSQLUsl+'AND (P.Sifra_Gr='''+@Sifra_Gr+''') '
  110167.     If @Sifra_Podg Is Not Null
  110168.         Set @SSQLUsl=@SSQLUsl+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  110169.     If @Lokacija Is Not Null
  110170.         Set @SSQLUsl=@SSQLUsl+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  110171.     If @Sifra_Tar Is Not Null
  110172.         Set @SSQLUsl=@SSQLUsl+'AND (K.Sifra_Tar='''+@Sifra_Tar+''') '
  110173.     If @Marza_Od Is Not Null
  110174.         Set @SSQLUsl=@SSQLUsl+'AND dbo.fn_VratiMarza(K.Nabavna, C.Cena) >= '+ Cast(@Marza_Od as varchar(10)) 
  110175.     If @Marza_Do Is Not Null
  110176.         Set @SSQLUsl=@SSQLUsl+'AND dbo.fn_VratiMarza(K.Nabavna, C.Cena) <= '+ Cast(@Marza_Do as varchar(10)) 
  110177.         If @MarzaN_Od Is Not Null
  110178.         Set @SSQLUsl=@SSQLUsl+'AND dbo.fn_VratiMarza(C.Cena, K.Nabavna)* (-1) >= '+ Cast(@MarzaN_Od as varchar(10)) 
  110179.     If @MarzaN_Do Is Not Null
  110180.         Set @SSQLUsl=@SSQLUsl+'AND dbo.fn_VratiMarza(C.Cena, K.Nabavna)* (-1) <= '+ Cast(@MarzaN_Do as varchar(10)) 
  110181.     Set @SSQL = @SSQL + @SSQLUsl + ' Group By C.Sifra_Art '
  110182.     Insert Into #TmpZal Exec(@SSQL)
  110183.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  110184.     Set @SSQL='SELECT C.Sif_GrOrg, C.Sifra_Art, C.Cena, C.Dozvoleno, K.ImeArt, K.ImeArt2, K.Edmera, T.ProcOsn, K.Sifra_Tar, K.Nabavna, 
  110185.                 K.Sifra_Drg, B.Ime ImeDrg, K.Drugo1, D1.Ime_1, Z.Zaliha, 
  110186.         Nomen = 
  110187.             Case K.Nom
  110188.                 When NULL Then dbo.fn_Nom(C.Sifra_Art)
  110189.             Else K.Nom
  110190.             End, '
  110191.     If @DajPoslDob='D'
  110192.         Set @SSQL=@SSQL + ' D.Sifra_Kup, Kup.ImeKup '
  110193.     Else
  110194.          Set @SSQL=@SSQL + ' Null as Sifra_Kup, Null as ImeKup '
  110195.     Set @SSQL=@SSQL + ' FROM CenGrOrg C 
  110196.                 INNER JOIN Katart K ON C.Sifra_Art=K.Sifra_Art 
  110197.                 Left Outer Join #TmpZal Z On Z.Sifra_Art=C.Sifra_Art '
  110198.     If @DajPoslDob='D'
  110199.         Set @SSQL=@SSQL+'LEFT OUTER JOIN #TmpDok D ON D.Sifra_Art=C.Sifra_Art
  110200.                     Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup ' 
  110201.     Set @SSQL=@SSQL+'INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar 
  110202.                 Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg
  110203.                 Left Outer Join Drugo1 D1 On D1.Sifra_1=K.Drugo1 '
  110204.     If @Sifra_Gr Is Not NULL
  110205.         Set @SSQL=@SSQL+'INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  110206.     If @Sifra_ZBrand Is Not Null
  110207.         Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  110208.     Set @SSQL=@SSQL+'WHERE C.Sif_GrOrg=''' + @Sif_GrOrg + ''' '
  110209.     Set @SSQL = @SSQL + @SSQLUsl
  110210.     If @Tip_Podr='S'
  110211.         Set @SSQL=@SSQL+'ORDER BY C.Sifra_Art'
  110212.     Else If @Tip_Podr='A'
  110213.         Set @SSQL=@SSQL+'ORDER BY K.ImeArt'
  110214.     Else If @Tip_Podr='P'
  110215.         Set @SSQL=@SSQL+'ORDER BY K.Sifra_Podg'
  110216.     Else If @Tip_Podr='G'
  110217.         Set @SSQL=@SSQL+'ORDER BY P.Sifra_Gr'
  110218.     Else If @Tip_Podr='L'
  110219.         Set @SSQL=@SSQL+'ORDER BY K.Lokacija'
  110220.     Else If @Tip_Podr='K'
  110221.         Set @SSQL=@SSQL+'ORDER BY K.Kto'
  110222.     Else If @Tip_Podr='M' -- Marza
  110223.         Set @SSQL=@SSQL+'ORDER BY (Case When K.Nabavna > 0 Then (((C.Cena/K.Nabavna)-1)*100) Else 0 End) Desc'
  110224.     EXEC(@SSQL)
  110225.     Set Nocount Off
  110226.  
  110227.  
  110228.  
  110229. Go
  110230. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_cengrorgtt]'))
  110231. drop procedure [dbo].[sp_pregl_cengrorgtt]
  110232.  
  110233. Go
  110234.  
  110235.  
  110236.  
  110237. CREATE                  PROCEDURE sp_Pregl_CenGrOrgTT
  110238.     @Sif_GrOrg        varchar(8),
  110239.     @Tip_Podr        char(1) = Null,
  110240.     @Sifra_Od        varchar(12) = Null,
  110241.     @Sifra_Do        varchar(12) = Null,
  110242.     @Kto            char(6) = Null,
  110243.     @Sifra_Gr        char(3) = Null,
  110244.     @Sifra_Podg        char(6) = Null,
  110245.     @Lokacija        varchar(10) = Null,
  110246.     @Sifra_Tar        char(3) = Null,
  110247.     @Sifra_Brand        Smallint = Null,
  110248.     @Sifra_ZBrand        Smallint = Null,
  110249.     @Datum_Do        Smalldatetime = '2005-12-31',
  110250.     @IskluciKup        varchar(200) = '660663, 660660, 021000',
  110251.     @OrgEdZaNabCeni    smallint = 100,            
  110252.     @TipDokPriem        smallint = 1,
  110253.     @Marza_Od        Decimal(6,2) = Null,
  110254.     @Marza_Do        Decimal(6,2) = Null,
  110255.         @MarzaN_Od     Decimal(6,2) = Null,
  110256.     @MarzaN_Do    Decimal(6,2) = Null
  110257. AS
  110258.     Set Nocount Off
  110259.     Declare @SSQL varchar(2000)
  110260.    Set @SSQL =    'SELECT C.Sif_GrOrg, C.Sifra_Art, C.Cena, C.Dozvoleno, Null
  110261.         FROM CenGrOrg C 
  110262.            INNER JOIN Katart K ON C.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M'' 
  110263.            INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar '
  110264.    If @Sifra_Gr Is Not NULL
  110265.         Set @SSQL=@SSQL+'INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  110266.    If @Sifra_ZBrand Is Not Null
  110267.        Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  110268.    Set @SSQL=@SSQL+'WHERE 1=1 ' 
  110269.     If @Sif_GrOrg Is Not Null
  110270.        Set @SSQL=@SSQL+'And C.Sif_GrOrg=''' + @Sif_GrOrg + ''' '
  110271.    If @Sifra_Od IS NOT NULL 
  110272.         Set @SSQL = @SSQL + 'AND C.Sifra_Art>=''' + @Sifra_Od + ''' '
  110273.    If @Sifra_Do IS NOT NULL 
  110274.         Set @SSQL = @SSQL + 'AND C.Sifra_Art<=''' + @Sifra_Do + ''' '
  110275.     If @Sifra_Brand Is Not Null
  110276.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  110277.     If @Sifra_ZBrand Is Not Null
  110278.         Set @SSQL=@SSQL+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  110279.    If @Kto Is Not Null
  110280.       Set @SSQL=@SSQL+'AND (K.Kto='''+@Kto+''') '
  110281.    If @Sifra_Gr Is Not Null
  110282.       Set @SSQL=@SSQL+'AND (P.Sifra_Gr='''+@Sifra_Gr+''') '
  110283.    If @Sifra_Podg Is Not Null
  110284.       Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  110285.    If @Lokacija Is Not Null
  110286.       Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  110287.    If @Sifra_Tar Is Not Null
  110288.       Set @SSQL=@SSQL+'AND (K.Sifra_Tar='''+@Sifra_Tar+''') '
  110289.     If @Marza_Od Is Not Null
  110290.         Set @SSQL=@SSQL+'AND dbo.fn_VratiMarza(K.Nabavna, C.Cena) >= '+Cast(@Marza_Od as varchar(10)) 
  110291.     If @Marza_Do Is Not Null
  110292.         Set @SSQL=@SSQL+'AND dbo.fn_VratiMarza(K.Nabavna, C.Cena) <= '+Cast(@Marza_Do as varchar(10)) 
  110293.         If @MarzaN_Od Is Not Null
  110294.         Set @SSQL=@SSQL+'AND dbo.fn_VratiMarza(C.Cena, K.Nabavna) * (-1) >= '+Cast(@MarzaN_Od as varchar(10)) 
  110295.     If @MarzaN_Do Is Not Null
  110296.         Set @SSQL=@SSQL+'AND dbo.fn_VratiMarza(C.Cena, K.Nabavna) * (-1) <= '+Cast(@MarzaN_Do as varchar(10)) 
  110297.     CREATE TABLE [#Ceni] (
  110298.         [Sif_GrOrg] [char] (6),
  110299.         [Sifra_Art] Varchar(20),
  110300.         [Cena] [decimal](18, 6),
  110301.         [Dozvoleno] [char] (1),
  110302.         [PoslednaNabavna] [decimal] (18,6)
  110303.     )
  110304. print @ssql
  110305.     Insert #Ceni EXEC(@SSQL)
  110306.     CREATE TABLE #CeniArtN
  110307.     ( Sifra_Art  varchar(20),    
  110308.       Datum smalldatetime,
  110309.       DokID  int
  110310.     )
  110311.     Set @SSQL = 'SELECT S.Sifra_art, max(S.Datum_Dok) Datum, max(S.DokID) DokID
  110312.         FROM Stavr S '
  110313.     If @IskluciKup Is NOT NULL 
  110314.         Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  110315.     Set @SSQL = @SSQL + ' WHERE S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + 
  110316.         ''' AND S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '') AND
  110317.         S.Sifra_OE = ' + Cast(@OrgEdZaNabCeni as varchar(4)) +
  110318.         ' AND S.Sifra_Dok = '+Cast(@TipDokPriem as varchar(3))
  110319.     If @IskluciKup Is NOT NULL 
  110320.         Set @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' + @IskluciKup + ') '
  110321.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art '
  110322.     INSERT INTO #CeniArtN EXEC (@SSQL)
  110323.     UPDATE #Ceni
  110324.     SET    PoslednaNabavna = dbo.fn_VratiVredIzl(1, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, 0, 'D') 
  110325.              FROM #CeniArtN C, Stavr S
  110326.     WHERE #Ceni.Sifra_Art = C.Sifra_Art AND S.DokID = C.DokID
  110327.     UPDATE #Ceni
  110328.     SET PoslednaNabavna = S.Cena
  110329.         FROM StariNabavniC S
  110330.     WHERE #Ceni.Sifra_Art = S.Sifra_Art AND (#Ceni.PoslednaNabavna = 0 or #Ceni.PoslednaNabavna IS NULL)
  110331. /*
  110332.     UPDATE #PrometArt
  110333.     SET ProdCena = S.Cena 
  110334.         FROM SoArt S
  110335.     WHERE #PrometArt.Sifra_Art = S.Sifra_Art AND S.Sifra_OE = @OrgEdZaNabCeni
  110336. */
  110337.    Set @SSQL='SELECT C.Sif_GrOrg, GO.Ime_GrOrg,  '
  110338.     Set @SSQL = @SSQL + 'C.Sifra_Art + '' '' + K.ImeArt Artikl, '
  110339.     -- da zavrsime so opisni podatoci
  110340.     Set @SSQL = @SSQL + 'K.ImeArt2, K.Edmera, K.Sifra_Tar, T.ProcOsn, C.Dozvoleno, '
  110341.     -- sega vaznite podatoci (cenite)
  110342.     Set @SSQL = @SSQL + 'C.Cena Cena, K.Nabavna FiksnaNabavna, C.PoslednaNabavna PoslednaNabavna,
  110343.          Nomen = 
  110344.             Case K.Nom
  110345.                 When NULL Then dbo.fn_Nom(C.Sifra_Art)
  110346.             Else K.Nom
  110347.             End 
  110348.         FROM #Ceni C
  110349.         Inner Join GrOrg GO On C.Sif_GrOrg=GO.Sif_GrOrg
  110350.         INNER JOIN Katart K ON C.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M''
  110351.         INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar '
  110352.    If @Tip_Podr='S'
  110353.       Set @SSQL=@SSQL+'ORDER BY C.Sifra_Art, K.ImeArt'
  110354.    Else If @Tip_Podr='A'
  110355.       Set @SSQL=@SSQL+'ORDER BY K.ImeArt, C.Sifra_Art'
  110356.    Else If @Tip_Podr='P'
  110357.       Set @SSQL=@SSQL+'ORDER BY K.Sifra_Podg'
  110358.    Else If @Tip_Podr='G'
  110359.       Set @SSQL=@SSQL+'ORDER BY P.Sifra_Gr'
  110360.    Else If @Tip_Podr='L'
  110361.       Set @SSQL=@SSQL+'ORDER BY K.Lokacija'
  110362.    Else If @Tip_Podr='K'
  110363.       Set @SSQL=@SSQL+'ORDER BY K.Kto'
  110364.    EXEC(@SSQL)
  110365.     Set Nocount Off
  110366.  
  110367.  
  110368.  
  110369.  
  110370. Go
  110371. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_cenpopodgr]'))
  110372. drop procedure [dbo].[sp_pregl_cenpopodgr]
  110373.  
  110374. Go
  110375.  
  110376. CREATE                 PROCEDURE sp_Pregl_CenPoPodgr
  110377.     @Tip_Podelba    char(1) = 'P',
  110378.     @TipKup_Od    varchar(11) = Null,
  110379.     @TipKup_Do    varchar(11) = Null,
  110380.     @Podelba_Od    varchar(20) = Null,
  110381.     @Podelba_Do    varchar(20) = Null,
  110382.     @Sifra_Gr    char(3) = Null,
  110383.     @Marza_Od     Decimal(6,2) = Null,
  110384.     @Marza_Do    Decimal(6,2) = Null, 
  110385.     @Tip_Podr    char(2) = 'TS'        --PRV ZNAK T-TipKup, P-Podelba, VTOR ZNAK S-Sifra, I-Ime
  110386. AS
  110387.     Set Nocount Off
  110388.     Declare @SSQL varchar(2000)        --ovde dopolni so ime zavisno od koja tabela
  110389.     Set @SSQL='SELECT C.TipKup, T.ImeTipKup, C.Sifra_Podelba, P.Ime_Podg, C.Uces, C.Cena, C.Uces2, C.Uces3
  110390.         FROM CenPoPodgr C 
  110391.         INNER JOIN Podgrupi P ON C.Sifra_Podelba=P.Sifra_Podg 
  110392.         INNER JOIN GTipKup T ON C.TipKup=T.TipKup 
  110393.         WHERE C.Tip_Podelba=''' + @Tip_Podelba + ''' '
  110394.     If @TipKup_Od IS NOT NULL 
  110395.         Set @SSQL = @SSQL + 'AND C.TipKup>=''' + @TipKup_Od + ''' '
  110396.     If @TipKup_Do IS NOT NULL 
  110397.         Set @SSQL = @SSQL + 'AND C.TipKup<=''' + @TipKup_Do + ''' '
  110398.     If @Podelba_Od IS NOT NULL 
  110399.         Set @SSQL = @SSQL + 'AND C.Sifra_Podelba>=''' + @Podelba_Od + ''' '
  110400.     If @Podelba_Do IS NOT NULL 
  110401.         Set @SSQL = @SSQL + 'AND C.Sifra_Podelba<=''' + @Podelba_Do + ''' '
  110402.     If @Marza_Od Is Not Null
  110403.         Set @SSQL = @SSQL + ' AND C.Uces >= '+ Cast(@Marza_Od as varchar(10)) 
  110404.     If @Marza_Do Is Not Null
  110405.         Set @SSQL = @SSQL + ' AND C.Uces <= '+ Cast(@Marza_Do as varchar(10)) 
  110406.     If @Sifra_Gr is not null
  110407.         Set @SSQL = @SSQL + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  110408.     If @Tip_Podr='TS'
  110409.         Set @SSQL=@SSQL+'ORDER BY C.TipKup, C.Sifra_Podelba'
  110410.     Else If @Tip_Podr='PS'
  110411.         Set @SSQL=@SSQL+'ORDER BY C.Sifra_Podelba, C.TipKup '
  110412.     Else If @Tip_Podr='PI'
  110413.         Set @SSQL=@SSQL+'ORDER BY P.Ime_Podg, C.TipKup '
  110414.     Else If @Tip_Podr='TI'
  110415.         Set @SSQL=@SSQL+'ORDER BY T.ImeTipKup, C.Sifra_Podelba'
  110416.    EXEC(@SSQL)
  110417.     Set Nocount Off
  110418.  
  110419.  
  110420.  
  110421.  
  110422. Go
  110423. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_detalruti]'))
  110424. drop procedure [dbo].[sp_pregl_detalruti]
  110425.  
  110426. Go
  110427.  
  110428.  
  110429.  
  110430.  
  110431.  
  110432.  
  110433.  
  110434.  
  110435. CREATE                     Procedure sp_Pregl_DetalRuti
  110436.     @Sifra_pat smallint = null,
  110437.     @Sifra_GrPat char(6) = null,
  110438.     @DatumOd smalldatetime = null,
  110439.     @DatumDo smalldatetime = null,
  110440.     @Podelba1 smallint = null,
  110441.     @KFPod1 char(1) = null,
  110442.     @RazlProdMest char(1) = 'N',
  110443.     @DenOdNedelata    smallint = Null,
  110444.     @Poseteni    char(1) = Null
  110445. As 
  110446. CREATE TABLE #TmpRuta
  110447.     (Sifra_Pat smallint,
  110448.      DatumOd smalldatetime,
  110449.      DenOdNedela char(1),
  110450.      Sifra_Kup char(6),
  110451.      Sifra_Obj smallint,
  110452.      Datum smalldatetime )
  110453.  
  110454. CREATE TABLE #TmpPat (Sifra_Pat smallint)
  110455. If @Sifra_Pat is not null 
  110456.     INSERT INTO #TmpPat VALUES (@Sifra_Pat)
  110457. Else IF @Sifra_GrPat is not null
  110458.     INSERT INTO #TmpPat SELECT Sifra_Pat from Sgrpat where Sif_GrPat =@Sifra_GrPat
  110459. ELSE
  110460.     INSERT INTO #TmpPat SELECT Sifra_Pat from Patnici
  110461.  
  110462. CREATE TABLE #TmpPR 
  110463. (Sifra_Pat smallint, 
  110464. Datum smalldatetime)
  110465.  
  110466. Declare @Datum smalldatetime
  110467. Declare @Praznik as char(1)
  110468. SET @Datum=@DatumOd
  110469. WHILE @Datum<=@DatumDo         
  110470. BEGIN
  110471.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110472.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj FROM RutiZaDatum WHERE Datum=@Datum AND Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  110473.  
  110474.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  110475.     IF @Praznik IS NULL
  110476.     BEGIN
  110477.         DELETE FROM #TmpPR
  110478.         INSERT INTO #TmpPR SELECT Sifra_Pat, MAX(Datum_Od) FROM RutiPlan 
  110479.         WHERE Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat) AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) GROUP BY Sifra_Pat
  110480.  
  110481.  
  110482.         If @DenOdNedelata Is Not null And dbo.fn_DenOdNedela(@Datum)=@DenOdNedelata
  110483.             INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110484.             SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  110485.             WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  110486.             AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  110487.         Else If @DenOdNedelata Is Null
  110488.             INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110489.             SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  110490.             WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  110491.             AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  110492.     END
  110493.  
  110494.     SET @Datum = DateAdd(day, 1, @Datum)
  110495. END 
  110496. declare @SSQL as varchar(5000)
  110497. /*set @SSQL = 'insert into #TmpRuta(Sifra_Pat, DatumOd, DenOdNedela, Sifra_Kup, Sifra_Obj) 
  110498.     select Sifra_Pat, max(Datum_Od), DenOdNedela, Sifra_Kup, Sifra_Obj
  110499.     from RutiPlan where Datum_Od <='''+cast(@DatumOd as varchar(35))+''' ' 
  110500. If @Sifra_Pat is not null
  110501.     set @SSQL = @SSQL + ' and Sifra_Pat = '+cast (@Sifra_Pat as varchar(15))+' '
  110502. If @Sifra_GrPat is not null
  110503.     set @SSQL = @SSQL + ' and Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '+cast(@Sifra_GrPat as varchar(6))+' ) '
  110504. set @SSQL = @SSQL + ' group by Sifra_Pat, DenOdNedela, Sifra_Kup, Sifra_Obj '         
  110505.     exec(@SSQL)
  110506.  
  110507. set @SSQL = ' insert into #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110508.      select Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj
  110509.                      from RutiZaDatum
  110510.                      where Datum >= '''+cast(@DatumOd as varchar(35))+''' and Datum <= '''+cast(@DatumDo as varchar(35))+''' '
  110511. If @Sifra_Pat is not null
  110512.     set @SSQL = @SSQL + ' and Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  110513. If @Sifra_GrPat is not null
  110514.     set @SSQL = @SSQL + ' and Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '+cast(@Sifra_GrPat as varchar(6))+' ) '    
  110515. --    print(@SSQL)
  110516.     exec(@SSQL)*/
  110517.  
  110518. create table #TmpDetal
  110519.     (
  110520.     Sifra_Pat smallint,
  110521.     ImePat varchar(30),
  110522.     Sifra_Kup char(6),
  110523.     ImeKup varchar(40),
  110524.     Sifra_Obj smallint,
  110525.     ImeObj varchar(40),
  110526.     PoRuta char(1),
  110527.     Poseten char(1),
  110528.     SoBarkod char(1),
  110529.     Datum smalldatetime
  110530.     )
  110531. set @SSQL = 'insert into #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, Datum, Poseten, SoBarkod)
  110532.             select A.sifra_Oe, P.ImePat, A.Sifra_Kup, K.ImeKup, case when A.Sifra_Obj <> 0 then A.Sifra_Obj end, KO.ImeObj, A.DatumVreme,''D'', A.SoBarKod
  110533.             from Akcija A
  110534.             inner join Patnici P on A.Sifra_oe=P.Sifra_Pat
  110535.             inner join Komint K on K.Sifra_Kup = A.Sifra_Kup
  110536.             left outer join KObjekti KO on KO.Sifra_Obj = A.Sifra_Obj and KO.Sifra_Kup = A.Sifra_Kup
  110537.             where cast(cast(datepart(yyyy, DatumVreme) as char(4)) +''-''+ 
  110538.             cast(datepart(mm, DatumVreme) as char(2)) +''-''+
  110539.             cast(datepart(dd, DatumVreme) as char(2)) as smalldatetime)    
  110540.              >= '''+cast(@DatumOd as varchar(35))+''' and 
  110541.             cast(cast(datepart(yyyy, DatumVreme) as char(4)) +''-''+ 
  110542.             cast(datepart(mm, DatumVreme) as char(2)) +''-''+
  110543.             cast(datepart(dd, DatumVreme) as char(2)) as smalldatetime)    
  110544.              <= '''+cast(@DatumDo as varchar(35))+''' '
  110545. If @Sifra_Pat is not null
  110546.     set @SSQL = @SSQL + ' and P.Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  110547. If @Sifra_GrPat is not null
  110548.     set @SSQL = @SSQL + ' and P.Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '''+cast(@Sifra_GrPat as varchar(6))+''' ) '
  110549. If @Podelba1 Is Not NULL
  110550.     If @KFPod1 = 'D'
  110551.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or K.KDrugo1 Is Null) '
  110552.     Else
  110553.         Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '    
  110554. If @DenOdNedelata Is Not Null
  110555.     Set @SSQL = @SSQL + ' And dbo.fn_DenOdNedela(A.DatumVreme)= ' + Cast(@DenOdNedelata as varchar(6)) + ' '
  110556.  
  110557. set @SSQL = @SSQL + ' order by A.DatumVreme, A.Sifra_Kup, A.Sifra_Obj '
  110558. print(@SSQL)
  110559. exec(@SSQL)
  110560.  
  110561. --sega da gi izbriseme duplite vneseni vo rok od nekolku minuti
  110562. Declare @SifKup char(6), @SifObj smallint, @SifPat smallint, @SifKup1 char(6), @SifObj1 smallint, @SifPat1 smallint, @Datum1 smalldatetime
  110563. SET @SifKup1=''
  110564. SET @SifObj1=0
  110565. SET @SifPat1=0
  110566. SET @Datum1=GETDATE()
  110567. Declare Tab1 Cursor Fast_Forward For 
  110568.     Select  Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum From #TmpDetal ORDER BY Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum
  110569. Open Tab1
  110570. Fetch Next From Tab1 Into @SifPat, @SifKup, @SifObj, @Datum
  110571. While @@Fetch_Status = 0
  110572. Begin            
  110573.     IF @SifPat1=@SifPat AND @SifKup1=@SifKup AND dbo.fn_VratiDatum(@Datum1)=dbo.fn_VratiDatum(@Datum)
  110574.     BEGIN        
  110575.         IF (@SifObj IS NULL AND @SifObj1 IS NULL) OR (@SifObj IS NOT NULL AND @SifObj1 IS NOT NULL AND @SifObj=@SifObj1)
  110576.             Update #TmpDetal SET Poseten='X' WHERE Sifra_Pat=@SifPat AND Sifra_Kup=@SifKup AND Datum=@Datum
  110577.     END
  110578.     SET @SifPat1=@SifPat
  110579.     SET @SifKup1=@SifKup
  110580.     SET @SifObj1=@SifObj
  110581.     SET @Datum1=@Datum
  110582.     Fetch Next From Tab1  Into @SifPat, @SifKup, @SifObj, @Datum
  110583. End
  110584. Close Tab1
  110585. Deallocate Tab1
  110586.  
  110587. DELETE FROM #TmpDetal WHERE Poseten='X'
  110588. /*update #TmpDetal set PoRuta = 'D' from #tmpRuta TR 
  110589.       where TR.Sifra_Pat = #TmpDetal.Sifra_Pat 
  110590.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  110591.         and TR.Sifra_Obj is not null and TR.Sifra_Obj <> 0 
  110592.         and TR.Sifra_Obj = #TmpDetal.Sifra_OBj 
  110593.         and datepart(dw, #TmpDetal.Datum) - 1 = TR.DenOdNedela 
  110594.         and TR.Datum is null     
  110595.              
  110596. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR 
  110597. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat 
  110598.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  110599.         and TR.Sifra_Obj is null 
  110600.         and #TmpDetal.Sifra_Obj is null  
  110601.           and datepart(dw, #TmpDetal.Datum) - 1 = TR.DenOdNedela 
  110602.         and TR.Datum is null        
  110603. */
  110604. UPDATE #TmpDetal SET Sifra_Obj=NULL WHERE Sifra_Obj=0    --so ova se eliminiraat greskite kade se zapisalo 0 mesto null
  110605. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  110606. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  110607.          and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  110608.         and TR.Sifra_Obj is null 
  110609.         and #TmpDetal.Sifra_Obj is null  
  110610.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  110611.  
  110612. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  110613. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  110614.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup
  110615.         and #TmpDetal.Sifra_Obj is not null  --and #TmpDetal.Sifra_Obj <> 0
  110616.         and TR.Sifra_Obj = #TmpDetal.Sifra_Obj 
  110617.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  110618.  
  110619. update #TmpDetal set PoRuta = 'N' where PoRuta is null
  110620.  
  110621. --sega da gi dodademe tie sto se vo ruta, a ne se poseteni
  110622. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta, Poseten, SoBarkod, Datum)
  110623. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  110624. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  110625. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  110626. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  110627. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Datum as char(11)) NOT IN 
  110628. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(dbo.fn_VratiDatum(Datum) as char(11)) FROM #TmpDetal) AND R.Sifra_Obj IS NULL
  110629.  
  110630. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta, Poseten, SoBarkod, Datum)
  110631. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  110632. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  110633. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  110634. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  110635. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Sifra_Obj as char(3))+cast(R.Datum as char(11)) NOT IN 
  110636. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(Sifra_Obj as char(3))+cast(dbo.fn_VratiDatum(Datum) as char(11))FROM #TmpDetal WHERE Sifra_Obj IS NOT NULL) AND R.Sifra_Obj IS NOT NULL
  110637.  
  110638. If @RazlProdMest = 'D'
  110639. Begin
  110640.     select distinct Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, '' PoRuta, '' Poseten, '' SoBarKod, min(Datum) as Datum from #TmpDetal 
  110641.     where Poseten = 'D'
  110642.     group by Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj --, PoRuta, Poseten, SoBarKod    
  110643.     ORDER BY Sifra_Pat 
  110644. End
  110645. Else
  110646. Begin
  110647.     If @Poseteni Is Not Null
  110648.         Select * From #TmpDetal Where Poseten = @Poseteni ORDER BY Sifra_Pat, Datum
  110649.     Else 
  110650.         Select * From #TmpDetal ORDER BY Sifra_Pat, Datum
  110651. End
  110652.  
  110653.  
  110654.  
  110655. Go
  110656. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_detalruti_071210]'))
  110657. drop procedure [dbo].[sp_pregl_detalruti_071210]
  110658.  
  110659. Go
  110660.  
  110661.  
  110662.  
  110663.  
  110664. create                  Procedure sp_Pregl_DetalRuti_071210
  110665.     @Sifra_pat smallint = null,
  110666.     @Sifra_GrPat char(6) = null,
  110667.     @DatumOd smalldatetime = null,
  110668.     @DatumDo smalldatetime = null,
  110669.     @Podelba1 smallint = null,
  110670.     @KFPod1 char(1) = null,
  110671.     @RazlProdMest char(1) = 'N',
  110672.     @DenOdNedelata    char(1) = Null
  110673. As 
  110674. CREATE TABLE #TmpRuta
  110675.     (Sifra_Pat smallint,
  110676.      DatumOd smalldatetime,
  110677.      DenOdNedela char(1),
  110678.      Sifra_Kup char(6),
  110679.      Sifra_Obj smallint,
  110680.      Datum smalldatetime )
  110681.  
  110682. CREATE TABLE #TmpPat (Sifra_Pat smallint)
  110683. If @Sifra_Pat is not null 
  110684.     INSERT INTO #TmpPat VALUES (@Sifra_Pat)
  110685. Else IF @Sifra_GrPat is not null
  110686.     INSERT INTO #TmpPat SELECT Sifra_Pat from Sgrpat where Sif_GrPat =@Sifra_GrPat
  110687. ELSE
  110688.     INSERT INTO #TmpPat SELECT Sifra_Pat from Patnici
  110689.  
  110690. CREATE TABLE #TmpPR 
  110691. (Sifra_Pat smallint, 
  110692. Datum smalldatetime)
  110693.  
  110694. Declare @Datum smalldatetime
  110695. Declare @Praznik as char(1)
  110696. SET @Datum=@DatumOd
  110697. WHILE @Datum<=@DatumDo         
  110698. BEGIN
  110699.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110700.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj FROM RutiZaDatum WHERE Datum=@Datum AND Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  110701.  
  110702.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  110703.     IF @Praznik IS NULL
  110704.     BEGIN
  110705.         DELETE FROM #TmpPR
  110706.         INSERT INTO #TmpPR SELECT Sifra_Pat, MAX(Datum_Od) FROM RutiPlan 
  110707.         WHERE Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat) AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) GROUP BY Sifra_Pat
  110708.  
  110709.  
  110710.         If @DenOdNedelata Is Not null And dbo.fn_DenOdNedela(@Datum)=@DenOdNedelata
  110711.             INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110712.             SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  110713.             WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  110714.             AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  110715.         Else
  110716.             INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110717.             SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  110718.             WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  110719.             AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  110720.     END
  110721.  
  110722.     SET @Datum = DateAdd(day, 1, @Datum)
  110723. END 
  110724. declare @SSQL as varchar(5000)
  110725. /*set @SSQL = 'insert into #TmpRuta(Sifra_Pat, DatumOd, DenOdNedela, Sifra_Kup, Sifra_Obj) 
  110726.     select Sifra_Pat, max(Datum_Od), DenOdNedela, Sifra_Kup, Sifra_Obj
  110727.     from RutiPlan where Datum_Od <='''+cast(@DatumOd as varchar(35))+''' ' 
  110728. If @Sifra_Pat is not null
  110729.     set @SSQL = @SSQL + ' and Sifra_Pat = '+cast (@Sifra_Pat as varchar(15))+' '
  110730. If @Sifra_GrPat is not null
  110731.     set @SSQL = @SSQL + ' and Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '+cast(@Sifra_GrPat as varchar(6))+' ) '
  110732. set @SSQL = @SSQL + ' group by Sifra_Pat, DenOdNedela, Sifra_Kup, Sifra_Obj '         
  110733.     exec(@SSQL)
  110734.  
  110735. set @SSQL = ' insert into #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  110736.      select Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj
  110737.                      from RutiZaDatum
  110738.                      where Datum >= '''+cast(@DatumOd as varchar(35))+''' and Datum <= '''+cast(@DatumDo as varchar(35))+''' '
  110739. If @Sifra_Pat is not null
  110740.     set @SSQL = @SSQL + ' and Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  110741. If @Sifra_GrPat is not null
  110742.     set @SSQL = @SSQL + ' and Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '+cast(@Sifra_GrPat as varchar(6))+' ) '    
  110743. --    print(@SSQL)
  110744.     exec(@SSQL)*/
  110745.  
  110746. create table #TmpDetal
  110747.     (
  110748.     Sifra_Pat smallint,
  110749.     ImePat varchar(30),
  110750.     Sifra_Kup char(6),
  110751.     ImeKup varchar(40),
  110752.     Sifra_Obj smallint,
  110753.     ImeObj varchar(40),
  110754.     PoRuta char(1),
  110755.     Poseten char(1),
  110756.     SoBarkod char(1),
  110757.     Datum smalldatetime
  110758.     )
  110759. set @SSQL = 'insert into #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, Datum, Poseten, SoBarkod)
  110760.             select A.sifra_Oe, P.ImePat, A.Sifra_Kup, K.ImeKup, case when A.Sifra_Obj <> 0 then A.Sifra_Obj end, KO.ImeObj, A.DatumVreme,''D'', A.SoBarKod
  110761.             from Akcija A
  110762.             inner join Patnici P on A.Sifra_oe=P.Sifra_Pat
  110763.             inner join Komint K on K.Sifra_Kup = A.Sifra_Kup
  110764.             left outer join KObjekti KO on KO.Sifra_Obj = A.Sifra_Obj and KO.Sifra_Kup = A.Sifra_Kup
  110765.             where dbo.fn_VratiDatum(DatumVreme) >= '''+cast(@DatumOd as varchar(35))+''' and dbo.fn_VratiDatum(DatumVreme) <= '''+cast(@DatumDo as varchar(35))+''' '
  110766. If @Sifra_Pat is not null
  110767.     set @SSQL = @SSQL + ' and P.Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  110768. If @Sifra_GrPat is not null
  110769.     set @SSQL = @SSQL + ' and P.Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '''+cast(@Sifra_GrPat as varchar(6))+''' ) '
  110770. If @Podelba1 Is Not NULL
  110771.     If @KFPod1 = 'D'
  110772.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or K.KDrugo1 Is Null) '
  110773.     Else
  110774.         Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '    
  110775. If @DenOdNedelata Is Not Null
  110776.     Set @SSQL = @SSQL + ' And dbo.fn_DenOdNedela(A.Datum_Vreme)= ' + Cast(@DenOdNedelata as varchar(6)) + ' '
  110777.  
  110778. set @SSQL = @SSQL + ' order by A.DatumVreme, A.Sifra_Kup, A.Sifra_Obj '
  110779. print(@SSQL)
  110780. exec(@SSQL)
  110781.  
  110782. --sega da gi izbriseme duplite vneseni vo rok od nekolku minuti
  110783. Declare @SifKup char(6), @SifObj smallint, @SifPat smallint, @SifKup1 char(6), @SifObj1 smallint, @SifPat1 smallint, @Datum1 smalldatetime
  110784. SET @SifKup1=''
  110785. SET @SifObj1=0
  110786. SET @SifPat1=0
  110787. SET @Datum1=GETDATE()
  110788. Declare Tab1 Cursor Fast_Forward For 
  110789.     Select  Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum From #TmpDetal ORDER BY Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum
  110790. Open Tab1
  110791. Fetch Next From Tab1 Into @SifPat, @SifKup, @SifObj, @Datum
  110792. While @@Fetch_Status = 0
  110793. Begin            
  110794.     IF @SifPat1=@SifPat AND @SifKup1=@SifKup AND dbo.fn_VratiDatum(@Datum1)=dbo.fn_VratiDatum(@Datum)
  110795.     BEGIN        
  110796.         IF (@SifObj IS NULL AND @SifObj1 IS NULL) OR (@SifObj IS NOT NULL AND @SifObj1 IS NOT NULL AND @SifObj=@SifObj1)
  110797.             Update #TmpDetal SET Poseten='X' WHERE Sifra_Pat=@SifPat AND Sifra_Kup=@SifKup AND Datum=@Datum
  110798.     END
  110799.     SET @SifPat1=@SifPat
  110800.     SET @SifKup1=@SifKup
  110801.     SET @SifObj1=@SifObj
  110802.     SET @Datum1=@Datum
  110803.     Fetch Next From Tab1  Into @SifPat, @SifKup, @SifObj, @Datum
  110804. End
  110805. Close Tab1
  110806. Deallocate Tab1
  110807.  
  110808. DELETE FROM #TmpDetal WHERE Poseten='X'
  110809. /*update #TmpDetal set PoRuta = 'D' from #tmpRuta TR 
  110810.       where TR.Sifra_Pat = #TmpDetal.Sifra_Pat 
  110811.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  110812.         and TR.Sifra_Obj is not null and TR.Sifra_Obj <> 0 
  110813.         and TR.Sifra_Obj = #TmpDetal.Sifra_OBj 
  110814.         and datepart(dw, #TmpDetal.Datum) - 1 = TR.DenOdNedela 
  110815.         and TR.Datum is null     
  110816.              
  110817. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR 
  110818. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat 
  110819.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  110820.         and TR.Sifra_Obj is null 
  110821.         and #TmpDetal.Sifra_Obj is null  
  110822.           and datepart(dw, #TmpDetal.Datum) - 1 = TR.DenOdNedela 
  110823.         and TR.Datum is null        
  110824. */
  110825. UPDATE #TmpDetal SET Sifra_Obj=NULL WHERE Sifra_Obj=0    --so ova se eliminiraat greskite kade se zapisalo 0 mesto null
  110826. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  110827. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  110828.          and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  110829.         and TR.Sifra_Obj is null 
  110830.         and #TmpDetal.Sifra_Obj is null  
  110831.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  110832.  
  110833. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  110834. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  110835.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup
  110836.         and #TmpDetal.Sifra_Obj is not null  --and #TmpDetal.Sifra_Obj <> 0
  110837.         and TR.Sifra_Obj = #TmpDetal.Sifra_Obj 
  110838.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  110839.  
  110840. update #TmpDetal set PoRuta = 'N' where PoRuta is null
  110841.  
  110842. --sega da gi dodademe tie sto se vo ruta, a ne se poseteni
  110843. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  110844. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  110845. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  110846. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  110847. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  110848. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Datum as char(11)) NOT IN 
  110849. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(dbo.fn_VratiDatum(Datum) as char(11)) FROM #TmpDetal) AND R.Sifra_Obj IS NULL
  110850.  
  110851. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  110852. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  110853. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  110854. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  110855. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  110856. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Sifra_Obj as char(3))+cast(R.Datum as char(11)) NOT IN 
  110857. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(Sifra_Obj as char(3))+cast(dbo.fn_VratiDatum(Datum) as char(11))FROM #TmpDetal WHERE Sifra_Obj IS NOT NULL) AND R.Sifra_Obj IS NOT NULL
  110858.  
  110859. If @RazlProdMest = 'D'
  110860.     select distinct Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, '' PoRuta, '' Poseten, '' SoBarKod, min(Datum) as Datum from #TmpDetal 
  110861.     group by Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj --, PoRuta, Poseten, SoBarKod    
  110862.     ORDER BY Sifra_Pat 
  110863. else
  110864.     select * from #TmpDetal ORDER BY Sifra_Pat, Datum
  110865.  
  110866.  
  110867.  
  110868.  
  110869.  
  110870.  
  110871.  
  110872.  
  110873.  
  110874.  
  110875.  
  110876.  
  110877.  
  110878.  
  110879.  
  110880.  
  110881. Go
  110882. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_distlog]'))
  110883. drop procedure [dbo].[sp_pregl_distlog]
  110884.  
  110885. Go
  110886.  
  110887. CREATE    PROCEDURE sp_Pregl_DistLog
  110888.     @ImeLog    varchar(20) = NULL,
  110889.     @Datum_Od    Smalldatetime = NULL,
  110890.     @Datum_Do    Smalldatetime = NULL
  110891. AS
  110892.     Declare @SSQL Varchar(4000)
  110893.     Set @SSQL = 'SELECT DISTINCT ImeLog, Koga    FROM OpstLog WHERE 1=1 '
  110894.     If @ImeLog IS NOT NULL
  110895.         Set @SSQL = @SSQL + 'AND ImeLog = ''' + @ImeLog + ''' '
  110896.     If @Datum_Od IS NOT NULL
  110897.         Set @SSQL = @SSQL + ' AND Koga >= ''' + Cast(@Datum_Od as varchar(35)) + ''' '
  110898.     If @Datum_Do IS NOT NULL
  110899.         Set @SSQL = @SSQL + ' AND Koga < ''' + Cast(DateAdd(Day, 1, @Datum_Do)  as varchar(35)) + ''' '
  110900.     Set @SSQL = @SSQL + ' ORDER BY Koga'
  110901. EXEC (@SSQL)
  110902.  
  110903.  
  110904.  
  110905. Go
  110906. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_dok_stavr_magstavr]'))
  110907. drop procedure [dbo].[sp_pregl_dok_stavr_magstavr]
  110908.  
  110909. Go
  110910.  
  110911. CREATE  PROCEDURE sp_Pregl_Dok_Stavr_MagStavr 
  110912.     @Sifra_Oe    smallint,
  110913.     @Sifra_Dok    smallint,
  110914.     @Broj_Dok    int
  110915. AS
  110916.     Create Table #Stavki
  110917.     (
  110918.      Sifra_Art    varchar(20),
  110919.      KolicStavr    decimal(18,6),
  110920.      KolicMS1    decimal(18,6),
  110921.      KolicMS2    decimal(18,6),
  110922.      KolicMS3    decimal(18,6)
  110923.     )
  110924.     Insert Into #Stavki
  110925.     Select S.Sifra_Art, Sum(S.Kolic), 0, 0, 0
  110926.     From Stavr S
  110927.     Where S.Sifra_Oe=@Sifra_Oe And S.Sifra_Dok=@Sifra_Dok And S.Broj_Dok=@Broj_Dok
  110928.     Group By S.Sifra_Art
  110929.     Insert Into #Stavki
  110930.     Select M.Sifra_Art, 0, 
  110931.         Sum(Case When Substring(M.SpecOzn,20,1) = 1 Then M.Kolic Else 0 End),
  110932.         Sum(Case When Substring(M.SpecOzn,20,1) = 2 Then M.Kolic Else 0 End),
  110933.         Sum(Case When Substring(M.SpecOzn,20,1) = 3 Then M.Kolic Else 0 End)
  110934.     From Dokr D
  110935.     Inner Join MagStavr M On M.DokrID=D.DokrID
  110936.     Where D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  110937.     Group By M.Sifra_Art
  110938.     Select S.Sifra_Art, K.ImeArt, Sum(S.KolicStavr) KolicStavr, Sum(S.KolicMS1) KolicMS1, Sum(S.KolicMS2) KolicMS2, Sum(S.KolicMS3) KolicMS3, K.SodrziEd
  110939.     From #Stavki S
  110940.     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  110941.     Group By S.Sifra_Art, K.ImeArt, K.SodrziEd
  110942.  
  110943.  
  110944.  
  110945. Go
  110946. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_dokosnsred]'))
  110947. drop procedure [dbo].[sp_pregl_dokosnsred]
  110948.  
  110949. Go
  110950.  
  110951.  
  110952. CREATE    PROCEDURE sp_Pregl_DokOsnSred
  110953.     @Sifra_Oe    smallint, 
  110954.     @Sifra_Dok    smallint, 
  110955.     @Broj_Dok    int,
  110956.     @Tip_StaOsn    char(1) ='' OUTPUT 
  110957. AS
  110958.     SELECT @Tip_StaOsn = Tip_StaOsn FROM DokOsnSred WHERE Sifra_Oe=@Sifra_Oe And Sifra_Dok=@Sifra_Dok And Broj_Dok=@Broj_Dok
  110959.     Select D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.VlIzl, D.Poc_Inv_Broj as Inv_Broj, D.Sifra_Kup, K.ImeKup, D.Identif_Br, 
  110960.                O.Ime, O.Opis, O.BarKod, S.Datum_Dok, S.Tip_StaOsn, S.VlIzl, 
  110961.         S.Sifra_MikLok, MikL.Ime_MikLok, S.RedTrans, S.Osn_Amor, S.Otpis_Pret, S.Sifra_MikLok_Od, MikL2.Ime_MikLok Ime_MikLok_Od,
  110962.         S.Orig_Nab_Vr, S.Valuta, S.Orig_Nab_Vr_Val, S.Delov_God, S.Sifra_Rab, Rab.ImeRab, S.Sifra_RabOd, Rab2.ImeRab ImeRab_Od,
  110963.         Count(*) as Kolic
  110964.     From DokOsnSred D
  110965.     Inner Join StavOsnSred S On S.DokOID=D.DokOID
  110966.     Inner Join OsnSred O On O.Inv_Broj=D.Poc_Inv_Broj
  110967.         Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup 
  110968.     Left Outer Join MikroLok MikL On MikL.Sifra_MikLok=S.Sifra_MikLok
  110969.     Left Outer Join MikroLok MikL2 On MikL2.Sifra_MikLok=S.Sifra_MikLok_Od
  110970.     Left Outer Join Rabotnik Rab On Rab.Sifra_Rab=S.Sifra_Rab
  110971.     Left Outer Join Rabotnik Rab2 On Rab2.Sifra_Rab=S.Sifra_RabOd
  110972.     Where D.Sifra_Oe=@Sifra_Oe And D.Sifra_Dok=@Sifra_Dok And D.Broj_Dok=@Broj_Dok
  110973.     Group By D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.VlIzl, D.Poc_Inv_Broj, D.Sifra_Kup, K.ImeKup, D.Identif_Br, O.Ime, O.Opis, O.BarKod, S.Datum_Dok, S.Tip_StaOsn, S.VlIzl, 
  110974.         S.Sifra_MikLok, MikL.Ime_MikLok, S.RedTrans, S.Osn_Amor, S.Otpis_Pret, S.Sifra_MikLok_Od, MikL2.Ime_MikLok,
  110975.         S.Orig_Nab_Vr, S.Valuta, S.Orig_Nab_Vr_Val, S.Delov_God, S.Sifra_Rab, Rab.ImeRab, S.Sifra_RabOd, Rab2.ImeRab
  110976.     Return @@ERROR
  110977.  
  110978.  
  110979.  
  110980. Go
  110981. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_dokr_prev]'))
  110982. drop procedure [dbo].[sp_pregl_dokr_prev]
  110983.  
  110984. Go
  110985.  
  110986. CREATE               PROCEDURE sp_Pregl_Dokr_Prev
  110987.     @Sifra_Prev    char(6)=null,
  110988.     @Datum_Od    smalldatetime=null,
  110989.     @Datum_Do    smalldatetime=null,
  110990.     @Sifra_OE     smallint=null,
  110991.     @Sifra_Dok    smallint=null,
  110992.     @Sifra_Dok2    smallint=null,
  110993.     @Sifra_Dok3    smallint=null,
  110994.     @Sifra_Dok4    smallint=null,
  110995.     @Broj_Dok_Od    int=null,
  110996.     @Broj_Dok_Do    int=null,
  110997.     @BezPrevoznik    char(1) = Null,
  110998.     @KoiOe    varchar(6) = Null,
  110999.     @BezKasiP    char(1)='N',
  111000.     @Sifra_Pat    smallint = NULL,
  111001.     @NePecFisc        char(1)=NULL,
  111002.     @Podred    char(1) = 'G',    --po grad(default),D-po oe-dok/br,P-po patnik+dok, K-po kupuvac
  111003.     @BezStornirani     char(1) = 'N',
  111004.     @KDrugo1    smallint = Null
  111005. AS
  111006.     Declare @SSQL as varchar(8000)
  111007.     Set @SSQL =  'SELECT D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.DokrID, D.Datum_Vnes,
  111008.         Cast(D.Sifra_OE as varchar(6)) + ''-'' + Cast(D.Sifra_Dok as varchar(6)) + ''/'' + Cast(D.Broj_Dok as varchar(10)) BrojDok,
  111009.         D.Sifra_Kup,D.Opis, K.ImeKup, K.Adresa, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  111010.         (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, 
  111011.         K1.Ime_1K, 
  111012.         D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, D.Broj_Nal, D.Spec_Forma_Pec, '
  111013.     Set @SSQL = @SSQL + ' D.Toc200 IznosDok, Sum(S.Kolic*A.BTezina) as Tezina, SUM(Case When (A.ImaKomerc IS NULL OR A.ImaKomerc=0) Then 0 Else S.Kolic * A.Volumen/A.ImaKomerc End) Volumen, Count(S.DokID) Stavki '
  111014.     Set @SSQL = @SSQL + ' From Dokr D Inner Join Stavr S On S.DokrID=D.DokrID
  111015.                       Inner Join Katart A On A.Sifra_Art = S.Sifra_Art '
  111016.     Set @SSQL = @SSQL + ' Left Outer Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  111017.                   Left Outer Join KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  111018.                   Left Outer Join Grad G On G.Sifra_Grad = (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) 
  111019.                   Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) 
  111020.                   Left Outer Join Prevoznik P On P.Sifra_Prev = D.Sifra_Prev 
  111021.                   Left Outer Join Patnici Pat On Pat.Sifra_Pat = D.Sifra_Pat '
  111022.     Set @SSQL = @SSQL + ' Where D.VlIzl=''I'' '
  111023.     If @Sifra_Oe Is Not Null
  111024.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  111025.     If @KoiOE Is Not Null
  111026.         Set @SSQL = @SSQL + ' And D.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  111027.     If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null And @Sifra_Dok3 Is Not Null And @Sifra_Dok4 Is Not Null
  111028.         Set @SSQL = @SSQL + ' And (D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok3 as varchar(6))  + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok4 as varchar(6)) + ') '
  111029.     Else If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null And @Sifra_Dok3 Is Not Null
  111030.         Set @SSQL = @SSQL + ' And (D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok3 as varchar(6)) + ') '
  111031.     Else If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null 
  111032.         Set @SSQL = @SSQL + ' And (D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Dok = ' + Cast(@Sifra_Dok2 as varchar(6)) + ') '
  111033.     Else If @Sifra_Dok Is Not Null 
  111034.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  111035.     If @Broj_Dok_Od Is Not Null
  111036.         Set @SSQL = @SSQL + ' And D.Broj_Dok >= ' + Cast(@Broj_Dok_Od as varchar(10)) + ' '
  111037.     If @Broj_Dok_Do Is Not Null
  111038.         Set @SSQL = @SSQL + ' And D.Broj_Dok <= ' + Cast(@Broj_Dok_Do as varchar(10)) + ' '
  111039.     If @Datum_Od Is Not Null
  111040.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  111041.     If @Datum_Do Is Not Null
  111042.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  111043.     If @Sifra_Prev Is Not Null
  111044.         Set @SSQL = @SSQL + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  111045.     If @BezPrevoznik = 'D'
  111046.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Null '
  111047.     Else If @BezPrevoznik = 'N'
  111048.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Not Null '
  111049.     IF @Sifra_Pat IS NOT NULL
  111050.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(5)) +' ' 
  111051.     IF @NePecFisc IS NOT NULL AND @NePecFisc='D'    --dod.samo za pec.na fisc+Promena na kasa
  111052.         Set @SSQL = @SSQL + ' And (D.Pec_Fisc IS NULL OR D.Pec_Fisc=0) AND D.Broj_Nal IS NULL ' 
  111053.     IF @BezKasiP='D'    --dod.14.11.06
  111054.         SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID FROM KasStav WHERE DokrID IS NOT NULL) '
  111055.     IF @BezStornirani = 'D'
  111056.         SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT Dokr_ID_Orig FROM DokrStorno) 
  111057.                               AND D.DokrID NOT IN (SELECT Dokr_ID_Storno FROM DokrStorno)'
  111058.     If @KDrugo1 Is Not Null
  111059.         Set @SSQL = @SSQL + ' And K1.Sifra_1K = ' + Cast(@KDrugo1 as varchar(6)) + ' '
  111060.     Set @SSQL = @SSQL + ' Group By D.Datum_Dok, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.DokrID, D.Datum_Vnes,
  111061.                 D.Sifra_Kup, D.Opis, K.ImeKup, K.Adresa, D.Sifra_Obj, OB.ImeObj, D.Toc200, (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End), 
  111062.                 D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, G.ImeGrad, D.Broj_Nal, K1.Ime_1K, D.Spec_Forma_Pec '
  111063.     If @Podred='D'
  111064.         Set @SSQL = @SSQL + ' Order By D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok '
  111065.     ELSE If @Podred='P'
  111066.         Set @SSQL = @SSQL + ' Order By D.Sifra_Pat, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok '
  111067.     ELSE If @Podred='K'
  111068.         Set @SSQL = @SSQL + ' Order By Case When D.Sifra_Obj Is not null or D.Sifra_Obj>0 Then OB.ImeObj else K.ImeKup end, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok '
  111069.     ELSE
  111070.         Set @SSQL = @SSQL + ' Order By G.ImeGrad, K.ImeKup, D.Broj_Dok '
  111071. print @SSQL
  111072.     Exec(@SSQL)
  111073.  
  111074.  
  111075.  
  111076.  
  111077.  
  111078. Go
  111079. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_dokr_prev_narac]'))
  111080. drop procedure [dbo].[sp_pregl_dokr_prev_narac]
  111081.  
  111082. Go
  111083.  
  111084.  
  111085.  
  111086. CREATE                  PROCEDURE sp_Pregl_Dokr_Prev_Narac
  111087.     @Sifra_Prev    char(6)=null,
  111088.     @Datum_Od    smalldatetime=null,
  111089.     @Datum_Do    smalldatetime=null,
  111090.     @Sifra_OE     smallint=null,
  111091.     @Sifra_Dok    smallint=null,
  111092.     @Sifra_Dok2    smallint=null,
  111093.     @Sifra_Dok3    smallint=null,
  111094.     @Sifra_Dok4    smallint=null,
  111095.     @Broj_Dok_Od    int=null,
  111096.     @Broj_Dok_Do    int=null,
  111097.     @BezPrevoznik    char(1) = Null,
  111098.     @KoiOe    varchar(6) = Null,
  111099.     @BezKasiP    char(1)='N',
  111100.     @Sifra_Pat    smallint = NULL,
  111101.     @NePecFisc        char(1)=NULL,
  111102.     @Podred    char(1) = 'G',    --po grad(default),D-po oe-dok/br,P-po patnik+dok
  111103.     @BezStornirani     char(1) = 'N',
  111104.     @KDrugo1    smallint = Null,
  111105.     @KojDatum char(1)= 'N',     -- D-Dat.dosp,N-dat.nar.,I-po datispor.(Orbico)
  111106.     @ZaProverka    char(1) = 'P', 
  111107.     @Sifra_reg smallint = null,
  111108.     @Sifra_Grad smallint = null
  111109.  
  111110. AS
  111111.  
  111112.     Declare @SSQL as varchar(8000)
  111113.  
  111114.     If @KojDatum = 'D'
  111115.              Set @SSQL =  'SELECT Dateadd(day, D.Rok, D.Datum_Nar) Datum_Dok, '
  111116.     ELSE IF @KojDatum = 'I'
  111117.             Set @SSQL =  'SELECT D.Dat_Isporaka Datum_Dok, D.Sifra_Za_Dok, 
  111118.                     DD.Sifra_Oe DSifra_Oe, DD.Sifra_Dok DSifra_Dok, DD.Broj_Dok DBroj_Dok,
  111119.                     NRD.Realiziran DReal, '
  111120.     ELSE IF @KojDatum = 'P'
  111121.             Set @SSQL =  'SELECT D.Datum_Nar Datum_Dok, D.Dat_Isporaka, D.Sifra_Za_Dok, D.Sifra_Za_Org, D.Sifra_Za_Prim, 
  111122.                     DD.Sifra_Oe DSifra_Oe, DD.Sifra_Dok DSifra_Dok, DD.Broj_Dok DBroj_Dok, 
  111123.                     NRD.Realiziran DReal, '
  111124.     Else
  111125.             Set @SSQL =  'SELECT D.Datum_Nar Datum_Dok, D.Sifra_Za_Dok, '
  111126.  
  111127.         Set @SSQL=@SSQL+' D.Sifra_Oe, D.Sifra_Nar Sifra_Dok, D.Broj_Nar Broj_Dok, D.NarID DokrID, D.Datum_Vnes,
  111128.                   Cast(D.Sifra_OE as varchar(6)) + ''-'' + Cast(D.Sifra_Nar as varchar(6)) + ''/'' + Cast(D.Broj_Nar as varchar(10)) BrojDok,
  111129.                   D.Sifra_Kup,  '' '' Opis,K.ImeKup, K.Adresa, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  111130.                   (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, 
  111131.                   K1.Ime_1K, D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, D.Toc200 IznosDok, Sum(S.Kolic*A.BTezina) as Tezina, 
  111132.                   SUM(Case When (A.ImaKomerc IS NULL OR A.ImaKomerc=0) Then 0 Else S.Kolic * A.Volumen/A.ImaKomerc End) Volumen,
  111133.                   SUM(Case When (A.ImaKomerc IS NULL OR A.ImaKomerc=0) Then 0 Else S.Kolic/A.ImaKomerc End) Paketi,
  111134.           Count(S.NarID) Stavki, N.OdiVo_Sifra_Dok
  111135.                   From Naracki D Inner Join Stanarac S On S.NarID=D.NarID
  111136.                   Inner Join Katart A On A.Sifra_Art = S.Sifra_Art  
  111137.                   Left Outer Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  111138.                   Left Outer Join KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  111139.                   Left Outer Join Grad G On G.Sifra_Grad = (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) 
  111140.                   Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) 
  111141.                   Left Outer Join Prevoznik P On P.Sifra_Prev = D.Sifra_Prev 
  111142.                   Left Outer Join Patnici Pat On Pat.Sifra_Pat = D.Sifra_Pat 
  111143.                   left outer Join TipNarac  N on N.Sifra_Nar=D.Sifra_Nar
  111144.               Left Outer Join GRegion Reg on Reg.Sifra_Reg=(Case When OB.Sifra_Reg Is Not Null Then OB.Sifra_Reg Else K.Sifra_Reg End) 
  111145.           Left Outer Join Grad GR on GR.Sifra_Grad=(Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) '
  111146.  
  111147.     if @KojDatum = 'P' or @KojDatum = 'I'
  111148.          set @SSQL = @SSQL + ' Left Outer Join NarRealDok NRD
  111149.                         on NRD.NarId = D.NarId
  111150.                        Left Outer Join Dokr DD
  111151.                         on DD.DokrId = NRD.DokrId '
  111152.  
  111153.     set @SSQL = @SSQL + '   Where N.VlIzl=''I'' '
  111154.  
  111155.     If @Sifra_Oe Is Not Null
  111156.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  111157.     If @KoiOE Is Not Null
  111158.         Set @SSQL = @SSQL + ' And D.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  111159.     If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null And @Sifra_Dok3 Is Not Null And @Sifra_Dok4 Is Not Null
  111160.         Set @SSQL = @SSQL + ' And (D.Sifra_Nar = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_NAr = ' + Cast(@Sifra_Dok2 as varchar(6)) + ' Or D.Sifra_NAr = ' + Cast(@Sifra_Dok3 as varchar(6))  + ' Or D.Sifra_NAr = ' + Cast(@Sifra_Dok4 as varchar(6)) + ') '
  111161.     Else If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null And @Sifra_Dok3 Is Not Null
  111162.         Set @SSQL = @SSQL + ' And (D.Sifra_Nar = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_NAr = ' + Cast(@Sifra_Dok2 as varchar(6)) + ' Or D.Sifra_Nar = ' + Cast(@Sifra_Dok3 as varchar(6)) + ') '
  111163.     Else If @Sifra_Dok Is Not Null And @Sifra_Dok2 Is Not Null 
  111164.         Set @SSQL = @SSQL + ' And (D.Sifra_Nar = ' + Cast(@Sifra_Dok as varchar(6)) + ' Or D.Sifra_Nar = ' + Cast(@Sifra_Dok2 as varchar(6)) + ') '
  111165.     Else If @Sifra_Dok Is Not Null 
  111166.         Set @SSQL = @SSQL + ' And D.Sifra_Nar = ' + Cast(@Sifra_Dok as varchar(6)) + ' '
  111167.     If @Broj_Dok_Od Is Not Null
  111168.         Set @SSQL = @SSQL + ' And D.Broj_Nar >= ' + Cast(@Broj_Dok_Od as varchar(10)) + ' '
  111169.     If @Broj_Dok_Do Is Not Null
  111170.         Set @SSQL = @SSQL + ' And D.Broj_Nar <= ' + Cast(@Broj_Dok_Do as varchar(10)) + ' '
  111171.  
  111172. If @KojDatum = 'D'
  111173. BEGIN
  111174.     If @Datum_Od Is Not Null
  111175.         Set @SSQL = @SSQL + ' And Dateadd(day, D.Rok, D.Datum_Nar) >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  111176.     If @Datum_Do Is Not Null
  111177.         Set @SSQL = @SSQL + ' And Dateadd(day, D.Rok, D.Datum_Nar) <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  111178. END
  111179. ELSE If @KojDatum = 'I'
  111180. BEGIN
  111181.     If @Datum_Od Is Not Null
  111182.         Set @SSQL = @SSQL + ' And D.Dat_Isporaka >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  111183.     If @Datum_Do Is Not Null
  111184.         Set @SSQL = @SSQL + ' And D.Dat_Isporaka <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  111185.  
  111186.     --if @ZaProverka = 'D'
  111187.     --    Set @SSQL = @SSQL + ' And (D.Stat_Dok_Nar <> ''P'' or D.Stat_Dok_Nar is null) '
  111188.     --else if @ZaProverka = 'P'
  111189.     --    Set @SSQL = @SSQL + ' And D.Stat_Dok_Nar = ''P'' '
  111190.  
  111191.  
  111192. END
  111193. ELSE If @KojDatum = 'P'
  111194. BEGIN
  111195.     If @Datum_Od Is Not Null
  111196.         Set @SSQL = @SSQL + ' And D.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  111197.     If @Datum_Do Is Not Null
  111198.         Set @SSQL = @SSQL + ' And D.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  111199.  
  111200.     if @ZaProverka = 'D'
  111201.         Set @SSQL = @SSQL + ' And (D.Stat_Dok_Nar <> ''P'' or D.Stat_Dok_Nar is null) '
  111202.     else if @ZaProverka = 'P'
  111203.         Set @SSQL = @SSQL + ' And D.Stat_Dok_Nar = ''P'' '
  111204.  
  111205.  
  111206. END
  111207. ELSE
  111208. BEGIN
  111209.     If @Datum_Od Is Not Null
  111210.         Set @SSQL = @SSQL + ' And D.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  111211.     If @Datum_Do Is Not Null
  111212.         Set @SSQL = @SSQL + ' And D.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  111213. END
  111214.  
  111215.     If @Sifra_Prev Is Not Null
  111216.         Set @SSQL = @SSQL + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  111217.     If @BezPrevoznik = 'D'
  111218.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Null '
  111219.     Else If @BezPrevoznik = 'N'
  111220.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Not Null '
  111221.     IF @Sifra_Pat IS NOT NULL
  111222.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(5)) +' ' 
  111223.     IF @NePecFisc IS NOT NULL AND @NePecFisc='D'    --dod.samo za pec.na fisc+Promena na kasa
  111224.         Set @SSQL = @SSQL + ' And (D.Pec_Fisc IS NULL OR D.Pec_Fisc=0) AND D.Broj_Nal IS NULL ' 
  111225.     IF @BezKasiP='D'    --dod.14.11.06
  111226.         SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT DokrID FROM KasStav WHERE DokrID IS NOT NULL) '
  111227.     IF @BezStornirani = 'D'
  111228.         SET @SSQL = @SSQL + ' AND D.DokrID NOT IN (SELECT Dokr_ID_Orig FROM DokrStorno) 
  111229.                               AND D.DokrID NOT IN (SELECT Dokr_ID_Storno FROM DokrStorno)'
  111230.     If @KDrugo1 Is Not Null
  111231.         Set @SSQL = @SSQL + ' And K1.Sifra_1K = ' + Cast(@KDrugo1 as varchar(6)) + ' '
  111232.     IF @Sifra_Reg IS NOT NULL
  111233.         Set @SSQL = @SSQL + ' And Reg.Sifra_Reg = '+cast(@Sifra_Reg as varchar(5)) +' ' 
  111234.     IF @Sifra_Grad IS NOT NULL
  111235.         Set @SSQL = @SSQL + ' And GR.Sifra_Grad = '+cast(@Sifra_Grad as varchar(5)) +' ' 
  111236.  
  111237.  
  111238.     Set @SSQL = @SSQL + ' Group by D.Datum_Nar, D.Sifra_OE, D.Sifra_Nar, D.Broj_Nar, D.DokrID, D.Datum_Vnes,
  111239.         D.Sifra_Kup,K.ImeKup, K.Adresa, D.Sifra_Obj, OB.ImeObj, D.Toc200, (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End),
  111240.                           D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, G.ImeGrad, K1.Ime_1K, D.NarID,D.Rok, Reg.Sifra_reg, N.OdiVo_Sifra_Dok '
  111241.  
  111242.     if @KojDatum = 'P' or @KojDatum = 'I'
  111243.         Set @SSQL = @SSQL + ', DD.Sifra_Oe, DD.Sifra_Dok, DD.Broj_Dok, NRD.Realiziran '
  111244.  
  111245.     IF @KojDatum = 'I'
  111246.         Set @SSQL = @SSQL + ', D.Dat_Isporaka, D.Sifra_Za_Dok '
  111247.     else IF @KojDatum = 'P'
  111248.         Set @SSQL = @SSQL + ', D.Sifra_Za_Dok, D.Sifra_Za_Org, D.Sifra_Za_Prim, D.Dat_Isporaka '
  111249.     else if @KojDatum = 'N'
  111250.         Set @SSQL = @SSQL + ', D.Sifra_Za_Dok '
  111251.     
  111252.     If @Podred='D'
  111253.         Set @SSQL = @SSQL + ' Order By D.Sifra_Oe, D.Sifra_Nar, D.Broj_Nar '
  111254.     ELSE If @Podred='P'
  111255.         Set @SSQL = @SSQL + ' Order By D.Sifra_Pat, D.Sifra_Oe, D.Sifra_NAr, D.Broj_Nar '
  111256.     ELSE
  111257.         Set @SSQL = @SSQL + ' Order By G.ImeGrad, K.ImeKup, D.Broj_Nar '
  111258. --print @SSQL
  111259.     Exec(@SSQL)
  111260.  
  111261.  
  111262.  
  111263.  
  111264. Go
  111265. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_fakturi]'))
  111266. drop procedure [dbo].[sp_pregl_fakturi]
  111267.  
  111268. Go
  111269.  
  111270.  
  111271. CREATE    PROCEDURE [dbo].[sp_Pregl_Fakturi]
  111272.     @Godina    smallint=NUll,
  111273.     @Mesec    smallint=Null,
  111274.     @Sifra_PodrSluzba    char(4)=Null
  111275. AS
  111276. DECLARE @SSQL as varchar(2000)
  111277. DECLARE @SSQLUsl as varchar(1000)
  111278. SET @SSQLUsl=''
  111279. IF @Godina IS NOT NULL
  111280.     SET @SSQLUsl = @SSQLUsl + ' AND F.Godina_Fra='+Cast(@Godina as char(4))
  111281. IF @Mesec IS NOT NULL
  111282.     SET @SSQLUsl = @SSQLUsl + ' AND F.Mesec_Fra='+Cast(@Mesec as char(2))
  111283. IF @Sifra_PodrSluzba IS NOT NULL
  111284.     SET @SSQLUsl = @SSQLUsl + ' AND F.Sifra_PodrSluzba_Fakt='''+@Sifra_PodrSluzba+''' '
  111285.  
  111286. CREATE TABLE #TmpRec
  111287. (Godina_Fra    smallint,
  111288.  Faktura_Br    char(6),
  111289.  BrRecepti    int
  111290. )
  111291.  
  111292. SET @SSQL = 'SELECT R.Godina_Fra, R.Faktura_Br, COUNT(R.Sifra_Art) FROM Recepti R 
  111293. INNER JOIN Faktura F ON R.Godina_Fra=F.Godina_Fra AND R.Faktura_Br=F.Faktura_Br
  111294. WHERE 1=1 '+@SSQLUsl + ' GROUP BY R.Godina_Fra, R.Faktura_Br'
  111295. INSERT INTO #TmpRec EXEC(@SSQL)
  111296.  
  111297. SET @SSQL= 'SELECT F.*, P.ImePodrSluzba, R.BrRecepti, 
  111298.         case when F.SpecLek = ''D'' then ''1'' else ''0'' end Specifika,
  111299.     SUM(S.NabVr_BezDDV) Iznos_Tender, SUM(S.Iznos_Marza) Iznos_Marza, SUM(S.Osnovica_DDV) Osnov_DDV, 
  111300.     SUM(S.Iznos_DDV) Iznos_Na_DDV, SUM(S.Vk_Iznos) Iznos_So_DDV, SUM(S.Vk_PresmParticip) Iznos_Partic, 
  111301.         SUM(S.Vk_ZaNaplata) Vk_ZaNaplata,
  111302.     SUM(S.Vk_Partic) Napl_Partic
  111303.     FROM Specifikacii S INNER JOIN Faktura F ON S.Godina_Fra=F.Godina_Fra AND S.Faktura_Br=F.Faktura_Br
  111304.     INNER JOIN PodracniSluzbi P ON F.Sifra_PodrSluzba_Fakt=P.Sifra_PodrSluzba 
  111305.     INNER JOIN #TmpRec R ON R.Godina_Fra=F.Godina_Fra AND R.Faktura_Br=F.Faktura_Br WHERE 1=1 '
  111306. SET @SSQL = @SSQL + @SSQLUsl + ' GROUP BY F.Godina_Fra, F.Faktura_Br, F.Mesec_Fra, F.Datum_Fra, F.Sifra_PodrSluzba_Fakt, P.ImePodrSluzba, R.BrRecepti,
  111307.                                           F.SpecLek
  111308.  ORDER BY F.Godina_Fra, Cast(F.Faktura_Br as int)'
  111309. --print @ssql
  111310.  
  111311. EXEC (@SSQL)
  111312.  
  111313.     
  111314.  
  111315.  
  111316.  
  111317.  
  111318.  
  111319.  
  111320.  
  111321.  
  111322. Go
  111323. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_fiizvestaj]'))
  111324. drop procedure [dbo].[sp_pregl_fiizvestaj]
  111325.  
  111326. Go
  111327.  
  111328.  
  111329. CREATE   PROCEDURE sp_Pregl_FiIzvestaj
  111330.     @FiID    smallint = Null
  111331. AS
  111332.     Declare @SSQL as varchar(2000)
  111333.     Set @SSQL = 'Select FT.FiId, FT.Ime, FT.Ime2, FT.Kto_Anal_Raspr, FT.Kto_Anal,
  111334.         FS.RbrFi, FS.Opis, FS.Sifra_Oe, FS.Sifra_GrOrg, FS.OdKade, FS.Znak,
  111335.         FK.Kto_Anal Kto_AnalFK, FK.Egzaktno_Kto, FK.TekPocVk, FK.D_P_SD_SP, FK.Raspredelba, FK.Znak ZnakFK, 
  111336.         FZ.OdRbrFi, FZ.Znak ZnakFZ
  111337.     From FiTabela FT
  111338.     Left Outer Join FiStavki FS On FS.FiID=FT.FiID
  111339.     Left Outer Join FiKonta FK On FS.FiID = FK.FiID and Fk.RbrFi=FS.RbrFi and FS.OdKade = ''K''
  111340.     Left Outer Join FiZbir FZ On FS.FiID = FZ.FiID and FZ.RbrFi=FS.RbrFi and FS.OdKade = ''Z'' '
  111341.     If @FiId Is Not Null
  111342.          Set @SSQL = @SSQL + ' Where FT.FiID= ' + cast(@FiID as varchar(5)) 
  111343.     Set @SSQL = @SSQL + ' ORDER BY FS.FiID, FS.RbrFi '
  111344.     Exec (@SSQL)
  111345.  
  111346.  
  111347.  
  111348.  
  111349. Go
  111350. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_fiskprom]'))
  111351. drop procedure [dbo].[sp_pregl_fiskprom]
  111352.  
  111353. Go
  111354.  
  111355. CREATE   PROCEDURE sp_Pregl_FiskProm
  111356.     @Sifra_Oe    smallint,
  111357.     @Datum_Od    smalldatetime,
  111358.     @Datum_Do    smalldatetime,
  111359.     @KoiOE    varchar(300) = NULL,
  111360.     @PoFiscAnal    char(1) = 'F'        -- F - po Fiskalen promet     A - po Analitika      Z - Po fiskalen promet + promet po Analitika
  111361. AS
  111362.     Declare @SSQL as Varchar(4000)
  111363.     If @PoFiscAnal = 'A'
  111364.     Begin
  111365.         Set @SSQL = ' Select S.Sifra_Oe, O.ImeOrg, S.Datum_Dok, 
  111366.                 Sum(S.Kolic*(Case When S.DanDokCena=''N'' Then S.DokCena * (1+Posn/100) Else S.DokCena End) * (1-S.Uces/100)) as Tar1,
  111367.                 0 as Tar2, 0 as Tar0, 
  111368.                 0 as Gotovina, 0 as Cek, 0 as Kredit, 
  111369.                 Null as Posn1, Null as Posn2, null as BrKasa, Null PromPoAnal
  111370.                 From Stavr S
  111371.                 Inner Join Orged O On O.Sifra_Oe = S.Sifra_Oe
  111372.                 Where S.Sifra_Dok in (100,101) '
  111373.         If @Sifra_Oe Is Not Null
  111374.             Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  111375.         If @KoiOe Is Not Null
  111376.             Set @SSQL = @SSQL + ' And S.Sifra_Oe IN (' + @KoiOe + ') '
  111377.         If @Datum_Od Is Not Null
  111378.             Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(35)) + ''' '
  111379.         If @Datum_Do Is Not Null
  111380.             Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(35)) + ''' '
  111381.         Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, O.ImeOrg, S.Datum_Dok '
  111382.     End
  111383.     Else If @PoFiscAnal = 'Z'
  111384.     Begin
  111385.         Create Table #PromAnalitika
  111386.         (
  111387.          Sifra_Oe    smallint,
  111388.          Datum_Dok    smalldatetime,
  111389.          Promet        decimal(18,6)
  111390.         )
  111391.         Set @SSQL = ' Select S.Sifra_Oe, S.Datum_Dok, 
  111392.                 Sum(S.Kolic*(Case When S.DanDokCena=''N'' Then S.DokCena * (1+Posn/100) Else S.DokCena End) * (1-S.Uces/100)) as Promet
  111393.                 From Stavr S
  111394.                 Inner Join Orged O On O.Sifra_Oe = S.Sifra_Oe
  111395.                 Where S.Sifra_Dok in (100,101) '
  111396.         If @Sifra_Oe Is Not Null
  111397.             Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  111398.         If @KoiOe Is Not Null
  111399.             Set @SSQL = @SSQL + ' And S.Sifra_Oe IN (' + @KoiOe + ') '
  111400.         If @Datum_Od Is Not Null
  111401.             Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(35)) + ''' '
  111402.         If @Datum_Do Is Not Null
  111403.             Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(35)) + ''' '
  111404.         Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Datum_Dok '
  111405.         Insert Into #PromAnalitika Exec(@SSQL)
  111406.         Set @SSQL = ' Select F.Sifra_Oe, O.ImeOrg, F.Datum_Dok, Sum(F.Tar1) Tar1, Sum(F.Tar2) Tar2, Sum(F.Tar0) Tar0, Sum(F.Gotovina) Gotovina, 
  111407.                     Sum(F.Cek) Cek, Sum(F.Kredit) Kredit, Null Posn1, Null Posn2, Null BrKasa, P.Promet PromPoAnal
  111408.                 From FiskProm F
  111409.                 Inner Join Orged O On O.Sifra_Oe = F.Sifra_Oe
  111410.                 Left Outer Join #PromAnalitika P On P.Sifra_Oe=F.Sifra_Oe And P.Datum_Dok=F.Datum_Dok
  111411.                 Where 1 = 1 '
  111412.         If @Sifra_Oe Is Not Null
  111413.             Set @SSQL = @SSQL + ' And F.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  111414.         If @KoiOe Is Not Null
  111415.             Set @SSQL = @SSQL + ' And F.Sifra_Oe IN (' + @KoiOe + ') '
  111416.         If @Datum_Od Is Not Null
  111417.             Set @SSQL = @SSQL + ' And F.Datum_Dok >= ''' + cast(@Datum_Od as varchar(35)) + ''' '
  111418.         If @Datum_Do Is Not Null
  111419.             Set @SSQL = @SSQL + ' And F.Datum_Dok <= ''' + cast(@Datum_Do as varchar(35)) + ''' '
  111420.         Set @SSQL = @SSQL + ' Group By F.Sifra_Oe, O.ImeOrg, F.Datum_Dok, P.Promet 
  111421.                       Order By F.Sifra_Oe, F.Datum_Dok'
  111422.     End
  111423.     Else  If @PoFiscAnal = 'F'
  111424.     Begin
  111425.         Set @SSQL = ' Select F.Sifra_Oe, O.ImeOrg, F.Datum_Dok, F.Tar1, F.Tar2, F.Tar0, F.Gotovina, F.Cek, F.Kredit, F.Posn1, F.Posn2, F.BrKasa, Null PromPoAnal,
  111426.                     Danok1, Danok2, Promet, Predadeno, POcetno, OstVoKasa, Dr_Izlezi
  111427.                 From FiskProm F
  111428.                 Inner Join Orged O On O.Sifra_Oe = F.Sifra_Oe
  111429.                 Where 1 = 1 '
  111430.         If @Sifra_Oe Is Not Null
  111431.             Set @SSQL = @SSQL + ' And F.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  111432.         If @KoiOe Is Not Null
  111433.             Set @SSQL = @SSQL + ' And F.Sifra_Oe IN (' + @KoiOe + ') '
  111434.         If @Datum_Od Is Not Null
  111435.             Set @SSQL = @SSQL + ' And F.Datum_Dok >= ''' + cast(@Datum_Od as varchar(35)) + ''' '
  111436.         If @Datum_Do Is Not Null
  111437.             Set @SSQL = @SSQL + ' And F.Datum_Dok <= ''' + cast(@Datum_Do as varchar(35)) + ''' '
  111438.     End
  111439.     Exec (@SSQL)
  111440.  
  111441.  
  111442.  
  111443. Go
  111444. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_ispeclok]'))
  111445. drop procedure [dbo].[sp_pregl_ispeclok]
  111446.  
  111447. Go
  111448. CREATE PROCEDURE sp_Pregl_IspecLok
  111449.     @Sifra_Oe    smallint, 
  111450.     @Sifra_Nar     smallint,
  111451.     @Broj_NarOd     int,
  111452.     @Broj_NarDo     int,
  111453.     @Datum_NarOd    smalldatetime,
  111454.     @Datum_NarDo    smalldatetime,
  111455.     @Sifra_Kup    char(6),
  111456.     @VlIzl        char(1),
  111457.     @Lokacija     char(10)
  111458. AS
  111459.     Declare @SSQL as varchar(4000)
  111460.     Set @SSQL = ' Select N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Sifra_Obj, N.Datum_Nar,
  111461.                  I.Lokacija, I.IspecNa, N.Datum_Vnes, N.Datum_Izm, Kup.ImeKup, KO.ImeObj, N.Ispecaten, N.IzmenetPoslePec
  111462.             From Naracki N
  111463.             Left Outer Join IspecLok I On I.Sifra_Oe=N.Sifra_Oe and N.Sifra_Nar=I.Sifra_Nar and N.Broj_Nar=I.Broj_Nar
  111464.             INNER JOIN TipNarac TN ON N.Sifra_Nar=TN.Sifra_Nar
  111465.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  111466.             Left Outer Join Kobjekti KO On KO.Sifra_Kup = N.Sifra_Kup And KO.Sifra_Obj=N.Sifra_Obj
  111467.             Where 1=1 '
  111468.     If @VlIzl = 'V'
  111469.         Set @SSQL = @SSQL + ' And TN.VlIzl = ''V'' '
  111470.     Else If @VlIzl = 'I'
  111471.         Set @SSQL = @SSQL + ' And TN.VlIzl = ''I'' '
  111472.     If @Sifra_Oe Is Not Null
  111473.         Set @SSQL = @SSQL + ' And N.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  111474.     If @Sifra_Nar Is Not Null
  111475.         Set @SSQL = @SSQL + ' And N.Sifra_Nar = ' + cast(@Sifra_Nar as varchar(10)) + ' '
  111476.     If @Broj_NarOd Is Not Null
  111477.         Set @SSQL = @SSQL + ' And N.Broj_Nar >= ' + cast(@Broj_NarOd as varchar(10)) + ' '
  111478.     If @Broj_NarDo Is Not Null
  111479.         Set @SSQL = @SSQL + ' And N.Broj_Nar <= ' + cast(@Broj_NarDo as varchar(10)) + ' '
  111480.     If @Datum_NarOd Is Not Null
  111481.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_NarOd as varchar(30)) + ''' '
  111482.     If @Datum_NarDo Is Not Null
  111483.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + cast(@Datum_NarDo as varchar(30)) + ''' '
  111484.     If @Sifra_Kup Is Not Null
  111485.         Set @SSQL = @SSQL + ' And N.Sifra_Kup = ' + @Sifra_Kup + ' '
  111486.     If @Lokacija Is Not Null
  111487.         Set @SSQL = @SSQL + ' And I.Lokacija = ''' + @Lokacija + ''' '
  111488. print @SSQL
  111489.     Exec(@SSQL)
  111490.  
  111491.  
  111492. Go
  111493. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_karakt]'))
  111494. drop procedure [dbo].[sp_pregl_karakt]
  111495.  
  111496. Go
  111497.  
  111498. create PROCEDURE sp_Pregl_Karakt
  111499.  
  111500. AS
  111501.  
  111502.     Select *
  111503.     From Karakterist 
  111504.     order by ImeKarakt
  111505.  
  111506.  
  111507.  
  111508. Go
  111509. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_kartkor_komint]'))
  111510. drop procedure [dbo].[sp_pregl_kartkor_komint]
  111511.  
  111512. Go
  111513. CREATE PROCEDURE sp_Pregl_KartKor_Komint
  111514.     @Sifra_Kup    char(6) = Null,
  111515.     @KoiKart    char(1) = 'S'    -- S - Site   D - Aktivni,   N - Neaktivni
  111516. AS
  111517.     Declare @SSQL as varchar(8000)
  111518.     Set @SSQL = ' Select K.Sifra_Kup, Kup.ImeKup, K.Sifra_TipKartKor, KK.ImeKartKor, Count(*) KolkuKart
  111519.             From KartKor K
  111520.             Inner Join Komint Kup On Kup.Sifra_Kup = K.Sifra_Kup
  111521.             Left Outer Join TipKartKor KK On KK.Sifra_TipKartKor=K.Sifra_TipKartKor
  111522.             Where 1=1 '
  111523.     If @Sifra_Kup Is Not Null
  111524.         Set @SSQL = @SSQL + ' And K.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  111525.     If @KoiKart = 'D'
  111526.         Set @SSQL = @SSQL + ' And (K.Aktiven <> ''N'' Or K.Aktiven Is Null) '
  111527.     Else If @KoiKart = 'N'
  111528.         Set @SSQL = @SSQL + ' And K.Aktiven = ''N'' '
  111529.     Set @SSQL = @SSQL + ' Group By K.Sifra_Kup, Kup.ImeKup, K.Sifra_TipKartKor, KK.ImeKartKor '
  111530.     Exec(@SSQL)
  111531.  
  111532.  
  111533. Go
  111534. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_kasov]'))
  111535. drop procedure [dbo].[sp_pregl_kasov]
  111536.  
  111537. Go
  111538.  
  111539.  
  111540.  
  111541.  
  111542.  
  111543.  
  111544. CREATE         PROCEDURE sp_Pregl_Kasov
  111545.     @Sifra_Nal    int,
  111546.     @TipBlag    char(3)=NULL,    --dod.11.10.07
  111547.     @Broj_Dok    int,
  111548.     @Broj_DokDo    int,    -- dod 01.08.06 za pecat. kasi od/do
  111549.     @P_I        char(1)  -- Kasa Primi ili Isplati  P ili I
  111550. AS
  111551. Declare @SSQL varchar(2000)
  111552. SET @SSQL='Select K.Broj_dok, K.Sifra_Nal, K.Broj_Nal, K.Dod_Datum, K.P_I, K.Kto_Anal, K.Dolzi, K.Pobaruva, K.Lice, K.SMesto,
  111553.            K.Opis, K.Opis2, K.Sifra_Kup, KUP.ImeKup, K.KojaVal,V.ImeVal, K.Kurs, K.Dev_Dolzi, K.Dev_Pobar, 
  111554.            K.Datum_Vnes, K.KasaGrupa, K.Sifra_Oe, N.ImeNac, K.TipBlag, K.Kto_Osnovica
  111555.     From KasStav K
  111556.     Left Outer Join Komint KUP On K.Sifra_Kup=KUP.Sifra_Kup
  111557.     Left Outer Join KrsLista V ON K.KojaVal=V.SImeVal
  111558.     LEFT OUTER JOIN NacPlak N ON K.Sifra_Nac=N.Sifra_Nac
  111559.     Where K.Sifra_Nal='+cast(@Sifra_Nal as varchar(5))+' and K.Broj_Dok>='+cast(@Broj_Dok as varchar(8))+
  111560.     ' and K.Broj_Dok<='+cast(@Broj_DokDo as varchar(8))+' and  K.P_I='''+@P_I+''' '
  111561. IF @TipBlag IS NOT NULL
  111562.     SET @SSQL=@SSQL+' AND TipBlag='''+@TipBlag+''' '
  111563. EXEC (@SSQL)
  111564.  
  111565.  
  111566.  
  111567.  
  111568. Go
  111569. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_katart_kratok]'))
  111570. drop procedure [dbo].[sp_pregl_katart_kratok]
  111571.  
  111572. Go
  111573.  
  111574. CREATE      PROCEDURE sp_Pregl_Katart_Kratok
  111575.     @SIFRA_ART Varchar(20)
  111576. AS
  111577.     SELECT [KATART].[IMEART],
  111578.            ISNULL([KATART].[EDMERA],'') AS Edmera,
  111579.            [KATART].[SIFRA_PODG],
  111580.            [PODGRUPI].[IME_PODG],
  111581.            [KATART].[SIFRA_TAR],
  111582.            [TARIFI].[PROCOSN], 
  111583.            ISNULL([KATART].[LOKACIJA],'') AS Lokacija,
  111584.            ISNULL([KATART].[KTO],'') AS Kto,
  111585.            ISNULL([KOMINT].[IMEKUP],'') AS ImeKup,
  111586.            ISNULL([KATART].[NOM],'') AS Nom,
  111587.            ISNULL([KATART].[SMATUSL],'') AS SMatUsl,
  111588.            ISNULL([KATART].[PROC_MARZA],0.00) AS Proc_Marza,
  111589.            ISNULL([KATART].[SMin_Sost],0.00) As SMin,
  111590.            ISNULL([KATART].[SMax_Sost],0.00) As SMax,
  111591.            ISNULL([KATART].[SOpt_Sost],0.00) As SOpt,
  111592.            ISNULL([KATART].[PopusMar],'') AS PopusMark, 
  111593.            [KATART].[CARBROJ],  [CBROEVI].[IME], [CBROEVI].[STAPKA],      
  111594.                [KATART].[IMABROEVI], [KATART].[IMAKOMERC], [KATART].[TEZINA], [KATART].[BTEZINA], [KATART].[RokKontrDali]
  111595.     FROM   [KATART]
  111596.     LEFT OUTER JOIN [PODGRUPI] ON [KATART].[SIFRA_PODG]=[PODGRUPI].[SIFRA_PODG]
  111597.     LEFT OUTER JOIN [KOMINT] ON [KATART].[KTO]=[KOMINT].[SIFRA_KUP]
  111598.     LEFT OUTER JOIN [CBROEVI] ON [CBROEVI].[CARBROJ] = [KATART].[Carbroj]
  111599.     INNER JOIN [TARIFI] ON [KATART].[SIFRA_TAR] = [TARIFI].[SIFRA_TAR]
  111600.     WHERE  [KATART].[SIFRA_ART] = @SIFRA_ART
  111601. RETURN @@ERROR
  111602.  
  111603.  
  111604.  
  111605.  
  111606. Go
  111607. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_komintenti]'))
  111608. drop procedure [dbo].[sp_pregl_komintenti]
  111609.  
  111610. Go
  111611.  
  111612. CREATE          PROCEDURE sp_Pregl_Komintenti
  111613.     @Komint_Od Varchar(10),
  111614.     @Komint_Do Varchar(10),
  111615.     @Podelba1 Smallint= Null,
  111616.     @Podelba2 Smallint= Null,
  111617.     @Podelba3 Smallint = Null,
  111618.     @Podelba4 Smallint = Null,
  111619.     @Podelba5 Smallint = Null,
  111620.     @Podelba6 Smallint = Null,
  111621.     @Podelba7 Smallint = Null,
  111622.     @KFPod1 char(1) = Null,
  111623.     @KFPod2 char(1) = Null,
  111624.     @KFPod3 char(1) = Null,
  111625.     @KFPod4 char(1) = Null,
  111626.     @KFPod5 char(1) = Null,
  111627.     @KFPod6 char(1) = Null,
  111628.     @KFPod7 char(1) = Null,
  111629.     @Sifra_Tip Smallint = Null,
  111630.     @Grad Smallint= Null,
  111631.     @Podred Char(1) = 'S',
  111632.     @Patnik    Smallint = Null,
  111633.     @Patnik2    Smallint = Null,
  111634.     @TipKup    varchar(11)=Null,
  111635.     @KojaCena    char(1) = Null,
  111636.     @Sifra_reg    smallint = Null,
  111637.     @Sifra_Nivo    Char(2) = Null,
  111638.     @Aktiven    Char(1) = Null,
  111639.     @MozeIsporaka    Char(1) = Null,
  111640.     @Patnik_OdKomintPat char(1)='N', --ova ne go pustaj na D ne e dopraeno
  111641.     @Sifra_VPJ    smallint = Null,
  111642.     @DatumIzm_Od    smalldatetime = NULL,
  111643.     @DatumIzm_Do    smalldatetime = NULL
  111644. AS
  111645.     Declare @SSQL Varchar(4000)
  111646.     Declare @SSQLUsl Varchar(4000)
  111647.     Set @SSQLUsl = ' '
  111648.     Set @SSQL = ' Select Kup.Sifra_Kup, Kup.ImeKup, Kup.ImeKup2, Kup.Adresa, Kup.Adresa2, Kup.SMesto, Kup.Posta, Kup.Zemja, Kup.ImaObj, Kup.IspAdresa, Kup.IspAdresa2, 
  111649.             Kup.IspMesto, Kup.IspPosta, Kup.IspZemja, Kup.Telefon, Kup.Tel1, Kup.Tel2, Kup.TelMobil, Kup.Fax, Kup.Telex, Kup.EMail, Kup.AdrWeb, Kup.Sopstvenik, Kup.LK, 
  111650.             Kup.Sopst_Mat, Kup.Danocen, Kup.Ziro, Kup.Ziro2, Kup.Banka, Kup.Banka2, Kup.Sifra_Ban, Kup.Sifra_Ban2, Kup.BRIZJAVA, Kup.KONTAKT, Kup.Prenesen, Kup.ForsUces, Kup.Limit_Dolzi, Kup.Prioritet, 
  111651.             Kup.Sifra_Pat, P.ImePat, 
  111652.             Kup.Sifra_Grad, G.ImeGrad, 
  111653.             Kup.TipKup, TK.ImeTipKup, 
  111654.             Kup.Sifra_reg, R.ImeRegion, 
  111655.             Kup.Sifra_Nivo, N.ImeNivo, 
  111656.             Kup.Sifra_Tip, T.ImeTip, 
  111657.             Kup.KDrugo1, D1.Ime_1K, 
  111658.             Kup.KDrugo2, D2.Ime_2K, 
  111659.             Kup.KDrugo3, D3.Ime_3K, 
  111660.             Kup.KDrugo4, D4.Ime_4K, 
  111661.             Kup.KDrugo5, D5.Ime_5K, 
  111662.             Kup.Uces, Kup.KojaSmetka, Kup.Rok_Dosp, Kup.Kasa, Kup.KojaCena, Kup.BrPoseti, Kup.DirDistr, Kup.ZemaOd, Kup.Zabeleska, Kup.Aktiven, Kup.BrProdMesta, 
  111663.             Kup.BrAktProdMesta, Kup.DodadenNa, Kup.DodadenOd, Kup.IzmenetNa, Kup.IzmenetOd, Kup.ImaBanka, Kup.Alt_ImeKup, Kup.Alt_Adresa, Kup.DogovorBroj, 
  111664.             Kup.MozeIsporaka, Kup.Garancija, Kup.Propagiraj, Kup.MatBr, '
  111665.     IF @Patnik_OdKomintPat = 'D'
  111666.         Set @SSQL = @SSQL + ' Null Sifra_Pat2, '''' ImePat2, '
  111667.     ELSE
  111668.         Set @SSQL = @SSQL + 'Kup.Sifra_Pat2, P2.ImePat as ImePat2, '
  111669.     Set @SSQL = @SSQL + 'Kup.Sopst_Adr, Kup.Sopst_Mesto, '''' as Prikazi, Kup.m2
  111670.             From Komint Kup '
  111671.     IF @Patnik_OdKomintPat = 'D'
  111672.     Set @SSQL = @SSQL + 'Left Outer Join KomintPat KP On KP.Sifra_Kup=Kup.Sifra_Kup AND KP.Sifra_Obj IS NULL
  111673.             Left Outer Join Patnici P On P.Sifra_Pat=KP.Sifra_Pat '
  111674.     ELSE
  111675.     Set @SSQL = @SSQL + 'Left Outer Join Patnici P On P.Sifra_Pat=Kup.Sifra_Pat
  111676.             Left Outer Join Patnici P2 On P2.Sifra_Pat=Kup.Sifra_Pat2 '
  111677.     Set @SSQL = @SSQL + 'Left Outer Join Grad G On G.Sifra_Grad=Kup.Sifra_Grad
  111678.             Left Outer Join GRegion R On R.Sifra_Reg=Kup.Sifra_reg
  111679.             Left Outer Join GTipKup TK On TK.TipKup=Kup.TipKup
  111680.             Left Outer Join Nivo N  On N.Sifra_Nivo=Kup.Sifra_Nivo
  111681.             Left Outer Join TipKomint T On T.Sifra_Tip=Kup.Sifra_Tip
  111682.             Left Outer Join KDrugo1 D1 On D1.Sifra_1K=Kup.KDrugo1
  111683.             Left Outer Join KDrugo2 D2 On D2.Sifra_2K=Kup.KDrugo2
  111684.             Left Outer Join KDrugo3 D3 On D3.Sifra_3K=Kup.KDrugo3
  111685.             Left Outer Join KDrugo4 D4 On D4.Sifra_4K=Kup.KDrugo4
  111686.             Left Outer Join KDrugo5 D5 On D5.Sifra_5K=Kup.KDrugo5 
  111687.             Where 1=1 '
  111688.     If @Komint_Od Is Not Null
  111689.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Kup>=''' + @Komint_Od + ''' '
  111690.     If @Komint_Do Is Not Null
  111691.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Kup<=''' + @Komint_Do + ''' '
  111692.     If @Podelba1 Is Not NULL
  111693.         If @KFPod1 = 'D'
  111694.             Set @SSQLUsl = @SSQLUsl + 'And (Kup.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or Kup.KDrugo1 Is Null) '
  111695.         Else
  111696.             Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  111697.     If @Podelba2 Is Not NULL
  111698.         If @KFPod2 = 'D'
  111699.             Set @SSQLUsl = @SSQLUsl + 'And (Kup.KDrugo2<>' + Cast(@Podelba2 As Varchar(10)) + ' Or Kup.KDrugo2 Is Null) '
  111700.         Else
  111701.             Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  111702.     If @Podelba3 Is Not NULL
  111703.         If @KFPod3 = 'D'
  111704.             Set @SSQLUsl = @SSQLUsl + 'And (Kup.KDrugo3<>' + Cast(@Podelba3 As Varchar(10)) + ' Or Kup.KDrugo3 Is Null) '
  111705.         Else
  111706.             Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  111707.     If @Podelba4 Is Not NULL
  111708.         If @KFPod4 = 'D'
  111709.             Set @SSQLUsl = @SSQLUsl + 'And (Kup.KDrugo4<>' + Cast(@Podelba4 As Varchar(10)) + ' Or Kup.KDrugo4 Is Null) '
  111710.         Else
  111711.             Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  111712.     If @Podelba5 Is Not NULL
  111713.         If @KFPod5 = 'D'
  111714.             Set @SSQLUsl = @SSQLUsl + 'And (Kup.KDrugo5<>' + Cast(@Podelba5 As Varchar(10)) + ' Or Kup.KDrugo5 Is Null) '
  111715.         Else
  111716.             Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  111717.     If @Podelba6 Is Not NULL
  111718.         If @KFPod6 = 'D'
  111719.             Set @SSQLUsl = @SSQLUsl + 'And (Kup.KDrugo6<>' + Cast(@Podelba6 As Varchar(10)) + ' Or Kup.KDrugo6 Is Null) '
  111720.         Else
  111721.             Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo6=' + Cast(@Podelba6 As Varchar(10)) + ' '
  111722.     If @Podelba7 Is Not NULL
  111723.         If @KFPod7 = 'D'
  111724.             Set @SSQLUsl = @SSQLUsl + 'And (Kup.KDrugo7<>' + Cast(@Podelba7 As Varchar(10)) + ' Or Kup.KDrugo7 Is Null) '
  111725.         Else
  111726.             Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo7=' + Cast(@Podelba7 As Varchar(10)) + ' '
  111727. /*
  111728.     If @Podelba1 Is Not Null
  111729.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  111730.     If @Podelba2 Is Not Null
  111731.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  111732.     If @Podelba3 Is Not Null
  111733.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  111734.     If @Podelba4 Is Not Null
  111735.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  111736.     If @Podelba5 Is Not Null
  111737.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  111738. */
  111739.     If @Sifra_Tip Is Not Null
  111740.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  111741.     If @Sifra_VPJ Is Not Null
  111742.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_VPJ=' + Cast(@Sifra_VPJ As Varchar(10)) + ' '
  111743.     If @Grad Is Not Null
  111744.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Grad=' + Cast(@Grad As Varchar(10)) + ' '
  111745.     If @Sifra_Reg Is Not Null
  111746.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Reg=' + Cast(@Sifra_Reg As Varchar(10)) + ' '
  111747.     If @Sifra_Nivo Is Not Null
  111748.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  111749.     If @MozeIsporaka = 'N'
  111750.         Set @SSQLUsl = @SSQLUsl + 'And Kup.MozeIsporaka = ''N'' '
  111751.     Else If @MozeIsporaka = 'D'
  111752.         Set @SSQLUsl = @SSQLUsl + 'And (Kup.MozeIsporaka <> ''N'' or Kup.MozeIsporaka Is Null) '
  111753.     If @Sifra_Nivo Is Not Null
  111754.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  111755.     IF @Patnik_OdKomintPat = 'D'
  111756.         If @Patnik Is Not Null
  111757.             Set @SSQLUsl = @SSQLUsl + 'And KP.Sifra_Pat=' + Cast(@Patnik As Varchar(10)) + ' '
  111758.     ELSE
  111759.     Begin
  111760.         If @Patnik Is Not Null
  111761.             Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Pat=' + Cast(@Patnik As Varchar(10)) + ' '
  111762.         If @Patnik2 Is Not Null
  111763.             Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Pat2=' + Cast(@Patnik2 As Varchar(10)) + ' '
  111764.     End
  111765.     If @TipKup Is Not Null
  111766.         Set @SSQLUsl = @SSQLUsl + 'And Kup.TipKup=''' + @TipKup + ''' '
  111767.     If @KojaCena Is Not Null
  111768.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KojaCena =''' + @KojaCena + ''' '
  111769.     If @Aktiven = 'N'    
  111770.         Set @SSQLUsl = @SSQLUsl + 'And (Kup.Aktiven = ''N'') '
  111771.     Else If @Aktiven = 'D'    
  111772.         Set @SSQLUsl = @SSQLUsl + 'And (Kup.Aktiven <> ''N'' or Kup.Aktiven Is Null) '
  111773.     IF @DatumIzm_Od IS NOT NULL  
  111774.         Set @SSQLUsl = @SSQLUsl + ' AND (Kup.DodadenNa>=''' +cast(@DatumIzm_Od as varchar(35))+''' OR Kup.IzmenetNa>=''' +cast(@DatumIzm_Od as varchar(35))+ ''' )'
  111775.     IF @DatumIzm_Do IS NOT NULL
  111776.         Set @SSQLUsl = @SSQLUsl + ' AND (Kup.DodadenNa<=''' +cast(@DatumIzm_Do as varchar(35))+''' OR Kup.IzmenetNa<=''' +cast(@DatumIzm_Do as varchar(35))+ ''' )'
  111777.     If @Podred Is Null Or @Podred='S'
  111778.         Set @SSQLUsl = @SSQLUsl + 'Order By Kup.Sifra_Kup '
  111779.     Else If @Podred='I'
  111780.         Set @SSQLUsl = @SSQLUsl + 'Order By Kup.ImeKup '
  111781.     Else If @Podred='G'
  111782.         Set @SSQLUsl = @SSQLUsl + 'Order By Kup.Sifra_Grad '
  111783.     Exec(@SSQL+@SSQLUsl)
  111784.  
  111785.  
  111786.  
  111787. Go
  111788. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_log]'))
  111789. drop procedure [dbo].[sp_pregl_log]
  111790.  
  111791. Go
  111792.  
  111793.  
  111794. CREATE    PROCEDURE sp_Pregl_Log
  111795.     @ImeLog    varchar(20),
  111796.     @Koga        datetime,
  111797.     @DoKoga        datetime = NULL
  111798. AS
  111799.     Declare @DoKoga1 datetime
  111800.     IF @DoKoga IS NULL
  111801.         Set @DoKoga1 = DateADD(second, 1, @Koga)
  111802.     Else
  111803.         Set @DoKoga1 = @DoKoga
  111804.     SELECT *
  111805.     FROM OpstLog 
  111806.     WHERE ImeLog = @ImeLog AND Koga >= @Koga AND Koga <= @DoKoga1
  111807.     ORDER BY Koga, LogID
  111808.  
  111809.  
  111810.  
  111811. Go
  111812. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_log_detal]'))
  111813. drop procedure [dbo].[sp_pregl_log_detal]
  111814.  
  111815. Go
  111816.  
  111817.  
  111818. CREATE    PROCEDURE sp_Pregl_Log_Detal
  111819.     @ImeLog    varchar(20) = NULL,
  111820.     @Koga    Smalldatetime = NULL,
  111821.     @DoKoga    Smalldatetime = NULL
  111822. AS
  111823.     Declare @SSQL Varchar(4000)
  111824.     Set @SSQL = 'SELECT * FROM OpstLog WHERE 1=1 '
  111825.     If @ImeLog IS NOT NULL
  111826.         Set @SSQL = @SSQL + 'AND ImeLog = ''' + @ImeLog + ''' '
  111827.     If @Koga IS NOT NULL
  111828.         Set @SSQL = @SSQL + ' AND Koga >= ''' + Cast(@Koga as varchar(35)) + ''' '
  111829.     If @DoKoga IS NOT NULL
  111830.         Set @SSQL = @SSQL + ' AND Koga < ''' + Cast(DateAdd(Day, 1, @DoKoga)  as varchar(35)) + ''' '
  111831.     Set @SSQL = @SSQL + ' ORDER BY Koga'
  111832. EXEC (@SSQL)
  111833.  
  111834.  
  111835.  
  111836. Go
  111837. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_nabceni]'))
  111838. drop procedure [dbo].[sp_pregl_nabceni]
  111839.  
  111840. Go
  111841. CREATE       PROCEDURE sp_Pregl_NabCeni
  111842.     @Tip_Podr char(1) = Null,
  111843.     @Sifra_Od varchar(12) = Null,
  111844.     @Sifra_Do varchar(12) = Null,
  111845.     @Kto char(6) = Null,
  111846.     @Sifra_Gr char(3) = Null,
  111847.     @Sifra_Podg char(6) = Null,
  111848.     @Lokacija varchar(10) = Null,
  111849.     @Sifra_Tar char(3) = Null,
  111850.     @Sifra_Brand Smallint = Null,
  111851.     @Sifra_ZBrand Smallint = Null,
  111852.     @Datum_Do Smalldatetime,
  111853.     @IskluciKup   varchar(200) = '660663, 660660, 021000',
  111854.     @GrOrgEdZaNabCeni Char(6) = Null,
  111855. --    @OrgEdZaNabCeni smallint = 100,    -- GK ke go fiksiram za OE od 500 do 600 za Tinex Magi        
  111856.     @TipDokPriem    smallint = 1                    --1
  111857. AS
  111858.     Declare @SSQL   Varchar(8000)
  111859.     Set @SSQL = 'SELECT K.Sifra_Art, K.ImeArt, K.EdMera, K.Nabavna FROM KatArt K '
  111860.     If @Sifra_Gr Is Not NULL
  111861.         Set @SSQL=@SSQL+'INNER JOIN Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  111862.     If @Sifra_ZBrand Is Not Null
  111863.         Set @SSQL=@SSQL+'INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  111864.     Set @SSQL=@SSQL+'WHERE K.SMatUsl = ''M'' '
  111865.     If @Sifra_Od IS NOT NULL 
  111866.         Set @SSQL = @SSQL + 'AND K.Sifra_Art>=' + @Sifra_Od + ' '
  111867.     If @Sifra_Do IS NOT NULL 
  111868.         Set @SSQL = @SSQL + 'AND K.Sifra_Art<=' + @Sifra_Do + ' '
  111869.     If @Sifra_Brand Is Not Null
  111870.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  111871.     If @Sifra_ZBrand Is Not Null
  111872.         Set @SSQL=@SSQL+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  111873.     If @Kto Is Not Null
  111874.         Set @SSQL=@SSQL+'AND (K.Kto='''+@Kto+''') '
  111875.     If @Sifra_Gr Is Not Null
  111876.         Set @SSQL=@SSQL+'AND (P.Sifra_Gr='''+@Sifra_Gr+''') '
  111877.     If @Sifra_Podg Is Not Null
  111878.         Set @SSQL=@SSQL+'AND (K.Sifra_Podg='''+@Sifra_Podg+''') '
  111879.     If @Lokacija Is Not Null
  111880.         Set @SSQL=@SSQL+'AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  111881.     If @Sifra_Tar Is Not Null
  111882.         Set @SSQL=@SSQL+'AND (K.Sifra_Tar='''+@Sifra_Tar+''') '
  111883.     CREATE TABLE #PrometArt
  111884.     ( Sifra_Art  varchar(20),
  111885.       ImeArt  varchar(40),
  111886.       EdMera  varchar(5),
  111887.       Cena Decimal(18,4),
  111888.       ProdCena Decimal(18,4),
  111889.       Nabavna  Decimal(18,4)    
  111890.     )
  111891.     INSERT INTO #PrometArt (Sifra_Art, ImeArt, EdMera, Nabavna)  EXEC(@SSQL)
  111892.     CREATE TABLE #CeniArtN
  111893.     ( Sifra_Art  varchar(20),    
  111894.       Datum smalldatetime,
  111895.       DokID  int )
  111896.     CREATE TABLE #CeniDat
  111897.     ( Sifra_Art  varchar(12),    
  111898.       Datum smalldatetime )
  111899.     Set @SSQL = 'SELECT S.Sifra_art, max(S.Datum_Dok) Datum  FROM Stavr S 
  111900.             INNER JOIN #PrometArt P ON P.Sifra_Art = S.Sifra_Art '
  111901.     If @IskluciKup Is NOT NULL 
  111902.         Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  111903.     Set @SSQL = @SSQL + ' WHERE S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + 
  111904.         ''' AND S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '') 
  111905.         AND S.Sifra_Dok = '+Cast(@TipDokPriem as varchar(3)) + ' And  S.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @GrOrgEdZaNabCeni + ''') ' -- -- + Cast(@OrgEdZaNabCeni as varchar(4)) +
  111906.     If @IskluciKup Is NOT NULL 
  111907.         Set @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' + @IskluciKup + ') '
  111908.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art '
  111909.     INSERT INTO #CeniDat EXEC (@SSQL)
  111910.     Set @SSQL = 'SELECT S.Sifra_art, S.Datum_Dok, max(S.DokID) DokID FROM Stavr S 
  111911.             INNER JOIN #CeniDat C ON S.Sifra_Art = C.Sifra_Art AND S.Datum_Dok = C.Datum '
  111912.     If @IskluciKup Is NOT NULL 
  111913.         Set @SSQL = @SSQL + ' INNER JOIN Dokr D ON S.DokrID = D.DokrID '
  111914.     Set @SSQL = @SSQL + ' WHERE S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '') 
  111915.             AND S.Sifra_Dok = '+Cast(@TipDokPriem as varchar(3)) + ' And  S.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @GrOrgEdZaNabCeni + ''') '
  111916.     If @IskluciKup Is NOT NULL 
  111917.         Set @SSQL = @SSQL + ' AND D.Sifra_Kup NOT IN (' + @IskluciKup + ') '
  111918.     Set @SSQL = @SSQL + ' GROUP BY S.Sifra_Art, S.Datum_Dok '
  111919.     INSERT INTO #CeniArtN EXEC (@SSQL)
  111920.     UPDATE #PrometArt
  111921.     SET    Cena = dbo.fn_VratiVredIzl(1, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa, 'D') 
  111922.              FROM #CeniArtN C, Stavr S, Dokr D
  111923.     WHERE #PrometArt.Sifra_Art = C.Sifra_Art AND S.DokID = C.DokID AND S.DokrId = D.DokrID
  111924.     UPDATE #PrometArt
  111925.     SET Cena = S.Cena
  111926.         FROM StariNabavniC S
  111927.     WHERE #PrometArt.Sifra_Art = S.Sifra_Art AND (#PrometArt.Cena = 0 or #PrometArt.Cena IS NULL)
  111928.     UPDATE #PrometArt
  111929.     SET ProdCena = S.Cena 
  111930.         FROM SoArt S
  111931.     WHERE #PrometArt.Sifra_Art = S.Sifra_Art AND S.Sifra_OE In  (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = @GrOrgEdZaNabCeni) -- ovde moze da ima poveke ceni vo soart
  111932.                                                                        -- po pravilo ako odat na vnesuvanje na ceni
  111933.                                                                        -- za grupi org.ed. treba da se isti.
  111934.     Set @SSQL = 'SELECT * FROM #PrometArt WHERE CENA > 0 '
  111935.     If @Tip_Podr='S'
  111936.         Set @SSQL=@SSQL+'ORDER BY Sifra_Art'
  111937.     Else If @Tip_Podr='A'
  111938.         Set @SSQL=@SSQL+'ORDER BY ImeArt'
  111939.     EXEC(@SSQL)
  111940.  
  111941.  
  111942. Go
  111943. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_nalog_datum]'))
  111944. drop procedure [dbo].[sp_pregl_nalog_datum]
  111945.  
  111946. Go
  111947.  
  111948. CREATE         PROCEDURE sp_Pregl_Nalog_Datum
  111949.     @Sifra_Nal        Smallint,
  111950.     @Datum_Nalog_Od     smalldatetime,
  111951.     @Datum_Nalog_Do     smalldatetime,
  111952.     @Sifra_Oe        smallint,
  111953.     @Koi_Kta        varchar(300) = Null,
  111954.     @KoiOE        varchar(300) = Null,
  111955.     @SoGrOrg        char(1) = 'N'
  111956. AS
  111957.     Declare @SSQL varchar(8000)
  111958.     Set @SSQL = 'SELECT S.Sifra_nal, S.Broj_Nal, S.Datum_Nal, S.Datum_dok, dbo.fn_RbrSort(S.RbrNalog, V.RbrNalog) RbrNalog, 
  111959.         S.Sifra_OE, S.Kto_Anal, A.ImeAnal, A.DaliKupuv, S.Opis, S.Dolzi SDolzi, S.Pobaruva SPobar, 
  111960.         S.Dev_Dolzi SDolDev, S.Dev_Pobaruva SPobDev, V.Dev_Dolzi FDolDev, V.Dev_Pobaruva FPobDev, S.KojaVal,
  111961.         F.Sifra_kup, K.ImeKup, F.Rok, F.BrojDok, V.Dolzi FDolzi, V.Pobaruva FPobar, F.Sifra_Dok, F.Broj_Dok,
  111962.         F.Datum_Dok FDatum, F.Opis FOpis, KL.ImeVal, S.Opis2, D.Identif_Br, D.Sifra_Dok DSifra_Dok, 
  111963.         D.Broj_Dok DBroj_Dok, V.DokrID, V.AnID, D.Sifra_Oe DSifra_Oe, D.Datum_Dok DDatum, D.Sifra_Prim, 
  111964.         (Case When Substring(F.Opis,1,6) In (''kompen'', ''b.izvo'', ''cesija'') Then Substring(F.Opis,1,6)  
  111965.                   When Substring(S.Opis,1,6) In (''kompen'', ''b.izvo'', ''cesija'') Then Substring(S.Opis,1,6)  
  111966.                   When Substring(S.Opis2,1,6) In (''kompen'', ''b.izvo'', ''cesija'') Then Substring(S.Opis2,1,6) 
  111967.         Else ''Drugo'' End) OpisGroup, '
  111968.     If @SoGrOrg = 'D'
  111969.         Set @SSQL = @SSQL + ' SG.Sif_GrOrg, GO.Ime_GrOrg '
  111970.     Else
  111971.         Set @SSQL = @SSQL + ' Null Sif_GrOrg, Null Ime_GrOrg '
  111972.     Set @SSQL = @SSQL + ' FROM GStav S
  111973.     INNER JOIN Anal A ON S.Kto_Anal = A.Kto_Anal
  111974.         LEFT OUTER JOIN KrsLista KL ON S.KojaVal = KL.SImeVal
  111975.         LEFT OUTER JOIN FAvtVrski V ON S.GStID = V.GStID
  111976.     LEFT OUTER JOIN AnFinDok F ON V.AnID = F.AnID
  111977.     LEFT OUTER JOIN Dokr D ON D.DokrID = V.DokrID
  111978.     LEFT OUTER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup '
  111979.     If @SoGrOrg = 'D'
  111980.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN SGrOrg SG On SG.Sifra_Oe=S.Sifra_Oe
  111981.                       LEFT OUTER JOIN GrOrg GO On GO.Sif_GrOrg=SG.Sif_GrOrg '
  111982.     Set @SSQL = @SSQL + ' WHERE S.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(4)) +
  111983.                 ' AND S.Datum_Nal >= ''' + cast(@Datum_Nalog_Od as varchar(30)) + ''' 
  111984.                   AND S.Datum_Nal <= ''' + cast(@Datum_Nalog_Do as varchar(30)) + ''' '
  111985.     If @Sifra_Oe Is Not Null
  111986.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  111987.     If @Koi_Kta Is Not Null
  111988.         Set @SSQL = @SSQL + ' And S.Kto_Anal In (' + @Koi_Kta + ') '
  111989.     If @KoiOE Is Not Null
  111990.         Set @SSQL = @SSQL + ' And SG.Sif_GrOrg In (' + @KoiOE + ') '
  111991.     SET @SSQL = @SSQL + ' ORDER BY S.Kto_Anal, S.Opis '
  111992. print @SSQL
  111993.     EXEC(@SSQL)
  111994.  
  111995.  
  111996.  
  111997. Go
  111998. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_nalog_datum_divizii]'))
  111999. drop procedure [dbo].[sp_pregl_nalog_datum_divizii]
  112000.  
  112001. Go
  112002. CREATE        PROCEDURE sp_Pregl_Nalog_Datum_Divizii
  112003.     @Sifra_Nal        Smallint,
  112004.     @Datum_Nalog_Od     smalldatetime,
  112005.     @Datum_Nalog_Do     smalldatetime,
  112006.     @Sifra_Oe        smallint,
  112007.     @Koi_Kta        varchar(300) = Null,
  112008.     @Koi_GrOrg        varchar(300) = Null,
  112009.     @SoGrOrg        char(1) = 'N'
  112010. AS
  112011.     Declare @SSQL varchar(8000)
  112012.     Set @SSQL = 'SELECT S.Sifra_nal, S.Broj_Nal, S.Datum_Nal, S.Datum_dok, dbo.fn_RbrSort(S.RbrNalog, V.RbrNalog) RbrNalog, 
  112013.         S.Sifra_OE, S.Kto_Anal, A.ImeAnal, A.DaliKupuv, S.Opis, S.Dolzi SDolzi, S.Pobaruva SPobar, 
  112014.         S.Dev_Dolzi SDolDev, S.Dev_Pobaruva SPobDev, V.Dev_Dolzi FDolDev, V.Dev_Pobaruva FPobDev, S.KojaVal,
  112015.         F.Sifra_kup, K.ImeKup, F.Rok, F.BrojDok, V.Dolzi FDolzi, V.Pobaruva FPobar, F.Sifra_Dok, F.Broj_Dok,
  112016.         F.Datum_Dok FDatum, F.Opis FOpis, KL.ImeVal, S.Opis2, D.Identif_Br, D.Sifra_Dok DSifra_Dok, 
  112017.         D.Broj_Dok DBroj_Dok, V.DokrID, V.AnID, D.Sifra_Oe DSifra_Oe, D.Datum_Dok DDatum, D.Sifra_Prim, 
  112018.         (Case When Substring(F.Opis,1,6) In (''kompen'', ''b.izvo'', ''cesija'') Then Substring(F.Opis,1,6)  
  112019.                   When Substring(S.Opis,1,6) In (''kompen'', ''b.izvo'', ''cesija'') Then Substring(S.Opis,1,6)  
  112020.                   When Substring(S.Opis2,1,6) In (''kompen'', ''b.izvo'', ''cesija'') Then Substring(S.Opis2,1,6) 
  112021.         Else ''Drugo'' End) OpisGroup, '
  112022.     If @SoGrOrg = 'D'
  112023.         Set @SSQL = @SSQL + ' SG.Sif_GrOrg, GO.Ime_GrOrg, '
  112024.     Else
  112025.         Set @SSQL = @SSQL + ' Null Sif_GrOrg, Null Ime_GrOrg, '
  112026.     Set @SSQL = @SSQL + ' GD.GstID, GD.AnID, GD.Dolzi DivDolzi, GD.Pobaruva DivPobaruva, GD.Sifra_Div 
  112027.             FROM GStav S
  112028.             INNER JOIN Anal A ON S.Kto_Anal = A.Kto_Anal
  112029.                 LEFT OUTER JOIN KrsLista KL ON S.KojaVal = KL.SImeVal
  112030.                 LEFT OUTER JOIN FAvtVrski V ON S.GStID = V.GStID
  112031.             LEFT OUTER JOIN AnFinDok F ON V.AnID = F.AnID
  112032.             LEFT OUTER JOIN GstAnDiv GD On GD.GstID=S.GstID
  112033.             LEFT OUTER JOIN Dokr D ON D.DokrID = V.DokrID
  112034.             LEFT OUTER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup '
  112035.     If @SoGrOrg = 'D'
  112036.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN SGrOrg SG On SG.Sifra_Oe=S.Sifra_Oe
  112037.                       LEFT OUTER JOIN GrOrg GO On GO.Sif_GrOrg=SG.Sif_GrOrg '
  112038.     Set @SSQL = @SSQL + ' WHERE S.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(4)) +
  112039.                 ' AND S.Datum_Nal >= ''' + cast(@Datum_Nalog_Od as varchar(30)) + ''' 
  112040.                   AND S.Datum_Nal <= ''' + cast(@Datum_Nalog_Do as varchar(30)) + ''' '
  112041.     If @Sifra_Oe Is Not Null
  112042.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  112043.     If @Koi_Kta Is Not Null
  112044.         Set @SSQL = @SSQL + ' And S.Kto_Anal In (' + @Koi_Kta + ') '
  112045.     If @Koi_GrOrg Is Not Null
  112046.         Set @SSQL = @SSQL + ' And SG.Sif_GrOrg In (' + @Koi_GrOrg + ') '
  112047.     SET @SSQL = @SSQL + ' ORDER BY S.Kto_Anal, S.Opis '
  112048. print @SSQL
  112049.     EXEC(@SSQL)
  112050.  
  112051.  
  112052. Go
  112053. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_nalog_suban]'))
  112054. drop procedure [dbo].[sp_pregl_nalog_suban]
  112055.  
  112056. Go
  112057. CREATE        PROCEDURE sp_Pregl_Nalog_SubAn
  112058.     @Sifra_Nal    Smallint,
  112059.     @Broj_Nal    int,
  112060.     @Sifra_OE    smallint = NULL,
  112061.     @KoiOe    varchar(10) = Null,
  112062.     @Datum_Nalog    smalldatetime OUTPUT,
  112063.     @DaliDev    char(1)='N' OUTPUT
  112064. AS
  112065.     Select @Datum_Nalog = Datum_Nal 
  112066.     From GStav
  112067.     Where Sifra_Nal = @Sifra_Nal AND Broj_Nal = @Broj_Nal
  112068.     SELECT @DaliDev=DaliDev  FROM Anal WHERE DaliDev = 'D' AND Kto_Anal IN
  112069.     (SELECT DISTINCT Kto_Anal FROM GStav WHERE Sifra_Nal = @Sifra_Nal AND Broj_Nal = @Broj_Nal)
  112070.     Declare @SSQL varchar(8000)
  112071.     SET @SSQL = 'SELECT S.Sifra_nal, S.Broj_Nal, S.Datum_Nal, S.Datum_dok, dbo.fn_RbrSort(S.RbrNalog, V.RbrNalog) RbrNalog, 
  112072.     S.Sifra_OE, S.Kto_Anal, A.ImeAnal, A.DaliKupuv, S.Opis, S.Dolzi SDolzi, S.Pobaruva SPobar, 
  112073.     S.Dev_Dolzi SDolDev, S.Dev_Pobaruva SPobDev, V.Dev_Dolzi FDolDev, V.Dev_Pobaruva FPobDev, S.KojaVal,
  112074.     F.Sifra_kup, K.ImeKup, F.Rok, F.BrojDok, V.Dolzi FDolzi, V.Pobaruva FPobar, F.Sifra_Dok, F.Broj_Dok,
  112075.     F.Datum_Dok FDatum, F.Opis FOpis, KL.ImeVal, S.Opis2, D.Identif_Br, D.Sifra_Dok DSifra_Dok, 
  112076.     D.Broj_Dok DBroj_Dok, V.DokrID, V.AnID, D.Sifra_Oe DSifra_Oe, D.Datum_Dok DDatum, D.Sifra_Prim
  112077.     FROM GStav S
  112078.     INNER JOIN Anal A ON S.Kto_Anal = A.Kto_Anal
  112079.         LEFT OUTER JOIN KrsLista KL ON S.KojaVal = KL.SImeVal
  112080.         LEFT OUTER JOIN FAvtVrski V ON S.GStID = V.GStID
  112081.     LEFT OUTER JOIN AnFinDok F ON V.AnID = F.AnID
  112082.     LEFT OUTER JOIN Dokr D ON D.DokrID = V.DokrID
  112083.     LEFT OUTER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup
  112084.     WHERE S.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(4)) +
  112085.     ' AND S.Broj_Nal = ' + cast(@Broj_Nal as varchar(10))
  112086.     IF @Sifra_OE IS NOT NULL
  112087.         SET @SSQL = @SSQL + ' AND S.Sifra_OE = ' + cast(@Sifra_OE as varchar(4))
  112088.     IF @KoiOE IS NOT NULL
  112089.         SET @SSQL = @SSQL + ' AND S.Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOE + ''') '
  112090.     SET @SSQL = @SSQL + ' ORDER BY RbrNalog'
  112091.     --PRINT @ssql
  112092.     EXEC(@SSQL)
  112093.  
  112094. Go
  112095. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_nalog_suban_divizii]'))
  112096. drop procedure [dbo].[sp_pregl_nalog_suban_divizii]
  112097.  
  112098. Go
  112099.  
  112100.  
  112101. CREATE                   PROCEDURE sp_Pregl_Nalog_SubAn_Divizii
  112102.     @Sifra_Nal    Smallint,
  112103.     @Broj_Nal    int,
  112104.     @Sifra_OE    smallint = NULL,
  112105.     @KoiOe    varchar(10) = Null,
  112106.     @Datum_Nalog    smalldatetime OUTPUT,
  112107.     @DaliDev    char(1)='N' OUTPUT
  112108. AS
  112109.     Select @Datum_Nalog = Datum_Nal 
  112110.     From GStav
  112111.     Where Sifra_Nal = @Sifra_Nal AND Broj_Nal = @Broj_Nal
  112112.  
  112113.     SELECT @DaliDev=DaliDev  FROM Anal WHERE DaliDev = 'D' AND Kto_Anal IN
  112114.     (SELECT DISTINCT Kto_Anal FROM GStav WHERE Sifra_Nal = @Sifra_Nal AND Broj_Nal = @Broj_Nal)
  112115.  
  112116.     Declare @SSQL varchar(8000)
  112117.     Create Table #TmpNal
  112118.     (
  112119.      GstID        int,
  112120.      AnID        int,
  112121.      DokrID        int,
  112122.      Kto_Anal    varchar(20),
  112123.      Dolzi        decimal(18,6),
  112124.      Pobaruva    decimal(18,6),
  112125.      Dev_Dolzi    decimal(18,6),
  112126.      Dev_Pobaruva    decimal(18,6),
  112127.      Sifra_Oe    smallint,
  112128.      Sifra_Div    smallint,
  112129.      KojaVal        varchar(10),
  112130.      Kurs        decimal(18,6),
  112131.      Datum_Nal    smalldatetime,
  112132.      Datum_Dok    smalldatetime,
  112133.      Opis        varchar(50),
  112134.      Opis2        varchar(50),
  112135.      RbrNalog    int,
  112136.      Sifra_Kup    char(6),
  112137.      Sifra_Dok    smallint,
  112138.      Broj_Dok    int,
  112139.      BrojDok    varchar(50),
  112140.      FOpis        varchar(50),
  112141.      FDatum    smalldatetime,
  112142.      Rok        smallint,
  112143.      Sifra_TrosM    smallint,
  112144.      Sifra_TrosV    smallint
  112145.     )
  112146.     SET @SSQL = 'SELECT S.GstID, F.AnID, D.DokrID, S.Kto_Anal, 
  112147.                 (Case When V.Dolzi + V.Pobaruva <> 0 Then V.Dolzi When F.Dolzi + F.Pobaruva <> 0 Then F.Dolzi Else S.Dolzi End) Dolzi, 
  112148.                 (Case When V.Dolzi + V.Pobaruva <> 0 Then V.Pobaruva When F.Dolzi + F.Pobaruva <> 0 Then F.Pobaruva Else S.Pobaruva End) Pobaruva, 
  112149.                 (Case When V.Dev_Dolzi + V.Dev_Pobaruva <> 0 Then V.Dev_Dolzi When F.Dev_Dolzi + F.Dev_Pobaruva <> 0 Then F.Dev_Dolzi Else S.Dev_Dolzi End) Dev_Dolzi, 
  112150.                 (Case When V.Dev_Dolzi + V.Dev_Pobaruva <> 0 Then V.Dev_Pobaruva When F.Dev_Dolzi + F.Dev_Pobaruva <> 0 Then F.Dev_Pobaruva Else S.Dev_Pobaruva End) Dev_Pobaruva, 
  112151.                 S.Sifra_Oe, GD.Sifra_Div, S.KojaVal, S.Kurs, S.Datum_Nal, S.Datum_Dok, S.Opis, S.Opis2, S.RbrNalog, 
  112152.                 Null as Sifra_Kup, Null as Sifra_Dok, Null as Broj_Dok, Null as BrojDok, Null as FOpis, Null as FDatum, Null as Rok, GD.Sifra_TrosM, GD.Sifra_TrosV
  112153.     FROM GStav S
  112154.     LEFT OUTER JOIN GstAnDiv GD On GD.GstID=S.GstID
  112155.     INNER JOIN Anal A ON S.Kto_Anal = A.Kto_Anal
  112156.         LEFT OUTER JOIN KrsLista KL ON S.KojaVal = KL.SImeVal
  112157.         LEFT OUTER JOIN FAvtVrski V ON S.GStID = V.GStID
  112158.     LEFT OUTER JOIN AnFinDok F ON V.AnID = F.AnID
  112159.     LEFT OUTER JOIN Dokr D ON D.DokrID = V.DokrID
  112160.     LEFT OUTER JOIN Komint K ON F.Sifra_Kup = K.Sifra_Kup
  112161.     WHERE S.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(4)) +
  112162.     ' AND S.Broj_Nal = ' + cast(@Broj_Nal as varchar(10)) + ' 
  112163.     And GD.GstID Is Null '
  112164. --    And (GD.GstID Is Null Or F.AnID Is Null)'
  112165.     IF @Sifra_OE IS NOT NULL
  112166.         SET @SSQL = @SSQL + ' AND S.Sifra_OE = ' + cast(@Sifra_OE as varchar(4))
  112167.     PRINT @ssql
  112168.     Insert Into #TmpNal EXEC(@SSQL)
  112169. --EXEC(@SSQL)
  112170. --select * from #tmpnal
  112171.     SET @SSQL = 'SELECT S.GstID, GD.AnID, D.DokrID, S.Kto_Anal, 
  112172.                 (Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) Dolzi, 
  112173.                 (Case When GD.Pobaruva <> 0  Then GD.Pobaruva  Else 0 End) Pobaruva, 
  112174.                 (Case When A.Dev_Dolzi <> 0 Then A.Dev_Dolzi Else 0 End) Dev_Dolzi, 
  112175.                 (Case When A.Dev_Pobaruva <> 0 Then A.Dev_Pobaruva End) Dev_Pobaruva, 
  112176.                 S.Sifra_Oe, GD.Sifra_Div, S.KojaVal, S.Kurs, S.Datum_Nal, S.Datum_Dok, S.Opis, S.Opis2, S.RbrNalog, 
  112177.                 Null as Sifra_Kup, Null as Sifra_Dok, Null as Broj_Dok, Null as BrojDok, Null as FOpis, Null as FDatum, Null as Rok, GD.Sifra_TrosM, GD.Sifra_TrosV
  112178.     FROM GStav S
  112179.     INNER JOIN GstAnDiv GD On GD.GstID=S.GstID
  112180.     Left Outer Join AnFinDok A On A.AnID=GD.AnID
  112181.     LEFT OUTER JOIN Dokr D ON D.DokrID = GD.DokrID
  112182.     WHERE S.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(4)) +
  112183.     ' AND S.Broj_Nal = ' + cast(@Broj_Nal as varchar(10)) + ' 
  112184.     AND A.AnID In (Select AnID From GstAnDiv Group By AnID Having Count(*)<=1) '
  112185.     IF @Sifra_OE IS NOT NULL
  112186.         SET @SSQL = @SSQL + ' AND S.Sifra_OE = ' + cast(@Sifra_OE as varchar(4))
  112187.     PRINT @ssql
  112188.     Insert Into #TmpNal EXEC(@SSQL)
  112189.  
  112190.     SET @SSQL = 'SELECT S.GstID, GD.AnID, D.DokrID, S.Kto_Anal, 
  112191.                 (Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) Dolzi, 
  112192.                 (Case When GD.Pobaruva <> 0  Then GD.Pobaruva  Else 0 End) Pobaruva, 
  112193.                 (Case When GD.Dolzi <> 0 And (S.Kurs <> 0 Or A.Kurs <>0 ) Then (Case When A.Kurs <> 0 Then GD.Dolzi/A.Kurs Else GD.Dolzi/S.Kurs End) Else 0 End) Dev_Dolzi, 
  112194.                 (Case When GD.Pobaruva <> 0 And (S.Kurs <> 0 Or A.Kurs <>0 ) Then (Case When A.Kurs <> 0 Then GD.Pobaruva/A.Kurs Else GD.Pobaruva/S.Kurs End) Else 0 End) Dev_Pobaruva, 
  112195.                 S.Sifra_Oe, GD.Sifra_Div, S.KojaVal, S.Kurs, S.Datum_Nal, S.Datum_Dok, S.Opis, S.Opis2, S.RbrNalog, 
  112196.                 Null as Sifra_Kup, Null as Sifra_Dok, Null as Broj_Dok, Null as BrojDok, Null as FOpis, Null as FDatum, Null as Rok, GD.Sifra_TrosM, GD.Sifra_TrosV
  112197.     FROM GStav S
  112198.     INNER JOIN GstAnDiv GD On GD.GstID=S.GstID
  112199.     Inner Join AnFinDok A On A.AnID=GD.AnID
  112200.     LEFT OUTER JOIN Dokr D ON D.DokrID = GD.DokrID
  112201.     WHERE S.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(4)) +
  112202.     ' AND S.Broj_Nal = ' + cast(@Broj_Nal as varchar(10)) + ' 
  112203.     AND A.AnID Not In (Select AnID From GstAnDiv Group By AnID Having Count(*)<=1) '
  112204.     IF @Sifra_OE IS NOT NULL
  112205.         SET @SSQL = @SSQL + ' AND S.Sifra_OE = ' + cast(@Sifra_OE as varchar(4))
  112206.     PRINT @ssql
  112207.     Insert Into #TmpNal EXEC(@SSQL)
  112208.     -- 11.02.2010 bese Left Outer Join AnFinDok - se dupliraa stavkite so slednoto query
  112209.  
  112210.     ---------------- Dod 06.05.2008 GK    - Dokolku kontoto e po divizii a ne se vodat subanalitiki (go nema vo AnFinDok) 
  112211.     SET @SSQL = 'SELECT S.GstID, GD.AnID, D.DokrID, S.Kto_Anal, 
  112212.                 (Case When GD.Dolzi <> 0 Then GD.Dolzi Else 0 End) Dolzi, 
  112213.                 (Case When GD.Pobaruva <> 0  Then GD.Pobaruva  Else 0 End) Pobaruva, 
  112214.                 (Case When GD.Dolzi <> 0 And (S.Kurs <> 0 Or A.Kurs <>0 ) Then (Case When A.Kurs <> 0 Then GD.Dolzi/A.Kurs Else GD.Dolzi/S.Kurs End) Else 0 End) Dev_Dolzi, 
  112215.                 (Case When GD.Pobaruva <> 0 And (S.Kurs <> 0 Or A.Kurs <>0 ) Then (Case When A.Kurs <> 0 Then GD.Pobaruva/A.Kurs Else GD.Pobaruva/S.Kurs End) Else 0 End) Dev_Pobaruva, 
  112216.                 S.Sifra_Oe, GD.Sifra_Div, S.KojaVal, S.Kurs, S.Datum_Nal, S.Datum_Dok, S.Opis, S.Opis2, S.RbrNalog, 
  112217.                 Null as Sifra_Kup, Null as Sifra_Dok, Null as Broj_Dok, Null as BrojDok, Null as FOpis, Null as FDatum, Null as Rok, GD.Sifra_TrosM, GD.Sifra_TrosV
  112218.     FROM GStav S
  112219.     INNER JOIN GstAnDiv GD On GD.GstID=S.GstID
  112220.     Left Outer Join AnFinDok A On A.AnID=GD.AnID
  112221.     LEFT OUTER JOIN Dokr D ON D.DokrID = GD.DokrID
  112222.     WHERE S.Sifra_Nal = ' + cast(@Sifra_Nal as varchar(4)) +
  112223.     ' AND S.Broj_Nal = ' + cast(@Broj_Nal as varchar(10)) + ' 
  112224.     AND A.AnID Is Null  '
  112225.     IF @Sifra_OE IS NOT NULL
  112226.         SET @SSQL = @SSQL + ' AND S.Sifra_OE = ' + cast(@Sifra_OE as varchar(4))
  112227.     PRINT @ssql
  112228.     Insert Into #TmpNal EXEC(@SSQL)
  112229.     -----------------------------------------------------------------------------------
  112230. --select * from #TmpNal
  112231.     Create Table #Rbr1
  112232.     (
  112233.      GstID        int,
  112234.      AnID        int,
  112235.      RbrNal        int
  112236.     )
  112237.     Insert Into #Rbr1
  112238.     Select T.GstID, F.AnID, Min(dbo.fn_RbrSort(T.RbrNalog, V.RbrNalog))
  112239.     From #TmpNal  T
  112240.         LEFT OUTER JOIN FAvtVrski V ON T.GStID = V.GStID
  112241.     LEFT OUTER JOIN AnFinDok F ON V.AnID = F.AnID
  112242.     Group By T.GstID, F.AnID
  112243.  
  112244.     Create Table #Rbr
  112245.     (
  112246.      GstID        int,
  112247.      AnID        int,
  112248.      RbrNal        int
  112249.     )
  112250.     Insert Into #Rbr Select T.GstID, T.AnID, R.RbrNal From #TmpNal T Inner Join #Rbr1 R On R.GstID=T.GstID And T.AnID=R.AnID
  112251.  
  112252.     Insert Into #Rbr Select T.GstID, Null, Min(R.RbrNal) From #TmpNal T Inner Join #Rbr1 R On R.GstID=T.GstID Where T.AnID Is Null Group By T.GstID
  112253.  
  112254.     Update #TmpNal 
  112255.     Set #TmpNal.RbrNalog=R.RbrNal
  112256.     From #Rbr R
  112257.     Where R.GstID=#TmpNal.GstID And R.AnID=#TmpNal.AnID
  112258.     And #TmpNal.AnID Is Not Null
  112259.  
  112260.     Update #TmpNal 
  112261.     Set #TmpNal.RbrNalog=R.RbrNal
  112262.     From #Rbr R
  112263.     Where R.GstID=#TmpNal.GstID 
  112264.     And #TmpNal.RbrNalog < 1
  112265.  
  112266. --select * from #TmpNal
  112267.     Update #TmpNal 
  112268.     Set #TmpNal.Sifra_Kup=F.Sifra_Kup, #TmpNal.Sifra_Dok=F.Sifra_Dok, #TmpNal.Broj_Dok=F.Broj_Dok, #TmpNal.BrojDok=F.BrojDok, 
  112269.         #TmpNal.FOpis=F.Opis, #TmpNal.FDatum=F.Datum_Dok, #TmpNal.Rok=F.Rok
  112270.     From FAvtVrski V
  112271.     LEFT OUTER JOIN AnFinDok F ON V.AnID = F.AnID
  112272.     Where V.GstID=#TmpNal.GstID And V.AniD=#TmpNal.AnID
  112273.  
  112274. --select * from #TmpNal
  112275.     Update #TmpNal 
  112276.     Set #TmpNal.Sifra_Dok=D.Sifra_Dok, #TmpNal.Broj_Dok=D.Broj_Dok, #TmpNal.BrojDok=D.Identif_Br, 
  112277.         #TmpNal.FOpis=D.Opis, #TmpNal.FDatum=D.Datum_Dok, #TmpNal.Rok=D.Rok
  112278.     From Dokr D
  112279.     Where D.DokrID=#TmpNal.DokrID
  112280.  
  112281.     -- Na nekoi stavki nemasse sifra_oe
  112282.     Update #TmpNal 
  112283.     Set #TmpNal.Sifra_Oe=D.Sifra_Oe
  112284.     From Dokr D
  112285.     Where D.DokrID=#TmpNal.DokrID And #TmpNal.Sifra_Oe Is Null
  112286.  
  112287.     Select  N.RbrNalog, N.GstID, N.AnID, N.DokrID, N.Kto_Anal, A.ImeAnal, Round(N.Dolzi,2) Dolzi, Round(N.Pobaruva,2) Pobaruva, 
  112288.         Round(N.Dev_Dolzi,2) Dev_Dolzi, Round(N.Dev_Pobaruva,2) Dev_Pobaruva, N.Sifra_Oe, N.Sifra_Div, N.KojaVal, 
  112289.         KL.ImeVal, N.Kurs, N.Datum_Nal, N.Datum_Dok, N.Opis, N.Opis2, N.Sifra_Kup, Kup.ImeKup, N.Sifra_Dok, 
  112290.         N.Broj_Dok, N.BrojDok, N.FOpis, N.FDatum, N.Rok, N.Sifra_TrosM, N.Sifra_TrosV
  112291.     From #TmpNal N
  112292.     Inner Join Anal A On A.Kto_Anal=N.Kto_Anal
  112293.     Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  112294.         Left Outer Join KrsLista KL ON N.KojaVal = KL.SImeVal
  112295. --    Left Outer Join TrosokMesto TM On TM.Sifra_TrosM=N.Sifra_TrosM
  112296. --    Left Outer Join TrosokVid TV On TV.Sifra_TrosV=N.Sifra_TrosV
  112297.     Order By N.RbrNalog, N.DokrID
  112298.  
  112299.  
  112300.  
  112301. Go
  112302. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_nalozi]'))
  112303. drop procedure [dbo].[sp_pregl_nalozi]
  112304.  
  112305. Go
  112306.  
  112307. CREATE      PROCEDURE sp_Pregl_Nalozi
  112308.     @Sifra_Nal    Smallint = NULL,
  112309.     @Datum_Od    Smalldatetime = NULL,
  112310.     @Datum_Do    Smalldatetime = NULL,
  112311.     @SamoNesloz    char(1) = 'N',
  112312.     @Zatvoreni    char(1) = NULL        --D-Zatvoreni, N-Otvoreni, null-site
  112313. AS
  112314.     Declare @SSQL varchar(2000)
  112315.     Set @SSQL = 'SELECT N.Sifra_Nal, N.Broj_Nal, N.Datum_Nal, Sum(G.Dolzi) Dolzi, Sum(G.Pobaruva) Pobaruva, 
  112316.         Sum(G.KolkuVrski) Vrski, Sum(Case 
  112317.             When G.KolkuVrski = 0 Then 1
  112318.             Else G.KolkuVrski
  112319.             End) RbrStavki
  112320.         FROM Nalozi N
  112321.         LEFT OUTER JOIN Gstav G ON G.Sifra_Nal=N.Sifra_Nal AND G.Broj_Nal=N.Broj_Nal ' 
  112322.  
  112323.     Set @SSQL = @SSQL + 'WHERE 1=1 '
  112324.  
  112325.     If @Sifra_Nal IS NOT NULL
  112326.         Set @SSQL = @SSQL + ' AND N.Sifra_Nal = ' + Cast(@Sifra_Nal as varchar(6)) + ' '
  112327.     If @Datum_Od IS NOT NULL
  112328.         Set @SSQL = @SSQL + ' AND N.Datum_Nal >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  112329.     If @Datum_Do IS NOT NULL
  112330.         Set @SSQL = @SSQL + ' AND N.Datum_Nal <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  112331.     If @Zatvoreni IS NOT NULL
  112332.         Set @SSQL = @SSQL + ' AND N.Sts_Kniz =''' + @Zatvoreni + ''' '
  112333.     Set @SSQL = @SSQL + ' GROUP BY N.Sifra_Nal, N.Broj_Nal, N.Datum_Nal '
  112334.  
  112335.     If @SamoNesloz = 'D'
  112336.         Set @SSQL = @SSQL + ' HAVING ABS(SUM(G.Dolzi) - SUM(G.Pobaruva)) >= 0.0099 '
  112337.  
  112338.     Set @SSQL = @SSQL + ' ORDER BY N.Datum_Nal'
  112339.  
  112340.     Exec(@SSQL)
  112341.  
  112342.  
  112343.  
  112344. Go
  112345. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_nar_obr]'))
  112346. drop procedure [dbo].[sp_pregl_nar_obr]
  112347.  
  112348. Go
  112349.  
  112350.  
  112351.  
  112352. Create  PROCEDURE sp_Pregl_Nar_Obr
  112353.     @KoiOe        varchar(6) = Null,
  112354.     @Sifra_OE     smallint=null,
  112355.     @Datum_Od    smalldatetime=null,
  112356.     @Datum_Do    smalldatetime=null,
  112357.     @Sifra_Nar_List    varchar (30),
  112358.     @Broj_Nar_Od    int=null,
  112359.     @Broj_Nar_Do    int=null,
  112360.     @Stat_Nar_List    varchar(20) = Null
  112361. AS
  112362.     Declare @SSQL as varchar(8000)
  112363.     Set @SSQL =  'SELECT N.Datum_Nar, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.NarID,
  112364.         Cast(N.Sifra_OE as varchar(6)) + ''-'' + Cast(N.Sifra_Nar as varchar(6)) + ''/'' + Cast(N.Broj_Nar as varchar(10)) BrojNar,
  112365.         N.Sifra_Kup, K.ImeKup, N.Sifra_Obj, OB.ImeObj, N.Toc200, 
  112366.         (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad,
  112367.         N.Sifra_Pat, Pat.ImePat, N.Stat_Nar, '
  112368.     Set @SSQL = @SSQL + ' N.Toc200 IznosNar '
  112369.     Set @SSQL = @SSQL + ' From Naracki N '
  112370.     Set @SSQL = @SSQL + ' Left Outer Join Komint K ON N.Sifra_Kup=K.Sifra_Kup
  112371.                   Left Outer Join KObjekti OB ON N.Sifra_Kup=OB.Sifra_Kup And N.Sifra_Obj=OB.Sifra_Obj
  112372.                   Left Outer Join Grad G On G.Sifra_Grad = (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) 
  112373.                       Left Outer Join Patnici Pat On Pat.Sifra_Pat = N.Sifra_Pat '
  112374.     Set @SSQL = @SSQL + ' Where 1=1 '
  112375.     If @KoiOE Is Not Null
  112376.         Set @SSQL = @SSQL + ' And N.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  112377.     If @Sifra_Oe Is Not Null
  112378.         Set @SSQL = @SSQL + ' And N.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  112379.     If @Sifra_Nar_List Is Not Null 
  112380.         Set @SSQL = @SSQL + ' And N.Sifra_Nar in (' + @Sifra_Nar_List + ') '
  112381.     If @Broj_Nar_Od Is Not Null
  112382.         Set @SSQL = @SSQL + ' And N.Broj_Nar >= ' + Cast(@Broj_Nar_Od as varchar(10)) + ' '
  112383.     If @Broj_Nar_Do Is Not Null
  112384.         Set @SSQL = @SSQL + ' And N.Broj_Nar <= ' + Cast(@Broj_Nar_Do as varchar(10)) + ' '
  112385.     If @Datum_Od Is Not Null
  112386.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  112387.     If @Datum_Do Is Not Null
  112388.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  112389.     If @Stat_Nar_List Is Not Null 
  112390.         Set @SSQL = @SSQL + ' And N.Stat_Nar in (' + @Stat_Nar_List + ') '
  112391.     Set @SSQL = @SSQL + ' Order By K.ImeKup, N.Datum_Nar, N.Broj_Nar '
  112392.     Exec(@SSQL)
  112393.  
  112394.  
  112395.  
  112396. Go
  112397. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_narac_odlozeno]'))
  112398. drop procedure [dbo].[sp_pregl_narac_odlozeno]
  112399.  
  112400. Go
  112401. CREATE                        PROCEDURE sp_Pregl_Narac_Odlozeno
  112402.     @Sifra_OE     Smallint,
  112403.        @Sifra_Nar     Smallint,
  112404.        @Datum_Nar_Od Smalldatetime,
  112405.        @Datum_Nar_Do Smalldatetime,
  112406.     @ZbirnoPoArt    char(1) = 'N'
  112407. AS
  112408.     Declare @SSQL Varchar(4000)
  112409.     SET @SSQL = ' SELECT SN.Sifra_Art, K.ImeArt, K.EdMera, Sum(SN.Kolic) Kolic, Sum(SN.Kolic_BO) Kolic_BO, '
  112410.     If @ZbirnoPoArt <> 'D'
  112411.         Set @SSQL = @SSQL + ' Nar.Sifra_Oe, Nar.Sifra_Nar, Nar.Broj_Nar, Nar.Datum_Nar, Nar.Sifra_Kup, Kup.ImeKup, Nar.Sifra_Pat, Pat.ImePat '
  112412.     Else 
  112413.         Set @SSQL = @SSQL + ' Null as Sifra_Oe, Null as Sifra_Nar, Null as Broj_Nar, Null as Datum_Nar, Null as Sifra_Kup, Null as ImeKup, Null as Sifra_Pat, Null as ImePat '
  112414.     Set @SSQL = @SSQL + ' FROM Naracki Nar
  112415.                 Inner Join StaNarac SN On Nar.NarID=SN.NarID 
  112416.                 Inner Join Katart K On K.Sifra_Art = SN.Sifra_Art'
  112417.     If @ZbirnoPoArt <> 'D'
  112418.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup=Nar.Sifra_Kup
  112419.                       Left Outer Join Patnici Pat On Pat.Sifra_Pat=Nar.Sifra_Pat '
  112420.     Set @SSQL=@SSQL + '    Where SN.Kolic_BO <> 0 '
  112421.     If @Sifra_Nar Is NOT NULL
  112422.         SET @SSQL = @SSQL + 'AND Nar.Sifra_Nar=''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  112423.     If @Sifra_OE Is NOT Null
  112424.         SET @SSQL = @SSQL + 'AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  112425.     If @Datum_Nar_Od Is NOT Null
  112426.         SET @SSQL = @SSQL + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  112427.     If @Datum_Nar_Do Is NOT Null
  112428.         SET @SSQL = @SSQL + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  112429.     Set @SSQL = @SSQL + ' Group By SN.Sifra_Art, K.ImeArt, K.EdMera '
  112430.     If @ZbirnoPoArt <> 'D'
  112431.         Set @SSQL = @SSQL + ', Nar.Sifra_Oe, Nar.Sifra_Nar, Nar.Broj_Nar, Nar.Datum_Nar, Nar.Sifra_Kup, Kup.ImeKup, Nar.Sifra_Pat, Pat.ImePat '
  112432.     Exec (@SSQL)
  112433.  
  112434.  
  112435. Go
  112436. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_narac_slika]'))
  112437. drop procedure [dbo].[sp_pregl_narac_slika]
  112438.  
  112439. Go
  112440.  
  112441. create PROCEDURE sp_Pregl_Narac_Slika
  112442.     @Sifra_Oe smallint,
  112443.     @Sifra_Nar smallint,
  112444.     @Broj_Nar int
  112445.  
  112446. AS
  112447.  
  112448.     Select N.SIfrA_Oe, N.SIfra_Nar, N.Broj_Nar, N.Sifra_Kup, Kom.ImeKup, N.Datum_Nar,
  112449.         SN.Sifra_Art, K.ImeArt, K.EdMera, SN.Kolic, SN.DokCena, SN.DanDokCena,
  112450.          Slik.SlikaArt, K.Nom
  112451.     From StaNarac SN
  112452.     Inner Join Naracki N On SN.NarID=N.NarID
  112453.     left outer join Komint Kom on Kom.Sifra_Kup=N.SIfra_Kup
  112454.     Inner Join Katart K On SN.Sifra_Art=K.Sifra_Art
  112455.     left outer Join KatSliki Slik on SN.SifrA_Art=Slik.Sifra_Art
  112456.     Where N.Sifra_Oe=@Sifra_Oe And N.Sifra_Nar=@Sifra_Nar and N.Broj_Nar=@Broj_Nar
  112457.  
  112458.  
  112459.  
  112460.  
  112461. Go
  112462. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_objekti]'))
  112463. drop procedure [dbo].[sp_pregl_objekti]
  112464.  
  112465. Go
  112466.  
  112467.  
  112468.  
  112469. CREATE        PROCEDURE sp_Pregl_Objekti
  112470.     @Sifra_Kup     Varchar(10) = Null,
  112471.     @Sifra_Obj    smallint = Null
  112472. AS
  112473.     Declare @SSQL Varchar(8000)
  112474.     Set @SSQL = ' Select KO.Sifra_Kup, Kup.ImeKup, 
  112475.             KO.Sifra_Obj, KO.Star_Kup, KO.ImeObj, KO.ImeObj2, KO.Adresa, KO.Adresa2, KO.SMesto, KO.Posta, KO.Zemja, 
  112476.             KO.Telefon, KO.Tel1, KO.Tel2, KO.TelMobil, KO.Fax, KO.Telex, KO.EMail, KO.Kontakt, 
  112477.             KO.Sifra_Pat, P.ImePat, 
  112478.             KO.Sifra_Grad,  G.ImeGrad, 
  112479.             KO.TipKup, TK.ImeTipKup, 
  112480.             KO.Sifra_Reg, R.ImeRegion, 
  112481.             Kup.Sifra_Nivo, N.ImeNivo, 
  112482.             Kup.Sifra_Tip, T.ImeTip, 
  112483.             KO.Zabeleska, KO.Aktiven, KO.BrProdMesta, KO.BrAktProdMesta, 
  112484.             KO.KDrugo1, D1.Ime_1K, 
  112485.             KO.KDrugo2, D2.Ime_2K, 
  112486.             KO.KDrugo3, D3.Ime_3K, 
  112487.             KO.KDrugo4, D4.Ime_4K, 
  112488.             KO.Propagiraj, 
  112489.             KO.m2, 
  112490.                         KO.Sifra_Pat2, P2.ImePat as ImePat2 
  112491.             From Komint Kup
  112492.             Inner Join KObjekti KO On KO.Sifra_Kup=Kup.Sifra_Kup
  112493.             Left Outer Join Patnici P On P.Sifra_Pat=KO.Sifra_Pat
  112494.             Left Outer Join Patnici P2 On P2.Sifra_Pat=KO.Sifra_Pat2
  112495.             Left Outer Join Grad G On G.Sifra_Grad=KO.Sifra_Grad
  112496.             Left Outer Join GRegion R On R.Sifra_Reg=KO.Sifra_reg
  112497.             Left Outer Join GTipKup TK On TK.TipKup=KO.TipKup
  112498.             Left Outer Join Nivo N  On N.Sifra_Nivo=KO.Sifra_Nivo
  112499.             Left Outer Join TipKomint T On T.Sifra_Tip=KO.Sifra_Tip
  112500.             Left Outer Join KDrugo1 D1 On D1.Sifra_1K=KO.KDrugo1
  112501.             Left Outer Join KDrugo2 D2 On D2.Sifra_2K=KO.KDrugo2
  112502.             Left Outer Join KDrugo3 D3 On D3.Sifra_3K=KO.KDrugo3
  112503.             Left Outer Join KDrugo4 D4 On D4.Sifra_4K=KO.KDrugo4
  112504.             Where KO.Sifra_Obj <> 0 '
  112505.     If @Sifra_Kup Is Not Null
  112506.         Set @SSQL = @SSQL + 'And KO.Sifra_Kup =''' + @Sifra_Kup + ''' '
  112507.     If @Sifra_Obj Is Not Null
  112508.         Set @SSQL = @SSQL + 'And KO.Sifra_Obj = ' + Cast(@Sifra_Obj As Varchar(10)) + ' '
  112509. print @SSQL
  112510.     Exec(@SSQL)
  112511.  
  112512.  
  112513.  
  112514. Go
  112515. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_onebalance]'))
  112516. drop procedure [dbo].[sp_pregl_onebalance]
  112517.  
  112518. Go
  112519. CREATE      PROCEDURE sp_Pregl_OneBalance
  112520.     @Datum_Od    smalldatetime = null,
  112521.     @Datum_Do    smalldatetime = null,
  112522.     @Tip    smallint = Null
  112523. AS
  112524.     Declare @SSQL as varchar(8000)
  112525.     Declare @SSQLUsl as varchar(8000)
  112526.     Set @SSQLUsl = ' '
  112527.     ------------------------------------------------------------------- U S L O V ------------------------------------------------------------------------------------
  112528.     If @Datum_Od Is Not Null
  112529.         Set @SSQLUsl = @SSQLUsl + ' And L.Vreme >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  112530.     If @Datum_Do Is Not Null
  112531.         Set @SSQLUsl = @SSQLUsl + ' And L.Vreme <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  112532.     If @tip Is Not Null
  112533.         Set @SSQLUsl = @SSQLUsl + ' And L.TipIznos = ' + Cast(@Tip as varchar(6)) + ' '
  112534.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------
  112535.     Set @SSQL = ' SELECT L.*  FROM OneBalance  L '
  112536.         Set @SSQL = @SSQL + ' Where 1=1 ' + @SSQLUsl
  112537.         Set @SSQL = @SSQL + ' ORDER BY L.Vreme' 
  112538.     print @SSQL
  112539.     Exec(@SSQL)
  112540.  
  112541.  
  112542.  
  112543.  
  112544.  
  112545.  
  112546. Go
  112547. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_periodruti]'))
  112548. drop procedure [dbo].[sp_pregl_periodruti]
  112549.  
  112550. Go
  112551.  
  112552.  
  112553.  
  112554.  
  112555.  
  112556.  
  112557. CREATE           Procedure sp_Pregl_PeriodRuti
  112558.     @Sifra_pat smallint = null,
  112559.     @Sifra_GrPat char(6) = null,
  112560.     @DatumOd smalldatetime = null,
  112561.     @DatumDo smalldatetime = null,
  112562.     @Podelba1 smallint = null,
  112563.     @KFPod1 char(1) = null
  112564. As 
  112565. create table #Tmp
  112566.     (Sifra_Pat smallint,
  112567.      sto varchar(30),    
  112568.      Kolku integer
  112569.     )
  112570. CREATE TABLE #TmpRuta
  112571.     (Sifra_Pat smallint,
  112572.      DatumOd smalldatetime,
  112573.      DenOdNedela char(1),
  112574.      Sifra_Kup char(6),
  112575.      Sifra_Obj smallint,
  112576.      Datum smalldatetime )
  112577.  
  112578. CREATE TABLE #TmpPat (Sifra_Pat smallint)
  112579. If @Sifra_Pat is not null 
  112580.     INSERT INTO #TmpPat VALUES (@Sifra_Pat)
  112581. Else IF @Sifra_GrPat is not null
  112582.     INSERT INTO #TmpPat SELECT Sifra_Pat from Sgrpat where Sif_GrPat =@Sifra_GrPat
  112583. ELSE
  112584.     INSERT INTO #TmpPat SELECT Sifra_Pat from Patnici
  112585.  
  112586. CREATE TABLE #TmpPR 
  112587. (Sifra_Pat smallint, 
  112588. Datum smalldatetime)
  112589.  
  112590. Declare @Datum smalldatetime
  112591. Declare @Praznik as char(1)
  112592. SET @Datum=@DatumOd
  112593. WHILE @Datum<=@DatumDo         
  112594. BEGIN
  112595.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  112596.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj FROM RutiZaDatum WHERE Datum=@Datum AND Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  112597.  
  112598.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  112599.     IF @Praznik IS NULL
  112600.     BEGIN
  112601.     DELETE FROM #TmpPR
  112602.     INSERT INTO #TmpPR SELECT Sifra_Pat, MAX(Datum_Od) FROM RutiPlan 
  112603.     WHERE Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat) AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) GROUP BY Sifra_Pat
  112604.  
  112605.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  112606.     SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  112607.     WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  112608.     AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  112609.     END
  112610.  
  112611.     SET @Datum = DateAdd(day, 1, @Datum)
  112612. END 
  112613. declare @SSQL as varchar(5000)
  112614.  
  112615. create table #TmpDetal
  112616.     (
  112617.     Sifra_Pat smallint,
  112618.     ImePat varchar(30),
  112619.     Sifra_Kup char(6),
  112620.     ImeKup varchar(40),
  112621.     Sifra_Obj smallint,
  112622.     ImeObj varchar(40),
  112623.     PoRuta char(1),
  112624.     Poseten char(1),
  112625.     SoBarkod char(1),
  112626.     Datum smalldatetime
  112627.     )
  112628. set @SSQL = 'insert into #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, Datum, Poseten, SoBarkod)
  112629.             select A.sifra_Oe, P.ImePat, A.Sifra_Kup, K.ImeKup, case when A.Sifra_Obj <> 0 then A.Sifra_Obj end, KO.ImeObj, A.DatumVreme,''D'', A.SoBarKod
  112630.             from Akcija A
  112631.             inner join Patnici P on A.Sifra_oe=P.Sifra_Pat
  112632.             inner join Komint K on K.Sifra_Kup = A.Sifra_Kup
  112633.             left outer join KObjekti KO on KO.Sifra_Obj = A.Sifra_Obj and KO.Sifra_Kup = A.Sifra_Kup
  112634.             where dbo.fn_VratiDatum(DatumVreme) >= '''+cast(@DatumOd as varchar(35))+''' and dbo.fn_VratiDatum(DatumVreme) <= '''+cast(@DatumDo as varchar(35))+''' '
  112635. If @Sifra_Pat is not null
  112636.     set @SSQL = @SSQL + ' and P.Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  112637. If @Sifra_GrPat is not null
  112638.     set @SSQL = @SSQL + ' and P.Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '''+cast(@Sifra_GrPat as varchar(6))+''' ) '
  112639. If @Podelba1 Is Not NULL
  112640.     If @KFPod1 = 'D'
  112641.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or K.KDrugo1 Is Null) '
  112642.     Else
  112643.         Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '    
  112644. set @SSQL = @SSQL + ' order by A.DatumVreme, A.Sifra_Kup, A.Sifra_Obj '
  112645. exec(@SSQL)
  112646.  
  112647. --sega da gi izbriseme duplite vneseni vo rok od nekolku minuti
  112648. Declare @SifKup char(6), @SifObj smallint, @SifPat smallint, @SifKup1 char(6), @SifObj1 smallint, @SifPat1 smallint, @Datum1 smalldatetime
  112649. SET @SifKup1=''
  112650. SET @SifObj1=0
  112651. SET @SifPat1=0
  112652. SET @Datum1=GETDATE()
  112653. Declare Tab1 Cursor Fast_Forward For 
  112654.     Select  Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum From #TmpDetal ORDER BY Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum
  112655. Open Tab1
  112656. Fetch Next From Tab1 Into @SifPat, @SifKup, @SifObj, @Datum
  112657. While @@Fetch_Status = 0
  112658. Begin            
  112659.     IF @SifPat1=@SifPat AND @SifKup1=@SifKup AND dbo.fn_VratiDatum(@Datum1)=dbo.fn_VratiDatum(@Datum)
  112660.     BEGIN        
  112661.         IF (@SifObj IS NULL AND @SifObj1 IS NULL) OR (@SifObj IS NOT NULL AND @SifObj1 IS NOT NULL AND @SifObj=@SifObj1)
  112662.             Update #TmpDetal SET Poseten='X' WHERE Sifra_Pat=@SifPat AND Sifra_Kup=@SifKup AND Datum=@Datum
  112663.     END
  112664.     SET @SifPat1=@SifPat
  112665.     SET @SifKup1=@SifKup
  112666.     SET @SifObj1=@SifObj
  112667.     SET @Datum1=@Datum
  112668.     Fetch Next From Tab1  Into @SifPat, @SifKup, @SifObj, @Datum
  112669. End
  112670. Close Tab1
  112671. Deallocate Tab1
  112672.  
  112673. DELETE FROM #TmpDetal WHERE Poseten='X'
  112674.  
  112675. UPDATE #TmpDetal SET Sifra_Obj=NULL WHERE Sifra_Obj=0    --so ova se eliminiraat greskite kade se zapisalo 0 mesto null
  112676. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  112677. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  112678.          and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  112679.         and TR.Sifra_Obj is null 
  112680.         and #TmpDetal.Sifra_Obj is null  
  112681.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  112682.  
  112683. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  112684. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  112685.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup
  112686.         and #TmpDetal.Sifra_Obj is not null  --and #TmpDetal.Sifra_Obj <> 0
  112687.         and TR.Sifra_Obj = #TmpDetal.Sifra_Obj 
  112688.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  112689.  
  112690. update #TmpDetal set PoRuta = 'N' where PoRuta is null
  112691.  
  112692. --sega da gi dodademe tie sto se vo ruta, a ne se poseteni
  112693. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  112694. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  112695. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  112696. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  112697. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  112698. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Datum as char(11)) NOT IN 
  112699. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(dbo.fn_VratiDatum(Datum) as char(11)) FROM #TmpDetal) AND R.Sifra_Obj IS NULL
  112700.  
  112701. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  112702. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  112703. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  112704. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  112705. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  112706. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Sifra_Obj as char(3))+cast(R.Datum as char(11)) NOT IN 
  112707. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(Sifra_Obj as char(3))+cast(dbo.fn_VratiDatum(Datum) as char(11))FROM #TmpDetal WHERE Sifra_Obj IS NOT NULL) AND R.Sifra_Obj IS NOT NULL
  112708.  
  112709. --sega zbirni
  112710. UPDATE #TmpDetal SET Sifra_Obj=0 WHERE Sifra_Obj IS NULL    --zaradi group by
  112711.  
  112712. insert into #Tmp select TP.Sifra_Pat, 'KupRuta', count (*) from #TmpDetal TP
  112713. where TP.PoRuta = 'D' and TP.Poseten = 'D'
  112714. group by TP.Sifra_Pat
  112715.  
  112716. insert into #Tmp select TP.Sifra_Pat, 'BrPoseti', count (*) from #TmpDetal TP
  112717. where TP.Poseten = 'D'
  112718. group by TP.Sifra_Pat
  112719.  
  112720. insert into #Tmp select TP.Sifra_Pat, 'BrPosetiVonRuta', count (*) from #TmpDetal TP
  112721. where TP.PoRuta = 'N' and TP.Poseten = 'D'
  112722. group by TP.Sifra_Pat
  112723.  
  112724. /*CREATE TABLE #TmpRzl (Sifra_Pat smallint, Datum smalldatetime, Broj integer)  VAKA AKO TREBA RAZL.PROD.M. PO DEN
  112725. insert into #TmpRzl select  TP.Sifra_Pat,   dbo.fn_VratiDatum(TP.Datum), count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6)))
  112726. from #TmpDetal TP
  112727. where TP.Poseten = 'D'
  112728. group by TP.Sifra_Pat, dbo.fn_VratiDatum(TP.Datum)
  112729. insert into #Tmp select Sifra_Pat, 'BrRazlProdMesta', SUM(Broj) FROM #TmpRzl group by Sifra_Pat */
  112730. insert into #Tmp select TP.Sifra_Pat, 'BrRazlProdMesta', count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6))) from #TmpDetal TP
  112731. where TP.Poseten = 'D'
  112732. group by TP.Sifra_Pat
  112733.  
  112734. insert into #Tmp select null, 'VkBrRazlProdMesta', count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6))) from #TmpDetal TP
  112735. where TP.Poseten = 'D'
  112736.  
  112737.  
  112738. insert into #Tmp select TP.Sifra_Pat,  'SoBarKod', count (*) from #TmpDetal TP
  112739. where TP.SoBarKod = 'D'
  112740. group by TP.Sifra_Pat
  112741.  
  112742. CREATE TABLE #TmpDefKupVoRuti
  112743. (Sifra_pat    smallint,
  112744. Kolku         int)
  112745. INSERT INTO #TmpDefKupVoRuti SELECT Sifra_Pat, COUNT(*) FROM #TmpRuta GROUP BY Sifra_Pat
  112746.  
  112747. create table #TmpKraj
  112748. (Sifra_Pat smallint,
  112749. ImePat varchar(30),
  112750. KupVoRuta integer,
  112751. BrPoseti integer,
  112752. BrPosetiVonRuta integer,
  112753. BrRazlProdMesta integer,
  112754. BrBarkod integer,
  112755. DefKupVoRuta integer,
  112756. VkBrRazlProdMesta integer)
  112757.  
  112758. insert into #TmpKraj(Sifra_Pat) select distinct sifra_pat from #Tmp
  112759. update #TmpKraj set ImePat = P.ImePat from Patnici P where P.Sifra_Pat = #TmpKraj.Sifra_Pat
  112760. update #TmpKraj set KupVoRuta = T.Kolku from #Tmp T where T.Sto = 'KupRuta' and T.Sifra_Pat = #TmpKraj.Sifra_Pat  
  112761. update #TmpKraj set BrPoseti = T.Kolku from #Tmp T where T.Sto = 'BrPoseti' and T.Sifra_Pat = #TmpKraj.Sifra_Pat  
  112762. update #TmpKraj set BrPosetiVonRuta = T.Kolku from #Tmp T where T.Sto = 'BrPosetiVonRuta' and T.Sifra_Pat = #TmpKraj.Sifra_Pat 
  112763. update #TmpKraj set BrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'BrRazlProdMesta' and T.Sifra_Pat = #TmpKraj.Sifra_Pat  
  112764. update #TmpKraj set BrBarkod = T.Kolku from #Tmp T where T.Sto = 'SoBarKod' and T.Sifra_Pat = #TmpKraj.Sifra_Pat  
  112765. update #TmpKraj set DefKupVoRuta = T.Kolku from #TmpDefKupVoRuti T WHERE T.Sifra_Pat = #TmpKraj.Sifra_Pat 
  112766. update #TmpKraj set VkBrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'VkBrRazlProdMesta'
  112767. select * from #TmpKraj
  112768.  
  112769.  
  112770.  
  112771.  
  112772.  
  112773.  
  112774.  
  112775.  
  112776.  
  112777.  
  112778.  
  112779.  
  112780.  
  112781. Go
  112782. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_periodruti_ns]'))
  112783. drop procedure [dbo].[sp_pregl_periodruti_ns]
  112784.  
  112785. Go
  112786.  
  112787. create        Procedure sp_Pregl_PeriodRuti_NS
  112788.     @Sifra_Oe smallint = Null,
  112789.     @Sifra_pat smallint = null,
  112790.     @Sifra_GrPat char(6) = null,
  112791.     @DatumOd smalldatetime = null,
  112792.     @DatumDo smalldatetime = null,
  112793.     @Podelba1 smallint = null,
  112794.     @KFPod1 char(1) = null
  112795. As 
  112796.  
  112797. create table #Tmp
  112798.     (Sifra_Pat smallint,
  112799.      sto varchar(30),    
  112800.      Kolku integer
  112801.     )
  112802.  
  112803. CREATE TABLE #TmpRuta
  112804.     (Sifra_Pat smallint,
  112805.      DatumOd smalldatetime,
  112806.      DenOdNedela char(1),
  112807.      Sifra_Kup char(6),
  112808.      Sifra_Obj smallint,
  112809.      Datum smalldatetime
  112810.     )
  112811.  
  112812. CREATE TABLE #TmpPat (Sifra_Pat smallint)
  112813. If @Sifra_Pat is not null 
  112814.     INSERT INTO #TmpPat VALUES (@Sifra_Pat)
  112815. Else IF @Sifra_GrPat is not null
  112816.     INSERT INTO #TmpPat SELECT Sifra_Pat from Sgrpat where Sif_GrPat =@Sifra_GrPat
  112817. ELSE
  112818.     INSERT INTO #TmpPat SELECT Sifra_Pat from Patnici
  112819.  
  112820. CREATE TABLE #TmpPR 
  112821.  (Sifra_Pat smallint, 
  112822.  Datum smalldatetime )
  112823.  
  112824. Declare @Datum smalldatetime
  112825. Declare @Praznik as char(1)
  112826. SET @Datum=@DatumOd
  112827. WHILE @Datum<=@DatumDo         
  112828. BEGIN
  112829.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  112830.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj FROM RutiZaDatum WHERE Datum=@Datum AND Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  112831.  
  112832.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  112833.     IF @Praznik IS NULL
  112834.     BEGIN
  112835.     DELETE FROM #TmpPR
  112836.     INSERT INTO #TmpPR SELECT Sifra_Pat, MAX(Datum_Od) FROM RutiPlan 
  112837.     WHERE Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat) AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) GROUP BY Sifra_Pat
  112838.  
  112839.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  112840.     SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  112841.     WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  112842.     AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  112843.     END
  112844.  
  112845.     SET @Datum = DateAdd(day, 1, @Datum)
  112846. END 
  112847. declare @SSQL as varchar(5000)
  112848.  
  112849. create table #TmpDetal
  112850.     (
  112851.     Sifra_Pat smallint,
  112852.     ImePat varchar(30),
  112853.     Sifra_Kup char(6),
  112854.     ImeKup varchar(40),
  112855.     Sifra_Obj smallint,
  112856.     ImeObj varchar(40),
  112857.     PoRuta char(1),
  112858.     Poseten char(1),
  112859.     SoBarkod char(1),
  112860.     Datum smalldatetime,
  112861.     Stavki int,
  112862.     Vrednost decimal (16, 4)
  112863.     )
  112864.  
  112865. set @SSQL = 'insert into #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, Datum, Poseten, SoBarkod,
  112866.                     Stavki, Vrednost)
  112867.             select D.sifra_Pat, P.ImePat, D.Sifra_Kup, K.ImeKup, 
  112868.             case when D.Sifra_Obj <> 0 then D.Sifra_Obj else null end, KO.ImeObj, 
  112869.             A.Datum_Dok, ''D'', ''N'',
  112870.                 count(*) Stavki, sum(A.Kolic * A.Dokcena * (1 - A.Uces / 100)) Vrednost
  112871.             from Stavr A
  112872.             inner join Dokr D
  112873.                 on A.DokrId = D.DokrId
  112874.             inner join Patnici P 
  112875.                 on D.Sifra_Pat=P.Sifra_Pat
  112876.             inner join Komint K 
  112877.                 on K.Sifra_Kup = D.Sifra_Kup
  112878.             left outer join KObjekti KO 
  112879.                 on KO.Sifra_Obj = D.Sifra_Obj and KO.Sifra_Kup = D.Sifra_Kup
  112880.             where D.Sifra_Za in (''1'') and A.Datum_Dok >= '''+cast(@DatumOd as varchar(35))
  112881.                 + ''' and A.Datum_Dok <= '''+cast(@DatumDo as varchar(35))+''' '
  112882. If @Sifra_Oe is not null
  112883.     set @SSQL = @SSQL + ' and A.Sifra_Oe = '+cast(@Sifra_Oe as varchar(5))+' '
  112884. If @Sifra_Pat is not null
  112885.     set @SSQL = @SSQL + ' and D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  112886. If @Sifra_GrPat is not null
  112887.     set @SSQL = @SSQL + ' and D.Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '''+cast(@Sifra_GrPat as varchar(6))+''' ) '
  112888. If @Podelba1 Is Not NULL
  112889.     If @KFPod1 = 'D'
  112890.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or K.KDrugo1 Is Null) '
  112891.     Else
  112892.             Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '    
  112893. set @SSQL = @SSQL + ' group by A.Datum_Dok, D.Sifra_Pat, P.ImePat, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj '
  112894. set @SSQL = @SSQL + ' order by A.Datum_Dok, D.Sifra_Kup, D.Sifra_Obj '
  112895.  
  112896. exec(@SSQL)
  112897.  
  112898. UPDATE #TmpDetal 
  112899. SET Sifra_Obj=NULL 
  112900. WHERE Sifra_Obj=0    --so ova se eliminiraat greskite kade se zapisalo 0 mesto null
  112901.  
  112902. update #TmpDetal 
  112903. set PoRuta = 'D' 
  112904. from #tmpRuta TR
  112905. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  112906.          and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  112907.         and TR.Sifra_Obj is null 
  112908.         and #TmpDetal.Sifra_Obj is null  
  112909.         and TR.Datum = #TmpDetal.Datum
  112910.  
  112911. update #TmpDetal 
  112912. set PoRuta = 'D' 
  112913. from #tmpRuta TR
  112914. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  112915.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup
  112916.         and #TmpDetal.Sifra_Obj is not null  --and #TmpDetal.Sifra_Obj <> 0
  112917.         and TR.Sifra_Obj = #TmpDetal.Sifra_Obj 
  112918.         and TR.Datum = #TmpDetal.Datum
  112919.  
  112920. update #TmpDetal 
  112921. set PoRuta = 'N' 
  112922. where PoRuta is null
  112923.  
  112924. --sega da gi dodademe tie sto se vo ruta, a ne se poseteni
  112925. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  112926. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  112927. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  112928. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  112929. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  112930. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Datum as varchar(35)) NOT IN 
  112931. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(dbo.fn_VratiDatum(Datum) as varchar(35)) FROM #TmpDetal) AND R.Sifra_Obj IS NULL
  112932.  
  112933. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  112934. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  112935. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  112936. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  112937. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  112938. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Sifra_Obj as char(3))+cast(R.Datum as varchar(35)) NOT IN 
  112939. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(Sifra_Obj as char(3))+cast(dbo.fn_VratiDatum(Datum) as varchar(35))FROM #TmpDetal WHERE Sifra_Obj IS NOT NULL) AND R.Sifra_Obj IS NOT NULL
  112940.  
  112941. --sega zbirni
  112942. UPDATE #TmpDetal SET Sifra_Obj=0 WHERE Sifra_Obj IS NULL    --zaradi group by
  112943.  
  112944. insert into #Tmp select TP.Sifra_Pat, 'KupRuta', count (*) from #TmpDetal TP
  112945. where TP.PoRuta = 'D' and TP.Poseten = 'D'
  112946. group by TP.Sifra_Pat
  112947.  
  112948. insert into #Tmp select TP.Sifra_Pat, 'BrPoseti', count (*) from #TmpDetal TP
  112949. where TP.Poseten = 'D'
  112950. group by TP.Sifra_Pat
  112951.  
  112952. insert into #Tmp select TP.Sifra_Pat, 'BrPosetiVonRuta', count (*) from #TmpDetal TP
  112953. where TP.PoRuta = 'N' and TP.Poseten = 'D'
  112954. group by TP.Sifra_Pat
  112955.  
  112956. insert into #Tmp 
  112957. select TP.Sifra_Pat, 'BrRazlProdMesta', 
  112958.        count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6))) 
  112959. from #TmpDetal TP
  112960. where TP.Poseten = 'D'
  112961. group by TP.Sifra_Pat
  112962.  
  112963. insert into #Tmp 
  112964. select Null, 'VkBrRazlProdMesta', 
  112965.        count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6))) 
  112966. from #TmpDetal TP
  112967. where TP.Poseten = 'D'
  112968.  
  112969. CREATE TABLE #TmpDefKupVoRuti
  112970. ( Sifra_pat    smallint,
  112971.   Kolku         int
  112972. )
  112973. INSERT INTO #TmpDefKupVoRuti 
  112974.     SELECT Sifra_Pat, COUNT(*) 
  112975.     FROM #TmpRuta 
  112976.     GROUP BY Sifra_Pat
  112977.  
  112978. create table #TmpTempSum
  112979. ( Sifra_Pat smallint,
  112980.   Stavki int,
  112981.   Vrednost decimal (16, 4)
  112982. )
  112983. insert into #TmpTempSum
  112984. select Sifra_Pat, sum(T.Stavki), sum(T.Vrednost)
  112985. from #TmpDetal T
  112986. Group By T.Sifra_Pat
  112987.  
  112988. create table #TmpKraj
  112989. ( Sifra_Pat smallint,
  112990.   ImePat varchar(30),
  112991.   KupVoRuta integer,
  112992.   BrPoseti integer,
  112993.   BrPosetiVonRuta integer,
  112994.   BrRazlProdMesta integer,
  112995.   BrBarkod integer,
  112996.   DefKupVoRuta integer,
  112997.   VkBrRazlProdMesta integer,
  112998.   Stavki int,
  112999.   Vrednost decimal (16, 4)
  113000. )
  113001.  
  113002. insert into #TmpKraj(Sifra_Pat) 
  113003.     select distinct sifra_pat 
  113004.     from #Tmp
  113005.  
  113006. update #TmpKraj
  113007. set Stavki = T.Stavki, Vrednost = T.Vrednost
  113008. from #TmpTempSum T
  113009. where #TmpKraj.Sifra_Pat = T.Sifra_Pat
  113010.  
  113011. update #TmpKraj set ImePat = P.ImePat from Patnici P where P.Sifra_Pat = #TmpKraj.Sifra_Pat
  113012. update #TmpKraj set KupVoRuta = T.Kolku from #Tmp T where T.Sto = 'KupRuta' and T.Sifra_Pat = #TmpKraj.Sifra_Pat  
  113013. update #TmpKraj set BrPoseti = T.Kolku from #Tmp T where T.Sto = 'BrPoseti' and T.Sifra_Pat = #TmpKraj.Sifra_Pat  
  113014. update #TmpKraj set BrPosetiVonRuta = T.Kolku from #Tmp T where T.Sto = 'BrPosetiVonRuta' and T.Sifra_Pat = #TmpKraj.Sifra_Pat 
  113015. update #TmpKraj set BrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'BrRazlProdMesta' and T.Sifra_Pat = #TmpKraj.Sifra_Pat  
  113016. update #TmpKraj set DefKupVoRuta = T.Kolku from #TmpDefKupVoRuti T WHERE T.Sifra_Pat = #TmpKraj.Sifra_Pat 
  113017. update #TmpKraj set VkBrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'VkBrRazlProdMesta'
  113018.  
  113019. select * from #TmpKraj
  113020.  
  113021.  
  113022.  
  113023.  
  113024. Go
  113025. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_periodrutipodatum]'))
  113026. drop procedure [dbo].[sp_pregl_periodrutipodatum]
  113027.  
  113028. Go
  113029.  
  113030.  
  113031.  
  113032. CREATE         Procedure sp_Pregl_PeriodRutiPoDatum
  113033.     @Sifra_pat smallint = null,
  113034.     @Sifra_GrPat char(6) = null,
  113035.     @DatumOd smalldatetime = null,
  113036.     @DatumDo smalldatetime = null,
  113037.     @Podelba1 smallint = null,
  113038.     @KFPod1 char(1) = null
  113039. As 
  113040. create table #Tmp
  113041.     (Datum smalldatetime,
  113042.      sto varchar(30),    
  113043.      Kolku integer
  113044.     )
  113045. CREATE TABLE #TmpRuta
  113046.     (Sifra_Pat smallint,
  113047.      DatumOd smalldatetime,
  113048.      DenOdNedela char(1),
  113049.      Sifra_Kup char(6),
  113050.      Sifra_Obj smallint,
  113051.      Datum smalldatetime )
  113052.  
  113053. CREATE TABLE #TmpPat (Sifra_Pat smallint)
  113054. If @Sifra_Pat is not null 
  113055.     INSERT INTO #TmpPat VALUES (@Sifra_Pat)
  113056. Else IF @Sifra_GrPat is not null
  113057.     INSERT INTO #TmpPat SELECT Sifra_Pat from Sgrpat where Sif_GrPat =@Sifra_GrPat
  113058. ELSE
  113059.     INSERT INTO #TmpPat SELECT Sifra_Pat from Patnici
  113060.  
  113061. CREATE TABLE #TmpPR 
  113062. (Sifra_Pat smallint, 
  113063. Datum smalldatetime)
  113064.  
  113065. Declare @Datum smalldatetime
  113066. Declare @Praznik as char(1)
  113067. SET @Datum=@DatumOd
  113068. WHILE @Datum<=@DatumDo         
  113069. BEGIN
  113070.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  113071.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj FROM RutiZaDatum WHERE Datum=@Datum AND Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  113072.  
  113073.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  113074.     IF @Praznik IS NULL
  113075.     BEGIN
  113076.     DELETE FROM #TmpPR
  113077.     INSERT INTO #TmpPR SELECT Sifra_Pat, MAX(Datum_Od) FROM RutiPlan 
  113078.     WHERE Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat) AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) GROUP BY Sifra_Pat
  113079.  
  113080.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  113081.     SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  113082.     WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  113083.     AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  113084.     END
  113085.  
  113086.     SET @Datum = DateAdd(day, 1, @Datum)
  113087. END 
  113088. declare @SSQL as varchar(5000)
  113089.  
  113090. create table #TmpDetal
  113091.     (
  113092.     Sifra_Pat smallint,
  113093.     ImePat varchar(30),
  113094.     Sifra_Kup char(6),
  113095.     ImeKup varchar(40),
  113096.     Sifra_Obj smallint,
  113097.     ImeObj varchar(40),
  113098.     PoRuta char(1),
  113099.     Poseten char(1),
  113100.     SoBarkod char(1),
  113101.     Datum smalldatetime
  113102.     )
  113103. set @SSQL = 'insert into #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, Datum, Poseten, SoBarkod)
  113104.             select A.sifra_Oe, P.ImePat, A.Sifra_Kup, K.ImeKup, case when A.Sifra_Obj <> 0 then A.Sifra_Obj end, KO.ImeObj, A.DatumVreme,''D'', A.SoBarKod
  113105.             from Akcija A
  113106.             inner join Patnici P on A.Sifra_oe=P.Sifra_Pat
  113107.             inner join Komint K on K.Sifra_Kup = A.Sifra_Kup
  113108.             left outer join KObjekti KO on KO.Sifra_Obj = A.Sifra_Obj and KO.Sifra_Kup = A.Sifra_Kup
  113109.             where dbo.fn_VratiDatum(DatumVreme) >= '''+cast(@DatumOd as varchar(35))+''' and dbo.fn_VratiDatum(DatumVreme) <= '''+cast(@DatumDo as varchar(35))+''' '
  113110. If @Sifra_Pat is not null
  113111.     set @SSQL = @SSQL + ' and P.Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  113112. If @Sifra_GrPat is not null
  113113.     set @SSQL = @SSQL + ' and P.Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '''+cast(@Sifra_GrPat as varchar(6))+''' ) '
  113114. If @Podelba1 Is Not NULL
  113115.     If @KFPod1 = 'D'
  113116.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or K.KDrugo1 Is Null) '
  113117.     Else
  113118.         Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '    
  113119. set @SSQL = @SSQL + ' order by A.DatumVreme, A.Sifra_Kup, A.Sifra_Obj '
  113120. exec(@SSQL)
  113121.  
  113122. --sega da gi izbriseme duplite vneseni vo rok od nekolku minuti
  113123. Declare @SifKup char(6), @SifObj smallint, @SifPat smallint, @SifKup1 char(6), @SifObj1 smallint, @SifPat1 smallint, @Datum1 smalldatetime
  113124. SET @SifKup1=''
  113125. SET @SifObj1=0
  113126. SET @SifPat1=0
  113127. SET @Datum1=GETDATE()
  113128. Declare Tab1 Cursor Fast_Forward For 
  113129.     Select  Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum From #TmpDetal ORDER BY Sifra_Pat, Sifra_Kup, Sifra_Obj, Datum
  113130. Open Tab1
  113131. Fetch Next From Tab1 Into @SifPat, @SifKup, @SifObj, @Datum
  113132. While @@Fetch_Status = 0
  113133. Begin            
  113134.     IF @SifPat1=@SifPat AND @SifKup1=@SifKup AND dbo.fn_VratiDatum(@Datum1)=dbo.fn_VratiDatum(@Datum)
  113135.     BEGIN        
  113136.         IF (@SifObj IS NULL AND @SifObj1 IS NULL) OR (@SifObj IS NOT NULL AND @SifObj1 IS NOT NULL AND @SifObj=@SifObj1)
  113137.             Update #TmpDetal SET Poseten='X' WHERE Sifra_Pat=@SifPat AND Sifra_Kup=@SifKup AND Datum=@Datum
  113138.     END
  113139.     SET @SifPat1=@SifPat
  113140.     SET @SifKup1=@SifKup
  113141.     SET @SifObj1=@SifObj
  113142.     SET @Datum1=@Datum
  113143.     Fetch Next From Tab1  Into @SifPat, @SifKup, @SifObj, @Datum
  113144. End
  113145. Close Tab1
  113146. Deallocate Tab1
  113147.  
  113148. DELETE FROM #TmpDetal WHERE Poseten='X'
  113149.  
  113150. UPDATE #TmpDetal SET Sifra_Obj=NULL WHERE Sifra_Obj=0    --so ova se eliminiraat greskite kade se zapisalo 0 mesto null
  113151. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  113152. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  113153.          and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  113154.         and TR.Sifra_Obj is null 
  113155.         and #TmpDetal.Sifra_Obj is null  
  113156.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  113157.  
  113158. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  113159. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  113160.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup
  113161.         and #TmpDetal.Sifra_Obj is not null  --and #TmpDetal.Sifra_Obj <> 0
  113162.         and TR.Sifra_Obj = #TmpDetal.Sifra_Obj 
  113163.         and TR.Datum = dbo.fn_VratiDatum(#TmpDetal.Datum)
  113164.  
  113165. update #TmpDetal set PoRuta = 'N' where PoRuta is null
  113166.  
  113167. --sega da gi dodademe tie sto se vo ruta, a ne se poseteni
  113168. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  113169. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  113170. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  113171. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  113172. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  113173. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Datum as char(11)) NOT IN 
  113174. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(dbo.fn_VratiDatum(Datum) as char(11)) FROM #TmpDetal) AND R.Sifra_Obj IS NULL
  113175.  
  113176. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  113177. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  113178. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  113179. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  113180. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  113181. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Sifra_Obj as char(3))+cast(R.Datum as char(11)) NOT IN 
  113182. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(Sifra_Obj as char(3))+cast(dbo.fn_VratiDatum(Datum) as char(11))FROM #TmpDetal WHERE Sifra_Obj IS NOT NULL) AND R.Sifra_Obj IS NOT NULL
  113183.  
  113184. --sega zbirni
  113185. UPDATE #TmpDetal SET Sifra_Obj=0 WHERE Sifra_Obj IS NULL    --zaradi group by
  113186.  
  113187. insert into #Tmp select dbo.fn_VratiDatum(TP.Datum), 'KupRuta', count (*) from #TmpDetal TP
  113188. where TP.PoRuta = 'D' and TP.Poseten = 'D'
  113189. group by dbo.fn_VratiDatum(TP.Datum)
  113190.  
  113191. insert into #Tmp select dbo.fn_VratiDatum(TP.Datum), 'BrPoseti', count (*) from #TmpDetal TP
  113192. where TP.Poseten = 'D'
  113193. group by dbo.fn_VratiDatum(TP.Datum)
  113194.  
  113195. insert into #Tmp select dbo.fn_VratiDatum(TP.Datum), 'BrPosetiVonRuta', count (*) from #TmpDetal TP
  113196. where TP.PoRuta = 'N' and TP.Poseten = 'D'
  113197. group by dbo.fn_VratiDatum(TP.Datum)
  113198.  
  113199. insert into #Tmp select  dbo.fn_VratiDatum(TP.Datum),  'BrRazlProdMesta', count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6)))
  113200. from #TmpDetal TP
  113201. where TP.Poseten = 'D'
  113202. group by dbo.fn_VratiDatum(TP.Datum)
  113203.  
  113204. insert into #Tmp select dbo.fn_VratiDatum(TP.Datum),  'SoBarKod', count (*) from #TmpDetal TP
  113205. where TP.SoBarKod = 'D'
  113206. group by dbo.fn_VratiDatum(TP.Datum)
  113207.  
  113208. insert into #Tmp select  null,  'VkBrRazlProdMesta', count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6)))
  113209. from #TmpDetal TP
  113210. where TP.Poseten = 'D'
  113211.  
  113212. CREATE TABLE #TmpDefKupVoRuti
  113213. (Datum    smalldatetime,
  113214. Kolku     int)
  113215. INSERT INTO #TmpDefKupVoRuti SELECT Datum, COUNT(*) FROM #TmpRuta GROUP BY Datum
  113216.  
  113217. create table #TmpKraj
  113218. (Datum smalldatetime,
  113219. KupVoRuta integer,
  113220. BrPoseti integer,
  113221. BrPosetiVonRuta integer,
  113222. BrRazlProdMesta integer,
  113223. BrBarkod integer,
  113224. DefKupVoRuta integer,
  113225. VkBrRazlProdMesta integer)
  113226.  
  113227. insert into #TmpKraj(Datum) select distinct datum from #Tmp
  113228. update #TmpKraj set KupVoRuta = T.Kolku from #Tmp T where T.Sto = 'KupRuta' and T.datum = #TmpKraj.datum  
  113229. update #TmpKraj set BrPoseti = T.Kolku from #Tmp T where T.Sto = 'BrPoseti' and T.datum = #TmpKraj.datum 
  113230. update #TmpKraj set BrPosetiVonRuta = T.Kolku from #Tmp T where T.Sto = 'BrPosetiVonRuta' and T.datum = #TmpKraj.datum
  113231. update #TmpKraj set BrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'BrRazlProdMesta' and T.datum = #TmpKraj.datum
  113232. update #TmpKraj set BrBarkod = T.Kolku from #Tmp T where T.Sto = 'SoBarKod' and T.datum = #TmpKraj.datum 
  113233. UPDATE #TmpKraj SET DefKupVoRuta = T.Kolku FROM #TmpDefKupVoRuti T WHERE T.datum = #TmpKraj.datum  
  113234. update #TmpKraj SET VkBrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'VkBrRazlProdMesta'
  113235. select * from #TmpKraj
  113236.  
  113237.  
  113238.  
  113239.  
  113240.  
  113241.  
  113242.  
  113243.  
  113244.  
  113245.  
  113246.  
  113247.  
  113248. Go
  113249. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_periodrutipodatum_ns]'))
  113250. drop procedure [dbo].[sp_pregl_periodrutipodatum_ns]
  113251.  
  113252. Go
  113253.  
  113254. CREATE  Procedure sp_Pregl_PeriodRutiPoDatum_NS
  113255.     @Sifra_Oe smallint = null,
  113256.     @Sifra_pat smallint = null,
  113257.     @Sifra_GrPat char(6) = null,
  113258.     @DatumOd smalldatetime = null,
  113259.     @DatumDo smalldatetime = null,
  113260.     @Podelba1 smallint = null,
  113261.     @KFPod1 char(1) = null
  113262. As 
  113263. create table #Tmp
  113264.     (Datum smalldatetime,
  113265.      Sto varchar(30),    
  113266.      Kolku integer
  113267.     )
  113268.  
  113269. CREATE TABLE #TmpRuta
  113270.     (Sifra_Pat smallint,
  113271.      DatumOd smalldatetime,
  113272.      DenOdNedela char(1),
  113273.      Sifra_Kup char(6),
  113274.      Sifra_Obj smallint,
  113275.      Datum smalldatetime )
  113276.  
  113277. CREATE TABLE #TmpPat (Sifra_Pat smallint)
  113278. If @Sifra_Pat is not null 
  113279.     INSERT INTO #TmpPat VALUES (@Sifra_Pat)
  113280. Else IF @Sifra_GrPat is not null
  113281.     INSERT INTO #TmpPat SELECT Sifra_Pat from Sgrpat where Sif_GrPat =@Sifra_GrPat
  113282. ELSE
  113283.     INSERT INTO #TmpPat SELECT Sifra_Pat from Patnici
  113284.  
  113285. CREATE TABLE #TmpPR 
  113286. ( Sifra_Pat smallint, 
  113287.   Datum smalldatetime )
  113288.  
  113289. Declare @Datum smalldatetime
  113290. Declare @Praznik as char(1)
  113291. SET @Datum=@DatumOd
  113292. WHILE @Datum<=@DatumDo         
  113293. BEGIN
  113294.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  113295.     SELECT Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj FROM RutiZaDatum WHERE Datum=@Datum AND Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  113296.  
  113297.     SELECT @Praznik=Sto FROM RabKalendar WHERE Datum=@Datum AND Sto='P'
  113298.     IF @Praznik IS NULL
  113299.     BEGIN
  113300.     DELETE FROM #TmpPR
  113301.     INSERT INTO #TmpPR SELECT Sifra_Pat, MAX(Datum_Od) FROM RutiPlan 
  113302.     WHERE Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat) AND Datum_Od<=@Datum AND DenOdNedela=dbo.fn_DenOdNedela(@Datum) GROUP BY Sifra_Pat
  113303.  
  113304.     INSERT INTO #TmpRuta(Sifra_Pat, Datum, Sifra_Kup, Sifra_Obj)
  113305.     SELECT R.Sifra_Pat, @Datum, R.Sifra_Kup, R.Sifra_Obj FROM RutiPlan R INNER JOIN #TmpPR T ON R.Sifra_Pat=T.Sifra_Pat AND R.Datum_Od=T.Datum
  113306.     WHERE R.Sifra_Pat NOT IN (SELECT Sifra_Pat FROM RutiZaDatum WHERE Datum=@Datum)
  113307.     AND dbo.fn_DenOdNedela(@Datum)=R.DenOdNedela AND R.Sifra_Pat IN (SELECT Sifra_Pat FROM #TmpPat)
  113308.     END
  113309.  
  113310.     SET @Datum = DateAdd(day, 1, @Datum)
  113311. END 
  113312. declare @SSQL as varchar(5000)
  113313.  
  113314. create table #TmpDetal
  113315.     (
  113316.     Sifra_Pat smallint,
  113317.     ImePat varchar(30),
  113318.     Sifra_Kup char(6),
  113319.     ImeKup varchar(40),
  113320.     Sifra_Obj smallint,
  113321.     ImeObj varchar(40),
  113322.     PoRuta char(1),
  113323.     Poseten char(1),
  113324.     SoBarkod char(1),
  113325.     Datum smalldatetime,
  113326.     Stavki int,
  113327.     Vrednost decimal (16, 4)
  113328.     )
  113329.  
  113330. set @SSQL = 'insert into #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, Datum, Poseten, SoBarkod,
  113331.                     Stavki, Vrednost)
  113332.             select D.sifra_Pat, P.ImePat, D.Sifra_Kup, 
  113333.             K.ImeKup, case when D.Sifra_Obj <> 0 then D.Sifra_Obj else null end, 
  113334.             KO.ImeObj, A.Datum_Dok,''D'', ''N'',
  113335.                 count(*) Stavki, sum(A.Kolic * A.Dokcena * (1 - A.Uces / 100)) Vrednost
  113336.             from Stavr A
  113337.             inner join Dokr D
  113338.                 on A.DokrId = D.DokrId
  113339.             inner join Patnici P 
  113340.                 on D.Sifra_Pat=P.Sifra_Pat
  113341.             inner join Komint K 
  113342.                 on K.Sifra_Kup = D.Sifra_Kup
  113343.             left outer join KObjekti KO 
  113344.                 on KO.Sifra_Obj = D.Sifra_Obj and KO.Sifra_Kup = D.Sifra_Kup
  113345.             where D.Sifra_Za in (''1'') and A.Datum_Dok >= '''+cast(@DatumOd as varchar(35))
  113346.                 + ''' and A.Datum_Dok <= '''+cast(@DatumDo as varchar(35))+''' '
  113347.  
  113348. If @Sifra_Oe is not null
  113349.     set @SSQL = @SSQL + ' and A.Sifra_Oe = '+cast(@Sifra_Oe as varchar(5))+' '
  113350. If @Sifra_Pat is not null
  113351.     set @SSQL = @SSQL + ' and D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(15))+' '
  113352. If @Sifra_GrPat is not null
  113353.     set @SSQL = @SSQL + ' and D.Sifra_Pat in (select sifra_Pat from Sgrpat where Sif_GrPat = '''+cast(@Sifra_GrPat as varchar(6))+''' ) '
  113354. If @Podelba1 Is Not NULL
  113355.     If @KFPod1 = 'D'
  113356.         Set @SSQL = @SSQL + 'And (K.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or K.KDrugo1 Is Null) '
  113357.     Else
  113358.         Set @SSQL = @SSQL + 'And K.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '    
  113359. set @SSQL = @SSQL + ' group by A.Datum_Dok, D.Sifra_Pat, P.ImePat, D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, KO.ImeObj '
  113360. set @SSQL = @SSQL + ' order by A.Datum_Dok, D.Sifra_Kup, D.Sifra_Obj '
  113361.  
  113362. exec(@SSQL)
  113363.  
  113364. UPDATE #TmpDetal 
  113365. SET Sifra_Obj=NULL 
  113366. WHERE Sifra_Obj=0    --so ova se eliminiraat greskite kade se zapisalo 0 mesto null
  113367.  
  113368. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  113369. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  113370.          and TR.Sifra_Kup = #TmpDetal.Sifra_Kup 
  113371.         and TR.Sifra_Obj is null 
  113372.         and #TmpDetal.Sifra_Obj is null  
  113373.         and TR.Datum = #TmpDetal.Datum
  113374.  
  113375. update #TmpDetal set PoRuta = 'D' from #tmpRuta TR
  113376. where TR.Sifra_Pat = #TmpDetal.Sifra_Pat
  113377.         and TR.Sifra_Kup = #TmpDetal.Sifra_Kup
  113378.         and #TmpDetal.Sifra_Obj is not null  --and #TmpDetal.Sifra_Obj <> 0
  113379.         and TR.Sifra_Obj = #TmpDetal.Sifra_Obj 
  113380.         and TR.Datum = #TmpDetal.Datum
  113381.  
  113382. update #TmpDetal set PoRuta = 'N' where PoRuta is null
  113383.  
  113384. --sega da gi dodademe tie sto se vo ruta, a ne se poseteni
  113385. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  113386. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  113387. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  113388. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  113389. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  113390. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Datum as char(11)) NOT IN 
  113391. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(Datum as varchar(35)) 
  113392.  FROM #TmpDetal) AND R.Sifra_Obj IS NULL
  113393.  
  113394. INSERT INTO #TmpDetal (Sifra_Pat, ImePat, Sifra_Kup, ImeKup, Sifra_Obj, ImeObj, PoRuta,    Poseten, SoBarkod, Datum)
  113395. SELECT R.Sifra_Pat, P.ImePat, R.Sifra_Kup, K.ImeKup, R.Sifra_Obj, KO.ImeObj, 'D', 'N', '', R.Datum
  113396. FROM #TmpRuta R INNER JOIN Patnici P ON R.Sifra_Pat=P.Sifra_Pat
  113397. INNER JOIN Komint K on K.Sifra_Kup = R.Sifra_Kup
  113398. LEFT OUTER JOIN KObjekti KO on KO.Sifra_Obj = R.Sifra_Obj and KO.Sifra_Kup = R.Sifra_Kup
  113399. WHERE Cast(R.Sifra_Pat as char(3))+R.Sifra_Kup+cast(R.Sifra_Obj as char(3))+cast(R.Datum as char(11)) NOT IN 
  113400. (SELECT Cast(Sifra_Pat as char(3))+Sifra_Kup+cast(Sifra_Obj as char(3))+cast(Datum as varchar(35))
  113401.  FROM #TmpDetal WHERE Sifra_Obj IS NOT NULL) AND R.Sifra_Obj IS NOT NULL
  113402.  
  113403. --sega zbirni
  113404. UPDATE #TmpDetal 
  113405. SET Sifra_Obj=0 
  113406. WHERE Sifra_Obj IS NULL    --zaradi group by
  113407.  
  113408. insert into #Tmp 
  113409.     select TP.Datum, 'KupRuta', count (*) from #TmpDetal TP
  113410.     where TP.PoRuta = 'D' and TP.Poseten = 'D'
  113411.     group by TP.Datum
  113412.  
  113413. insert into #Tmp 
  113414.     select TP.Datum, 'BrPoseti', count (*) 
  113415.     from #TmpDetal TP
  113416.     where TP.Poseten = 'D'
  113417.     group by TP.Datum
  113418.  
  113419. insert into #Tmp 
  113420.     select TP.Datum, 'BrPosetiVonRuta', count (*) 
  113421.     from #TmpDetal TP
  113422.     where TP.PoRuta = 'N' and TP.Poseten = 'D'
  113423.     group by TP.Datum
  113424.  
  113425. insert into #Tmp 
  113426.     select TP.Datum,  'BrRazlProdMesta', count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6)))
  113427.     from #TmpDetal TP
  113428.     where TP.Poseten = 'D'
  113429.     group by TP.Datum
  113430.  
  113431. insert into #Tmp 
  113432.     select  null,  'VkBrRazlProdMesta', count (distinct cast(TP.sifra_kup as char(6)) + cast(TP.sifra_obj as char(6)))
  113433.     from #TmpDetal TP
  113434.     where TP.Poseten = 'D'
  113435.  
  113436. CREATE TABLE #TmpDefKupVoRuti
  113437. ( Datum    smalldatetime,
  113438.   Kolku     int
  113439. )
  113440.  
  113441. INSERT INTO #TmpDefKupVoRuti 
  113442.     SELECT Datum, COUNT(*) 
  113443.     FROM #TmpRuta 
  113444.     GROUP BY Datum
  113445.  
  113446. create table #TmpTempSum
  113447. ( Datum smalldatetime,
  113448.   Stavki int,
  113449.   Vrednost decimal (16, 4)
  113450. )
  113451.  
  113452. insert into #TmpTempSum
  113453. select T.Datum, sum(T.Stavki), sum(T.Vrednost)
  113454. from #TmpDetal T
  113455. Group By T.Datum
  113456.  
  113457. create table #TmpKraj
  113458. ( Datum smalldatetime,
  113459.   KupVoRuta integer,
  113460.   BrPoseti integer,
  113461.   BrPosetiVonRuta integer,
  113462.   BrRazlProdMesta integer,
  113463.   BrBarkod integer,
  113464.   DefKupVoRuta integer,
  113465.   VkBrRazlProdMesta integer,
  113466.   Stavki int,
  113467.   Vrednost decimal (16, 4)
  113468. )
  113469.  
  113470. insert into #TmpKraj(Datum) 
  113471.     select distinct Datum 
  113472.     from #Tmp
  113473.  
  113474. update #TmpKraj
  113475. set Stavki = T.Stavki, Vrednost = T.Vrednost
  113476. from #TmpTempSum T
  113477. where #TmpKraj.Datum = T.Datum
  113478.  
  113479. update #TmpKraj set KupVoRuta = T.Kolku from #Tmp T where T.Sto = 'KupRuta' and T.datum = #TmpKraj.datum  
  113480. update #TmpKraj set BrPoseti = T.Kolku from #Tmp T where T.Sto = 'BrPoseti' and T.datum = #TmpKraj.datum 
  113481. update #TmpKraj set BrPosetiVonRuta = T.Kolku from #Tmp T where T.Sto = 'BrPosetiVonRuta' and T.datum = #TmpKraj.datum
  113482. update #TmpKraj set BrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'BrRazlProdMesta' and T.datum = #TmpKraj.datum
  113483. UPDATE #TmpKraj SET DefKupVoRuta = T.Kolku FROM #TmpDefKupVoRuti T WHERE T.Datum = #TmpKraj.Datum
  113484. update #TmpKraj SET VkBrRazlProdMesta = T.Kolku from #Tmp T where T.Sto = 'VkBrRazlProdMesta'
  113485.  
  113486. select * from #TmpKraj
  113487.  
  113488.  
  113489.  
  113490. Go
  113491. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_podgr]'))
  113492. drop procedure [dbo].[sp_pregl_podgr]
  113493.  
  113494. Go
  113495.  
  113496.  
  113497. CREATE   PROCEDURE sp_Pregl_Podgr
  113498.     @Tabela VARCHAR(20),
  113499.         @Nisto_Proba VARCHAR(20)=null
  113500. AS
  113501.   Set @Tabela=Upper(@Tabela)
  113502.   If @Tabela='PODGRUPI'
  113503.       Select P.*, G.Ime_Gr
  113504.       From Podgrupi P
  113505.       Inner Join Grupi G ON P.Sifra_Gr=G.Sifra_Gr
  113506.       Order By P.Sifra_Podg
  113507. If @@ROWCOUNT=0
  113508.       RETURN 77000
  113509.    Else
  113510.       RETURN @@ERROR
  113511.  
  113512.  
  113513.  
  113514.  
  113515. Go
  113516. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_rabnal_autoauto]'))
  113517. drop procedure [dbo].[sp_pregl_rabnal_autoauto]
  113518.  
  113519. Go
  113520.  
  113521. create PROCEDURE sp_Pregl_RabNal_AutoAuto
  113522.     @Sifra_OE        smallint,
  113523.     @DatumOtv_Od    smalldatetime,
  113524.     @DatumOtv_Do    smalldatetime,
  113525.     @Otv_Zatv        char(1) = 'O',    -- O - Otvoreni    Z - Zatvoreni
  113526.     @PodGarancija    char(1) = 'S',    -- D - Pod Garangija,    N - Drugi,      S - Site
  113527.     @Sifra_Kup        char(6) = Null, 
  113528.      @Sifra_Rab         int = null,
  113529.     @Sifra_Art         varchar(20) = null,
  113530.      @Sifra_Rab_2     int = null,
  113531.     @SamoZavrseniNezatv    char(1) = Null,
  113532.     @Tip_Operacija    char(1) = Null
  113533.  
  113534.  AS
  113535.  
  113536.     Declare @SSQL as varchar(4000)
  113537.     Declare @SSQLUsl as varchar(4000)
  113538.     Set @SSQLUsl = ' '
  113539.  
  113540.     If @Sifra_OE Is Not Null
  113541.         Set @SSQLUsl = @SSQLUsl +  ' And R.Sifra_OeRab = ' + cast(@Sifra_OE as Varchar(10)) +  ' '
  113542.     If @DatumOtv_Od is Not Null 
  113543.         Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Otv >= ''' + cast(@DatumOtv_Od as Varchar(35))  + ''' '
  113544.     If @DatumOtv_Do is Not Null 
  113545.         Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Otv <= ''' + cast(@DatumOtv_Do as Varchar(35))  + ''' '
  113546.     If @Sifra_Kup is Not Null 
  113547.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Kup= ' + @Sifra_Kup  + ' '
  113548.        If @Sifra_Rab is Not Null 
  113549.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab= ' + cast(@Sifra_Rab as varchar(8))  + ' '
  113550.        If @Sifra_Rab_2 is Not Null 
  113551.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab_2 = ' + cast(@Sifra_Rab_2 as varchar(8))  + ' '
  113552.  
  113553.     if @SamoZavrseniNezatv = 'D'
  113554.         Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Zatv Is Null and 
  113555.             (DatePart(hour, R.Datum_Kr_Proiz) <> 12 and DatePart(minute, R.Datum_Kr_Proiz) <> 0)'
  113556.     else
  113557.         begin
  113558.             If @Otv_Zatv = 'O'
  113559.                 Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Zatv Is Null '
  113560.             Else If @Otv_Zatv = 'Z'
  113561.                 Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Zatv Is Not Null '
  113562.         end
  113563.  
  113564.     If @PodGarancija = 'D'
  113565.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''D'' '
  113566.     Else If @PodGarancija = 'N'
  113567.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''N'' '
  113568.  
  113569.     if @Tip_Operacija <> '' and @Tip_Operacija is not null
  113570.         Set @SSQLUsl = @SSQLUsl + ' And R.Tip_Operacija = ''' + @Tip_Operacija + ''' '
  113571.  
  113572.     Create Table #Izn
  113573.     (
  113574.      RabNalID    int,
  113575.      Toc200    decimal(18,6)
  113576.     )
  113577.  
  113578.     Set @SSQL = 'Select DRN.RabNalID, D.Toc200
  113579.         From Rabnal R
  113580.         Left Outer Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  113581.         Left Outer Join Dokr D On D.DokrID=DRN.DokrId 
  113582.         Where DRN.Tip_RabStav = ''T'' ' 
  113583.  
  113584.     Insert Into #Izn Exec(@SSQL+@SSQLUsl)
  113585.  
  113586.     Set @SSQL = 'Select R.Sifra_OeRab, R.Broj_RabN, R.Datum_Otv, R.Datum_Zatv, R.Sifra_Proiz Sifra_Art, K.ImeArt, R.Garancija, 
  113587.             D.Opis, R.Opis Opis_RabN, Izn.Toc200, R.Sifra_Kup, Kup.ImeKup, RA.ImeRab, RA2.ImeRab ImeRab_2,
  113588.             R.Sifra_Rab, R.Sifra_Rab_2, R.Datum_Poc_Serv, R.Datum_Kr_Proiz, R.Datum_Izdav,
  113589.             DATEDIFF (hour, R.Datum_Poc_Serv, R.Datum_Kr_Proiz) SatiServis, R.Tip_Operacija,
  113590.             Voz.Registracija, R.PonudaBr, Kup.Telefon, R.ImeKlient
  113591.         From Rabnal R
  113592.         Left Outer Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  113593.         Left Outer Join Dokr D On D.DokrID=DRN.DokrId 
  113594.         Left Outer Join #Izn Izn On Izn.RabNalID=DRN.RabNalID 
  113595.         Left Outer Join Komint Kup On Kup.Sifra_Kup = R.Sifra_Kup
  113596.         Left Outer Join Katart K On R.Sifra_Proiz = K.Sifra_art
  113597.         Left Outer Join Vozila Voz On Voz.Sifra_art = K.Sifra_art
  113598.         Left outer join Rabotnik RA on R.Sifra_Rab= RA.Sifra_Rab
  113599.         Left outer join Rabotnik RA2 on R.Sifra_Rab_2 = RA2.Sifra_Rab
  113600.         Where DRN.Tip_RabStav = ''T'' ' 
  113601.  
  113602.     If @Sifra_art is not null
  113603.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Proiz= '''+cast(@Sifra_art as varchar(20))+''' '
  113604.  
  113605.     Exec(@SSQL+@SSQLUsl)
  113606.  
  113607.  
  113608. Go
  113609. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_rabnal_servis]'))
  113610. drop procedure [dbo].[sp_pregl_rabnal_servis]
  113611.  
  113612. Go
  113613.  
  113614. CREATE PROCEDURE [dbo].[sp_Pregl_RabNal_Servis]
  113615.     @Sifra_OE        smallint,
  113616.     @DatumOtv_Od        smalldatetime,
  113617.     @DatumOtv_Do        smalldatetime,
  113618.     @Otv_Zatv        char(1) = 'O',    -- O - Otvoreni    Z - Zatvoreni
  113619.     @PodGarancija        char(1) = 'S',    -- D - Pod Garangija,    N - Drugi,      S - Site
  113620.     @Sifra_Kup        char(6) = Null, 
  113621.      @Sifra_Rab         int = null,
  113622.     @Sifra_Art         varchar(20) = null,
  113623.      @Sifra_Rab_2         int = null,
  113624.     @SamoZavrseniNezatv    char(1) = Null,
  113625.     @Tip_Operacija        char(1) = Null,
  113626.     @Sifra_Art_RabRaka    varchar(20) = Null
  113627.  
  113628.  AS
  113629.  
  113630.     Declare @SSQL as varchar(4000)
  113631.     Declare @SSQLUsl as varchar(4000)
  113632.     Set @SSQLUsl = ' '
  113633.  
  113634.     If @Sifra_OE Is Not Null
  113635.         Set @SSQLUsl = @SSQLUsl +  ' And R.Sifra_OeRab = ' + cast(@Sifra_OE as Varchar(10)) +  ' '
  113636.     If @DatumOtv_Od is Not Null 
  113637.         Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Otv >= ''' + cast(@DatumOtv_Od as Varchar(35))  + ''' '
  113638.     If @DatumOtv_Do is Not Null 
  113639.         Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Otv <= ''' + cast(@DatumOtv_Do as Varchar(35))  + ''' '
  113640.     If @Sifra_Kup is Not Null 
  113641.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Kup= ' + @Sifra_Kup  + ' '
  113642.        If @Sifra_Rab is Not Null 
  113643.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab= ' + cast(@Sifra_Rab as varchar(8))  + ' '
  113644.        If @Sifra_Rab_2 is Not Null 
  113645.         Set @SSQLUsl = @SSQLUsl + ' And R.Sifra_Rab_2 = ' + cast(@Sifra_Rab_2 as varchar(8))  + ' '
  113646.  
  113647.     if @SamoZavrseniNezatv = 'D'
  113648.         Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Zatv Is Null and 
  113649.             (DatePart(hour, R.Datum_Kr_Proiz) <> 12 and DatePart(minute, R.Datum_Kr_Proiz) <> 0)'
  113650.     else
  113651.         begin
  113652.             If @Otv_Zatv = 'O'
  113653.                 Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Zatv Is Null '
  113654.             Else If @Otv_Zatv = 'Z'
  113655.                 Set @SSQLUsl = @SSQLUsl + ' And R.Datum_Zatv Is Not Null '
  113656.         end
  113657.  
  113658.     If @PodGarancija = 'D'
  113659.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''D'' '
  113660.     Else If @PodGarancija = 'N'
  113661.         Set @SSQLUsl = @SSQLUsl + ' And R.Garancija= ''N'' '
  113662.  
  113663.     if @Tip_Operacija <> '' and @Tip_Operacija is not null
  113664.         Set @SSQLUsl = @SSQLUsl + ' And R.Tip_Operacija = ''' + @Tip_Operacija + ''' '
  113665.  
  113666.     ------- Iznos na dokumentot zaradi lesen query za rezultatot
  113667.     Create Table #Izn
  113668.     (
  113669.      RabNalID    int,
  113670.      Toc200    decimal(18,6)
  113671.     )
  113672.  
  113673.     Set @SSQL = 'Select DRN.RabNalID, D.Toc200
  113674.         From Rabnal R
  113675.         Left Outer Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  113676.         Left Outer Join Dokr D On D.DokrID=DRN.DokrId 
  113677.         Where DRN.Tip_RabStav = ''F'' ' 
  113678.  
  113679.     Insert Into #Izn Exec(@SSQL+@SSQLUsl)
  113680.     ----
  113681.  
  113682.     -------- Presmetka na sati
  113683.     Create Table #Tros
  113684.     (
  113685.      RabNalID    int,
  113686.      SatiServis    decimal(18,6)
  113687.     )
  113688.  
  113689.     if @Sifra_Art_RabRaka is null
  113690.         set @Sifra_Art_RabRaka = '399999990'
  113691.  
  113692.     Set @SSQL = 'Select DRN.RabNalID, sum(S.Kolic)
  113693.         From Rabnal R
  113694.         Left Outer Join DokRabnal DRN 
  113695.             On DRN.RabNalID = R.RabNalID
  113696.         Left Outer Join Stavr S 
  113697.             on S.DokrId = DRN.DokrId
  113698.         Where DRN.Tip_RabStav = ''T'' and S.Sifra_Art = ''' + @Sifra_Art_RabRaka + ''' '
  113699.  
  113700.     Insert Into #Tros Exec(@SSQL + @SSQLUsl + ' Group By DRN.RabNalId ')
  113701.     -------
  113702.  
  113703.     Set @SSQL = 'Select R.Sifra_OeRab, R.Broj_RabN, R.Datum_Otv, R.Datum_Zatv, S.Sifra_Art, K.ImeArt, S.KontrSer, R.Garancija, 
  113704.             D.Opis, R.Opis Opis_RabN, Izn.Toc200, R.Sifra_Kup, Kup.ImeKup, RA.ImeRab, RA2.ImeRab ImeRab_2,
  113705.             R.Sifra_Rab, R.Sifra_Rab_2, R.Datum_Poc_Serv, R.Datum_Kr_Proiz, R.Datum_Izdav,
  113706.             DATEDIFF (hour, R.Datum_Poc_Serv, R.Datum_Kr_Proiz) SatiPresm, R.Tip_Operacija,
  113707.             Voz.Registracija, R.PonudaBr, Kup.Telefon, R.ImeKlient, T.SatiServis
  113708.         From Rabnal R
  113709.         Left Outer Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  113710.         Left Outer Join Dokr D On D.DokrID=DRN.DokrId 
  113711.         Left Outer Join Stavr S On S.DokrID=D.DokrID
  113712.         Left Outer Join #Izn Izn On Izn.RabNalID=DRN.RabNalID 
  113713.         Left Outer Join #Tros T 
  113714.             On T.RabNalID = DRN.RabNalID 
  113715.         Left Outer Join Komint Kup On Kup.Sifra_Kup = R.Sifra_Kup
  113716.         Left Outer Join Katart K On K.Sifra_art = S.Sifra_art
  113717.         Left Outer Join Vozila Voz On Voz.Sifra_art = S.Sifra_art
  113718.         Left outer join Rabotnik RA on R.Sifra_Rab= RA.Sifra_Rab
  113719.         Left outer join Rabotnik RA2 on R.Sifra_Rab_2 = RA2.Sifra_Rab
  113720.         Where DRN.Tip_RabStav = ''V'' ' 
  113721.  
  113722.     If @Sifra_art is not null
  113723.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_art= '''+cast(@Sifra_art as varchar(20))+''' '
  113724.  
  113725.     Exec(@SSQL+@SSQLUsl)
  113726.  
  113727.  
  113728.  
  113729.  
  113730.  
  113731.  
  113732.  
  113733.  
  113734.  
  113735. Go
  113736. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_razlceniprobl]'))
  113737. drop procedure [dbo].[sp_pregl_razlceniprobl]
  113738.  
  113739. Go
  113740. CREATE PROCEDURE sp_Pregl_RazlCeniProbl
  113741.  
  113742.     @Sif_GrOrg    char(6) = Null,
  113743.     @Sifra_Podg    char(6) = Null,
  113744.     @Sifra_Gr    char(3) = Null,
  113745.     @Kto        char(6) = Null,
  113746.     @Sifra_Art_Od    varchar(20) = Null,
  113747.     @Sifra_Art_Do    varchar(20) = Null,
  113748.     @Grupa_Marza    smallint = Null,
  113749.     @Datum_Od    smalldatetime = Null,
  113750.     @Datum_Do    smalldatetime = Null
  113751. AS
  113752.  
  113753.     Declare @SSQL as varchar(8000)
  113754.  
  113755.     Set @SSQL = ' Select R.Datum_Vnes, R.Sifra_Oper, R.Sif_GrOrg, R.Sifra_Oe, R.Sifra_Art, K.ImeArt, R.Nabavna, R.CenaProdPreth, R.CenaProdNova, R.OpisProbl,
  113756.                 K.Sifra_Podg, P.Ime_Podg, P.Grupa_Marza
  113757.             From RazlCeniProbl R
  113758.             Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  113759.             Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  113760.             Where 1=1 '
  113761.     If @Sifra_Podg Is Not Null
  113762.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  113763.     If @Sifra_Gr Is Not Null
  113764.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  113765.     If @Kto Is Not Null
  113766.         Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '
  113767.     If @Sifra_Art_Od Is Not Null
  113768.         Set @SSQL = @SSQL + ' And R.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  113769.     If @Sifra_Art_Do Is Not Null
  113770.         Set @SSQL = @SSQL + ' And R.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  113771.     If @Grupa_Marza Is Not Null
  113772.         Set @SSQL = @SSQL + ' And P.Grupa_Marza = ' + Cast(@Grupa_Marza as varchar(6)) + ' '
  113773.     If @Datum_Od Is Not Null
  113774.         Set @SSQL = @SSQL + ' And R.Datum_Vnes >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  113775.     If @Datum_Do Is Not Null
  113776.         Set @SSQL = @SSQL + ' And R.Datum_Vnes < ''' + Cast(@Datum_Do + 1 as varchar(30)) + ''' '  --  + 1 zs datumot se zapisuvat so vreme 
  113777.     Exec(@SSQL)
  113778.  
  113779. Go
  113780. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_samozbdok]'))
  113781. drop procedure [dbo].[sp_pregl_samozbdok]
  113782.  
  113783. Go
  113784.  
  113785.  
  113786.  
  113787.  
  113788.  
  113789. CREATE               PROCEDURE sp_Pregl_SamoZbDok
  113790.     @Sifra_Prev    char(6)=null,
  113791.     @Datum_Od    smalldatetime=null,
  113792.     @Datum_Do    smalldatetime=null,
  113793.     @Sifra_OE     smallint=null,
  113794.     @Sifra_Dok    varchar(100) = Null,
  113795.     @Broj_Dok_Od     int=null,
  113796.     @Broj_Dok_Do     int=null,
  113797.     @Markiran    char(1) = Null,        -- D - So Prevoznik,     N - Bez Prevoznik
  113798.     @Sifra_Grad    Smallint = Null,
  113799.     @Sifra_Pat    smallint = NULL,
  113800.     @Sifra_Kup    char(6) = Null
  113801. AS
  113802.     Declare @SSQL as varchar(8000)
  113803. Set @SSQL =  'SELECT D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.DokrZbID, D.Datum_Vnes,
  113804.     Cast(D.Sifra_OE as varchar(6)) + ''-'' + Cast(D.Sifra_Dok as varchar(6)) + ''/'' + Cast(D.Broj_Dok as varchar(10)) ZbirenDok,
  113805.     D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  113806.     (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, 
  113807.     D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, D.Sifra_Nal, D.Broj_Nal, 
  113808.     (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) KDrugo1, K1.Ime_1K Ime_KDrugo1, D.Opis, 
  113809.     D.Toc200 as IznosDok, D.Identif_Br 
  113810. From DokrZb D 
  113811. Left Outer Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  113812. Left Outer Join KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  113813. Left Outer Join Grad G On G.Sifra_Grad = (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) 
  113814. Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) 
  113815. Left Outer Join Prevoznik P On P.Sifra_Prev = D.Sifra_Prev 
  113816. Left Outer Join Patnici Pat On Pat.Sifra_Pat = D.Sifra_Pat  Where 1=1 '
  113817. If @Sifra_Oe Is Not Null
  113818.     Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  113819. If @Sifra_Dok Is Not Null
  113820.     Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @Sifra_Dok + ') '
  113821. If @Broj_Dok_Od Is Not Null
  113822.     Set @SSQL = @SSQL + ' And D.Broj_Dok >= ' + Cast(@Broj_Dok_Od as varchar(10)) + ' '
  113823. If @Broj_Dok_Do Is Not Null
  113824.     Set @SSQL = @SSQL + ' And D.Broj_Dok <= ' + Cast(@Broj_Dok_Do as varchar(10)) + ' '
  113825. If @Datum_Od Is Not Null
  113826.     Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  113827. If @Datum_Do Is Not Null
  113828.     Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  113829. If @Sifra_Prev Is Not Null
  113830.     Set @SSQL = @SSQL + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  113831. If @Markiran = 'D'
  113832.     Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Not Null '
  113833. Else If @Markiran = 'N'
  113834.     Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Null '
  113835. If @Sifra_Grad Is Not Null
  113836.         Set @SSQL = @SSQL + ' And ((OB.Sifra_Grad Is Not Null And OB.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')
  113837.             OR ( OB.Sifra_Grad Is Null and K.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')) '
  113838. IF @Sifra_Pat IS NOT NULL
  113839.     Set @SSQL = @SSQL + ' And D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(5)) +' ' 
  113840. If @Sifra_Kup Is Not Null
  113841.     Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  113842.     Set @SSQL = @SSQL + ' Order By G.ImeGrad, K.ImeKup, D.Broj_Dok '
  113843. print @SSQL
  113844.     Exec(@SSQL)
  113845.  
  113846.  
  113847. Go
  113848. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_smetki]'))
  113849. drop procedure [dbo].[sp_pregl_smetki]
  113850.  
  113851. Go
  113852. CREATE     PROCEDURE sp_Pregl_Smetki
  113853.     @Sifra_Oe        smallint = null,
  113854.     @KoiOe        char(6) = null,
  113855.     @Sifra_Kup        char(6) = null,
  113856.     @Datum_Od        smalldatetime = null,
  113857.     @Datum_Do        smalldatetime = null,
  113858.     @FraUpl        char(1) = null,
  113859.     @Sifra_Nac        smallint = null,
  113860.     @KorSoOE        char(1) = 'N',
  113861.     @Sifra_TipKartKor    smallint = Null,
  113862.     @Sifra_Kor_Od        varchar(20) = Null,
  113863.     @Sifra_Kor_Do        varchar(20) = Null,
  113864.     @Dat_Zacl_Od        smalldatetime = Null,
  113865.     @Dat_Zacl_Do        smalldatetime = Null,
  113866.     @Aktiven        char(1)=Null,
  113867.     @Kred_Klub         char(2) = 'KR'    -- KR - Kreditni       KL - Klub       K2 - Kreditni + Klub
  113868. AS
  113869.     Declare @SSQL as varchar(8000)
  113870.     Set @SSQL = ' Select K.Sifra_Mark, M.ImeMark, K.Sifra_Oe, O.ImeOrg, K.Broj_ska, K.Sifra_Kor, KK.ImeKor, 
  113871.             K.Sifra_Nac, K.Datum_Ska, '
  113872.     If @Kred_Klub = 'KL'
  113873.         Set @SSQL = @SSQL + ' K.KlubDolzi Dolzi, 0 Pobaruva, '
  113874.     Else If @Kred_Klub = 'KR'
  113875.         Set @SSQL = @SSQL + ' K.Dolzi, K.Pobaruva, '
  113876.     Else --     If @Kred_Klub = 'K2' 
  113877.         Set @SSQL = @SSQL + ' (Case When K.KlubDolzi <> 0 Then (K.Dolzi + K.KlubDolzi) Else K.Dolzi End) Dolzi, K.Pobaruva, '
  113878.     Set @SSQL = @SSQL + ' K.FraUpl, KK.Sifra_Kup, KUP.ImeKup
  113879.                   From KartProm K '
  113880.     IF @KorSoOE = 'D'
  113881.         Set @SSQL = @SSQL + 'Left outer Join KartKor KK On K.Sifra_Oe = KK.Sifra_Oe and K.Sifra_Kor = KK.Sifra_Kor'
  113882.     ELSE
  113883.         Set @SSQL = @SSQL + 'Left outer Join KartKor KK On K.Sifra_Kor = KK.Sifra_Kor'
  113884.     Set @SSQL = @SSQL + ' Inner Join Orged O On O.Sifra_Oe = K.Sifra_Oe
  113885.                     Left outer Join Komint KUP On KUP.Sifra_Kup = KK.Sifra_Kup
  113886.                         Left Outer Join Marketi M On M.Sifra_Mark = K.Sifra_Mark Where 1=1 '
  113887.     If @Sifra_Oe Is Not Null
  113888.         Set @SSQL = @SSQL + ' and K.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' ' 
  113889.     If @KoiOE Is Not NULL
  113890.              Set @SSQL  = @SSQL + ' and K.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @KoiOe  +  ''') '
  113891.     If @Sifra_Kup Is Not Null
  113892.         Set @SSQL  = @SSQL + ' and K.Sifra_Kup = ''' + @Sifra_Kup + ''' '    -- 27.07.2009  Set @SSQL  = @SSQL + ' and KK.Sifra_Kup = ''' + @Sifra_Kup + ''' '    
  113893.     If @Datum_Od Is Not Null
  113894.         Set @SSQL = @SSQL + ' and K.Datum_Ska >= ''' + cast(@Datum_Od as varchar(35)) + ''' ' 
  113895.     If @Datum_Do Is Not Null
  113896.         Set @SSQL = @SSQL + ' and K.Datum_Ska <= ''' + cast(@Datum_Do as varchar(35)) + ''' ' 
  113897.     If @FraUpl Is Not Null
  113898.         Set @SSQL = @SSQL + ' and K.FraUpl = ''' + @FraUpl + ''' ' 
  113899.     If @Sifra_Nac Is Not Null
  113900.         Set @SSQL = @SSQL + ' and K.Sifra_Nac = ' + cast(@Sifra_Nac as varchar(6)) + ' ' 
  113901.     If @Sifra_TipKartKor Is Not Null
  113902.         Set @SSQL = @SSQL + ' and KK.Sifra_TipKartKor = ' + cast(@Sifra_TipKartKor as varchar(6)) + ' ' 
  113903.     If @Sifra_Kor_Od Is Not Null
  113904.         Set @SSQL  = @SSQL + ' And K.Sifra_Kor >= ''' + @Sifra_Kor_Od + ''' '    
  113905.     If @Sifra_Kor_Do Is Not Null
  113906.         Set @SSQL  = @SSQL + ' And K.Sifra_Kor <= ''' + @Sifra_Kor_Do + ''' '    
  113907.     If @Aktiven Is Not Null
  113908.         Set @SSQL  = @SSQL + ' And KK.Aktiven = ''' + @Aktiven + ''' '
  113909.     If @Dat_Zacl_Od Is Not Null
  113910.         Set @SSQL  = @SSQL + ' And KK.DodadenNa >= ''' + Cast(@Dat_Zacl_Od as varchar(30)) + ''' '    
  113911.     If @Dat_Zacl_Do Is Not Null
  113912.         Set @SSQL  = @SSQL + ' And KK.DodadenNa <= ''' + Cast(@Dat_Zacl_Do as varchar(30)) + ''' '    
  113913.     If @Kred_Klub = 'KL'
  113914.         Set @SSQL = @SSQL + ' And K.KlubDolzi <> 0 '
  113915.     Else If @Kred_Klub = 'KR'
  113916.         Set @SSQL = @SSQL + ' And (K.Dolzi <> 0 Or K.Pobaruva <> 0) '
  113917.     Else
  113918.         Set @SSQL = @SSQL + ' And ((Case When K.KlubDolzi <> 0 Then (K.Dolzi + K.KlubDolzi) Else K.Dolzi End) <> 0 Or K.Pobaruva <> 0) '
  113919.     Exec (@SSQL)
  113920.  
  113921. Go
  113922. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_specifikacii]'))
  113923. drop procedure [dbo].[sp_pregl_specifikacii]
  113924.  
  113925. Go
  113926.  
  113927.  
  113928. CREATE           PROCEDURE sp_Pregl_Specifikacii
  113929.     @Godina    smallint=NUll,
  113930.     @Mesec    smallint=Null,
  113931.     @Sifra_PodrSluzba    char(4)=Null,
  113932.     @Faktura_Br    char(6)=Null
  113933. AS
  113934. DECLARE @SSQL as varchar(2000)
  113935. DECLARE @SSQLUsl as varchar(1000)
  113936. SET @SSQLUsl=''
  113937. IF @Godina IS NOT NULL
  113938.     SET @SSQLUsl = @SSQLUsl + ' AND F.Godina_Fra='+Cast(@Godina as char(4))
  113939. IF @Mesec IS NOT NULL
  113940.     SET @SSQLUsl = @SSQLUsl + ' AND F.Mesec_Fra='+Cast(@Mesec as char(2))
  113941. IF @Sifra_PodrSluzba IS NOT NULL
  113942.     SET @SSQLUsl = @SSQLUsl + ' AND F.Sifra_PodrSluzba_Fakt='''+@Sifra_PodrSluzba+''' '
  113943. IF @Faktura_Br IS NOT NULL
  113944.     SET @SSQLUsl = @SSQLUsl + ' AND F.Faktura_Br='''+@Faktura_Br+''' '
  113945. CREATE TABLE #TmpRec
  113946. ( Godina_Fra    smallint,
  113947.   Faktura_Br    char(6),
  113948.   Specif_Br    char(6),
  113949.   BrRecepti    int
  113950. )
  113951.  
  113952. SET @SSQL = 'SELECT R.Godina_Fra, R.Faktura_Br, R.Specif_Br, COUNT(R.Sifra_Art)
  113953. FROM Recepti R 
  113954. INNER JOIN Faktura F ON R.Godina_Fra=F.Godina_Fra AND R.Faktura_Br=F.Faktura_Br
  113955. WHERE 1=1 '+@SSQLUsl + ' GROUP BY R.Godina_Fra, R.Faktura_Br, R.Specif_Br'
  113956. INSERT INTO #TmpRec EXEC(@SSQL)
  113957. SET @SSQL= 'SELECT S.Godina_Fra, S.Faktura_Br, S.Rangiran, S.Specif_Br, S.Sifra_Apteka, F.Mesec_Fra, F.Datum_Fra, F.Sifra_PodrSluzba_Fakt, P.ImePodrSluzba, R.BrRecepti, 
  113958.     Round(S.NabVr_BezDDV, 4) Iznos_Tender, Round(S.Iznos_Marza, 4) Iznos_Marza, Round(S.Osnovica_DDV, 4) Osnov_DDV, 
  113959.     Round(S.Iznos_DDV, 4) Iznos_Na_DDV, Round(S.Vk_Iznos, 4) Iznos_So_DDV, Round(S.Vk_PresmParticip, 4) Iznos_Partic, Round(S.Vk_ZaNaplata, 4) Vk_ZaNaplata,
  113960.     S.Spc_Specif, S.Spc_Podr, S.BezPartic, S.Poc_Broj_Recept, S.Kr_Broj_Recept, S.Kolku_Recepti, 
  113961.     round(S.Vk_Partic, 4) Napl_Partic
  113962.     FROM Specifikacii S 
  113963.     INNER JOIN Faktura F ON S.Godina_Fra=F.Godina_Fra AND S.Faktura_Br=F.Faktura_Br
  113964.     INNER JOIN PodracniSluzbi P ON F.Sifra_PodrSluzba_Fakt=P.Sifra_PodrSluzba 
  113965.     INNER JOIN #TmpRec R ON R.Godina_Fra=F.Godina_Fra AND R.Faktura_Br=F.Faktura_Br AND R.Specif_Br=S.Specif_Br WHERE 1=1 '
  113966.     + @SSQLUsl + ' ORDER BY S.Godina_Fra, Cast(S.Specif_Br as int) '
  113967. EXEC (@SSQL)
  113968.  
  113969.  
  113970.  
  113971.  
  113972.  
  113973. Go
  113974. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_sprometadh_cela]'))
  113975. drop procedure [dbo].[sp_pregl_sprometadh_cela]
  113976.  
  113977. Go
  113978.  
  113979.  
  113980.  
  113981.  
  113982.  
  113983.  
  113984. create       PROCEDURE  [dbo].[sp_Pregl_SPrometADH_Cela]
  113985.     @Datum_Od    smalldatetime = null,   --promet
  113986.     @Datum_Do    smalldatetime = null,   --promet
  113987.     @Sifra_Oper    smallint = Null,
  113988.     @Sifra_Oe    smallint = Null,
  113989.     @BrKasa        smallint = Null,
  113990.     @KlucSodrz    varchar(1000) = Null,
  113991.     @Kto        char(6)= null,
  113992.     @Sifra_TipKartKor smallint= null,
  113993.     @Kom_KartKor   char(6)= null
  113994.   --  @Podr       char(1)='K'
  113995. AS
  113996.  
  113997.     Declare @SSQL as varchar(8000)
  113998.     Declare @SSQLUsl as varchar(8000)
  113999.     Set @SSQLUsl = ' '
  114000.  
  114001.     ------------------------------------------------------------------- U S L O V ------------------------------------------------------------------------------------
  114002.     If @Sifra_Oe Is Not Null
  114003.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  114004.     If @BrKasa Is Not Null
  114005.         Set @SSQLUsl = @SSQLUsl + ' And S.BrKasa = ' + Cast(@BrKasa as varchar(10)) + ' '
  114006.     If @Kto is not null
  114007.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto =' + @Kto + ' '
  114008.     If @Sifra_TipKartKor Is Not Null 
  114009.         Set @SSQLUsl = @SSQLUsl + ' And KK.Sifra_TipKartKor = ' + Cast(@Sifra_TipKartKor as varchar(6)) + ' '
  114010.     If @Kom_KartKor is not null
  114011.         Set @SSQLUsl = @SSQLUsl + ' And KK.Sifra_Kup =' + @Kom_KartKor + ' '
  114012.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------
  114013.  
  114014.     CREATE TABLE #Tmp1
  114015.     (Sifra_OE    smallint,
  114016.     Grp_Kasa    smallint,
  114017.     BrKasa        smallint,
  114018.     Broj_Ska    int,
  114019.     OpisADH        varchar(20)
  114020.     )
  114021.  
  114022.     Set @SSQL = 'SELECT DISTINCT S.Sifra_oe, S.Grp_kasa, S.BrKasa, S.Broj_Ska, OpisADH
  114023.                 FROM SprometAdh S 
  114024.                 INNER JOIN Promet P ON P.Sifra_Oe=S.Sifra_oe and P.Grp_Kasa=S.Grp_Kasa and P.BrKasa=S.BrKasa and P.Broj_ska=S.Broj_ska
  114025.                 Where 1=1 ' 
  114026.     If @KlucSodrz Is Not Null
  114027.         Set @SSQL = @SSQL + ' And S.KlucSodrz ='''+@KlucSodrz+''' ' ---in ( ''' + @KlucSodrz + ''') '
  114028.     If @Datum_Od Is Not Null
  114029.         Set @SSQL = @SSQL + ' And P.Datum_Evid >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  114030.     If @Datum_Do Is Not Null
  114031.         Set @SSQL = @SSQL + ' And P.Datum_Evid <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  114032.     If @Sifra_Oper Is Not Null
  114033.         Set @SSQL = @SSQL + ' And P.Sifra_Oper = ' + Cast(@Sifra_Oper as varchar(6)) + ' '
  114034.     If @Sifra_Oe Is Not Null
  114035.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  114036.     If @BrKasa Is Not Null
  114037.         Set @SSQL = @SSQL + ' And S.BrKasa = ' + Cast(@BrKasa as varchar(10)) + ' '
  114038.     If @Kto is not null
  114039.         Set @SSQL = @SSQL + ' And K.Kto =' + @Kto + ' '
  114040.     If @Sifra_TipKartKor Is Not Null 
  114041.         Set @SSQL = @SSQL + ' And KK.Sifra_TipKartKor = ' + Cast(@Sifra_TipKartKor as varchar(6)) + ' '
  114042.     If @Kom_KartKor is not null
  114043.         Set @SSQL = @SSQL + ' And KK.Sifra_Kup =' + @Kom_KartKor + ' '
  114044.  
  114045.        INSERT INTO #Tmp1 EXEC (@SSQL)
  114046.  
  114047.     Set @SSQL = ' SELECT S.Sifra_Oe, S.Grp_Kasa, S.BrKasa, S.Broj_Ska, S.Rbr, S.KlucSodrz, S.Oznaka, S.Oznaka2, S.KrtOzn,
  114048.                   S.Vredn, S.Vredn2, T.OpisAdh, K.ImeArt, SA.Sifra_art, SA.Rbr SRbr, SA.Sifra_oe SSifra_oe, SA.Grp_kasa SGrp_Kasa, SA.BrKasa SBrKasa, SA.Broj_Ska SBroj_ska,
  114049.                   SA.Kolic , SA.Cena, KK.ImeKor 
  114050.                   FROM SPromet SA 
  114051.                   LEFT OUTER Join SprometAdh S On SA.Sifra_Oe=S.Sifra_oe and SA.Grp_Kasa=S.Grp_Kasa and SA.BrKasa=S.BrKasa and SA.Broj_ska=S.Broj_ska AND SA.Rbr=S.Rbr 
  114052.                   INNER JOIN #Tmp1 T ON T.Sifra_Oe=SA.Sifra_oe and T.Grp_Kasa=SA.Grp_Kasa and T.BrKasa=SA.BrKasa and T.Broj_ska=SA.Broj_ska
  114053.                   Left Outer Join Katart K on SA.Sifra_Art=K.Sifra_Art
  114054.                   Left Outer Join KartKor KK on T.OpisAdh=KK.Sifra_Kor
  114055.                   Where 1=1 ' 
  114056.     If @Sifra_Oe Is Not Null
  114057.         Set @SSQL = @SSQL + ' And SA.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  114058.     If @BrKasa Is Not Null
  114059.         Set @SSQL = @SSQL + ' And SA.BrKasa = ' + Cast(@BrKasa as varchar(10)) + ' '
  114060.     If @Kto is not null
  114061.         Set @SSQL = @SSQL + ' And K.Kto =' + @Kto + ' '
  114062.     If @Sifra_TipKartKor Is Not Null 
  114063.         Set @SSQL = @SSQL + ' And KK.Sifra_TipKartKor = ' + Cast(@Sifra_TipKartKor as varchar(6)) + ' '
  114064.     If @Kom_KartKor is not null
  114065.         Set @SSQL = @SSQL + ' And KK.Sifra_Kup =' + @Kom_KartKor + ' '
  114066.     Set @SSQL = @SSQL + ' Order by   SA.Sifra_Art, K.ImeArt '
  114067.  
  114068.  
  114069.     
  114070.     print @SSQL
  114071.     Exec(@SSQL)
  114072.  
  114073.  
  114074.  
  114075.  
  114076.  
  114077.  
  114078.  
  114079.  
  114080. Go
  114081. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_sprometadh_smetka]'))
  114082. drop procedure [dbo].[sp_pregl_sprometadh_smetka]
  114083.  
  114084. Go
  114085.  
  114086.  
  114087. CREATE    PROCEDURE [dbo].[sp_Pregl_SPrometADH_Smetka]
  114088.     @Datum_Od    smalldatetime = null,
  114089.     @Datum_Do    smalldatetime = null,
  114090.     @Sifra_Oper    smallint = Null,
  114091.     @Sifra_Oe    smallint = Null,
  114092.     @BrKasa        smallint = Null,
  114093.     @KlucSodrz    varchar(1000) = Null
  114094. AS
  114095.  
  114096.     Declare @SSQL as varchar(8000)
  114097.     Declare @SSQLUsl as varchar(8000)
  114098.  
  114099.     Set @SSQLUsl = ' '
  114100.  
  114101.     ------------------------------------------------------------------- U S L O V ------------------------------------------------------------------------------------
  114102.     If @Datum_Od Is Not Null
  114103.         Set @SSQLUsl = @SSQLUsl + ' And P.Datum_Evid >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  114104.     If @Datum_Do Is Not Null
  114105.         Set @SSQLUsl = @SSQLUsl + ' And P.Datum_Evid <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  114106.     If @Sifra_Oper Is Not Null
  114107.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Oper = ' + Cast(@Sifra_Oper as varchar(6)) + ' '
  114108.     If @Sifra_Oe Is Not Null
  114109.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  114110.     If @BrKasa Is Not Null
  114111.         Set @SSQLUsl = @SSQLUsl + ' And P.BrKasa = ' + Cast(@BrKasa as varchar(10)) + ' '
  114112.     If @KlucSodrz Is Not Null
  114113.         Set @SSQLUsl = @SSQLUsl + ' And SA.KlucSodrz in ( ' + @KlucSodrz + ') '
  114114.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------
  114115.  
  114116.     Set @SSQL = ' SELECT P.Sifra_Oe, P.Grp_Kasa, P.BrKasa, P.Broj_Ska, 
  114117.                 P.Sifra_Oper, OP.Ime_Oper, P.Datum_Evid, P.DatumVreme, 
  114118.                 P.OpisAdr, SA.Rbr, SA.KlucSodrz, SA.Oznaka, SA.Oznaka2, SA.KrtOzn, Sum(SA.Vredn) Vredn, Sum(SA.Vredn2) Vredn2, SA.OpisAdh,
  114119.                 Sum(S.Kolic) Kolic, Sum(S.Kolic*S.Cena*(1-S.Popust/100)) Vrednost, S.Sifra_Art, K.ImeArt,
  114120.                 KL.Oznaka KOznaka,KL.Oznaka2 KOznaka2,KL.KrtOzn KKrtOzn,KL.Vredn KVredn,KL.Vredn2 KVredn2,KL.OpisAdh KOpisAdh  
  114121.                     FROM Promet P 
  114122.                     Inner Join SPromet S On S.Sifra_Oe=P.Sifra_Oe And S.Grp_Kasa=P.Grp_Kasa And S.BrKasa=P.BrKasa And S.Broj_Ska=P.Broj_Ska
  114123.                        Inner Join SPrometAdh SA On S.Sifra_Oe=SA.Sifra_Oe And S.Grp_Kasa=SA.Grp_Kasa And S.BrKasa=SA.BrKasa And S.Broj_Ska=SA.Broj_Ska And S.Rbr=SA.Rbr
  114124.                        Left Outer Join KlucSPrometAdh KL on SA.KlucSodrz=KL.KlucSodrz
  114125.                     Left Outer Join Katart K on S.Sifra_Art=K.Sifra_Art
  114126.                     Left Outer Join  Operatori OP On P.Sifra_Oper=OP.Sifra_Oper 
  114127.                     Where 1=1 ' + @SSQLUsl + '
  114128.             Group By P.Sifra_Oe, P.Grp_Kasa, P.BrKasa, P.Broj_Ska, 
  114129.                 P.Sifra_Oper, OP.Ime_Oper, P.Datum_Evid, P.DatumVreme, 
  114130.                 P.OpisAdr, SA.Rbr, SA.KlucSodrz, SA.Oznaka, SA.Oznaka2, SA.KrtOzn, SA.OpisAdh, S.Sifra_Art, K.ImeArt,
  114131.                 KL.Oznaka, KL.Oznaka2, KL.KrtOzn, KL.OpisAdh, KL.Vredn,KL.Vredn2
  114132.             Order By P.Sifra_Oe, P.Grp_Kasa, P.BrKasa, P.Broj_Ska, SA.Rbr ' 
  114133.     print @SSQL
  114134.     Exec(@SSQL)
  114135.  
  114136.  
  114137.  
  114138.  
  114139.  
  114140.  
  114141.  
  114142.  
  114143.  
  114144.  
  114145.  
  114146.  
  114147.  
  114148.  
  114149. Go
  114150. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_sprometadh_spromet]'))
  114151. drop procedure [dbo].[sp_pregl_sprometadh_spromet]
  114152.  
  114153. Go
  114154.  
  114155.  
  114156.  
  114157. CREATE       PROCEDURE  sp_Pregl_SPrometADH_SPromet
  114158.     @Datum_Od    smalldatetime = null,
  114159.     @Datum_Do    smalldatetime = null,
  114160.     @Sifra_Oper    smallint = Null,
  114161.     @Sifra_Oe    smallint = Null,
  114162.     @BrKasa        smallint = Null,
  114163.     @KlucSodrz    varchar(1000) = Null,
  114164.     @Kto        char(6)= null
  114165.   --  @Podr       char(1)='K'
  114166. AS
  114167.  
  114168.     Declare @SSQL as varchar(8000)
  114169.     Declare @SSQLUsl as varchar(8000)
  114170.     Set @SSQLUsl = ' '
  114171.  
  114172.     ------------------------------------------------------------------- U S L O V ------------------------------------------------------------------------------------
  114173.     If @Datum_Od Is Not Null
  114174.         Set @SSQLUsl = @SSQLUsl + ' And P.Datum_Evid >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  114175.     If @Datum_Do Is Not Null
  114176.         Set @SSQLUsl = @SSQLUsl + ' And P.Datum_Evid <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  114177.     If @Sifra_Oper Is Not Null
  114178.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Oper = ' + Cast(@Sifra_Oper as varchar(6)) + ' '
  114179.     If @Sifra_Oe Is Not Null
  114180.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  114181.     If @BrKasa Is Not Null
  114182.         Set @SSQLUsl = @SSQLUsl + ' And P.BrKasa = ' + Cast(@BrKasa as varchar(10)) + ' '
  114183. --    If @KlucSodrz Is Not Null
  114184. --        Set @SSQLUsl = @SSQLUsl + ' And SA.KlucSodrz='''+@KlucSodrz+''' ' ---in ( ''' + @KlucSodrz + ''') '
  114185.     If @Kto is not null
  114186.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto =' + @Kto + ' '
  114187.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------
  114188.  
  114189.     Set @SSQL = ' SELECT S.Sifra_Art, K.ImeArt, 
  114190.                   Sum(S.Kolic) Kolic, Sum(S.Kolic*S.Cena*(1-S.Popust/100)) Vrednost,                  
  114191.                   Sum(SA.Vredn) Vredn, Sum(SA.Vredn2) Vredn2, SUM(CASE When SA.Sifra_OE IS NOT NULL Then S.Kolic ELSE 0 END) KolicADH
  114192.                   FROM Spromet S 
  114193.                   Inner Join Promet P On S.Sifra_Oe=P.Sifra_Oe And S.Grp_Kasa=P.Grp_Kasa And S.BrKasa=P.BrKasa And S.Broj_Ska=P.Broj_Ska
  114194.                   Left Outer Join SPrometAdh SA On S.Sifra_Oe=SA.Sifra_Oe And S.Grp_Kasa=SA.Grp_Kasa And S.BrKasa=SA.BrKasa And S.Broj_Ska=SA.Broj_Ska And S.Rbr=SA.Rbr AND SA.KlucSodrz='''+@KlucSodrz+'''
  114195.                   Left Outer Join Katart K on S.Sifra_Art=K.Sifra_Art
  114196.                   Where 1=1 ' + @SSQLUsl + '
  114197.                   Group By S.Sifra_Art, K.ImeArt
  114198.                   Order by   S.Sifra_Art, K.ImeArt '
  114199. --    If @Podr='K'
  114200. --              Set @SSQL = 'Order By KolicADH '
  114201.  --   If @Podr='V' 
  114202.  --              Set @SSQL = 'Order By Vrednost '
  114203.   --  If @Podr='P' 
  114204.    --            Set @SSQL = 'Order By Vredn2 '
  114205.     
  114206.     print @SSQL
  114207.     Exec(@SSQL)
  114208.  
  114209.  
  114210.  
  114211.  
  114212.  
  114213.  
  114214.  
  114215. Go
  114216. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_sumar_spremac]'))
  114217. drop procedure [dbo].[sp_pregl_sumar_spremac]
  114218.  
  114219. Go
  114220.  
  114221.  
  114222.  
  114223. CREATE  PROCEDURE sp_Pregl_Sumar_Spremac
  114224.     @Sif_Spremac varchar(5)=null,
  114225.     @Sifra_Prev    char(6)=null,
  114226.     @Datum_Od    smalldatetime=null,
  114227.     @Datum_Do    smalldatetime=null,
  114228.     @Sifra_OE     smallint=null,
  114229.     @Sif_GrOrg    char(6) = null,
  114230.     @Podred char(1) = 'P'
  114231.     
  114232. AS
  114233.     Declare @SSQL as varchar(8000)
  114234.     Declare @SSQLUsl as varchar(1000)
  114235.     SEt @SSQLUsl = ' '
  114236.     
  114237.         If @Sifra_Oe Is Not Null
  114238.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  114239.         If @Sif_Spremac Is Not Null
  114240.             Set @SSQLUsl = @SSQLUsl + ' And D.Spremil = ''' + Cast(@Sif_Spremac as varchar(5)) + ''' '
  114241.         If @Datum_Od Is Not Null
  114242.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  114243.         If @Datum_Do Is Not Null
  114244.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  114245.         If @Sifra_Prev Is Not Null
  114246.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  114247.         If @Sif_GrOrg Is Not Null
  114248.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Sif_GrOrg + ''') '
  114249.     
  114250.     If @Podred = 'S'
  114251.         begin
  114252.             Set @SSQL =  'SELECT  D.Spremil, SP.ImeSpremac, count (distinct D.DokrID) KolkuDok, Count(S.DokID) KolkuStavki, sum(S.Kolic * (Case When K.Tezina Is Not Null Then K.Tezina Else 0 End)) as NetoTezina
  114253.                 FROM Dokr D
  114254.                 Inner Join Stavr S On S.DokrID=D.DokrID
  114255.                 Inner Join Katart K on K.Sifra_art = S.Sifra_art    
  114256.                 inner join TipDok TD on TD.Sifra_Dok = D.Sifra_Dok
  114257.                 inner join OrgEd O on O.Sifra_Oe = D.Sifra_Oe 
  114258.                 left outer join Spremac SP on SP.Sif_Spremac = D.Spremil
  114259.                 Where TD.Vl_Izl = ''I'' '
  114260.             
  114261.             set @SSQL = @SSQL + @SSQLUsl + ' Group BY  D.Spremil, SP.ImeSpremac '
  114262.             set @SSQL = @SSQL + ' Order BY D.Spremil '
  114263.         end
  114264.     Else If @Podred = 'P'
  114265.         begin
  114266.             Set @SSQL =  'SELECT  D.Sifra_Prev As Spremil, P.ImePrev as ImeSpremac, count (distinct D.DokrID) KolkuDok, Count(S.DokID) KolkuStavki, sum(S.Kolic * (Case When K.Tezina Is Not Null Then K.Tezina Else 0 End)) as NetoTezina
  114267.                     FROM Dokr D
  114268.                     Inner Join Stavr S On S.DokrID=D.DokrID    
  114269.                     Inner Join Katart K on K.Sifra_art = S.Sifra_art    
  114270.                     Inner Join TipDok TD on TD.Sifra_Dok = D.Sifra_Dok
  114271.                     Inner Join OrgEd O on O.Sifra_Oe = D.Sifra_Oe 
  114272.                     left outer join Prevoznik P on P.Sifra_Prev = D.Sifra_Prev 
  114273.                     Where TD.Vl_Izl = ''I'' '
  114274.             
  114275.             set @SSQL = @SSQL + @SSQLUsl + ' Group BY D.Sifra_Prev, P.ImePrev '
  114276.             set @SSQL = @SSQL + ' Order BY D.Sifra_Prev '    
  114277.             
  114278.         end    
  114279.                     
  114280.             
  114281.     print @SSQL
  114282.     Exec(@SSQL)
  114283.  
  114284.  
  114285.  
  114286. Go
  114287. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_sumaren_podok]'))
  114288. drop procedure [dbo].[sp_pregl_sumaren_podok]
  114289.  
  114290. Go
  114291.  
  114292.  
  114293. CREATE    PROCEDURE sp_Pregl_Sumaren_PoDok
  114294.     @Sifra_OE         Smallint = Null,
  114295.     @KoiOE         Varchar(500) = Null,
  114296.     @Datum_Dok_Od     Smalldatetime = Null,
  114297.     @Datum_Dok_Do     Smalldatetime = Null,
  114298.     @PoKojDatum        Char(1) = 'D',
  114299.     @Sifra_Oper        Varchar(20) = Null,
  114300.     @MaterDok        char(1) = 'D',
  114301.     @FinDok        char(1) = 'D'
  114302. AS
  114303.     If @PoKojDatum = 'V'
  114304.             If @Datum_Dok_Do Is Not Null
  114305.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  114306.     Declare @SSQL Varchar(4000)
  114307.     Declare @SSQLUsl Varchar(4000)
  114308.     Set @SSQLUsl = ' '
  114309.  
  114310.     Create Table #Dok
  114311.     (
  114312.      MatFin        char(1),
  114313.      Sifra_Oe    smallint,
  114314.      Sifra_Dok    smallint,
  114315.      Vlez_Dolzi    decimal(18,6),
  114316.      Izlez_Pobar    decimal(18,6),
  114317.      KolkuDokVlez integer,
  114318.      KolkuDokIzlez integer
  114319.     )
  114320.     
  114321.     If @Sifra_Oper IS NOT NULL
  114322.                   SET @SSQLUsl=@SSQLUSl+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  114323.            If @Sifra_OE Is NOT Null
  114324.                   SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  114325.            If @KoiOE Is NOT Null
  114326.                   SET @SSQLUsl = @SSQLUsl + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  114327.         If @PoKojDatum = 'V'
  114328.         Begin
  114329.             If @Datum_Dok_Od Is NOT Null
  114330.                 SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  114331.             If @Datum_Dok_Do Is NOT Null
  114332.                  SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  114333.         End
  114334.         Else
  114335.         Begin
  114336.             If @Datum_Dok_Od Is NOT Null
  114337.                 SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  114338.                If @Datum_Dok_Do Is NOT Null
  114339.                  SET @SSQLUsl = @SSQLUsl + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  114340.         End
  114341.  
  114342. ---------------------------------------------------- M A T E R I J A L N I    D O K U M E N T I ----------------------------------------------------------
  114343.     If @MaterDok = 'D'
  114344.     Begin
  114345.         SET @SSQL = 'SELECT ''A'' MatFin, D.Sifra_OE, D.Sifra_Dok,
  114346.                     Sum(Case When D.VlIzl=''V'' Then D.Toc200 Else 0 End) Vlez_Dolzi, 0, 
  114347.                     Count(*), 0
  114348.                     FROM DOKR D 
  114349.                     Inner Join Orged O On O.Sifra_Oe=D.Sifra_Oe
  114350.                     Inner Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  114351.                     WHERE  D.VlIzl = ''V''     '
  114352.  
  114353.            
  114354.         Set @SSQL = @SSQL + @SSQLUsl
  114355.  
  114356.         Set @SSQL = @SSQL + 'Group By D.Sifra_OE, D.Sifra_Dok, D.VlIzl '
  114357.  
  114358.         Insert Into #Dok EXEC(@SSQL)
  114359.         
  114360.         SET @SSQL = 'SELECT ''A'' MatFin, D.Sifra_OE, D.Sifra_Dok,
  114361.                     0,Sum(Case When D.VlIzl=''I'' Then D.Toc200 Else 0 End) Izlez_Pobar,
  114362.                     0,Count(*)
  114363.                     FROM DOKR D 
  114364.                     Inner Join Orged O On O.Sifra_Oe=D.Sifra_Oe
  114365.                     Inner Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  114366.                     WHERE  D.VlIzl = ''I''     '
  114367.  
  114368.         Set @SSQL = @SSQL + @SSQLUsl
  114369.  
  114370.         Set @SSQL = @SSQL + 'Group By D.Sifra_OE, D.Sifra_Dok, D.VlIzl '
  114371.  
  114372.         Insert Into #Dok EXEC(@SSQL)
  114373.         
  114374.     End
  114375. ---------------------------------------------------- F I N A N S I S K I    D O K U M E N T I ----------------------------------------------------------
  114376.     If @FinDok = 'D' 
  114377.     Begin         
  114378.         SET @SSQL = ' SELECT ''B'', D.Sifra_OE, D.Sifra_Dok,
  114379.                     Sum(D.Dolzi) Vlez_Dolzi, Sum(D.Pobaruva) Izlez_Pobar, 
  114380.                     Count(*), 0
  114381.                     FROM AnFinDok D
  114382.                     Inner Join Orged O On O.Sifra_Oe=D.Sifra_Oe
  114383.                     INNER JOIN TipDok TD On TD.Sifra_Dok=D.Sifra_Dok 
  114384.                     WHERE TD.DaliMater = ''N'' AND TD.Vl_Izl = ''V'' 
  114385.                     And (D.Sifra_Dok Not Between 801 and 808) '
  114386.  
  114387.         Set @SSQL = @SSQL + @SSQLUsl
  114388.  
  114389.         Set @SSQL = @SSQL + 'Group By D.Sifra_OE,  D.Sifra_Dok, TD.Vl_Izl '
  114390.         Insert Into #Dok EXEC(@SSQL)
  114391.  
  114392.         SET @SSQL = ' SELECT ''B'', D.Sifra_OE, D.Sifra_Dok,
  114393.                     Sum(D.Dolzi) Vlez_Dolzi, Sum(D.Pobaruva) Izlez_Pobar, 
  114394.                     0, Count(*)
  114395.                     FROM AnFinDok D
  114396.                     Inner Join Orged O On O.Sifra_Oe=D.Sifra_Oe
  114397.                     INNER JOIN TipDok TD On TD.Sifra_Dok=D.Sifra_Dok 
  114398.                     WHERE TD.DaliMater = ''N'' AND TD.Vl_Izl <> ''V'' 
  114399.                     And (D.Sifra_Dok Not Between 801 and 808) '
  114400.  
  114401.         Set @SSQL = @SSQL + @SSQLUsl
  114402.  
  114403.         Set @SSQL = @SSQL + 'Group By D.Sifra_OE,  D.Sifra_Dok, TD.Vl_Izl '
  114404.         Insert Into #Dok EXEC(@SSQL)
  114405.  
  114406.     End
  114407.     
  114408.     --print @SSQL
  114409.     --Exec (@SSQL)
  114410.     
  114411.     Select D.MatFin, D.Sifra_Oe, O.ImeOrg, D.Sifra_Dok, TD.ImeDok, sum(D.Vlez_Dolzi) as Vlez_Dolzi, sum(D.Izlez_Pobar) as Izlez_Pobar,
  114412.     sum(D.KolkuDokVlez) as KolkuDokVlez, sum(D.KolkuDokIzlez) as KolkuDokIzlez
  114413.     From #Dok D
  114414.     Inner Join Orged O On O.Sifra_Oe=D.Sifra_Oe
  114415.     Inner Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  114416.     group by D.MatFin, D.Sifra_Oe, O.ImeOrg, D.Sifra_Dok, TD.ImeDok
  114417.     Order By D.MatFin, D.Sifra_Oe, D.Sifra_dok
  114418.  
  114419.  
  114420.  
  114421. Go
  114422. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_teknar]'))
  114423. drop procedure [dbo].[sp_pregl_teknar]
  114424.  
  114425. Go
  114426.  
  114427.  
  114428.  
  114429.  
  114430.  
  114431.  
  114432.  
  114433. CREATE      PROCEDURE sp_Pregl_TekNar
  114434.     @Sifra_OE Smallint = Null,
  114435.     @ListaTipNar    varchar (100)=Null,
  114436.        @Datum_Nar_Od Smalldatetime = Null,
  114437.        @Datum_Nar_Do Smalldatetime = Null,
  114438.     @Sifra_Kup Char(6) = null,
  114439.     @VlIzl Char(1) = 'V',
  114440.     @Sifra_Pat    smallint = Null, 
  114441.     @SamoSoZatv char(1)='N'
  114442. AS
  114443.     IF @Datum_Nar_Od IS NULL
  114444.         SET @Datum_Nar_Od = GetDate() - 3
  114445.     If @Datum_Nar_Do IS NULL
  114446.         SET @Datum_Nar_Do = GetDate()
  114447.  
  114448.     Declare @SSQL Varchar(4000)
  114449.  
  114450.     SET @SSQL = 'SELECT Nar.NarID, Nar.Sifra_OE, Nar.Sifra_Nar, Nar.Broj_Nar, Nar.Identif_Br,
  114451.             Nar.Sifra_Kup, Nar.Datum_Nar, Nar.Datum_Vnes Datum_Vnes, Nar.Datum_Izm,
  114452.             Nar.Uces, Nar.Rok, Nar.Sifra_Pat, Nar.Sifra_Oper, Nar.Sifra_OpIz, Nar.Toc200,
  114453.             Nar.DanDokCena, Nar.DanmagCena,    Nar.Kasa, Nar.Prenesen,
  114454.             Nar.Stat_Nar, Nar.Zaklucen, Nar.Stat_Dok_Nar, TN.ImeNar, K.ImeKup, KO.ImeObj, K.SMesto,
  114455.             O.ImeOrg As IORG, TN.VlIzl,    ''NAR'' as DokrNar, Nar.Realiziran, TN.NacinZatv
  114456.             FROM Naracki Nar
  114457.             INNER JOIN TipNarac TN ON Nar.Sifra_Nar=TN.Sifra_Nar
  114458.             LEFT OUTER JOIN Komint K ON Nar.Sifra_Kup=K.Sifra_Kup
  114459.             LEFT OUTER JOIN KObjekti KO ON Nar.Sifra_Kup = KO.Sifra_Kup And Nar.Sifra_Obj=KO.Sifra_Obj
  114460.             INNER JOIN Orged O ON Nar.Sifra_OE=O.Sifra_OE 
  114461.             Where 1=1 '
  114462.     If @SamoSoZatv='D'
  114463.         SET @SSQL = @SSQL + ' AND Nar.Sifra_Nar<100'        --bidejki so prevz.vo wMobMag se pravat nar.za zatv so tipnar+100
  114464.     If @ListaTipNar Is NOT NULL
  114465.         SET @SSQL = @SSQL + ' AND Nar.Sifra_Nar in (' + @ListaTipNar + ') '
  114466.     If @Sifra_OE Is NOT Null
  114467.         SET @SSQL = @SSQL + ' AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  114468.     If @Datum_Nar_Od Is NOT Null
  114469.         SET @SSQL = @SSQL + ' AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  114470.     If @Datum_Nar_Do Is NOT Null
  114471.         SET @SSQL = @SSQL + ' AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  114472.     If @Sifra_Kup Is NOT Null
  114473.         SET @SSQL = @SSQL + ' AND Nar.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  114474.     If @Sifra_Pat IS NOT NULL
  114475.         SET @SSQL = @SSQL + ' AND Nar.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  114476.     If @VlIzl Is NOT Null
  114477.         SET @SSQL = @SSQL + ' AND TN.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  114478.  
  114479.     SET @SSQL = @SSQL + ' order by datum_nar desc, datum_vnes desc'
  114480.     EXEC (@SSQL)
  114481.  
  114482.  
  114483.  
  114484.  
  114485.  
  114486.  
  114487.  
  114488.  
  114489.  
  114490.  
  114491.  
  114492.  
  114493. Go
  114494. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_whmlokacii]'))
  114495. drop procedure [dbo].[sp_pregl_whmlokacii]
  114496.  
  114497. Go
  114498.  
  114499.  
  114500. CREATE  PROCEDURE sp_Pregl_WhmLokacii
  114501.  
  114502.     @Sifra_Oe    smallint = NULL,
  114503.     @Sekc_ID    varchar(15)= null
  114504.  
  114505. AS
  114506.  
  114507.     Declare @SSQL as varchar(1000)
  114508.     Set @SSQL =  'SELECT W.*, O.ImeOrg, S.Sekc_Ime
  114509.               from WhmLokacija W
  114510.               inner join OrgEd O 
  114511.                 on O.Sifra_Oe = W.Sifra_Oe
  114512.               left outer join WhmSekcija S
  114513.                 on S.Sifra_Oe = W.Sifra_Oe and S.Sekc_ID = W.Sekc_Id
  114514.               Where 1=1 '
  114515.     If @Sifra_Oe Is Not Null
  114516.         Set @SSQL = @SSQL + ' And W.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '    
  114517.     If @Sekc_ID Is Not Null
  114518.         Set @SSQL = @SSQL + ' And W.Sekc_ID = ''' + Cast(@Sekc_ID as varchar(6)) + ''' '    
  114519. print(@ssql)
  114520.     Exec(@SSQL)
  114521.  
  114522.  
  114523.  
  114524.  
  114525. Go
  114526. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_whmsekcii]'))
  114527. drop procedure [dbo].[sp_pregl_whmsekcii]
  114528.  
  114529. Go
  114530.  
  114531. CREATE PROCEDURE sp_Pregl_WhmSekcii
  114532.  
  114533.     @Sifra_Oe    smallint = NULL
  114534.  
  114535. AS
  114536.  
  114537.     Declare @SSQL as varchar(1000)
  114538.     Set @SSQL =  'SELECT W.Sifra_Oe, O.ImeOrg, W.Sekc_ID, 
  114539.             W.Sekc_Ime, W.Sekc_Opis, W.Sekc_BarKod, 
  114540.             W.Sect_X_Min, W.sect_X_Max, W.Sect_Y_Min, W.Sect_Y_Max, W.Sect_Z_Min, W.Sect_Z_Max, W.Sekc_Aktiven
  114541.               from whmSekcija W
  114542.               inner join OrgEd O On O.Sifra_Oe = W.Sifra_Oe
  114543.               Where 1=1 '
  114544.     If @Sifra_Oe Is Not Null
  114545.         Set @SSQL = @SSQL + ' And W.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '    
  114546.  
  114547.     Exec(@SSQL)
  114548.  
  114549.  
  114550.  
  114551.  
  114552.  
  114553. Go
  114554. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_zbdok]'))
  114555. drop procedure [dbo].[sp_pregl_zbdok]
  114556.  
  114557. Go
  114558.  
  114559.  
  114560.  
  114561.  
  114562. CREATE               PROCEDURE sp_Pregl_ZbDok
  114563.     @Sifra_Prev    char(6)=null,
  114564.     @Datum_Od    smalldatetime=null,
  114565.     @Datum_Do    smalldatetime=null,
  114566.     @Sifra_OE     smallint=null,
  114567.     @Sifra_Dok    varchar(100) = Null,
  114568.     @Broj_Dok_Od     int=null,
  114569.     @Broj_Dok_Do     int=null,
  114570.     @KojIzv    char(1)='S',              -- Z - Zbiren,    S - So Stavki
  114571.     @Markiran    char(1) = Null,        -- D - So Prevoznik,     N - Bez Prevoznik
  114572.     @OdDokr_ZbDokr char(1) = 'Z',    -- D - Od Dokr    Z - od ZbDokr
  114573.     @Sifra_Nal     smallint=null,
  114574.     @Broj_Nal     int=null,
  114575.     @Sifra_Grad    Smallint = Null,
  114576.     @Sifra_Pat    smallint = NULL,
  114577.     @Sifra_Kup    char(6) = Null
  114578. AS
  114579.     Declare @SSQL as varchar(8000)
  114580.     If @OdDokr_ZbDokr = 'D'
  114581.         Set @SSQL =  'SELECT D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, Null as DokrZbID, D.Datum_Vnes,
  114582.             Cast(D.Sifra_OE as varchar(6)) + ''-'' + Cast(D.Sifra_Dok as varchar(6)) + ''/'' + Cast(D.Broj_Dok as varchar(10)) ZbirenDok,
  114583.             D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  114584.             (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, 
  114585.             D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, D.Sifra_Nal, D.Broj_Nal, 
  114586.             (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) KDrugo1, K1.Ime_1K Ime_KDrugo1, D.Opis, '
  114587.     Else -- If @OdDokr_ZbDokr <> 'D'
  114588.         Set @SSQL =  'SELECT D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.DokrZbID, D.Datum_Vnes,
  114589.             Cast(D.Sifra_OE as varchar(6)) + ''-'' + Cast(D.Sifra_Dok as varchar(6)) + ''/'' + Cast(D.Broj_Dok as varchar(10)) ZbirenDok,
  114590.             D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  114591.             (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, 
  114592.             D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, D.Sifra_Nal, D.Broj_Nal, 
  114593.             (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) KDrugo1, K1.Ime_1K Ime_KDrugo1, D.Opis, '
  114594.     If @KojIzv = 'S' And @OdDokr_ZbDokr <> 'D'  -- Od Zbirni dokumenti
  114595.         Set @SSQL = @SSQL + ' Cast(Dok.Sifra_OE as varchar(6)) + ''-'' + Cast(Dok.Sifra_Dok as varchar(6)) + ''/'' + Cast(Dok.Broj_Dok as varchar(10)) Dokument,
  114596.                     Dok.Toc200 IznosDok, Sum(S.Kolic*A.Tezina) as Tezina, Count(S.DokID) Stavki '
  114597.     Else
  114598.         Set @SSQL = @SSQL + ' '' '' as  Dokument, D.Toc200 as IznosDok, Null as Tezina, Null Stavki '
  114599.     Set @SSQL = @SSQL + ', Sum(Case When A.BTezina <> 0 Then S.Kolic*A.BTezina Else 0 End) as BTezina, Sum(S.Kolic/(Case When A.ImaKomerc>0 Then A.ImaKomerc Else 1 End)) Paketi, D.Identif_Br '
  114600.     If @OdDokr_ZbDokr = 'D'
  114601.         Set @SSQL = @SSQL + ' From Dokr D '
  114602.     Else -- If @OdDokr_ZbDokr <> 'D'
  114603.         Set @SSQL = @SSQL + ' From DokrZb D '
  114604.     If @KojIzv = 'S' And @OdDokr_ZbDokr <>'D'
  114605.         Set @SSQL = @SSQL + ' Inner Join DokrZBSta DS On DS.DokrZBId=D.DokrZbId
  114606.                       Inner Join Dokr Dok On Dok.DokrID = DS.DokrID
  114607.                       Inner Join Stavr S On S.DokrID=Dok.DokrID
  114608.                       Inner Join Katart A On A.Sifra_Art = S.Sifra_Art '
  114609.     ELSE        --dod.30.09.09
  114610.         Set @SSQL = @SSQL + ' Inner Join Stavr S On S.DokrID=D.DokrID
  114611.                       Inner Join Katart A On A.Sifra_Art = S.Sifra_Art '
  114612.     Set @SSQL = @SSQL + ' Left Outer Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  114613.                   Left Outer Join KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  114614.                   Left Outer Join Grad G On G.Sifra_Grad = (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) 
  114615.                   Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) 
  114616.                   Left Outer Join Prevoznik P On P.Sifra_Prev = D.Sifra_Prev 
  114617.                   Left Outer Join Patnici Pat On Pat.Sifra_Pat = D.Sifra_Pat '
  114618.     Set @SSQL = @SSQL + ' Where 1=1 '
  114619.     If @Sifra_Oe Is Not Null
  114620.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  114621.     If @Sifra_Dok Is Not Null
  114622.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @Sifra_Dok + ') '
  114623.     If @Broj_Dok_Od Is Not Null
  114624.         Set @SSQL = @SSQL + ' And D.Broj_Dok >= ' + Cast(@Broj_Dok_Od as varchar(10)) + ' '
  114625.     If @Broj_Dok_Do Is Not Null
  114626.         Set @SSQL = @SSQL + ' And D.Broj_Dok <= ' + Cast(@Broj_Dok_Do as varchar(10)) + ' '
  114627.     If @Sifra_Nal Is Not Null
  114628.         Set @SSQL = @SSQL + ' And D.Sifra_Nal = ' + Cast(@Sifra_Nal as varchar(6)) + ' '
  114629.     If @Broj_Nal Is Not Null
  114630.         Set @SSQL = @SSQL + ' And D.Broj_Nal = ' + Cast(@Broj_Nal as varchar(10)) + ' '
  114631.     If @Datum_Od Is Not Null
  114632.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  114633.     If @Datum_Do Is Not Null
  114634.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  114635.     If @Sifra_Prev Is Not Null
  114636.         Set @SSQL = @SSQL + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  114637.     If @Markiran = 'D'
  114638.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Not Null '
  114639.     Else If @Markiran = 'N'
  114640.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Null '
  114641.     If @Sifra_Grad Is Not Null
  114642.             Set @SSQL = @SSQL + ' And ((OB.Sifra_Grad Is Not Null And OB.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')
  114643.                 OR ( OB.Sifra_Grad Is Null and K.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')) '
  114644.     IF @Sifra_Pat IS NOT NULL
  114645.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(5)) +' ' 
  114646.     If @Sifra_Kup Is Not Null
  114647.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  114648.     If @KojIzv = 'S' And @OdDokr_ZbDokr <>'D'
  114649.         Set @SSQL = @SSQL + ' Group By D.Datum_Dok, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.DokrZbID, D.Datum_Vnes,
  114650.                 D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, OB.ImeObj, D.Toc200, (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End), 
  114651.                 D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, D.Sifra_Nal, D.Broj_Nal,
  114652.                 G.ImeGrad, Dok.Sifra_OE, Dok.Sifra_Dok, Dok.Broj_Dok, Dok.Toc200,
  114653.                 (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End), K1.Ime_1K, D.Opis, D.Identif_br '
  114654.     ELSE
  114655.         Set @SSQL = @SSQL + ' Group By D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Vnes,
  114656.             D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  114657.             (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End), G.ImeGrad, 
  114658.             D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, D.Sifra_Nal, D.Broj_Nal, 
  114659.             (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End), K1.Ime_1K, D.Opis, D.Identif_br '
  114660.     Set @SSQL = @SSQL + ' Order By G.ImeGrad, K.ImeKup, D.Broj_Dok '
  114661. print @SSQL
  114662.     Exec(@SSQL)
  114663.  
  114664. Go
  114665. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_zbnarac]'))
  114666. drop procedure [dbo].[sp_pregl_zbnarac]
  114667.  
  114668. Go
  114669.  
  114670.  
  114671.  
  114672.  
  114673.  
  114674. CREATE            PROCEDURE sp_Pregl_ZbNarac
  114675.     @Sifra_Prev    char(6)=null,
  114676.     @Datum_Od    smalldatetime=null,
  114677.     @Datum_Do    smalldatetime=null,
  114678.     @Sifra_OE     smallint=null,
  114679.     @Sifra_Dok    varchar(100) = Null,
  114680.     @Broj_Dok_Od     int=null,
  114681.     @Broj_Dok_Do     int=null,
  114682.     @KojIzv    char(1)='S',              -- Z - Zbiren,    S - So Stavki
  114683.     @Markiran    char(1) = Null,        -- D - So Prevoznik,     N - Bez Prevoznik
  114684.     @OdDokr_ZbDokr char(1) = 'Z',    -- D - Od Dokr    Z - od ZbDokr
  114685.     @Sifra_Nal     smallint=null,
  114686.     @Broj_Nal     int=null,
  114687.     @Sifra_Grad    Smallint = Null,
  114688.     @Sifra_Pat    smallint = NULL,
  114689.     @Sifra_Kup    char(6) = Null,
  114690.     @KojDatum char(1)= 'N' --D-Dat.dosp,N-dat.nar.,I-po datispor.(Orbico)
  114691. AS
  114692.     Declare @SSQL as varchar(8000)
  114693.     If @KojDatum = 'D'
  114694.          Set @SSQL =  'SELECT Dateadd(day, D.Rok, D.Datum_Nar) Datum_Dok, '
  114695.     ELSE IF @KojDatum = 'I'
  114696.         Set @SSQL =  'SELECT D.Dat_Isporaka Datum_Dok, '
  114697.     Else
  114698.         Set @SSQL =  'SELECT D.Datum_Nar Datum_Dok, '
  114699.     Set @SSQL=@SSQL+' D.Sifra_Oe, D.Sifra_Nar Sifra_Dok, D.Broj_Nar Broj_Dok, Null as DokrZbID, D.Datum_Vnes,
  114700.             Cast(D.Sifra_OE as varchar(6)) + ''-'' + Cast(D.Sifra_Nar as varchar(6)) + ''/'' + Cast(D.Broj_Nar as varchar(10)) ZbirenDok,
  114701.             D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  114702.             (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, 
  114703.             D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, 0 Sifra_Nal, 0 Broj_Nal, 
  114704.             (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) KDrugo1, K1.Ime_1K Ime_KDrugo1, '''' Opis,         
  114705.             '' '' as  Dokument, D.Toc200 as IznosDok, Null as Tezina, Null Stavki, Sum(Case When A.BTezina <> 0 Then S.Kolic*A.BTezina Else 0 End) as BTezina, 
  114706.             Sum(S.Kolic/(Case When A.ImaKomerc>0 Then A.ImaKomerc Else 1 End)) Paketi, D.Identif_Br , S.Sifra_Art,A.ImeArt, S.Kolic 
  114707.             From Naracki D  
  114708.             Inner Join StaNarac S On S.NarID=D.NarID
  114709.                   Inner Join Katart A On A.Sifra_Art = S.Sifra_Art 
  114710.                   Left Outer Join Komint K ON D.Sifra_Kup=K.Sifra_Kup
  114711.                   Left Outer Join KObjekti OB ON D.Sifra_Kup=OB.Sifra_Kup And D.Sifra_Obj=OB.Sifra_Obj
  114712.                   Left Outer Join Grad G On G.Sifra_Grad = (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End) 
  114713.                   Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End) 
  114714.                   Left Outer Join Prevoznik P On P.Sifra_Prev = D.Sifra_Prev 
  114715.                   Left Outer Join Patnici Pat On Pat.Sifra_Pat = D.Sifra_Pat '
  114716.     Set @SSQL = @SSQL + ' Where 1=1 '
  114717.     If @Sifra_Oe Is Not Null
  114718.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  114719.     If @Sifra_Dok Is Not Null
  114720.         Set @SSQL = @SSQL + ' And D.Sifra_Nar In (' + @Sifra_Dok + ') '
  114721.     If @Broj_Dok_Od Is Not Null
  114722.         Set @SSQL = @SSQL + ' And D.Broj_Nar >= ' + Cast(@Broj_Dok_Od as varchar(10)) + ' '
  114723.     If @Broj_Dok_Do Is Not Null
  114724.         Set @SSQL = @SSQL + ' And D.Broj_Nar <= ' + Cast(@Broj_Dok_Do as varchar(10)) + ' '
  114725. If @KojDatum = 'D'
  114726. BEGIN
  114727.     If @Datum_Od Is Not Null
  114728.         Set @SSQL = @SSQL + ' And Dateadd(day, D.Rok, D.Datum_Nar) >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  114729.     If @Datum_Do Is Not Null
  114730.         Set @SSQL = @SSQL + ' And Dateadd(day, D.Rok, D.Datum_Nar) <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  114731. END
  114732. ELSE
  114733. BEGIN
  114734.     If @Datum_Od Is Not Null
  114735.         Set @SSQL = @SSQL + ' And D.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  114736.     If @Datum_Do Is Not Null
  114737.         Set @SSQL = @SSQL + ' And D.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  114738. END
  114739.     If @Sifra_Prev Is Not Null
  114740.         Set @SSQL = @SSQL + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  114741.     If @Markiran = 'D'
  114742.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Not Null '
  114743.     Else If @Markiran = 'N'
  114744.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Null '
  114745.     If @Sifra_Grad Is Not Null
  114746.             Set @SSQL = @SSQL + ' And ((OB.Sifra_Grad Is Not Null And OB.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')
  114747.                 OR ( OB.Sifra_Grad Is Null and K.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ')) '
  114748.     IF @Sifra_Pat IS NOT NULL
  114749.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(5)) +' ' 
  114750.     If @Sifra_Kup Is Not Null
  114751.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  114752.     Set @SSQL = @SSQL + ' Group By D.Datum_Nar, D.Rok, D.Sifra_Oe, D.Sifra_Nar, D.Broj_Nar, D.Datum_Vnes,
  114753.             D.Sifra_Kup, K.ImeKup, D.Sifra_Obj, OB.ImeObj, D.Toc200, 
  114754.             (Case When OB.Sifra_Grad Is Not Null Then OB.Sifra_Grad Else K.Sifra_Grad End), G.ImeGrad, 
  114755.             D.Sifra_Prev, P.ImePrev, D.Sifra_Pat, Pat.ImePat, 
  114756.             (Case When OB.KDrugo1 Is Not Null Then OB.KDrugo1 Else K.KDrugo1 End), K1.Ime_1K,  D.Identif_br,S.Sifra_Art,A.ImeArt, S.Kolic '
  114757. IF @KojDatum = 'I'
  114758.         Set @SSQL = @SSQL + ', D.Dat_Isporaka '
  114759.     Set @SSQL = @SSQL + ' Order By G.ImeGrad, K.ImeKup, D.Broj_Nar '
  114760. print @SSQL
  114761.     Exec(@SSQL)
  114762.  
  114763.  
  114764.  
  114765.  
  114766.  
  114767.  
  114768.  
  114769. Go
  114770. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregl_zbnaractovlist]'))
  114771. drop procedure [dbo].[sp_pregl_zbnaractovlist]
  114772.  
  114773. Go
  114774.  
  114775. CREATE           PROCEDURE sp_Pregl_ZbNaracTovList
  114776.     @Sifra_Prev    char(6)=null,
  114777.     @Datum_Od    smalldatetime=null,
  114778.     @Datum_Do    smalldatetime=null,
  114779.     @Sifra_OE     smallint=null,
  114780.     @Sifra_Dok    varchar(100) = Null,
  114781.     @Broj_Dok_Od     int=null,
  114782.     @Broj_Dok_Do     int=null,
  114783.     @KojIzv    char(1)='S',              -- Z - Zbiren,    S - So Stavki
  114784.     @Markiran    char(1) = Null,        -- D - So Prevoznik,     N - Bez Prevoznik
  114785.     @OdDokr_ZbDokr char(1) = 'Z',    -- D - Od Dokr    Z - od ZbDokr
  114786.     @Sifra_Nal     smallint=null,
  114787.     @Broj_Nal     int=null,
  114788.     @Sifra_Grad    Smallint = Null,
  114789.     @Sifra_Pat    smallint = NULL,
  114790.     @Sifra_Kup    char(6) = Null,
  114791.     @KojDatum char(1)='N', --D-Dat.dosp,N-dat.nar.,I-po datispor.(Orbico)
  114792.     @Smena    char(1)= null
  114793. AS
  114794.     Declare @SSQL as varchar(8000)
  114795.     Set @SSQL =  '  Select S.Sifra_Art, A.ImeArt, A.Edmera, A.DogCena, A.Sifra_Tar, T.ProcOsn,  
  114796.                     Sum(S.Kolic/(Case When A.ImaKomerc>0 Then A.ImaKomerc Else 1 End)) Paketi, SUM(S.Kolic) Kolic, 
  114797.                     Sum(Case When A.BTezina <> 0 Then S.Kolic*A.BTezina Else 0 End) as BTezina,A.Kto,D.Sifra_Kup, K.ImeKup, 
  114798.             Sum(Case When A.Tezina <> 0 Then S.Kolic*A.Tezina Else 0 End) as Tezina, Sum(Case When A.Volumen <> 0 Then S.Kolic*A.Volumen Else 0 End) as Volumen
  114799.                     From StaNarac S
  114800.                     Inner Join Naracki D On D.NarID=S.NarID
  114801. Inner Join Komint K on D.Sifra_kup=K.Sifra_kup
  114802.                     Inner Join Katart A On A.Sifra_Art = S.Sifra_Art 
  114803.                     INNER JOIN Tarifi T ON A.Sifra_Tar=T.Sifra_Tar
  114804.                     Where 1=1 '
  114805.     If @Sifra_Oe Is Not Null
  114806.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  114807.     If @Sifra_Dok Is Not Null
  114808.         Set @SSQL = @SSQL + ' And D.Sifra_Nar In (' + @Sifra_Dok + ') '
  114809.     If @Broj_Dok_Od Is Not Null
  114810.         Set @SSQL = @SSQL + ' And D.Broj_Nar >= ' + Cast(@Broj_Dok_Od as varchar(10)) + ' '
  114811.     If @Broj_Dok_Do Is Not Null
  114812.         Set @SSQL = @SSQL + ' And D.Broj_Nar <= ' + Cast(@Broj_Dok_Do as varchar(10)) + ' '
  114813.     If @KojDatum = 'D'
  114814.         BEGIN
  114815.         If @Datum_Od Is Not Null
  114816.             Set @SSQL = @SSQL + ' And Dateadd(day, D.Rok, D.Datum_Nar) >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  114817.         If @Datum_Do Is Not Null
  114818.             Set @SSQL = @SSQL + ' And Dateadd(day, D.Rok, D.Datum_Nar) <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  114819.         END
  114820.     ELSE if @KojDatum='I'
  114821.         BEGIN
  114822.         If @Datum_Od Is Not Null
  114823.             Set @SSQL = @SSQL + ' And D.Dat_Isporaka >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  114824.         If @Datum_Do Is Not Null
  114825.             Set @SSQL = @SSQL + ' And D.Dat_Isporaka <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  114826.         END
  114827.     else
  114828.         BEGIN
  114829.         If @Datum_Od Is Not Null
  114830.             Set @SSQL = @SSQL + ' And D.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  114831.         If @Datum_Do Is Not Null
  114832.             Set @SSQL = @SSQL + ' And D.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  114833.         END
  114834.     If @Sifra_Prev Is Not Null
  114835.         Set @SSQL = @SSQL + ' And D.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  114836.     If @Markiran = 'D'
  114837.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Not Null '
  114838.     Else If @Markiran = 'N'
  114839.         Set @SSQL = @SSQL + ' And D.Sifra_Prev Is Null '
  114840.     IF @Sifra_Pat IS NOT NULL
  114841.         Set @SSQL = @SSQL + ' And D.Sifra_Pat = '+cast(@Sifra_Pat as varchar(5)) +' ' 
  114842.     If @Sifra_Kup Is Not Null
  114843.         Set @SSQL = @SSQL + ' And A.Kto = ''' + cast(@Sifra_Kup as varchar(6)) + ''' '
  114844.     If @Smena is not null
  114845.         Set @SSQL = @SSQL + ' And D.Smena= '''+cast(@Smena as char(1))+''' '
  114846.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art, A.ImeArt, A.Edmera, A.Kto,  A.DogCena, A.Sifra_Tar, T.ProcOsn,D.Sifra_Kup, K.ImeKup '
  114847.     Set @SSQL = @SSQL + ' Order By A.ImeArt  '
  114848. --print @SSQL
  114849.     Exec(@SSQL)
  114850.  
  114851.  
  114852.  
  114853.  
  114854.  
  114855. Go
  114856. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglabarkod]'))
  114857. drop procedure [dbo].[sp_preglabarkod]
  114858.  
  114859. Go
  114860. create procedure sp_PreglABarKOd
  114861. @Sifra_Art varchar(20)= null
  114862. As
  114863.     select A.*, T.ImeKatPak from ABarPak A
  114864.     Left outer Join TipKAtPakuv T on A.Sifra_katPak= T.Sifra_katPak
  114865.     where A.Sifra_Art= @Sifra_Art
  114866.  
  114867.  
  114868.  
  114869.  
  114870. Go
  114871. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglaktivnosti]'))
  114872. drop procedure [dbo].[sp_preglaktivnosti]
  114873.  
  114874. Go
  114875.  
  114876.  
  114877. CREATE        PROCEDURE sp_PreglAktivnosti
  114878.     @Sifra_OE    Smallint,
  114879.     @Datum_Od    Smalldatetime,
  114880.     @Datum_Do    Smalldatetime,
  114881.     @TipDokNapl varchar(200),            --ovde daj    (1, 16, 306) za MIA
  114882.     @TipDokProd varchar(200),
  114883.     @KoiOe    varchar(6) = Null,    -- ova go dodadovme za alma (wrigly) - inaku ne se koristi
  114884.     @GrKup varchar(500)= null,
  114885.     @GrArt varchar(500)= null
  114886. AS
  114887.     Declare @SSQL Varchar(4000)
  114888.     Declare @Uslov Varchar(4000)
  114889.     Declare @ASifra_OE   smallint
  114890.     Declare @ASifra_Kup  varchar(12)
  114891.     Declare @ADatumVreme smalldatetime
  114892.     Declare @AAktivnost  char(1)
  114893.     Declare @SoBarKod char(1)
  114894.     Declare @Vreme  varchar(5)
  114895.     create        Table #tSiteAkt
  114896.     (Sifra_OE   smallint, 
  114897.      Sifra_Kup  varchar(12), 
  114898.      DatumVreme smalldatetime, 
  114899.      Aktivnost  char(1),
  114900.      SoBarKod char(1)
  114901.     )
  114902.     CREATE      Table #tAkt
  114903.     (Sifra_Kup        varchar(12),
  114904.      Datum            smalldatetime,
  114905.      ImeKup           varchar(40),
  114906.      SMesto           varchar(30),
  114907.      Ime_2K           varchar(25), 
  114908.      Vreme_Vlez       varchar(5),
  114909.      Vreme_Izlez      varchar(5),
  114910.      Prodazba         decimal(18,6),
  114911.      Naplata          decimal(18,6),
  114912.      Vreme_NeuspProd  varchar(5),
  114913.      Vreme_NeuspNapl  varchar(5),
  114914.      SoBarkod    char(1)
  114915.     )
  114916.     CREATE     Table #tFin
  114917.     (Sifra_Kup varchar(12),
  114918.      Datum     smalldatetime,
  114919.      Prodazba  decimal(18,6),
  114920.      Naplata   decimal(18,6)
  114921.     )
  114922.     Set @Uslov = ''
  114923. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  114924. -- Tabelata #PomtFin ja polnime so Naplatata od Finansiskite dokumenti
  114925.     CREATE     Table #PomtFin
  114926.     (Sifra_Kup varchar(12),
  114927.      Datum     smalldatetime,
  114928.      Prodazba  decimal(18,6),
  114929.      Naplata   decimal(18,6)
  114930.     )
  114931.     Set @SSQL =    'INSERT INTO #PomtFin
  114932.             SELECT Sifra_Kup, Datum_Dok Datum, 0 as Prodazba, Round(Sum(Pobaruva),4) Naplata
  114933.             FROM AnFinDok
  114934.             WHERE 1=1 '
  114935.     If @TipDokNapl Is Not Null 
  114936.         Set @SSQL = @SSQL + ' And Sifra_dok  IN (' + @TipDokNapl + ') '
  114937.     If @Sifra_OE IS NOT NULL
  114938.         Set @SSQL = @SSQL + ' AND Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  114939.     If @KoiOE Is Not Null
  114940.         Set @SSQL = @SSQL + ' And Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  114941.     If @Datum_Od Is NOT Null
  114942.         SET @SSQL = @SSQL + 'AND Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  114943.     If @Datum_Do Is NOT Null
  114944.         SET @SSQL = @SSQL + 'AND Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  114945.     SET @SSQL = @SSQL + ' GROUP BY Sifra_Kup, Datum_Dok '
  114946.     Exec(@SSQL)
  114947. -- Tabelata #PomtFin ja polnime so Prodazbata od Materijanite dokumenti
  114948.     Set @SSQL =    'INSERT INTO #PomtFin
  114949.             SELECT Sifra_Kup, Datum_Dok Datum, Round(Sum(Toc200),4) Prodazba, 0 as Naplata
  114950.             FROM Dokr
  114951.             WHERE 1=1 '
  114952.     If @TipDokProd Is Not Null 
  114953.         Set @SSQL = @SSQL + ' And Sifra_dok  IN (' + @TipDokProd + ') '
  114954.     If @Sifra_OE IS NOT NULL
  114955.         Set @SSQL = @SSQL + ' AND Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  114956.     If @KoiOE Is Not Null
  114957.         Set @SSQL = @SSQL + ' And Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  114958.     If @Datum_Od Is NOT Null
  114959.         SET @SSQL = @SSQL + 'AND Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  114960.     If @Datum_Do Is NOT Null
  114961.         SET @SSQL = @SSQL + 'AND Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  114962.     SET @SSQL = @SSQL + ' GROUP BY Sifra_Kup, Datum_Dok '
  114963.     Exec(@SSQL)
  114964. -- Vo Tabelata #tFin polnime podatoci od #PomtFin Grupirani po Sifra_Kup, Datum_Dok za da ima edna stavka za Kupuvac na datum za prodazba i naplata
  114965.     Insert Into #tFin
  114966.     Select Sifra_Kup, Datum, Sum(Prodazba), Sum(Naplata)
  114967.     From #PomtFin
  114968.     Group By Sifra_Kup, Datum
  114969. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  114970.     Set @SSQL = 'INSERT INTO #tAkt (Sifra_kup, Datum)
  114971.             SELECT DISTINCT Sifra_Kup, dbo.fn_VratiDatum(DatumVreme) Datum
  114972.             FROM Akcija WHERE 1=1 '
  114973.     If @Sifra_OE IS NOT NULL
  114974.         Set @Uslov = ' AND Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  114975.     If @KoiOE Is Not Null
  114976.         Set @Uslov = @Uslov + ' And Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  114977.     If @Datum_Od Is NOT Null
  114978.         SET @Uslov = @Uslov + 'AND DatumVreme >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  114979.     If @Datum_Do Is NOT Null
  114980.         SET @Uslov = @Uslov + 'AND DatumVreme <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  114981.     Set @SSQL = @SSQL + @Uslov
  114982. PRINT @SSQL
  114983.     Exec(@SSQL)
  114984.     Set @SSQL = 'INSERT INTO #tSiteAkt SELECT Sifra_OE, Sifra_Kup, DatumVreme,  Aktivnost, SoBarKod FROM Akcija WHERE 1=1 '
  114985.     Set @SSQL = @SSQL + @Uslov
  114986. PRINT @SSQL
  114987.     Exec(@SSQL)
  114988.     UPDATE #tAkt  SET ImeKup = K.ImeKup, Smesto = K.SMesto, Ime_2K = KD.Ime_2K
  114989.     FROM Komint K, KDrugo2 KD
  114990.     WHERE #tAkt.Sifra_Kup = K.Sifra_kup AND K.KDrugo2 = KD.Sifra_2K
  114991.     UPDATE #tAkt  SET ImeKup = K.ImeKup, Smesto = K.SMesto
  114992.     FROM Komint K
  114993.     WHERE #tAkt.Sifra_Kup = K.Sifra_kup AND K.KDrugo2 IS NULL
  114994.     UPDATE #tAkt SET Prodazba = F.Prodazba, Naplata = F.Naplata
  114995.     FROM #tFin F
  114996.     WHERE #tAkt.Sifra_Kup = F.Sifra_kup AND #tAkt.Datum = F.Datum
  114997.     Set Nocount On
  114998.     Declare Akt Cursor Fast_Forward For Select * From #tSiteAkt  
  114999.     Open Akt
  115000.     Fetch Next From Akt Into @ASifra_OE, @ASifra_Kup, @ADatumVreme, @AAktivnost, @SoBarKod
  115001.     While @@Fetch_Status=0
  115002.         Begin
  115003.             Set @Vreme  = ' '
  115004.              If @AAktivnost = 'V'
  115005.                 Begin
  115006.                 Set @Vreme  = dbo.fn_VratiVreme(@ADatumVreme)
  115007.                 UPDATE #tAkt SET Vreme_Vlez = @Vreme, SoBarKod=@SoBarKod
  115008.                 WHERE Sifra_Kup = @ASifra_Kup AND Datum = dbo.fn_VratiDatum(@ADatumVreme)
  115009.                 End
  115010.             If @AAktivnost = 'I'
  115011.                 Begin
  115012.                 Set @Vreme  = dbo.fn_VratiVreme(@ADatumVreme)
  115013.                 UPDATE #tAkt SET Vreme_Izlez = @Vreme, SoBarKod=@SoBarKod
  115014.                 WHERE Sifra_Kup = @ASifra_Kup AND Datum = dbo.fn_VratiDatum(@ADatumVreme)
  115015.                 End
  115016.             If @AAktivnost = 'R'
  115017.                 Begin
  115018.                 Set @Vreme  = dbo.fn_VratiVreme(@ADatumVreme)
  115019.                 UPDATE #tAkt SET Vreme_NeuspProd = @Vreme, SoBarKod=@SoBarKod
  115020.                 WHERE Sifra_Kup = @ASifra_Kup AND Datum = dbo.fn_VratiDatum(@ADatumVreme)
  115021.                 End
  115022.             If @AAktivnost = 'A'
  115023.                 Begin
  115024.                 Set @Vreme  = dbo.fn_VratiVreme(@ADatumVreme)
  115025.                 UPDATE #tAkt SET Vreme_NeuspNapl = @Vreme, SoBarKod=@SoBarKod
  115026.                 WHERE Sifra_Kup = @ASifra_Kup AND Datum = dbo.fn_VratiDatum(@ADatumVreme)
  115027.                 End
  115028.             Fetch Next From Akt Into @ASifra_OE, @ASifra_Kup, @ADatumVreme, @AAktivnost, @SoBarKod
  115029.         End --While
  115030.     Close Akt
  115031.     Deallocate Akt
  115032.     SELECT A.Sifra_Kup, A.Datum, A.ImeKup, A.SMesto, A.Ime_2K, A.Vreme_Vlez, A.Vreme_Izlez, A.Prodazba, 
  115033.         A.Naplata, A.Vreme_NeuspProd, A.Vreme_NeuspNapl, A.SoBarkod, Kup.KDrugo1, K1.Ime_1K--, SA.ImeAkc
  115034.     FROM #tAkt A
  115035.     Left Outer Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  115036.     Left Outer Join KDrugo1 K1 On K1.Sifra_1K=Kup.KDrugo1
  115037.    --Inner join Akcija AK on  AK.Sifra_Kup= A.Sifra_Kup
  115038.   --left outer join SifAkc SA on SA.Sifra_Akc=AK.Aktivnost
  115039.     Set Nocount Off
  115040.  
  115041.  
  115042.  
  115043.  
  115044. Go
  115045. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglaktivnosti_poobj]'))
  115046. drop procedure [dbo].[sp_preglaktivnosti_poobj]
  115047.  
  115048. Go
  115049.  
  115050.  
  115051.  
  115052. CREATE     PROCEDURE sp_PreglAktivnosti_PoObj
  115053.     @Sifra_Oe    smallint = Null,
  115054.     @Datum_Od    smalldatetime = Null,
  115055.     @Datum_Do    smalldatetime = Null,
  115056.     @KoiOe    varchar(6) = Null,    -- ova go dodadovme za alma (wrigly) - inaku ne se koristi
  115057.         @GrKup varchar(500)= null,
  115058.     @GrArt varchar(500)= null
  115059. AS
  115060.     Declare @SSQL as varchar(4000)
  115061.     CREATE     Table #Prodazba
  115062.     (
  115063.      Sifra_Kup varchar(12),
  115064.      Datum     smalldatetime,
  115065.      Prodazba  decimal(18,6)
  115066.     )
  115067.     Set @SSQL =    'INSERT INTO #Prodazba
  115068.             SELECT Sifra_Kup, Datum_Dok, Round(Sum(Toc200),4) Prodazba
  115069.             FROM Dokr
  115070.             WHERE 1=1 And VlIzl=''I'' And Sifra_Za=''1'' '
  115071.     If @Sifra_OE IS NOT NULL
  115072.         Set @SSQL = @SSQL + ' AND Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) + ' '
  115073.     If @KoiOE Is Not Null
  115074.         Set @SSQL = @SSQL + ' And Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  115075.     If @Datum_Od Is NOT Null
  115076.         SET @SSQL = @SSQL + 'AND Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  115077.     If @Datum_Do Is NOT Null
  115078.         SET @SSQL = @SSQL + 'AND Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  115079.     SET @SSQL = @SSQL + ' GROUP BY Sifra_Kup, Datum_Dok '
  115080.     Exec(@SSQL)
  115081.     Set @SSQL= ' Select A.Sifra_Oe, O.ImeOrg, A.Sifra_Kup, Kup.ImeKup, A.DatumVreme, A.Aktivnost, A.Sifra_Obj, KO.ImeObj, A.SoBarKod, P.Prodazba,
  115082.                 (Case When KO.Sifra_Obj Is Not Null Then KO.SMesto Else Kup.SMesto End) SMesto, 
  115083.                 (Case When KO.Sifra_Obj Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End) KDrugo1, K1.Ime_1K, K2.Ime_2K
  115084.             From Akcija A
  115085.             Inner Join Orged O On O.Sifra_Oe=A.Sifra_Oe
  115086.             Inner Join Komint Kup On Kup.Sifra_Kup=A.Sifra_Kup
  115087.             Left Outer Join KObjekti KO On KO.Sifra_Kup=A.Sifra_Kup And KO.Sifra_Obj=A.Sifra_Obj 
  115088.             Left Outer Join #Prodazba P On P.Sifra_Kup = A.Sifra_Kup And P.Datum = Cast(Cast(Year(A.DatumVreme) as varchar(4))+''-''+Cast(Month(DatumVreme) as varchar(2))+''-''+Cast(Day(DatumVreme) as varchar(2)) as SmallDatetime)
  115089.             Left Outer Join KDrugo1 K1 On K1.Sifra_1K=(Case When KO.Sifra_Obj Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End)
  115090.             Left Outer Join KDrugo2 K2 On K2.Sifra_2K=(Case When KO.Sifra_Obj Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End)
  115091.             Where 1=1 '
  115092.     If @Sifra_Oe Is Not Null 
  115093.         Set @SSQL = @SSQL + 'And A.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  115094.     If @KoiOE Is Not Null
  115095.         Set @SSQL = @SSQL + ' And Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOE As Varchar(6)) + ''') '
  115096.     If @Datum_Od Is Not Null 
  115097.         Set @SSQL = @SSQL + 'And A.DatumVreme >= ''' + Cast(@Datum_Od as varchar(35)) + ''' '
  115098.     If @Datum_Do Is Not Null 
  115099.         Set @SSQL = @SSQL + 'And A.DatumVreme < ''' + Cast(@Datum_Do as varchar(35)) + ''' '
  115100.     Set @SSQL = @SSQL + ' Order By A.DatumVreme '
  115101.     Exec(@SSQL)
  115102.  
  115103.  
  115104.  
  115105.  
  115106.  
  115107. Go
  115108. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglamorgrp]'))
  115109. drop procedure [dbo].[sp_preglamorgrp]
  115110.  
  115111. Go
  115112.  
  115113.  
  115114. CREATE   PROCEDURE sp_PreglAmorGrp
  115115.     @Sifra_AmorOd    char(3),    
  115116.     @Sifra_AmorDo    char(3)
  115117.  AS
  115118.     Declare @SSQL as Varchar(2000)
  115119.     Set @SSQL = 'Select Sifra_Amor, Ime, Ime2, Ime3, Ime4, Ime5, Stapka, Stara_Grp, Kto_Anal
  115120.             From AmorGrp
  115121.             Where 1=1 '
  115122.     If @Sifra_AmorOd Is Not null
  115123.         Set @SSQL = @SSQL + ' And Sifra_Amor >= ' + @Sifra_AmorOd + ' '
  115124.     If @Sifra_AmorDo Is Not null
  115125.         Set @SSQL = @SSQL + ' And Sifra_Amor <= ' + @Sifra_AmorDo + ' '
  115126.     Exec(@SSQL)
  115127.  
  115128.  
  115129.  
  115130. Go
  115131. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglanal]'))
  115132. drop procedure [dbo].[sp_preglanal]
  115133.  
  115134. Go
  115135.  
  115136.  
  115137. CREATE    PROCEDURE sp_PreglAnal
  115138.     @Klasa        varchar(1),
  115139.         @DelSifKto  varchar(10) = null
  115140. AS
  115141.     Declare @SSQL Varchar(1000)
  115142.     Set @SSQL = 'SELECT A.*, S.ImeSint, K.Kto_Klas, K.ImeKlasa
  115143.         From Anal A
  115144.         Inner Join Sint S On A.Kto_Sint=S.Kto_Sint
  115145.         Inner Join Klas K On Substring(A.Kto_Anal,1,1)=K.Kto_Klas '
  115146.     If @Klasa Is not Null
  115147.         Set @SSQL = @SSQL + 'Where K.Kto_Klas = ' + @Klasa + ' '
  115148.     If @DelSifKto IS NOT NULL 
  115149.         If IsNumeric(@DelSifKto)=1
  115150.             Set @SSQL = @SSQL + ' And A.Kto_Anal Like ''' + @DelSifKto + '%'' '
  115151.         Else
  115152.             Set @SSQL = @SSQL + ' And A.ImeAnal Like ''' + @DelSifKto + '%'' '
  115153.         Exec(@SSQL)
  115154.  
  115155.  
  115156.  
  115157. Go
  115158. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglarkakatlist]'))
  115159. drop procedure [dbo].[sp_preglarkakatlist]
  115160.  
  115161. Go
  115162.  
  115163.  
  115164.  
  115165. CREATE     PROCEDURE sp_PreglArkaKatList
  115166.     @Kluc_Sodrz    varChar(20) = Null
  115167.  AS
  115168.      Select C.Kluc_Sodrz, C.Sifra_art, 
  115169.         case when K.ImeArt is null then '' else K.ImeArt end ImeArt,
  115170.                 C.dParam1, C.dParam2, C.cParam3, C.cParam4, C.Markiraj
  115171.          From ArkaKatList C
  115172.          left outer Join ArkaKat K On K.Sifra_art = C.Sifra_art
  115173.      Where Kluc_Sodrz=@Kluc_Sodrz
  115174.  
  115175.  
  115176.  
  115177.  
  115178. Go
  115179. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglarkakatlist_katart]'))
  115180. drop procedure [dbo].[sp_preglarkakatlist_katart]
  115181.  
  115182. Go
  115183.  
  115184. CREATE      PROCEDURE sp_PreglArkaKatList_KatArt
  115185.     @Kluc_Sodrz    varChar(20) = Null
  115186.  
  115187.  AS
  115188.  
  115189.      Select C.Kluc_Sodrz, C.Sifra_art, 
  115190.         case when K.ImeArt is null then '' else K.ImeArt end ImeArt,
  115191.         C.dParam1, C.dParam2, C.cParam3, C.cParam4, C.Markiraj
  115192.      From ArkaKatList C
  115193.      left outer Join KatArt K On K.Sifra_art = C.Sifra_art
  115194.      Where Kluc_Sodrz=@Kluc_Sodrz
  115195.  
  115196.  
  115197.  
  115198.  
  115199.  
  115200. Go
  115201. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglbanksmetki]'))
  115202. drop procedure [dbo].[sp_preglbanksmetki]
  115203.  
  115204. Go
  115205. CREATE PROCEDURE sp_PreglBankSmetki
  115206. AS
  115207.     SELECT * FROM BankSmetki
  115208.  
  115209.  
  115210.  
  115211. Go
  115212. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcenovnik]'))
  115213. drop procedure [dbo].[sp_preglcenovnik]
  115214.  
  115215. Go
  115216.  
  115217.  
  115218.  
  115219. CREATE      PROCEDURE sp_PreglCenovnik
  115220.     @Sifra_kup    char(6) = Null,
  115221.     @Sifra_art_Od    varchar(20) = Null,
  115222.     @Sifra_art_Do    varchar(20) = Null,
  115223.     @Kto        char(6) = Null,
  115224.     @Sifra_Gr    char(3) = Null,
  115225.     @Sifra_Podg    char(6) = Null,
  115226.     @Lokacija    varchar(10) = Null,
  115227.     @Sifra_Tar    char(3) = Null,
  115228.     @Sifra_Brand    Smallint = Null,
  115229.     @Sifra_ZBrand    Smallint = Null,
  115230.     @KojCenovnik    Char(1) = Null
  115231.  AS
  115232.     Declare @SSQL as Varchar(4000)
  115233.     Set @SSQL= ' Select C.Sifra_Kup, KUP.ImeKup, C.Sifra_art, K.ImeArt, C.Cena, C.Popust, C.SpeCena, C.SpePopust, C.PocDatum, C.KrajDatum,
  115234.                 K.Sifra_Podg, K.EdMera, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr, C.KojCenovnik, C.Aktiven, C.SImeVal, Val.ImeVal, K.Tezina,
  115235.                                 C.PopustGot, K.Nom
  115236.                 From Cenovnik C
  115237.                 Inner Join Katart K On K.Sifra_art = C.Sifra_art
  115238.                 Left Outer Join Komint KUP On KUP.Sifra_Kup = C.Sifra_kup
  115239.                 Left Outer Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  115240.                 Left Outer Join Grupi G On G.Sifra_Gr = P.Sifra_Gr 
  115241.                 Left Outer Join KrsLista Val On Val.SImeVal = C.SImeVal '
  115242. --       Set @SSQL=@SSQL+' INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar '
  115243.     If @Sifra_ZBrand Is Not Null
  115244.            Set @SSQL=@SSQL+' INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  115245.     Set @SSQL=@SSQL+ ' Where 1=1 ' 
  115246.     If @Sifra_Kup Is Not Null
  115247.         Set @SSQL = @SSQL + ' and C.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  115248.     If @Sifra_Art_Od Is Not Null
  115249.         Set @SSQL = @SSQL + ' and C.Sifra_art >= ' + @Sifra_art_Od + ' '
  115250.     If @Sifra_Art_Do Is Not Null
  115251.         Set @SSQL = @SSQL + ' and C.Sifra_art <= ' + @Sifra_art_Do + ' '
  115252.     If @KojCenovnik Is Not Null
  115253.         Set @SSQL = @SSQL + ' and C.KojCenovnik = ''' + @KojCenovnik + ''' '
  115254.     If @Kto Is Not Null
  115255.         Set @SSQL = @SSQL + ' and K.Kto= ''' + @Kto + ''' '
  115256.     If @Sifra_Podg Is Not Null
  115257.         Set @SSQL = @SSQL + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  115258.     If @Sifra_Gr Is Not Null
  115259.         Set @SSQL = @SSQL + ' and G.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  115260.     If @Lokacija Is Not Null
  115261.         Set @SSQL = @SSQL + ' and K.Lokacija = ''' + @Lokacija + ''' '
  115262.     If @Sifra_Brand Is Not Null
  115263.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  115264.     If @Sifra_ZBrand Is Not Null
  115265.         Set @SSQL=@SSQL+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  115266.        If @Sifra_Tar Is Not Null
  115267.               Set @SSQL=@SSQL+'AND (K.Sifra_Tar='''+@Sifra_Tar+''') '
  115268.         Set @SSQL=@SSQL+' Order By C.Sifra_Art '
  115269.     Exec (@SSQL)
  115270.  
  115271.  
  115272.  
  115273.  
  115274. Go
  115275. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcenovnik1]'))
  115276. drop procedure [dbo].[sp_preglcenovnik1]
  115277.  
  115278. Go
  115279.  
  115280.  
  115281.  
  115282. CREATE         PROCEDURE sp_PreglCenovnik1
  115283.     @Sifra_Pat    smallint = NULL,
  115284.     @Sifra_Reg    smallint= NULL,
  115285.     @Sifra_Grad    smallint=NULL,
  115286.     @Sifra_Kup    char(6)=NULL,
  115287.     @SoPeriod    char(1)='N',
  115288.     @PatOdKomintPat    char(1)=''
  115289. AS
  115290. DECLARE @SSQL varchar(4000)
  115291. CREATE TABLE #TmpKup
  115292. (Sifra_Kup char(6))
  115293. IF @Sifra_Pat IS NULL
  115294.     SET @SSQL = 'SELECT Sifra_Kup FROM Komint WHERE 1=1 '
  115295. ELSE
  115296. Begin
  115297.     IF @PatOdKomintPat='D'
  115298.         INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup FROM KomintPat WHERE Sifra_Pat=@Sifra_Pat
  115299.     Else
  115300.     Begin
  115301.         INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup FROM Komint WHERE Sifra_Pat=@Sifra_Pat OR Sifra_Pat2=@Sifra_Pat
  115302.         INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup FROM KObjekti WHERE (Sifra_Pat=@Sifra_Pat OR Sifra_Pat2=@Sifra_Pat) AND Sifra_Kup NOT IN 
  115303.         (Select Sifra_Kup FROM #TmpKup)
  115304.     End
  115305. End
  115306.  
  115307. INSERT INTO #TmpKup EXEC (@SSQL)
  115308. IF @Sifra_Kup IS NOT NULL 
  115309. Begin
  115310.     SELECT * FROM #TmpKup WHERE Sifra_Kup=@Sifra_Kup
  115311.     IF @@RowCount =0 
  115312.         INSERT INTO #TmpKup VALUES (@Sifra_Kup)
  115313. End
  115314.     
  115315. CREATE TABLE #TmpCen
  115316. (Sifra_Kup char(6),
  115317. Sifra_art varchar(20),
  115318. Cena      decimal(18,4),
  115319. Popust   decimal(6,2),
  115320. KrajDatum smalldatetime,
  115321. PopustGot    decimal(6,2))
  115322. IF @SoPeriod='D'    --03.06.11 cermat
  115323.     INSERT INTO #TmpCen SELECT Sifra_Kup, Sifra_art, Cena, Popust, KrajDatum, PopustGot FROM Cenovnik WHERE Sifra_Kup IN
  115324.     (SELECT Sifra_Kup FROM #TmpKup) AND ((PocDatum = KrajDatum AND KrajDatum='2003-01-01') OR KrajDatum IS NULL OR KrajDatum < GetDate())
  115325.     UNION
  115326.     SELECT Sifra_Kup, Sifra_art, SpeCena, SpePopust, KrajDatum, PopustGot FROM Cenovnik WHERE Sifra_Kup IN
  115327.     (SELECT Sifra_Kup FROM #TmpKup) AND (KrajDatum IS NOT NULL AND PocDatum<KrajDatum AND PocDatum<GetDate() AND KrajDatum>GetDate())
  115328. ELSE
  115329.     INSERT INTO #TmpCen SELECT C.Sifra_Kup, C.Sifra_art, C.Cena, C.Popust, C.KrajDatum, C.PopustGot FROM Cenovnik C 
  115330.     INNER JOIN #TmpKup K ON C.Sifra_Kup=K.Sifra_Kup 
  115331.     WHERE (C.PocDatum = KrajDatum AND C.KrajDatum='2003-01-01') OR C.KrajDatum IS NULL OR C.KrajDatum >=GetDate()-1 
  115332. --    INSERT INTO #TmpCen SELECT Sifra_Kup, Sifra_art, Cena, Popust, KrajDatum, PopustGot FROM Cenovnik WHERE Sifra_Kup IN
  115333. --    (SELECT Sifra_Kup FROM #TmpKup) AND ((PocDatum = KrajDatum AND KrajDatum='2003-01-01') OR KrajDatum IS NULL OR KrajDatum >=GetDate()-1)
  115334.  
  115335. SELECT * FROM #TmpCen ORDER BY Sifra_Kup, Sifra_Art
  115336.  
  115337.  
  115338.  
  115339.  
  115340.  
  115341. Go
  115342. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcenovnikicenpopodgr]'))
  115343. drop procedure [dbo].[sp_preglcenovnikicenpopodgr]
  115344.  
  115345. Go
  115346.  
  115347.  
  115348. CREATE        PROCEDURE sp_PreglCenovnikICenPoPodgr
  115349.     @Sifra_Pat    smallint = NULL,
  115350.     @Sifra_Reg    smallint= NULL,
  115351.     @Sifra_Grad    smallint=NULL,
  115352.     @PatOdKomintPat    char(1)=''
  115353. AS
  115354. IF @Sifra_Pat IS NULL
  115355.     SELECT Sifra_Kup, Sifra_art, Cena, Popust, KrajDatum, PopustGot FROM Cenovnik 
  115356.     WHERE  (PocDatum = KrajDatum AND KrajDatum='2003-01-01') AND Aktiven='D'
  115357.     UNION
  115358.     SELECT Sifra_Kup, Sifra_art, SpeCena Cena, Popust, KrajDatum, PopustGot FROM Cenovnik 
  115359.     WHERE  (KrajDatum IS NULL OR KrajDatum >=GetDate()-1) AND Aktiven='D'
  115360.     UNION 
  115361.     SELECT TipKup AS Sifra_Kup, Sifra_Podelba as Sifra_art, Cena, Uces as Popust, Null as KrajDat, 0 PopustGot FROM CenPoPodgr
  115362. ELSE
  115363. Begin
  115364.     CREATE TABLE #TmpKup
  115365.     (Sifra_Kup    char(6))
  115366.  
  115367.     IF @PatOdKomintPat='D'
  115368.         INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup FROM KomintPat WHERE Sifra_Pat=@Sifra_Pat
  115369.     Else
  115370.     Begin
  115371.         INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup FROM Komint WHERE Sifra_Pat=@Sifra_Pat OR Sifra_Pat2=@Sifra_Pat
  115372.         INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup FROM KObjekti WHERE (Sifra_Pat=@Sifra_Pat OR Sifra_Pat2=@Sifra_Pat) AND Sifra_Kup NOT IN 
  115373.         (Select Sifra_Kup FROM #TmpKup)
  115374.     End
  115375.     Declare @SSQL varchar(2000)
  115376.     create table #tmp1(Pole varchar(5))
  115377.     
  115378.     set @SSQL='SELECT CenPoPodgrTipKup FROM Konfig'
  115379.     INSERT INTO #tmp1 EXEC (@SSQL)
  115380.     
  115381.     Declare @CenESoKomint as varchar(5)
  115382.     SELECT @CenESoKomint=Pole FROM #tmp1
  115383.  
  115384.     IF @CenESoKomint='K'
  115385.         SELECT C.Sifra_Kup, C.Sifra_art, C.Cena, C.Popust, C.KrajDatum, C.PopustGot FROM Cenovnik C
  115386.         INNER JOIN #TmpKup K ON C.Sifra_Kup=T.Sifra_Kup
  115387.         WHERE  (C.PocDatum = KrajDatum AND C.KrajDatum='2003-01-01') AND C.Aktiven='D'
  115388.         UNION
  115389.         SELECT C.Sifra_Kup, C.Sifra_art, C.SpeCena Cena, C.Popust, C.KrajDatum, C.PopustGot FROM Cenovnik C
  115390.         INNER JOIN #TmpKup K ON C.Sifra_Kup=T.Sifra_Kup
  115391.         WHERE  (C.KrajDatum IS NULL OR C.KrajDatum >=GetDate()-1) AND C.Aktiven='D'
  115392.         UNION 
  115393.         SELECT C.TipKup AS Sifra_Kup, C.Sifra_Podelba as Sifra_art, C.Cena, C.Uces as Popust, Null as KrajDat, 0 PopustGot FROM CenPoPodgr C
  115394.         INNER JOIN #TmpKup K ON C.TipKup=T.Sifra_Kup
  115395.     ELSE
  115396.         SELECT C.Sifra_Kup, C.Sifra_art, C.Cena, C.Popust, C.KrajDatum, C.PopustGot FROM Cenovnik C
  115397.         INNER JOIN #TmpKup K ON C.Sifra_Kup=T.Sifra_Kup
  115398.         WHERE  (C.PocDatum = KrajDatum AND C.KrajDatum='2003-01-01') AND C.Aktiven='D'
  115399.         UNION
  115400.         SELECT C.Sifra_Kup, C.Sifra_art, C.SpeCena Cena, C.Popust, C.KrajDatum, C.PopustGot FROM Cenovnik C
  115401.         INNER JOIN #TmpKup K ON C.Sifra_Kup=T.Sifra_Kup
  115402.         WHERE  (C.KrajDatum IS NULL OR C.KrajDatum >=GetDate()-1) AND C.Aktiven='D'
  115403.         UNION 
  115404.         SELECT C.TipKup AS Sifra_Kup, C.Sifra_Podelba as Sifra_art, C.Cena, C.Uces as Popust, Null as KrajDat, 0 PopustGot FROM CenPoPodgr C
  115405.  End
  115406.  
  115407.  
  115408.  
  115409.  
  115410.  
  115411. Go
  115412. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcenovnikotkup]'))
  115413. drop procedure [dbo].[sp_preglcenovnikotkup]
  115414.  
  115415. Go
  115416.  
  115417. CREATE   procedure sp_PreglCenovnikOtkup
  115418.     @Vazi_Od smalldatetime,
  115419.     @Sifra_Art varchar(20)= null,
  115420.     @Tip char(1)='V'
  115421. As
  115422.     Declare @SSQL as varchar(2000)
  115423. If @Tip='N' 
  115424.     Set @SSQL='Select distinct C.Vazi_Od, C.Sifra_Art, K.ImeArt'
  115425. else 
  115426.     Set @SSQL='Select K.ImeArt,C.* ' 
  115427.     Set @SSQL =@SSQL + '  From CenovnikOtkup C
  115428.                        Inner Join Katart K on C.Sifra_Art=K.Sifra_Art
  115429.                        Where 1=1 '
  115430. If @Vazi_od is not null
  115431.     Set @SSQL=@SSQL +' and C.Vazi_Od>='''+ cast(@Vazi_Od as varchar(35))+''' '
  115432. If @Sifra_Art is not null   
  115433.     Set @SSQL =@SSQL +'and C.Sifra_Art='+@Sifra_Art+' '
  115434. Set @SSQL=@SSQL + ' Order By C.Vazi_Od' 
  115435. print @ssql
  115436. exec(@SSQL)
  115437.  
  115438.  
  115439.  
  115440.  
  115441.  
  115442. Go
  115443. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcenpoart]'))
  115444. drop procedure [dbo].[sp_preglcenpoart]
  115445.  
  115446. Go
  115447. CREATE  PROCEDURE sp_PreglCenPoArt
  115448.     @Tip_Cena    Char(1) = Null,
  115449.     @Sifra_art_Od    varchar(20) = Null,
  115450.     @Sifra_art_Do    varchar(20) = Null,
  115451.     @Sifra_Gr    char(3) = Null,
  115452.     @Sifra_Podg    char(6) = Null,
  115453.     @Lokacija    varchar(10) = Null,
  115454.     @Sifra_Tar    char(3) = Null,
  115455.     @Sifra_Brand    Smallint = Null,
  115456.     @Sifra_ZBrand    Smallint = Null
  115457.  AS
  115458.     Declare @SSQL as Varchar(4000)
  115459.     Set @SSQL= ' Select C.Tip_Cena, C.Sifra_art, K.ImeArt, C.Cena, C.Opis_Cena, C.Popust, C.SpeCena, C.SpePopust, C.PocDatum, C.KrajDatum,
  115460.                 K.Sifra_Podg, K.EdMera, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr
  115461.                 From CenPoArt C
  115462.                 Inner Join Katart K On K.Sifra_art = C.Sifra_art
  115463.                 Left Outer Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  115464.                 Left Outer Join Grupi G On G.Sifra_Gr = P.Sifra_Gr '
  115465.     If @Sifra_ZBrand Is Not Null
  115466.            Set @SSQL=@SSQL+' INNER JOIN DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg '
  115467.     Set @SSQL=@SSQL+ ' Where 1=1 ' 
  115468.     If @Sifra_Art_Od Is Not Null
  115469.         Set @SSQL = @SSQL + ' and C.Sifra_art >= ' + @Sifra_art_Od + ' '
  115470.     If @Sifra_Art_Do Is Not Null
  115471.         Set @SSQL = @SSQL + ' and C.Sifra_art <= ' + @Sifra_art_Do + ' '
  115472.     If @Tip_Cena Is Not Null
  115473.         Set @SSQL = @SSQL + ' and C.Tip_Cena = ''' + @Tip_Cena + ''' '
  115474.     If @Sifra_Podg Is Not Null
  115475.         Set @SSQL = @SSQL + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  115476.     If @Sifra_Gr Is Not Null
  115477.         Set @SSQL = @SSQL + ' and G.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  115478.     If @Lokacija Is Not Null
  115479.         Set @SSQL = @SSQL + ' and K.Lokacija = ''' + @Lokacija + ''' '
  115480.     If @Sifra_Brand Is Not Null
  115481.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  115482.     If @Sifra_ZBrand Is Not Null
  115483.         Set @SSQL=@SSQL+'AND (B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ') '
  115484.        If @Sifra_Tar Is Not Null
  115485.               Set @SSQL=@SSQL+'AND (K.Sifra_Tar='''+@Sifra_Tar+''') '
  115486.     Exec (@SSQL)
  115487.  
  115488.  
  115489. Go
  115490. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcenpopodgr_kup]'))
  115491. drop procedure [dbo].[sp_preglcenpopodgr_kup]
  115492.  
  115493. Go
  115494. CREATE  PROCEDURE sp_PreglCenPoPodgr_Kup
  115495.     @Sifra_Kup    char(6),         -- TipKup
  115496.     @Drugo7    smallint,        -- Podelba7, Grupa, Podgrupa
  115497.     @Sifra_Podg    char(6),
  115498.     @Sifra_Gr    char(3)
  115499. AS
  115500.     Declare @SSQL as varchar(8000)
  115501.     Set @SSQL = ' Select C.TipKup Sifra_Kup, Kup.ImeKup, C.Uces,
  115502.                 (Case When Tip_Podelba = ''A'' Then Sifra_Podelba Else Null End) RabGrupa, 
  115503.                 (Case When Tip_Podelba = ''B'' Then Sifra_Podelba Else Null End) Podgrupa,
  115504.                 (Case When Tip_Podelba = ''C'' Then Sifra_Podelba Else Null End) Grupa,
  115505.                 (Case Tip_Podelba When  ''A'' Then D7.Ime_7 When ''B'' Then P.Ime_Podg When ''C'' Then G.Ime_Gr Else Null End) Ime
  115506.             From CenPoPodgr C
  115507.             Left Outer Join Komint Kup On Kup.Sifra_Kup = C.TipKup
  115508.             Left Outer Join Drugo7 D7 On D7.Sifra_7 = Cast(C.Sifra_Podelba as int)
  115509.             Left Outer Join Podgrupi P On P.Sifra_Podg = C.Sifra_Podelba
  115510.             Left Outer Join Grupi G on G.Sifra_Gr = C.Sifra_Podelba
  115511.             WHERE 1=1 '
  115512.     If @Sifra_Kup Is Not Null
  115513.         Set @SSQL = @SSQL + ' And C.TipKup = ''' + @Sifra_Kup + ''' '
  115514. --    Set @SSQL = @SSQL + ' And (1=1 '
  115515.     If @Drugo7 Is Not Null
  115516.         Set @SSQL = @SSQL + ' And D7.Sifra_7 = ' + Cast(@Drugo7 as varchar(6)) + ' And C.Tip_Podelba = ''A'' '
  115517.     If @Sifra_Podg Is Not Null
  115518.         Set @SSQL = @SSQL + ' And P.Sifra_Podg = ''' + @Sifra_Podg + ''' And C.Tip_Podelba = ''B'' '
  115519.     If @Sifra_Gr Is Not Null
  115520.         Set @SSQL = @SSQL + ' And G.Sifra_Gr = ''' + @Sifra_Gr + ''' And C.Tip_Podelba = ''C'' '
  115521. --    Set @SSQL = @SSQL + ') '
  115522.     Set @SSQL = @SSQL + ' Order by C.TipKup, C.Tip_Podelba, C.Sifra_Podelba '
  115523. print @SSQL
  115524.     Exec(@SSQL)
  115525.  
  115526.  
  115527. Go
  115528. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcenpopodgr_tipkup]'))
  115529. drop procedure [dbo].[sp_preglcenpopodgr_tipkup]
  115530.  
  115531. Go
  115532.  
  115533. CREATE   PROCEDURE sp_PreglCenPoPodgr_TipKup
  115534.     @TipKup    varchar(11),         -- TipKup
  115535.     @Drugo1    smallint        -- Podelba1
  115536. AS
  115537.     Declare @SSQL as varchar(8000)
  115538.     Set @SSQL = ' Select C.TipKup, Kup.ImeTipKup, C.Uces, C.Cena, C.Uces2, C.Uces3, C.ParamN1, C.ParamN2, C.ParamN3,
  115539.                       C.Sifra_Podelba, D1.Ime_1    
  115540.             From CenPoPodgr C
  115541.             Left Outer Join GTipKup Kup On Kup.TipKup = C.TipKup
  115542.             Left Outer Join Drugo1 D1 On D1.Sifra_1 = Cast(C.Sifra_Podelba as int)
  115543.             WHERE 1=1 '
  115544.     If @TipKup Is Not Null
  115545.         Set @SSQL = @SSQL + ' And C.TipKup = ''' + @TipKup + ''' '
  115546. --    Set @SSQL = @SSQL + ' And (1=1 '
  115547.     If @Drugo1 Is Not Null
  115548.         Set @SSQL = @SSQL + ' And D1.Sifra_1 = ' + Cast(@Drugo1 as varchar(6))
  115549.     Set @SSQL = @SSQL + ' Order by C.TipKup, C.Tip_Podelba, C.Sifra_Podelba '
  115550. print @SSQL
  115551.     Exec(@SSQL)
  115552.  
  115553.  
  115554.  
  115555. Go
  115556. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglcrrkodovi]'))
  115557. drop procedure [dbo].[sp_preglcrrkodovi]
  115558.  
  115559. Go
  115560.  
  115561.  
  115562. CREATE   procedure sp_PreglCrrKodovi
  115563.     @Sifra_Oe        smallint = Null,
  115564.     @Koi_Oe            varchar(10) = Null,
  115565.     @Datum_Dok_Od    smalldatetime = Null,
  115566.     @Datum_Dok_Do    smalldatetime = Null,
  115567.     @Sifra_Art_Od    varchar(20) = Null,
  115568.     @Sifra_Art_Do    varchar(20) = Null,
  115569.     @Sifra_Podg        char(6) = Null
  115570. As
  115571.     Declare @SSQL as Varchar(8000)
  115572.     Declare @SSQLUsl as Varchar(8000)
  115573. -------------------------------------------
  115574. Set @SSQLUsl=''
  115575.     If @Sifra_Oe Is Not Null
  115576.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  115577.     If @Koi_Oe Is Not Null
  115578.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  115579.     If @Datum_Dok_Od Is Not Null
  115580.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok >= ''' + cast(@Datum_Dok_Od as varchar(35)) + ''' '
  115581.     If @Datum_Dok_Do Is Not Null
  115582.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok <= ''' + cast(@Datum_Dok_Do as varchar(35)) + ''' '
  115583.     If @Sifra_Art_Od Is Not Null
  115584.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  115585.     If @Sifra_Art_Do Is Not Null
  115586.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  115587.     If @Sifra_Podg Is Not Null
  115588.         Set @SSQLUsl = @SSQLUsl + ' And KA.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  115589. -------------------------------------------------------------------------------------------
  115590.     Set @SSQL=' Select D.Sifra_Kup+'' ''+(Case WHEN D.Sifra_Obj IS NULL THEN '''' ELSE Cast(D.Sifra_Obj as varchar(3)) END) As Sif_PM,
  115591.             D.Sifra_Kup,  K.ImeKup,D.Sifra_Obj, KO.ImeObj, cast(S.Sifra_Crr as varchar(20))+''_''+CR.ImeCrr Sifra_Crr, CR.ImeCrr, SUM(S.Kolic) Kolic, 
  115592.             SUM(S.Kolic*dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) VredBezDDV From Stavr S
  115593.                Inner Join Dokr D On D.DokrID=S.DokrID
  115594.                Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  115595.                left outer join KObjekti KO on D.Sifra_Kup= KO.Sifra_Kup and D.Sifra_Obj=KO.Sifra_Obj
  115596.                Inner Join KatArt KA on S.Sifra_Art=KA.Sifra_Art 
  115597.                Left Outer Join CrrKodovi CR on S.Sifra_Crr=CR.Sifra_Crr
  115598.                Where D.VlIzl=''I'' AND D.Sifra_Za=1 AND S.Sifra_Crr is not null '
  115599.     Set @SSQL= @SSQL+@SSQLUsl + ' GROUP BY D.Sifra_Kup, K.ImeKup,D.Sifra_Obj, KO.ImeObj, S.Sifra_Crr, CR.ImeCrr '
  115600. print(@ssql)
  115601. exec(@ssql)
  115602.  
  115603.  
  115604.  
  115605.  
  115606.  
  115607.  
  115608.  
  115609. Go
  115610. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregldivizii]'))
  115611. drop procedure [dbo].[sp_pregldivizii]
  115612.  
  115613. Go
  115614.  
  115615.  
  115616. create PROCEDURE sp_PreglDivizii
  115617. AS
  115618.     select * from Divizii
  115619.     order by sifra_div 
  115620.  
  115621.  
  115622.  
  115623. Go
  115624. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregldnevnik]'))
  115625. drop procedure [dbo].[sp_pregldnevnik]
  115626.  
  115627. Go
  115628.  
  115629.  
  115630. CREATE   PROCEDURE sp_PreglDnevnik
  115631.     @Sifra_Kup        char(6) = Null,
  115632.     @Datum_AktOd        smalldatetime  = Null,
  115633.     @Datum_AktDo        smalldatetime  = Null,
  115634.     @Tip_Akt        char(5) = Null,
  115635.     @Datum_SlAktOd        smalldatetime  = Null,
  115636.     @Datum_SlAktDo        smalldatetime  = Null,
  115637.     @Tip_SlAkt        char(5) = Null,
  115638.         @Id_Od             Int = Null,
  115639.        @Id_Do             Int = Null,
  115640.         @Sifra_Pat        smallint = Null
  115641.  AS
  115642.     Declare @SSQL as varchar(4000)
  115643.     Set @SSQL = ' Select D.Sifra_Kup, Kup.ImeKup, D.Datum_Akt, D.Opis_Akt, D.Tip_Akt, D.Datum_SlAkt, 
  115644.                       D.Opis_SlAkt, D.Tip_SlAkt, D.DodadenNa, D.DodadenOd, D.IzmenetNa, D.IzmenetOd,
  115645.                       D.IdDnevnik
  115646.             From Dnevnik D
  115647.             Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  115648.             Where 1=1 '
  115649.     If @Sifra_Kup Is Not Null 
  115650.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_kup + ''' '
  115651.     If @Datum_AktOd Is Not Null 
  115652.         Set @SSQL = @SSQL + ' And D.Datum_Akt >= ''' + cast(@Datum_AktOd as varchar(25)) + ''' '
  115653.     If @Datum_AktDo Is Not Null 
  115654.         Set @SSQL = @SSQL + ' And D.Datum_Akt <= ''' + cast(@Datum_AktDo as varchar(25)) + ''' '
  115655.     If @Tip_Akt Is Not Null 
  115656.         Set @SSQL = @SSQL + ' And D.Tip_Akt = ''' + @Tip_Akt + ''' '
  115657.     If @Datum_SlAktOd Is Not Null 
  115658.         Set @SSQL = @SSQL + ' And D.Datum_SlAkt >= ''' + cast(@Datum_SlAktOd as varchar(25)) + ''' '
  115659.     If @Datum_SlAktDo Is Not Null 
  115660.         Set @SSQL = @SSQL + ' And D.Datum_SlAkt <= ''' + cast(@Datum_SlAktDo as varchar(25)) + ''' '
  115661.     If @Tip_SlAkt Is Not Null 
  115662.         Set @SSQL = @SSQL + ' And D.Tip_SlAkt = ''' + @Tip_SlAkt + ''' '
  115663.     If @Sifra_Pat IS NOT NULL
  115664.         SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  115665.         If @Id_Od Is NOT Null
  115666.            SET @SSQL = @SSQL + 'AND D.IdDnevnik>=''' + Cast(@Id_Od As Varchar(35)) + ''' '
  115667.        If @Id_Do Is NOT Null
  115668.          SET @SSQL = @SSQL + 'AND D.IdDnevnik<=''' + Cast(@Id_Do As Varchar(35)) + ''' '
  115669.         Exec (@SSQL)
  115670.  
  115671.  
  115672. Go
  115673. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregldok_prenosnici]'))
  115674. drop procedure [dbo].[sp_pregldok_prenosnici]
  115675.  
  115676. Go
  115677.  
  115678.  
  115679. CREATE  PROCEDURE sp_PreglDok_Prenosnici
  115680.     @Sifra_OE    smallint,
  115681.     @Sifra_Dok    smallint,
  115682.     @Datum_Od    smalldatetime,
  115683.     @Datum_Do    smalldatetime,
  115684.         @Sifra_Prim     Smallint
  115685. AS
  115686.     Declare @SSQL As Varchar(2000)
  115687.     Set @SSQL='Select D.Datum_Dok, D.Broj_Dok, D.Sifra_Dok, Sum(S.Kolic*S.DokCena) PoDokCena,
  115688.         Sum(S.Kolic*K.DogCena) PoDogCena, Sum(S.Kolic*K.MalCena) PoMalCena,
  115689.         D.Sifra_kup, KUP.ImeKup, D.Sifra_OE, D.Identif_Br, D.Toc200, D.Sifra_Prim, count(*) as BrojStav
  115690.     From Dokr D
  115691.     Inner Join Stavr S On S.DokrID=D.DokrID
  115692.     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  115693.     Left Outer Join Komint KUP On KUP.Sifra_Kup=D.Sifra_Kup
  115694.     Where D.ImaDodatna = ''D'' and D.Sifra_Prim >= 900 '
  115695.     If @Sifra_OE Is Not Null
  115696.         Set @SSQL=@SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as Varchar(6)) + ''' '
  115697.     If @Sifra_Dok Is Not Null
  115698.         Set @SSQL=@SSQL + ' And S.Sifra_Dok = ''' + cast(@Sifra_Dok as Varchar(6)) + ''' '
  115699.     If @Datum_Od Is Not Null
  115700.         Set @SSQL=@SSQL + ' And D.Datum_Dok>= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  115701.     If @Datum_Do Is Not Null
  115702.         Set @SSQL=@SSQL + ' And D.Datum_Dok<= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  115703.     If @Sifra_Prim Is Not Null
  115704.         SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  115705.  
  115706.         Set @SSQL=@SSQL + '    Group By D.Datum_Dok, D.Broj_Dok, D.Sifra_Dok, D.Sifra_kup, KUP.ImeKup, D.Sifra_OE, D.Identif_Br, d.Toc200, D.Sifra_Prim '
  115707.  
  115708.     Exec(@SSQL)
  115709.  
  115710.  
  115711.  
  115712.  
  115713.  
  115714. Go
  115715. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregldokkratok]'))
  115716. drop procedure [dbo].[sp_pregldokkratok]
  115717.  
  115718. Go
  115719.  
  115720.  
  115721. CREATE    PROCEDURE sp_PreglDokKratok
  115722.     @Sifra_OE    smallint=NULL,
  115723.     @Sifra_Dok        smallint=NULL
  115724. AS
  115725.     SELECT TOP 100 D.DokrID, D.Sifra_Kup, K.ImeKup, D.Broj_Dok, D.Datum_Dok, D.Toc200, D.Identif_Br
  115726.     FROM Dokr D  
  115727.     LEFT OUTER JOIN Komint K ON K.Sifra_Kup=D.Sifra_Kup 
  115728.     WHERE D.Sifra_Oe=@Sifra_Oe AND D.Sifra_Dok=@Sifra_Dok ORDER BY D.Datum_Dok DESC
  115729.  
  115730.  
  115731.  
  115732. Go
  115733. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregldokzaotkup]'))
  115734. drop procedure [dbo].[sp_pregldokzaotkup]
  115735.  
  115736. Go
  115737.  
  115738. CREATE   PROCEDURE sp_PreglDokZaOtkup
  115739.     @Datum_Od    smalldatetime,
  115740.     @Datum_Do    smalldatetime,
  115741.     @Sifra_OE    smallint=2,
  115742.     @Sifra_Dok    smallint=8,
  115743.     @KDrugo1    smallint
  115744. AS
  115745. CREATE TABLE #Tmp1
  115746. (DokrID        int,
  115747. Kolic        decimal(18,6),
  115748. IznBezDDV    decimal(18,2),
  115749. DDV            decimal(18,2))
  115750.  
  115751. INSERT INTO #Tmp1 (DokrID, Kolic, IznBezDDV, DDV)
  115752. SELECT DokrID, SUM(Kolic), Round(SUM(Kolic*dbo.fn_VratiCena(DokCena, Posn, DanDokCena,'N')),2),
  115753. Round(SUM(Kolic*dbo.fn_VratiCena(DokCena, Posn, DanDokCena,'N')*POsn/100),2) FROM Stavr
  115754. WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Datum_Dok>=@Datum_Od AND Datum_Dok<=@Datum_Do
  115755. GROUP BY DokrID
  115756.  
  115757. Declare @SSQL varchar(2000)
  115758.  
  115759. CREATE TABLE #TmpSmetki
  115760. (Sifra_Kup    char(6),
  115761. ZiroSka    varchar(40))
  115762. INSERT INTO #TmpSmetki (Sifra_Kup) SELECT Distinct Sifra_Kup FROM Dokr WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Datum_Dok>=@Datum_Od  AND Datum_Dok<=@Datum_Do 
  115763. UPDATE #TmpSmetki SET ZiroSka=B.ZIroSka FROM KBanki B WHERE #TmpSmetki.Sifra_Kup=B.Sifra_Kup
  115764.  
  115765. SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Kup, D.Datum_Dok, K.ImeKup, K.Danocen, K.Garancija BrojResenie, Z.ZiroSka, K.KDrugo1, K1.Ime_1K, S.Kolic, S.IznBezDDV, S.DDV, D.Toc200 
  115766. FROM Dokr D INNER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup LEFT OUTER JOIN KDrugo1 K1 ON K.KDrugo1=K1.Sifra_1K
  115767. INNER JOIN #Tmp1 S ON S.DokrID=D.DokrID
  115768. LEFT OUTER JOIN #TmpSmetki Z ON D.Sifra_Kup = Z.Sifra_Kup
  115769. WHERE D.Sifra_OE='+cast(@Sifra_OE as varchar(5))+' AND D.Sifra_Dok='+cast(@Sifra_Dok  as varchar(5))+' AND 
  115770. D.Datum_Dok>='''+cast(@Datum_Od  as varchar(35))+ ''' AND D.Datum_Dok<='''+cast(@Datum_Do as varchar(35))+''' '
  115771.  
  115772. IF @KDrugo1 IS NOT NULL
  115773.     SET @SSQL = @SSQL + ' AND K.KDrugo1='+Cast(@KDrugo1 as varchar(5))+' '
  115774. EXEC (@SSQL)
  115775.  
  115776.  
  115777.  
  115778. Go
  115779. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_arkakatprom]'))
  115780. drop procedure [dbo].[sp_pregled_arkakatprom]
  115781.  
  115782. Go
  115783.  
  115784.  
  115785.  
  115786.  
  115787.  
  115788.  
  115789. create  PROCEDURE sp_Pregled_ArkaKatProm
  115790.     @Sifra_Art_Od    varchar(20) = Null,
  115791.     @Sifra_Art_Do    varchar(20) = Null
  115792. AS
  115793.         Declare @SSQL as varchar(8000)
  115794.  
  115795.     Set @SSQL = ' Select * From ArkaKatProm A where 1=1'
  115796.     If @Sifra_Art_Od Is Not Null
  115797.         Set @SSQL = @SSQL + ' and A.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  115798.     If @Sifra_Art_Do Is Not Null
  115799.         Set @SSQL = @SSQL + ' And A.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  115800.     Exec(@SSQL)
  115801.  
  115802.  
  115803.  
  115804.  
  115805.  
  115806. Go
  115807. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_grart]'))
  115808. drop procedure [dbo].[sp_pregled_grart]
  115809.  
  115810. Go
  115811. CREATE        PROCEDURE sp_Pregled_GrArt 
  115812.     @Sif_GrArt varchar(500)= null,
  115813.     @Sifra_Div varchar(500) = null,
  115814.     @Prikazi char(1)='N'
  115815. AS
  115816.     Declare @SSQL as varchar(5000)
  115817. --------------------------------naslovi-----------------------------------------------------------------------
  115818.     If @Prikazi ='N'
  115819.     Begin
  115820.     Set @SSQL=' SELECT S.SIF_GrArt, S.IME_GrArt
  115821.                 FROM GrArt S '
  115822.     If @Sif_GrArt is not null
  115823.         Set @SSQL= @SSQL+ '  INNER JOIN SGrArt G ON S.SIF_GrArt=G.SIF_GrArt  '
  115824.     If @Sifra_Div is not null
  115825.         Set @SSQL= @SSQL+ ' INNER JOIN GrArtDiv D on S.Sif_GrArt=D.Sif_GrArt'
  115826.       Set @SSQL= @SSQL+ '  Where 1=1'
  115827.     If @Sif_GrArt is not null
  115828.         Set @SSQL= @SSQL+ ' And  S.SIF_GrArt in('+@Sif_GrArt+ ')  '
  115829.     If @Sifra_Div is not null
  115830.         Set @SSQL= @SSQL+ ' And  D.Sifra_Div in('+ @Sifra_Div +')  '
  115831.     Set @SSQL= @SSQL+ ' Order By S.Sif_GrArt '
  115832.     End
  115833.      
  115834. -------------------------------------komintenti------------------------------------------------------------------    
  115835.     If @Prikazi ='K'
  115836.     Begin
  115837.         Set @SSQL=' SELECT S.SIF_GrArt, G.IME_GrArt, S.SIFRA_Art, O.IMEArt
  115838.                     FROM SGrArt S 
  115839.                     INNER JOIN GrArt G ON S.SIF_GrArt=G.SIF_GrArt
  115840.                     INNER JOIN KatArt O ON S.SIFRA_Art=O.SIFRA_Art'
  115841.     --If @Sif_GrArt is not null
  115842.       --  Set @SSQL= @SSQL+ '    '
  115843.     If @Sifra_Div is not null
  115844.         Set @SSQL= @SSQL+ ' INNER JOIN GrArtDiv D on S.SIF_GrArt=D.SIF_GrArt'
  115845.       Set @SSQL= @SSQL+ '  Where 1=1'
  115846.     If @Sif_GrArt is not null
  115847.         Set @SSQL= @SSQL+ ' And  S.SIF_GrArt in('+@Sif_GrArt+')  '
  115848.     If @Sifra_Div is not null
  115849.         Set @SSQL= @SSQL+ ' And  D.Sifra_Div in('+ @Sifra_Div +')  '
  115850.     Set @SSQL=@SSQL+' Group by S.SIFRA_Art,O.IMEArt,S.SIF_GrArt, G.IME_GrArt  '
  115851.     Set @SSQL= @SSQL+ ' Order By S.SIF_GrArt, S.SIFRA_Art '    
  115852.     End
  115853.     
  115854. ---------------------------------------------divizii----------------------------------------------------------------    
  115855.     If @Prikazi ='D'
  115856.     Begin
  115857.      Set @SSQL='SELECT S.SIF_GrArt, G.IME_GrArt, S.Sifra_Div, D.ImeDiv
  115858.                 FROM GrArtDiv S
  115859.                 INNER JOIN GrArt G ON S.SIF_GrArt=G.SIF_GrArt 
  115860.                 INNER JOIN Divizii D ON S.SIFra_Div=D.SIFra_Div'
  115861.       Set @SSQL= @SSQL+ '  Where 1=1'
  115862.     If @Sif_GrArt is not null
  115863.         Set @SSQL= @SSQL+ ' And  S.SIF_GrArt in('+@Sif_GrArt+')  '
  115864.     If @Sifra_Div is not null
  115865.         Set @SSQL= @SSQL+ ' And  D.Sifra_Div in('+ @Sifra_Div +')  '
  115866.     Set @SSQL=@SSQL+' Group by S.Sifra_Div, D.ImeDiv, S.SIF_GrArt, G.IME_GrArt'
  115867.     Set @SSQL= @SSQL+ ' Order By S.SIF_GrArt, S.Sifra_Div '
  115868.     End
  115869. print @ssql
  115870. exec (@SSQL)
  115871.  
  115872.  
  115873.  
  115874.  
  115875.  
  115876.  
  115877.  
  115878. Go
  115879. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_grart_odartikal]'))
  115880. drop procedure [dbo].[sp_pregled_grart_odartikal]
  115881.  
  115882. Go
  115883. CREATE   Procedure sp_Pregled_GrArt_OdArtikal
  115884.     @Sifra_Art as char(6)
  115885. As
  115886.     Select distinct G.Sif_GrArt, G.Ime_GrArt, S.Sifra_Art, 'D' Clen
  115887.     From GrArt G
  115888.     Left Outer Join SGrArt S on G.Sif_GrArt= S.Sif_GrArt
  115889.     Where S.Sifra_Art = @Sifra_Art
  115890.     Union 
  115891.     Select distinct G.Sif_GrArt, G.Ime_GrArt, @Sifra_Art, 'N' Clen
  115892.     From GrArt G
  115893.     Where G.Sif_GrArt Not In (Select distinct G.Sif_GrArt 
  115894.                 From GrArt G
  115895.                 Left Outer Join SGrArt S on G.Sif_GrArt= S.Sif_GrArt
  115896.                 Where S.Sifra_Art = @Sifra_Art)
  115897.     Order By Clen
  115898.  
  115899.  
  115900.  
  115901.  
  115902.  
  115903. Go
  115904. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_grkup]'))
  115905. drop procedure [dbo].[sp_pregled_grkup]
  115906.  
  115907. Go
  115908.  
  115909.  
  115910.  
  115911. CREATE        PROCEDURE sp_Pregled_GrKup 
  115912.     @Sif_GrKup varchar(500)= null,
  115913.     @Sifra_Div varchar(500) = null,
  115914.     @Prikazi char(1)='N'
  115915. AS
  115916.     Declare @SSQL as varchar(5000)
  115917. --------------------------------naslovi-----------------------------------------------------------------------
  115918.     If @Prikazi ='N'
  115919.     Begin
  115920.     Set @SSQL=' SELECT S.SIF_GRKup, S.IME_GRKup
  115921.                 FROM GRKup S '
  115922.     If @Sif_GrKup is not null
  115923.         Set @SSQL= @SSQL+ '  INNER JOIN SGRKup G ON S.SIF_GRKup=G.SIF_GRKup  '
  115924.     If @Sifra_Div is not null
  115925.         Set @SSQL= @SSQL+ ' INNER JOIN GrKupDiv D on S.Sif_GrKup=D.Sif_GrKup'
  115926.       Set @SSQL= @SSQL+ '  Where 1=1'
  115927.     If @Sif_GrKup is not null
  115928.         Set @SSQL= @SSQL+ ' And  S.SIF_GRKup in('+@Sif_GrKup+ ')  '
  115929.     If @Sifra_Div is not null
  115930.         Set @SSQL= @SSQL+ ' And  D.Sifra_Div in('+ @Sifra_Div +')  '
  115931.     Set @SSQL= @SSQL+ ' Order By S.Sif_GrKup '
  115932.     End
  115933.      
  115934. -------------------------------------komintenti------------------------------------------------------------------    
  115935.     If @Prikazi ='K'
  115936.     Begin
  115937.         Set @SSQL=' SELECT S.SIF_GRKup, G.IME_GRKup, S.SIFRA_Kup, O.IMEKup
  115938.                     FROM SGRKup S 
  115939.                     INNER JOIN GRKup G ON S.SIF_GRKup=G.SIF_GRKup
  115940.                     INNER JOIN KOmint O ON S.SIFRA_Kup=O.SIFRA_Kup'
  115941.     --If @Sif_GrKup is not null
  115942.       --  Set @SSQL= @SSQL+ '    '
  115943.     If @Sifra_Div is not null
  115944.         Set @SSQL= @SSQL+ ' INNER JOIN GrKupDiv D on S.SIF_GRKup=D.SIF_GRKup'
  115945.       Set @SSQL= @SSQL+ '  Where 1=1'
  115946.     If @Sif_GrKup is not null
  115947.         Set @SSQL= @SSQL+ ' And  S.SIF_GRKup in('+@Sif_GrKup+')  '
  115948.     If @Sifra_Div is not null
  115949.         Set @SSQL= @SSQL+ ' And  D.Sifra_Div in('+ @Sifra_Div +')  '
  115950.     Set @SSQL=@SSQL+' Group by S.Sifra_Kup,O.IMEKup,S.SIF_GRKup, G.IME_GRKup  '
  115951.     Set @SSQL= @SSQL+ ' Order By S.SIF_GRKup, S.Sifra_Kup '    
  115952.     End
  115953.     
  115954. ---------------------------------------------divizii----------------------------------------------------------------    
  115955. /* 
  115956.    If @Prikazi ='D'
  115957.     Begin
  115958.      Set @SSQL='SELECT S.SIF_GRKup, G.IME_GRKup, S.Sifra_Div, D.ImeDiv
  115959.                 FROM GrKupDiv S
  115960.                 INNER JOIN GRKup G ON S.SIF_GRKup=G.SIF_GRKup 
  115961.                 INNER JOIN Divizii D ON S.SIFra_Div=D.SIFra_Div'
  115962.       Set @SSQL= @SSQL+ '  Where 1=1'
  115963.     If @Sif_GrKup is not null
  115964.         Set @SSQL= @SSQL+ ' And  S.SIF_GRKup in('+@Sif_GrKup+')  '
  115965.     If @Sifra_Div is not null
  115966.         Set @SSQL= @SSQL+ ' And  D.Sifra_Div in('+ @Sifra_Div +')  '
  115967.     Set @SSQL=@SSQL+' Group by S.Sifra_Div, D.ImeDiv, S.SIF_GRKup, G.IME_GRKup'
  115968.     Set @SSQL= @SSQL+ ' Order By S.SIF_GRKup, S.Sifra_Div '
  115969.     End
  115970. */ 
  115971.  If @Prikazi ='D'
  115972.     Begin
  115973.      Set @SSQL='SELECT S.SIF_GRKup, G.IME_GRKup, S.Sifra_Kup, O.ImeKup, S.Sifra_Obj, D.ImeObj
  115974.                 FROM SGrKupObj S
  115975.                 INNER JOIN GRKup G ON S.SIF_GRKup=G.SIF_GRKup
  115976.                 INNER JOIN KOmint O ON S.SIFRA_Kup=O.SIFRA_Kup 
  115977.                 INNER JOIN KObjekti D ON S.SIFra_Kup=D.SIFra_Kup and S.Sifra_Obj=D.SIfra_Obj'
  115978.       Set @SSQL= @SSQL+ '  Where 1=1'
  115979.     If @Sif_GrKup is not null
  115980.         Set @SSQL= @SSQL+ ' And  S.SIF_GRKup in('+@Sif_GrKup+')  '
  115981.     --If @Sifra_Div is not null
  115982.       --  Set @SSQL= @SSQL+ ' And  D.Sifra_Div in('+ @Sifra_Div +')  '
  115983.     Set @SSQL=@SSQL+' Group by S.Sifra_Obj, D.ImeObj, S.SIF_GRKup, G.IME_GRKup, S.Sifra_Kup, O.ImeKup'
  115984.     Set @SSQL= @SSQL+ ' Order By S.SIF_GRKup, S.Sifra_Obj '
  115985.     End
  115986.  
  115987. print @ssql
  115988. exec (@SSQL)
  115989.  
  115990.  
  115991.  
  115992.  
  115993.  
  115994.  
  115995.  
  115996. Go
  115997. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_grkup_odkomint]'))
  115998. drop procedure [dbo].[sp_pregled_grkup_odkomint]
  115999.  
  116000. Go
  116001.  
  116002.  
  116003.  
  116004. CREATE    Procedure sp_Pregled_GrKup_OdKomint
  116005.     @Sifra_Kup as char(6)
  116006. As
  116007.     Select distinct G.Sif_GrKup, G.Ime_GrKup, S.Sifra_Kup, 'D' Clen
  116008.     From GrKup G
  116009.     Left Outer Join SGrKupObj S on G.Sif_GrKup= S.Sif_GrKup
  116010.     Where S.Sifra_Kup = @Sifra_Kup And S.Sifra_Obj Is Null
  116011.     Union 
  116012.     Select distinct G.Sif_GrKup, G.Ime_GrKup, @Sifra_Kup, 'N' Clen
  116013.     From GrKup G
  116014.     Where G.Sif_GrKup Not In (Select distinct G.Sif_GrKup 
  116015.                 From GrKup G
  116016.                 Left Outer Join SGrKupObj S on G.Sif_GrKup= S.Sif_GrKup
  116017.                 Where S.Sifra_Kup = @Sifra_Kup And S.Sifra_Obj Is Null)
  116018.     Order By Clen
  116019.  
  116020.  
  116021.  
  116022.  
  116023.  
  116024. Go
  116025. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_grkup_odobj]'))
  116026. drop procedure [dbo].[sp_pregled_grkup_odobj]
  116027.  
  116028. Go
  116029. CREATE procedure  sp_Pregled_GrKup_OdObj
  116030.     @Sifra_Kup  char(6),
  116031.     @Sifra_Obj  smallint    
  116032. As
  116033.     Select distinct G.Sif_GrKup, G.Ime_GrKup, S.Sifra_Kup, S.Sifra_Obj, 'D' Clen
  116034.     From GrKup G
  116035.     Left Outer Join SGrKupObj S on G.Sif_GrKup= S.Sif_GrKup
  116036.     Where S.Sifra_Kup = @Sifra_Kup and  S.Sifra_Obj = @Sifra_Obj
  116037.     Union 
  116038.     Select distinct G.Sif_GrKup, G.Ime_GrKup, @Sifra_Kup, @Sifra_Obj, 'N' Clen
  116039.     From GrKup G
  116040.     Where G.Sif_GrKup Not In (Select distinct G.Sif_GrKup 
  116041.                 From GrKup G
  116042.                 Left Outer Join SGrKupObj S on G.Sif_GrKup= S.Sif_GrKup
  116043.                 Where S.Sifra_Kup = @Sifra_Kup and  S.Sifra_Obj = @Sifra_Obj)
  116044.     Order By Clen
  116045.  
  116046.  
  116047.  
  116048.  
  116049.  
  116050. Go
  116051. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_grorg]'))
  116052. drop procedure [dbo].[sp_pregled_grorg]
  116053.  
  116054. Go
  116055.  
  116056. CREATE PROCEDURE sp_Pregled_GrOrg AS
  116057. SELECT S.SIF_GRORG, G.IME_GRORG, S.SIFRA_OE, O.IMEORG
  116058. FROM SGRORG S 
  116059. INNER JOIN GRORG G ON S.SIF_GRORG=G.SIF_GRORG
  116060. INNER JOIN ORGED O ON S.SIFRA_OE=O.SIFRA_OE
  116061.  
  116062.  
  116063.  
  116064. Go
  116065. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_grpat]'))
  116066. drop procedure [dbo].[sp_pregled_grpat]
  116067.  
  116068. Go
  116069.  
  116070.  
  116071. CREATE  PROCEDURE sp_Pregled_GrPat AS
  116072. SELECT S.SIF_GRPAT, G.IME_GRPAT, S.SIFRA_PAT, O.IMEPAT
  116073. FROM SGRPAT S 
  116074. INNER JOIN GRPAT G ON S.SIF_GRPAT=G.SIF_GRPAT
  116075. INNER JOIN PATNICI O ON S.SIFRA_PAT=O.SIFRA_PAT
  116076.  
  116077.  
  116078.  
  116079. Go
  116080. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_istorijablokkom]'))
  116081. drop procedure [dbo].[sp_pregled_istorijablokkom]
  116082.  
  116083. Go
  116084. CREATE        PROCEDURE sp_Pregled_IstorijaBlokKom
  116085.     @Datum_Od    smalldatetime = Null,
  116086.     @Datum_Do    smalldatetime = Null,
  116087.     @Sifra_Kup_Od char(6) = Null,
  116088.     @Sifra_Kup_Do    char(6) = Null,
  116089.     @Sifra_Tip     Smallint = Null,
  116090.     @Sifra_Nivo    Char(2) = Null,
  116091.     @KDrugo1     Smallint= Null,
  116092.     @KDrugo2     Smallint= Null,
  116093.     @KDrugo3     Smallint = Null,
  116094.     @KDrugo4     Smallint = Null,
  116095.     @KDrugo5     Smallint = Null,
  116096.     @Sifra_Grad     Smallint= Null,
  116097.     @Sifra_Reg    smallint = Null,
  116098.     @Sifra_Pat    Smallint = Null,
  116099.     @TipKup    Varchar(11)=Null,
  116100.     @Aktiven    Char(1) = Null,
  116101.     @MozeIsporaka    Char(1) = Null,
  116102.     @Podred     Char(1) = 'S'     -- S-Sifra_Kup    A-ImeKup     D-Datum
  116103. AS
  116104.     Declare @SSQL Varchar(4000)
  116105.     Set @SSQL = 'Select B.Sifra_Kup, Kup.ImeKup, B.Datum, B.MozeIsporaka, B.IzmenetNa, B.IzmenetOd
  116106.             From IstBlokKom B
  116107.             Inner Join Komint Kup On Kup.Sifra_Kup = B.Sifra_Kup
  116108.             Where 1=1 '
  116109.     If @Datum_Od Is Not Null
  116110.         Set @SSQL = @SSQL + 'And B.Datum>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  116111.     If @Datum_Do Is Not Null
  116112.         Set @SSQL = @SSQL + 'And B.Datum<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  116113.     If @Sifra_Kup_Od Is Not Null
  116114.         Set @SSQL = @SSQL + 'And Kup.Sifra_Kup>=''' + @Sifra_Kup_Od + ''' '
  116115.     If @Sifra_Kup_Do Is Not Null
  116116.         Set @SSQL = @SSQL + 'And Kup.Sifra_Kup<=''' + @Sifra_Kup_Do + ''' '
  116117.     If @Sifra_Tip Is Not Null
  116118.         Set @SSQL = @SSQL + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  116119.     If @Sifra_Nivo Is Not Null
  116120.         Set @SSQL = @SSQL + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  116121.     If @MozeIsporaka Is Not Null
  116122.         Set @SSQL = @SSQL + 'And Kup.MozeIsporaka = ''' + @MozeIsporaka + ''' '
  116123.     If @TipKup Is Not Null
  116124.         Set @SSQL = @SSQL + 'And Kup.TipKup=''' + @TipKup + ''' '
  116125.     If @Sifra_Pat Is Not Null
  116126.         Set @SSQL = @SSQL + 'And (Kup.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(10)) + ' Or Kup.Sifra_Pat2=' + Cast(@Sifra_Pat As Varchar(10)) + ') '
  116127.     If @Sifra_Grad Is Not Null
  116128.         Set @SSQL = @SSQL + 'And KUP.Sifra_Grad =' + Cast(@Sifra_Grad As Varchar(10)) + ' '
  116129.     If @Sifra_Reg Is Not Null
  116130.         Set @SSQL = @SSQL + 'And KUP.Sifra_Reg =' + Cast(@Sifra_Reg As Varchar(10)) + ' '
  116131.     If @Aktiven = 'D'    
  116132.         Set @SSQL = @SSQL + ' And (KUP.Aktiven <> ''N'' or KUP.Aktiven Is Null) '     
  116133.     Else If @Aktiven = 'N'    
  116134.         Set @SSQL = @SSQL + ' And KUP.Aktiven = ''N'' '     
  116135.     If @KDrugo1 Is Not Null
  116136.         Set @SSQL = @SSQL + 'And Kup.KDrugo1=' + Cast(@KDrugo1 As Varchar(10)) + ' '
  116137.     If @KDrugo2 Is Not Null
  116138.         Set @SSQL = @SSQL + 'And Kup.KDrugo2=' + Cast(@KDrugo2 As Varchar(10)) + ' '
  116139.     If @KDrugo3 Is Not Null
  116140.         Set @SSQL = @SSQL + 'And Kup.KDrugo3=' + Cast(@KDrugo3 As Varchar(10)) + ' '
  116141.     If @KDrugo4 Is Not Null
  116142.         Set @SSQL = @SSQL + 'And Kup.KDrugo4=' + Cast(@KDrugo4 As Varchar(10)) + ' '
  116143.     If @KDrugo5 Is Not Null
  116144.         Set @SSQL = @SSQL + 'And Kup.KDrugo5=' + Cast(@KDrugo5 As Varchar(10)) + ' '
  116145.     If @Podred = 'S' 
  116146.         Set @SSQL = @SSQL + ' Order By B.Sifra_Kup, B.Datum '
  116147.     Else If @Podred = 'A' 
  116148.         Set @SSQL = @SSQL + ' Order By Kup.ImeKup, B.Datum '
  116149.     Else If @Podred = 'D' 
  116150.         Set @SSQL = @SSQL + ' Order By B.Datum, B.Sifra_Kup '
  116151. print @SSQL
  116152.     Exec(@SSQL)
  116153.  
  116154.  
  116155. Go
  116156. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_lpopis]'))
  116157. drop procedure [dbo].[sp_pregled_lpopis]
  116158.  
  116159. Go
  116160. CREATE      PROCEDURE sp_Pregled_LPopis
  116161.     @Sifra_OE smallint,
  116162.     @Datum smalldatetime,
  116163.     @Datum_Do smalldatetime = Null
  116164. AS
  116165.     Declare @SSQL varchar(8000)
  116166.     CREATE TABLE #PomPopis
  116167.         (IDPopis int, 
  116168.         Sifra_OE smallint,
  116169.         Datum smalldatetime
  116170.         )
  116171.     Set @SSQL =     'INSERT INTO #PomPopis
  116172.             SELECT IDPopis, Sifra_OE, Datum 
  116173.             FROM Popis 
  116174.             WHERE 1=1 '
  116175.     If @Sifra_OE IS NOT NULL 
  116176.         Set @SSQL = @SSQL + 'AND Sifra_OE = ' + Cast(@Sifra_OE As Varchar(6)) + ' '
  116177.     If @Datum  IS NOT NULL
  116178.         Set @SSQL = @SSQL + ' AND Datum >= ''' + Cast(@Datum As varchar(30)) + ''' '
  116179.     If @Datum_Do  IS NOT NULL
  116180.         Set @SSQL = @SSQL + ' AND Datum <= ''' + Cast(@Datum_Do As varchar(30)) + ''' '
  116181.     exec (@SSQL)
  116182.     Set @SSQL =     'SELECT P.*, L.Broj, COUNT(L.Sifra_Art) BrojArtikli,
  116183.             Sum(L.Popis) VkPopis, Sum(L.Popis*R.Cena) VkVrednost
  116184.             FROM LPopis L 
  116185.             RIGHT OUTER JOIN #PomPopis P ON L.IDPopis = P.IDPopis
  116186.             Left Outer Join RPopis R On L.IDPopis=R.IDPopis And L.Sifra_Art=R.Sifra_Art
  116187.             GROUP BY P.IDPopis, P.Sifra_OE, P.Datum, L.Broj'
  116188.     exec (@SSQL)
  116189.  
  116190.  
  116191. Go
  116192. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_lpopis_os]'))
  116193. drop procedure [dbo].[sp_pregled_lpopis_os]
  116194.  
  116195. Go
  116196. CREATE      PROCEDURE sp_Pregled_LPopis_OS
  116197.     @Datum_Od    smalldatetime,
  116198.     @Datum_Do    smalldatetime,
  116199.     @Sifra_MakLok    char(10) = Null,
  116200.     @Sifra_MikLok    char(10) = Null,
  116201.     @Broj_Lista     int = Null,
  116202.     @Broj_Lista_Do    int = Null,
  116203.     @Sifra_Rab    int = Null,
  116204.     @Sifra_Lok    char(3) = Null,
  116205.     @LokacOdPopLst char(1) = 'N',        -- dali filterot lokacija i rabotnik da se gleda od osnovnoto sredstvo ili od popisot
  116206.     @OS_SI    char(1) = 'O'        -- O - Osnovni Sredstva,     S - Siten Inventar
  116207. AS
  116208.     Declare @SSQL varchar(8000)
  116209.     CREATE TABLE #PomPopis
  116210.         (
  116211.          IDPopisOS int, 
  116212.            Datum smalldatetime,
  116213.          Sifra_MikLok    char(10),
  116214.          Sifra_MakLok    char(10),
  116215.          Sifra_Rab    int
  116216.         )
  116217.     Set @SSQL =     'INSERT INTO #PomPopis
  116218.             SELECT IDPopisOS, Datum, Sifra_MikLok, Sifra_MakLok, Sifra_Rab
  116219.             FROM PopisOS
  116220.             WHERE 1=1 '
  116221.     If @Datum_Od  IS NOT NULL
  116222.         Set @SSQL = @SSQL + ' AND Datum >= ''' + Cast(@Datum_Od As varchar(30)) + ''' '
  116223.     If @Datum_Do  IS NOT NULL
  116224.         Set @SSQL = @SSQL + ' AND Datum <= ''' + Cast(@Datum_Do As varchar(30)) + ''' '
  116225.     Exec (@SSQL)
  116226.     Set @SSQL =     'SELECT P.IDPopisOS, P.Datum, P.Sifra_MikLok, P.Sifra_MakLok, P.Sifra_Rab, 
  116227.                 L.Broj_Lista, COUNT(L.Inv_Broj) BrojOS, L.OdMobilenUred, L.OdBarKod,
  116228.                 ML.Ime_MikLok, MA.Ime_MakLok, R.ImeRab
  116229.             FROM LPopisOS L 
  116230.             Inner Join OsnSred O On O.Inv_Broj=L.Inv_Broj
  116231.             RIGHT OUTER JOIN #PomPopis P ON L.IDPopisOS = P.IDPopisOS 
  116232.             Left Outer Join MikroLok ML On ML.Sifra_MikLok=P.Sifra_MikLok 
  116233.             Left Outer Join MakroLok MA On MA.Sifra_MakLok=P.Sifra_MakLok 
  116234.             Left Outer Join Rabotnik R On R.Sifra_Rab=P.Sifra_Rab '
  116235.     If @LokacOdPopLst =  'D'
  116236.         Set @SSQL = @SSQL + ' Left Outer Join MakroLok MLP On MLP.Sifra_MakLok=P.Sifra_MakLok '
  116237. --    If @Sifra_MakLok Is Not Null
  116238. --        Set @SSQL = @SSQL + ' Left Outer Join MikroLok ML On ML.Sifra_MikLok=O.Sifra_MikLok '
  116239.     Set @SSQL = @SSQL + ' Where 1=1 '
  116240.     If @LokacOdPopLst = 'D' 
  116241.     Begin
  116242.         If @Sifra_MakLok Is Not null
  116243.             Set @SSQL = @SSQL + ' And (P.Sifra_MakLok = ''' + @Sifra_MakLok + ''' Or ML.Sifra_MakLok = ''' + @Sifra_MakLok + ''') '
  116244.         If @Sifra_MikLok Is Not null
  116245.             Set @SSQL = @SSQL + ' And (P.Sifra_MikLok = ''' + @Sifra_MikLok + ''' Or O.Sifra_MikLok = ''' + @Sifra_MikLok + ''') '
  116246.         If @Sifra_Rab Is Not null
  116247.             Set @SSQL = @SSQL + ' And (P.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''' Or O.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''') '
  116248.         If @Sifra_Lok Is Not null
  116249.             Set @SSQL = @SSQL + ' And (MLP.Sifra_Lok = ''' + @Sifra_Lok + ''' Or MA.Sifra_Lok = ''' + @Sifra_Lok + ''') '
  116250.     End
  116251.     Else
  116252.     Begin
  116253.         If @Sifra_MakLok Is Not null
  116254.             Set @SSQL = @SSQL + ' And ML.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  116255.         If @Sifra_MikLok Is Not null
  116256.             Set @SSQL = @SSQL + ' And O.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  116257.         If @Sifra_Rab Is Not null
  116258.             Set @SSQL = @SSQL + ' And O.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''' '
  116259.         If @Sifra_Lok Is Not null
  116260.             Set @SSQL = @SSQL + ' And MA.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  116261.     End
  116262. /*    If @Sifra_MakLok  IS NOT NULL
  116263.         Set @SSQL = @SSQL + ' AND ML.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  116264.     If @Sifra_MikLok  IS NOT NULL
  116265.         Set @SSQL = @SSQL + ' AND O.Sifra_MikLok = ''' + @Sifra_MikLok + ''' ' */
  116266.     IF @Broj_Lista IS NOT NULL
  116267.         Set @SSQL = @SSQL + ' AND L.Broj_Lista >= ' + cast(@Broj_Lista as varchar(8))+ ' '
  116268.     IF @Broj_Lista_Do IS NOT NULL
  116269.         Set @SSQL = @SSQL + ' AND L.Broj_Lista <= ' + cast(@Broj_Lista_Do as varchar(8))+ ' '
  116270.     If @OS_SI = 'O'
  116271.         Set @SSQL = @SSQL + ' And O.Tip = ''OS'' '
  116272.     Else If @OS_SI = 'S'
  116273.         Set @SSQL = @SSQL + ' And O.Tip = ''SI'' '
  116274.     Set @SSQL = @SSQL + ' GROUP BY P.IDPopisOS, P.Datum, P.Sifra_MikLok, P.Sifra_MakLok, P.Sifra_Rab, 
  116275.                     L.Broj_Lista, L.OdMobilenUred, L.OdBarKod, ML.Ime_MikLok, MA.Ime_MakLok, R.ImeRab '
  116276. print @SSQL
  116277.     exec (@SSQL)
  116278.  
  116279.  
  116280. Go
  116281. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_lpopisart]'))
  116282. drop procedure [dbo].[sp_pregled_lpopisart]
  116283.  
  116284. Go
  116285.  
  116286. CREATE       PROCEDURE sp_Pregled_LPopisArt
  116287.     @Sifra_OE smallint,
  116288.     @Datum smalldatetime,
  116289.     @BrojLista smallint,
  116290.     @SoCeni char(1)
  116291. AS
  116292.     Declare @ImaRPopis char(1)
  116293.     Declare @Izmenet char(1)
  116294.     Set @ImaRPopis = 'N'
  116295.     if @SoCeni = 'D'
  116296.         BEGIN    
  116297.             SELECT @Izmenet=Izmenet FROM Popis
  116298.             WHERE Sifra_OE = @Sifra_OE AND Datum = @Datum
  116299.             If @Izmenet = 'N' Set @ImaRPopis = 'D'
  116300.         END
  116301.     Declare @SSQL varchar(8000)
  116302.     Set @SSQL =     'SELECT L.*, A.ImeArt, A.EdMera, A.Lokacija, A.ALt_Sifra, '
  116303.     If @SoCeni = 'D'
  116304.         Set @SSQL = @SSQL + 'R.Cena Cena'
  116305.     Else
  116306.         Set @SSQL = @SSQL + '0 as Cena '
  116307.     Set @SSQL = @SSQL + ' FROM LPopis L 
  116308.             INNER JOIN KatArt A ON L.Sifra_Art = A.Sifra_Art'
  116309.     If @SoCeni = 'D'
  116310.          BEGIN
  116311.         If @ImaRPopis = 'D'
  116312.             Set @SSQL = @SSQL + ' LEFT OUTER JOIN RPopis R 
  116313.             ON L.IDPopis = R.IDPopis AND L.Sifra_Art=R.Sifra_Art'
  116314.         Else
  116315.             Set @SSQL = @SSQL + ' LEFT OUTER JOIN SoArt R 
  116316.             ON R.Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) +
  116317.             ' AND R.Sifra_Art = L.Sifra_Art'
  116318.         END    
  116319.     Set @SSQL = @SSQL + ' WHERE L.Broj = ' + Cast(@BrojLista as varchar(6)) + 
  116320.             ' AND L.IDPopis IN (SELECT IDPopis FROM Popis 
  116321.             WHERE Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) +
  116322.             ' AND Datum = ''' + Cast(@Datum as varchar(30)) + ''' )'
  116323.     Exec (@SSQL)
  116324. PRINT(@ssql)
  116325.  
  116326.  
  116327.  
  116328. Go
  116329. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_matnal]'))
  116330. drop procedure [dbo].[sp_pregled_matnal]
  116331.  
  116332. Go
  116333. CREATE                   PROCEDURE sp_Pregled_MatNal
  116334.    @Sifra_Nal Smallint,
  116335.     @Broj_Nal Int,
  116336.     @Sifra_OE Smallint,
  116337.     @Sifra_Prim Smallint,
  116338.     @VlIzl Char(1),
  116339.     @TipDok Varchar(300) = Null
  116340. AS
  116341.    Declare @SSQL Varchar(4000)            --MagVr dod.za ZitoLeb; pretpost. deka DanMagCena e segde isto
  116342.     SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br, D.Sifra_Kup, D.Datum_Dok, D.Kto, D.Toc200, D.MagVr DMagVr, D.MagVrDan, D.Marza, 
  116343.              D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, 
  116344.              Round(Sum(S.Kolic*S.NabCena),4) NabVr, Round(Sum(S.Kolic*S.MagCena),4) MagVr, 
  116345.              K.ImeKup, K.SMesto,
  116346.              O.ImeOrg As IORG, OP.ImeOrg As IORG_Prima,
  116347.              Round(Sum(S.Kolic*S.TrsCena),4) Trosoci 
  116348.              FROM DOKR D
  116349.              Inner Join Stavr S On D.DokrID=S.DokrID
  116350.              INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  116351.              LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  116352.              INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  116353.              LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE
  116354.              WHERE TD.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(10)) + '     
  116355.              AND D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  116356.     If @Sifra_OE Is NOT Null
  116357.         SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  116358.     If @Sifra_Prim Is NOT Null
  116359.         SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(10)) + ' '
  116360.     If @VlIzl Is NOT Null
  116361.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + @VlIzl + ''' '
  116362.     If @TipDok Is Not Null
  116363.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok In (' + @TipDok + ') '
  116364.     Set @SSQL = @SSQL + 'Group By D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Identif_Br, D.Sifra_Kup, D.Datum_Dok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, 
  116365.                  D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg  '
  116366. print @SSQL
  116367. /*                D.DokrID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.ImaDodatna, D.VlIzl, 
  116368.                 D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Ispratnica, D.Opis, D.Sifra_Kup, D.Sifra_Obj, 
  116369.                 D.Datum_Dok, D.Datum_Vnes, D.Datum_Izm, D.Uces, D.Kasa, D.Rok, D.Sifra_Pat, D.Sifra_Oper, 
  116370.                 D.Sifra_OpIz, D.SerBr, D.Kto, D.Kurs, D.KojaVal, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, 
  116371.                 D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, D.DanMagCena, D.CenaIznos, 
  116372.                 D.ProcMarza, D.Kod_Danok, D.TekstPosle, D.VoRekap, D.VoGlk, D.VoAnal, D.Datum_Knz, D.VoTipNal_Glk, 
  116373.                 D.VoBrNal_Glk, D.Prenesen, D.Pec_Fisc, D.Pec_Dok, D.Sifra_Nivo, D.Blokiran, D.KojaSmetka, D.KasaPoDDV,
  116374.                 K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg, D.Spremil, D.Sifra_OeNar, D.Broj_Nar, D.Sifra_Nar, D.Usluzna, D.TekstPred, 
  116375.                 D.Sifra_Mest, D.Izrab_Nar, Dat_Pec_Fisc
  116376.                 Order By D.Datum_Dok, D.Sifra_Dok, D.Broj_Dok '
  116377. */
  116378.    EXEC(@SSQL)
  116379.  
  116380.  
  116381. Go
  116382. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_matnal_potarifi]'))
  116383. drop procedure [dbo].[sp_pregled_matnal_potarifi]
  116384.  
  116385. Go
  116386. CREATE    PROCEDURE sp_Pregled_MatNal_PoTarifi
  116387.    @Sifra_Nal Smallint,
  116388.     @Broj_Nal Int,
  116389.     @Sifra_OE Smallint,
  116390.     @Sifra_Prim Smallint,
  116391.     @VlIzl Char(1),
  116392.     @TipDok Varchar(300) = Null
  116393. AS
  116394.    Declare @SSQL Varchar(4000)
  116395.     Declare @Uces As Decimal(6,2)
  116396.     Declare @Kasa as Decimal(6,2)
  116397.     Declare @POsnPren As decimal(6,2)
  116398.     Declare @POsn As Decimal(6,2)
  116399.     Declare @PTar As Char(3)
  116400.     Declare @DanDokCena As Char(1)
  116401.     Declare @DanMagCena As Char(1)
  116402.     Declare @Kolic As Decimal(18,6)
  116403.     Declare @DokCena As Decimal(18,6)
  116404.     Declare @MagCena As Decimal(18,6)
  116405.     Declare @dFaktorDDV As Decimal(6,4)
  116406.     Declare @dFaktorNeto As Decimal(6,4)
  116407.     Declare @mFaktorDDV As Decimal(6,4)
  116408.     Declare @mFaktorNeto As Decimal(6,4)
  116409.     Declare @Danok1 As Decimal(18,6)
  116410.     Declare @Danok2 As Decimal(18,6)
  116411.     Declare @PDanok1 As Decimal(18,6)
  116412.     Declare @PDanok2 As Decimal(18,6)
  116413.     Declare @NabIznos As Decimal(18,6)
  116414.     Declare @MagIznos As Decimal(18,6)
  116415.     Declare @MagIznosDan As Decimal(18,6)
  116416.     Declare @Rabat    as decimal(18,6)
  116417. -- Dodadeno na 01 Jul 2003
  116418.     Declare @NabCena As Decimal(18,6)
  116419.     Declare @NabVr As Decimal(18,6)
  116420.     Declare @TrsCena As Decimal(18,6)
  116421.     Declare @Trosoci As Decimal(18,6)
  116422.     CREATE      Table #tStavr
  116423.     (  Uces Decimal(6,2),
  116424.         POsnPren Decimal(6,2),
  116425.         POsn Decimal(6,2),
  116426.         PTar Char(3),
  116427.         DanDokCena Char(1),
  116428.         DanMagCena Char(1),
  116429.         Kolic Decimal(18,6),
  116430.         DokCena Decimal(18,6),
  116431.         MagCena Decimal(18,6),
  116432.         NabCena Decimal(18,6),
  116433.         Kasa    Decimal(6,2),
  116434.         TrsCena Decimal(18,6)
  116435.     )
  116436.     Create Table #tPromTar
  116437.     (  PTar Char(3),
  116438.         POsnPren Decimal(6,2),
  116439.         POsn Decimal(6,2),
  116440.         Danok1 Decimal(18,6),
  116441.         Danok2 Decimal(18,6),
  116442.         PDanok1 Decimal(18,6),
  116443.         PDanok2 Decimal(18,6),
  116444.         NabIznos Decimal(18,6),
  116445.         MagIznos Decimal(18,6),
  116446.         MagIznosDan Decimal(18,6),
  116447.         NabVr Decimal(18,6),
  116448.         Rabat    Decimal(18,6),
  116449.         Trosoci Decimal(18,6)
  116450.     )
  116451.     Set Nocount On
  116452.     Set @SSQL = 'Select S.Uces, S.POsnPren, S.POsn, S.PTar, S.DanDokCena, S.DanMagCena, S.Kolic, S.DokCena, S.MagCena, S.NabCena, D.Kasa, S.TrsCena
  116453.         From Stavr S
  116454.         Inner Join Dokr D On S.DokrID = D.DokrID
  116455.         Where D.VlIzl =''' + @VlIzl + '''  
  116456.         And D.Sifra_Nal=' + Cast(@Sifra_Nal As Varchar(5)) + '
  116457.         And D.Broj_Nal=' + Cast(@Broj_Nal As Varchar(10)) + ' '
  116458.     If @Sifra_OE Is NOT Null
  116459.           SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(10)) + ' '
  116460.     If @Sifra_Prim Is Not NULL
  116461.         Set @SSQL = @SSQL + 'And D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(5)) + ' '
  116462.     If @TipDok Is Not Null
  116463.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDok + ') '
  116464.     Insert #tStavr Exec(@SSQL)
  116465.     Declare tStavr Cursor Fast_Forward For Select * From #tStavr
  116466.     Open tStavr
  116467.     Fetch Next From tStavr Into @Uces, @POsnPren, @POsn, @PTar, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena, @NabCena, @Kasa, @TrsCena
  116468.     While @@Fetch_Status=0
  116469.         Begin
  116470.             If @DanDokCena='D'
  116471.                 Begin
  116472.                     Set @dFaktorDDV = 1
  116473.                     Set @dFaktorNeto = 1 + @POsnPren/100
  116474.                 End
  116475.             Else
  116476.                 Begin
  116477.                     Set @dFaktorDDV = 1 + @POsnPren/100
  116478.                     Set @dFaktorNeto = 1 
  116479.                 End
  116480.             If @DanMagCena='D'
  116481.                 Begin
  116482.                     Set @mFaktorDDV = 1 
  116483.                     Set @mFaktorNeto = 1 + @POsn/100
  116484.                 End
  116485.             Else
  116486.                 Begin
  116487.                     Set @mFaktorDDV = 1 + @POsn/100
  116488.                     Set @mFaktorNeto = 1 
  116489.                 End
  116490.             If @POsn > 15
  116491.                 Begin
  116492.                     Set @Danok1  = @Kolic * @DokCena * (1 - @Uces/100) * (1 - @Kasa/100) / @dFaktorNeto * @POsnPren/100
  116493.                     Set @PDanok1 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  116494.                     Set @Danok2 = 0
  116495.                     Set @PDanok2 = 0
  116496.                 End
  116497.             Else
  116498.                 Begin
  116499.                     Set @Danok1  = 0
  116500.                     Set @PDanok1 = 0
  116501.                     Set @Danok2 = @Kolic * @DokCena * (1 - @Uces/100) * (1 - @Kasa/100) / @dFaktorNeto * @POsnPren/100
  116502.                     Set @PDanok2 = @Kolic * @MagCena / @mFaktorNeto * @POsn / 100
  116503.                 End
  116504.             Set @NabIznos = @Kolic * @DokCena * @dFaktorDDV * (1 - @Uces/100) * (1 - @Kasa/100) 
  116505.             Set @MagIznos = @Kolic * @MagCena / @mFaktorNeto
  116506.             Set @MagIznosDan = @Kolic * @MagCena * @mFaktorDDV
  116507.             Set @Rabat = (@Kolic*@DokCena)/@dFaktorNeto*(1-(1-@Uces/100) * (1-@kasa/100))
  116508.             Set @NabVr = @Kolic*@NabCena
  116509.             Set @Trosoci = @Kolic*@TrsCena
  116510.             Insert #tPromTar(PTar, POsnPren, POsn, Danok1, Danok2, PDanok1, PDanok2, NabIznos, MagIznos, MagIznosDan, NabVr, Rabat, Trosoci)
  116511.             Values (@PTar, @POsnPren, @POsn, @Danok1, @Danok2, @PDanok1, @PDanok2, @NabIznos, @MagIznos, @MagIznosDan, @NabVr, @Rabat, @Trosoci)
  116512.             Fetch Next From tStavr Into @Uces, @POsnPren, @POsn, @PTar, @DanDokCena, @DanMagCena, @Kolic, @DokCena, @MagCena, @NabCena,@Kasa, @TrsCena
  116513.         End --While
  116514.     Close tStavr
  116515.     Deallocate tStavr
  116516.     Select PTar, POsnPren, POsn,
  116517.         Round(Sum(Danok1),4) Danok1,
  116518.         Round(Sum(Danok2),4) Danok2,
  116519.         Round(Sum(PDanok1),4) PDanok1,
  116520.         Round(Sum(PDanok2),4) PDanok2, 
  116521.         Round(Sum(NabIZnos),4) NabIznos,
  116522.         Round(Sum(MagIznos),4) MagIznos,
  116523.         Round(Sum(MagIznosDan),4) MagIznosDan,
  116524.         Round(Sum(NabVr),4) NabVr, 
  116525.         Round(Sum(Rabat), 4) Rabat,
  116526.         Round(Sum(Trosoci), 4) Trosoci
  116527.     From #tpromtar
  116528.     Group By PTar, POsnPren, POsn
  116529.     Order By PTar
  116530.     Set Nocount Off
  116531.  
  116532.  
  116533. Go
  116534. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_naplata]'))
  116535. drop procedure [dbo].[sp_pregled_naplata]
  116536.  
  116537. Go
  116538. CREATE PROCEDURE  sp_Pregled_Naplata
  116539.     @Sifra_DokUpl        varchar(50) = Null,
  116540.     @DatumUplOd        smalldatetime = Null,
  116541.     @DatumUplDo        smalldatetime = Null,
  116542.     @Sifra_DokFra        varchar(200) = Null,
  116543.     @Komercijalist        varchar(200) = '77'
  116544. AS
  116545.     Declare @SSQL as varchar(8000)
  116546.     Declare @SSQLUsl as varchar(8000)
  116547.     Set @SSQLUsl=' ' 
  116548.     Create Table #Uplati
  116549.     (
  116550.      AnId        int,
  116551.      Sifra_Oe    smallint,
  116552.      Sifra_Dok    smallint,
  116553.      Broj_Dok    int,
  116554.      Datum_Dok    smalldatetime,
  116555.      Sifra_Kup    char(6),
  116556.      IznosUpl    decimal(18,6),
  116557.      Tip_Fra        smallint,
  116558.      Iznos        decimal(18,6)
  116559.     )
  116560.     Set @SSQL = 'SELECT A.AnId, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, A.Sifra_Kup, A.Pobaruva, F.Sifra_Dok, 
  116561.             (Case When Sign(A.Pobaruva) = -1 Then (-1*Abs(Z.Iznos)) Else Abs(Z.Iznos) End) Iznos
  116562.         FROM AnFinDok A
  116563.         Inner Join AnZatv Z ON A.AnID = Z.AnID1 
  116564.         Inner Join TipDok TD On TD.Sifra_Dok=A.Sifra_Dok And TD.TipDok=2 
  116565.         Left Outer JOIN AnFinDok F ON Z.AnID2 = F.AnID
  116566.         Where 1=1 '
  116567.     If @Sifra_DokUpl Is Not Null
  116568.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Dok In (' + @Sifra_DokUpl + ') '
  116569.     If @DatumUplOd Is Not Null
  116570.         Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Dok >= ''' + cast(@DatumUplOd as varchar(30)) + ''' '
  116571.     If @DatumUplDo Is Not Null
  116572.         Set @SSQLUsl = @SSQLUsl + ' And A.Datum_Dok <= ''' + cast(@DatumUplDo as varchar(30)) + ''' '
  116573.     If @Sifra_DokFra Is Not Null
  116574.         Set @SSQLUsl = @SSQLUsl + ' And F.Sifra_Dok In (' + @Sifra_DokFra + ') '
  116575.     If @Komercijalist Is Not Null
  116576.         Set @SSQLUsl = @SSQLUsl + ' And F.Sifra_Pat In (' + @Komercijalist + ') '
  116577.     Insert Into #Uplati Exec (@SSQL+@SSQLUsl)
  116578.     Set @SSQL = 'SELECT A.AnId, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, A.Sifra_Kup, A.Pobaruva, F.Sifra_Dok, 
  116579.             (Case When Sign(A.Pobaruva) = -1 Then (-1*Abs(Z.Iznos)) Else Abs(Z.Iznos) End) Iznos
  116580.         FROM AnFinDok A
  116581.         Inner Join AnZatv Z ON A.AnID = Z.AnID2
  116582.         Inner Join TipDok TD On TD.Sifra_Dok=A.Sifra_Dok And TD.TipDok=2 
  116583.         Left Outer JOIN AnFinDok F ON Z.AnID1 = F.AnID 
  116584.         Where 1=1 '
  116585.     Insert Into #Uplati Exec (@SSQL+@SSQLUsl)
  116586.     Set @SSQL = 'SELECT A.AnId, A.Sifra_Oe, A.Sifra_Dok, A.Broj_Dok, A.Datum_Dok, A.Sifra_Kup, A.Pobaruva, Null as Sifra_Dok, Null as Iznos
  116587.         FROM AnFinDok A
  116588.         Inner Join TipDok TD On TD.Sifra_Dok=A.Sifra_Dok And TD.TipDok=2 
  116589.         Where AnId Not In (Select AnId From #Uplati) '
  116590.     If @Sifra_DokUpl Is Not Null
  116591.         Set @SSQL = @SSQL + ' And A.Sifra_Dok In (' + @Sifra_DokUpl + ') '
  116592.     If @DatumUplOd Is Not Null
  116593.         Set @SSQL = @SSQL + ' And A.Datum_Dok >= ''' + cast(@DatumUplOd as varchar(30)) + ''' '
  116594.     If @DatumUplDo Is Not Null
  116595.         Set @SSQL = @SSQL + ' And A.Datum_Dok <= ''' + cast(@DatumUplDo as varchar(30)) + ''' '
  116596.     -- Neznam dali e najsrekno resenie zosto gore kade sto ima zatvaranja patnikot go gledame od fakturata 
  116597.     -- a ovde go gledame od uplatite, zatoa sto nema zatvaranja
  116598.     If @Komercijalist Is Not Null
  116599.         Set @SSQL = @SSQL + ' And A.Sifra_Pat In (' + @Komercijalist + ') '
  116600.     Insert Into #Uplati Exec (@SSQL)
  116601.     Select U.AnId, U.Sifra_Oe, U.Sifra_Dok, U.Broj_Dok, U.Datum_Dok, U.IznosUpl, U.Tip_Fra,    U.Iznos, U.Sifra_Kup, Kup.ImeKup
  116602.     From #Uplati U
  116603.     Left Outer Join Komint Kup On Kup.Sifra_Kup=U.Sifra_Kup
  116604.     Order By U.Sifra_Oe, U.Sifra_Dok, U.Broj_Dok
  116605.  
  116606.  
  116607. Go
  116608. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_narac]'))
  116609. drop procedure [dbo].[sp_pregled_narac]
  116610.  
  116611. Go
  116612.  
  116613.  
  116614.  
  116615.  
  116616.  
  116617.  
  116618. CREATE                              PROCEDURE sp_Pregled_Narac
  116619.        @Sifra_Nar Smallint,
  116620.     @Sifra_OE Smallint,
  116621.     @KoiOE Varchar(200),
  116622.     @Broj_Nar_Od Int,
  116623.        @Broj_Nar_Do Int,
  116624.        @Datum_Nar_Od Smalldatetime,
  116625.        @Datum_Nar_Do Smalldatetime,
  116626.     @Sifra_Kup Char(6),
  116627.     @VlIzl Char(1),
  116628.     @Sifra_Pat    smallint = Null,
  116629.     @GrPat        varchar(6) = Null,
  116630.     @Realiz    char(1)='S',      --Site,D-Realiz, N-Nereal., X-Potpolno Nerealizirani
  116631.     @Prenesen    char(1)='S',       --Site,D-Preneseni, N-NePreneseni.    
  116632.     @Koi_Gradovi    varchar(200) = Null,
  116633.     @Koi_Regioni    varchar(200) = Null,
  116634.     @Sifra_Obj    smallint = NULL,
  116635.        @Datum_Dosp_Od Smalldatetime = Null,
  116636.        @Datum_Dosp_Do Smalldatetime = Null,
  116637.     @Datum_Vnes_Od    smalldatetime = NULL,
  116638.     @Datum_Vnes_Do    smalldatetime = NULL,
  116639.     @PoLokacii        char(1) = 'N'
  116640. AS
  116641.     Declare @SSQL Varchar(4000)
  116642.     Declare @SSQLUsl Varchar(4000)
  116643.     SET @SSQLUsl=' Where 1=1 '
  116644.     If @Sifra_Nar Is NOT NULL
  116645.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Nar=''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  116646.     If @Sifra_OE Is NOT Null
  116647.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  116648.     If @KoiOE Is NOT Null
  116649.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_OE In (' + @KoiOE + ') '
  116650.     If @Broj_Nar_Od Is NOT Null
  116651.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar>=''' + Cast(@Broj_Nar_Od As Varchar(35)) + ''' '
  116652.     If @Broj_Nar_Do Is NOT Null
  116653.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar<=''' + Cast(@Broj_Nar_Do As Varchar(35)) + ''' '
  116654.     If @Datum_Nar_Od Is NOT Null
  116655.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  116656.     If @Datum_Nar_Do Is NOT Null
  116657.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  116658.     If @Datum_Dosp_Od Is NOT Null
  116659.         SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, Nar.Rok, Nar.Datum_Nar) >=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  116660.     If @Datum_Dosp_Do Is NOT Null
  116661.         SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, Nar.Rok, Nar.Datum_Nar) <=''' + Cast(@Datum_Dosp_Do As Varchar(35)) + ''' '
  116662.     If @Datum_Vnes_Od Is NOT Null
  116663.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Vnes>=''' + Cast(@Datum_Vnes_Od As Varchar(35)) + ''' '
  116664.     If @Datum_Vnes_Do Is NOT Null
  116665.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Vnes<=''' + Cast(@Datum_Vnes_Do As Varchar(35)) + ''' '
  116666.     If @Sifra_Kup Is NOT Null
  116667.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  116668.     If @Sifra_Obj Is Not Null
  116669.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  116670.     If @Sifra_Pat IS NOT NULL
  116671.         SET @SSQLUsl = @SSQLUsl + ' AND Nar.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  116672.     If @GrPat Is Not Null
  116673.         SET @SSQLUsl = @SSQLUsl + ' AND Nar.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + ''') '
  116674.     IF @Realiz='D'
  116675.         SET @SSQLUsl = @SSQLUsl + ' AND (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or SN.Realiziran = ''P'') '
  116676.     Else IF @Realiz='N'
  116677.         SET @SSQLUsl = @SSQLUsl + ' AND (Not (Nar.Realiziran = ''D'')  Or (Nar.Realiziran Is Null)) ' 
  116678.     Else IF @Realiz='X'
  116679.         SET @SSQLUsl = @SSQLUsl + ' AND Cast(Nar.Sifra_Oe as char(3)) + Cast(Nar.Sifra_Nar as char(3)) + Cast(Nar.Broj_Nar as varchar(10)) Not In 
  116680.                         (Select Cast(Sifra_OeNar as char(3)) + Cast(Sifra_Nar as char(3)) + Cast(Broj_Nar as varchar(10)) From Dokr Where Broj_Nar > 0) And (Nar.Realiziran<>''D'' Or Nar.Realiziran Is Null) ' 
  116681. --        SET @SSQL = @SSQL + ' AND (NOT (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or (Nar.Realiziran Is Null Or SN.Realiziran Is Null)) ' 
  116682.     IF @Prenesen='D'
  116683.         SET @SSQLUsl = @SSQLUsl + ' AND Nar.Prenesen = ''D'' '
  116684.     Else IF @Prenesen='N'
  116685.         SET @SSQLUsl = @SSQLUsl + ' AND (Nar.Prenesen IS NULL OR Nar.Realiziran <> ''D'') '
  116686.     If @VlIzl Is NOT Null
  116687.         SET @SSQLUsl = @SSQLUsl + 'AND TN.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  116688.     If @Koi_Gradovi Is Not NULL    
  116689.         Begin
  116690.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  116691.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  116692.         End
  116693.     If @Koi_Regioni Is Not NULL    
  116694.         Begin
  116695.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  116696.             OR ( KO.Sifra_Reg Is Null and K.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  116697.         End
  116698. If @PoLokacii='D'
  116699. Begin
  116700.     CREATE TABLE #TmpNarLok
  116701.     (NarID        int,
  116702.     Lokacija    varchar(10),
  116703.     Iznos        decimal(18,2))
  116704.     SET @SSQL = 'SELECT Nar.NarID, A.Lokacija, SUM(SN.Kolic * (Case Sn.DanDokCena When ''D'' Then SN.DokCena ELSE SN.DokCena *(1+SN.Posn/100) End) * (1-SN.Uces/100)*(1-Nar.Kasa/100))
  116705.                 FROM Naracki Nar Inner Join StaNarac SN On Nar.NarID=SN.NarID 
  116706.                 INNER JOIN KatArt A ON SN.Sifra_Art=A.Sifra_Art '+@SSQLUsl + 'GROUP BY Nar.NarID, A.Lokacija '
  116707.     INSERT INTO #TmpNarLok EXEC (@SSQL)
  116708. End
  116709.  
  116710.     SET @SSQL = 'SELECT Nar.NarID, Nar.Sifra_OE, Nar.Sifra_Nar, Nar.Broj_Nar, Nar.Identif_Br,
  116711.             Nar.Sifra_Kup, Nar.Sifra_Obj, Nar.Datum_Nar, Nar.Datum_Vnes, Nar.Datum_Izm,
  116712.             Nar.Uces, Nar.Rok, Nar.Sifra_Pat, Nar.Sifra_Oper, Nar.Sifra_OpIz, 
  116713.             Nar.KojaVal, Nar.Kurs, Nar.DanDokCena, Nar.DanmagCena, Nar.CenaIznos,
  116714.             Nar.TekstPosle, Nar.Realiziran, Nar.Realiz_Na, Nar.DokrID,
  116715.             Nar.Kasa, Nar.Sifra_Nivo, Nar.Prenesen, Nar.Spremil, Nar.SiteTros, Nar.Prevoz, Nar.Osiguruv, Nar.Carina,
  116716.             Nar.Spedicija, Nar.Smena, Nar.KojaSmetka, Nar.Ispecaten, Nar.IzmenetPoslePec,
  116717.             Nar.PlakOpis, Nar.Dat_Ocek, Nar.Dat_Pristig, Nar.Dat_Utov, Nar.Vet_Broj, Nar.Dat_Vet_Vazn, Nar.Vozilo_Kont, 
  116718.             Nar.Stat_Nar, Nar.Zaklucen, Nar.Stat_Dok_Nar, 
  116719.             TN.ImeNar, K.ImeKup, K.SMesto, KO.ImeObj, Pat.ImePat, TN.Obrazec,
  116720.             O.ImeOrg As IORG, TN.VlIzl, D.Datum_Dok, (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else K.Sifra_Pat End) Komercijalist, '
  116721.     IF @PoLOkacii='D'
  116722.         SET @SSQL = @SSQL +'TNar.Iznos Toc200, TNar.Lokacija '
  116723.     ELSE
  116724.         SET @SSQL = @SSQL +'Nar.Toc200, '''' Lokacija '                 
  116725.     SET @SSQL = @SSQL +' FROM Naracki Nar
  116726.             Inner Join StaNarac SN On Nar.NarID=SN.NarID
  116727.             INNER JOIN TipNarac TN ON Nar.Sifra_Nar=TN.Sifra_Nar
  116728.             LEFT OUTER JOIN Komint K ON Nar.Sifra_Kup=K.Sifra_Kup
  116729.             Left Outer Join KObjekti KO ON Nar.Sifra_obj=KO.Sifra_obj and Nar.Sifra_kup=KO.Sifra_kup  
  116730.             INNER JOIN Orged O ON Nar.Sifra_OE=O.Sifra_OE 
  116731.             Left Outer Join Dokr D On D.Sifra_OeNar=Nar.Sifra_Oe And D.Sifra_Nar=Nar.Sifra_Nar And D.Broj_Nar=Nar.Broj_Nar
  116732.             Left Outer Join Patnici Pat On Pat.Sifra_Pat = (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else K.Sifra_Pat End) '
  116733.     IF @PoLOkacii='D'
  116734.         SET @SSQL = @SSQL +' INNER JOIN #TmpNarLok TNar ON Nar.NarID=TNar.NarID '
  116735.     SET @SSQL = @SSQL +@SSQLUsl
  116736.     Set @SSQL = @SSQL + 'Group By 
  116737.         Nar.NarID, Nar.Sifra_OE, Nar.Sifra_Nar, Nar.Broj_Nar, Nar.Identif_Br,
  116738.         Nar.Sifra_Kup, Nar.Sifra_Obj, Nar.Datum_Nar, Nar.Datum_Vnes, Nar.Datum_Izm,
  116739.         Nar.Uces, Nar.Rok, Nar.Sifra_Pat, Nar.Sifra_Oper, Nar.Sifra_OpIz, 
  116740.         Nar.KojaVal, Nar.Kurs, Nar.DanDokCena, Nar.DanmagCena, Nar.CenaIznos,
  116741.         Nar.TekstPosle, Nar.Realiziran, Nar.Realiz_Na, Nar.DokrID,
  116742.         Nar.Kasa, Nar.Sifra_Nivo, Nar.Prenesen, Nar.Spremil, Nar.SiteTros,TN.ImeNar,
  116743.         K.ImeKup, K.SMesto, KO.ImeObj, O.ImeOrg, TN.VlIzl, Nar.Prevoz, Nar.Osiguruv, Nar.Carina,
  116744.         Nar.Spedicija, Nar.Smena, Nar.KojaSmetka, Nar.Ispecaten, Nar.IzmenetPoslePec,
  116745.         PlakOpis, Dat_Ocek, Dat_Pristig, Dat_Utov, Vet_Broj, Dat_Vet_Vazn, Vozilo_Kont, Nar.Stat_Nar, Nar.Zaklucen, Nar.Stat_Dok_Nar, D.Datum_Dok,
  116746.         (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else K.Sifra_Pat End), Pat.ImePat, TN.Obrazec, '
  116747.     IF @PoLokacii='D'
  116748.         SET @SSQL = @SSQL +'TNar.Iznos, TNar.Lokacija'
  116749.     ELSE
  116750.         SET @SSQL = @SSQL +'Nar.Toc200'
  116751. EXEC(@SSQL)
  116752.  
  116753.  
  116754.  
  116755. Go
  116756. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_narac_art]'))
  116757. drop procedure [dbo].[sp_pregled_narac_art]
  116758.  
  116759. Go
  116760.  
  116761.  
  116762. CREATE                                       PROCEDURE sp_Pregled_Narac_Art
  116763.     @Sifra_Nar Smallint,
  116764.     @Sifra_OE Smallint,
  116765.     @KoiOE Varchar(200),
  116766.     @Broj_Nar_Od Int,
  116767.     @Broj_Nar_Do Int,
  116768.     @Datum_Nar_Od Smalldatetime,
  116769.     @Datum_Nar_Do Smalldatetime,
  116770.     @Sifra_Kup Char(6),
  116771.     @VlIzl Char(1),
  116772.     @Sifra_Pat    smallint = Null,
  116773.     @GrPat        varchar(6) = Null,
  116774.     @Lokacija    varchar(10) = Null,
  116775.     @Realiz        char(1)='S',      --Site,D-Realiz, N-Nereal. X-Potpolno nerealizirani
  116776.     @Sifra_art_Od    varchar(20) = Null,
  116777.     @Sifra_art_Do    varchar(20) = Null,
  116778.     @Sifra_Podg    char(6) = Null,
  116779.     @Sifra_Gr    char(3) = Null,
  116780.     @MatUsl    char(1) = Null,
  116781.     @Prenesen    char(1) = 'S',    --Site,D-Preneseni, N-NePren.
  116782.     @Koi_Gradovi    varchar(200) = Null,
  116783.     @Koi_Regioni    varchar(200) = Null,
  116784.     @Sifra_Obj    smallint = Null,
  116785.        @Datum_Dosp_Od Smalldatetime = Null,
  116786.        @Datum_Dosp_Do Smalldatetime = Null,
  116787.     @Podred     char(1) = Null,    -- R - Rbr 
  116788.     @DajTekCena    char(1) = 'N',
  116789.         @Drugo1    smallint = Null,
  116790.     @Drugo2    smallint = Null,
  116791.     @Drugo3    smallint = Null,
  116792.     @Drugo4    smallint = Null,
  116793.      @Drugo5    smallint = Null,
  116794.         @Drugo6    smallint = Null,
  116795.      @Drugo7    smallint = Null,
  116796.         @Kto     char(6) = Null 
  116797. AS
  116798.     Declare @SSQL Varchar(8000)
  116799.  
  116800.     Create Table #Nar
  116801.     (
  116802.      Sifra_Oe    smallint,
  116803.      Sifra_Nar    smallint,
  116804.      Broj_Nar    int,
  116805.      Datum_Nar    smalldatetime,
  116806.      Sifra_Kup    char(6),
  116807.      Sifra_Obj    smallint,
  116808.      Identif_Br    varchar(50),
  116809.      Sifra_Art    varchar(20),
  116810.      Kolic        decimal(18,6),
  116811.      Alt_Kolic    decimal(18,6),
  116812.      DokCena    decimal(18,6),
  116813.      MagCena     decimal(18,6),
  116814.      Uces        decimal(6,2),
  116815.      DanDokCena    char(1),
  116816.      DanMagCena    char(1),
  116817.      POsn        decimal(6,2),
  116818.      Realiziran    char(1),
  116819.      Realiz_Kolic    decimal(18,6),
  116820.      Datum_Dok    smalldatetime,
  116821.      Tezina        decimal(18,6),
  116822.      BTezina    decimal(18,6),
  116823.      ImaKomerc    decimal(6,2),
  116824.      Rbr        int,
  116825.     CenaTekovna    decimal(18,6),
  116826.     DanCenaTek    char(1),
  116827.     Sifra_Pat    smallint,
  116828.     ImeMat            varchar(200),
  116829.     KontrSer varchar(25),
  116830.     ImeKatStatus varchar(30) 
  116831.         )
  116832.     SET @SSQL = 'SELECT Nar.Sifra_OE, Nar.Sifra_Nar, Nar.Broj_Nar, Nar.Datum_Nar, 
  116833.             Nar.Sifra_Kup, Nar.Sifra_Obj, Nar.Identif_Br, 
  116834.             SN.Sifra_Art, SN.Kolic, SN.Alt_Kolic, SN.DokCena, SN.MagCena, 
  116835.             SN.Uces, SN.DanDokCena, SN.DanMagCena, SN.POsn, SN.Realiziran, SN.Realiz_Kolic, Null as Datum_Dok, 
  116836.             K.Tezina, K.Btezina, K.ImaKomerc, SN.Rbr, '
  116837.     If @DajTekCena = 'D'
  116838.         Set @SSQL = @SSQL + ' S.Cena, S.DanCena '
  116839.     Else
  116840.         Set @SSQL = @SSQL + ' Null Cena, Null DanCena '        
  116841.  
  116842.         Set @SSQL = @SSQL + ', Nar.Sifra_Pat, SN.ImeMat,  SN.KontrSer, KS.ImeKatStatus  FROM Naracki Nar
  116843.                                   INNER JOIN StaNarac SN ON Nar.NarID=SN.NarID 
  116844.                     LEFT OUTER JOIN Katstatus KS ON SN.Sifra_KatStatus = KS.Sifra_KatStatus                                                     
  116845.                   INNER JOIN Katart K ON SN.Sifra_Art=K.Sifra_Art '
  116846.     If @DajTekCena = 'D'
  116847.         Set @SSQL = @SSQL + ' INNER JOIN Soart S ON S.Sifra_Oe=SN.Sifra_Oe And S.Sifra_Art=SN.Sifra_Art '
  116848.     If @VlIzl Is Not Null
  116849.         Set @SSQL = @SSQL + ' INNER JOIN TipNarac TN ON Nar.Sifra_Nar=TN.Sifra_Nar '
  116850.     If @Koi_Gradovi Is Not Null Or @Koi_Regioni Is Not Null
  116851.         Set @SSQL = @SSQL + ' Left Outer JOIN Komint Kup ON Nar.Sifra_Kup=Kup.Sifra_Kup
  116852.                       Left Outer Join KObjekti KO On KO.Sifra_Kup=Nar.Sifra_Kup And KO.Sifra_Obj=Nar.Sifra_Obj '
  116853. --                      Left Outer Join GRegion R On Kup.Sifra_Reg=R.Sifra_Reg '
  116854.     If @Sifra_Gr Is Not Null
  116855.         Set @SSQL = @SSQL + ' INNER JOIN Podgrupi P On P.Sifra_Podg = K.Sifra_Podg '
  116856.     SET @SSQL = @SSQL + ' WHERE 1=1 '
  116857.     If @Sifra_Nar Is NOT NULL
  116858.         SET @SSQL = @SSQL + 'AND Nar.Sifra_Nar=' + Cast(@Sifra_Nar As Varchar(10)) + ' '
  116859.     If @Sifra_OE Is NOT Null
  116860.         SET @SSQL = @SSQL + 'AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  116861.     If @KoiOE Is Not Null
  116862.         SET @SSQL = @SSQL + 'AND Nar.Sifra_OE In (' + @KoiOE + ') '
  116863.     If @Broj_Nar_Od Is NOT Null
  116864.         SET @SSQL = @SSQL + 'AND Nar.Broj_Nar>=''' + Cast(@Broj_Nar_Od As Varchar(35)) + ''' '
  116865.     If @Broj_Nar_Do Is NOT Null
  116866.          SET @SSQL = @SSQL + 'AND Nar.Broj_Nar<=''' + Cast(@Broj_Nar_Do As Varchar(35)) + ''' '
  116867.     If @Datum_Nar_Od Is NOT Null
  116868.         SET @SSQL = @SSQL + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  116869.     If @Datum_Nar_Do Is NOT Null
  116870.          SET @SSQL = @SSQL + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  116871.     If @Datum_Dosp_Od Is NOT Null
  116872.         SET @SSQL = @SSQL + 'AND DateAdd(Day, Nar.Rok, Nar.Datum_Nar) >=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  116873.     If @Datum_Dosp_Do Is NOT Null
  116874.         SET @SSQL = @SSQL + 'AND DateAdd(Day, Nar.Rok, Nar.Datum_Nar) <=''' + Cast(@Datum_Dosp_Do As Varchar(35)) + ''' '
  116875.     If @Sifra_Kup Is NOT Null
  116876.         SET @SSQL = @SSQL + 'AND Nar.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  116877.     If @Sifra_Obj Is Not Null
  116878.         SET @SSQL = @SSQL + 'AND Nar.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  116879.     If @Sifra_Pat IS NOT NULL
  116880.         SET @SSQL = @SSQL + ' AND Nar.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  116881.     If @GrPat Is Not Null
  116882.         SET @SSQL = @SSQL + ' AND Nar.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + ''') '
  116883.     If @VlIzl Is NOT Null
  116884.         SET @SSQL = @SSQL + 'AND TN.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  116885.     IF @Realiz='D'
  116886.         SET @SSQL = @SSQL + ' AND (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or SN.Realiziran = ''P'') '
  116887.     Else IF @Realiz='N'                                          --I         Dodadeno 19.04.2004 za PKB             I--    
  116888.         SET @SSQL = @SSQL + ' AND (SN.Realiziran <> ''D'' Or Sn.Realiziran Is Null) ' --(NOT (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or Nar.Realiziran = ''P'' Or SN.Realiziran = ''P'') 
  116889.                         --                             OR (Nar.Realiziran Is Null Or SN.Realiziran Is Null))'
  116890.     Else IF @Realiz='X'
  116891.         SET @SSQL = @SSQL + ' AND Cast(Nar.Sifra_Oe as char(3)) + Cast(Nar.Sifra_Nar as char(3)) + Cast(Nar.Broj_Nar as varchar(10)) Not In 
  116892.                         (Select Cast(Sifra_OeNar as char(3)) + Cast(Sifra_Nar as char(3)) + Cast(Broj_Nar as varchar(10)) From Dokr Where Broj_Nar > 0) And (Nar.Realiziran<>''D'' Or Nar.Realiziran Is Null) ' 
  116893.     IF @Prenesen='D'
  116894.         SET @SSQL = @SSQL + ' AND Nar.Prenesen = ''D'' '
  116895.     Else IF @Prenesen='N'
  116896.         SET @SSQL = @SSQL + ' AND (Nar.Prenesen IS NULL OR Nar.Realiziran <> ''D'') '
  116897.     If @Lokacija Is NOT Null
  116898.         SET @SSQL = @SSQL + 'AND K.Lokacija=''' + @Lokacija + ''' '
  116899.     If @Sifra_Art_Od Is NOT Null
  116900.         SET @SSQL = @SSQL + 'AND SN.Sifra_Art >=''' + @Sifra_art_Od + ''' ' 
  116901.     If @Sifra_Art_Do Is NOT Null
  116902.         SET @SSQL = @SSQL + 'AND SN.Sifra_Art <=''' + @Sifra_art_Do + ''' '
  116903.     If @Sifra_Podg Is NOT Null
  116904.         SET @SSQL = @SSQL + 'AND K.Sifra_Podg =''' + @Sifra_Podg + ''' '
  116905.     If @Sifra_Gr Is NOT Null
  116906.         SET @SSQL = @SSQL + 'AND P.Sifra_Gr =''' + @Sifra_Gr + ''' ' 
  116907.     If @MatUsl Is NOT Null
  116908.         SET @SSQL = @SSQL + 'AND K.SMatUsl=''' + @MatUsl + ''' '
  116909.     If @Koi_Gradovi Is Not NULL    
  116910.         Begin
  116911.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  116912.             OR ( KO.Sifra_Grad Is Null and Kup.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  116913.         End
  116914.     If @Koi_Regioni Is Not NULL    
  116915.         Begin
  116916.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  116917.             OR ( KO.Sifra_Reg Is Null and Kup.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  116918.         End
  116919.      If @Drugo1 Is NOT Null
  116920.               SET @SSQL = @SSQL + 'AND K.Drugo1 =''' + Cast(@Drugo1 As Varchar(6)) + ''' '
  116921.         If @Drugo2 Is NOT Null
  116922.               SET @SSQL = @SSQL + 'AND K.Drugo2 =''' + Cast(@Drugo2 As Varchar(6)) + ''' '
  116923.         If @Drugo3 Is NOT Null
  116924.               SET @SSQL = @SSQL + 'AND K.Drugo3 =''' + Cast(@Drugo3 As Varchar(6)) + ''' '
  116925.         If @Drugo4 Is NOT Null
  116926.               SET @SSQL = @SSQL + 'AND K.Drugo4 =''' + Cast(@Drugo4 As Varchar(6)) + ''' '
  116927.         If @Drugo5 Is NOT Null
  116928.               SET @SSQL = @SSQL + 'AND K.Drugo5 =''' + Cast(@Drugo5 As Varchar(6)) + ''' '
  116929.         If @Drugo6 Is NOT Null
  116930.               SET @SSQL = @SSQL + 'AND K.Drugo6 =''' + Cast(@Drugo6 As Varchar(6)) + ''' '
  116931.         If @Drugo7 Is NOT Null
  116932.               SET @SSQL = @SSQL + 'AND K.Drugo7 =''' + Cast(@Drugo7 As Varchar(6)) + ''' '
  116933.         If @Kto IS NOT NULL
  116934.               Set @SSQL = @SSQL+'AND (K.Kto='''+@Kto+''') ' 
  116935.         Set @SSQL = @SSQL    + 'ORDER BY Nar.Sifra_OE, Nar.Sifra_Nar, Nar.Broj_Nar '
  116936.     Insert Into #Nar EXEC(@SSQL)
  116937.  
  116938.     Update #Nar 
  116939.     Set #Nar.Datum_Dok = Dokr.Datum_Dok
  116940.     From Dokr 
  116941.     Where Dokr.Sifra_OeNar=#Nar.Sifra_Oe And Dokr.Sifra_Nar=#Nar.Sifra_Nar And Dokr.Broj_Nar=#Nar.Broj_Nar 
  116942.  
  116943.     Set @SSQL = ' SELECT Nar.Sifra_OE, O.ImeOrg, Nar.Sifra_Nar, TN.ImeNar, Nar.Broj_Nar, Nar.Datum_Nar, 
  116944.             Nar.Sifra_Kup, Nar.Sifra_Obj, Nar.Identif_Br, Kup.ImeKup, Kup.Sifra_Reg, R.ImeRegion,
  116945.             Nar.Sifra_Art, K.ImeArt, K.Edmera, K.Lokacija, K.Nom, K.Nom Nomen, TN.VlIzl, Nar.Kolic, Nar.Alt_Kolic, Nar.DokCena, Nar.MagCena, 
  116946.             Nar.Uces, Nar.DanDokCena, Nar.DanMagCena, Nar.POsn, Nar.Realiziran, Nar.Realiz_Kolic, Nar.Datum_Dok, K.ImeArt2, K.Sifra_Podg, K.Tezina, K.Btezina, K.ImaKomerc,
  116947.             Nar.CenaTekovna, Nar.DanCenaTek, Obj.ImeObj, Nar.Sifra_Pat, Pat.ImePat, Nar.ImeMat, 
  116948.                         (Case When Obj.Sifra_Pat Is Not Null Then Obj.Sifra_Pat Else Kup.Sifra_Pat End) Komercijalist, 
  116949.                        Pat2.ImePat ImePat2, TN.Obrazec, Nar.Kontrser, Nar.ImeKatStatus
  116950.         FROM #Nar Nar
  116951.         INNER JOIN Katart K ON Nar.Sifra_Art=K.Sifra_Art
  116952.         INNER JOIN TipNarac TN ON Nar.Sifra_Nar=TN.Sifra_Nar
  116953.         Left Outer JOIN Komint Kup ON Nar.Sifra_Kup=Kup.Sifra_Kup
  116954.         Left Outer Join GRegion R On Kup.Sifra_Reg=R.Sifra_Reg
  116955.         INNER JOIN Orged O ON Nar.Sifra_OE=O.Sifra_OE
  116956.         LEFT OUTER JOIN Patnici Pat ON Nar.Sifra_Pat=Pat.Sifra_Pat
  116957.         LEFT OUTER JOIN KObjekti Obj ON Nar.Sifra_Kup=Obj.Sifra_Kup and Nar.Sifra_Obj=Obj.Sifra_Obj
  116958.         Left Outer Join Patnici Pat2 On Pat2.Sifra_Pat = (Case When Obj.Sifra_Pat Is Not Null Then Obj.Sifra_Pat Else Kup.Sifra_Pat End) '
  116959.     If @Podred = 'R'
  116960.         Set @SSQL = @SSQL + ' Order By Nar.Sifra_OE, Nar.Sifra_Nar, Nar.Broj_Nar, Nar.Rbr '
  116961. print (@SSQL)
  116962.     Exec(@SSQL)
  116963.  
  116964.  
  116965.  
  116966.  
  116967.  
  116968.  
  116969.  
  116970.  
  116971.  
  116972. Go
  116973. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_narac_saldodiv]'))
  116974. drop procedure [dbo].[sp_pregled_narac_saldodiv]
  116975.  
  116976. Go
  116977.  
  116978.  
  116979.  
  116980. CREATE        PROCEDURE sp_Pregled_Narac_SaldoDiv
  116981.        @Sifra_Nar Smallint = Null,
  116982.     @Sifra_OE Smallint = Null,
  116983.     @KoiOE Varchar(200) = Null,
  116984.     @Broj_Nar_Od Int = Null,
  116985.        @Broj_Nar_Do Int = Null,
  116986.        @Datum_Nar_Od Smalldatetime = Null,
  116987.        @Datum_Nar_Do Smalldatetime = Null,
  116988.     @Sifra_Kup Char(6) = Null,
  116989.     @VlIzl Char(1) = Null,
  116990.     @Sifra_Pat    smallint = Null,
  116991.     @GrPat        varchar(6) = Null,
  116992.     @Realiz    char(1)='S',      --Site,D-Realiz, N-Nereal., X-Potpolno Nerealizirani
  116993.     @Prenesen    char(1)='S',       --Site,D-Preneseni, N-NePreneseni.    
  116994.     @Koi_Gradovi    varchar(200) = Null,
  116995.     @Koi_Regioni    varchar(200) = Null,
  116996.     @Sifra_Obj    smallint = NULL,
  116997.        @Datum_Dosp_Od Smalldatetime = Null,
  116998.        @Datum_Dosp_Do Smalldatetime = Null,
  116999.     @Datum_Vnes_Od    smalldatetime = NULL,
  117000.     @Datum_Vnes_Do    smalldatetime = NULL,
  117001.     @KoiNarLimit    char(1) = Null    -- N - Nadminat limit, D - Ima Limit        
  117002. AS
  117003.     Declare @SSQL Varchar(4000)
  117004.     Declare @SSQLUsl Varchar(4000)
  117005.     Declare @SSQLKup Varchar(4000)
  117006.     SET @SSQLUsl=' '
  117007.     SET @SSQLKup=' '
  117008.  
  117009.     If @Sifra_Nar Is NOT NULL
  117010.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Nar=''' + Cast(@Sifra_Nar As Varchar(10)) + ''' '
  117011.     If @Sifra_OE Is NOT Null
  117012.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  117013.     If @KoiOE Is NOT Null
  117014.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_OE In (' + @KoiOE + ') '
  117015.     If @Broj_Nar_Od Is NOT Null
  117016.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar>=''' + Cast(@Broj_Nar_Od As Varchar(35)) + ''' '
  117017.     If @Broj_Nar_Do Is NOT Null
  117018.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Broj_Nar<=''' + Cast(@Broj_Nar_Do As Varchar(35)) + ''' '
  117019.     If @Datum_Nar_Od Is NOT Null
  117020.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  117021.     If @Datum_Nar_Do Is NOT Null
  117022.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  117023.     If @Datum_Dosp_Od Is NOT Null
  117024.         SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, Nar.Rok, Nar.Datum_Nar) >=''' + Cast(@Datum_Dosp_Od As Varchar(35)) + ''' '
  117025.     If @Datum_Dosp_Do Is NOT Null
  117026.         SET @SSQLUsl = @SSQLUsl + 'AND DateAdd(Day, Nar.Rok, Nar.Datum_Nar) <=''' + Cast(@Datum_Dosp_Do As Varchar(35)) + ''' '
  117027.     If @Datum_Vnes_Od Is NOT Null
  117028.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Vnes>=''' + Cast(@Datum_Vnes_Od As Varchar(35)) + ''' '
  117029.     If @Datum_Vnes_Do Is NOT Null
  117030.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Datum_Vnes<=''' + Cast(@Datum_Vnes_Do As Varchar(35)) + ''' '
  117031.     If @Sifra_Kup Is NOT Null
  117032.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  117033.     If @Sifra_Obj Is Not Null
  117034.         SET @SSQLUsl = @SSQLUsl + 'AND Nar.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(6)) + ' '
  117035.     If @Sifra_Pat IS NOT NULL
  117036.         SET @SSQLUsl = @SSQLUsl + ' AND Nar.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  117037.     If @GrPat Is Not Null
  117038.         SET @SSQLUsl = @SSQLUsl + ' AND Nar.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + ''') '
  117039.     IF @Realiz='D'
  117040.         SET @SSQLUsl = @SSQLUsl + ' AND (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or SN.Realiziran = ''P'') '
  117041.     Else IF @Realiz='N'
  117042.         SET @SSQLUsl = @SSQLUsl + ' AND (Not (Nar.Realiziran = ''D'')  Or (Nar.Realiziran Is Null)) ' 
  117043.     Else IF @Realiz='X'
  117044.         SET @SSQLUsl = @SSQLUsl + ' AND Cast(Nar.Sifra_Oe as char(3)) + Cast(Nar.Sifra_Nar as char(3)) + Cast(Nar.Broj_Nar as varchar(10)) Not In 
  117045.                         (Select Cast(Sifra_OeNar as char(3)) + Cast(Sifra_Nar as char(3)) + Cast(Broj_Nar as varchar(10)) From Dokr Where Broj_Nar > 0) And (Nar.Realiziran<>''D'' Or Nar.Realiziran Is Null) ' 
  117046.     IF @Prenesen='D'
  117047.         SET @SSQLUsl = @SSQLUsl + ' AND Nar.Prenesen = ''D'' '
  117048.     Else IF @Prenesen='N'
  117049.         SET @SSQLUsl = @SSQLUsl + ' AND (Nar.Prenesen IS NULL OR Nar.Realiziran <> ''D'') '
  117050.     If @VlIzl Is NOT Null
  117051.         SET @SSQLUsl = @SSQLUsl + 'AND TN.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  117052.     If @Koi_Gradovi Is Not NULL    
  117053.         Begin
  117054.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  117055.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  117056.         End
  117057.     If @Koi_Regioni Is Not NULL    
  117058.         Begin
  117059.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  117060.             OR ( KO.Sifra_Reg Is Null and K.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  117061.         End
  117062.  
  117063.     Create Table #Rez
  117064.     (
  117065.         NarID        int,
  117066.         Sifra_Oe    smallint,
  117067.         Sifra_Nar    smallint,
  117068.         Broj_Nar    int,
  117069.         Datum_Nar    smalldatetime,
  117070.         Rok        smallint,
  117071.         Sifra_Kup    char(6),
  117072.         Sifra_Obj    smallint,
  117073.         Sifra_Div    smallint,
  117074.         IznosNar    decimal(18,2),
  117075.         LimitDiv    decimal(18,2),
  117076.         LimitVk        decimal(18,2),
  117077.         SaldoDiv    decimal(18,2),
  117078.         SaldoVk        decimal(18,2),
  117079.         SaldoVkDosp    decimal(18,2),
  117080.         DaliPoDiv    char(1),
  117081.         DaliDocni    char(1),
  117082.         KolkuDenaDocni    smallint,
  117083.         KojaDivDocni    smallint
  117084.     )
  117085.     -- Koja divizija se narackite
  117086.     Create Table #NarDiv
  117087.     (
  117088.         NarID        int,
  117089.         Sifra_Div     smallint,
  117090.         Sifra_Kup    char(6)
  117091.     )
  117092.     Set @SSQL = ' Select Nar.NarID, A.Sifra_Div, Nar.Sifra_Kup
  117093.             From Naracki Nar
  117094.             Inner Join StaNarac SN On Nar.NarID=SN.NarID
  117095.             Inner Join Katart A On A.Sifra_Art = SN.Sifra_Art
  117096.             LEFT OUTER JOIN Komint K ON Nar.Sifra_Kup=K.Sifra_Kup
  117097.             Left Outer Join KObjekti KO ON Nar.Sifra_obj=KO.Sifra_obj and Nar.Sifra_kup=KO.Sifra_kup  
  117098.             INNER JOIN TipNarac TN ON Nar.Sifra_Nar=TN.Sifra_Nar
  117099.             Where SN.Rbr=1 '
  117100.     Set @SSQL = @SSQL + @SSQLUsl
  117101.     Insert Into #NarDiv Exec(@SSQL)
  117102.     
  117103.     -- Saldo Po Divizii 
  117104.     Create Table #SaldoKomDiv
  117105.     (
  117106.         Sifra_Kup    char(6),
  117107.         Sifra_Div    smallint,
  117108.         SaldoDiv    decimal(18,6)
  117109.     )
  117110.     Declare @Datum_Do as smalldatetime
  117111.     If @Datum_Nar_Do Is Not Null 
  117112.         Set @Datum_Do=@Datum_Nar_Do
  117113.     Else 
  117114.         Set @Datum_Do=dbo.fn_VratiDatum(GetDate())
  117115.  
  117116.     Set @SSQL = 'Insert Into #SaldoKomDiv
  117117.             Select Sifra_Kup, Sifra_Div, Sum(Dolzi-Plateno_Dolzi)
  117118.             From AnFinDok 
  117119.             Where Sifra_Za = ''1'' '-- And Sifra_Kup In (Select Distinct Sifra_Kup From #NarDiv) '
  117120.     If @Sifra_Kup Is NOT Null
  117121.         SET @SSQLKup = @SSQLKup + ' AND Sifra_Kup=''' + Cast(@Sifra_Kup As Varchar(35))+ ''' '
  117122.     If @Koi_Gradovi Is NOT Null
  117123.         SET @SSQLKup = @SSQLKup + ' AND Sifra_Grad In (' + @Koi_Gradovi + ') '
  117124.     If @Koi_Regioni Is NOT Null
  117125.         SET @SSQLKup = @SSQLKup + ' AND Sifra_Reg In (' + @Koi_Regioni + ') '
  117126.     SET @SSQL = @SSQL + @SSQLKup + ' Group By Sifra_Kup, Sifra_Div '
  117127.     Exec(@SSQL)
  117128.  
  117129.     -- Saldo Vkupno
  117130.     Create Table #SaldoKom
  117131.     (
  117132.         Sifra_Kup    char(6),
  117133.         Dolzi        decimal(18,6),
  117134.         Pobaruva    decimal(18,6),
  117135.         DospDolzi    decimal(18,6)
  117136.     )
  117137.     Set @SSQL = 'Insert Into #SaldoKom
  117138.             Select Sifra_Kup, Sum(Dolzi), Sum(Pobaruva), 
  117139.                 Sum(Case When Datum_Dok+Rok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' Then Dolzi Else 0 End)
  117140.             From AnFinDok 
  117141.             Where Sifra_Za = ''1'' '-- And Sifra_Kup In (Select Distinct Sifra_Kup From #NarDiv) '
  117142.     SET @SSQL = @SSQL + @SSQLKup + ' Group By Sifra_Kup '
  117143.     Exec(@SSQL)
  117144.  
  117145.     Update #SaldoKom Set Dolzi = 0 Where Dolzi Is Null
  117146.     Update #SaldoKom Set Pobaruva = 0 Where Pobaruva Is Null
  117147.     Update #SaldoKom Set DospDolzi = 0 Where DospDolzi Is Null
  117148.  
  117149. --dod.04.05.11
  117150. CREATE TABLE #TmpKup
  117151. (Sifra_Kup    char(6))
  117152. INSERT INTO #TmpKup SELECT DISTINCT Sifra_Kup FROM #NarDiv
  117153.  
  117154. CREATE TABLE #TmpDospSaldo
  117155. (Sifra_Kup    char(6),
  117156. Dosp_Saldo    decimal(18,4))
  117157.  
  117158. INSERT INTO #TmpDospSaldo SELECT A.Sifra_Kup, SUM(A.Dolzi) FROM AnFinDok A 
  117159. INNER JOIN #TmpKup K ON A.Sifra_Kup=K.Sifra_Kup INNER JOIN Komint Kup ON K.Sifra_Kup=Kup.Sifra_Kup
  117160. WHERE A.Sifra_Za ='1' AND DateADD(day, A.Rok+Kup.TolerDena_Dosp, A.Datum_Dok)<=GETDATE() And A.Dolzi>0 GROUP BY A.Sifra_Kup
  117161.  
  117162. INSERT INTO #TmpDospSaldo SELECT A.Sifra_Kup, SUM(A.Pobaruva) * -1 FROM AnFinDok A 
  117163. INNER JOIN #TmpKup K ON A.Sifra_Kup=K.Sifra_Kup  
  117164. WHERE A.Sifra_Za ='1' GROUP BY A.Sifra_Kup
  117165.  
  117166. INSERT INTO #TmpDospSaldo SELECT A.Sifra_Kup, SUM(A.Dolzi) FROM AnFinDok A 
  117167. INNER JOIN #TmpKup K ON A.Sifra_Kup=K.Sifra_Kup  
  117168. WHERE A.Sifra_Za ='1' AND A.Dolzi<0 GROUP BY A.Sifra_Kup
  117169.  
  117170. CREATE TABLE #TmpDosp
  117171. (Sifra_Kup    char(6),
  117172. Dosp_Saldo    decimal(18,4))
  117173. INSERT INTO #TmpDosp SELECT Sifra_Kup, SUM(Dosp_Saldo) FROM #TmpDospSaldo GROUP BY Sifra_Kup
  117174. UPDATE #TmpDosp SET Dosp_Saldo=0 WHERE Dosp_Saldo<0
  117175. ---
  117176.  
  117177.     SET @SSQL = 'SELECT Nar.NarID, Nar.Sifra_OE, Nar.Sifra_Nar, Nar.Broj_Nar, 
  117178.             Nar.Datum_Nar, Nar.Rok, Nar.Sifra_Kup, Nar.Sifra_Obj, ND.Sifra_Div, 
  117179.             Nar.Toc200, KLD.Iznos LimitDiv, K.Limit_Dolzi LimitVK, SKD.SaldoDiv, 
  117180.             (SK.Dolzi-SK.Pobaruva) SaldoVk, (SK.DospDolzi-SK.Pobaruva) SaldoVkDosp
  117181.             FROM Naracki Nar
  117182.             INNER JOIN TipNarac TN ON Nar.Sifra_Nar=TN.Sifra_Nar
  117183.             LEFT OUTER JOIN Komint K ON Nar.Sifra_Kup=K.Sifra_Kup
  117184.             Left Outer Join KObjekti KO ON Nar.Sifra_obj=KO.Sifra_obj and Nar.Sifra_kup=KO.Sifra_kup  
  117185.             INNER JOIN Orged O ON Nar.Sifra_OE=O.Sifra_OE 
  117186.             Left Outer Join Patnici Pat On Pat.Sifra_Pat = (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else K.Sifra_Pat End) 
  117187.             Left Outer Join #NarDiv ND On ND.NarID=Nar.NarID
  117188.             Left Outer Join KomLimitDiv KLD On KLD.Sifra_Kup=Nar.Sifra_Kup And KLD.Sifra_Div=ND.Sifra_Div
  117189.             Left Outer Join #SaldoKom SK On SK.Sifra_Kup = Nar.Sifra_Kup 
  117190.             Left Outer Join #SaldoKomDiv SKD On SKD.Sifra_Kup = Nar.Sifra_Kup And SKD.Sifra_Div=ND.Sifra_Div  
  117191.             LEFT OUTER JOIN #TmpDosp S ON Nar.Sifra_Kup=S.Sifra_Kup
  117192.             Where 1=1 '
  117193.     If @KoiNarLimit = 'N'
  117194.         Set @SSQL = @SSQL + ' And (Nar.Toc200 > KLD.Iznos OR S.Dosp_Saldo>0) '
  117195.     Else If @KoiNarLimit = 'D'
  117196.         Set @SSQL = @SSQL + ' And (Nar.Toc200 <= KLD.Iznos AND S.Dosp_Saldo<=0) '
  117197.     SET @SSQL = @SSQL +@SSQLUsl 
  117198.  
  117199.     Insert Into #Rez (NarID, Sifra_Oe, Sifra_Nar, Broj_Nar, Datum_Nar, Rok, Sifra_Kup, Sifra_Obj, Sifra_Div, 
  117200.             IznosNar, LimitDiv, LimitVk, SaldoDiv, SaldoVk, SaldoVkDosp) --, DaliPoDiv, DaliDocni, KolkuDenaDocni, KojaDivDocni)
  117201.     EXEC(@SSQL)
  117202.  
  117203.     Update #Rez Set DaliPoDiv = 'D' Where Sifra_Kup In (Select Sifra_Kup From KomLimitDiv)
  117204.  
  117205.     Select N.NarID, N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Rok, N.Sifra_Kup, Kup.ImeKup, N.Sifra_Obj, KO.ImeObj,
  117206.         N.Sifra_Div, N.IznosNar, N.LimitDiv, N.LimitVk, N.SaldoDiv, N.SaldoVk, N.SaldoVkDosp, S.Dosp_Saldo
  117207.     From #Rez N
  117208.     Left Outer Join Komint Kup on Kup.Sifra_Kup = N.Sifra_Kup
  117209.     Left Outer Join KObjekti KO on KO.Sifra_Kup = N.Sifra_Kup And KO.Sifra_Obj=N.Sifra_Obj
  117210.     LEFT OUTER JOIN #TmpDosp S ON N.Sifra_Kup=S.Sifra_Kup
  117211.  
  117212.         
  117213.  
  117214.  
  117215.  
  117216.  
  117217. Go
  117218. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_naracizal]'))
  117219. drop procedure [dbo].[sp_pregled_naracizal]
  117220.  
  117221. Go
  117222.  
  117223.  
  117224.  
  117225.  
  117226. CREATE       PROCEDURE sp_Pregled_NaracIZal
  117227.     @KoiSifNar Varchar(50),
  117228.     @KoiOE Varchar(50),
  117229.     @Datum_Nar_Od Smalldatetime,
  117230.     @Datum_Nar_Do Smalldatetime,
  117231.     @Realiz        char(1)='N',      --Site,D-Realiz, N-Nereal. X-Potpolno nerealizirani
  117232.     @Podred     char(1) = Null,    -- R - Rbr 
  117233.     @Sifra_OEZal varchar(100)
  117234. AS
  117235.     Declare @SSQL Varchar(8000)
  117236.  
  117237.     Create Table #Nar
  117238.     (Sifra_Art    varchar(20),
  117239.     KolicNar    decimal(18,6),
  117240.     KolicZal    decimal(18,6),
  117241.     Sifra_KatStatus smallint )
  117242.  
  117243.     SET @SSQL = 'SELECT SN.Sifra_Art, SUM(SN.Kolic-SN.Realiz_Kolic) FROM StaNarac SN 
  117244.                                   INNER JOIN Naracki Nar ON Nar.NarID=SN.NarID  WHERE SN.Kolic > SN.Realiz_Kolic '
  117245.     If @KoiSifNar Is NOT NULL
  117246.         SET @SSQL = @SSQL + 'AND Nar.Sifra_Nar IN (Select Sifra_nar From SgrDok where Sif_grDok =''' + @KoiSifNar +''') '
  117247.     If @KoiOE Is Not Null
  117248.         SET @SSQL = @SSQL + 'AND Nar.Sifra_OE In (Select Sifra_Oe from SgrOrg where Sif_grOrg=''' + @KoiOE + ''') '
  117249.     If @Datum_Nar_Od Is NOT Null
  117250.         SET @SSQL = @SSQL + 'AND Nar.Datum_Nar>=''' + Cast(@Datum_Nar_Od As Varchar(35)) + ''' '
  117251.     If @Datum_Nar_Do Is NOT Null
  117252.          SET @SSQL = @SSQL + 'AND Nar.Datum_Nar<=''' + Cast(@Datum_Nar_Do As Varchar(35)) + ''' '
  117253. /*    IF @Realiz='D'
  117254.         SET @SSQL = @SSQL + ' AND (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or SN.Realiziran = ''P'') '
  117255.     Else IF @Realiz='N'                                          --I         Dodadeno 19.04.2004 za PKB             I--    
  117256.         SET @SSQL = @SSQL + ' AND (SN.Realiziran <> ''D'' Or Sn.Realiziran Is Null) ' --(NOT (Nar.Realiziran = ''D'' Or SN.Realiziran = ''D'' Or Nar.Realiziran = ''P'' Or SN.Realiziran = ''P'') 
  117257.                         --                             OR (Nar.Realiziran Is Null Or SN.Realiziran Is Null))'
  117258.     Else IF @Realiz='X'
  117259.         SET @SSQL = @SSQL + ' AND Cast(Nar.Sifra_Oe as char(3)) + Cast(Nar.Sifra_Nar as char(3)) + Cast(Nar.Broj_Nar as varchar(10)) Not In 
  117260.                         (Select Cast(Sifra_OeNar as char(3)) + Cast(Sifra_Nar as char(3)) + Cast(Broj_Nar as varchar(10)) From Dokr Where Broj_Nar > 0) And (Nar.Realiziran<>''D'' Or Nar.Realiziran Is Null) ' 
  117261. */
  117262.     Set @SSQL = @SSQL    + 'GROUP BY SN.Sifra_Art '
  117263.     Insert Into #Nar (Sifra_Art, KOlicNar) EXEC(@SSQL)
  117264.  
  117265.      Create Table #Zal
  117266.     (Sifra_Art    varchar(20),
  117267.     KolicZal    decimal(18,6),
  117268.     Sifra_KatStatus smallint )
  117269.  
  117270. SET @SSQL='SELECT S.Sifra_Art, S.Sifra_KatStatus, SUM(S.Sostojba) FROM WHMSost S
  117271. INNER JOIN #Nar N ON N.Sifra_Art=S.Sifra_Art
  117272. WHERE S.Sifra_OE IN ('+@Sifra_OEZal+') 
  117273. GROUP BY S.Sifra_Art, S.Sifra_KatStatus'
  117274. INSERT INTO #Zal (Sifra_Art, Sifra_KatStatus, KolicZal) EXEC(@SSQL)
  117275.  
  117276. UPDATE #Nar SET KolicZal=Z.KolicZal, Sifra_KatStatus=Z.Sifra_KatStatus FROM #Zal Z
  117277. WHERE #Nar.Sifra_Art=Z.Sifra_Art AND Z.Sifra_KatStatus=1
  117278.  
  117279. INSERT INTO #Nar (Sifra_Art, KolicNar, KolicZal, Sifra_KatStatus)
  117280. SELECT Sifra_Art, 0, KolicZal, Sifra_KatStatus FROM #Zal WHERE Sifra_KatStatus>1
  117281.  
  117282. SELECT N.Sifra_Art, A.ImeArt, A.EdMera, N.KolicNar, N.KolicZal, N.Sifra_KatStatus, S.ImeKatStatus
  117283. FROM #Nar N INNER JOIN KatArt A ON N.Sifra_Art=A.Sifra_Art
  117284. LEFT OUTER JOIN KatStatus S ON N.Sifra_KatStatus=S.Sifra_KatStatus
  117285. ORDER BY N.Sifra_Art
  117286.  
  117287.  
  117288.  
  117289.  
  117290.  
  117291.  
  117292.  
  117293.  
  117294.  
  117295.  
  117296.  
  117297.  
  117298.  
  117299.  
  117300.  
  117301. Go
  117302. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_orc]'))
  117303. drop procedure [dbo].[sp_pregled_orc]
  117304.  
  117305. Go
  117306.  
  117307. CREATE    PROCEDURE sp_Pregled_ORC
  117308.    @Datum_Dok_Od Smalldatetime,
  117309.    @Datum_Dok_Do Smalldatetime,
  117310.     @Sifra_Dobav Varchar(10),
  117311.     @Sifra_Kupuv Varchar(10),
  117312.     @Prodazba1_KoiOE Varchar(200) = 'MAG',
  117313.     @Prodazba2_KoiOE Varchar(200) = 'AKTP'
  117314. AS
  117315.    Declare @SSQL Varchar(4000)
  117316.     CREATE     TABLE [#ORC] (
  117317.         [Sifra_Art] Varchar(20) ,
  117318.         [Kolicina] [decimal](18, 4) ,
  117319.         [ProdVr] [decimal](18, 4) ,
  117320.         [DanProdVr] [char](1) ,
  117321.         [POsn] [decimal](6, 2) ,
  117322.         [NabVr] [decimal](18, 4) ,
  117323.         [Kolona] [char] (1)
  117324.     )
  117325.     SET @SSQL = 'SELECT S.Sifra_Art,
  117326.                 Sum(S.Kolic) Kolicina,
  117327.                 Sum(S.Kolic*S.DokCena) ProdVr,
  117328.                 S.DanDokCena DanProdVr,
  117329.                 S.POsn,
  117330.                 Sum(S.Kolic*S.NabCena) NabVr,
  117331.                 ''1'' As Kolona
  117332.          FROM Stavr S
  117333.          Inner Join Dokr D On S.DokrID=D.DokrID
  117334.          Where S.VlIzl=''I'' And (S.ImaDodatna Is Null Or S.ImaDodatna='''') '
  117335.     If @Sifra_Dobav Is Not Null
  117336.         Set @SSQL = @SSQL + 'And S.Sifra_Art In (Select Distinct ss.Sifra_Art From Dokr dd
  117337.                     Inner Join Stavr ss On dd.DokrID=ss.DokrID
  117338.                     Where dd.VlIzl=''V''
  117339.                     And dd.Sifra_Za=''2''
  117340.                     And dd.Sifra_Kup=''' + @Sifra_Dobav +''') '
  117341.     If @Sifra_Kupuv Is Not Null
  117342.         Set @SSQL = @SSQL + 'And D.Sifra_Kup=''' + @Sifra_Kupuv + ''' '
  117343.    If @Prodazba1_KoiOE Is NOT Null
  117344.       SET @SSQL = @SSQL + 'AND S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Prodazba1_KoiOE + ''') '
  117345.     If @Datum_Dok_Od Is NOT Null
  117346.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  117347.    If @Datum_Dok_Do Is NOT Null
  117348.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  117349.     Set @SSQL = @SSQL + 'Group By S.Sifra_Art, S.DanDokCena, S.POsn '
  117350.     Insert #ORC EXEC(@SSQL)
  117351.     SET @SSQL = 'SELECT S.Sifra_Art,
  117352.                 Sum(S.Kolic) Kolicina,
  117353.                 Sum(S.Kolic*S.DokCena) ProdVr,
  117354.                 S.DanDokCena DanProdVr,
  117355.                 S.POsn,
  117356.                 Sum(S.Kolic*S.NabCena) NabVr,
  117357.                 ''2'' As Kolona
  117358.          FROM Stavr S
  117359.          Inner Join Dokr D On S.DokrID=D.DokrID
  117360.          Where S.VlIzl=''I'' And (S.ImaDodatna Is Null Or S.ImaDodatna='''') '
  117361.     If @Sifra_Dobav Is Not Null
  117362.         Set @SSQL = @SSQL + 'And S.Sifra_Art In (Select Distinct ss.Sifra_Art From Dokr dd
  117363.                     Inner Join Stavr ss On dd.DokrID=ss.DokrID
  117364.                     Where dd.VlIzl=''V''
  117365.                     And dd.Sifra_Za=''2''
  117366.                     And dd.Sifra_Kup=''' + @Sifra_Dobav +''') '
  117367.     If @Sifra_Kupuv Is Not Null
  117368.         Set @SSQL = @SSQL + 'And D.Sifra_Kup=''' + @Sifra_Kupuv + ''' '
  117369.    If @Prodazba2_KoiOE Is NOT Null
  117370.       SET @SSQL = @SSQL + 'AND S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Prodazba2_KoiOE + ''') '
  117371.     If @Datum_Dok_Od Is NOT Null
  117372.         SET @SSQL = @SSQL + 'AND S.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  117373.    If @Datum_Dok_Do Is NOT Null
  117374.          SET @SSQL = @SSQL + 'AND S.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  117375.     Set @SSQL = @SSQL + 'Group By S.Sifra_Art, S.DanDokCena, S.POsn '
  117376.     Insert #ORC EXEC(@SSQL)
  117377.     Select O.Sifra_Art, K.ImeArt, K.EdMera, O.Kolicina, O.NabVr, O.ProdVr, O.DanProdVr, O.POsn, O.Kolona
  117378.     From #ORC O
  117379.     Inner Join Katart K On O.Sifra_Art=K.Sifra_Art
  117380.     Order By O.Sifra_Art, O.Kolona
  117381.  
  117382.  
  117383.  
  117384. Go
  117385. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_popis_inventar]'))
  117386. drop procedure [dbo].[sp_pregled_popis_inventar]
  117387.  
  117388. Go
  117389. CREATE PROCEDURE sp_Pregled_Popis_Inventar
  117390.     @Sifra_Oe    smallint,
  117391.     @Broj_InvP    int
  117392.  AS
  117393.     Select P.Sifra_Oe, O.ImeOrg, P.BrojInvP, P.Datum_InvP, P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj,  P.Sifra_Mest, P.Popis
  117394.     From InvPopis P
  117395.     Inner Join Orged O On O.Sifra_Oe = P.Sifra_Oe
  117396.     Left Outer Join Komint Kup On Kup.Sifra_Kup = P.Sifra_Kup
  117397.     Left Outer Join Kobjekti KO On KO.Sifra_Kup = P.Sifra_Kup and KO.Sifra_Obj = P.Sifra_Obj
  117398.     Where P.Sifra_Oe=@Sifra_Oe and P.BrojInvP=@Broj_InvP
  117399.  
  117400.  
  117401. Go
  117402. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_popis_os]'))
  117403. drop procedure [dbo].[sp_pregled_popis_os]
  117404.  
  117405. Go
  117406.  
  117407. CREATE  PROCEDURE sp_Pregled_Popis_OS
  117408.     @Inv_BrojOd    char(10) = Null,
  117409.     @Inv_BrojDo    char(10) = Null,
  117410.     @Datum_Od    smalldatetime = Null,
  117411.     @Datum_Do    smalldatetime = Null,
  117412.     @Sifra_Lok    char(3) = Null,    
  117413.     @Sifra_MikLok    char(10) = Null,
  117414.     @Sifra_MakLok    char(10) = Null,
  117415.     @Sifra_Rab    int = Null,
  117416.     @KusokVisok varchar(2),        --K-Kusok,V-Visok,T-Tocno ili kombinaciite KV, KT, VT
  117417.     @LokacOdPopLst char(1) = 'N',        -- dali filterot lokacija i rabotnik da se gleda od osnovnoto sredstvo ili od popisot
  117418.     @OS_SI    char(1) = 'O'        -- O - Osnovni Sredstva,     S - Siten Inventar
  117419. AS
  117420.     Declare @SSQL as Varchar(8000)
  117421.     Declare @SSQLUsl as Varchar(8000)
  117422.     Set @SSQLUsl=' '
  117423.     Create Table #OsnSredPopis       -- Vo ovaa tabela kje gi zapiseme site Osn S-va
  117424.     (
  117425.      Inv_Broj    char(10),
  117426.      Popis        int,
  117427.      OdMobilenUred    char(1),
  117428.      OdBarKod    char(1)
  117429.     )
  117430.     Create Table #Popis        -- Vo ovaa tabela kje gi zapiseme samo popisanite Osn S-va
  117431.     (
  117432.      Inv_Broj    char(10),
  117433.      Popis        int,
  117434.      OdMobilenUred    char(1),
  117435.      OdBarKod    char(1),
  117436.      Sifra_MikLok    char(10),
  117437.      Sifra_MakLok    char(10),
  117438.      Sifra_Rab    int
  117439.     )
  117440.     Set @SSQL = ' Select  O.Inv_Broj, Count(LP.IDLPopisOS), LP.OdMobilenUred, LP.OdBarKod,
  117441.                 P.Sifra_MikLok, P.Sifra_MakLok, P.Sifra_Rab
  117442.             From PopisOS P
  117443.             Inner Join LPopisOS LP On LP.IDPopisOS=P.IDPopisOS
  117444.             Inner Join OsnSred O On O.Inv_Broj=Lp.Inv_Broj 
  117445.             Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  117446.             Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  117447.             Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  117448.             Left Outer Join Rabotnik R On R.Sifra_Rab=O.Sifra_Rab '
  117449.     If @LokacOdPopLst =  'D'
  117450.         Set @SSQL = @SSQL + ' Left Outer Join MakroLok MLP On MLP.Sifra_MakLok=P.Sifra_MakLok '
  117451.     Set @SSQL = @SSQL + ' Where 1=1 '
  117452.     If @Datum_Od Is Not null
  117453.         Set @SSQL = @SSQL + ' And P.Datum >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  117454.     If @Datum_Do Is Not null
  117455.         Set @SSQL = @SSQL + ' And P.Datum <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  117456.     If @LokacOdPopLst = 'D' 
  117457.     Begin
  117458.         If @Sifra_MakLok Is Not null
  117459.             Set @SSQLUsl = @SSQLUsl + ' And (P.Sifra_MakLok = ''' + @Sifra_MakLok + ''' Or MAKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''') '
  117460.         If @Sifra_MikLok Is Not null
  117461.             Set @SSQLUsl = @SSQLUsl + ' And (P.Sifra_MikLok = ''' + @Sifra_MikLok + ''' Or MIKL.Sifra_MikLok = ''' + @Sifra_MikLok + ''') '
  117462.         If @Sifra_Rab Is Not null
  117463.             Set @SSQLUsl = @SSQLUsl + ' And (P.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''' Or O.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''') '
  117464.         If @Sifra_Lok Is Not null
  117465.             Set @SSQLUsl = @SSQLUsl + ' And (MLP.Sifra_Lok = ''' + @Sifra_Lok + ''' Or L.Sifra_Lok = ''' + @Sifra_Lok + ''') '
  117466.     End
  117467.     Else
  117468.     Begin
  117469.         If @Sifra_MakLok Is Not null
  117470.             Set @SSQLUsl = @SSQLUsl + ' And MAKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  117471.         If @Sifra_MikLok Is Not null
  117472.             Set @SSQLUsl = @SSQLUsl + ' And MIKL.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  117473.         If @Sifra_Rab Is Not null
  117474.             Set @SSQLUsl = @SSQLUsl + ' And O.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''' '
  117475.         If @Sifra_Lok Is Not null
  117476.             Set @SSQLUsl = @SSQLUsl + ' And L.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  117477.     End
  117478.     If @Inv_BrojOd Is Not null
  117479.         Set @SSQLUsl = @SSQLUsl + ' And O.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  117480.     If @Inv_BrojDo Is Not null
  117481.         Set @SSQLUsl = @SSQLUsl + ' And O.Inv_Broj <= ''' + @Inv_BrojDo + ''' '
  117482.     If @OS_SI = 'O'
  117483.         Set @SSQLUsl = @SSQLUsl + ' And O.Tip = ''OS'' '
  117484.     Else If @OS_SI = 'S'
  117485.         Set @SSQLUsl = @SSQLUsl + ' And O.Tip = ''SI'' '
  117486.     -- Ja polnime tabelata #Popis so popisanite osn. s-va
  117487.     Insert Into #Popis Exec(@SSQL+@SSQLUsl+' Group By O.Inv_Broj, LP.OdMobilenUred, LP.OdBarKod, P.Sifra_MikLok, P.Sifra_MakLok, P.Sifra_Rab ')
  117488. Print @SSQL+@SSQLUsl+' Group By O.Inv_Broj, LP.OdMobilenUred, LP.OdBarKod, P.Sifra_MikLok, P.Sifra_MakLok, P.Sifra_Rab '
  117489.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  117490.     -- Ja polnime tabelata #OsnSredPopis so site osn. s-va zaradi posle pri filtrite Kusok, Visok, Tocno da ne se isklucuvaat onie S-va koi ne se popisani
  117491.     Set @SSQL = ' Select  O.Inv_Broj, P.Popis, P.OdMobilenUred, P.OdBarKod
  117492.             From OsnSred O
  117493.             Left Outer Join #Popis P On P.Inv_Broj=O.Inv_Broj
  117494.             Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  117495.             Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  117496.             Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  117497.             Left Outer Join Rabotnik R On R.Sifra_Rab=O.Sifra_Rab '
  117498.     If @LokacOdPopLst =  'D'
  117499.         Set @SSQL = @SSQL + ' Left Outer Join MakroLok MLP On MLP.Sifra_MakLok=P.Sifra_MakLok '
  117500.     Set @SSQL = @SSQL + ' Where 1=1 '
  117501.     If @Datum_Do Is Not Null 
  117502.         Set @SSQL = @SSQL + ' And (O.DatPrest Is Null Or O.DatPrest>= ''' + Cast(@Datum_Do as varchar(30)) + ''') '
  117503.     If @Datum_Od Is Not Null 
  117504.         Set @SSQL = @SSQL + ' And O.DatNab<=''' + Cast(@Datum_Od as varchar(30)) + ''' '
  117505.     Insert Into #OsnSredPopis Exec(@SSQL+@SSQLUsl)
  117506.     Update #OsnSredPopis Set Popis=0 Where Popis Is Null
  117507.     -- Vo tabelata #OsnSredPopis go zapisuvame napraveniot popis osn.s-va
  117508. /*    Update #OsnSredPopis
  117509.     Set Popis=#Popis.Popis
  117510.     From #Popis 
  117511.     Where #OsnSredPopis.Inv_Broj=#Popis.Inv_Broj
  117512. */
  117513. Print @SSQL
  117514.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  117515.     -- Rezultati od popisot
  117516.     Set @SSQL = 'Select  O.Inv_Broj, O.Ime, O.Opis, O.Sifra_Rab, R.ImeRab, 1 as Sostojba, P.Popis, (P.Popis-1) KusokVisok, P.OdMobilenUred, P.OdBarKod
  117517.             From OsnSred O
  117518.             Inner Join #OsnSredPopis P On P.Inv_Broj=O.Inv_Broj
  117519.             Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  117520.             Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  117521.             Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  117522.             Left Outer Join Rabotnik R On R.Sifra_Rab=O.Sifra_Rab
  117523.             Where 1=1 '
  117524.     If @KusokVisok = 'K' 
  117525.         Set @SSQL = @SSQL + ' AND P.Popis < 1 '
  117526.     If @KusokVisok = 'V' 
  117527.         Set @SSQL = @SSQL + ' AND P.Popis > 1 '
  117528.     If @KusokVisok = 'T' 
  117529.         Set @SSQL = @SSQL + ' AND P.Popis = 1 '
  117530.     If @KusokVisok = 'KV' 
  117531.         Set @SSQL = @SSQL + ' AND P.Popis <> 1 '
  117532.     If @KusokVisok = 'KT' 
  117533.         Set @SSQL = @SSQL + ' AND (P.Popis < 1 OR P.Popis = 1) '
  117534.     If @KusokVisok = 'VT' 
  117535.         Set @SSQL = @SSQL + ' AND (P.Popis > 1 OR P.Popis = 1) '
  117536. Print @SSQL
  117537.     Exec(@SSQL)
  117538.  
  117539.  
  117540. Go
  117541. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_poplst_os]'))
  117542. drop procedure [dbo].[sp_pregled_poplst_os]
  117543.  
  117544. Go
  117545. CREATE        PROCEDURE sp_Pregled_PopLst_OS
  117546.     @Datum_Od    smalldatetime = Null,
  117547.     @Datum_Do    smalldatetime = Null,
  117548.     @Sifra_MakLok    char(10) = Null,
  117549.     @Sifra_MikLok    char(10) = Null,
  117550.     @Broj_Lista    int = Null,
  117551.     @Broj_Lista_Do    int = Null,
  117552.     @Sifra_Lok    char(3) = Null,    
  117553.     @Sifra_Rab    int = Null,
  117554.     @LokacOdPopLst char(1) = 'N',        -- dali filterot lokacija i rabotnik da se gleda od osnovnoto sredstvo ili od popisot
  117555.     @OS_SI    char(1) = 'O'        -- O - Osnovni Sredstva,     S - Siten Inventar
  117556. AS
  117557.     Declare @SSQL varchar(8000)
  117558.     Set @SSQL =     'SELECT P.Sifra_Oe, ORG.ImeOrg, L.IDPopisOS, L.Broj_Lista, L.Inv_Broj, O.Ime, P.Datum, L.OdMobilenUred, L.OdBarKod,
  117559.                 P.Sifra_MikLok, P.Sifra_MakLok, P.Sifra_Rab, ML.Ime_MikLok, MA.Ime_MakLok, R.ImeRab, L.IDLPopisOS
  117560.             FROM PopisOS P
  117561.             Inner Join LPopisOS L On L.IDPopisOS=P.IDPopisOS 
  117562.             Inner Join OsnSred O On O.Inv_Broj=L.Inv_Broj
  117563.             Left Outer Join MikroLok ML On ML.Sifra_MikLok=P.Sifra_MikLok 
  117564.             Left Outer Join MakroLok MA On MA.Sifra_MakLok=P.Sifra_MakLok 
  117565.             Left Outer Join Rabotnik R On R.Sifra_Rab=P.Sifra_Rab 
  117566.             Inner Join Orged ORG On ORG.Sifra_Oe=P.Sifra_Oe '
  117567.     If @LokacOdPopLst =  'D'
  117568.         Set @SSQL = @SSQL + ' Left Outer Join MakroLok MLP On MLP.Sifra_MakLok=P.Sifra_MakLok '
  117569. --    If @Sifra_MakLok Is Not Null
  117570. --        Set @SSQL = @SSQL + ' Left Outer Join MikroLok ML On ML.Sifra_MikLok=O.Sifra_MikLok '
  117571.     Set @SSQL = @SSQL + ' Where 1=1 '
  117572.     If @Datum_Od  IS NOT NULL
  117573.         Set @SSQL = @SSQL + ' AND P.Datum >= ''' + Cast(@Datum_Od As varchar(30)) + ''' '
  117574.     If @Datum_Do  IS NOT NULL
  117575.         Set @SSQL = @SSQL + ' AND P.Datum <= ''' + Cast(@Datum_Do As varchar(30)) + ''' '
  117576.     If @LokacOdPopLst = 'D' 
  117577.     Begin
  117578.         If @Sifra_MakLok Is Not null
  117579.             Set @SSQL = @SSQL + ' And (P.Sifra_MakLok = ''' + @Sifra_MakLok + ''' Or ML.Sifra_MakLok = ''' + @Sifra_MakLok + ''') '
  117580.         If @Sifra_MikLok Is Not null
  117581.             Set @SSQL = @SSQL + ' And (P.Sifra_MikLok = ''' + @Sifra_MikLok + ''' Or O.Sifra_MikLok = ''' + @Sifra_MikLok + ''') '
  117582.         If @Sifra_Rab Is Not null
  117583.             Set @SSQL = @SSQL + ' And (P.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''' Or O.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''') '
  117584.         If @Sifra_Lok Is Not null
  117585.             Set @SSQL = @SSQL + ' And (MLP.Sifra_Lok = ''' + @Sifra_Lok + ''' Or MA.Sifra_Lok = ''' + @Sifra_Lok + ''') '
  117586.     End
  117587.     Else
  117588.     Begin
  117589.         If @Sifra_MakLok Is Not null
  117590.             Set @SSQL = @SSQL + ' And ML.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  117591.         If @Sifra_MikLok Is Not null
  117592.             Set @SSQL = @SSQL + ' And O.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  117593.         If @Sifra_Rab Is Not null
  117594.             Set @SSQL = @SSQL + ' And O.Sifra_Rab = ''' + cast(@Sifra_Rab as varchar(10)) + ''' '
  117595.         If @Sifra_Lok Is Not null
  117596.             Set @SSQL = @SSQL + ' And MA.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  117597.     End
  117598. /*    If @Sifra_MakLok  IS NOT NULL
  117599.         Set @SSQL = @SSQL + ' AND ML.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  117600.     If @Sifra_MikLok  IS NOT NULL
  117601.         Set @SSQL = @SSQL + ' AND O.Sifra_MikLok = ''' + @Sifra_MikLok + ''' ' */
  117602.     IF @Broj_Lista IS NOT NULL
  117603.         Set @SSQL = @SSQL + ' AND L.Broj_Lista >= ' + cast(@Broj_Lista as varchar(8))+ ' '
  117604.     IF @Broj_Lista_Do IS NOT NULL
  117605.         Set @SSQL = @SSQL + ' AND L.Broj_Lista <= ' + cast(@Broj_Lista_Do as varchar(8))+ ' '
  117606.     If @OS_SI = 'O'
  117607.         Set @SSQL = @SSQL + ' And O.Tip = ''OS'' '
  117608.     Else If @OS_SI = 'S'
  117609.         Set @SSQL = @SSQL + ' And O.Tip = ''SI'' '
  117610.     Set @SSQL = @SSQL + ' ORDER BY L.IDPopisOS, L.Broj_Lista, L.Inv_Broj, O.Ime '
  117611. print @SSQL
  117612.     exec (@SSQL)
  117613.  
  117614.  
  117615. Go
  117616. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_rpopis]'))
  117617. drop procedure [dbo].[sp_pregled_rpopis]
  117618.  
  117619. Go
  117620.  
  117621.  
  117622.  
  117623.  
  117624.  
  117625. CREATE        PROCEDURE sp_Pregled_RPopis
  117626.     @Sifra_OE smallint,
  117627.     @Datum smalldatetime,
  117628.     @KusokVisok varchar(2)    ,    --K-Kusok,V-Visok,T-Tocno ili kombinaciite KV, KT, VT
  117629.     @Grupa_OrgEd varchar(500) = NULL,
  117630.     @Datum_Do smalldatetime = NULL,
  117631.     @CenaSoDanok char(1) = NULL,              -- D/N
  117632.     @KojaCena char(1) = 'K',               -- K, N-NabCena, P-NNabCena
  117633.     @Sifra_art_Od Varchar(20)=Null,
  117634.     @Sifra_art_Do Varchar(20)=Null,
  117635.     @Sifra_Gr char(3) = Null,
  117636.     @Sifra_Podg char(6) = Null,
  117637.     @Sifra_Drg smallint = Null,
  117638.     @Lokacija Varchar(10) = Null,
  117639.     @KFLokacija Char(1) = 'N',
  117640.     @SoZbBrend Char(1) = 'N',
  117641.     @Dobav Varchar(200) = Null,
  117642.     @KFDobav char(1) = 'N',
  117643.     @BezKontr char(1)='N'
  117644. AS
  117645.     Declare @SSQL varchar(8000)
  117646.     Create Table #Popis
  117647.     (
  117648.     IDPopis        int,
  117649.     Sifra_Art    varchar(20),
  117650.     KontrSer    varchar(25),
  117651.     Sifra_Boja    smallint,
  117652.     Sifra_Velic smallint,
  117653.     Popis        decimal(18,6),
  117654.     KnigSost    decimal(18,6),
  117655.     Vrednost    decimal(18,6),
  117656.     VrednostKnig    decimal(18,6),
  117657.     Cena        decimal(18,6),
  117658.     DanCena    char(1),
  117659.     Posn        decimal(9,2),
  117660.     Sifra_Tar    char(3)
  117661.     )
  117662.  
  117663.     If @Grupa_OrgEd Is Not Null
  117664.     Begin
  117665.         Create Table #Ceni 
  117666.         (
  117667.          Sifra_Art    varchar(20),
  117668.          Cena        decimal(18,6),
  117669.          Posn        decimal(9,2),
  117670.          DanCena    char(1)
  117671.         )
  117672.         Create Table #OE
  117673.         ( Sifra_Oe    smallint    )
  117674.         Set @SSQL=' Select Distinct Sifra_Oe From Popis Where Sifra_Oe In ( ' + @Grupa_OrgEd + ' )   
  117675.                 AND Datum >= ''' + Cast(@Datum as varchar(30)) + ''' ' + ' AND Datum <= '''+ Cast(@Datum_Do as varchar(30)) + '''  '
  117676.         Insert Into #OE Exec(@SSQL)
  117677.         Declare @SifArt varchar(20)
  117678.         Declare @Cena decimal(18,6)
  117679.         Declare @SifOe Smallint
  117680.         Declare @Posn    decimal(9,2)
  117681.         Declare @DanCena char(1)
  117682.         If @KojaCena = 'K'
  117683.         Begin
  117684.             Declare Ceni Cursor Fast_Forward For 
  117685.                 Select Distinct R.Sifra_Art, R.Cena, R.Posn, R.DanCena, P.Sifra_Oe 
  117686.                 From RPopis R Inner Join Popis P On P.IDPopis=R.IDPopis
  117687.                 Where R.IDPopis IN (SELECT IDPopis FROM Popis WHERE Sifra_OE In (Select Sifra_Oe From #OE)  AND Datum >=@Datum  AND Datum <=@Datum_Do)
  117688.                 Order by P.Sifra_Oe, R.Sifra_Art
  117689.             Open Ceni
  117690.             Fetch Next From Ceni Into @SifArt, @Cena, @Posn, @DanCena, @SifOe
  117691.             While @@Fetch_Status=0
  117692.             Begin
  117693.                 If @Cena <> 0 And @Cena Is Not Null
  117694.                     If Not Exists(Select Sifra_Art From #Ceni Where Sifra_Art = @SifArt)
  117695.                         Insert Into #Ceni(Sifra_Art, Cena, Posn, DanCena) Values(@SifArt, @Cena, @Posn, @DanCena)
  117696.                 Fetch Next From Ceni Into @SifArt, @Cena, @Posn, @DanCena, @SifOe
  117697.             End
  117698.             Close Ceni 
  117699.             Deallocate Ceni
  117700.         End
  117701.         If @KojaCena = 'N'
  117702.         Begin
  117703.             Declare Ceni Cursor Fast_Forward For 
  117704.                 Select Distinct R.Sifra_Art, S.NabCena, S.Posn, 'N', S.Sifra_Oe 
  117705.                 From RPopis R Inner Join Popis P On P.IDPopis=R.IDPopis
  117706.                 Inner Join Soart S On S.Sifra_Art=R.Sifra_Art And S.Sifra_Oe=P.Sifra_Oe
  117707.                 Where R.IDPopis IN (SELECT IDPopis FROM Popis WHERE Sifra_OE In (Select Sifra_Oe From #OE)  AND Datum >=@Datum  AND Datum <=@Datum_Do)
  117708.                 Order by S.Sifra_Oe, R.Sifra_Art
  117709.             Open Ceni
  117710.             Fetch Next From Ceni Into @SifArt, @Cena, @Posn, @DanCena, @SifOe
  117711.             While @@Fetch_Status=0
  117712.             Begin
  117713.                 If @Cena <> 0 And @Cena Is Not Null
  117714.                     If Not Exists(Select Sifra_Art From #Ceni Where Sifra_Art = @SifArt)
  117715.                         Insert Into #Ceni(Sifra_Art, Cena, Posn, DanCena) Values(@SifArt, @Cena, @Posn, @DanCena)
  117716.                 Fetch Next From Ceni Into @SifArt, @Cena, @Posn, @DanCena, @SifOe
  117717.             End
  117718.             Close Ceni 
  117719.             Deallocate Ceni
  117720.         End
  117721.         If @KojaCena = 'P'
  117722.         Begin
  117723.             Declare Ceni Cursor Fast_Forward For 
  117724.                 Select Distinct R.Sifra_Art, S.NNabCena, S.Posn, 'N', S.Sifra_Oe 
  117725.                 From RPopis R Inner Join Popis P On P.IDPopis=R.IDPopis
  117726.                 Inner Join Soart S On S.Sifra_Art=R.Sifra_Art And S.Sifra_Oe=P.Sifra_Oe
  117727.                 Where R.IDPopis IN (SELECT IDPopis FROM Popis WHERE Sifra_OE In (Select Sifra_Oe From #OE)  AND Datum >=@Datum  AND Datum <=@Datum_Do)
  117728.                 Order by S.Sifra_Oe, R.Sifra_Art
  117729.             Open Ceni
  117730.             Fetch Next From Ceni Into @SifArt, @Cena, @Posn, @DanCena, @SifOe
  117731.             While @@Fetch_Status=0
  117732.             Begin
  117733.                 If @Cena <> 0 And @Cena Is Not Null
  117734.                     If Not Exists(Select Sifra_Art From #Ceni Where Sifra_Art = @SifArt)
  117735.                         Insert Into #Ceni(Sifra_Art, Cena, Posn, DanCena) Values(@SifArt, @Cena, @Posn, @DanCena)
  117736.                 Fetch Next From Ceni Into @SifArt, @Cena, @Posn, @DanCena, @SifOe
  117737.             End
  117738.             Close Ceni 
  117739.             Deallocate Ceni
  117740.         End
  117741.         Set @SSQL =     'SELECT 0 as IDPopis, R.Sifra_art, R.KontrSer, R.Sifra_Boja, R.Sifra_Velic, sum(R.Popis) Popis, sum(R.KnigSost) KnigSost, '
  117742. --        If @KojaCena = 'K'
  117743.             Set @SSQL=@SSQL + ' sum(R.Popis*dbo.fn_VratiCena(C.Cena, C.Posn, C.DanCena,''' + @CenaSoDanok + ''' )) Vrednost,
  117744.                         sum(R.KnigSost*dbo.fn_VratiCena(C.Cena, C.Posn, C.DanCena,''' + @CenaSoDanok + ''' )) VrednostKnig, '
  117745. --        If @KojaCena = 'N'
  117746. --            Set @SSQL=@SSQL + ' sum(R.Popis*dbo.fn_VratiCena(S.NabCena, S.Posn, ' +'''N''' + ','''+ @CenaSoDanok + ''' )) Vrednost,
  117747. --                        sum(R.KnigSost*dbo.fn_VratiCena(S.NabCena, S.Posn,  ' +'''N'''+ ',''' + @CenaSoDanok + ''' )) VrednostKnig, '
  117748. --        If @KojaCena = 'P'
  117749. --            Set @SSQL=@SSQL + ' sum(R.Popis*dbo.fn_VratiCena(S.NNabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''' )) Vrednost,
  117750. --                        sum(R.KnigSost*dbo.fn_VratiCena(S.NNabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''' )) VrednostKnig, '
  117751.         Set @SSQL = @SSQL +' 0 as Cena, 0 as DanCena, R.Posn, R.Sifra_Tar
  117752.                  FROM RPopis R
  117753.                  LEFT OUTER JOIN #Ceni C On C.Sifra_Art=R.Sifra_Art ' 
  117754.         If @KojaCena = 'N' Or @KojaCena = 'P'
  117755.             Set @SSQL = @SSQL + ' Inner Join Popis P On P.IDPopis=R.IDPopis
  117756.                         Left Outer Join Soart S On S.Sifra_art=R.Sifra_art and S.Sifra_Oe=P.Sifra_Oe '
  117757.         -- If @Sifra_Podg Is Not Null Or @Sifra_Drg Is Not Null Or @Sifra_Gr Is Not Null Or @Lokacija Is Not Null
  117758.             Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_art = R.Sifra_art
  117759.                           Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg '
  117760.         Set @SSQL=@SSQL + '    WHERE R.IDPopis IN (SELECT IDPopis FROM Popis 
  117761.                     WHERE Sifra_OE In (' + @Grupa_OrgEd + ')  AND Datum >= ''' + Cast(@Datum as varchar(30)) + ''' ' + ' AND Datum <= '''+ Cast(@Datum_Do as varchar(30)) + ''' ) '
  117762.         If @Sifra_Art_Od Is Not Null 
  117763.             Set @SSQL = @SSQL + ' And R.Sifra_art >= ''' + @Sifra_art_Od + ''' '
  117764.         If @Sifra_Art_Do Is Not Null 
  117765.             Set @SSQL = @SSQL + ' And R.Sifra_art <= ''' + @Sifra_art_Do + ''' '
  117766.         If @Sifra_Podg Is Not Null 
  117767.             Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  117768.         If @Sifra_Gr Is Not Null 
  117769.             Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  117770.         If @Sifra_Drg Is Not Null 
  117771.             Set @SSQL = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(6)) + ' '
  117772.         If @Lokacija Is Not Null
  117773.         Begin
  117774.             If @KFLokacija = 'D' 
  117775.                 Set @SSQL = @SSQL + ' And (K.Lokacija Is Null Or K.Lokacija<>'''+lTrim(rtrim(@Lokacija))+''') '
  117776.             Else
  117777.                   Set @SSQL = @SSQL + ' AND (K.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  117778.         End
  117779.         If @Dobav Is Not Null
  117780.         Begin
  117781.             If @KFDobav = 'D' 
  117782.                 Set @SSQL = @SSQL + ' And (K.Kto Not In ( ' + @Dobav + ') Or K.Kto Is Null) '
  117783.             Else
  117784.                   Set @SSQL = @SSQL + ' And (K.Kto In ( ' + @Dobav + ')) '
  117785.         End
  117786.         --------  Komentirano 04.01.2006   gk
  117787. /*        if @KusokVisok = 'K' 
  117788.             Set @SSQL = @SSQL + ' AND R.Popis < R.KnigSost '
  117789.         if @KusokVisok = 'V' 
  117790.             Set @SSQL = @SSQL + ' AND R.Popis > R.KnigSost '
  117791.         if @KusokVisok = 'T' 
  117792.             Set @SSQL = @SSQL + ' AND R.Popis = R.KnigSost '
  117793.         if @KusokVisok = 'KV' 
  117794.             Set @SSQL = @SSQL + ' AND R.Popis <> R.KnigSost '
  117795.         if @KusokVisok = 'KT' 
  117796.             Set @SSQL = @SSQL + ' AND (R.Popis < R.KnigSost OR R.Popis = R.KnigSost) '
  117797.         if @KusokVisok = 'VT' 
  117798.             Set @SSQL = @SSQL + ' AND (R.Popis > R.KnigSost OR R.Popis = R.KnigSost) ' 
  117799. */        Set @SSQL=@SSQL + ' Group By R.Sifra_art, R.KontrSer, R.Sifra_Boja, R.Sifra_Velic, R.Posn, R.Sifra_Tar '
  117800.         if @KusokVisok = 'K' 
  117801.             Set @SSQL = @SSQL + ' Having Sum(R.Popis) < Sum(R.KnigSost) '
  117802.         if @KusokVisok = 'V' 
  117803.             Set @SSQL = @SSQL + ' Having Sum(R.Popis) > Sum(R.KnigSost) '
  117804.         if @KusokVisok = 'T' 
  117805.             Set @SSQL = @SSQL + ' Having Sum(R.Popis) = Sum(R.KnigSost) '
  117806.         if @KusokVisok = 'KV' 
  117807.             Set @SSQL = @SSQL + ' Having Sum(R.Popis) <> Sum(R.KnigSost) '
  117808.         if @KusokVisok = 'KT' 
  117809.             Set @SSQL = @SSQL + ' Having Sum(R.Popis) <= Sum(R.KnigSost) '
  117810.         if @KusokVisok = 'VT' 
  117811.             Set @SSQL = @SSQL + ' Having Sum(R.Popis) >= Sum(R.KnigSost) '
  117812.         -- Print @SSQL
  117813.         Insert Into #Popis Exec (@SSQL)
  117814.         Update #Popis 
  117815.             Set Cena=dbo.fn_VratiCenaPopis(Popis, Vrednost, KnigSost, VrednostKnig), DanCena=@CenaSoDanok
  117816.         Set @SSQL='Select P.*, A.Imeart, A.EdMera, A.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, '
  117817.         If @SoZbBrend  = 'D'
  117818.             Set @SSQL = @SSQL + ' B.Sifra_Drg1, BB.Ime_Drg1, A.ALt_Sifra '
  117819.         Else 
  117820.             Set @SSQL = @SSQL + ' Null as Sifra_Drg1, Null as Ime_Drg1, A.Alt_Sifra '
  117821.         Set @SSQL = @SSQL + ' From #Popis P                Inner Join Katart A On A.Sifra_art = P.Sifra_art
  117822.                 Inner Join Podgrupi PG On PG.Sifra_Podg = A.Sifra_Podg 
  117823.                 Inner Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr '        
  117824.         If @SoZbBrend  = 'D'
  117825.             Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg = A.Sifra_Drg 
  117826.                           Left Outer Join DrgPodel1 BB On BB.Sifra_Drg1 = B.Sifra_Drg1 '
  117827.     End    
  117828.     Else
  117829.     Begin
  117830.         --Set @SSQL =     ' SELECT R.*, A.ImeArt, (R.Popis*R.Cena) as Vrednost, (R.KnigSost*R.Cena) as VrednostKnig FROM RPopis R 
  117831.         Set @SSQL =     ' SELECT R.IdPopis, R.Sifra_art, R.KontrSer, R.Sifra_Boja, R.Sifra_Velic, Round((R.Popis), 4) Popis, Round((R.KnigSost), 4) KnigSost, A.EdMera, A.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, '
  117832.         If @KojaCena = 'K'
  117833.             If @cenaSoDanok IS NULL
  117834.                 Set @SSQL = @SSQL + ' Round((R.Cena), 4) Cena, R.DanCena, R.Posn, R.Sifra_Tar,  A.ImeArt, 
  117835.                             Round((R.Popis * R.Cena),4) as Vrednost, Round((R.KnigSost * R.Cena), 4) as VrednostKnig, '
  117836.             Else
  117837.             Set @SSQL = @SSQL + ' dbo.fn_VratiCena(R.Cena, R.Posn, R.DanCena, '''+ @CenaSoDanok + ''') Cena, R.DanCena, R.Posn, R.Sifra_Tar,
  117838.                          A.ImeArt, Round((R.Popis*dbo.fn_VratiCena(R.Cena, R.Posn, R.DanCena, '''+ @CenaSoDanok + ''') ), 4) as Vrednost,
  117839.                          Round((R.KnigSost*dbo.fn_VratiCena(R.Cena, R.Posn, R.DanCena, '''+ @CenaSoDanok + ''')), 4) as VrednostKnig, '
  117840.         If @KojaCena = 'N'
  117841.             Set @SSQL = @SSQL + ' dbo.fn_VratiCena(S.NabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''') Cena, R.DanCena, R.Posn, R.Sifra_Tar,
  117842.                          A.ImeArt, Round((R.Popis*dbo.fn_VratiCena(S.NabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''') ), 4) as Vrednost,
  117843.                          Round((R.KnigSost*dbo.fn_VratiCena(S.NabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''')), 4) as VrednostKnig, '    
  117844.         If @KojaCena = 'P'
  117845.             Set @SSQL = @SSQL + ' dbo.fn_VratiCena(S.NNabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''') Cena, R.DanCena, R.Posn, R.Sifra_Tar,
  117846.                          A.ImeArt, Round((R.Popis*dbo.fn_VratiCena(S.NNabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''') ), 4) as Vrednost,
  117847.                          Round((R.KnigSost*dbo.fn_VratiCena(S.NNabCena, S.Posn, ' + '''N''' + ',''' + @CenaSoDanok + ''')), 4) as VrednostKnig, '    
  117848.         If @SoZbBrend  = 'D'
  117849.             Set @SSQL = @SSQL + ' B.Sifra_Drg1, BB.Ime_Drg1, A.Alt_SIfra '
  117850.         Else 
  117851.             Set @SSQL = @SSQL + ' Null as Sifra_Drg1, Null as Ime_Drg1, A.Alt_Sifra '
  117852.         Set @SSQL=@SSQL + '     FROM RPopis R 
  117853.                     INNER JOIN KatArt A ON R.Sifra_Art = A.Sifra_Art 
  117854.                     Left Outer Join Podgrupi PG On PG.Sifra_Podg=A.Sifra_Podg 
  117855.                     Left Outer Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr '        
  117856.         If @KojaCena = 'N' Or @KojaCena = 'P'
  117857.             Set @SSQL = @SSQL + ' Inner Join Popis P On P.IDPopis=R.IDPopis
  117858.                         Left Outer Join Soart S On S.Sifra_art=R.Sifra_art and S.Sifra_Oe=P.Sifra_Oe '
  117859. --        If @Sifra_Gr Is Not Null
  117860. --        Set @SSQL = @SSQL + 'Left Outer Join Podgrupi PG On PG.Sifra_Podg=A.Sifra_Podg '
  117861.         If @SoZbBrend  = 'D'
  117862.             Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg = A.Sifra_Drg 
  117863.                           Left Outer Join DrgPodel1 BB On BB.Sifra_Drg1 = B.Sifra_Drg1 '
  117864.         Set @SSQL = @SSQL + 'WHERE R.IDPopis IN (SELECT IDPopis FROM Popis 
  117865.                                 WHERE Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) +
  117866.                     ' AND Datum = ''' + Cast(@Datum as varchar(30)) + ''' )'
  117867.         If @Sifra_Art_Od Is Not Null 
  117868.             Set @SSQL = @SSQL + ' And R.Sifra_art >= ''' + @Sifra_art_Od + ''' '
  117869.         If @Sifra_Art_Do Is Not Null 
  117870.             Set @SSQL = @SSQL + ' And R.Sifra_art <= ''' + @Sifra_art_Do + ''' '
  117871.         If @Sifra_Podg Is Not Null 
  117872.             Set @SSQL = @SSQL + ' And A.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  117873.         If @Sifra_Gr Is Not Null 
  117874.             Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  117875.         If @Sifra_Drg Is Not Null 
  117876.             Set @SSQL = @SSQL + ' And A.Sifra_Drg=' + Cast(@Sifra_Drg As Varchar(6)) + ' '
  117877.         If @Lokacija Is Not Null
  117878.         Begin
  117879.             If @KFLokacija = 'D' 
  117880.                 Set @SSQL = @SSQL + ' And (A.Lokacija Is Null Or A.Lokacija<>'''+lTrim(rtrim(@Lokacija))+''') '
  117881.             Else
  117882.                   Set @SSQL = @SSQL + ' AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  117883.         End
  117884.         If @Dobav Is Not Null
  117885.         Begin
  117886.             If @KFDobav = 'D' 
  117887.                 Set @SSQL = @SSQL + ' And (A.Kto Not In ( ' + @Dobav + ') Or A.Kto Is Null) '
  117888.             Else
  117889.                   Set @SSQL = @SSQL + ' And (A.Kto In ( ' + @Dobav + ')) '
  117890.         End
  117891.  
  117892.         if @KusokVisok = 'K' 
  117893.             Set @SSQL = @SSQL + ' AND R.Popis < R.KnigSost '
  117894.         if @KusokVisok = 'V' 
  117895.             Set @SSQL = @SSQL + ' AND R.Popis > R.KnigSost '
  117896.         if @KusokVisok = 'T' 
  117897.             Set @SSQL = @SSQL + ' AND R.Popis = R.KnigSost '
  117898.         if @KusokVisok = 'KV' 
  117899.             Set @SSQL = @SSQL + ' AND R.Popis <> R.KnigSost '
  117900.         if @KusokVisok = 'KT' 
  117901.             Set @SSQL = @SSQL + ' AND (R.Popis < R.KnigSost OR R.Popis = R.KnigSost) '
  117902.         if @KusokVisok = 'VT' 
  117903.             Set @SSQL = @SSQL + ' AND (R.Popis > R.KnigSost OR R.Popis = R.KnigSost) '
  117904.     End
  117905. --      print @SSQL
  117906.  
  117907. IF @BezKontr='D'
  117908. BEGIN
  117909.     CREATE TABLE #TmpPop
  117910.     (IdPopis    int,     
  117911.     Sifra_art   varchar(20),    
  117912.     KontrSer  varchar(40),
  117913.     Sifra_Boja    smallint,
  117914.     Sifra_Velic    smallint,               
  117915.     Popis decimal(18,6),               
  117916.     KnigSost decimal(18,6),      
  117917.     EdMera varchar(6),
  117918.     Sifra_Podg char(6),
  117919.     Ime_Podg varchar(40),                                    
  117920.     Sifra_Gr char(3),
  117921.     Ime_Gr varchar(40),           
  117922.     Cena decimal(18,6),              
  117923.     DanCena char(1),
  117924.     Posn   decimal(6,2),     
  117925.     Sifra_Tar char(3),
  117926.     ImeArt  varchar(40),                                 
  117927.     Vrednost decimal(18,6),                                  
  117928.     VrednostKnig decimal(18,6),  
  117929.     Sifra_Drg1  smallint,
  117930.     Ime_Drg1 varchar(40),
  117931.     Alt_Sifra varchar(30))
  117932.  
  117933.     INSERT INTO #TmpPop EXEC (@SSQL)
  117934.     
  117935.     set @SSQL = '    
  117936.         SELECT IdPopis, Sifra_art, '''' KontrSer, '''' Sifra_Boja, '''' Sifra_Velic, EdMera, Sifra_Podg, Ime_Podg, Sifra_Gr, Ime_Gr, Cena, DanCena, Posn, 
  117937.         Sifra_Tar, ImeArt, Sifra_Drg1, Ime_Drg1, SUM(Popis) Popis, SUM(KnigSost) KnigSost, SUM(Vrednost) Vrednost, SUM(VrednostKnig) VrednostKnig,
  117938.         Alt_Sifra
  117939.     FROM #TmpPop R
  117940.     GROUP BY IdPopis, Sifra_art, EdMera, Sifra_Podg, Ime_Podg, Sifra_Gr, Ime_Gr, Cena, DanCena, Posn, Sifra_Tar, ImeArt, Sifra_Drg1, Ime_Drg1, ALt_Sifra '
  117941.  
  117942.     if @KusokVisok = 'K' 
  117943.         Set @SSQL = @SSQL + ' Having Sum(R.Popis) < Sum(R.KnigSost) '
  117944.     if @KusokVisok = 'V' 
  117945.         Set @SSQL = @SSQL + ' Having Sum(R.Popis) > Sum(R.KnigSost) '
  117946.     if @KusokVisok = 'T' 
  117947.         Set @SSQL = @SSQL + ' Having Sum(R.Popis) = Sum(R.KnigSost) '
  117948.     if @KusokVisok = 'KV' 
  117949.         Set @SSQL = @SSQL + ' Having Sum(R.Popis) <> Sum(R.KnigSost) '
  117950.     if @KusokVisok = 'KT' 
  117951.         Set @SSQL = @SSQL + ' Having Sum(R.Popis) <= Sum(R.KnigSost) '
  117952.     if @KusokVisok = 'VT' 
  117953.         Set @SSQL = @SSQL + ' Having Sum(R.Popis) >= Sum(R.KnigSost) '
  117954.  
  117955.     set @SSQL = @SSQL +  ' ORDER BY IDPopis, Sifra_Art '
  117956.     
  117957.     Exec (@SSQL)
  117958.     
  117959. END
  117960. Else
  117961.     Exec (@SSQL)
  117962.  
  117963.  
  117964.  
  117965.  
  117966.  
  117967.  
  117968.  
  117969.  
  117970.  
  117971.  
  117972.  
  117973.  
  117974. Go
  117975. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_rpopis_sum]'))
  117976. drop procedure [dbo].[sp_pregled_rpopis_sum]
  117977.  
  117978. Go
  117979. CREATE        PROCEDURE sp_Pregled_RPopis_Sum
  117980.     @Sifra_OE smallint,
  117981.     @Datum smalldatetime,
  117982.     @KusokVisok varchar(2)    ,    --K-Kusok,V-Visok,T-Tocno ili kombinaciite KV, KT, VT
  117983.     @Lokacija Varchar(10) = Null,
  117984.     @KFLokacija Char(1) = 'N'
  117985. AS
  117986.     Declare @SSQL varchar(8000)
  117987.     Set @SSQL =     'SELECT R.IDPopis,
  117988.                 Sum(R.Popis) PopisKol,
  117989.                 Sum(R.KnigSost) KnigSostKol,
  117990.                 Sum(R.Popis*R.Cena) PopisVr,
  117991.                 Sum(R.KnigSost*R.Cena) KnigSostVr,
  117992.                 R.Dancena, R.POsn                
  117993.             FROM RPopis R 
  117994.             INNER JOIN KatArt A ON R.Sifra_Art = A.Sifra_Art
  117995.             WHERE R.IDPopis IN (SELECT IDPopis FROM Popis 
  117996.             WHERE Sifra_OE = ' + Cast(@Sifra_OE as varchar(6)) +
  117997.             ' AND Datum = ''' + Cast(@Datum as varchar(30)) + ''' )'
  117998.     If @Lokacija Is Not Null
  117999.     Begin
  118000.         If @KFLokacija = 'D' 
  118001.             Set @SSQL = @SSQL + ' And (A.Lokacija Is Null Or A.Lokacija<>'''+lTrim(rtrim(@Lokacija))+''') '
  118002.         Else
  118003.               Set @SSQL = @SSQL + ' And (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  118004.     End
  118005.     if @KusokVisok = 'K' 
  118006.         Set @SSQL = @SSQL + ' AND R.Popis < R.KnigSost '
  118007.     if @KusokVisok = 'V' 
  118008.         Set @SSQL = @SSQL + ' AND R.Popis > R.KnigSost '
  118009.     if @KusokVisok = 'T' 
  118010.         Set @SSQL = @SSQL + ' AND R.Popis = R.KnigSost '
  118011.     if @KusokVisok = 'KV' 
  118012.         Set @SSQL = @SSQL + ' AND R.Popis <> R.KnigSost '
  118013.     if @KusokVisok = 'KT' 
  118014.         Set @SSQL = @SSQL + ' AND (R.Popis < R.KnigSost OR R.Popis = R.KnigSost) '
  118015.     if @KusokVisok = 'VT' 
  118016.         Set @SSQL = @SSQL + ' AND (R.Popis > R.KnigSost OR R.Popis = R.KnigSost) '
  118017.     Set @SSQL = @SSQL + 'Group By R.IDPopis, R.Dancena, R.POsn '
  118018.     Exec (@SSQL)
  118019.  
  118020.  
  118021. Go
  118022. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_xfbaranje]'))
  118023. drop procedure [dbo].[sp_pregled_xfbaranje]
  118024.  
  118025. Go
  118026. CREATE PROCEDURE sp_Pregled_XFBaranje
  118027.     @Broj_Baranje_Od    int = Null,
  118028.     @Broj_Baranje_Do    int = Null,
  118029.     @Broj_Predmet        int = Null,
  118030.     @Broj_Baranje_Preth    int = Null,
  118031.     @Broj_Baranje_Orig    int = Null,
  118032.     @Sifra_VidBaranje    smallint = Null,
  118033.     @Datum_Baranje_Od    smalldatetime = Null,
  118034.     @Datum_Baranje_Do    smalldatetime = Null,
  118035.     @Datum_Ocek_Real_Od    smalldatetime = Null,
  118036.     @Datum_Ocek_Real_Do    smalldatetime = Null,
  118037.     @Sifra_StatusBaranje    smallint = Null,
  118038.     @OpisBaranje        nvarchar(50) = Null,
  118039.     @Datum_Zavrseno_Od    smalldatetime = Null,
  118040.     @Datum_Zavrseno_Do    smalldatetime = Null,
  118041.     @Zatvoreno        char(10) = Null,
  118042.     @Sifra_Kup        char(6) = Null,
  118043.     @ImeKontakt        nvarchar(50) = Null,
  118044.     @Sifra_TipPredmet    smallint = Null,
  118045.     @Sifra_Oblast        smallint = Null,
  118046.     @Sifra_Izvrs        int = Null,
  118047.     @Sifra_Izvrs_Od    int = Null
  118048. AS
  118049.     Declare @SSQL as varchar(8000)
  118050.     Set @SSQL = ' Select B.Broj_Baranje, B.Broj_Predmet, B.Broj_Baranje_Preth, B.Broj_Baranje_Orig, B.Sifra_VidBaranje, VB.ImeVidBaranje, B.Datum_Baranje, B.Datum_Ocek_Real, 
  118051.             B.Datum_Gledaj, B.Sifra_StatusBaranje, SB.ImeStatusBaranje, B.OpisBaranje, B.Datum_Zavrseno, B.Zatvoreno, B.Sifra_Kup, Kup.ImeKup, B.ImeKontakt, 
  118052.             B.Sifra_TipPredmet, TP.ImeTipPredmet, B.Sifra_Oblast, B.Sifra_Izvrs, I.ImeIzvrs, B.Sifra_Oe, B.Sifra_Nar, B.Broj_Nar, B.Sifra_Izvrs_Od, IO.ImeIzvrs ImeIzvrsOd
  118053.         From XFBaranje B
  118054.         Left Outer Join XFVidBaranje VB On VB.Sifra_VidBaranje=B.Sifra_VidBaranje
  118055.         Left Outer Join XFStatusBaranje SB On SB.Sifra_StatusBaranje=B.Sifra_StatusBaranje
  118056.         Left Outer Join Komint Kup On Kup.Sifra_Kup=B.Sifra_Kup
  118057.         Left Outer Join XFTipPredmet TP On TP.Sifra_TipPredmet=B.Sifra_TipPredmet
  118058.         Left Outer Join XFIzvrsitel I On I.Sifra_Izvrs=B.Sifra_Izvrs
  118059.         Left Outer Join XFIzvrsitel IO On IO.Sifra_Izvrs=B.Sifra_Izvrs_Od
  118060.         Where 1=1 '
  118061.     If @Broj_Baranje_Od Is Not Null
  118062.         Set @SSQL = @SSQL + ' And B.Broj_Baranje >= ' + Cast(@Broj_Baranje_Od as varchar(10)) + ' '
  118063.     If @Broj_Baranje_Do Is Not Null
  118064.         Set @SSQL = @SSQL + ' And B.Broj_Baranje <= ' + Cast(@Broj_Baranje_Do as varchar(10)) + ' '
  118065.     If @Broj_Predmet Is Not Null
  118066.         Set @SSQL = @SSQL + ' And B.Broj_Predmet = ' + Cast(@Broj_Predmet as varchar(10)) + ' '
  118067.     If @Broj_Baranje_Preth Is Not Null
  118068.         Set @SSQL = @SSQL + ' And B.Broj_Baranje_Preth = ' + Cast(@Broj_Baranje_Preth as varchar(10)) + ' '
  118069.     If @Broj_Baranje_Orig Is Not Null
  118070.         Set @SSQL = @SSQL + ' And B.Broj_Baranje_Orig = ' + Cast(@Broj_Baranje_Orig as varchar(10)) + ' '
  118071.     If @Sifra_VidBaranje Is Not Null
  118072.         Set @SSQL = @SSQL + ' And B.Sifra_VidBaranje = ' + Cast(@Sifra_VidBaranje as varchar(10)) + ' '
  118073.     If @Datum_Baranje_Od Is Not Null
  118074.         Set @SSQL = @SSQL + ' And B.Datum_Baranje >= ''' + Cast(@Datum_Baranje_Od as varchar(30)) + ''' '
  118075.     If @Datum_Baranje_Do Is Not Null
  118076.         Set @SSQL = @SSQL + ' And B.Datum_Baranje <= ''' + Cast(@Datum_Baranje_Do as varchar(30)) + ''' '
  118077.     If @Datum_Ocek_Real_Od Is Not Null
  118078.         Set @SSQL = @SSQL + ' And B.Datum_Ocek_Real >= ''' + Cast(@Datum_Ocek_Real_Od as varchar(30)) + ''' '
  118079.     If @Datum_Ocek_Real_Do Is Not Null
  118080.         Set @SSQL = @SSQL + ' And B.Datum_Ocek_Real <= ''' + Cast(@Datum_Ocek_Real_Do as varchar(30)) + ''' '
  118081.     If @Sifra_StatusBaranje Is Not Null
  118082.         Set @SSQL = @SSQL + ' And B.Sifra_StatusBaranje = ' + Cast(@Sifra_StatusBaranje as varchar(10)) + ' '
  118083.     If @OpisBaranje Is Not Null
  118084.         Set @SSQL = @SSQL + ' And B.OpisBaranje Like ''%' + @OpisBaranje + '%'' '
  118085.     If @Datum_Zavrseno_Od Is Not Null
  118086.         Set @SSQL = @SSQL + ' And B.Datum_Zavrseno >= ''' + Cast(@Datum_Zavrseno_Od as varchar(30)) + ''' '
  118087.     If @Datum_Zavrseno_Do Is Not Null
  118088.         Set @SSQL = @SSQL + ' And B.Datum_Zavrseno <= ''' + Cast(@Datum_Zavrseno_Do as varchar(30)) + ''' '
  118089.     If @Zatvoreno Is Not Null
  118090.         Set @SSQL = @SSQL + ' And B.Zatvoreno = ''' +  @Zatvoreno + ''' '
  118091.     If @Sifra_Kup Is Not Null
  118092.         Set @SSQL = @SSQL + ' And B.Sifra_Kup = ''' +  @Sifra_Kup + ''' '
  118093.     If @ImeKontakt Is Not Null
  118094.         Set @SSQL = @SSQL + ' And B.ImeKontakt Like ''%' + @ImeKontakt + '%'' '
  118095.     If @Sifra_TipPredmet Is Not Null
  118096.         Set @SSQL = @SSQL + ' And B.Sifra_TipPredmet = ' + Cast(@Sifra_TipPredmet as varchar(10)) + ' '
  118097.     If @Sifra_Oblast Is Not Null
  118098.         Set @SSQL = @SSQL + ' And B.Sifra_Oblast = ' + Cast(@Sifra_Oblast as varchar(10)) + ' '
  118099.     If @Sifra_Izvrs Is Not Null
  118100.         Set @SSQL = @SSQL + ' And B.Sifra_Izvrs = ' + Cast(@Sifra_Izvrs as varchar(10)) + ' '
  118101.     If @Sifra_Izvrs_Od Is Not Null
  118102.         Set @SSQL = @SSQL + ' And B.Sifra_Izvrs_Od = ' + Cast(@Sifra_Izvrs_Od as varchar(10)) + ' '
  118103. print @SSQL
  118104.     Exec(@SSQL)
  118105.  
  118106.  
  118107. Go
  118108. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregled_zbiren100]'))
  118109. drop procedure [dbo].[sp_pregled_zbiren100]
  118110.  
  118111. Go
  118112.  
  118113.  
  118114. CREATE      PROCEDURE sp_Pregled_Zbiren100
  118115.     @Datum_Od    smalldatetime,
  118116.     @Datum_Do    smalldatetime
  118117. AS
  118118.     select Sifra_Oe, Datum_Dok, sum (Toc200) as Iznos
  118119.         From Dokr
  118120.         Where Sifra_Dok in (100,101)
  118121.               and Datum_Dok >= @Datum_Od and Datum_Dok <= @Datum_Do
  118122.     Group By Sifra_Oe, Datum_Dok
  118123.     Order By Datum_Dok, Sifra_Oe
  118124.  
  118125.  
  118126.  
  118127. Go
  118128. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledavtkont]'))
  118129. drop procedure [dbo].[sp_pregledavtkont]
  118130.  
  118131. Go
  118132. CREATE PROCEDURE sp_PregledAvtKont
  118133. AS
  118134.     Select * From Avtkont 
  118135.     Order By Sif_GrOrg, Sif_GrDok, SIf_GrOrg_Prima
  118136.  
  118137.  
  118138. Go
  118139. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledavtkont_tipdok]'))
  118140. drop procedure [dbo].[sp_pregledavtkont_tipdok]
  118141.  
  118142. Go
  118143. CREATE PROCEDURE sp_PregledAvtKont_TipDok
  118144. AS
  118145.     Select Distinct A.Sif_GrDok, TD.Sifra_Dok, TD.ImeDok
  118146.     From Avtkont A
  118147.     Inner Join TipDok TD On TD.Sif_GrDok=A.Sif_GrDok
  118148.     Order By A.Sif_GrDok, TD.Sifra_Dok
  118149.  
  118150.  
  118151. Go
  118152. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledavtkontos]'))
  118153. drop procedure [dbo].[sp_pregledavtkontos]
  118154.  
  118155. Go
  118156.  
  118157. CREATE       PROCEDURE sp_PregledAvtKontOS
  118158.     @Kod_Kniz smallint
  118159. AS
  118160.     Declare @SSQL as varchar(4000)
  118161.     Set @SSQL= 'SELECT AV.*, A.ImeAnal, AA.ImeAnal ImeAnal2
  118162.     FROM AvtKontOSn AV
  118163.     left outer join anal A on AV. Kto_Anal_OS = A.Kto_Anal
  118164.     left outer join anal AA on AV. Kto_Anal_Knz = AA.Kto_Anal'
  118165.     If @Kod_Kniz is not null 
  118166.     Set @SSQL= @SSQL+ '  Where AV.Kod_kniz='+ cast(@Kod_Kniz as varchar(5))+ '    '
  118167.     --Set @SSQL= @SSQL+'  Group By AV.Kod_kniz'
  118168. print @SSQL
  118169. exec (@SSQL)
  118170.  
  118171.  
  118172.  
  118173. Go
  118174. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledcenikartkor]'))
  118175. drop procedure [dbo].[sp_pregledcenikartkor]
  118176.  
  118177. Go
  118178. CREATE procedure sp_pregledCeniKartKor
  118179.     @Sifra_CeniKartKor smallint = null,
  118180.     @Sifra_Art_Od varchar(20)= null,
  118181.     @Sifra_Art_Do varchar(20)= null
  118182. As
  118183.     Declare @SSQL varchar(5000)
  118184.     Set @SSQL=' Select C.*, A.ImeArt
  118185.                 From CenKartKor C
  118186.                 Inner JOin KatArt A on C.Sifra_Art=A.Sifra_Art '
  118187.     If @Sifra_CeniKArtKor is not null
  118188.         Set @SSQL= @SSQL+ ' And C.Sifra_CeniKartKor= ' + cast(@Sifra_CeniKArtKor as varchar(15)) + ''
  118189.     If @Sifra_Art_Od is not null
  118190.         Set @SSQL= @SSQL+ ' And C.Sifra_Art>= ' + @Sifra_Art_Od + ''
  118191.     If @Sifra_Art_Do is not null
  118192.         Set @SSQL= @SSQL+ ' And C.Sifra_Art<= ' + @Sifra_Art_Do + ''
  118193. exec(@SSQL)
  118194.  
  118195.  
  118196. Go
  118197. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledcenkartkor]'))
  118198. drop procedure [dbo].[sp_pregledcenkartkor]
  118199.  
  118200. Go
  118201. CREATE PROCEDURE sp_PregledCenKartKor
  118202. AS
  118203.     Select C.Sifra_CeniKartKor, T.ImeKartKor, C.Sifra_Art, K.ImeArt, C.Cena, C.Popust
  118204.     From CenKartKor C
  118205.     Inner Join Katart K On K.Sifra_Art = C.Sifra_Art
  118206.     Inner Join TipKartKor T On T.Sifra_CeniKartKor = C.Sifra_CeniKartKor
  118207.  
  118208.  
  118209. Go
  118210. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledcenpopodgr]'))
  118211. drop procedure [dbo].[sp_pregledcenpopodgr]
  118212.  
  118213. Go
  118214.  
  118215. CREATE  PROCEDURE sp_PregledCenPoPodgr
  118216.     @Sifra_Podg Char(6) = Null
  118217. AS
  118218.     Declare @SSQL as varchar(8000)
  118219.     Set @SSQL = 'select C.*,GT.ImeTipKup, P.Ime_Podg from cenpopodgr C 
  118220.                      Inner Join Podgrupi P ON C.Sifra_podelba=P.Sifra_Podg
  118221.                      Inner Join GTipKup GT ON C.TipKup=GT.TipKup
  118222.              Where 1=1 and C.Tip_Podelba=''P'' '
  118223.     If @Sifra_Podg Is Not Null
  118224.                      Set @SSQL = @SSQL + ' And C.Sifra_Podelba=''' + @Sifra_Podg + ''' '
  118225.     Exec(@SSQL)
  118226.  
  118227.  
  118228.  
  118229. Go
  118230. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledcrrkodovi]'))
  118231. drop procedure [dbo].[sp_pregledcrrkodovi]
  118232.  
  118233. Go
  118234. CREATE procedure sp_PregledCrrKodovi
  118235.    -- @Sifra_Crr        tinyint= null,
  118236.     @Tip_Crr        char(20)= null,
  118237.     @Nivo_Crr        char(20)=null
  118238. AS
  118239. Declare @SSQL varchar(5000)
  118240. SET @SSQL='Select Sifra_Crr, ImeCrr, Tip_Crr, Nivo_Crr FROM CRRKodovi
  118241.            WHERE 1=1'
  118242. IF @Tip_Crr IS NOT NULL
  118243.     SET @SSQL = @SSQL + ' AND Tip_Crr='''+@Tip_Crr+ ''' '
  118244. IF @Nivo_Crr IS NOT NULL
  118245.     SET @SSQL= @SSQL + 'AND Nivo_Crr=' +@Nivo_Crr+' '
  118246. print @SSQL
  118247. EXEC (@SSQL)
  118248.     
  118249.  
  118250.  
  118251. Go
  118252. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledfazi]'))
  118253. drop procedure [dbo].[sp_pregledfazi]
  118254.  
  118255. Go
  118256.  
  118257. CREATE   procedure sp_PregledFazi
  118258. As
  118259.     Select F.*, O.ImeOrg
  118260.     From Fazi F
  118261.     Left Outer join OrgEd O on F.Sifra_Oe=O.Sifra_Oe
  118262.  
  118263.  
  118264.  
  118265.  
  118266.  
  118267.  
  118268. Go
  118269. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledgsostav]'))
  118270. drop procedure [dbo].[sp_pregledgsostav]
  118271.  
  118272. Go
  118273. CREATE            PROCEDURE sp_PregledGSostav
  118274.     @Sif_GrOrg  varchar(6) = Null,
  118275.     @Sifra_Art_Od  varchar(20) = Null, 
  118276.     @Sifra_Art_Do  varchar(20) = Null,
  118277.     @Sifra_Sur_Od  varchar(20) = Null, 
  118278.     @Sifra_Sur_Do  varchar(20) = Null,
  118279.     @Sifra_Oe_Ceni    smallint = Null
  118280. AS
  118281.     Declare @SSQL varchar(8000)
  118282.     Create Table #Ceni
  118283.     (
  118284.      Sifra_Sur    varchar(20),
  118285.      Cena        decimal(18,4)
  118286.     )
  118287.     If @Sifra_Oe_Ceni Is Not Null
  118288.     Begin
  118289.         Declare @GrOrg_Ceni varchar(10)
  118290.         Select  @GrOrg_Ceni = S.Sif_GrOrg From SGrOrg S
  118291.         Inner Join GrOrg G On G.Sif_GrOrg=S.Sif_GrOrg
  118292.         Where G.Edinstvena = 'D'
  118293.         And Sifra_Oe=@Sifra_Oe_Ceni
  118294.         If @GrOrg_Ceni Is Not Null
  118295.         Begin
  118296.             Insert Into #Ceni Select Distinct GS.Sifra_Sur, Null
  118297.             From GSostav GS
  118298.             Inner Join GotovSurovOrg GSO On GSO.Reden=GS.Reden And GSO.Sifra_Oe_Got=@Sifra_Oe_Ceni
  118299.             Left Outer Join Soart SO On SO.Sifra_Art=GS.Sifra_Sur And SO.Sifra_Oe=GSO.Sifra_Oe_Sur
  118300.             Where GS.Sif_GrOrg=@GrOrg_Ceni
  118301.             Update #Ceni Set #Ceni.Cena = dbo.fn_VratiCena(Soart.Cena, Soart.Posn, Soart.DanCena, 'D')
  118302.             From GSostav 
  118303.             Inner Join GotovSurovOrg On GotovSurovOrg.Reden=GSostav.Reden And GotovSurovOrg.Sifra_Oe_Got=@Sifra_Oe_Ceni
  118304.             Left Outer Join Soart On Soart.Sifra_Art=GSostav.Sifra_Sur And Soart.Sifra_Oe=GotovSurovOrg.Sifra_Oe_Sur
  118305.             Where GSostav.Sif_GrOrg=@GrOrg_Ceni And Soart.Sifra_Art=#Ceni.Sifra_Sur
  118306.         End
  118307.     End
  118308.     SET @SSQL = 'SELECT GS.*, GO.Ime_GrOrg, A.ImeArt, A.EdMera, S.ImeArt ImeSur, S.EdMera SEdM, C.Cena, '
  118309.     If @Sifra_Oe_Ceni Is Not Null
  118310.         Set @SSQL = @SSQL + ' CGO.Cena ProdCena '
  118311.     Else 
  118312.         Set @SSQL = @SSQL + ' Null ProdCena '
  118313.     Set @SSQL = @SSQL + ' FROM GSostav GS INNER JOIN GrOrg GO ON GS.Sif_GrOrg = GO.Sif_GrOrg
  118314.             INNER JOIN KatArt A ON GS.Sifra_Art=A.Sifra_Art
  118315.             INNER JOIN KatArt S ON GS.Sifra_Sur=S.Sifra_Art 
  118316.             Left Outer Join #Ceni C On C.Sifra_Sur=GS.Sifra_Sur '
  118317.     If @Sifra_Oe_Ceni Is Not Null
  118318.         Set @SSQL = @SSQL + ' Left Outer Join CenGrOrg CGO On CGO.Sifra_Art = GS.Sifra_Art And CGO.Sif_GrOrg = ''' + @GrOrg_Ceni + ''' '
  118319.     Set @SSQL = @SSQL + ' WHERE 1=1 '
  118320.     IF @Sif_GrOrg IS NOT NULL
  118321.         SET @SSQL = @SSQL + 'AND GS.Sif_GrOrg = ''' + @Sif_GrOrg + ''' '
  118322.     IF @Sifra_Art_Od IS NOT NULL
  118323.         SET @SSQL = @SSQL + 'AND GS.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  118324.     IF @Sifra_Art_Do IS NOT NULL
  118325.         SET @SSQL = @SSQL + 'AND GS.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  118326.     IF @Sifra_Sur_Od IS NOT NULL
  118327.         SET @SSQL = @SSQL + 'AND GS.Sifra_Sur >= ''' + @Sifra_Sur_Od + ''' '
  118328.     IF @Sifra_Sur_Do IS NOT NULL
  118329.         SET @SSQL = @SSQL + 'AND GS.Sifra_Sur <= ''' + @Sifra_Sur_Do + ''' '
  118330.     If @GrOrg_Ceni Is Not Null
  118331.         SET @SSQL = @SSQL + 'AND GS.Sif_GrOrg = ''' + @GrOrg_Ceni + ''' '
  118332.     Exec (@SSQL)
  118333.  
  118334.  
  118335. Go
  118336. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkathier]'))
  118337. drop procedure [dbo].[sp_pregledkathier]
  118338.  
  118339. Go
  118340. CREATE PROCEDURE sp_PregledKatHier
  118341.     @Sifra_KHier    varchar(20) = Null
  118342. AS
  118343.     Declare @SSQL as varchar(8000)
  118344.     Create Table #Hier
  118345.     (
  118346.      Sifra_KHier    nvarchar(20),
  118347.      Ime_KHier    nvarchar(50),
  118348.      Alt_ImeKHier    nvarchar(50),
  118349.      Sifra_KHier2    nvarchar(20),
  118350.      Ime_KHier2    nvarchar(50),
  118351.      Alt_ImeKHier2    nvarchar(50),
  118352.      Sifra_KHier3    nvarchar(20),
  118353.      Ime_KHier3    nvarchar(50),
  118354.      Alt_ImeKHier3    nvarchar(50),
  118355.      Sifra_KHier4    nvarchar(20),
  118356.      Ime_KHier4    nvarchar(50),
  118357.      Alt_ImeKHier4    nvarchar(50)
  118358.     )
  118359.     Set @SSQL = ' Select H1.Sifra_KHier, H1.Ime_KHier, H1.Alt_ImeKHier, 
  118360.         H2.Sifra_KHier Sifra_KHier2, H2.Ime_KHier Ime_KHier2, H2.Alt_ImeKHier Alt_ImeKHier2,
  118361.         H3.Sifra_KHier Sifra_KHier3, H3.Ime_KHier Ime_KHier3, H3.Alt_ImeKHier Alt_ImeKHier3,
  118362.         H4.Sifra_KHier Sifra_KHier4, H4.Ime_KHier Ime_KHier4, H4.Alt_ImeKHier Alt_ImeKHier4
  118363.     From KatHier H1
  118364.     Left Outer Join KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  118365.     Left Outer Join KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  118366.     Left Outer Join KatHier H4 On H4.Sifra_KHier=H3.Sifra_KHier_Hier '
  118367.     If @Sifra_KHier Is Not Null
  118368.         Set @SSQL = @SSQL + ' Where (H1.Sifra_KHier = ' + @Sifra_KHier + ' Or H2.Sifra_KHier = ' + @Sifra_KHier + ' 
  118369.                     Or H3.Sifra_KHier = ' + @Sifra_KHier + ' Or H4.Sifra_KHier = ' + @Sifra_KHier + ') '
  118370.     Insert Into #Hier Exec(@SSQL)
  118371.     Delete From #Hier Where Sifra_KHier2 Is Null 
  118372.         and Sifra_KHier In (Select Sifra_KHier2 From #Hier)
  118373.         and Sifra_KHier Is Not Null
  118374.     Delete From #Hier Where Sifra_KHier3 Is Null 
  118375.         and Sifra_KHier2 In (Select Sifra_KHier3 From #Hier)
  118376.         and Sifra_KHier2 Is Not Null
  118377.     Delete From #Hier Where Sifra_KHier4 Is Null 
  118378.         and Sifra_KHier3 In (Select Sifra_KHier4 From #Hier)
  118379.         and Sifra_KHier3 Is Not Null
  118380.     Select * From #Hier
  118381.  
  118382.  
  118383. Go
  118384. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkatprior_vidobj]'))
  118385. drop procedure [dbo].[sp_pregledkatprior_vidobj]
  118386.  
  118387. Go
  118388.  
  118389. CREATE  PROCEDURE sp_PregledKatPrior_VidObj 
  118390.     @Sifra_VPJ    varchar(20) = Null,
  118391.     @Sifra_Div    smallint = Null,
  118392.     @Sifra_Art_Od    varchar(20) = Null,
  118393.     @Sifra_Art_Do    varchar(20) = Null
  118394. AS
  118395.     Declare @SSQL as varchar(8000)
  118396.     Set @SSQL = ' Select P.Sifra_Art, K.ImeArt, P.Sifra_VPJ, V.Ime_VPJ
  118397.             From KatPrior_VidObj P
  118398.             Inner Join Katart K ON K.Sifra_Art=P.Sifra_Art
  118399.             Inner Join VidProdObj V On V.Sifra_VPJ=P.Sifra_VPJ
  118400.             Where 1=1 '
  118401.     If @Sifra_VPJ Is Not Null
  118402.         Set @SSQL = @SSQL + ' And P.Sifra_VPJ = ' + @Sifra_VPJ + ' '
  118403.     If @Sifra_Div Is Not Null
  118404.         Set @SSQL = @SSQL + ' And K.Sifra_Div = ' + cast(@Sifra_Div as varchar(6)) + ' '
  118405.     If @Sifra_Art_Od Is Not Null
  118406.         Set @SSQL = @SSQL + ' And P.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  118407.     If @Sifra_Art_Do Is Not Null
  118408.         Set @SSQL = @SSQL + ' And P.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  118409.     Set @SSQL = @SSQL + ' Order By P.Sifra_Art, P.Sifra_VPJ'
  118410.     Exec(@SSQL)
  118411.  
  118412.  
  118413.  
  118414. Go
  118415. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkbanki]'))
  118416. drop procedure [dbo].[sp_pregledkbanki]
  118417.  
  118418. Go
  118419. CREATE PROCEDURE sp_PregledKBanki
  118420.     @Sifra_Kup  varchar(6)
  118421. AS
  118422.     Select K.Sifra_Kup, K.ImeKup, KB.*, B.ImeBanka
  118423.     From KBanki KB
  118424.     Inner Join Komint K On KB.Sifra_Kup=K.Sifra_Kup
  118425.     Inner Join Banki B On B.Sifra_Ban=KB.Sifra_Ban
  118426.     Where KB.Sifra_Kup = @Sifra_Kup
  118427.     Order By KB.Sifra_Kup, KB.Sifra_Ban
  118428.  
  118429.  
  118430.  
  118431. Go
  118432. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledknigatrg]'))
  118433. drop procedure [dbo].[sp_pregledknigatrg]
  118434.  
  118435. Go
  118436. CREATE PROCEDURE sp_PregledKnigaTrg
  118437.     @Sifra_Oe    smallint,
  118438.     @Datum_Od    smalldatetime,
  118439.     @Datum_Do    smalldatetime,
  118440.     @InterenBr_Od    int,
  118441.     @InterenBr_Do    int
  118442. AS
  118443.     Declare @SSQL as varchar(8000)
  118444.     Set @SSQL = ' Select K.InterenBr, K.Datum_Dok, K.Datum_Knz, K.Broj, K.Opis, K.ProdVredn, K.VkalkDan, K.ObvrskaDan, K.VrednProd, K.Sifra_OE, K.NabVred
  118445.         From KnigaTrg K
  118446.         Where 1=1'
  118447.     If @Sifra_Oe Is Not Null
  118448.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  118449.     If @Datum_Od Is Not Null
  118450.         Set @SSQL = @SSQL + ' And K.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  118451.     If @Datum_Do Is Not Null
  118452.         Set @SSQL = @SSQL + ' And K.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  118453.     If @InterenBr_Od Is Not Null
  118454.         Set @SSQL = @SSQL + ' And K.InterenBr >= ' + cast(@InterenBr_Od as varchar(10)) + ' '
  118455.     If @InterenBr_Do Is Not Null
  118456.         Set @SSQL = @SSQL + ' And K.InterenBr <= ' + cast(@InterenBr_Do as varchar(10)) + ' '
  118457. print @SSQL
  118458.     Exec (@SSQL)
  118459.  
  118460.  
  118461. Go
  118462. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkobjekti]'))
  118463. drop procedure [dbo].[sp_pregledkobjekti]
  118464.  
  118465. Go
  118466.  
  118467.  
  118468.  
  118469. CREATE   PROCEDURE sp_PregledKObjekti
  118470.     @Sifra_Kup  char(6)
  118471. AS
  118472.     Select K.Sifra_Kup, K.ImeKup, KO.*
  118473.     From KObjekti KO
  118474.     Inner Join Komint K On KO.Sifra_Kup=K.Sifra_Kup
  118475.     Where KO.Sifra_Kup = @Sifra_Kup
  118476.     Order By KO.Sifra_Kup, KO.Sifra_Obj
  118477.  
  118478.  
  118479.  
  118480. Go
  118481. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkomint]'))
  118482. drop procedure [dbo].[sp_pregledkomint]
  118483.  
  118484. Go
  118485.  
  118486.  
  118487.  
  118488.  
  118489. CREATE                     PROCEDURE sp_PregledKomint
  118490.     @Komint_Od Varchar(10),
  118491.     @Komint_Do Varchar(10),
  118492.     @Podelba1 Smallint= Null,
  118493.     @Podelba2 Smallint= Null,
  118494.     @Podelba3 Smallint = Null,
  118495.     @Podelba4 Smallint = Null,
  118496.     @Podelba5 Smallint = Null,
  118497.     @Podelba6 Smallint = Null,
  118498.     @Podelba7 Smallint = Null,
  118499.     @KFPod1 char(1) = Null,
  118500.     @KFPod2 char(1) = Null,
  118501.     @KFPod3 char(1) = Null,
  118502.     @KFPod4 char(1) = Null,
  118503.     @KFPod5 char(1) = Null,
  118504.     @KFPod6 char(1) = Null,
  118505.     @KFPod7 char(1) = Null,
  118506.     @Sifra_Tip Smallint = Null,
  118507.     @Grad Smallint= Null,
  118508.     @Podred Char(1),
  118509.     @SoPromet Char(1) = Null,            --D so promet
  118510.     @Promet_Datum_Od Smalldatetime = Null,
  118511.     @Patnik    Smallint = Null,
  118512.     @Patnik2    Smallint = Null,
  118513.     @TipKup    varchar(11)=Null,
  118514.     @KojaCena    char(1) = Null,
  118515.     @Sifra_reg    smallint = Null,
  118516.     @Sifra_Nivo    Char(2) = Null,
  118517.     @Aktiven    Char(1) = Null,
  118518.     @MozeIsporaka    Char(1) = Null,
  118519.     @PoObjekti    char(1) = 'N',
  118520.     @Patnik_OdKomintPat char(1)='N',
  118521.     @Sifra_VPJ    smallint = Null,
  118522.     @PovekeBanki char(1) = Null,
  118523.     @DatumIzm_Od    smalldatetime = NULL,
  118524.     @DatumIzm_Do    smalldatetime = NULL
  118525. AS
  118526.     Declare @SSQL Varchar(4000)
  118527.     Declare @SSQLUsl Varchar(4000)
  118528.     Declare @SSQLAkt Varchar(4000)
  118529.     Set @SSQLUsl = ' '
  118530.     Set @SSQLAkt = ' '
  118531.     Create Table #Komint
  118532.     (
  118533.     Sifra_Kup    char(6), 
  118534.     ImeKup        nvarchar(40), 
  118535.     ImeKup2        nvarchar(60), 
  118536.     Adresa        nvarchar(40), 
  118537.     Adresa2        nvarchar(40), 
  118538.     SMesto        nvarchar(20), 
  118539.     Posta        nchar(10), 
  118540.     Zemja        nvarchar(20), 
  118541.     ImaObj        char(1), 
  118542.     IspAdresa    varchar(40), 
  118543.     IspAdresa2    varchar(40), 
  118544.     IspMesto    varchar(20), 
  118545.     IspPosta    char(5), 
  118546.     IspZemja    varchar(20), 
  118547.     Telefon        varchar(20), 
  118548.     Tel1        varchar(20), 
  118549.     Tel2        varchar(20), 
  118550.     TelMobil    varchar(20), 
  118551.     Fax        varchar(20), 
  118552.     Telex        varchar(20), 
  118553.     EMail        varchar(40), 
  118554.     AdrWeb        varchar(30), 
  118555.     Sopstvenik    varchar(30), 
  118556.     LK        varchar(13), 
  118557.     Sopst_Mat    varchar(13), 
  118558.     Danocen    char(15), 
  118559.     Ziro        varchar(35), 
  118560.     Ziro2        varchar(35), 
  118561.     Banka        varchar(30), 
  118562.     Banka2        varchar(30), 
  118563.     Sifra_Ban    char(6), 
  118564.     Sifra_Ban2    char(6), 
  118565.     BRIZJAVA    varchar(100), 
  118566.     KONTAKT    varchar(30), 
  118567.     SkrOznaka    varchar(10),
  118568.     Sifra_Pat    smallint, 
  118569.     Sifra_Pat2    smallint, 
  118570.     Sifra_Grad    smallint, 
  118571.     TipKup        varchar(11), 
  118572.     Sifra_reg    smallint, 
  118573.     Sifra_Nivo    char(2), 
  118574.     Sifra_Tip    smallint, 
  118575.     KDrugo1    smallint, 
  118576.     KDrugo2    smallint, 
  118577.     KDrugo3    smallint, 
  118578.     KDrugo4    smallint, 
  118579.     KDrugo5    smallint, 
  118580.     KDrugo6    smallint, 
  118581.     KDrugo7    smallint, 
  118582.     Uces        decimal(6,2), 
  118583.     KojaSmetka    char(1), 
  118584.     Rok_Dosp    smallint, 
  118585.     Kasa        decimal(6,2), 
  118586.     KojaCena    char(1), 
  118587.     BrPoseti        smallint, 
  118588.     DirDistr        char(1), 
  118589.     ZemaOd    varchar(15), 
  118590.     Zabeleska    varchar(30), 
  118591.     Aktiven        char(1), 
  118592.     BrProdMesta    smallint, 
  118593.     BrAktProdMesta    smallint, 
  118594.     DodadenNa    smalldatetime, 
  118595.     DodadenOd    varchar(30), 
  118596.     IzmenetNa    smalldatetime, 
  118597.     IzmenetOd    varchar(30), 
  118598.     ImaBanka    char(1), 
  118599.     Alt_ImeKup    nvarchar(40), 
  118600.     Alt_Adresa    nvarchar(40), 
  118601.     DogovorBroj    varchar(15), 
  118602.     MozeIsporaka    char(1), 
  118603.     Garancija    varchar(30), 
  118604.     Propagiraj    char(1), 
  118605.     MatBr        varchar(20), 
  118606.     Sopst_Adr    varchar(40),
  118607.     Sopst_Mesto    varchar(20),
  118608.     Sifra_Obj    smallint,
  118609.     ImeObj        char(40),
  118610.     AktivenObj    char(1),
  118611.     Sifra_PatObj    smallint,
  118612.     Limit_Dolzi    decimal(18,6),
  118613.     Aneks1        varchar(100),
  118614.     Aneks2        varchar(100),
  118615.     m2        smallint,
  118616.     Objm2        smallint,
  118617.     Priv_Lice    char(1),
  118618.     God_Rabat    decimal(6,2),
  118619.     Spec_Rabat    decimal(6,2),
  118620.     EMail2        varchar(40), 
  118621.     EMail3        varchar(40),
  118622.     Sifra_VPJ    smallint
  118623.     )
  118624.     If @PoObjekti = 'D'
  118625.     Begin
  118626.         Set @SSQL = 'Select Kup.Sifra_Kup, Kup.ImeKup, Kup.ImeKup2, KO.Adresa, KO.Adresa2, KO.SMesto, KO.Posta, KO.Zemja, Null as ImaObj, Null as IspAdresa, Null as IspAdresa2, 
  118627.             Null as IspMesto, Null as IspPosta, Null as IspZemja, KO.Telefon, KO.Tel1, KO.Tel2, KO.TelMobil, KO.Fax, KO.Telex, KO.EMail, Null as AdrWeb, Null as Sopstvenik, 
  118628.             Kup.LK, Kup.Sopst_Mat, Kup.Danocen, Kup.Ziro, Kup.Ziro2, Kup.Banka, Kup.Banka2, Kup.Sifra_Ban, Kup.Sifra_Ban2, Kup.BRIZJAVA, KO.KONTAKT, Kup.SkrOznaka, '
  118629.         IF @Patnik_OdKomintPat = 'D'
  118630.         Begin
  118631.             IF @Patnik IS NULL
  118632.                 Set @SSQL = @SSQL + 'NULL Sifra_Pat, Null Sifra_Pat2, '
  118633.             ELSE
  118634.                 Set @SSQL = @SSQL + 'KP.Sifra_Pat, Null Sifra_Pat2, '
  118635.         End
  118636.         ELSE
  118637.             Set @SSQL = @SSQL + 'KO.Sifra_Pat, KO.Sifra_Pat2, '
  118638.         Set @SSQL = @SSQL + 'KO.Sifra_Grad, KO.TipKup, KO.Sifra_reg, KO.Sifra_Nivo, KO.Sifra_Tip, KO.KDrugo1, KO.KDrugo2, KO.KDrugo3, KO.KDrugo4, KO.KDrugo5, KO.KDrugo6, KO.KDrugo7, 
  118639.             Kup.Uces, Kup.KojaSmetka, Kup.Rok_Dosp, Kup.Kasa, Kup.KojaCena, Kup.BrPoseti, Kup.DirDistr, Kup.ZemaOd, KO.Zabeleska, KO.Aktiven, 
  118640.             KO.BrProdMesta, KO.BrAktProdMesta, Kup.DodadenNa, Kup.DodadenOd, Kup.IzmenetNa, Kup.IzmenetOd, Kup.ImaBanka, Kup.Alt_ImeKup, Kup.Alt_Adresa, 
  118641.             Kup.DogovorBroj, Kup.MozeIsporaka, Kup.Garancija, KO.Propagiraj, Kup.MatBr, Kup.Sopst_Adr, Kup.Sopst_Mesto, 
  118642.             KO.Sifra_Obj, KO.ImeObj, KO.Aktiven, KO.Sifra_Pat, Null as Limit_Dolzi, Kup.Aneks1, Kup.Aneks2, Kup.m2, KO.m2 as Objm2, Kup.Priv_Lice, Kup.God_Rabat, Kup.Spec_Rabat, KO.EMail2, KO.EMail3,
  118643.             KO.Sifra_VPJ
  118644.         From Komint Kup
  118645.         Inner Join KObjekti KO On KO.Sifra_Kup=Kup.Sifra_Kup '
  118646.         IF @Patnik_OdKomintPat = 'D' AND @Patnik IS NOT NULL
  118647.             Set @SSQL = @SSQL + 'INNER Join KomintPat KP On KP.Sifra_Kup=KO.Sifra_Kup AND KP.Sifra_Obj=KO.Sifra_Obj AND KP.Sifra_Pat= '+cast(@Patnik as varchar(5))+' '
  118648.         SET @SSQL = @SSQL + ' Where KO.Sifra_Obj <> 0 '
  118649.     End
  118650.     Else
  118651.     Begin
  118652.         Set @SSQL = 'Select Kup.Sifra_Kup, Kup.ImeKup, Kup.ImeKup2, KUP.Adresa, KUP.Adresa2, KUP.SMesto, KUP.Posta, Kup.Zemja, Kup.ImaObj, Kup.IspAdresa, Kup.IspAdresa2, 
  118653.             Kup.IspMesto, Kup.IspPosta, Kup.IspZemja, Kup.Telefon, Kup.Tel1, Kup.Tel2, Kup.TelMobil, Kup.Fax, Kup.Telex, Kup.EMail, Kup.AdrWeb, Kup.Sopstvenik, 
  118654.             Kup.LK, Kup.Sopst_Mat, Kup.Danocen, Kup.Ziro, Kup.Ziro2, Kup.Banka, Kup.Banka2, Kup.Sifra_Ban, Kup.Sifra_Ban2, Kup.BRIZJAVA, Kup.KONTAKT, Kup.SkrOznaka, '
  118655.         IF @Patnik_OdKomintPat = 'D'
  118656.         Begin
  118657.             IF @Patnik IS NULL
  118658.                 Set @SSQL = @SSQL + 'NULL Sifra_Pat, Null Sifra_Pat2, '
  118659.             ELSE
  118660.                 Set @SSQL = @SSQL + 'KP.Sifra_Pat, Null Sifra_Pat2, '
  118661.         End
  118662.         ELSE
  118663.             Set @SSQL = @SSQL + 'Kup.Sifra_Pat, Kup.Sifra_Pat2, '
  118664.         Set @SSQL = @SSQL + 'Kup.Sifra_Grad, Kup.TipKup, Kup.Sifra_reg, Kup.Sifra_Nivo, Kup.Sifra_Tip, Kup.KDrugo1, Kup.KDrugo2, Kup.KDrugo3, Kup.KDrugo4, Kup.KDrugo5, Kup.KDrugo6, Kup.KDrugo7, 
  118665.             Kup.Uces, Kup.KojaSmetka, Kup.Rok_Dosp, Kup.Kasa, Kup.KojaCena, Kup.BrPoseti, Kup.DirDistr, Kup.ZemaOd, Kup.Zabeleska, Kup.Aktiven, 
  118666.             Kup.BrProdMesta, Kup.BrAktProdMesta, Kup.DodadenNa, Kup.DodadenOd, Kup.IzmenetNa, Kup.IzmenetOd, Kup.ImaBanka, Kup.Alt_ImeKup, Kup.Alt_Adresa, 
  118667.             Kup.DogovorBroj, Kup.MozeIsporaka, Kup.Garancija, Kup.Propagiraj, Kup.MatBr, Kup.Sopst_Adr, Kup.Sopst_Mesto, 
  118668.             Null as Sifra_Obj, Null as ImeObj, Null as Aktiven, Null as Sifra_Pat, Kup.Limit_Dolzi, Kup.Aneks1, Kup.Aneks2, Kup.m2, Null as Objm2, Kup.Priv_Lice, Kup.God_Rabat, Kup.Spec_Rabat, Kup.EMail2, Kup.EMail3,
  118669.             Kup.Sifra_VPJ
  118670.         From Komint Kup '
  118671.         IF @Patnik_OdKomintPat = 'D' AND @Patnik IS NOT NULL
  118672.             Set @SSQL = @SSQL + 'INNER Join KomintPat KP On KP.Sifra_Kup=Kup.Sifra_Kup AND KP.Sifra_Obj IS NULL  AND KP.Sifra_Pat= '+cast(@Patnik as varchar(5))+' '
  118673.         SET @SSQL = @SSQL+ ' Where 1=1 '
  118674.     End
  118675.     If @Komint_Od Is Not Null
  118676.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Kup>=''' + @Komint_Od + ''' '
  118677.     If @Komint_Do Is Not Null
  118678.         Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Kup<=''' + @Komint_Do + ''' '
  118679.     If @MozeIsporaka = 'N'
  118680.         Set @SSQLUsl = @SSQLUsl + 'And Kup.MozeIsporaka = ''N'' '
  118681.     Else If @MozeIsporaka = 'D'
  118682.         Set @SSQLUsl = @SSQLUsl + 'And (Kup.MozeIsporaka <> ''N'' or Kup.MozeIsporaka Is Null) '
  118683.     If @KojaCena Is Not Null
  118684.         Set @SSQLUsl = @SSQLUsl + 'And Kup.KojaCena =''' + @KojaCena + ''' '
  118685.     If @SoPromet = 'D'
  118686.         Begin
  118687.             Set @SSQLUsl = @SSQLUsl + 'And Kup.Sifra_Kup In
  118688.                 (Select Distinct Sifra_Kup From Dokr'
  118689.             If @Promet_Datum_Od Is Not Null
  118690.                 Set @SSQLUsl = @SSQLUsl + ' Where Datum_Dok>=''' + Cast(@Promet_Datum_Od As Varchar(30)) + ''') '
  118691.             Else
  118692.                 Set @SSQLUsl = @SSQLUsl + ') '
  118693.         End
  118694. -----------------------------------------------------------------------------------------------------------------------------------------------------------------
  118695.     If @PoObjekti = 'D'
  118696.     Begin
  118697.         If @Aktiven = 'D'    
  118698.             Set @SSQLAkt = @SSQLAkt + ' And ((KO.Aktiven Is Not Null And (KO.Aktiven <> ''N'' or KO.Aktiven Is Null)) 
  118699.                             OR ( KO.Aktiven Is Null and (KUP.Aktiven <> ''N'' or KUP.Aktiven Is Null))) '     
  118700.         Else If @Aktiven = 'N'    
  118701.             Set @SSQLAkt = @SSQLAkt + ' And ((KO.Aktiven Is Not Null And KO.Aktiven = ''N'') 
  118702.                             OR ( KO.Aktiven Is Null and KUP.Aktiven = ''N'')) '     
  118703.         If @Grad Is Not Null
  118704.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad = ' + Cast(@Grad As Varchar(10)) + ') 
  118705.                             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad =' + Cast(@Grad As Varchar(10)) + ')) '
  118706.         If @Sifra_Reg Is Not Null
  118707.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(10)) + ') 
  118708.                             OR (KO.Sifra_Reg Is Null and KUP.Sifra_Reg =' + Cast(@Sifra_Reg As Varchar(10)) + ')) '
  118709.         IF @Patnik_OdKomintPat <> 'D'
  118710.         Begin
  118711.             If @Patnik Is Not Null
  118712.                 Set @SSQLAkt = @SSQLAkt + 'And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat = ' + Cast(@Patnik As Varchar(10)) + ') 
  118713.                             OR (KO.Sifra_Pat Is Null and KUP.Sifra_Pat =' + Cast(@Patnik As Varchar(10)) + ')) '
  118714.             If @Patnik2 Is Not Null
  118715.                 Set @SSQLAkt = @SSQLAkt + 'And ((KO.Sifra_Pat2 Is Not Null And KO.Sifra_Pat2 = ' + Cast(@Patnik2 As Varchar(10)) + ') 
  118716.                             OR (KO.Sifra_Pat2 Is Null and KUP.Sifra_Pat2 =' + Cast(@Patnik2 As Varchar(10)) + ')) '
  118717.         End
  118718.         If @Podelba1 Is Not NULL
  118719.             If @KFPod1 = 'D'
  118720.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Podelba1 As Varchar(6)) + ')
  118721.                               Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Podelba1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  118722.             Else
  118723.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Podelba1 As Varchar(6)) + ')
  118724.                               Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Podelba1 As Varchar(6)) + ')) '
  118725.         If @Podelba2 Is Not NULL
  118726.             If @KFPod2 = 'D'
  118727.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Podelba2 As Varchar(6)) + ')
  118728.                               Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Podelba2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  118729.             Else
  118730.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Podelba2 As Varchar(6)) + ')
  118731.                               Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Podelba2 As Varchar(6)) + ')) '
  118732.         If @Podelba3 Is Not NULL
  118733.             If @KFPod3 = 'D'
  118734.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Podelba3 As Varchar(6)) + ')
  118735.                               Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Podelba3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  118736.             Else
  118737.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Podelba3 As Varchar(6)) + ')
  118738.                               Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Podelba3 As Varchar(6)) + ')) '
  118739.         If @Podelba4 Is Not NULL
  118740.             If @KFPod4 = 'D'
  118741.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Podelba4 As Varchar(6)) + ')
  118742.                               Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Podelba4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  118743.             Else
  118744.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Podelba4 As Varchar(6)) + ')
  118745.                               Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Podelba4 As Varchar(6)) + ')) '
  118746.         If @Podelba5 Is Not NULL
  118747.             If @KFPod5 = 'D'
  118748.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Podelba5 As Varchar(6)) + ')
  118749.                               Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Podelba5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  118750.             Else
  118751.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Podelba5 As Varchar(6)) + ')
  118752.                               Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Podelba5 As Varchar(6)) + ')) '
  118753.         If @Podelba6 Is Not NULL
  118754.             If @KFPod6 = 'D'
  118755.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Podelba6 As Varchar(6)) + ')
  118756.                               Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Podelba6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  118757.             Else
  118758.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Podelba6 As Varchar(6)) + ')
  118759.                               Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Podelba6 As Varchar(6)) + ')) '
  118760.         If @Podelba7 Is Not NULL
  118761.             If @KFPod7 = 'D'
  118762.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Podelba7 As Varchar(6)) + ')
  118763.                               Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Podelba7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  118764.             Else
  118765.                 Set @SSQLAkt = @SSQLAkt + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Podelba7 As Varchar(6)) + ')
  118766.                               Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Podelba7 As Varchar(6)) + ')) '
  118767. /*        If @Podelba1 Is Not Null
  118768.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Podelba1 As Varchar(10)) + ') 
  118769.                             OR ( KO.KDrugo1 Is Null and KUP.KDrugo1 =' + Cast(@Podelba1 As Varchar(10)) + ')) '
  118770.         If @Podelba2 Is Not Null
  118771.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Podelba2 As Varchar(10)) + ') 
  118772.                             OR ( KO.KDrugo2 Is Null and KUP.KDrugo2 =' + Cast(@Podelba2 As Varchar(10)) + ')) '
  118773.         If @Podelba3 Is Not Null
  118774.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Podelba3 As Varchar(10)) + ') 
  118775.                             OR ( KO.KDrugo3 Is Null and KUP.KDrugo3 =' + Cast(@Podelba3 As Varchar(10)) + ')) '
  118776.         If @Podelba4 Is Not Null
  118777.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Podelba4 As Varchar(10)) + ') 
  118778.                             OR ( KO.KDrugo4 Is Null and KUP.KDrugo4 =' + Cast(@Podelba4 As Varchar(10)) + ')) '
  118779.         If @Podelba5 Is Not Null
  118780.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Podelba5 As Varchar(10)) + ') 
  118781.                             OR ( KO.KDrugo5 Is Null and KUP.KDrugo5 =' + Cast(@Podelba5 As Varchar(10)) + ')) '
  118782. */
  118783.         If @Sifra_Tip Is Not Null
  118784.             Set @SSQLAkt = @SSQLAkt + 'And ((KO.Sifra_Tip Is Not Null And KO.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(10)) + ') 
  118785.                             OR ( KO.Sifra_Tip Is Null and KUP.Sifra_Tip =' + Cast(@Sifra_Tip As Varchar(10)) + ')) '
  118786.         If @Sifra_VPJ Is Not NULL
  118787.             Set @SSQLAkt = @SSQLAkt + ' And ((KO.Sifra_VPJ Is Not Null And KO.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(10)) + ')
  118788.                             OR (KO.Sifra_VPJ Is Null And Kup.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(10)) + ')) '
  118789.         If @Sifra_Nivo Is Not NULL
  118790.             Set @SSQLAkt = @SSQLAkt + ' And ((KO.Sifra_Nivo Is Not Null And KO.Sifra_Nivo = ' + Cast(@Sifra_Nivo As Varchar(10)) + ')
  118791.                             OR (KO.Sifra_Nivo Is Null And Kup.Sifra_Nivo = ' + Cast(@Sifra_Nivo As Varchar(10)) + ')) '
  118792.         If @TipKup Is Not NULL
  118793.             Set @SSQLAkt = @SSQLAkt + ' And ((KO.TipKup Is Not Null And KO.TipKup = ' + Cast(@TipKup As Varchar(10)) + ')
  118794.                             OR (KO.TipKup Is Null And Kup.TipKup = ' + Cast(@TipKup As Varchar(10)) + ')) '
  118795.     End
  118796.     Else
  118797.     Begin
  118798.         IF @Patnik_OdKomintPat <> 'D'
  118799.         Begin
  118800.             If @Patnik Is Not Null
  118801.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Pat=' + Cast(@Patnik As Varchar(10)) + ' '
  118802.             If @Patnik2 Is Not Null
  118803.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Pat2=' + Cast(@Patnik2 As Varchar(10)) + ' '
  118804.         End
  118805.         If @Grad Is Not Null
  118806.             Set @SSQLAkt = @SSQLAkt + 'And KUP.Sifra_Grad =' + Cast(@Grad As Varchar(10)) + ' '
  118807.         If @Sifra_Reg Is Not Null
  118808.             Set @SSQLAkt = @SSQLAkt + 'And KUP.Sifra_Reg =' + Cast(@Sifra_Reg As Varchar(10)) + ' '
  118809.         If @Aktiven = 'D'    
  118810.             Set @SSQLAkt = @SSQLAkt + ' And (KUP.Aktiven <> ''N'' or KUP.Aktiven Is Null) '     
  118811.         Else If @Aktiven = 'N'    
  118812.             Set @SSQLAkt = @SSQLAkt + ' And KUP.Aktiven = ''N'' '     
  118813. /*        If @Podelba1 Is Not Null
  118814.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  118815.         If @Podelba2 Is Not Null
  118816.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  118817.         If @Podelba3 Is Not Null
  118818.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  118819.         If @Podelba4 Is Not Null
  118820.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  118821.         If @Podelba5 Is Not Null
  118822.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' ' */
  118823.         If @Podelba1 Is Not NULL
  118824.             If @KFPod1 = 'D'
  118825.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or Kup.KDrugo1 Is Null) '
  118826.             Else
  118827.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  118828.         If @Podelba2 Is Not NULL
  118829.             If @KFPod2 = 'D'
  118830.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo2<>' + Cast(@Podelba2 As Varchar(10)) + ' Or Kup.KDrugo2 Is Null) '
  118831.             Else
  118832.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  118833.         If @Podelba3 Is Not NULL
  118834.             If @KFPod3 = 'D'
  118835.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo3<>' + Cast(@Podelba3 As Varchar(10)) + ' Or Kup.KDrugo3 Is Null) '
  118836.             Else
  118837.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  118838.         If @Podelba4 Is Not NULL
  118839.             If @KFPod4 = 'D'
  118840.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo4<>' + Cast(@Podelba4 As Varchar(10)) + ' Or Kup.KDrugo4 Is Null) '
  118841.             Else
  118842.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  118843.         If @Podelba5 Is Not NULL
  118844.             If @KFPod5 = 'D'
  118845.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo5<>' + Cast(@Podelba5 As Varchar(10)) + ' Or Kup.KDrugo5 Is Null) '
  118846.             Else
  118847.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  118848.         If @Podelba6 Is Not NULL
  118849.             If @KFPod6 = 'D'
  118850.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo6<>' + Cast(@Podelba6 As Varchar(10)) + ' Or Kup.KDrugo6 Is Null) '
  118851.             Else
  118852.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo6=' + Cast(@Podelba6 As Varchar(10)) + ' '
  118853.         If @Podelba7 Is Not NULL
  118854.             If @KFPod7 = 'D'
  118855.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo7<>' + Cast(@Podelba7 As Varchar(10)) + ' Or Kup.KDrugo7 Is Null) '
  118856.             Else
  118857.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo7=' + Cast(@Podelba7 As Varchar(10)) + ' '
  118858.         If @Sifra_Tip Is Not Null
  118859.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  118860.         If @Sifra_VPJ Is Not Null
  118861.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_VPJ=' + Cast(@Sifra_VPJ As Varchar(10)) + ' '
  118862.         If @Sifra_Nivo Is Not Null
  118863.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  118864.         If @TipKup Is Not Null
  118865.             Set @SSQLAkt = @SSQLAkt + 'And Kup.TipKup=''' + @TipKup + ''' '
  118866.     End
  118867. -----------------------------------------------------------------------------------------------------------------------------------------------------------------
  118868. --print (@SSQL+@SSQLUsl+@SSQLAkt)
  118869.     Insert Into #Komint Exec(@SSQL+@SSQLUsl+@SSQLAkt)
  118870.  
  118871.     If @PoObjekti = 'D'
  118872.     Begin
  118873.         Set @SSQLAkt = ' '
  118874.         If @Aktiven = 'N'
  118875.             Set @SSQLAkt = @SSQLAkt + 'And (Kup.Aktiven = ''N'') '
  118876.         Else If @Aktiven = 'D'
  118877.             Set @SSQLAkt = @SSQLAkt + 'And (Kup.Aktiven <> ''N'' or Kup.Aktiven Is Null) '
  118878.         If @Grad Is Not Null
  118879.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Grad=' + Cast(@Grad As Varchar(10)) + ' '
  118880.         If @Sifra_Reg Is Not Null
  118881.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Reg=' + Cast(@Sifra_Reg As Varchar(10)) + ' '
  118882.         IF @Patnik_OdKomintPat <> 'D'
  118883.         Begin
  118884.             If @Patnik Is Not Null
  118885.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Pat=' + Cast(@Patnik As Varchar(10)) + ' '
  118886.             If @Patnik2 Is Not Null
  118887.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Pat2=' + Cast(@Patnik2 As Varchar(10)) + ' '
  118888.         End
  118889. /*        If @Podelba1 Is Not Null
  118890.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  118891.         If @Podelba2 Is Not Null
  118892.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  118893.         If @Podelba3 Is Not Null
  118894.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  118895.         If @Podelba4 Is Not Null
  118896.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  118897.         If @Podelba5 Is Not Null
  118898.             Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' ' */
  118899.         If @Podelba1 Is Not NULL
  118900.             If @KFPod1 = 'D'
  118901.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo1<>' + Cast(@Podelba1 As Varchar(10)) + ' Or Kup.KDrugo1 Is Null) '
  118902.             Else
  118903.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  118904.         If @Podelba2 Is Not NULL
  118905.             If @KFPod2 = 'D'
  118906.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo2<>' + Cast(@Podelba2 As Varchar(10)) + ' Or Kup.KDrugo2 Is Null) '
  118907.             Else
  118908.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  118909.         If @Podelba3 Is Not NULL
  118910.             If @KFPod3 = 'D'
  118911.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo3<>' + Cast(@Podelba3 As Varchar(10)) + ' Or Kup.KDrugo3 Is Null) '
  118912.             Else
  118913.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  118914.         If @Podelba4 Is Not NULL
  118915.             If @KFPod4 = 'D'
  118916.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo4<>' + Cast(@Podelba4 As Varchar(10)) + ' Or Kup.KDrugo4 Is Null) '
  118917.             Else
  118918.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  118919.         If @Podelba5 Is Not NULL
  118920.             If @KFPod5 = 'D'
  118921.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo5<>' + Cast(@Podelba5 As Varchar(10)) + ' Or Kup.KDrugo5 Is Null) '
  118922.             Else
  118923.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  118924.         If @Podelba6 Is Not NULL
  118925.             If @KFPod6 = 'D'
  118926.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo6<>' + Cast(@Podelba6 As Varchar(10)) + ' Or Kup.KDrugo6 Is Null) '
  118927.             Else
  118928.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo6=' + Cast(@Podelba6 As Varchar(10)) + ' '
  118929.         If @Podelba7 Is Not NULL
  118930.             If @KFPod7 = 'D'
  118931.                 Set @SSQLAkt = @SSQLAkt + 'And (Kup.KDrugo7<>' + Cast(@Podelba7 As Varchar(10)) + ' Or Kup.KDrugo7 Is Null) '
  118932.             Else
  118933.                 Set @SSQLAkt = @SSQLAkt + 'And Kup.KDrugo7=' + Cast(@Podelba7 As Varchar(10)) + ' '
  118934.         If @Sifra_Tip Is Not Null
  118935.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  118936.         If @Sifra_VPJ Is Not Null
  118937.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_VPJ=' + Cast(@Sifra_VPJ As Varchar(10)) + ' '
  118938.         If @Sifra_Nivo Is Not Null
  118939.             Set @SSQLAkt = @SSQLAkt + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  118940.         If @TipKup Is Not Null
  118941.             Set @SSQLAkt = @SSQLAkt + 'And Kup.TipKup=''' + @TipKup + ''' '
  118942.         Set @SSQL = 'Select Kup.Sifra_Kup, Kup.ImeKup, Kup.ImeKup2, Kup.Adresa, Kup.Adresa2, Kup.SMesto, Kup.Posta, Kup.Zemja, Kup.ImaObj, Kup.IspAdresa, Kup.IspAdresa2, 
  118943.                 Kup.IspMesto, Kup.IspPosta, Kup.IspZemja, Kup.Telefon, Kup.Tel1, Kup.Tel2, Kup.TelMobil, Kup.Fax, Kup.Telex, Kup.EMail, Kup.AdrWeb, Kup.Sopstvenik, 
  118944.                 Kup.LK, Kup.Sopst_Mat, Kup.Danocen, Kup.Ziro, Kup.Ziro2, Kup.Banka, Kup.Banka2, Kup.Sifra_Ban, Kup.Sifra_Ban2, Kup.BRIZJAVA, Kup.KONTAKT, Kup.SkrOznaka, '
  118945.         IF @Patnik_OdKomintPat = 'D'
  118946.         Begin
  118947.             IF @Patnik IS NULL
  118948.                 Set @SSQL = @SSQL + 'NULL Sifra_Pat, Null Sifra_Pat2, '
  118949.             ELSE
  118950.                 Set @SSQL = @SSQL + 'KP.Sifra_Pat, Null Sifra_Pat2, '
  118951.         End
  118952.         ELSE
  118953.             Set @SSQL = @SSQL + 'Kup.Sifra_Pat, Kup.Sifra_Pat2, '
  118954.         Set @SSQL = @SSQL + 'Kup.Sifra_Grad, Kup.TipKup, Kup.Sifra_reg, Kup.Sifra_Nivo, Kup.Sifra_Tip, Kup.KDrugo1, Kup.KDrugo2, Kup.KDrugo3, Kup.KDrugo4, Kup.KDrugo5, Kup.KDrugo6, Kup.KDrugo7, 
  118955.                 Kup.Uces, Kup.KojaSmetka, Kup.Rok_Dosp, Kup.Kasa, Kup.KojaCena, Kup.BrPoseti, Kup.DirDistr, Kup.ZemaOd, Kup.Zabeleska, KO.Aktiven, 
  118956.                 Kup.BrProdMesta, Kup.BrAktProdMesta, Kup.DodadenNa, Kup.DodadenOd, Kup.IzmenetNa, Kup.IzmenetOd, Kup.ImaBanka, Kup.Alt_ImeKup, Kup.Alt_Adresa, 
  118957.                 Kup.DogovorBroj, Kup.MozeIsporaka, Kup.Garancija, Kup.Propagiraj, Kup.MatBr, Kup.Sopst_Adr, Kup.Sopst_Mesto, 
  118958.                 KO.Sifra_Obj, KO.ImeObj, KO.Aktiven, KO.Sifra_Pat, Kup.Limit_Dolzi, Kup.Aneks1, Kup.Aneks2, Kup.m2, KO.m2 as Objm2, Kup.Priv_Lice, Kup.God_Rabat, Kup.Spec_Rabat, KO.EMail2, KO.EMail3,
  118959.                 KO.Sifra_VPJ
  118960.                 From Komint Kup
  118961.                 Inner Join KObjekti KO On KO.Sifra_Kup=Kup.Sifra_Kup '
  118962.         IF @Patnik_OdKomintPat = 'D' AND @Patnik IS NOT NULL
  118963.             Set @SSQL = @SSQL + 'INNER Join KomintPat KP On KP.Sifra_Kup=KO.Sifra_Kup AND KP.Sifra_Obj=NULL AND KP.Sifra_pat='+cast(@Patnik as varchar(5))+' ' 
  118964.         SET @SSQL = @SSQL + ' Where KO.Sifra_Obj = 0  And Kup.Sifra_Kup Not In (Select Sifra_Kup From #Komint) '
  118965.         Insert Into #Komint Exec(@SSQL+@SSQLUsl+@SSQLAkt) 
  118966.         Set @SSQL = 'Select Kup.Sifra_Kup, Kup.ImeKup, Kup.ImeKup2, Kup.Adresa, Kup.Adresa2, Kup.SMesto, Kup.Posta, Kup.Zemja, Kup.ImaObj, Kup.IspAdresa, Kup.IspAdresa2, 
  118967.                 Kup.IspMesto, Kup.IspPosta, Kup.IspZemja, Kup.Telefon, Kup.Tel1, Kup.Tel2, Kup.TelMobil, Kup.Fax, Kup.Telex, Kup.EMail, Kup.AdrWeb, Kup.Sopstvenik, 
  118968.                 Kup.LK, Kup.Sopst_Mat, Kup.Danocen, Kup.Ziro, Kup.Ziro2, Kup.Banka, Kup.Banka2, Kup.Sifra_Ban, Kup.Sifra_Ban2, Kup.BRIZJAVA, Kup.KONTAKT, Kup.SkrOznaka,  '
  118969.         IF @Patnik_OdKomintPat = 'D'
  118970.         Begin
  118971.             IF @Patnik IS NULL
  118972.                 Set @SSQL = @SSQL + 'NULL Sifra_Pat, Null Sifra_Pat2, '
  118973.             ELSE
  118974.                 Set @SSQL = @SSQL + 'KP.Sifra_Pat, Null Sifra_Pat2, '
  118975.         End
  118976.         ELSE
  118977.             Set @SSQL = @SSQL + 'Kup.Sifra_Pat,Kup.Sifra_Pat2, '
  118978.         Set @SSQL = @SSQL + 'Kup.Sifra_Grad, Kup.TipKup, Kup.Sifra_reg, Kup.Sifra_Nivo, Kup.Sifra_Tip, Kup.KDrugo1, Kup.KDrugo2, Kup.KDrugo3, Kup.KDrugo4, Kup.KDrugo5, Kup.KDrugo6, Kup.KDrugo7, 
  118979.                 Kup.Uces, Kup.KojaSmetka, Kup.Rok_Dosp, Kup.Kasa, Kup.KojaCena, Kup.BrPoseti, Kup.DirDistr, Kup.ZemaOd, Kup.Zabeleska, Kup.Aktiven, 
  118980.                 Kup.BrProdMesta, Kup.BrAktProdMesta, Kup.DodadenNa, Kup.DodadenOd, Kup.IzmenetNa, Kup.IzmenetOd, Kup.ImaBanka, Kup.Alt_ImeKup, Kup.Alt_Adresa, 
  118981.                 Kup.DogovorBroj, Kup.MozeIsporaka, Kup.Garancija, Kup.Propagiraj, Kup.MatBr, Kup.Sopst_Adr, Kup.Sopst_Mesto, 
  118982.                 Null as Sifra_Obj, Null as ImeObj, Null as AktivenObj, Null as Sifra_PatObj, Kup.Limit_Dolzi, Kup.Aneks1, Kup.Aneks2, Kup.m2, Null as Objm2, Kup.Priv_Lice, Kup.God_Rabat, Kup.Spec_Rabat, Kup.EMail2, Kup.EMail3,
  118983.                 Kup.Sifra_VPJ
  118984.             From Komint Kup '
  118985.         IF @Patnik_OdKomintPat = 'D' AND @Patnik IS NOT NULL
  118986.             Set @SSQL = @SSQL + 'inner Join KomintPat KP On KP.Sifra_Kup=Kup.Sifra_Kup AND KP.Sifra_Obj=NULL AND KP.Sifra_pat='+cast(@Patnik as varchar(5))+' ' 
  118987.         SET @SSQL = @SSQL + ' Where Kup.Sifra_Kup Not In (Select Sifra_Kup From KObjekti) and Kup.Sifra_Kup Not In (Select Sifra_Kup From #Komint) '
  118988.         Insert Into #Komint Exec(@SSQL+@SSQLUsl+@SSQLAkt)
  118989.     End
  118990.     If @PovekeBanki = 'D'
  118991.     Begin
  118992.         Create Table #KomintBank
  118993.         (
  118994.          Sifra_Kup    char(6),
  118995.          Sifra_Ban    char(6),
  118996.          ImeBanka    varchar(40),
  118997.          ZiroSka    varchar(20),
  118998.          RbrBan        smallint,
  118999.          RB        smallint
  119000.         )
  119001.         Insert Into #KomintBank (Sifra_Kup, RB)
  119002.         Select K.Sifra_Kup, Min(KB.RbrBan)
  119003.         From #Komint K
  119004.         Inner Join KBanki KB On KB.Sifra_Kup=K.Sifra_Kup
  119005.         Group By K.Sifra_Kup
  119006.         Update #KomintBank Set Sifra_Ban=KB.Sifra_Ban, ImeBanka=B.ImeBanka, ZiroSka=KB.ZiroSka, RbrBan=1 
  119007.         From KBanki KB
  119008.         Inner Join Banki B On B.Sifra_Ban=KB.Sifra_Ban
  119009.         Where #KomintBank.Sifra_Kup=KB.Sifra_Kup And #KomintBank.RB=KB.RbrBan
  119010.         Insert Into #KomintBank (Sifra_Kup, RB)
  119011.         Select K.Sifra_Kup, Min(KB.RbrBan)
  119012.         From #Komint K
  119013.         Inner Join KBanki KB On KB.Sifra_Kup=K.Sifra_Kup
  119014.         Where Cast(K.Sifra_Kup as char(6)) + Cast(KB.RbrBan as char(6)) Not In (Select Cast(Sifra_Kup as char(6)) + Cast(RB as char(6)) From #KomintBank)
  119015.         Group By K.Sifra_Kup
  119016.         Update #KomintBank Set Sifra_Ban=KB.Sifra_Ban, ImeBanka=B.ImeBanka, ZiroSka=KB.ZiroSka, RbrBan=2
  119017.         From KBanki KB
  119018.         Inner Join Banki B On B.Sifra_Ban=KB.Sifra_Ban
  119019.         Where #KomintBank.Sifra_Kup=KB.Sifra_Kup And #KomintBank.RB=KB.RbrBan
  119020.         And #KomintBank.RbrBan Is Null
  119021.         Update #Komint 
  119022.         Set Ziro=KB.ZiroSka, Banka=KB.ImeBanka, Sifra_Ban=KB.Sifra_Ban
  119023.         From #KomintBank KB 
  119024.         Where #Komint.Sifra_Kup = KB.Sifra_Kup
  119025.         And KB.RbrBan=1
  119026.         Update #Komint 
  119027.         Set Ziro2=KB.ZiroSka, Banka2=KB.ImeBanka, Sifra_Ban2=KB.Sifra_Ban
  119028.         From #KomintBank KB 
  119029.         Where #Komint.Sifra_Kup = KB.Sifra_Kup
  119030.         And KB.RbrBan=2
  119031.     End
  119032.     IF @DatumIzm_Od IS NOT NULL OR @DatumIzm_Do IS NOT NULL        --dod.06.08.08
  119033.     Begin
  119034.         Set @SSQL = 'DELETE FROM #Komint WHERE Sifra_Kup NOT IN (SELECT Sifra_Kup FROM Komint WHERE 1=1 '
  119035.         IF @DatumIzm_Od IS NOT NULL  
  119036.             Set @SSQL = @SSQL + ' AND (DodadenNa>=''' +cast(@DatumIzm_Od as varchar(35))+''' OR IzmenetNa>=''' +cast(@DatumIzm_Od as varchar(35))+ ''' )'
  119037.         IF @DatumIzm_Do IS NOT NULL
  119038.             Set @SSQL = @SSQL + ' AND (DodadenNa<=''' +cast(@DatumIzm_Do as varchar(35))+''' OR IzmenetNa<=''' +cast(@DatumIzm_Do as varchar(35))+ ''' )'
  119039.         Set @SSQL = @SSQL + ')'
  119040.         EXEC (@SSQL)
  119041.     End
  119042.  
  119043.     Set @SSQL = ' Select Kup.Sifra_Kup, Kup.ImeKup, Kup.ImeKup2, Kup.Adresa, Kup.Adresa2, Kup.SMesto, Kup.Posta, Kup.Zemja, Kup.ImaObj, Kup.IspAdresa, Kup.IspAdresa2, 
  119044.             Kup.IspMesto, Kup.IspPosta, Kup.IspZemja, Kup.Telefon, Kup.Tel1, Kup.Tel2, Kup.TelMobil, Kup.Fax, Kup.Telex, Kup.EMail, Kup.EMail2, Kup.EMail3, Kup.AdrWeb, Kup.Sopstvenik, 
  119045.             Kup.LK, Kup.Sopst_Mat, Kup.Danocen, Kup.Ziro, Kup.Ziro2, Kup.Banka, Kup.Banka2, Kup.Sifra_Ban, Kup.Sifra_Ban2, Kup.BRIZJAVA, Kup.KONTAKT, Kup.SkrOznaka, 
  119046.             Kup.Sifra_Pat, Kup.Sifra_Grad, Kup.TipKup, Kup.Sifra_reg, Kup.Sifra_Nivo, Kup.Sifra_Tip, Kup.KDrugo1, Kup.KDrugo2, Kup.KDrugo3, Kup.KDrugo4, Kup.KDrugo5, Kup.KDrugo6, Kup.KDrugo7, 
  119047.             Kup.Uces, Kup.KojaSmetka, Kup.Rok_Dosp, Kup.Kasa, Kup.KojaCena, Kup.BrPoseti, Kup.DirDistr, Kup.ZemaOd, Kup.Zabeleska, Kup.Aktiven, 
  119048.             Kup.BrProdMesta, Kup.BrAktProdMesta, Kup.DodadenNa, Kup.DodadenOd, Kup.IzmenetNa, Kup.IzmenetOd, Kup.ImaBanka, Kup.Alt_ImeKup, Kup.Alt_Adresa, 
  119049.             Kup.DogovorBroj, Kup.MozeIsporaka, Kup.Garancija, Kup.Propagiraj, Kup.MatBr, Kup.Sifra_Pat2, Kup.Sopst_Adr, Kup.Sopst_Mesto,
  119050.             P.ImePat, G.ImeGrad, R.ImeRegion, N.ImeNivo, 
  119051.             KD1.Ime_1K, KD2.Ime_2K, KD3.Ime_3K, KD4.Ime_4K, KD5.Ime_5K, KD6.Ime_6K, KD7.Ime_7K, 
  119052.                          TK.ImeTipKup, Kup.KojaCena, Kup.Sifra_Obj, Kup.ImeObj, Kup.Sifra_PatObj,
  119053.             Kup.Limit_Dolzi, P2.ImePat as ImePat2, Kup.Aneks1, Kup.Aneks2, Kup.m2, Kup.Objm2, Kup.Priv_Lice, Kup.God_Rabat, Kup.Spec_Rabat, Kup.Sifra_VPJ, VPJ.Ime_VPJ,
  119054.             Kup.Sifra_Kup+(Case When Kup.Sifra_Obj < 10 Then ''00''+Cast(Kup.Sifra_Obj as varchar(6)) 
  119055.                             When Kup.Sifra_Obj >9 And Kup.Sifra_Obj < 100 Then ''0''+Cast(Kup.Sifra_Obj as varchar(6))
  119056.                             When Kup.Sifra_Obj >99 And Kup.Sifra_Obj < 1000 Then Cast(Kup.Sifra_Obj as varchar(6)) Else ''000'' End) Sifra
  119057.  
  119058.     From #Komint Kup
  119059.     Left Outer Join Patnici P On Kup.Sifra_Pat=P.Sifra_Pat
  119060.     Left Outer Join Patnici P2 On Kup.Sifra_Pat2=P2.Sifra_Pat
  119061.     Left Outer Join Grad G On Kup.Sifra_Grad=G.Sifra_Grad
  119062.     Left Outer Join GRegion R On Kup.Sifra_Reg=R.Sifra_Reg
  119063.     Left Outer Join Nivo N On Kup.Sifra_Nivo=N.Sifra_Nivo
  119064.     Left Outer Join KDrugo1 KD1 On Kup.KDrugo1=KD1.Sifra_1K
  119065.     Left Outer Join KDrugo2 KD2 On Kup.KDrugo2=KD2.Sifra_2K
  119066.     Left Outer Join KDrugo3 KD3 On Kup.KDrugo3=KD3.Sifra_3K
  119067.     Left Outer Join KDrugo4 KD4 On Kup.KDrugo4=KD4.Sifra_4K
  119068.     Left Outer Join KDrugo5 KD5 On Kup.KDrugo5=KD5.Sifra_5K
  119069.     Left Outer Join KDrugo6 KD6 On Kup.KDrugo6=KD6.Sifra_6K
  119070.     Left Outer Join KDrugo7 KD7 On Kup.KDrugo7=KD7.Sifra_7K
  119071.     Left Outer Join GTipKup TK On Kup.TipKup=TK.TipKup 
  119072.     Left Outer Join VidProdObj VPJ On VPJ.Sifra_VPJ=Kup.Sifra_VPJ '
  119073.     Set @SSQL = @SSQL + ' Where 1=1 '
  119074.     If @Podred Is Null Or @Podred='S'
  119075.         Set @SSQLUsl = @SSQLUsl + 'Order By Kup.Sifra_Kup '
  119076.     Else If @Podred='I'
  119077.         Set @SSQLUsl = @SSQLUsl + 'Order By Kup.ImeKup '
  119078.     Else If @Podred='G'
  119079.         Set @SSQLUsl = @SSQLUsl + 'Order By Kup.Sifra_Grad '
  119080.     Exec(@SSQL+@SSQLUSL)
  119081.  
  119082.  
  119083. Go
  119084. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkomintobj]'))
  119085. drop procedure [dbo].[sp_pregledkomintobj]
  119086.  
  119087. Go
  119088.  
  119089. CREATE         PROCEDURE sp_PregledKomintObj
  119090.     @Komint_Od Varchar(10),
  119091.     @Komint_Do Varchar(10),
  119092.     @Podelba1 Smallint= Null,
  119093.     @Podelba2 Smallint= Null,
  119094.     @Podelba3 Smallint = Null,
  119095.     @Podelba4 Smallint = Null,
  119096.     @Podelba5 Smallint = Null,
  119097.     @Sifra_Tip Smallint = Null,
  119098.     @Grad Smallint= Null,
  119099.     @Podred Char(1),
  119100.     @SoPromet Char(1) = Null,            --D so promet
  119101.     @Promet_Datum_Od Smalldatetime = Null,
  119102.     @Patnik    Smallint = Null,
  119103.     @TipKup    varchar(11)=Null,
  119104.     @KojaCena    char(1) = Null,
  119105.     @Sifra_reg    smallint = Null,
  119106.     @Sifra_Nivo    Char(2) = Null,
  119107.     @Aktiven    Char(1) = Null,
  119108.     @MozeIsporaka    Char(1) = Null
  119109. AS
  119110.     Declare @SSQL Varchar(8000)
  119111.     Set @SSQL = 'Select Kup.*, KO.Sifra_Obj, KO.ImeObj,
  119112.         P.ImePat, G.ImeGrad, R.ImeRegion, N.ImeNivo,
  119113.         KD1.Ime_1K, KD2.Ime_2K, KD3.Ime_3K, KD4.Ime_4K, KD5.Ime_5K, 
  119114.         TK.ImeTipKup, Kup.KojaCena
  119115.     From Komint Kup
  119116.     Left Outer Join Kobjekti KO On KO.Sifra_Kup=Kup.Sifra_Kup
  119117.     Left Outer Join Patnici P On Kup.Sifra_Pat=P.Sifra_Pat
  119118.     Left Outer Join Grad G On Kup.Sifra_Grad=G.Sifra_Grad
  119119.     Left Outer Join GRegion R On Kup.Sifra_Reg=R.Sifra_Reg
  119120.     Left Outer Join Nivo N On Kup.Sifra_Nivo=N.Sifra_Nivo
  119121.     Left Outer Join KDrugo1 KD1 On Kup.KDrugo1=KD1.Sifra_1K
  119122.     Left Outer Join KDrugo2 KD2 On Kup.KDrugo2=KD2.Sifra_2K
  119123.     Left Outer Join KDrugo3 KD3 On Kup.KDrugo3=KD3.Sifra_3K
  119124.     Left Outer Join KDrugo4 KD4 On Kup.KDrugo4=KD4.Sifra_4K
  119125.     Left Outer Join KDrugo5 KD5 On Kup.KDrugo5=KD5.Sifra_5K
  119126.     Left Outer Join GTipKup TK On Kup.TipKup=TK.TipKup
  119127.     Where 1=1 '
  119128.     If @Komint_Od Is Not Null
  119129.         Set @SSQL = @SSQL + 'And Kup.Sifra_Kup>=''' + @Komint_Od + ''' '
  119130.     If @Komint_Do Is Not Null
  119131.         Set @SSQL = @SSQL + 'And Kup.Sifra_Kup<=''' + @Komint_Do + ''' '
  119132.     If @Podelba1 Is Not NULL
  119133.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Podelba1 As Varchar(6)) + ')
  119134.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Podelba1 As Varchar(6)) + ')) '
  119135.     If @Podelba2 Is Not NULL
  119136.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Podelba2 As Varchar(6)) + ')
  119137.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Podelba2 As Varchar(6)) + ')) '
  119138.     If @Podelba3 Is Not NULL
  119139.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Podelba3 As Varchar(6)) + ')
  119140.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Podelba3 As Varchar(6)) + ')) '
  119141.     If @Podelba4 Is Not NULL
  119142.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Podelba4 As Varchar(6)) + ')
  119143.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Podelba4 As Varchar(6)) + ')) '
  119144.     If @Podelba5 Is Not NULL
  119145.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Podelba5 As Varchar(6)) + ')
  119146.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Podelba5 As Varchar(6)) + ')) '
  119147.     If @Sifra_Tip Is Not NULL
  119148.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Tip Is Not Null And KO.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ')
  119149.                       Or (KO.Sifra_Tip Is Null And Kup.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ')) '
  119150.     If @Grad Is Not NULL
  119151.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad = ' + Cast(@Grad As Varchar(6)) + ')
  119152.                       Or (KO.Sifra_Grad Is Null And Kup.Sifra_Grad = ' + Cast(@Grad As Varchar(6)) + ')) '
  119153.     If @Sifra_Reg Is Not NULL
  119154.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')
  119155.                       Or (KO.Sifra_Reg Is Null And Kup.Sifra_Reg = ' + Cast(@Sifra_Reg As Varchar(6)) + ')) '
  119156.     If @Sifra_Nivo Is Not NULL
  119157.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Nivo Is Not Null And KO.Sifra_Nivo = ' + Cast(@Sifra_Nivo As Varchar(6)) + ')
  119158.                       Or (KO.Sifra_Nivo Is Null And Kup.Sifra_Nivo = ' + Cast(@Sifra_Nivo As Varchar(6)) + ')) '
  119159.     If @Patnik Is Not NULL
  119160.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat = ' + Cast(@Patnik As Varchar(6)) + ')
  119161.                       Or (KO.Sifra_Pat Is Null And Kup.Sifra_Pat = ' + Cast(@Patnik As Varchar(6)) + ')) '
  119162. /*    If @Podelba1 Is Not Null
  119163.         Set @SSQL = @SSQL + 'And Kup.KDrugo1=' + Cast(@Podelba1 As Varchar(10)) + ' '
  119164.     If @Podelba2 Is Not Null
  119165.         Set @SSQL = @SSQL + 'And Kup.KDrugo2=' + Cast(@Podelba2 As Varchar(10)) + ' '
  119166.     If @Podelba3 Is Not Null
  119167.         Set @SSQL = @SSQL + 'And Kup.KDrugo3=' + Cast(@Podelba3 As Varchar(10)) + ' '
  119168.     If @Podelba4 Is Not Null
  119169.         Set @SSQL = @SSQL + 'And Kup.KDrugo4=' + Cast(@Podelba4 As Varchar(10)) + ' '
  119170.     If @Podelba5 Is Not Null
  119171.         Set @SSQL = @SSQL + 'And Kup.KDrugo5=' + Cast(@Podelba5 As Varchar(10)) + ' '
  119172.     If @Sifra_Tip Is Not Null
  119173.         Set @SSQL = @SSQL + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  119174.     If @Grad Is Not Null
  119175.         Set @SSQL = @SSQL + 'And Kup.Sifra_Grad=' + Cast(@Grad As Varchar(10)) + ' '
  119176.     If @Sifra_Reg Is Not Null
  119177.         Set @SSQL = @SSQL + 'And Kup.Sifra_Reg=' + Cast(@Sifra_Reg As Varchar(10)) + ' '
  119178.     If @Sifra_Nivo Is Not Null
  119179.         Set @SSQL = @SSQL + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  119180.     If @Patnik Is Not Null
  119181.         Set @SSQL = @SSQL + 'And Kup.Sifra_Pat=' + Cast(@Patnik As Varchar(10)) + ' '
  119182. */    If @Aktiven = 'N'
  119183.         Set @SSQL = @SSQL + 'And Kup.Aktiven = ''N'' '
  119184.     Else If @Aktiven = 'D'
  119185.         Set @SSQL = @SSQL + 'And (Kup.Aktiven <> ''N'' or Kup.Aktiven Is Null) '
  119186.     If @MozeIsporaka = 'N'
  119187.         Set @SSQL = @SSQL + 'And Kup.MozeIsporaka = ''N'' '
  119188.     Else If @MozeIsporaka = 'D'
  119189.         Set @SSQL = @SSQL + 'And (Kup.MozeIsporaka <> ''N'' or Kup.MozeIsporaka Is Null) '
  119190.     If @TipKup Is Not Null
  119191.         Set @SSQL = @SSQL + 'And TK.TipKup=''' + @TipKup + ''' '
  119192.     If @KojaCena Is Not Null
  119193.         Set @SSQL = @SSQL + 'And Kup.KojaCena =''' + @KojaCena + ''' '
  119194.     If @SoPromet = 'D'
  119195.         Begin
  119196.             Set @SSQL = @SSQL + 'And Kup.Sifra_Kup In
  119197.                 (Select Distinct Sifra_Kup From Dokr'
  119198.             If @Promet_Datum_Od Is Not Null
  119199.                 Set @SSQL = @SSQL + ' Where Datum_Dok>=''' + Cast(@Promet_Datum_Od As Varchar(30)) + ''') '
  119200.             Else
  119201.                 Set @SSQL = @SSQL + ') '
  119202.         End
  119203.     If @Podred Is Null Or @Podred='S'
  119204.         Set @SSQL = @SSQL + 'Order By Kup.Sifra_Kup '
  119205.     Else If @Podred='I'
  119206.         Set @SSQL = @SSQL + 'Order By Kup.ImeKup '
  119207.     Else If @Podred='G'
  119208.         Set @SSQL = @SSQL + 'Order By Kup.Sifra_Grad '
  119209. print (@SSQL)
  119210. Exec(@SSQL)
  119211.  
  119212.  
  119213.  
  119214. Go
  119215. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkomintpat]'))
  119216. drop procedure [dbo].[sp_pregledkomintpat]
  119217.  
  119218. Go
  119219.  
  119220.  
  119221.  
  119222. CREATE           PROCEDURE sp_PregledKomintPat
  119223.     @Komint_Od Varchar(10)=null,
  119224.     @Komint_Do Varchar(10)=null,
  119225.     @Patnik    Smallint = Null
  119226. AS
  119227.     Declare @SSQL Varchar(8000)
  119228.     Set @SSQL = 'Select KP.Sifra_Kup, KP.Sifra_Obj, KP.Sifra_Pat,
  119229.                      K.ImeKup, KO.ImeObj, P.ImePat
  119230.     From KomintPat KP
  119231.         Left Outer Join Komint K On K.Sifra_Kup=KP.Sifra_Kup
  119232.     Left Outer Join KObjekti KO On KO.Sifra_Kup=KP.Sifra_Kup and KO.Sifra_Obj=KP.Sifra_Obj
  119233.     Left Outer Join Patnici P On KP.Sifra_Pat=P.Sifra_Pat
  119234.     Where 1=1 '
  119235.     If @Komint_Od Is Not Null
  119236.         Set @SSQL = @SSQL + 'And KP.Sifra_Kup>=''' + @Komint_Od + ''' '
  119237.     If @Komint_Do Is Not Null
  119238.         Set @SSQL = @SSQL + 'And KP.Sifra_Kup<=''' + @Komint_Do + ''' '
  119239.     If @Patnik Is Not NULL
  119240.         Set @SSQL = @SSQL + ' And KP.Sifra_Pat = ' + Cast(@Patnik As Varchar(6)) + ' '
  119241.     Set @SSQL = @SSQL + 'Order By KP.Sifra_Kup, KP.Sifra_Obj '
  119242.     
  119243. print (@SSQL)
  119244. Exec(@SSQL)
  119245.  
  119246.  
  119247.  
  119248.  
  119249.  
  119250. Go
  119251. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkorisnici]'))
  119252. drop procedure [dbo].[sp_pregledkorisnici]
  119253.  
  119254. Go
  119255.  
  119256.  
  119257. CREATE       PROCEDURE sp_PregledKorisnici
  119258.     @Sifra_Oe        smallint,
  119259.     @KoiOe        char(6)=NULL,
  119260.     @Sifra_Kup        char(6)=NULL,
  119261.     @Aktiven        char(1)=NULL,
  119262.     @Podred        char(1)='S',
  119263.     @Sifra_TipKartKor    smallint = Null,
  119264.     @Sifra_Kor_Od        varchar(20) = Null,
  119265.     @Sifra_Kor_Do        varchar(20) = Null,
  119266.     @Dat_Zacl_Od        smalldatetime = Null,
  119267.     @Dat_Zacl_Do        smalldatetime = Null,
  119268.     @KorSoPromet        char(1) = 'S',        -- S - Site,   P - So Promet,   N - Bez Promet
  119269.     @Dat_Promet_Od    smalldatetime = Null,
  119270.     @Dat_Promet_Do    smalldatetime = Null,
  119271.     @Den_Raganje_Od     smallint = Null,
  119272.     @Den_Raganje_Do     smallint = Null,
  119273.     @Mesec_Raganje_Od    smallint = Null,
  119274.     @Mesec_Raganje_Do    smallint = Null,
  119275.     @Promet_Od        decimal(18,6) = Null,
  119276.     @Promet_Do        decimal(18,6) = Null
  119277. AS
  119278.     Declare @SSQL as varchar(8000)
  119279.     Declare @SSQLUsl as varchar(8000)
  119280.     Set @SSQLUsl = ' '
  119281.  
  119282.     If @Sifra_Oe Is Not Null
  119283.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' ' 
  119284.     If @KoiOE Is Not NULL
  119285.              Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @KoiOe  +  ''') '
  119286. --    If @Sifra_Kup Is Not Null                                    -- go smenavme sekogass da gleda od Prometot 
  119287. --        Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kup = ''' + @Sifra_Kup + ''' '        -- ako korisnikot ja smeni firmata
  119288. --    If @Sifra_Kup Is Not Null     
  119289. --        Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  119290.     If @Aktiven Is Not Null
  119291.         Set @SSQLUsl  = @SSQLUsl + ' And K.Aktiven = ''' + @Aktiven + ''' '
  119292.     If @Sifra_TipKartKor Is Not Null
  119293.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_TipKartKor = ' + cast(@Sifra_TipKartKor as varchar(6)) + ' ' 
  119294.     If @Sifra_Kor_Od Is Not Null
  119295.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kor >= ''' + @Sifra_Kor_Od + ''' '    
  119296.     If @Sifra_Kor_Do Is Not Null
  119297.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kor <= ''' + @Sifra_Kor_Do + ''' '    
  119298.     If @Dat_Zacl_Od Is Not Null
  119299.         Set @SSQLUsl  = @SSQLUsl + ' And K.DodadenNa >= ''' + Cast(@Dat_Zacl_Od as varchar(30)) + ''' '    
  119300.     If @Dat_Zacl_Do Is Not Null
  119301.         Set @SSQLUsl  = @SSQLUsl + ' And K.DodadenNa < ''' + Cast(@Dat_Zacl_Do + 1 as varchar(30)) + ''' '    
  119302.     If @Den_Raganje_Od Is Not Null
  119303.         Set @SSQLUsl  = @SSQLUsl + ' And IsNumeric(Substring(K.LK,1,2))=1 And (Case When IsNumeric(Substring(K.LK,1,2))=1 Then Cast(Substring(K.LK,1,2) as smallint) Else 0 End) >= ' + Cast(@Den_Raganje_Od as varchar(2)) + ' '    
  119304.     If @Den_Raganje_Do Is Not Null
  119305.         Set @SSQLUsl  = @SSQLUsl + ' And IsNumeric(Substring(K.LK,1,2))=1 And (Case When IsNumeric(Substring(K.LK,1,2))=1 Then Cast(Substring(K.LK,1,2) as smallint) Else 32 End) <= ' + Cast(@Den_Raganje_Do as varchar(2)) + ' '    
  119306.     If @Mesec_Raganje_Od Is Not Null
  119307.         Set @SSQLUsl  = @SSQLUsl + ' And IsNumeric(Substring(K.LK,1,2))=1 And (Case When IsNumeric(Substring(K.LK,3,2))=1 Then Cast(Substring(K.LK,3,2) as smallint) Else 0 End) >= ' + Cast(@Mesec_Raganje_Od as varchar(2)) + ' '    
  119308.     If @Mesec_Raganje_Do Is Not Null
  119309.         Set @SSQLUsl  = @SSQLUsl + ' And IsNumeric(Substring(K.LK,1,2))=1 And (Case When IsNumeric(Substring(K.LK,3,2))=1 Then Cast(Substring(K.LK,3,2) as smallint) Else 13 End) <= ' + Cast(@Mesec_Raganje_Do as varchar(2)) + ' '    
  119310.  
  119311.     If @KorSoPromet In ('P', 'N') Or @Dat_Promet_Od Is Not Null Or @Dat_Promet_Do Is Not Null Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  119312.     Begin
  119313.         Create Table #KorPromet
  119314.         (
  119315.          Sifra_Kor    varchar(20),
  119316.          Promet        decimal(18,6)
  119317.         )
  119318.         Set @SSQL = 'Select P.Sifra_Kor, Sum(Dolzi) 
  119319.                 From KartProm P
  119320.                 Inner Join KartKor K On K.Sifra_Kor=P.Sifra_Kor
  119321.                 Where 1=1 '
  119322.         If @Dat_Promet_Od Is Not Null
  119323.             Set @SSQL  = @SSQL + ' And P.Datum_Ska >= ''' + Cast(@Dat_Promet_Od as varchar(30)) + ''' '    
  119324.         If @Dat_Promet_Do Is Not Null
  119325.             Set @SSQL  = @SSQL + ' And P.Datum_Ska <= ''' + Cast(@Dat_Promet_Do as varchar(30)) + ''' '    
  119326.         If @Sifra_Kup Is Not Null    
  119327.             Set @SSQL = @SSQL + ' And P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  119328.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By P.Sifra_Kor '
  119329.  
  119330.         If @KorSoPromet In ('P', 'N') Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  119331.             Set @SSQL = @SSQL + ' Having 1=1 '
  119332.         If @Promet_Od Is Not Null
  119333.             Set @SSQL = @SSQL + ' And Sum(Dolzi) >= ' + Cast(@Promet_Od as varchar(20)) + ' '
  119334.         If @Promet_Do Is Not Null
  119335.             Set @SSQL = @SSQL + ' And Sum(Dolzi) <= ' + Cast(@Promet_Do as varchar(20)) + ' '
  119336.         If @KorSoPromet = 'P'
  119337.             Set @SSQL = @SSQL + ' And Sum(Dolzi) >= 0 '
  119338.         If @KorSoPromet = 'N'
  119339.             Set @SSQL = @SSQL + ' And Sum(Dolzi) = 0 '
  119340.         Insert Into #KorPromet Exec(@SSQL)
  119341.     End
  119342.  
  119343.     Set @SSQL = ' Select K.Sifra_Oe, O.ImeOrg, K.Sifra_Kor, K.ImeKor, K.SMesto, K.Adresa, K.Posta, K.Telefon, K.LK, K.Aktiven, K.Novi_Limi, K.Sifra_Kup, KUP.ImeKup,
  119344.                 K.Sifra_TipKartKor, K.Poc_Popust, TK.Fix_Popust, K.DodadenNa, K.EMail, '
  119345.     If @KorSoPromet In ('P', 'N') Or @Dat_Promet_Od Is Not Null Or @Dat_Promet_Do Is Not Null Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  119346.         Set @SSQL = @SSQL + ' KP.Promet '
  119347.     Else 
  119348.         Set @SSQL = @SSQL + ' Null Promet '
  119349.     Set @SSQL = @SSQL + ' From KartKor K
  119350.                   Inner join Komint KUP on K.Sifra_Kup = Kup.Sifra_Kup
  119351.                   Inner join Orged O On O.Sifra_Oe = K.Sifra_Oe
  119352.                   Left Outer Join TipKartKor TK On TK.Sifra_TipKArtKor=K.Sifra_TipKartKor '
  119353.     If @KorSoPromet In ('P', 'N') Or @Dat_Promet_Od Is Not Null Or @Dat_Promet_Do Is Not Null Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  119354.         Set @SSQL = @SSQL + ' Inner Join #KorPromet KP On KP.Sifra_Kor=K.Sifra_Kor '
  119355.     Set @SSQL = @SSQL + ' Where 1=1 ' + @SSQLUsl
  119356.  
  119357.     If @KorSoPromet Not In ('P','N') And @Sifra_Kup Is Not Null      -- dokolku barame izvesstaj so promet togass filterot go gledame od prometot  (pogore Inner Join)
  119358.         Set @SSQL = @SSQL + ' And K.Sifra_Kup = ''' + @Sifra_Kup + ''' '   -- ako barame samo pregled na korisnici bez promet togass filterot go gledame od KartKor
  119359.  
  119360.     If @Podred = 'S'
  119361.         Set @SSQL = @SSQL + ' Order By K.Sifra_Kor, K.Sifra_Oe '
  119362.     Else If @Podred = 'A'
  119363.         Set @SSQL  = @SSQL +  ' Order By K.ImeKor, K.Sifra_Oe '
  119364.     Else If @Podred = 'K'
  119365.         Set @SSQL  = @SSQL +  ' Order By K.Sifra_Kup '
  119366.     Exec (@SSQL)
  119367.  
  119368.  
  119369.  
  119370. Go
  119371. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkorisnici_beztipkor_limit]'))
  119372. drop procedure [dbo].[sp_pregledkorisnici_beztipkor_limit]
  119373.  
  119374. Go
  119375. CREATE PROCEDURE sp_PregledKorisnici_BezTipKor_Limit
  119376.     @Sifra_Kor_Od        varchar(20),
  119377.     @Sifra_Kor_Do        varchar(20),
  119378.     @Sifra_Kup        char(6)
  119379. AS
  119380.     Declare @SSQL as varchar(8000)
  119381.     Set @SSQL = 'Select K.Sifra_Kor, K.ImeKor, K.Novi_Limi, K.Sifra_TipKartKor, TK.ImeKartKor
  119382.             From KartKor K
  119383.             Left Outer Join TipKartKor TK On TK.Sifra_TipKartKor=K.Sifra_TipKartKor
  119384.             Where (K.Novi_Limi <=0 Or K.Sifra_TipKartKor Is Null) '
  119385.     If @Sifra_Kor_Od Is Not Null
  119386.         Set @SSQL = @SSQL + ' And K.Sifra_Kor >= ''' + @Sifra_Kor_Od + ''' '
  119387.     If @Sifra_Kor_Do Is Not Null
  119388.         Set @SSQL = @SSQL + ' And K.Sifra_Kor <= ''' + @Sifra_Kor_Do + ''' '
  119389.     If @Sifra_Kup Is Not Null
  119390.         Set @SSQL = @SSQL + ' And K.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  119391.     Exec(@SSQL)
  119392.  
  119393.  
  119394. Go
  119395. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkrediti]'))
  119396. drop procedure [dbo].[sp_pregledkrediti]
  119397.  
  119398. Go
  119399.  
  119400.  
  119401. CREATE      Procedure sp_PregledKrediti
  119402.     @Sifra_oe smallint= null,
  119403.     @Sifra_Kor varchar(20)=null,
  119404.     @DatumOd smalldatetime =null,
  119405.     @DatumDo smalldatetime=null,
  119406.     @Nacin_Presm smallint=null,
  119407.     @Status_kredit nvarchar(30)=null,
  119408.     @Tip_posl_Opomena nvarchar(30)=null,
  119409.     @DatumOpomenaOd smalldatetime=null,
  119410.     @DatumOpomenaDo smalldatetime=null,
  119411.     @DatumSudOd smalldatetime=null,
  119412.     @DatumSudDo smalldatetime=null, 
  119413.     @DatumOdzemenoOd smalldatetime=null,
  119414.     @DatumOdzemenoDo smalldatetime=null    
  119415.  
  119416. As
  119417.  
  119418.     Declare @SSQL as varchar(6000)
  119419.  
  119420.     Set @SSQL= 'Select K.Sifra_Oe, K.Broj_Kredit, K.Datum_Kredit, K.DatumPoc_Kredit, 
  119421.             K.Sifra_Kor, K.Broj_Rati, KK.ImeKor, S.ImeStatusKredit, T.ImeTipOpomena,
  119422.             sum(KTRA.Dolzi) VkDolzi, sum(KTRA.Pobaruva) VkPobaruva
  119423.         From Kredit K
  119424.     Left Outer Join KreditTransakc KTRA 
  119425.         on K.Sifra_Oe = KTRA.Sifra_Oe and K.Broj_Kredit = KTRA.Broj_Kredit
  119426.         Left Outer Join KartKor KK on K.Sifra_kor=KK.Sifra_Kor
  119427.         Left Outer Join KreditStatus S on K.Status_Kredit=S.Status_kredit
  119428.         Left Outer Join KreditTipOpomena T on K.Tip_posl_Opomena=T.Tip_Opomena
  119429.         Where 1 = 1    '
  119430.    If @Sifra_Oe Is Not Null
  119431.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  119432.    If @Sifra_Kor Is Not Null
  119433.         Set @SSQL = @SSQL + ' And K.Sifra_Kor = ''' + Cast(@Sifra_Kor as varchar(10)) + ''' ' 
  119434.    If @DatumOd Is Not Null
  119435.         Set @SSQL = @SSQL + ' And K.Datum_kredit>=''' + Cast(@DatumOd As Varchar(35)) + ''' '
  119436.    If @DatumDo Is Not Null
  119437.         Set @SSQL = @SSQL + ' And K.Datum_kredit<=''' + Cast(@DatumDo As Varchar(35)) + ''' '
  119438.    If @Nacin_Presm Is Not Null
  119439.         Set @SSQL = @SSQL + ' And K.Nacin_Presm = ' + Cast(@Nacin_Presm as varchar(10)) + ' '
  119440.    If @Status_kredit Is Not Null
  119441.         Set @SSQL = @SSQL + ' And case when K.Status_Kredit is null then 1 else K.Status_Kredit end In (' + Cast(@Status_kredit as varchar(10)) + ') '
  119442.    If @Tip_Posl_Opomena Is Not Null
  119443.         Set @SSQL = @SSQL + ' And K.Tip_Posl_Opomena in ( ' + Cast(@Tip_Posl_Opomena as varchar(10)) + ') '
  119444.    If @DatumOpomenaOd Is Not Null
  119445.         Set @SSQL = @SSQL + ' And K.Datum_Posl_Opomena>=''' + Cast(@DatumOpomenaOd As Varchar(35)) + ''' '
  119446.    If @DatumOpomenaDo Is Not Null
  119447.         Set @SSQL = @SSQL + ' And K.Datum_posl_Opomena<=''' + Cast(@DatumOpomenaDo As Varchar(35)) + ''' '
  119448.    If @DatumSudOd Is Not Null
  119449.         Set @SSQL = @SSQL + ' And K.Datum_Sud >=''' + Cast(@DatumSudOd As Varchar(35)) + ''' '
  119450.    If @DatumSudDo Is Not Null
  119451.         Set @SSQL = @SSQL + ' And K.Datum_Sud <=''' + Cast(@DatumSudDo As Varchar(35)) + ''' '
  119452.    If @DatumOdzemenoOd Is Not Null
  119453.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno >=''' + Cast(@DatumOdzemenoOd As Varchar(35)) + ''' '
  119454.    If @DatumOdzemenoDo Is Not Null
  119455.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno <=''' + Cast(@DatumOdzemenoDo As Varchar(35)) + ''' '
  119456.  
  119457.    Set @SSQL = @SSQL + ' group by K.Sifra_Oe, K.Broj_Kredit, K.Datum_Kredit, K.DatumPoc_Kredit, 
  119458.             K.Sifra_Kor, K.Broj_Rati, KK.ImeKor, S.ImeStatusKredit, T.ImeTipOpomena '
  119459.  
  119460.    exec(@SSQL)
  119461.  
  119462.  
  119463.  
  119464.  
  119465.  
  119466.  
  119467.  
  119468. Go
  119469. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkrediti_opomena]'))
  119470. drop procedure [dbo].[sp_pregledkrediti_opomena]
  119471.  
  119472. Go
  119473. CREATE    Procedure [dbo].[sp_PregledKrediti_Opomena]
  119474.     @Sifra_Oe smallint= null,
  119475.     @Sifra_Kor varchar(20)=null,
  119476.     @DatumOd smalldatetime =null,
  119477.     @DatumDo smalldatetime=null,
  119478.     @Nacin_Presm smallint=null,
  119479.     @Status_Kredit nvarchar(30)=null,
  119480.     @Tip_posl_Opomena nvarchar(30)=null,
  119481.     @DatumOpomenaOd smalldatetime=null,
  119482.     @DatumOpomenaDo smalldatetime=null,
  119483.     @DatumSudOd smalldatetime=null,
  119484.     @DatumSudDo smalldatetime=null, 
  119485.     @DatumOdzemenoOd smalldatetime=null,
  119486.     @DatumOdzemenoDo smalldatetime=null,
  119487.     @Broj_Kredit int=null,
  119488.     @DatumPresmetka smalldatetime = Null
  119489. As
  119490.     Declare @SSQL as varchar(6000)
  119491.      
  119492.     Set @SSQL= ' Select K.Sifra_oe, K.Broj_kredit, K.Sifra_kor, K.Datum_kredit, K.DatumPoc_Kredit, K.Broj_rati, K.VkupenProcKam, K.Nacin_Presm, 
  119493.             K.VkupnaGlavnica, K.VkupnaKamata, K.PlatenoVednas, K.PlatenoRati, K.Kurs, K.OpisKredit, K.Status_kredit, K.Datum_sud, 
  119494.             K.Datum_Posl_opomena, K.Tip_posl_Opomena, K.Datum_Odzemeno, K.ProcKam, K.Datum_Status,
  119495.             Sum(Case When KTRA.Datum_Dosp<= ''' + Cast(@DatumPresmetka as varchar(30)) + ''' Then KTRA.Dolzi Else 0 End) DospDolzi,
  119496.             Sum(Pobaruva) VkPobaruva,
  119497.             O.ImeOrg, KK.ImeKor, S.ImeStatusKredit, T.ImeTipOpomena,
  119498.             KK.Sifra_Kup, KK.SMesto, KK.Adresa, KK.Posta, KK.Telefon, KK.LK, Kom.ImeKup 
  119499.     From Kredit K
  119500.     Left Outer Join KreditTransakc KTRA on K.Sifra_Oe = KTRA.Sifra_Oe and K.Broj_Kredit = KTRA.Broj_Kredit
  119501.     Left Outer Join OrgEd O on K.Sifra_Oe=O.Sifra_Oe
  119502.     Left Outer Join KartKor KK on K.Sifra_kor=KK.Sifra_Kor
  119503.     Left Outer Join Komint Kom on KK.Sifra_Kup=Kom.Sifra_Kup
  119504.     Left Outer Join KreditStatus S on K.Status_Kredit=S.Status_Kredit
  119505.     Left Outer Join KreditTipOpomena T on K.Tip_posl_Opomena=T.Tip_Opomena
  119506.     Where 1=1 ' --(KTRA.Dolzi <> 0 or KTRA.Dolzi is null) '
  119507.  
  119508.     If @Sifra_Oe Is Not Null
  119509.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  119510.     If @Sifra_Kor Is Not Null
  119511.         Set @SSQL = @SSQL + ' And K.Sifra_Kor = ''' + Cast(@Sifra_Kor as varchar(10)) + ''' ' 
  119512.     If @DatumOd Is Not Null
  119513.         Set @SSQL = @SSQL + ' And K.Datum_Kredit>=''' + Cast(@DatumOd As Varchar(35)) + ''' '
  119514.     If @DatumDo Is Not Null
  119515.         Set @SSQL = @SSQL + ' And K.Datum_Kredit<=''' + Cast(@DatumDo As Varchar(35)) + ''' '
  119516.     If @Nacin_Presm Is Not Null
  119517.         Set @SSQL = @SSQL + ' And K.Nacin_Presm = ' + Cast(@Nacin_Presm as varchar(10)) + ' '
  119518.     If @Status_kredit Is Not Null
  119519.         Set @SSQL = @SSQL + ' And K.Status_Kredit In (' + Cast(@Status_kredit as varchar(10)) + ') '
  119520.     If @Tip_Posl_Opomena Is Not Null
  119521.         Set @SSQL = @SSQL + ' And K.Tip_Posl_Opomena in ( ' + Cast(@Tip_Posl_Opomena as varchar(10)) + ') '
  119522.     If @DatumOpomenaOd Is Not Null
  119523.         Set @SSQL = @SSQL + ' And K.Datum_Posl_Opomena>=''' + Cast(@DatumOpomenaOd As Varchar(35)) + ''' '
  119524.     If @DatumOpomenaDo Is Not Null
  119525.         Set @SSQL = @SSQL + ' And K.Datum_posl_Opomena<=''' + Cast(@DatumOpomenaDo As Varchar(35)) + ''' '
  119526.     If @DatumSudOd Is Not Null
  119527.         Set @SSQL = @SSQL + ' And K.Datum_Sud >=''' + Cast(@DatumSudOd As Varchar(35)) + ''' '
  119528.     If @DatumSudDo Is Not Null
  119529.         Set @SSQL = @SSQL + ' And K.Datum_Sud <=''' + Cast(@DatumSudDo As Varchar(35)) + ''' '
  119530.     If @DatumOdzemenoOd Is Not Null
  119531.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno >=''' + Cast(@DatumOdzemenoOd As Varchar(35)) + ''' '
  119532.     If @DatumOdzemenoDo Is Not Null
  119533.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno <=''' + Cast(@DatumOdzemenoDo As Varchar(35)) + ''' '
  119534.     If @Broj_Kredit Is Not Null
  119535.         Set @SSQL = @SSQL + ' And K.Broj_Kredit = ' + Cast(@Broj_Kredit as varchar(10)) + ' '
  119536.     Set @SSQL = @SSQL + ' Group By K.Sifra_oe, K.Broj_kredit, K.Sifra_kor, K.Datum_kredit, K.DatumPoc_Kredit, K.Broj_rati, K.VkupenProcKam, K.Nacin_Presm, 
  119537.             K.VkupnaGlavnica, K.VkupnaKamata, K.PlatenoVednas, K.PlatenoRati, K.Kurs, K.OpisKredit, K.Status_kredit, K.Datum_sud, 
  119538.             K.Datum_Posl_opomena, K.Tip_posl_Opomena, K.Datum_Odzemeno, K.ProcKam, K.Datum_Status,
  119539.             O.ImeOrg, KK.ImeKor, S.ImeStatusKredit, T.ImeTipOpomena,
  119540.             KK.Sifra_Kup, KK.SMesto, KK.Adresa, KK.Posta, KK.Telefon, KK.LK, Kom.ImeKup 
  119541.         Having Sum(Case When KTRA.Datum_Dosp<= ''' + Cast(@DatumPresmetka as varchar(30)) + ''' Then KTRA.Dolzi Else 0 End) - Sum(Pobaruva) > 0 '
  119542. print @SSQL
  119543.     Exec(@SSQL)
  119544.  
  119545. Go
  119546. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkrediti_opsiren]'))
  119547. drop procedure [dbo].[sp_pregledkrediti_opsiren]
  119548.  
  119549. Go
  119550.  
  119551. CREATE  Procedure sp_PregledKrediti_Opsiren
  119552.     @Sifra_oe smallint= null,
  119553.     @Sifra_Kor varchar(20)=null,
  119554.     @DatumOd smalldatetime =null,
  119555.     @DatumDo smalldatetime=null,
  119556.     @Nacin_Presm smallint=null,
  119557.     @Status_kredit nvarchar(30)=null,
  119558.     @Tip_posl_Opomena nvarchar(30)=null,
  119559.     @DatumOpomenaOd smalldatetime=null,
  119560.     @DatumOpomenaDo smalldatetime=null,
  119561.     @DatumSudOd smalldatetime=null,
  119562.     @DatumSudDo smalldatetime=null, 
  119563.     @DatumOdzemenoOd smalldatetime=null,
  119564.     @DatumOdzemenoDo smalldatetime=null    
  119565.  
  119566. As
  119567.  
  119568.     Declare @SSQL as varchar(6000)
  119569.  
  119570.     Set @SSQL= 'Select K.Sifra_Oe, K.Broj_Kredit, K.Datum_Kredit, K.DatumPoc_Kredit, 
  119571.             K.Sifra_Kor, K.Broj_Rati, KK.ImeKor, S.ImeStatusKredit, T.ImeTipOpomena,
  119572.             sum(KTRA.Dolzi) VkDolzi, sum(KTRA.Pobaruva) VkPobaruva,
  119573.             K.VkupenProcKam, K.Nacin_Presm, K.VkupnaGlavnica, K.VkupnaKamata,
  119574.             K.PlatenoVednas, K.PlatenoRati, K.Kurs, K.OpisKredit, K.Status_Kredit,
  119575.             K.Datum_Sud, K.Datum_Posl_Opomena, K.Datum_Odzemeno, K.ProcKam, K.Datum_Status
  119576.         From Kredit K
  119577.     Left Outer Join KreditTransakc KTRA 
  119578.         on K.Sifra_Oe = KTRA.Sifra_Oe and K.Broj_Kredit = KTRA.Broj_Kredit
  119579.         Left Outer Join KartKor KK on K.Sifra_kor=KK.Sifra_Kor
  119580.         Left Outer Join KreditStatus S on K.Status_Kredit=S.Status_kredit
  119581.         Left Outer Join KreditTipOpomena T on K.Tip_posl_Opomena=T.Tip_Opomena
  119582.         Where 1 = 1    '
  119583.    If @Sifra_Oe Is Not Null
  119584.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  119585.    If @Sifra_Kor Is Not Null
  119586.         Set @SSQL = @SSQL + ' And K.Sifra_Kor = ''' + Cast(@Sifra_Kor as varchar(10)) + ''' ' 
  119587.    If @DatumOd Is Not Null
  119588.         Set @SSQL = @SSQL + ' And K.Datum_kredit>=''' + Cast(@DatumOd As Varchar(35)) + ''' '
  119589.    If @DatumDo Is Not Null
  119590.         Set @SSQL = @SSQL + ' And K.Datum_kredit<=''' + Cast(@DatumDo As Varchar(35)) + ''' '
  119591.    If @Nacin_Presm Is Not Null
  119592.         Set @SSQL = @SSQL + ' And K.Nacin_Presm = ' + Cast(@Nacin_Presm as varchar(10)) + ' '
  119593.    If @Status_kredit Is Not Null
  119594.         Set @SSQL = @SSQL + ' And case when K.Status_Kredit is null then 1 else K.Status_Kredit end In (' + Cast(@Status_kredit as varchar(10)) + ') '
  119595.    If @Tip_Posl_Opomena Is Not Null
  119596.         Set @SSQL = @SSQL + ' And K.Tip_Posl_Opomena in ( ' + Cast(@Tip_Posl_Opomena as varchar(10)) + ') '
  119597.    If @DatumOpomenaOd Is Not Null
  119598.         Set @SSQL = @SSQL + ' And K.Datum_Posl_Opomena>=''' + Cast(@DatumOpomenaOd As Varchar(35)) + ''' '
  119599.    If @DatumOpomenaDo Is Not Null
  119600.         Set @SSQL = @SSQL + ' And K.Datum_posl_Opomena<=''' + Cast(@DatumOpomenaDo As Varchar(35)) + ''' '
  119601.    If @DatumSudOd Is Not Null
  119602.         Set @SSQL = @SSQL + ' And K.Datum_Sud >=''' + Cast(@DatumSudOd As Varchar(35)) + ''' '
  119603.    If @DatumSudDo Is Not Null
  119604.         Set @SSQL = @SSQL + ' And K.Datum_Sud <=''' + Cast(@DatumSudDo As Varchar(35)) + ''' '
  119605.    If @DatumOdzemenoOd Is Not Null
  119606.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno >=''' + Cast(@DatumOdzemenoOd As Varchar(35)) + ''' '
  119607.    If @DatumOdzemenoDo Is Not Null
  119608.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno <=''' + Cast(@DatumOdzemenoDo As Varchar(35)) + ''' '
  119609.  
  119610.    Set @SSQL = @SSQL + ' group by K.Sifra_Oe, K.Broj_Kredit, K.Datum_Kredit, K.DatumPoc_Kredit, 
  119611.             K.Sifra_Kor, K.Broj_Rati, KK.ImeKor, S.ImeStatusKredit, T.ImeTipOpomena,
  119612.             K.VkupenProcKam, K.Nacin_Presm, K.VkupnaGlavnica, K.VkupnaKamata,
  119613.             K.PlatenoVednas, K.PlatenoRati, K.Kurs, K.OpisKredit, K.Status_Kredit,
  119614.             K.Datum_Sud, K.Datum_Posl_Opomena, K.Datum_Odzemeno, K.ProcKam, K.Datum_Status '
  119615.  
  119616.    exec(@SSQL)
  119617.  
  119618.  
  119619.  
  119620.  
  119621. Go
  119622. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledkrediti_rati]'))
  119623. drop procedure [dbo].[sp_pregledkrediti_rati]
  119624.  
  119625. Go
  119626.  
  119627. CREATE     Procedure [dbo].[sp_PregledKrediti_Rati]
  119628.     @Sifra_oe smallint= null,
  119629.     @Sifra_Kor varchar(20)=null,
  119630.     @DatumOd smalldatetime =null,
  119631.     @DatumDo smalldatetime=null,
  119632.     @Nacin_Presm smallint=null,
  119633.     @Status_kredit nvarchar(30)=null,
  119634.     @Tip_posl_Opomena nvarchar(30)=null,
  119635.     @DatumOpomenaOd smalldatetime=null,
  119636.     @DatumOpomenaDo smalldatetime=null,
  119637.     @DatumSudOd smalldatetime=null,
  119638.     @DatumSudDo smalldatetime=null, 
  119639.     @DatumOdzemenoOd smalldatetime=null,
  119640.     @DatumOdzemenoDo smalldatetime=null,
  119641.     @Broj_Kredit int=null
  119642. As
  119643.     Declare @SSQL as varchar(6000)
  119644.     Set @SSQL= 'Select K.*, O.ImeOrg, KK.ImeKor, S.ImeStatusKredit, T.ImeTipOpomena,
  119645.             KTRA.Rbr_KreditTrans, KTRA.Dolzi, KTRA.Pobaruva, KTRA.Datum_Dosp, KTRA.Kurs KursTra,
  119646.             KTRA.Plateno_Dolzi, KTRA.Plateno_Pobaruva, KTra.Datum_Kontra,  
  119647.             KK.Sifra_Kup, KK.SMesto, KK.Adresa, KK.Posta, KK.Telefon, KK.LK, Kom.ImeKup 
  119648.     From Kredit K
  119649.     Left Outer Join KreditTransakc KTRA on K.Sifra_Oe = KTRA.Sifra_Oe and K.Broj_Kredit = KTRA.Broj_Kredit
  119650.     Left Outer Join OrgEd O on K.Sifra_Oe=O.Sifra_Oe
  119651.     Left Outer Join KartKor KK on K.Sifra_kor=KK.Sifra_Kor
  119652.     Left Outer Join Komint Kom on KK.Sifra_Kup=Kom.Sifra_Kup
  119653.     Left Outer Join KreditStatus S on K.Status_Kredit=S.Status_Kredit
  119654.     Left Outer Join KreditTipOpomena T on K.Tip_posl_Opomena=T.Tip_Opomena
  119655.     Where (KTRA.Dolzi <> 0 or KTRA.Dolzi is null) '
  119656.  
  119657.     If @Sifra_Oe Is Not Null
  119658.         Set @SSQL = @SSQL + ' And K.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  119659.     If @Sifra_Kor Is Not Null
  119660.         Set @SSQL = @SSQL + ' And K.Sifra_Kor = ''' + Cast(@Sifra_Kor as varchar(10)) + ''' ' 
  119661.     If @DatumOd Is Not Null
  119662.         Set @SSQL = @SSQL + ' And K.Datum_Kredit>=''' + Cast(@DatumOd As Varchar(35)) + ''' '
  119663.     If @DatumDo Is Not Null
  119664.         Set @SSQL = @SSQL + ' And K.Datum_Kredit<=''' + Cast(@DatumDo As Varchar(35)) + ''' '
  119665.     If @Nacin_Presm Is Not Null
  119666.         Set @SSQL = @SSQL + ' And K.Nacin_Presm = ' + Cast(@Nacin_Presm as varchar(10)) + ' '
  119667.     If @Status_kredit Is Not Null
  119668.         Set @SSQL = @SSQL + ' And case when K.Status_Kredit is null then 1 else K.Status_Kredit end In (' + Cast(@Status_kredit as varchar(10)) + ') '
  119669.     If @Tip_Posl_Opomena Is Not Null
  119670.         Set @SSQL = @SSQL + ' And K.Tip_Posl_Opomena in ( ' + Cast(@Tip_Posl_Opomena as varchar(10)) + ') '
  119671.     If @DatumOpomenaOd Is Not Null
  119672.         Set @SSQL = @SSQL + ' And K.Datum_Posl_Opomena>=''' + Cast(@DatumOpomenaOd As Varchar(35)) + ''' '
  119673.     If @DatumOpomenaDo Is Not Null
  119674.         Set @SSQL = @SSQL + ' And K.Datum_posl_Opomena<=''' + Cast(@DatumOpomenaDo As Varchar(35)) + ''' '
  119675.     If @DatumSudOd Is Not Null
  119676.         Set @SSQL = @SSQL + ' And K.Datum_Sud >=''' + Cast(@DatumSudOd As Varchar(35)) + ''' '
  119677.     If @DatumSudDo Is Not Null
  119678.         Set @SSQL = @SSQL + ' And K.Datum_Sud <=''' + Cast(@DatumSudDo As Varchar(35)) + ''' '
  119679.     If @DatumOdzemenoOd Is Not Null
  119680.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno >=''' + Cast(@DatumOdzemenoOd As Varchar(35)) + ''' '
  119681.     If @DatumOdzemenoDo Is Not Null
  119682.         Set @SSQL = @SSQL + ' And K.Datum_Odzemeno <=''' + Cast(@DatumOdzemenoDo As Varchar(35)) + ''' '
  119683.     If @Broj_Kredit Is Not Null
  119684.         Set @SSQL = @SSQL + ' And K.Broj_Kredit = ' + Cast(@Broj_Kredit as varchar(10)) + ' '
  119685.     Exec(@SSQL)
  119686.  
  119687.  
  119688. Go
  119689. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledmikrolok]'))
  119690. drop procedure [dbo].[sp_pregledmikrolok]
  119691.  
  119692. Go
  119693.  
  119694. CREATE  PROCEDURE sp_PregledMikroLok
  119695.     @Sifra_Lok        varchar(3)= null,
  119696.     @Sifra_MakroLok    varchar(10)=  null
  119697.  AS
  119698.     Declare @SSQL as varchar(8000)
  119699.     Set @SSQL = ' Select MikL.*, MakL.Ime_MakLok, L.ImeLok
  119700.             From MikroLok MikL
  119701.             Left Outer Join MakroLok MakL On MakL.Sifra_MakLok=MikL.Sifra_MakLok
  119702.             Left Outer Join Lokacija L On L.Sifra_Lok=MakL.Sifra_Lok
  119703.             Where 1=1 '
  119704.     If @Sifra_Lok Is Not Null
  119705.         Set @SSQL = @SSQL + ' And MakL.Sifra_Lok = ''' + @Sifra_Lok + ''' ' 
  119706.     If @Sifra_MakroLok Is Not Null
  119707.         Set @SSQL = @SSQL + ' And MikL.Sifra_MakLok = ''' + @Sifra_MakroLok + ''' ' 
  119708.     Exec(@SSQL)
  119709.  
  119710.  
  119711.  
  119712. Go
  119713. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglednadokumenti]'))
  119714. drop procedure [dbo].[sp_preglednadokumenti]
  119715.  
  119716. Go
  119717.  
  119718. CREATE  PROCEDURE sp_PregledNaDokumenti
  119719.     @Sifra_OE    smallint,
  119720.     @Sifra_Dok    smallint,
  119721.     @Datum_Od    smalldatetime,
  119722.     @Datum_Do    smalldatetime
  119723. AS
  119724.     Declare @SSQL As Varchar(2000)
  119725.     Set @SSQL='Select D.Datum_Dok, S.Broj_Dok, S.Sifra_Dok, Sum(S.Kolic*S.DokCena) PoDokCena,
  119726.         Sum(S.Kolic*K.DogCena) PoDogCena, Sum(S.Kolic*K.MalCena) PoMalCena,
  119727.         D.Sifra_kup, KUP.ImeKup, D.Sifra_OE, D.Identif_Br
  119728.     From Dokr D
  119729.     Inner Join Stavr S On S.DokrID=D.DokrID
  119730.     Inner Join Katart K On K.Sifra_Art=S.Sifra_Art 
  119731.     Left Outer Join Komint KUP On KUP.Sifra_Kup=D.Sifra_Kup
  119732.     Where 1=1 '
  119733.     If @Sifra_OE Is Not Null
  119734.         Set @SSQL=@SSQL + ' And D.Sifra_Oe = ''' + cast(@Sifra_Oe as Varchar(6)) + ''' '
  119735.     If @Sifra_Dok Is Not Null
  119736.         Set @SSQL=@SSQL + ' And S.Sifra_Dok = ''' + cast(@Sifra_Dok as Varchar(6)) + ''' '
  119737.     If @Datum_Od Is Not Null
  119738.         Set @SSQL=@SSQL + ' And D.Datum_Dok>= ''' + cast(@Datum_Od as Varchar(35)) + ''' '
  119739.     If @Datum_Do Is Not Null
  119740.         Set @SSQL=@SSQL + ' And D.Datum_Dok<= ''' + cast(@Datum_Do as Varchar(35)) + ''' '
  119741.     Set @SSQL=@SSQL + '    Group By D.Datum_Dok, S.Broj_Dok, S.Sifra_Dok, D.Sifra_kup, KUP.ImeKup, D.Sifra_OE, D.Identif_Br '
  119742.     Exec(@SSQL)
  119743.  
  119744.  
  119745.  
  119746.  
  119747. Go
  119748. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglednaobjekti]'))
  119749. drop procedure [dbo].[sp_preglednaobjekti]
  119750.  
  119751. Go
  119752.  
  119753. CREATE       PROCEDURE sp_PregledNaObjekti
  119754.     @Sifra_Kup_Od    char(6) = Null,
  119755.     @Sifra_Kup_Do    char(6) = Null,  
  119756.     @Sifra_Obj_Od    smallint = Null,
  119757.     @Sifra_Obj_Do    smallint = Null,
  119758.     @Sifra_Grad    smallint = Null,
  119759.     @Sifra_Reg    smallint = Null,
  119760.     @KDrugo1    smallint = Null,
  119761.     @KDrugo2    smallint = Null,
  119762.     @KDrugo3    smallint = Null,
  119763.     @KDrugo4    smallint = Null,
  119764.     @KDrugo5    smallint = Null,
  119765.     @Aktiven    char(1) = Null,
  119766.     @Sifra_Pat    smallint = Null,
  119767.     @Sifra_Nivo    Char(2) = Null,
  119768.     @TipKup    varchar(11)=Null,
  119769.         @SlikaPrik    char(1) = 'N'
  119770.  
  119771. AS  
  119772.  
  119773.     Declare @SSQL As Varchar(8000)
  119774.     if @SlikaPrik = 'D'
  119775.         Set @SSQL = ' Select Kup.ImeKup,Slik.SlikaKObj, KO.* 
  119776.             From KObjekti KO
  119777.             Inner Join Komint Kup On KO.Sifra_Kup=Kup.Sifra_Kup
  119778.                    Inner Join KObjSliki Slik on KO.SifrA_Kup=Slik.Sifra_Kup
  119779.             Where KO.Sifra_Obj <> 0 '
  119780.     else    
  119781.         Set @SSQL = ' Select Kup.ImeKup, KO.*,
  119782.             P.ImePat, G.ImeGrad, R.ImeRegion,
  119783.             KD1.Ime_1K, KD2.Ime_2K, KD3.Ime_3K, KD4.Ime_4K, KD5.Ime_5K, KD6.Ime_6K, KD7.Ime_7K,
  119784.                   TK.ImeTipKup, P2.ImePat as ImePat2
  119785.             From KObjekti KO
  119786.             Inner Join Komint Kup On KO.Sifra_Kup=Kup.Sifra_Kup
  119787.             Left Outer Join Patnici P On KO.Sifra_Pat=P.Sifra_Pat
  119788.             Left Outer Join Patnici P2 On KO.Sifra_Pat2=P2.Sifra_Pat
  119789.             Left Outer Join Grad G On KO.Sifra_Grad=G.Sifra_Grad
  119790.             Left Outer Join GRegion R On KO.Sifra_Reg=R.Sifra_Reg
  119791.             Left Outer Join KDrugo1 KD1 On KO.KDrugo1=KD1.Sifra_1K
  119792.             Left Outer Join KDrugo2 KD2 On KO.KDrugo2=KD2.Sifra_2K
  119793.             Left Outer Join KDrugo3 KD3 On KO.KDrugo3=KD3.Sifra_3K
  119794.             Left Outer Join KDrugo4 KD4 On KO.KDrugo4=KD4.Sifra_4K
  119795.             Left Outer Join KDrugo5 KD5 On KO.KDrugo5=KD5.Sifra_5K
  119796.             Left Outer Join KDrugo6 KD6 On KO.KDrugo6=KD6.Sifra_6K
  119797.             Left Outer Join KDrugo7 KD7 On KO.KDrugo7=KD7.Sifra_7K
  119798.             Left Outer Join GTipKup TK On KO.TipKup=TK.TipKup 
  119799.                Where KO.Sifra_Obj <> 0 '
  119800.  
  119801.         If @Sifra_Kup_Od Is Not Null
  119802.         Set @SSQL = @SSQL + ' And KO.Sifra_Kup >= ' + @Sifra_Kup_Od + ' '
  119803.     If @Sifra_Kup_Do Is Not Null
  119804.         Set @SSQL = @SSQL + ' And KO.Sifra_Kup <= ' + @Sifra_Kup_Do + ' '  
  119805.     If @Sifra_Obj_Od Is Not Null
  119806.         Set @SSQL = @SSQL + ' And KO.Sifra_Obj >= ' + Cast(@Sifra_Obj_Od as varchar(6)) + ' '
  119807.     If @Sifra_Obj_Do Is Not Null
  119808.         Set @SSQL = @SSQL + ' And KO.Sifra_Obj <= ' + Cast(@Sifra_Obj_Do as varchar(6)) + ' '
  119809.     If @Sifra_Grad Is Not Null
  119810.         Set @SSQL = @SSQL + ' And KO.Sifra_Grad = ' + Cast(@Sifra_Grad as varchar(6)) + ' '
  119811.     If @Sifra_Reg Is Not Null
  119812.         Set @SSQL = @SSQL + ' And KO.Sifra_Reg = ' + Cast(@Sifra_Reg as varchar(6)) + ' '
  119813.     If @KDrugo1 Is Not Null
  119814.         Set @SSQL = @SSQL + ' And KO.KDrugo1 = ' + Cast(@KDrugo1 as varchar(6)) + ' '
  119815.     If @KDrugo2 Is Not Null
  119816.         Set @SSQL = @SSQL + ' And KO.KDrugo2 = ' + Cast(@KDrugo2 as varchar(6)) + ' '
  119817.     If @KDrugo3 Is Not Null
  119818.         Set @SSQL = @SSQL + ' And KO.KDrugo3 = ' + Cast(@KDrugo3 as varchar(6)) + ' '
  119819.     If @KDrugo4 Is Not Null
  119820.         Set @SSQL = @SSQL + ' And KO.KDrugo4 = ' + Cast(@KDrugo4 as varchar(6)) + ' '
  119821.     If @KDrugo5 Is Not Null
  119822.         Set @SSQL = @SSQL + ' And KO.KDrugo5 = ' + Cast(@KDrugo5 as varchar(6)) + ' '
  119823.     If @Aktiven = 'N'
  119824.         Set @SSQL = @SSQL + ' And KO.Aktiven = ''N'' '
  119825.     Else If @Aktiven = 'D'
  119826.         Set @SSQL = @SSQL + ' And (KO.Aktiven <> ''N'' Or KO.Aktiven Is Null) '
  119827.     If @Sifra_Pat Is Not Null
  119828.         Set @SSQL = @SSQL + ' And (KO.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' Or  KO.Sifra_Pat2 = ' + Cast(@Sifra_Pat as varchar(6)) + ')'
  119829.     If @Sifra_Nivo Is Not Null
  119830.         Set @SSQL = @SSQL + ' And KO.Sifra_Nivo = ' + Cast(@Sifra_Nivo as varchar(6)) + ' '
  119831.     If @TipKup Is Not Null
  119832.         Set @SSQL = @SSQL + ' And KO.TipKup = ''' + @TipKup + ''' '
  119833.     Exec(@SSQL)
  119834.  
  119835.  
  119836.  
  119837.  
  119838.  
  119839.  
  119840. Go
  119841. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglednavozila]'))
  119842. drop procedure [dbo].[sp_preglednavozila]
  119843.  
  119844. Go
  119845.  
  119846. CREATE     procedure sp_PregledNaVozila
  119847.     @DatumOd smalldatetime,
  119848.     @DatumDo smalldatetime, 
  119849.     @Sifra_Art_Od varchar(20)= null,
  119850.     @Sifra_Art_Do varchar(20)= null,
  119851.     @Drugo1 smallint= null, 
  119852.     @Drugo2 smallint= null,         
  119853.     @Drugo3 smallint= null, 
  119854.     @Drugo4 smallint= null, 
  119855.     @Sifra_drg smallint= null,
  119856.     @Sifra_Drg1 smallint= null,  
  119857.     @Kto char(6)= null, 
  119858.     @Sifra_Podg char(6)= null, 
  119859.     @Sifra_gr char(3)= null,
  119860.     @ZapocnuvaSo varchar(200)= null,
  119861.     @GodProiz smallint= null,
  119862.     @ModGod smallint = null,
  119863.     @BrSasija  varchar(30)= null,
  119864.     @BrMotor varchar(30)= null
  119865.  
  119866. As
  119867.  
  119868.     Declare @SSQL as varchar(8000)
  119869.     Set @SSQL= 'Select V.*, K.ImeArt, D1.Ime_1, D2.Ime_2, D3.Ime_3, D4.Ime_4, DR.Ime, DR1.Ime_Drg1, 
  119870.                 KO.ImeKup, PG.Ime_podg, G.Ime_Gr, K.DogCena, K.MalCena, K.GotCena
  119871.                 From Vozila V
  119872.                 Inner Join KatArt K on V.Sifra_Art= K.Sifra_Art
  119873.                 Left Outer Join Drugo1 D1 on K.Drugo1= D1.Sifra_1
  119874.                 Left Outer Join Drugo2 D2 on K.Drugo2= D2.Sifra_2
  119875.                 Left Outer Join Drugo3 D3 on K.Drugo3= D3.Sifra_3
  119876.                 Left Outer Join Drugo4 D4 on K.Drugo4= D4.Sifra_4
  119877.                 Left Outer Join DrgPodel DR on K.Sifra_Drg= DR.Sifra_Drg
  119878.                 Left Outer Join DrgPodel1 DR1 on DR.Sifra_Drg1= DR1.Sifra_Drg1
  119879.                 Left Outer Join Komint KO on K.Kto= KO.Sifra_Kup
  119880.                 Left Outer Join Podgrupi PG on K.Sifra_Podg= PG.Sifra_Podg
  119881.                 Left Outer Join Grupi G on PG.Sifra_Gr= G.Sifra_Gr
  119882.                 Where 1=1 '
  119883.  
  119884.       If @DatumOd Is Not Null
  119885.         Set @SSQL = @SSQL +  ' And K.DodadenNa >= ''' + cast(@DatumOd as Varchar(35)) +  ''' '
  119886.       If @DatumDo Is Not Null
  119887.         Set @SSQL = @SSQL +  ' And K.DodadenNa <= ''' + cast(@DatumDo as Varchar(35)) +  ''' '
  119888.       If @Sifra_Art_Od Is Not Null
  119889.         Set @SSQL = @SSQL +  ' And K.Sifra_Art >= ' + @Sifra_Art_Od +  ' '
  119890.       If @Sifra_Art_Do Is Not Null
  119891.         Set @SSQL = @SSQL +  ' And K.Sifra_Art <= ' + @Sifra_Art_Do +  ' '
  119892.       If @Drugo1 Is Not Null
  119893.         Set @SSQL = @SSQL +  ' And K.Drugo1 = ' + cast(@Drugo1 as Varchar(10)) +  ' '
  119894.       If @Drugo2 Is Not Null
  119895.         Set @SSQL = @SSQL +  ' And K.Drugo2 = ' + cast(@Drugo2 as Varchar(10)) +  ' '
  119896.       If @Drugo3 Is Not Null
  119897.         Set @SSQL = @SSQL +  ' And K.Drugo3 = ' + cast(@Drugo3 as Varchar(10)) +  ' '
  119898.       If @Drugo4 Is Not Null
  119899.         Set @SSQL = @SSQL +  ' And K.Drugo4 = ' + cast(@Drugo4 as Varchar(10)) +  ' '
  119900.       If @Sifra_Drg Is Not Null
  119901.         Set @SSQL = @SSQL +  ' And K.Sifra_Drg = ' + cast(@Sifra_Drg as Varchar(10)) +  ' '
  119902.       If @Sifra_Drg1 Is Not Null
  119903.         Set @SSQL = @SSQL +  ' And DR.Sifra_Drg1 = ' + cast(@Sifra_Drg1 as Varchar(10)) +  ' '
  119904.       If @Kto Is Not Null
  119905.         Set @SSQL = @SSQL +  ' And K.Kto = ' + @Kto +  ' '
  119906.       If @Sifra_Podg Is Not Null
  119907.         Set @SSQL = @SSQL +  ' And K.Sifra_Podg = ' + cast(@Sifra_Podg as Varchar(10)) +  ' '
  119908.       If @Sifra_Gr Is Not Null
  119909.         Set @SSQL = @SSQL +  ' And PG.Sifra_Gr = ' + cast(@Sifra_Gr as Varchar(6)) +  ' '
  119910.        If @ZapocnuvaSo IS NOT NULL 
  119911.         Set @SSQL = @SSQL + ' And K.Sifra_Art Like ''' + @ZapocnuvaSo + '%'' '
  119912.     If @GodProiz Is Not Null
  119913.         Set @SSQL = @SSQL +  ' And V.GodProiz = ' + cast(@GodProiz as Varchar(6)) +  ' '
  119914.     If @ModGod Is Not Null
  119915.         Set @SSQL = @SSQL +  ' And V.GodModel = ' + cast(@ModGod as Varchar(6)) +  ' '
  119916.     If @BrSasija Is Not Null
  119917.         Set @SSQL = @SSQL +  ' And V.BrSasija = ''' + cast(@BrSasija as Varchar(30)) +  ''' '
  119918.     If @BrMotor Is Not Null
  119919.         Set @SSQL = @SSQL +  ' And V.BrMotor = ''' + cast(@BrMotor as Varchar(30)) +  ''' '
  119920.  
  119921. print @ssql
  119922. exec(@ssql)
  119923.  
  119924.  
  119925.  
  119926.  
  119927.  
  119928.  
  119929.  
  119930. Go
  119931. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledoperatori]'))
  119932. drop procedure [dbo].[sp_pregledoperatori]
  119933.  
  119934. Go
  119935.  
  119936.  
  119937.  
  119938. CREATE    procedure sp_PregledOperatori
  119939.     @Sifra_Oe smallint = null,
  119940.     @Sifra_GrOper char(20)= null,
  119941.     @Aktiven    char(1)= null
  119942. As
  119943.     Declare @SSQL varchar(5000)
  119944.     Set @SSQL=' Select O.*, G.ImeGrOper, OE.ImeOrg
  119945.                 From Operatori O
  119946.                 left outer JOin GrupiOper G on O.Sifra_GrOper=G.Sifra_GrOper 
  119947.                 left outer JOin Orged OE on O.Sifra_Oe=OE.Sifra_Oe 
  119948.                 where 1=1 '
  119949.     If @Sifra_Oe is not null
  119950.         Set @SSQL= @SSQL+ ' And O.Sifra_Oe= ' + cast(@Sifra_Oe as varchar(6)) + ''
  119951.     If @Sifra_GrOper is not null
  119952.         Set @SSQL= @SSQL+ ' And O.Sifra_GrOper= ' + @Sifra_GrOper + ''
  119953.     --If @Aktiven is not null
  119954.     --    Set @SSQL= @SSQL+ ' And O.Aktiven= ' + @Aktiven + ''
  119955.     If @Aktiven = 'D'    
  119956.     Set @SSQL = @SSQL + ' And (O.Aktiven <> ''N'' or O.Aktiven Is Null) '     
  119957.     Else If @Aktiven = 'N'    
  119958.     Set @SSQL = @SSQL + ' And O.Aktiven = ''N'' '     
  119959. print(@ssql)
  119960. exec(@SSQL)
  119961.  
  119962.  
  119963.  
  119964.  
  119965.  
  119966. Go
  119967. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledoptzalpooe]'))
  119968. drop procedure [dbo].[sp_pregledoptzalpooe]
  119969.  
  119970. Go
  119971. CREATE  PROCEDURE sp_PregledOptZalPoOe
  119972.     @Sifra_Oe    smallint = Null,
  119973.     @Sif_GrOrg    char(6) = Null,
  119974.     @Sifra_Art_Od    varchar(20) = Null,
  119975.     @Sifra_Art_Do    varchar(20) = Null,
  119976.     @SamoDozv    char(1) = 'N',
  119977.     @Podred    char(1) = 'S',
  119978.     @OdKojaTab    char(1) = 'O',     -- K - od katart       O - od OptZalPoOe
  119979.     @Kto        char(6) = Null,
  119980.     @SamoNeDozv    char(1) = 'N',    -- D - Samo nedozvoleni
  119981.     @VkluciArtZal    char(1) = 'N'      -- Koga gledame od OptZalPoOe da se vklucat artiklite sso gi ima na zaliha od katart
  119982. AS
  119983.     Declare @SSQL Varchar(8000)
  119984.  
  119985. If @OdKojaTab = 'O'
  119986. Begin
  119987.     Set @SSQL = ' Select Z.Sifra_Oe, O.ImeOrg, Z.Sifra_Art, K.ImeArt, Z.MinZal, Z.MaxZal, Z.OptZal, Z.Dozvoleno, K.Sifra_Podg, P.Ime_Podg
  119988.             From OptZalPoOe Z
  119989.             Inner Join Orged O On O.Sifra_Oe=Z.Sifra_Oe
  119990.             Inner Join Katart K On K.Sifra_Art = Z.Sifra_Art
  119991.             Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  119992.             Where 1=1 '
  119993.     If @Sifra_Oe Is Not Null
  119994.         Set @SSQL = @SSQL + ' And Z.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  119995.     If @Sif_GrOrg Is Not Null
  119996.         Set @SSQL = @SSQL + ' And Z.Sifra_Oe IN (SELECT Sifra_OE FROM SGrOrg WHERE Sif_GrOrg=''' + @Sif_GrOrg + ''') '
  119997.     If @Sifra_Art_Od Is Not Null
  119998.         Set @SSQL = @SSQL + ' And Z.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  119999.     If @Sifra_Art_Do Is Not Null
  120000.         Set @SSQL = @SSQL + ' And Z.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  120001.     If @SamoDozv='D'
  120002.         Set @SSQL = @SSQL + ' And Z.Dozvoleno IS NOT NULL And Z.Dozvoleno IN (''D'',''N'') '
  120003.     If @SamoNeDozv='D'
  120004.         Set @SSQL = @SSQL + ' And Z.Dozvoleno = ''N'' '
  120005.  
  120006.     If @VkluciArtZal = 'D' And @SamoDozv='D'  -- ova za gigo. da se prikazat samo dozvolenite artikli. moze da se najde i podobro resenie (nama filter samo dozvoleni artikli)
  120007.         Set @SSQL = @SSQL + ' And Z.Dozvoleno = ''D'' '     -- 13.05.2010
  120008.  
  120009.     If @Kto Is Not Null
  120010.         Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '
  120011.     If @VkluciArtZal = 'D' And @Sifra_Oe Is Not Null And (@SamoNeDozv <> 'D' Or @SamoNeDozv Is null)
  120012.     Begin
  120013.         Set @SSQL = @SSQL + ' Union Select Z.Sifra_Oe, O.ImeOrg, Z.Sifra_Art, K.ImeArt, Null MinZal, Null MaxZal, Null OptZal, ''D'' as Dozvoleno, K.Sifra_Podg, P.Ime_Podg
  120014.                         From Soart Z
  120015.                         Inner Join Orged O On O.Sifra_Oe=Z.Sifra_Oe
  120016.                         Inner Join Katart K On K.Sifra_Art = Z.Sifra_Art
  120017.                         Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  120018.                         Where Z.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' 
  120019.                         And Z.Sifra_Art Not In (Select Sifra_Art From OptZalPoOe Where Sifra_Oe = '+ cast(@Sifra_Oe as varchar(6)) + ' And Dozvoleno Is Not Null) ' 
  120020.         If @Sifra_Art_Od Is Not Null
  120021.             Set @SSQL = @SSQL + ' And Z.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  120022.         If @Sifra_Art_Do Is Not Null
  120023.             Set @SSQL = @SSQL + ' And Z.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  120024.         If @Kto Is Not Null
  120025.             Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '
  120026.     End
  120027.                         
  120028.     If @Podred = 'A' 
  120029.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  120030.     Else 
  120031.         Set @SSQL = @SSQL + ' Order By Z.Sifra_Art '
  120032. print (@ssql)
  120033.     Exec(@SSQL)
  120034. End 
  120035. Else 
  120036. Begin
  120037.     Set @SSQL = ' Select Null as Sifra_Oe, Null as ImeOrg, K.Sifra_Art, K.ImeArt, K.SMin_Sost as MinZal, K.SMax_Sost as MaxZal, K.SOpt_Sost as OptZal, K.Sifra_Podg, P.Ime_Podg
  120038.             From Katart K
  120039.             Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  120040.             Where 1=1 '
  120041.     If @Sifra_Art_Od Is Not Null
  120042.         Set @SSQL = @SSQL + ' And K.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  120043.     If @Sifra_Art_Do Is Not Null
  120044.         Set @SSQL = @SSQL + ' And K.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  120045.     If @Kto Is Not Null
  120046.         Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '
  120047.     If @Podred = 'A' 
  120048.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  120049.     Else 
  120050.         Set @SSQL = @SSQL + ' Order By K.Sifra_Art '
  120051.     Exec(@SSQL)
  120052. print (@ssql)
  120053. End
  120054.  
  120055. Go
  120056. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledpacienti]'))
  120057. drop procedure [dbo].[sp_pregledpacienti]
  120058.  
  120059. Go
  120060.  
  120061. create  PROCEDURE sp_PregledPacienti 
  120062.  
  120063.     @EMBG        char(13),
  120064.     @Sifra_Kompanija    char(10),
  120065.     @Sifra_lekar        char(6),
  120066.     @Sifra_OsnovOsig    char(2),
  120067.     @Podred        char(1) = 'S'
  120068.  
  120069. AS
  120070.  
  120071.     Declare @SSQL as varchar(8000)
  120072.     Set @SSQL = ' Select P.EMBG, P.ImePacient, P.Broj_Kniska, P.Sifra_Kompanija, P.Sifra_Lekar, L.ImeLekar, P.Sifra_OsnovOsig, O.ImeOsnovOsig
  120073.             From Pacienti P
  120074.             Left Outer Join Lekari L On L.Sifra_Lekar = P.Sifra_Lekar
  120075.             Left Outer Join OsnovOsig O On O.Sifra_OsnovOsig = P.Sifra_OsnovOsig
  120076.             Where 1=1 '
  120077.  
  120078.     If @EMBG Is Not Null
  120079.         Set @SSQL = @SSQL + ' And P.EMBG = ''' + @EMBG + ''' '
  120080.     If @Sifra_Kompanija Is Not Null
  120081.         Set @SSQL = @SSQL + ' And P.Sifra_Kompanija = ''' + @Sifra_Kompanija + ''' '
  120082.     If @Sifra_lekar Is Not Null
  120083.         Set @SSQL = @SSQL + ' And P.Sifra_lekar = ''' + @Sifra_lekar + ''' '
  120084.     If @Sifra_OsnovOsig Is Not Null
  120085.         Set @SSQL = @SSQL + ' And P.Sifra_OsnovOsig = ''' + @Sifra_OsnovOsig + ''' '
  120086.     If @Podred = 'S'
  120087.         Set @SSQL = @SSQL + ' Order By P.EMBG '
  120088.     Else If @Podred = 'A'
  120089.         Set @SSQL = @SSQL + ' Order By P.ImePacient '
  120090.  
  120091.     Exec(@SSQL)
  120092.  
  120093.  
  120094.  
  120095. Go
  120096. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledpakuvart]'))
  120097. drop procedure [dbo].[sp_pregledpakuvart]
  120098.  
  120099. Go
  120100. CREATE PROCEDURE sp_PregledPakuvArt
  120101.     @Datum_Od    smalldatetime = Null,
  120102.     @Datum_Do    smalldatetime = Null,
  120103.     @KontrSer_Pak    Varchar(35) = Null,
  120104.     @KontrSer_Ed    Varchar(35) = Null,
  120105.     @Broj_DokPak    int = Null
  120106. AS
  120107.     Declare @SSQL as varchar(8000)
  120108.     Set @SSQL = ' SELECT P.Broj_DokPak, P.Datum_DokPak, P.Sifra_Art_Pak, P.KontrSer_Pak, 
  120109.             P.Sifra_Art_Ed, SU.ImeArt ImeArt_Ed, P.KontrSer_Ed, P.Rbr, P.Kolic_Ed, P.Kolic_Pak, P.Kolic_Dara
  120110.         FROM PakuvArt P
  120111.         Left outer JOIN KatArt SU ON P.Sifra_Art_Ed = SU.Sifra_Art
  120112.         WHERE 1=1 '
  120113.     If @Datum_Od Is Not Null
  120114.         Set @SSQL = @SSQL + ' And P.Datum_DokPak >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  120115.     If @Datum_Do Is Not Null
  120116.         Set @SSQL = @SSQL + ' And P.Datum_DokPak <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  120117.     If @KontrSer_Pak Is Not Null
  120118.         Set @SSQL = @SSQL + ' And P.KontrSer_Pak = ''' + @KontrSer_Pak + ''' '
  120119.     If @KontrSer_Ed Is Not Null
  120120.         Set @SSQL = @SSQL + ' And P.KontrSer_Ed = ''' + @KontrSer_Ed + ''' '
  120121.     If @Broj_DokPak Is Not Null
  120122.         Set @SSQL = @SSQL + ' And P.Broj_DokPak = ''' + Cast(@Broj_DokPak as varchar(10)) + ''' '
  120123.     Set @SSQL = @SSQL + ' Order By P.Broj_DokPak, P.Rbr '
  120124.     Exec(@SSQL)
  120125.  
  120126.  
  120127. Go
  120128. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledpercenceni]'))
  120129. drop procedure [dbo].[sp_pregledpercenceni]
  120130.  
  120131. Go
  120132. CREATE PROCEDURE sp_PregledPerCenCeni
  120133.     @Datum_Od    smalldatetime,
  120134.     @Sifra_TipC     smallint
  120135. AS
  120136.     Declare @SSQL varchar(600)
  120137.     SET @SSQL = 'SELECT C.*, K.ImeArt, T.ImeTipC FROM PerCenCeni C
  120138.     INNER JOIN KatArt K ON C.Sifra_Art = K.Sifra_Art
  120139.     INNER JOIN TipPerCenovnik T ON C.Sifra_TipC = T.Sifra_TipC 
  120140.     WHERE 1=1'
  120141.     If @Datum_Od IS NOT NULL
  120142.         SET @SSQL = @SSQL + ' AND C.Datum_Od = ''' + Cast(@Datum_Od as varchar(35)) + ''' '
  120143.     If @Sifra_TipC IS NOT NULL
  120144.         SET @SSQL = @SSQL + ' AND C.Sifra_TipC = ''' + Cast(@Sifra_TipC as varchar(15)) + ''' '
  120145.     SET @SSQL = @SSQL + ' ORDER BY C.Datum_Od, C.Sifra_TipC, C.Sifra_Art'
  120146.     EXEC(@SSQL)
  120147.  
  120148.  
  120149.  
  120150. Go
  120151. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledplannarac]'))
  120152. drop procedure [dbo].[sp_pregledplannarac]
  120153.  
  120154. Go
  120155. CREATE PROCEDURE sp_PregledPlanNarac
  120156.     @Sifra_Kup    char(6),
  120157.     @Sifra_Art_Od    varchar(20),
  120158.     @Sifra_Art_Do    varchar(20),
  120159.     @Sifra_Gr    char(3),
  120160.     @Sifra_Podg    char(6),
  120161.     @Sifra_Obj    smallint,
  120162.     @Lokacija    char(10)
  120163.  AS
  120164.     Declare @SSQL Varchar(4000)
  120165.     Set @SSQL = ' Select P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, P.Sifra_Art, K.ImeArt,
  120166.                 P.Den1, P.Den2, P.Den3, P.Den4, P.Den5, P.Den6, P.Den7, P.Den8, P.Den9, P.Den10
  120167.             From PlanPer P
  120168.             Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  120169.             Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  120170.             Left Outer Join Komint Kup On Kup.Sifra_Kup = P.Sifra_kup
  120171.             Left Outer Join KObjekti KO On KO.Sifra_Kup = P.Sifra_kup and KO.Sifra_Obj=P.Sifra_Obj
  120172.             Where 1=1 '
  120173.     If @Sifra_Kup Is Not Null
  120174.         Set @SSQL = @SSQL + ' and P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  120175.     If @Sifra_Art_Od Is Not Null
  120176.         Set @SSQL = @SSQL + ' and P.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  120177.     If @Sifra_Art_Do Is Not Null
  120178.         Set @SSQL = @SSQL + ' and P.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  120179.     If @Sifra_Podg Is Not Null
  120180.         Set @SSQL = @SSQL + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  120181.     If @Sifra_Gr Is Not Null
  120182.         Set @SSQL = @SSQL + ' and PG.Sifra_GR = ''' + @Sifra_Gr + ''' '
  120183.     If @Sifra_Obj Is Not Null
  120184.         Set @SSQL = @SSQL + ' and P.Sifra_Obj = ' + cast(@Sifra_Obj as varchar(6)) + ' '
  120185.     If @Lokacija Is Not Null
  120186.         Set @SSQL = @SSQL + ' and Rtrim(Ltrim(K.Lokacija)) = ''' + Ltrim(Rtrim(@Lokacija)) + ''' '
  120187. print @SSQL
  120188. Exec (@SSQL)
  120189.  
  120190.  
  120191.  
  120192. Go
  120193. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledplannaraczaden]'))
  120194. drop procedure [dbo].[sp_pregledplannaraczaden]
  120195.  
  120196. Go
  120197. CREATE PROCEDURE sp_PregledPlanNaracZaDen
  120198.     @Sifra_Oe    smallint = 1,
  120199.     @Sifra_Kup_Od    char(6) = Null,
  120200.     @Sifra_Kup_Do    char(6) = Null,
  120201.     @Den        smallint,
  120202.     @Sifra_Reg_Od    smallint = Null,
  120203.     @Sifra_Reg_Do    smallint = Null,
  120204.     @BezRelacija     char(1) =  'N'
  120205. AS
  120206.     Declare @SSQL Varchar(4000)
  120207.     Set @SSQL = ' Select P.Sifra_Kup, Kup.ImeKup, P.Sifra_Obj, KO.ImeObj, P.Sifra_Art, K.ImeArt, K.DogCena, K.EdMera, '
  120208.     If @Den = 1
  120209.         Set @SSQL = @SSQL + ' P.Den1 Kolic,'
  120210.     Else If @Den = 2
  120211.         Set @SSQL = @SSQL + ' P.Den2 Kolic,'
  120212.     Else If @Den = 3
  120213.         Set @SSQL = @SSQL + ' P.Den3 Kolic,'
  120214.     Else If @Den = 4
  120215.         Set @SSQL = @SSQL + ' P.Den4 Kolic,'
  120216.     Else If @Den = 5
  120217.         Set @SSQL = @SSQL + ' P.Den5 Kolic,'
  120218.     Else If @Den = 6
  120219.         Set @SSQL = @SSQL + ' P.Den6 Kolic,'
  120220.     Else If @Den = 7
  120221.         Set @SSQL = @SSQL + ' P.Den7 Kolic,'
  120222.     Else If @Den = 8
  120223.         Set @SSQL = @SSQL + ' P.Den8 Kolic,'
  120224.     Else If @Den = 9
  120225.         Set @SSQL = @SSQL + ' P.Den9 Kolic,'
  120226.     Else If @Den = 10        Set @SSQL = @SSQL + ' P.Den10 Kolic,'
  120227.     If @Sifra_Oe = 1
  120228.         Set @SSQL = @SSQL + ' KO.KDrugo4 Sifra_RegObj,  DR4.Ime_4K ImeRegionObj, Kup.KDrugo4 Sifra_regKup, D4.Ime_4K ImeRegionKup '
  120229.     Else
  120230.         Set @SSQL = @SSQL + ' KO.Sifra_reg Sifra_RegObj, GR.ImeRegion ImeRegionObj, Kup.Sifra_Reg Sifra_regKup, R.ImeRegion ImeRegionKup '
  120231.     Set @SSQL = @SSQL + ' From PlanPer P
  120232.                 Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  120233.                 Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  120234.                 Left Outer Join Komint Kup On Kup.Sifra_Kup = P.Sifra_kup
  120235.                 Left Outer Join KObjekti KO On KO.Sifra_Kup = P.Sifra_kup and KO.Sifra_Obj=P.Sifra_Obj '
  120236.     If @Sifra_Oe = 1
  120237.         Set @SSQL = @SSQL + ' Left Outer Join KDrugo4 D4 On D4.Sifra_4k = Kup.KDrugo4 
  120238.                       Left Outer Join KDrugo4 DR4 On DR4.Sifra_4k = KO.KDrugo4 '
  120239.     Else
  120240.         Set @SSQL = @SSQL + ' Left Outer Join Gregion R On R.Sifra_reg = Kup.Sifra_reg 
  120241.                        Left Outer Join Gregion GR On GR.Sifra_reg = KO.Sifra_reg '
  120242.     Set @SSQL  = @SSQL + ' Where 1=1 '
  120243.     If @Sifra_Oe Is Not Null
  120244.          Begin
  120245.         If @Sifra_oe = 1
  120246.             Set @SSQL = @SSQL + ' And ltrim(rtrim(K.Lokacija)) = ''1'' '
  120247.         Else
  120248.             Set @SSQL = @SSQL + ' And (ltrim(rtrim(K.Lokacija)) <> ''1'' Or K.Lokacija is Null) '
  120249.          End
  120250.     If @Sifra_Kup_Od Is Not Null
  120251.         Set @SSQL = @SSQL + ' and P.Sifra_Kup >= ''' + @Sifra_Kup_Od + ''' '
  120252.     If @Sifra_Kup_Do Is Not Null
  120253.         Set @SSQL = @SSQL + ' and P.Sifra_Kup <= ''' + @Sifra_Kup_Do + ''' '
  120254.     If @Sifra_Reg_Od Is Not Null
  120255.          Begin
  120256.         If @Sifra_Oe = 1    
  120257.             Set @SSQL = @SSQL + ' And ((KO.Kdrugo4 Is Not Null And KO.KDrugo4 >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''') 
  120258.                         OR ( KO.KDrugo4 Is Null and KUP.KDrugo4 >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''')) '                         
  120259.            Else
  120260.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''') 
  120261.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg >= ''' + cast(@Sifra_Reg_Od as varchar(6)) + ''')) '     
  120262.                End
  120263.     If @Sifra_Reg_Do Is Not Null
  120264.          Begin
  120265.         If @Sifra_Oe = 1    
  120266.             Set @SSQL = @SSQL + ' And ((KO.Kdrugo4 Is Not Null And KO.KDrugo4 <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''') 
  120267.                         OR ( KO.KDrugo4 Is Null and KUP.KDrugo4 <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''')) '                         
  120268.            Else
  120269.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''') 
  120270.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg <= ''' + cast(@Sifra_Reg_Do as varchar(6)) + ''')) '     
  120271.                End
  120272.     If @BezRelacija = 'D'
  120273.          Begin
  120274.         If @Sifra_Oe = 1    
  120275.             Set @SSQL = @SSQL + ' And (KO.Kdrugo4 Is Null And KUP.KDrugo4 is Null) '
  120276.            Else
  120277.             Set @SSQL = @SSQL + ' And (KO.Sifra_Reg Is Null And KUP.Sifra_Reg Is Null) '     
  120278.                End
  120279.     Set @SSQL = @SSQL + ' Order By P.Sifra_art '
  120280. Exec (@SSQL)
  120281.  
  120282.  
  120283.  
  120284. Go
  120285. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledpobrojnapotvrda]'))
  120286. drop procedure [dbo].[sp_pregledpobrojnapotvrda]
  120287.  
  120288. Go
  120289.  
  120290. CREATE  PROCEDURE [dbo].[sp_PregledPoBrojNaPotvrda]
  120291.  
  120292.     @PotvrdaBr_Od    varchar(20) = Null,
  120293.     @PotvrdaBr_Do    varchar(20) = Null,
  120294.     @Sifra_Art        varchar(20) = Null,
  120295.     @Datum_Od        smalldatetime = Null,
  120296.     @Datum_Do        smalldatetime = Null,
  120297.     @GarancBr        varchar(30) = Null
  120298.  
  120299. AS
  120300.  
  120301.     Declare @SSQL as varchar(8000)
  120302.  
  120303.     Create Table #Rez
  120304.     (
  120305.         PotvrdaBr    varchar(20),
  120306.         DokrID        int
  120307.     )
  120308.  
  120309.     Set @SSQL = ' Select Distinct K.PotvrdaBr
  120310.             From KatSerKlas K
  120311.             Inner Join MagStavr M On M.Sifra_Art=K.Sifra_Art And M.SpecOzn=K.KontrSer
  120312.             Inner Join Dokr D On D.DokrID=M.DokrID
  120313.             Where K.PotvrdaBr is not null and K.PotvrdaBr <> '''' '
  120314.  
  120315.     if @PotvrdaBr_Od is not null and @PotvrdaBr_Do is not null
  120316.         set @SSQL = @SSQL + ' and K.PotvrdaBr >=''' + @PotvrdaBr_Od + ''' '
  120317.     else if @PotvrdaBr_Od is not null
  120318.         set @SSQL = @SSQL + ' and K.PotvrdaBr =''' + @PotvrdaBr_Od + ''' '
  120319.  
  120320.     if @PotvrdaBr_Do is not null
  120321.         set @SSQL = @SSQL + ' And K.PotvrdaBr <=''' + @PotvrdaBr_Do + ''' '
  120322.  
  120323.     if @GarancBr is not null
  120324.         set @SSQL = @SSQL + ' and K.GarancBr =''' + @GarancBr + ''' '
  120325.  
  120326.     If @Sifra_Art Is Not Null
  120327.         Set @SSQL = @SSQL + ' And K.Sifra_Art = ''' + @Sifra_Art + ''' '
  120328.     If @Datum_Od Is Not Null
  120329.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  120330.     If @Datum_Do Is Not Null
  120331.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  120332.     Insert Into #Rez(PotvrdaBr) Exec(@SSQL)
  120333.  
  120334.     Set @SSQL = ' Update #Rez Set DokrID = D.DokrID 
  120335.             From Dokr D
  120336.             Inner Join MagStavr M On M.DokrID=D.DokrID
  120337.             Inner Join KatSerKlas K On K.Sifra_Art=M.Sifra_Art And K.KontrSer=M.SpecOzn 
  120338.             Where #Rez.PotvrdaBr=K.PotvrdaBr 
  120339.             And D.Sifra_Dok=18 And (D.SPCK_STAT Is Null Or D.SPCK_STAT <> ''S'')
  120340.             And #Rez.DokrID Is Null '
  120341.     If @Datum_Od Is Not Null
  120342.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  120343.     If @Datum_Do Is Not Null
  120344.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  120345.     If @Sifra_Art Is Not Null
  120346.         Set @SSQL = @SSQL + ' And K.Sifra_Art = ''' + @Sifra_Art + ''' '
  120347.     Exec(@SSQL)
  120348.     
  120349.     Set @SSQL = ' Update #Rez Set DokrID = D.DokrID 
  120350.             From Dokr D
  120351.             Inner Join MagStavr M On M.DokrID=D.DokrID
  120352.             Inner Join KatSerKlas K On K.Sifra_Art=M.Sifra_Art And K.KontrSer=M.SpecOzn 
  120353.             Where #Rez.PotvrdaBr=K.PotvrdaBr 
  120354.             And D.Sifra_Dok=100
  120355.             And #Rez.DokrID Is Null '
  120356.     If @Datum_Od Is Not Null
  120357.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  120358.     If @Datum_Do Is Not Null
  120359.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  120360.     If @Sifra_Art Is Not Null
  120361.         Set @SSQL = @SSQL + ' And K.Sifra_Art = ''' + @Sifra_Art + ''' '
  120362.     Exec(@SSQL)
  120363.     
  120364.     Set @SSQL = ' Update #Rez Set DokrID = D.DokrID 
  120365.             From Dokr D
  120366.             Inner Join MagStavr M On M.DokrID=D.DokrID
  120367.             Inner Join KatSerKlas K On K.Sifra_Art=M.Sifra_Art And K.KontrSer=M.SpecOzn 
  120368.             Where #Rez.PotvrdaBr=K.PotvrdaBr 
  120369.             And D.Sifra_Dok=1
  120370.             And #Rez.DokrID Is Null '
  120371.     If @Datum_Od Is Not Null
  120372.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  120373.     If @Datum_Do Is Not Null
  120374.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  120375.     If @Sifra_Art Is Not Null
  120376.         Set @SSQL = @SSQL + ' And K.Sifra_Art = ''' + @Sifra_Art + ''' '
  120377.     Exec(@SSQL)
  120378.  
  120379.     Select D.DokrID, D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  120380.                 dbo.fn_VratiDatum(D.Datum_Vnes) Datum_Vnes, dbo.fn_VratiVreme(D.Datum_Vnes) Vreme_Vnes, 
  120381.                 D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, 
  120382.                 D.Sifra_Kup, K.ImeKup, K.Smesto, D.Sifra_Obj, KO.ImeObj, KO.Smesto as ObjSmesto,
  120383.                 D.Rok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  120384.                 TD.ImeDok, O.ImeOrg, D.Sifra_Oper, D.Sifra_OpIz, D.Datum_Izm , D.Datum_Vnes as Datum_Vnes_Cel,
  120385.                 TD.DaliFisc, D.Pec_Fisc, D.Dat_Pec_Fisc,
  120386.                 MS.SpecOzn SerBr, KS.KontrSerExt, KS.AltKontrSer, KS.GOdProiz, KS.Opis, KS.Sifra_3, D3.Ime_3, D2.Sifra_2, D2.Ime_2,
  120387.                 MS.Sifra_Art, Art.ImeArt, D.Sifra_Kor, Kor.ImeKor, TD.Plus_Minus, R.PotvrdaBr, KS.GarancBr
  120388.                 FROM DOKR D
  120389.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  120390.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  120391.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  120392.                 LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj 
  120393.                 LEFT OUTER JOIN KartKor Kor on Kor.Sifra_oe = 1 and Kor.Sifra_Kor = D.SifrA_Kor
  120394.                 Inner Join MagStavr MS on MS.DokrId = D.DokrId
  120395.                 Inner Join Katart Art on Art.Sifra_Art = MS.Sifra_Art
  120396.                 Left Outer Join KatSerKlas KS  on MS.Sifra_Art = KS.SifrA_Art and MS.SpecOzn = KS.KontrSer 
  120397.                 Left Outer Join Drugo3 D3 on D3.SifrA_3 = KS.Sifra_3
  120398.                 Left Outer Join Drugo2 D2 on D2.Sifra_2 = Art.Drugo2 
  120399.                 --Inner Join #Rez R On R.PotvrdaBr=KS.PotvrdaBR
  120400.                 Inner Join #Rez R On R.DokrId = D.DokrId
  120401.  
  120402.  
  120403.  
  120404.  
  120405.  
  120406. Go
  120407. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledpodelosnsred]'))
  120408. drop procedure [dbo].[sp_pregledpodelosnsred]
  120409.  
  120410. Go
  120411.  
  120412. create  procedure sp_PregledPodelOsnSred
  120413.     @Inv_broj_Od char(10)= null,
  120414.     @Inv_broj_Do char(10)= null,
  120415.     @Sifra_OsnGrPodel smallint= null,
  120416.     @Sifra_OsnPodel smallint= null
  120417. As
  120418.     Declare @SSQL as varchar(8000)
  120419.     Set @SSQL= 'Select OPS.*, OP.Vrednost, OGP.ImeOsnGrPodel, OS.Ime
  120420.                 From OsnPodelSta OPS
  120421.                 Inner Join OsnPodelbi OP on OPS.Sifra_OsnPOdel= OP.Sifra_OsnPOdel and OPS.Sifra_OsnGRPodel = OP.Sifra_OsnGrPodel
  120422.                 Inner Join OsnGrPodel OGP ON OPS.Sifra_OsnGRPodel = OGP.Sifra_OsnGrPodel
  120423.                 Inner Join OsnSred OS on Ops.Inv_Broj=OS.Inv_broj
  120424.                 Where 1=1'
  120425.     If @Inv_broj_Od Is NOT Null
  120426.               SET @SSQL = @SSQL + ' AND OPS.Inv_broj>=''' + @Inv_Broj_Od + ''' '
  120427.     If @Inv_broj_Do Is NOT Null
  120428.               SET @SSQL = @SSQL + 'AND OPS.Inv_broj<=''' + @Inv_Broj_Do + ''' '
  120429.     If @Sifra_OsnGrPodel Is NOT Null
  120430.               SET @SSQL = @SSQL + 'AND OPS.Sifra_OsnGrPodel= ' +cast (@Sifra_OsnGrPodel as varchar(12)) + ' '
  120431.     If @Sifra_OsnPodel Is NOT Null
  120432.               SET @SSQL = @SSQL + 'AND OPS.Sifra_OsnPodel= ' + cast (@Sifra_OsnPodel as varchar(12)) + ' '
  120433. Print @SSQL
  120434. Exec(@SSQL)
  120435.  
  120436.  
  120437.  
  120438.  
  120439.  
  120440. Go
  120441. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledpodracnisluzbi]'))
  120442. drop procedure [dbo].[sp_pregledpodracnisluzbi]
  120443.  
  120444. Go
  120445.  
  120446. create  PROCEDURE sp_PregledPodracniSluzbi
  120447.  
  120448.     @Sifra_PodrSluzba_Od    char(4),
  120449.     @Sifra_PodrSluzba_Do    char(4),
  120450.     @PocCifriKniska        char(3),
  120451.     @Sifra_PodrSluzba_Fakt    char(4)
  120452. AS
  120453.     Declare @SSQL as varchar(8000)
  120454.  
  120455.     Set @SSQL = ' Select P.Sifra_PodrSluzba, P.ImePodrSluzba, P.PocCifriKniska, P.Sifra_PodrSluzba_Fakt, PF.ImePodrSluzba ImePodrSluzbaFakt
  120456.             From PodracniSluzbi P
  120457.             Left Outer Join PodracniSluzbi PF On PF.Sifra_PodrSluzba=P.Sifra_PodrSluzba_Fakt
  120458.             Where 1=1 '
  120459.     If @Sifra_PodrSluzba_Od Is Not Null
  120460.         Set @SSQL=@SSQL + ' And P.Sifra_PodrSluzba >= ''' + @Sifra_PodrSluzba_Od + ''' '
  120461.     If @Sifra_PodrSluzba_Do Is Not Null
  120462.         Set @SSQL=@SSQL + ' And P.Sifra_PodrSluzba <= ''' + @Sifra_PodrSluzba_Do + ''' '
  120463.     If @PocCifriKniska Is Not Null
  120464.         Set @SSQL=@SSQL + ' And P.PocCifriKniska = ''' + @PocCifriKniska + ''' '
  120465.     If @Sifra_PodrSluzba_Fakt Is Not Null
  120466.         Set @SSQL=@SSQL + ' And P.Sifra_PodrSluzba_Fakt = ''' + @Sifra_PodrSluzba_Fakt + ''' '
  120467.     Exec(@SSQL)
  120468.  
  120469.  
  120470.  
  120471. Go
  120472. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledpopis]'))
  120473. drop procedure [dbo].[sp_pregledpopis]
  120474.  
  120475. Go
  120476. CREATE   PROCEDURE sp_PregledPopis
  120477.     @Sifra_OE smallint,
  120478.     @Datum smalldatetime
  120479. AS
  120480.     Declare @SSQL varchar(8000)
  120481.     Set @SSQL = 'SELECT P.Sifra_OE, P.Datum,  P.Opis, P.Celosen, P.Zatvoren, P.Sifra_DokK, P.Sifra_DokV, P.Broj_dok_k, P.Broj_dok_v, P.Izmenet, P.Sifra_Kup, O.ImeOrg,
  120482.                 dbo.fn_PopisObraboten(IdPopis) Obraboten
  120483.         FROM Popis P 
  120484.         LEFT OUTER JOIN OrgEd O ON P.Sifra_OE = O.Sifra_OE
  120485.         WHERE 1=1 '
  120486.     If @Sifra_OE IS NOT NULL
  120487.         Set @SSQL = @SSQL + ' AND P.Sifra_OE = ' + Cast(@Sifra_OE As varchar(5))
  120488.     If @Datum IS NOT NULL
  120489.         Set @SSQL = @SSQL + ' AND P.Datum = ''' + Cast(@Datum As varchar(30)) + ''' '
  120490.     Set @SSQL = @SSQL + ' ORDER BY P.IDPopis'
  120491. Print @SSQL
  120492. EXEC (@SSQL)
  120493.  
  120494.  
  120495. Go
  120496. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledprivilegii]'))
  120497. drop procedure [dbo].[sp_pregledprivilegii]
  120498.  
  120499. Go
  120500.  
  120501.  
  120502. CREATE   procedure sp_PregledPrivilegii
  120503. As
  120504.     select Sifra_GrKor,Operacija, Gener_Moze, Vnes, Izmena, Brisenje, Pregled, '' as Opis from privilegii
  120505.     order by Sifra_GrKor, operacija
  120506.  
  120507.  
  120508.  
  120509. Go
  120510. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledprivilegiiorgtip]'))
  120511. drop procedure [dbo].[sp_pregledprivilegiiorgtip]
  120512.  
  120513. Go
  120514. Create procedure sp_PregledPrivilegiiOrgTip
  120515. As
  120516.     select *, O.ImeOrg,T.ImeDok From PrivilOrgTip P
  120517.     left outer join OrgEd O on P.Sifra_OE=O.Sifra_OE
  120518.     left outer join TipDok T on P.Sifra_Dok= T.Sifra_Dok
  120519.     Order by sifra_grkor  
  120520.  
  120521.  
  120522. Go
  120523. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledprodmest]'))
  120524. drop procedure [dbo].[sp_pregledprodmest]
  120525.  
  120526. Go
  120527.  
  120528.  
  120529. CREATE           PROCEDURE [dbo].[sp_PregledProdMest]
  120530.     @Sifra_Kup    varchar(6),
  120531.     @Sifra_Mest    int,
  120532.     @DaliAktiven    char(1) = Null,           --  A - 'Aktivni   N - 'Ne Aktivni'     Null - 'Site'
  120533.     @KoiProdMest    char(1) = Null,            --  S - 'Site'       L - 'Na Lager'       U - 'Vo Upotreba'
  120534.     @Sifra_reg    smallint = Null, 
  120535.     @Posrednik    char(6) = NULL,
  120536.     @Sifra_Grad    smallint = Null,
  120537.     @DaliSporen    char(1) = NULL,
  120538.     @Sif_TipProdM smallint = NULL,
  120539.     @Pod2 Smallint = Null,
  120540.     @GrKup     varchar(500) = Null,
  120541.     @TipKup VarChar(300) = Null,
  120542.     @Sifra_Pat     smallint= null,
  120543.     @PatOdKomintPat    char(1) = 'N'   
  120544. --    @Koi_Gradovi    varchar(2000 = Null,
  120545. --    @Koi_Regioni    varchar(2000 = Null                     sifra_reg treba da se Izbrise
  120546. AS
  120547.     Declare @SSQL as Varchar(2000)
  120548.         Declare @SSQLGr as Varchar(2000)
  120549.         If @GrKup Is Not Null
  120550.     Begin
  120551.             CREATE   Table #KupObj
  120552.         (
  120553.             Sifra_Kup    char(6),
  120554.             Sifra_Obj    smallint
  120555.         )
  120556.         CREATE   Table #KupObj1
  120557.         (
  120558.             Sifra_Kup    char(6),
  120559.             Sifra_Obj    smallint
  120560.         )
  120561.         Set @SSQLGr = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  120562.         Exec(@SSQLGr)
  120563.  
  120564.         Set @SSQLGr = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  120565.                 Select Distinct GK.Sifra_Kup, KOB.Sifra_Obj 
  120566.                 From SGrKupObj GK 
  120567.                 Inner Join Kobjekti KOB On GK.Sifra_Kup = KOB.Sifra_Kup
  120568.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  120569.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  120570.         Exec(@SSQLGr)
  120571.  
  120572.         Set @SSQLGr = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  120573.         Exec(@SSQLGr)
  120574.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  120575.     End
  120576.  
  120577.                             -- , K.Adresa, KO.Adresa
  120578.     Set @SSQL= ' Select K.ImeKup, PM.*, KO.ImeObj, K.Sifra_Reg, R.ImeRegion, K.DogovorBroj,
  120579.     K.Adresa AdresaKup, K.SMesto MestoKup, K.Telefon TelefonKup,
  120580.     KO.Adresa AdresaObj, KO.SMesto MestoObj, KO.Telefon TelefonObj, 
  120581.     KO.Sifra_Reg Sifra_RegObj, GR.ImeRegion ImeRegionObj, 
  120582.         PR.ImeKup ImeProizv, PR.Adresa ProizvAdresa, Posr.ImeKup ImePosr, Posr.Adresa PosrAdresa,
  120583.         TPM.ImeTipProdM 
  120584.     From ProdMest PM
  120585.     Left Outer Join Komint K On PM.Sifra_Kup=K.Sifra_Kup
  120586.     Left Outer Join KObjekti KO On KO.Sifra_Kup = PM.Sifra_Kup and KO.Sifra_Obj = PM.Sifra_Obj
  120587.     Left Outer Join GRegion R On R.Sifra_Reg = K.Sifra_Reg 
  120588.     Left Outer Join GRegion GR On GR.Sifra_Reg = KO.Sifra_Reg
  120589.         Left Outer Join Komint PR On PM.Proizv=PR.Sifra_Kup 
  120590.         Left Outer Join Komint Posr On PM.Posrednik=Posr.Sifra_Kup
  120591.         LEFT OUTER JOIN TipProdMesto TPM On TPM.Sif_TipProdM = PM.Sif_TipProdM '
  120592.     If @GrKup Is Not Null
  120593.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=PM.Sifra_Kup 
  120594.                       And (Case When PM.Sifra_Obj Is Not Null Then PM.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  120595.     Set @SSQL = @SSQL + ' Where 1=1 '
  120596.         If @Sifra_Kup Is Not Null
  120597.         Set @SSQl = @SSQL + ' and PM.Sifra_Kup = ' + @Sifra_Kup  + ' '
  120598.     If @Sifra_Mest Is Not Null 
  120599.         Set @SSQL = @SSQL + ' and PM.Sifra_Mest= ' + cast(@Sifra_Mest as varchar(6)) + ' '
  120600.     If @Sifra_Reg Is Not Null 
  120601.         Set @SSQL = @SSQL + ' and ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + cast(@Sifra_Reg as varchar(6)) + ') 
  120602.             OR ( KO.Sifra_Reg Is Null and K.Sifra_Reg = ' + cast(@Sifra_Reg as varchar(6)) + ')) '     
  120603.     If @Sifra_Grad Is Not Null 
  120604.         Set @SSQL = @SSQL + ' and ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad = ' + cast(@Sifra_Grad as varchar(6)) + ') 
  120605.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad = ' + cast(@Sifra_Grad as varchar(6)) + ')) '     
  120606.     If @Posrednik Is Not Null 
  120607.         Set @SSQL = @SSQL + ' and PM.Posrednik = ''' + @Posrednik + ''' '
  120608. /*    If @Koi_Gradovi Is Not NULL    
  120609.         Begin
  120610.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  120611.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  120612.         End
  120613.     If @Koi_Regioni Is Not NULL    
  120614.         Begin
  120615.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  120616.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  120617.         End
  120618. */    If @KoiProdMest = 'S' 
  120619.           Begin
  120620.         If @DaliAktiven Is Not Null
  120621.             Begin
  120622.             If @DaliAktiven = 'N'
  120623.                 Set @SSQL = @SSQL + ' And PM.DaliAktiven = ''N'' '
  120624.             Else 
  120625.                 Set @SSQL = @SSQL + '  And (PM.DaliAktiven <> ''N'' or PM.DaliAktiven Is Null) '
  120626.             End
  120627.           End
  120628.     If @KoiProdMest = 'L'
  120629.          Begin
  120630.          Set @SSQL = @SSQL + ' And  PM.Sifra_Kup Is Null '
  120631.         If @DaliAktiven Is Not Null
  120632.             Begin
  120633.             If @DaliAktiven = 'N'
  120634.                 Set @SSQL = @SSQL + ' And PM.DaliAktiven = ''N'' '
  120635.             Else 
  120636.                 Set @SSQL = @SSQL + ' And (PM.DaliAktiven <> ''N'' or PM.DaliAktiven Is Null) '
  120637.             End
  120638.          End
  120639.     If @KoiProdMest = 'U'
  120640.          Begin
  120641.          Set @SSQL = @SSQL + ' And  PM.Sifra_Kup Is Not Null '
  120642.         If @DaliAktiven Is Not Null
  120643.             Begin
  120644.             If @DaliAktiven = 'N'
  120645.                 Set @SSQL = @SSQL + ' And PM.DaliAktiven = ''N'' '
  120646.             Else 
  120647.                 Set @SSQL = @SSQL + '  And (PM.DaliAktiven <> ''N'' or PM.DaliAktiven Is Null) '
  120648.             End
  120649.          End
  120650.     IF @DaliSporen = 'D'
  120651.         Set @SSQL = @SSQL + ' And PM.DaliSporen = ''D'' '    
  120652.     Else IF @DaliSporen = 'N'
  120653.         Set @SSQL = @SSQL + ' And (PM.DaliSporen IS NULL OR PM.DaliSporen <> ''D'') '    
  120654.     If @Sif_TipProdM Is Not Null 
  120655.         Set @SSQL = @SSQL + ' and PM.Sif_TipProdM= ' + cast(@Sif_TipProdM as varchar(6)) + ' '
  120656.     If @Pod2 Is Not NULL
  120657.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  120658.                         Or (KO.KDrugo2 Is Null And K.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '        
  120659.     If @TipKup Is Not NULL    
  120660.         Begin
  120661.             Set @SSQL = @SSQL + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + ')) 
  120662.                                OR ( KO.TipKup Is Null and K.TipKup In ( ' + @TipKup + '))) '     
  120663.         End
  120664.     If @PatOdKomintPat = 'D'
  120665.       Begin
  120666.         If @Sifra_Pat IS NOT NULL
  120667.             SET @SSQL = @SSQL + ' AND PM.Sifra_Kup In (Select Sifra_Kup From KomintPat Where Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ') '
  120668.             
  120669.       End
  120670.     Else
  120671.       Begin
  120672.         If @Sifra_Pat Is Not Null 
  120673.            Set @SSQL = @SSQL + ' and PM.Sifra_Pat= ' + cast(@Sifra_Pat as varchar(6)) + ' '
  120674.       End  
  120675.         
  120676.     Set @SSQL = @SSQL + ' Order By PM.Sifra_mest '
  120677.     Exec (@SSQL)
  120678.  
  120679.  
  120680.  
  120681.  
  120682.  
  120683.  
  120684.  
  120685.  
  120686.  
  120687.  
  120688.  
  120689. Go
  120690. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledrecepti]'))
  120691. drop procedure [dbo].[sp_pregledrecepti]
  120692.  
  120693. Go
  120694.  
  120695.  
  120696. CREATE  PROCEDURE sp_PregledRecepti
  120697.     @Broj_Recept        int=null,
  120698.     @Broj_Recept_Do    int=null, 
  120699.     @Sifra_Apteka        char(2)=null,
  120700.     @Sifra_Apteka_Do    char(2)=null,
  120701.     @Datum_Recept_Od    smalldatetime = Null,
  120702.     @Datum_Recept_Do    smalldatetime = Null,
  120703.     @Datum_Izdav_Od        smalldatetime = Null,
  120704.     @Datum_Izdav_Do        smalldatetime = Null,
  120705.     @Sifra_Lekar        char(6) = Null,
  120706.     @Sifra_Lekar_Spec    char(6) = Null,
  120707.     @Sifra_Dijagn        char(5) = Null,
  120708.     @Sifra_Farmacevt    char(6) = Null,    
  120709.     @Sifra_Lek        varchar(20) = Null,
  120710.     @Godina_Fra        smallint = Null,
  120711.     @Specif_Br        char(6) = Null,
  120712.     @Faktura_Br        char(6) = Null,
  120713.     @LekoviBezPriem    char(1) = Null,
  120714.         @PodracnaSluzba    char(4) = Null,
  120715.     @PrazenEMBG char(1)    = Null,
  120716.     @DaliSpecifiki char(1)    = Null
  120717.  
  120718. AS
  120719.  
  120720.        Declare @SSQL as Varchar(8000)
  120721.        Set @SSQL = ' Select  R.*, Lek1.ImeLekar as ImeLekarMatic, Lek2.ImeLekar as ImeLekarSpec,
  120722.                        L.ImeArt, A.ImeATC, F.ImeFarmacevt, D.ImeDijagn, Os.ImeOsnovOSig, P.ImePacient, Ap.ImeApteka,
  120723.                    Month(R.Datum_Izdav) MesIzdav, Year(R.Datum_Izdav) GodIzdav, L.Alt_Ime,
  120724.                 substring(R.sifra_Kompanija, 1, 4) Kompanija
  120725.                         From Recepti R 
  120726.                         Left Outer Join Lekari Lek1 on R.Sifra_Lekar = Lek1.Sifra_Lekar
  120727.                         Left Outer Join Lekari Lek2 on R.Sifra_Lekar_Spec = Lek2.Sifra_Lekar
  120728.                         Left Outer Join KatArt L on R.Sifra_Art = L.Sifra_Art
  120729.                         Left Outer Join ATCKodovi A on R.Sifra_ATC = A.Sifra_ATC
  120730.                         Left Outer Join Farmacevt F on R.Sifra_Farmacevt = F.Sifra_Farmacevt
  120731.                         Left Outer Join Dijagnozi D on R.Sifra_Dijagn = D.Sifra_Dijagn
  120732.                         Left Outer Join OsnovOsig Os on R.Sifra_OSnovOsig = Os.Sifra_OsnovOSig
  120733.                         Left Outer Join Apteka Ap on R.Sifra_Apteka = Ap.Sifra_Apteka
  120734.                         Left Outer Join Pacienti P ON R.EMBG=P.EMBG
  120735.                 left outer join PodracniSluzbi PS 
  120736.                     on substring(R.sifra_Kompanija, 1, 4) = PS.Sifra_PodrSLuzba
  120737.                         Where 1=1 '
  120738.     If @Sifra_Apteka Is Not Null
  120739.         Set @SSQL = @SSQL + ' And R.Sifra_Apteka >= ''' + @Sifra_Apteka + ''' '
  120740.     If @Sifra_Apteka_Do Is Not Null
  120741.         Set @SSQL = @SSQL + ' And R.Sifra_Apteka <= ''' + @Sifra_Apteka_Do + ''' '
  120742.     If @Broj_Recept Is Not Null
  120743.         Set @SSQL = @SSQL + ' And R.Broj_Recept >= ' + Cast(@Broj_Recept as varchar(6)) + ' '    
  120744.     If @Broj_Recept_Do Is Not Null
  120745.         Set @SSQL = @SSQL + ' And R.Broj_Recept <= ' + Cast(@Broj_Recept_Do as varchar(6)) + ' '    
  120746.     If @Datum_Recept_Od Is Not Null
  120747.         Set @SSQL = @SSQL + ' And R.Datum_Recept >= ''' + Cast(@Datum_Recept_Od as varchar(30)) + ''' '
  120748.     If @Datum_Recept_Do Is Not Null
  120749.         Set @SSQL = @SSQL + ' And R.Datum_Recept <= ''' + Cast(@Datum_Recept_Do as varchar(30)) + ''' '
  120750.     If @Datum_Izdav_Od Is Not Null
  120751.         Set @SSQL = @SSQL + ' And R.Datum_Izdav >= ''' + Cast(@Datum_Izdav_Od as varchar(30)) + ''' '
  120752.     If @Datum_Izdav_Do Is Not Null
  120753.         Set @SSQL = @SSQL + ' And R.Datum_Izdav <= ''' + Cast(@Datum_Izdav_Do as varchar(30)) + ''' '
  120754.     If @Sifra_Lekar Is Not Null
  120755.         Set @SSQL = @SSQL + ' And R.Sifra_Lekar = ''' + @Sifra_Lekar + ''' '
  120756.     If @Sifra_Lekar_Spec Is Not Null
  120757.         Set @SSQL = @SSQL + ' And R.Sifra_Lekar_Spec = ''' + @Sifra_Lekar_Spec + ''' '
  120758.     If @Sifra_Dijagn Is Not Null
  120759.         Set @SSQL = @SSQL + ' And R.Sifra_Dijagn = ''' + @Sifra_Dijagn + ''' '
  120760.     If @Sifra_Farmacevt Is Not Null
  120761.         Set @SSQL = @SSQL + ' And R.Sifra_Farmacevt = ''' + @Sifra_Farmacevt + ''' '
  120762.     If @Sifra_Lek Is Not Null
  120763.         Set @SSQL = @SSQL + ' And R.Sifra_Art = ''' + @Sifra_Lek + ''' '
  120764.     If @Godina_Fra Is Not Null
  120765.         Set @SSQL = @SSQL + ' And R.Godina_Fra = ' + Cast(@Godina_Fra as varchar(6)) + ' '    
  120766.     If @Specif_Br Is Not Null
  120767.         Set @SSQL = @SSQL + ' And R.Specif_Br = ''' + @Specif_Br + ''' '
  120768.         If @Faktura_Br Is Not Null
  120769.         Set @SSQL = @SSQL + ' And R.Faktura_Br = ''' + @Faktura_Br + ''' '
  120770.     If @LekoviBezPriem = 'D'
  120771.         Set @SSQL = @SSQL + ' And R.Broj_Priem = '' '' '
  120772.         If @PodracnaSluzba Is Not Null
  120773.         Set @SSQL = @SSQL + ' And PS.Sifra_PodrSluzba_Fakt = ''' + @PodracnaSluzba + ''' '
  120774.     if @PrazenEMBG = 'D'
  120775.         Set @SSQL = @SSQL + ' And (R.EMBG is null or R.EMBG = '''' or 
  120776.                        R.Sifra_Kompanija is null or R.Sifra_Kompanija = '''') '
  120777.     if @DaliSpecifiki = 'D'
  120778.         Set @SSQL = @SSQL + ' And L.VoPDA = ''D'' '
  120779.     else
  120780.         Set @SSQL = @SSQL + ' And (L.VoPDA is null or L.VoPDA <> ''D'') '
  120781.  
  120782. --print @SSQL
  120783.     Exec(@SSQL)
  120784.  
  120785. Go
  120786. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledrecepti_p]'))
  120787. drop procedure [dbo].[sp_pregledrecepti_p]
  120788.  
  120789. Go
  120790.  
  120791.  
  120792. CREATE PROCEDURE sp_PregledRecepti_P
  120793.     @Broj_Recept        int=null,
  120794.     @Broj_Recept_Do        int=null, 
  120795.     @Sifra_Apteka        char(2)=null,
  120796.     @Datum_Izdav_Od        smalldatetime = Null,
  120797.     @Datum_Izdav_Do        smalldatetime = Null
  120798.  
  120799. AS
  120800.  
  120801.        Declare @SSQL as Varchar(8000)
  120802.        Set @SSQL = ' Select  R.*, Lek1.ImeLekar as ImeLekarMatic, Lek2.ImeLekar as ImeLekarSpec,
  120803.                        L.ImeArt, A.ImeATC, F.ImeFarmacevt, D.ImeDijagn, Os.ImeOsnovOSig, P.ImePacient,
  120804.                    Ap.ImeApteka, P.Broj_Kniska, P.EMBG, P.Sifra_Kompanija,
  120805.                    Month(R.Datum_Izdav) MesIzdav, Year(R.Datum_Izdav) GodIzdav
  120806.                         From Recepti_P R 
  120807.                         Left Outer Join Lekari Lek1 on R.Sifra_Lekar = Lek1.Sifra_Lekar
  120808.                         Left Outer Join Lekari Lek2 on R.Sifra_Lekar_Spec = Lek2.Sifra_Lekar
  120809.                         Left Outer Join Katart L on R.Sifra_Art = L.Sifra_Art
  120810.                         Left Outer Join ATCKodovi A on R.Sifra_ATC = A.Sifra_ATC
  120811.                         Left Outer Join Farmacevt F on R.Sifra_Farmacevt = F.Sifra_Farmacevt
  120812.                         Left Outer Join Dijagnozi D on R.Sifra_Dijagn = D.Sifra_Dijagn
  120813.                         Left Outer Join OsnovOsig Os on R.Sifra_OSnovOsig = Os.Sifra_OsnovOSig
  120814.                         Left Outer Join Apteka Ap on R.Sifra_Apteka = Ap.Sifra_Apteka
  120815.                         Left Outer Join Pacienti P ON R.EMBG=P.EMBG
  120816.                         Where 1=1 '
  120817.     If @Sifra_Apteka Is Not Null
  120818.         Set @SSQL = @SSQL + ' And R.Sifra_Apteka = ''' + @Sifra_Apteka + ''' '
  120819.     If @Broj_Recept Is Not Null
  120820.         Set @SSQL = @SSQL + ' And R.Broj_Recept >= ' + Cast(@Broj_Recept as varchar(6)) + ' '    
  120821.     If @Broj_Recept_Do Is Not Null
  120822.         Set @SSQL = @SSQL + ' And R.Broj_Recept <= ' + Cast(@Broj_Recept_Do as varchar(6)) + ' '    
  120823.     If @Datum_Izdav_Od Is Not Null
  120824.         Set @SSQL = @SSQL + ' And R.Datum_Izdav >= ''' + Cast(@Datum_Izdav_Od as varchar(30)) + ''' '
  120825.     If @Datum_Izdav_Do Is Not Null
  120826.         Set @SSQL = @SSQL + ' And R.Datum_Izdav <= ''' + Cast(@Datum_Izdav_Do as varchar(30)) + ''' '
  120827.  
  120828.     Exec(@SSQL)
  120829.  
  120830.  
  120831.  
  120832.  
  120833. Go
  120834. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledrecepti_zbirno_lekari]'))
  120835. drop procedure [dbo].[sp_pregledrecepti_zbirno_lekari]
  120836.  
  120837. Go
  120838.  
  120839. CREATE  PROCEDURE sp_PregledRecepti_Zbirno_Lekari
  120840.     @Broj_Recept        int=null,
  120841.     @Broj_Recept_Do    int=null, 
  120842.     @Sifra_Apteka        char(2)=null,
  120843.     @Sifra_Apteka_Do    char(2)=null,
  120844.     @Datum_Recept_Od    smalldatetime = Null,
  120845.     @Datum_Recept_Do    smalldatetime = Null,
  120846.     @Datum_Izdav_Od    smalldatetime = Null,
  120847.     @Datum_Izdav_Do    smalldatetime = Null,
  120848.     @Sifra_Farmacevt    char(6) = Null,    
  120849.     @Sifra_Lek        varchar(6) = Null,
  120850.     @Godina_Fra        smallint = Null
  120851. --    @SoDDV        char(1) = Null
  120852. AS
  120853.     Declare @SSQL as Varchar(8000)
  120854.  
  120855.     Set @SSQL = ' Select R.Sifra_Lekar, L.ImeLekar, Count(R.Sifra_Art) Kolku_Recepti,
  120856.             Sum(R.Iznos_Tender) Iznos_Tender, 
  120857.             Sum(R.Iznos_Tender * (1 + ProcDDV / 100)) Iznos_Tender_So_DDV, 
  120858.             Sum(R.Iznos_Partic) Iznos_Partic, 
  120859.             Sum(R.Iznos_So_DDV) Iznos_So_DDV
  120860.             From Recepti R 
  120861.             Left Outer Join Lekari L 
  120862.                 On L.Sifra_Lekar = R.Sifra_Lekar
  120863.             Where 1=1 '
  120864.     If @Sifra_Apteka Is Not Null
  120865.         Set @SSQL = @SSQL + ' And R.Sifra_Apteka >= ''' + @Sifra_Apteka + ''' '
  120866.     If @Sifra_Apteka_Do Is Not Null
  120867.         Set @SSQL = @SSQL + ' And R.Sifra_Apteka <= ''' + @Sifra_Apteka_Do + ''' '
  120868.     If @Broj_Recept Is Not Null
  120869.         Set @SSQL = @SSQL + ' And R.Broj_Recept >= ' + Cast(@Broj_Recept as varchar(6)) + ' '    
  120870.     If @Broj_Recept_Do Is Not Null
  120871.         Set @SSQL = @SSQL + ' And R.Broj_Recept <= ' + Cast(@Broj_Recept_Do as varchar(6)) + ' '    
  120872.     If @Datum_Recept_Od Is Not Null
  120873.         Set @SSQL = @SSQL + ' And R.Datum_Recept >= ''' + Cast(@Datum_Recept_Od as varchar(30)) + ''' '
  120874.     If @Datum_Recept_Do Is Not Null
  120875.         Set @SSQL = @SSQL + ' And R.Datum_Recept <= ''' + Cast(@Datum_Recept_Do as varchar(30)) + ''' '
  120876.     If @Datum_Izdav_Od Is Not Null
  120877.         Set @SSQL = @SSQL + ' And R.Datum_Izdav >= ''' + Cast(@Datum_Izdav_Od as varchar(30)) + ''' '
  120878.     If @Datum_Izdav_Do Is Not Null
  120879.         Set @SSQL = @SSQL + ' And R.Datum_Izdav <= ''' + Cast(@Datum_Izdav_Do as varchar(30)) + ''' '
  120880.     If @Sifra_Farmacevt Is Not Null
  120881.         Set @SSQL = @SSQL + ' And R.Sifra_Farmacevt = ''' + @Sifra_Farmacevt + ''' '
  120882.     If @Sifra_Lek Is Not Null
  120883.         Set @SSQL = @SSQL + ' And R.Sifra_Art = ''' + @Sifra_Lek + ''' '
  120884.     If @Godina_Fra Is Not Null
  120885.         Set @SSQL = @SSQL + ' And R.Godina_Fra = ' + Cast(@Godina_Fra as varchar(6)) + ' '    
  120886.     Set @SSQL = @SSQL + ' Group By R.Sifra_Lekar, L.ImeLekar   '
  120887.     Exec (@SSQL)
  120888.  
  120889.  
  120890.  
  120891. Go
  120892. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledsostav]'))
  120893. drop procedure [dbo].[sp_pregledsostav]
  120894.  
  120895. Go
  120896. CREATE           PROCEDURE sp_PregledSostav
  120897.     @Sifra_Oe     smallint,  
  120898.     @Grupa_Oe  varchar(6) = Null,
  120899.     @Artikal_Od  varchar(20), 
  120900.     @Artikal_Do  varchar(20),
  120901.     @Surovina_Od    varchar(20) = Null,
  120902.     @Surovina_Do    varchar(20) = Null,
  120903.     @PoNabCena char(1) = 'N',
  120904.     @Proiz_Sema smallint = Null
  120905. AS
  120906.     Declare @SSQL varchar(8000)
  120907.     If @PoNabCena = 'D' 
  120908.     Begin
  120909.         Create Table #Rezult
  120910.         (
  120911.         Sifra_Art varchar(20),
  120912.         Sifra_Sur varchar(20),
  120913.         VkCena    decimal(18,6),
  120914.         Zaliha    decimal(18,6),
  120915.         NabCena decimal(18,6),
  120916.         KolicZbir char(1)
  120917.         )
  120918.         Create Table #Tab1
  120919.         (
  120920.         Sifra_Oe smallint,
  120921.         Sifra_Art varchar(20),
  120922.         Sifra_Sur varchar(20),
  120923.         NabCena decimal(18,6),
  120924.         KolicZbir char(1),
  120925.         Zaliha decimal(18,6)
  120926.         )
  120927.         Create Table #tSostav
  120928.         (
  120929.         Sifra_Oe smallint,
  120930.         Sifra_Art varchar(20),
  120931.         VkCena    decimal(18,6),
  120932.         Zaliha    decimal(18,6)
  120933.         )
  120934.         Set @SSQL = ' Insert Into #tSostav Select SO.Sifra_Oe, S.Sifra_art, Sum(S.Ima_Kolic * dbo.fn_VratiCena(SO.Cena, So.Posn, So.DanCena, ''N'')), Sum(So.Vlez-So.Izlez)
  120935.                 From Sostav S
  120936.                 Left Outer Join Soart SO On SO.Sifra_art = S.Sifra_Sur '
  120937.         If @Sifra_Oe Is Not Null
  120938.             Set @SSQL=@SSQL + '    And SO.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(5)) + ' '
  120939.         If @Grupa_Oe Is Not Null
  120940.             Set @SSQL=@SSQL + '    And SO.Sifra_Oe in (select sifra_oe from SGrOrg Where Sif_GrOrg = ''' + @Grupa_Oe + ''') '
  120941.         Set @SSQL = @SSQL + ' WHERE 1=1 '
  120942.         If @Artikal_Od  IS NOT  NULL
  120943.             Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  120944.         If @Artikal_Do  IS NOT  NULL
  120945.             Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  120946.         If @Surovina_Od Is Not Null
  120947.             Set @SSQL = @SSQL + ' And S.Sifra_Sur >= ''' + @Surovina_Od + ''' '
  120948.         If @Surovina_Do Is Not Null
  120949.             Set @SSQL = @SSQL + ' And S.Sifra_Sur <= ''' + @Surovina_Do + ''' '
  120950.         Set @SSQL=@SSQL + ' Group By SO.Sifra_Oe, S.Sifra_Art '    
  120951.         Exec(@SSQL)
  120952.         Set @SSQL = ' Insert Into #Tab1 Select SO.Sifra_Oe, S.Sifra_art, S.Sifra_sur, dbo.fn_VratiCena(SO.Cena, So.Posn, So.DanCena, ''N''), S.KolicZbir, (So.Vlez-So.Izlez)
  120953.                 From Sostav S
  120954.                 Left Outer Join Soart SO On SO.Sifra_art = S.Sifra_Sur '
  120955.         If @Sifra_Oe Is Not Null
  120956.             Set @SSQL=@SSQL + '    And SO.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(5)) + ' '
  120957.          If @Grupa_Oe Is Not Null
  120958.             Set @SSQL=@SSQL + '    And SO.Sifra_Oe in (select sifra_oe from SGrOrg Where Sif_GrOrg = ''' + @Grupa_Oe + ''') '
  120959.         Set @SSQL = @SSQL + ' WHERE 1=1 '
  120960.         If @Artikal_Od  IS NOT  NULL
  120961.             Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  120962.         If @Artikal_Do  IS NOT  NULL
  120963.             Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  120964.         If @Surovina_Od Is Not Null
  120965.             Set @SSQL = @SSQL + ' And S.Sifra_Sur >= ''' + @Surovina_Od + ''' '
  120966.         If @Surovina_Do Is Not Null
  120967.             Set @SSQL = @SSQL + ' And S.Sifra_Sur <= ''' + @Surovina_Do + ''' '
  120968.         Exec(@SSQL)
  120969.         Update #tSostav Set VkCena = 0 Where VkCena Is Null
  120970.         Update #tSostav Set Zaliha = 0 Where Zaliha Is Null
  120971.         Update #tSostav Set Sifra_Oe=717 Where Sifra_Oe Is Null    -- Pretpostavuvam deka ne postoi OE 717, a i da postoi ne smeta
  120972.         Update #Tab1 Set Sifra_Oe=717 Where Sifra_Oe Is Null
  120973.         Insert Into #Rezult 
  120974.         Select  tS.Sifra_Art, T.Sifra_Sur, tS.VkCena, T.Zaliha, T.NabCena, T.KolicZbir
  120975.         From #tSostav tS
  120976.         Inner Join #Tab1 T On tS.Sifra_Art=T.Sifra_Art and tS.Sifra_Oe=T.Sifra_Oe
  120977.     --select * from #tsostav order by sifra_art
  120978.     --select * from #Tab1 order by sifra_art
  120979.     --select * from #Rezult order by sifra_art
  120980.         Create Table #Tab
  120981.         (
  120982.         Sifra_art varchar(20),
  120983.         Sifra_Sur varchar(20),
  120984.         VkCena    decimal(18,6),
  120985.         NNabCena decimal(18,6)
  120986.         )
  120987.         Insert Into #Tab Select Distinct Sifra_art, Sifra_Sur, 0, 0 From #Rezult
  120988.         Declare @Sifra_Art    Varchar(20)
  120989.         Declare @Sifra_Sur    Varchar(20)
  120990.         Declare @VkCena     Decimal(18,6)
  120991.         Declare @NabCena     Decimal(18,6)
  120992.         Declare @Zaliha     Decimal(18,6)
  120993.     --select * from #Rezult  Order By Zaliha Desc, VkCena Desc
  120994.         DECLARE Crs CURSOR FAST_FORWARD FOR SELECT Sifra_art, Sifra_Sur, VkCena, NabCena, Zaliha From #Rezult  Order By Zaliha Desc, VkCena Desc
  120995.         OPEN Crs
  120996.         FETCH NEXT FROM Crs INTO @Sifra_Art, @Sifra_Sur, @VkCena, @NabCena, @Zaliha
  120997.         WHILE @@FETCH_STATUS = 0
  120998.         Begin
  120999.             If @Zaliha > 0
  121000.             Begin
  121001.                 Update #Tab Set VkCena=@VkCena Where Sifra_Art=@Sifra_Art and VkCena = 0                    Update #Tab Set NNabCena=@NabCena Where Sifra_sur=@Sifra_sur and NNabCena = 0
  121002.             End
  121003.             Else If @Zaliha <= 0 And @VkCena <> 0 
  121004.             Begin
  121005.                 Update #Tab Set VkCena=@VkCena Where Sifra_Art=@Sifra_Art and VkCena = 0
  121006.                 Update #Tab Set NNabCena=@NabCena Where Sifra_sur=@Sifra_sur and NNabCena = 0
  121007.             End
  121008.             Else If @Zaliha <=0 And @VkCena = 0 
  121009.             Begin
  121010.                 Update #Tab Set VkCena=@VkCena Where Sifra_Art=@Sifra_Art and VkCena = 0
  121011.                 Update #Tab Set NNabCena=@NabCena Where Sifra_sur=@Sifra_sur and NNabCena = 0
  121012.             End
  121013.             Fetch Next From Crs Into @Sifra_Art, @Sifra_Sur, @VkCena, @NabCena, @Zaliha
  121014.         End --While
  121015.         Close Crs
  121016.         Deallocate Crs
  121017.     --select * from #tab order by sifra_art, sifra_sur
  121018.         Set @SSQL =     'SELECT ''S'' as Sto, S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, Ts.VkCena, S.VodeckiArtikal, S.KolicZbir, A.ImeArt ImeArt, Su.ImeArt ImeSur, Ts.NNabCena,
  121019.                     A.EdMera, SU.EdMera SurEdMera
  121020.                 FROM Sostav S 
  121021.                 Inner Join #Tab Ts On Ts.Sifra_Art = S.Sifra_art and Ts.Sifra_Sur=S.Sifra_Sur
  121022.                 INNER JOIN KatArt A    ON S.Sifra_Art  = A.SIfra_Art 
  121023.                 INNER JOIN KatArt SU ON S.Sifra_Sur  = SU.Sifra_Art
  121024.                 WHERE 1=1 '
  121025.         If @Artikal_Od  IS NOT  NULL
  121026.             Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  121027.         If @Artikal_Do  IS NOT  NULL
  121028.             Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  121029.         If @Surovina_Od Is Not Null
  121030.             Set @SSQL = @SSQL + ' And S.Sifra_Sur >= ''' + @Surovina_Od + ''' '
  121031.         If @Surovina_Do Is Not Null
  121032.             Set @SSQL = @SSQL + ' And S.Sifra_Sur <= ''' + @Surovina_Do + ''' '
  121033.         End
  121034.     Else If @PoNabCena = 'N' 
  121035.     Begin
  121036.         Set @SSQL =     'SELECT ''S'' as Sto, S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena, S.VodeckiArtikal, S.KolicZbir, A.ImeArt ImeArt, Su.ImeArt ImeSur, 0 as NNabCena,
  121037.                     A.EdMera, SU.EdMera SurEdMera
  121038.                 FROM Sostav S 
  121039.                 INNER JOIN KatArt A    ON S.Sifra_Art  = A.SIfra_Art 
  121040.                 INNER JOIN KatArt SU ON S.Sifra_Sur  = SU.Sifra_Art
  121041.                 WHERE 1=1 '
  121042.         If @Artikal_Od  IS NOT  NULL
  121043.             Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od 
  121044.         If @Artikal_Do  IS NOT  NULL
  121045.             Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do 
  121046.         If @Surovina_Od Is Not Null
  121047.             Set @SSQL = @SSQL + ' And S.Sifra_Sur >= ''' + @Surovina_Od + ''' '
  121048.         If @Surovina_Do Is Not Null
  121049.             Set @SSQL = @SSQL + ' And S.Sifra_Sur <= ''' + @Surovina_Do + ''' '
  121050.     End
  121051.     If @Proiz_Sema Is Not Null
  121052.     Begin
  121053.         Create Table #Sema
  121054.         (
  121055.          Sto        char(1),
  121056.          Sifra_Art    varchar(20),
  121057.          Sifra_Sur    varchar(20),
  121058.          Ima_Kolic    decimal(18,6),
  121059.          Cena        decimal(18,6),
  121060.          VkCena    decimal(18,6),
  121061.          VodeckiArtikal    char(1),
  121062.          KolicZbir     char(1),
  121063.          ImeArt         varchar(40),
  121064.          ImeSur         varchar(40),
  121065.          NNabCena    decimal(18,6),
  121066.          EdMera    char(5),
  121067.          SurEdMera    char(5)
  121068.         )
  121069.         Insert Into #Sema Exec(@SSQL)
  121070.         Create Table #Tab2
  121071.         (
  121072.          Sifra_Art    varchar(20),
  121073.          Sifra_Tros    varchar(20),
  121074.          Cena        decimal(18,6),
  121075.          Kolic        decimal(18,6),
  121076.          VkCena    decimal(18,6),
  121077.          VodeckiArtikal    char(1),
  121078.          KolicZbir     char(1)
  121079.         )
  121080.         Set @SSQL = ' Insert Into #Tab2
  121081.         Select S.Sifra_art, T.Sifra_Art as Sifra_Tros, T.Cena, Sum(S.Ima_Kolic), (T.Cena * Sum(S.Ima_Kolic)), S.VodeckiArtikal, S.KolicZbir
  121082.         From Sostav S, ProizvTrosFix T
  121083.         Where T.Proiz_Sema = ' + cast(@Proiz_Sema as varchar(5)) + ' and T.PoVodeckiArtikal = ''N'' and S.kolicZbir = ''D'' '
  121084.         If @Artikal_Od  IS NOT  NULL
  121085.             Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  121086.         If @Artikal_Do  IS NOT  NULL
  121087.             Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  121088.         If @Surovina_Od Is Not Null
  121089.             Set @SSQL = @SSQL + ' And S.Sifra_Sur >= ''' + @Surovina_Od + ''' '
  121090.         If @Surovina_Do Is Not Null
  121091.             Set @SSQL = @SSQL + ' And S.Sifra_Sur <= ''' + @Surovina_Do + ''' '
  121092.         Set @SSQL = @SSQL + ' Group By S.Sifra_art, T.Sifra_Art, T.Cena, S.VodeckiArtikal, S.KolicZbir '
  121093.         Exec (@SSQL)
  121094.         Set @SSQL = ' Insert Into #Tab2
  121095.         Select S.Sifra_art, T.Sifra_Art as Sifra_Tros, T.Cena, Sum(S.Ima_Kolic), (T.Cena * Sum(S.Ima_Kolic)), S.VodeckiArtikal, S.KolicZbir
  121096.         From Sostav S, ProizvTrosFix T
  121097.         Where T.Proiz_Sema = ' + cast(@Proiz_Sema as varchar(5)) + ' and T.PoVodeckiArtikal =''D'' and S.VodeckiArtikal = ''D'' '
  121098.         If @Artikal_Od  IS NOT  NULL
  121099.             Set @SSQL = @SSQL + '  AND S.Sifra_Art >= ' + @Artikal_Od
  121100.         If @Artikal_Do  IS NOT  NULL
  121101.             Set @SSQL = @SSQL + '  AND S.Sifra_Art <= ' + @Artikal_Do
  121102.         If @Surovina_Od Is Not Null
  121103.             Set @SSQL = @SSQL + ' And S.Sifra_Sur >= ''' + @Surovina_Od + ''' '
  121104.         If @Surovina_Do Is Not Null
  121105.             Set @SSQL = @SSQL + ' And S.Sifra_Sur <= ''' + @Surovina_Do + ''' '
  121106.         Set @SSQL = @SSQL + ' Group By S.Sifra_art, T.Sifra_Art, T.Cena, S.VodeckiArtikal, S.KolicZbir '
  121107.         Exec (@SSQL)
  121108.         Insert Into #Sema
  121109.         Select 'X', T.Sifra_Art, T.Sifra_Tros, T.Kolic, T.Cena, T.VkCena, T.VodeckiArtikal, T.KolicZbir, K.ImeArt, A.ImeArt, 0, K.EdMera, A.EdMera SurEdMera
  121110.         From #Tab2 T
  121111.         Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  121112.         Inner Join Katart A On A.Sifra_Art = T.Sifra_Tros
  121113.         Select * from #Sema
  121114.     End
  121115.     Else
  121116.         Exec (@SSQL)
  121117.  
  121118.  
  121119. Go
  121120. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledsostavboi]'))
  121121. drop procedure [dbo].[sp_pregledsostavboi]
  121122.  
  121123. Go
  121124. CREATE   procedure [dbo].[sp_PregledSostavBoi]
  121125.     @Sifra_Art   varchar(20)=null,
  121126.     @Sifra_Boja   smallint=null
  121127.     
  121128. AS
  121129.  
  121130. Declare @SSQL as varchar(7000)
  121131. set @ssql='    SELECT S.*,  SU.ImeArt ImeSur, B.ImeBoja ImeBojaSur, A.ImeArt, BB.ImeBoja
  121132.             FROM  SostavBoiVel S
  121133.             INNER JOIN KatArt  SU ON S.Sifra_Sur = SU.Sifra_Art
  121134.             INNER JOIN KatArt  A ON S.Sifra_Art = A.Sifra_Art
  121135.             INNER JOIN Boja  BB ON S.Sifra_Boja = BB.Sifra_Boja
  121136.             LEFT OUTER JOIN Boja  B ON S.Sifra_Boja_Sur = B.Sifra_Boja
  121137.             WHERE  1=1'
  121138. if @Sifra_Art is not null 
  121139.     set @ssql=@ssql+ 'And S.Sifra_Art = ' +@Sifra_Art+' '
  121140. if @Sifra_Boja is not null
  121141.     set @ssql=@ssql+' and  S.Sifra_Boja = '+cast(@Sifra_Boja as varchar(10))+''
  121142. print(@ssql)
  121143. exec(@ssql)
  121144.   IF @@ROWCOUNT = 0
  121145.       RETURN 77000
  121146.    ELSE
  121147.       RETURN 0
  121148.  
  121149.  
  121150.  
  121151.  
  121152.  
  121153.  
  121154.  
  121155.  
  121156.  
  121157.  
  121158. Go
  121159. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledsostavboivel]'))
  121160. drop procedure [dbo].[sp_pregledsostavboivel]
  121161.  
  121162. Go
  121163.  
  121164.  
  121165.  
  121166.  
  121167.  
  121168. create  procedure [dbo].[sp_PregledSostavBoiVel]
  121169.     @Sifra_Art   varchar(20)=null,
  121170.     @Sifra_Boja   smallint=null
  121171. AS
  121172.     SELECT S.*,  SU.ImeArt ImeSur, B.ImeBoja ImeBojaSur, A.ImeArt, BB.ImeBoja
  121173.     FROM  SostavBoiVel S
  121174.     INNER JOIN KatArt  SU ON S.Sifra_Sur = SU.Sifra_Art
  121175.     INNER JOIN KatArt  A ON S.Sifra_Art = A.Sifra_Art
  121176.     INNER JOIN Boja  BB ON S.Sifra_Boja = BB.Sifra_Boja
  121177.     LEFT OUTER JOIN Boja  B ON S.Sifra_Boja_Sur = B.Sifra_Boja
  121178.     --WHERE  S.Sifra_Art = @Sifra_Art and  S.Sifra_Boja = @Sifra_Boja
  121179.   IF @@ROWCOUNT = 0
  121180.       RETURN 77000
  121181.    ELSE
  121182.       RETURN 0
  121183.  
  121184.  
  121185.  
  121186.  
  121187.  
  121188.  
  121189.  
  121190.  
  121191.  
  121192. Go
  121193. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledsostavgsostav]'))
  121194. drop procedure [dbo].[sp_pregledsostavgsostav]
  121195.  
  121196. Go
  121197.  
  121198. CREATE PROCEDURE sp_PregledSostavGSostav
  121199.     @Sifra_Oe         smallint,  
  121200.     @Artikal_Od      varchar(20) = Null, 
  121201.     @Artikal_Do      varchar(20) = Null,
  121202.     @Surovina_Od    varchar(20) = Null,
  121203.     @Surovina_Do    varchar(20) = Null,
  121204.     @PrikTekCena    char(1) = 'D',
  121205.     @CenaSoDanok char(1) = 'D'
  121206. AS
  121207.     Declare @SSQL varchar(8000)
  121208.     Declare @Sif_GrOrg char(6)
  121209.     Create Table #Rezult
  121210.     (
  121211.         Sifra_Art varchar(20),
  121212.         Sifra_Sur varchar(20),
  121213.         Kolic decimal(18,6),
  121214.         Cena decimal(18,6),
  121215.         TekCena decimal(18,6),
  121216.         Za_Kolku decimal(9,3),
  121217.         Sifra_Formula varchar(20),
  121218.         VodeckiArtikal chaR (1)
  121219.     )
  121220.     SELECT @Sif_GrOrg = G.Sif_GrOrg 
  121221.     FROM GrOrg G 
  121222.     Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @Sifra_OE WHERE G.GotovPro='D'
  121223.     Set @SSQL = ' Insert Into #Rezult Select Sifra_Art, Sifra_Sur, Kolicina, Null, Null, Za_Kolku, 
  121224.                 Null as Sifra_Formula, Null as VodeckiArtikal
  121225.             From GSostav Where Sif_GrOrg = ''' + Cast(@Sif_GrOrg as varchar(6)) + ''' '
  121226.     If @Artikal_Od Is Not Null
  121227.         Set @SSQL = @SSQL + ' And Sifra_Art >= ''' + @Artikal_Od + ''' '
  121228.     If @Artikal_Do Is Not Null
  121229.         Set @SSQL = @SSQL + ' And Sifra_Art <= ''' + @Artikal_Do + ''' '
  121230.     If @Surovina_Od Is Not Null
  121231.         Set @SSQL = @SSQL + ' And Sifra_Sur >= ''' + @Surovina_Od + ''' '
  121232.     If @Surovina_Do Is Not Null
  121233.         Set @SSQL = @SSQL + ' And Sifra_Sur <= ''' + @Surovina_Do + ''' '
  121234.     Exec(@SSQL)
  121235.     Set @SSQL = ' Insert Into #Rezult Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, Cena, Null, S.Za_Kolku, 
  121236.                          S.Sifra_Formula, S.VodeckiArtikal 
  121237.             From Sostav S Where S.Sifra_Art Not In (Select Distinct Sifra_Art From #Rezult) '
  121238.     If @Artikal_Od Is Not Null
  121239.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Artikal_Od + ''' '
  121240.     If @Artikal_Do Is Not Null
  121241.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Artikal_Do + ''' '
  121242.     If @Surovina_Od Is Not Null
  121243.         Set @SSQL = @SSQL + ' And Sifra_Sur >= ''' + @Surovina_Od + ''' '
  121244.     If @Surovina_Do Is Not Null
  121245.         Set @SSQL = @SSQL + ' And Sifra_Sur <= ''' + @Surovina_Do + ''' '
  121246.     Set @SSQL = @SSQL + ' Order By S.Sifra_Art '
  121247.     Exec(@SSQL)
  121248.     If @PrikTekCena = 'D' And @Sifra_Oe Is Not Null
  121249.         Update #Rezult 
  121250.         Set #Rezult.TekCena = dbo.fn_VratiCena(Soart.Cena, Soart.Posn, Soart.DanCena, @CenaSoDanok)
  121251.         From Soart Where Soart.Sifra_Oe=@Sifra_Oe
  121252.         And Soart.Sifra_Art=#Rezult.Sifra_Sur
  121253.                                                 --ova so 100 bidejki vo Crystal ne saka so pov od 4 decimali,pa vo rep.ke se deli so 100
  121254.     Select R.Sifra_Art, K.ImeArt, K.EdMera, R.Sifra_Sur, KS.ImeArt ImeSur, KS.EdMera SurEdMera, round(R.Kolic*100,4) Kolic, R.Cena, R.TekCena, R.Za_Kolku,
  121255.            R.Sifra_Formula, R.VodeckiArtikal, FDef.Formula1
  121256.     From #Rezult R
  121257.     Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  121258.     Inner Join Katart KS On KS.Sifra_Art = R.Sifra_Sur
  121259.     Left Outer Join FormulaDef FDef on R.SIfra_FOrmula = FDef.Sifra_Formula
  121260.  
  121261.  
  121262.  
  121263.  
  121264. Go
  121265. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledtransnal]'))
  121266. drop procedure [dbo].[sp_pregledtransnal]
  121267.  
  121268. Go
  121269.  
  121270. CREATE  PROCEDURE sp_PregledTransNal
  121271.     @Sifra_Oe        smallint=Null,
  121272.     @Datum_TransNalOd    smalldatetime=Null,
  121273.     @Datum_TransNalDo    smalldatetime=Null,
  121274.     @Broj_TransOd        int=Null,
  121275.     @Broj_TransDo        int=Null,
  121276.     @Sifra_Prev        char(6)=Null,
  121277.     @Koi_Gradovi        varchar(300)=Null,
  121278.     @KF_Gradovi        char(1)=Null,
  121279.     @Sifra_Vid_Voz        varchar(20) = Null
  121280. AS
  121281.     Declare @SSQL as varchar(8000)
  121282.     Set @SSQL = ' Select T.Sifra_Oe, T.Broj_Trans, T.Datum_TransNal, T.Sifra_Prev, P.ImePrev, D.Sifra_Dok, 
  121283.                       D.Broj_Dok, D.Datum_Dok, (D.Toc200-D.Danok1-D.Danok2) IznosBezDDV, D.Toc200 IznosSoDDV,
  121284.               D.Sifra_Kup, Kup.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  121285.                       (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) Sifra_Grad, 
  121286.                       G.Oddalecenost, T.Sifra_Vid_Voz, V.Ime_Vid_Voz, T.Vozilo, T.Vozac
  121287.             From TransNal T
  121288.             Inner Join TransNalStav TS On TS.Sifra_Oe=T.Sifra_Oe And TS.Broj_Trans=T.Broj_Trans
  121289.             Left Outer Join Dokr D On D.DokrID=TS.DokrID
  121290.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  121291.             Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  121292.             Left Outer Join VidVozila V On V.Sifra_Vid_Voz=T.Sifra_Vid_Voz
  121293.             Left Outer Join Prevoznik P On P.Sifra_Prev=T.Sifra_Prev
  121294.             Left Outer Join Grad G On G.Sifra_Grad=(Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End)
  121295.             Where 1=1 '
  121296.     If @Sifra_Oe Is Not Null
  121297.         Set @SSQL = @SSQL + ' And T.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  121298.     If @Datum_TransNalOd Is Not Null
  121299.         Set @SSQL = @SSQL + ' And T.Datum_TransNal >= ''' + cast(@Datum_TransNalOd as varchar(30)) + ''' '
  121300.     If @Datum_TransNalDo Is Not Null
  121301.         Set @SSQL = @SSQL + ' And T.Datum_TransNal <= ''' + cast(@Datum_TransNalDo as varchar(30)) + ''' '
  121302.     If @Broj_TransOd Is Not Null
  121303.         Set @SSQL = @SSQL + ' And T.Broj_Trans >= ' + cast(@Broj_TransOd as varchar(6)) + ' '
  121304.     If @Broj_TransDo Is Not Null
  121305.         Set @SSQL = @SSQL + ' And T.Broj_Trans <= ' + cast(@Broj_TransDo as varchar(6)) + ' '
  121306.     If @Sifra_Prev Is Not Null
  121307.         Set @SSQL = @SSQL + ' And T.Sifra_Prev = ''' + @Sifra_Prev + ''' '
  121308.     If @Sifra_Vid_Voz Is Not Null
  121309.         Set @SSQL = @SSQL + ' And T.Sifra_Vid_Voz = ''' + @Sifra_Vid_Voz + ''' '
  121310.     If @Koi_Gradovi Is Not Null
  121311.     Begin
  121312.         If @KF_Gradovi <> 'D' 
  121313.             Set @SSQL = @SSQL + ' And ((D.Sifra_Obj Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  121314.                         OR (D.Sifra_Obj Is Null and Kup.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  121315.         Else 
  121316.             Set @SSQL = @SSQL + ' And ((D.Sifra_Obj Is Not Null And KO.Sifra_Grad Not In (' + @Koi_Gradovi + ')) 
  121317.                         OR ( D.Sifra_Obj Is Null and Kup.Sifra_Grad Not In ( ' + @Koi_Gradovi + '))) '     
  121318.     End
  121319.     Set @SSQL = @SSQL + ' Order By (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) '
  121320. print @SSQL
  121321.     Exec(@SSQL)
  121322.  
  121323.  
  121324.  
  121325. Go
  121326. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledvelicskala]'))
  121327. drop procedure [dbo].[sp_pregledvelicskala]
  121328.  
  121329. Go
  121330. CREATE procedure sp_PregledVelicSkala
  121331. As
  121332.     Select V.*, VS.Sifra_Velic, VE.ImeVelic
  121333.     From VelicSkala V
  121334.     Inner join VelicSkalaStav VS on VS.Sifra_VelSkala=V.Sifra_VelSkala
  121335.     INNER JOIN Velicina  VE ON VS.Sifra_Velic=VE.Sifra_Velic
  121336.  
  121337.  
  121338.  
  121339. Go
  121340. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregledvirmani]'))
  121341. drop procedure [dbo].[sp_pregledvirmani]
  121342.  
  121343. Go
  121344.  
  121345.  
  121346.  
  121347. CREATE        PROCEDURE sp_PregledVirmani
  121348.     @Sifra_Nal    varchar(6),
  121349.     @Sifra_Prim    varchar(50),
  121350.     @Iznos_Od    decimal(18,4),
  121351.     @Iznos_Do    decimal(18,4),
  121352.     @Dat_Pec_Od    smalldatetime,
  121353.     @Dat_Pec_Do    smalldatetime,
  121354.     @Dat_Val_Od    smalldatetime,
  121355.     @Dat_Val_Do    smalldatetime,
  121356.     @Dat_Dok_Od    smalldatetime,
  121357.     @Dat_Dok_Do    smalldatetime,
  121358.     @Sifra_Oe    smallint,
  121359.     @Broj_Dok    int,
  121360.     @Sifra_Dok    smallint,
  121361.     @KoiVirmani    varchar(20),
  121362.     @Sifra_Ban_Nal    varchar(6), 
  121363.     @Sifra_Ban_Prim    varchar(6) 
  121364.  AS
  121365.     Declare @SSQL as Varchar(4000)
  121366.     Set @SSQL = 'Select V.VirID, V.Sifra_Nal, (Case V.Sifra_Virman     When ' + '''PP40''' + ' Then Null Else V.Sifra_Prim End) as Sifra_Prim,
  121367.                 (Case V.Sifra_Virman When '+'''PP40''' +' then  V.Sifra_Prim Else  K.ImeKup End) as ImeKup,
  121368.         V.Pov_Nal, V.Pov_Prim, V.Banka_Nal, V.Banka_Prim, V.Ska_Nal, V.Ska_Prim, V.Iznos, V.Cel, V.Sifra, V.Nacin,
  121369.         V.Dat_Pec, V.Dat_Val, V.Dat_Dok, V.Dat_Upl, V.Broj_Db_Lk, V.Sifra_Oe, V.Broj_Dok, V.Sifra_Dok,
  121370.                 V.Sifra_Ban_Nal, V.Sifra_Ban_Prim, Sifra_Virman, Budzet, Uplatna, Prihodna, A.AnID, A.Dolzi+A.Pobaruva-A.Plateno_Dolzi-A.Plateno_Pobar NeZatvIzn
  121371.     From VirmanIzv V
  121372.     Left Outer Join Komint K On K.Sifra_Kup = V.Sifra_Prim 
  121373.     LEFT OUTER Join AnFinDok A ON V.Sifra_OE=A.Sifra_OE AND V.Sifra_Dok=A.Sifra_Dok AND V.Broj_Dok=A.Broj_Dok
  121374.     Where 1=1' 
  121375.     If @Sifra_Nal Is Not Null
  121376.         Set @SSQL = @SSQL + ' And V.Sifra_Nal = ''' + @Sifra_Nal + ''' '
  121377.     If @Sifra_Prim Is Not Null
  121378.         Set @SSQL = @SSQL + ' And V.Sifra_Prim = ''' + @Sifra_Prim + ''' '
  121379.     If @Iznos_Od Is Not Null
  121380.         Set @SSQL = @SSQL + ' And V.Iznos >= ''' + cast(@Iznos_Od as varchar(15)) + ''' '
  121381.     If @Iznos_Do Is Not Null
  121382.         Set @SSQL = @SSQL + ' And V.Iznos <= ''' + cast(@Iznos_Do as varchar(15)) + ''' '
  121383.     If @Dat_Pec_Od Is Not Null
  121384.         Set @SSQL = @SSQL + ' And V.Dat_Pec >= ''' + cast(@Dat_Pec_Od as varchar(30)) + ''' '
  121385.     If @Dat_Pec_Do Is Not Null
  121386.         Set @SSQL = @SSQL + ' And V.Dat_Pec <= ''' + cast(@Dat_Pec_Do as varchar(30)) + ''' '
  121387.     If @Dat_Val_Od Is Not Null
  121388.         Set @SSQL = @SSQL + ' And V.Dat_Val >= ''' + cast(@Dat_Val_Od as varchar(35)) + ''' '
  121389.     If @Dat_Val_Do Is Not Null
  121390.         Set @SSQL = @SSQL + ' And V.Dat_Val <= ''' + cast(@Dat_Val_Do as varchar(35)) + ''' '
  121391.     If @Dat_Dok_Od Is Not Null
  121392.         Set @SSQL = @SSQL + ' And V.Dat_Dok >= ''' + cast(@Dat_Dok_Od as varchar(35)) + ''' '
  121393.     If @Dat_Dok_Do Is Not Null
  121394.         Set @SSQL = @SSQL + ' And V.Dat_Dok <= ''' + cast(@Dat_Dok_Do as varchar(35)) + ''' '
  121395.     If @Sifra_Oe Is Not Null
  121396.         Set @SSQL = @SSQL + ' And V.Sifra_Oe = ''' + cast(@Sifra_Oe as varchar(6)) + ''' '
  121397.     If @Broj_Dok Is Not Null
  121398.         Set @SSQL = @SSQL + ' And V.Broj_Dok = ''' + cast(@Broj_Dok as varchar(6)) + ''' '
  121399.     If @Sifra_Dok Is Not Null
  121400.         Set @SSQL = @SSQL + ' And V.Sifra_Dok = ''' + cast(@Sifra_Dok as varchar(6)) + ''' '
  121401.     If @KoiVirmani Is Not Null
  121402.         Set @SSQL = @SSQL + ' And V.Sifra_Virman In (''' + @KoiVirmani + ''') '    
  121403.     If @Sifra_Ban_Nal Is Not Null
  121404.         Set @SSQL = @SSQL + ' And (V.Sifra_Ban_Nal = ''' + @Sifra_Ban_Nal + ''' OR V.Ska_Nal LIKE '''+substring(@Sifra_Ban_Nal,4,3) +'%'') '    
  121405.     If @Sifra_Ban_Prim Is Not Null
  121406.         Set @SSQL = @SSQL + ' And V.Sifra_Ban_Prim = ''' + @Sifra_Ban_Prim + ''' '  
  121407.         Set @SSQL=@SSQL + ' Order By V.VirID '
  121408. --print @SSQL
  121409.     Exec (@SSQL)
  121410.  
  121411.  
  121412.  
  121413.  
  121414. Go
  121415. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglevdekl]'))
  121416. drop procedure [dbo].[sp_preglevdekl]
  121417.  
  121418. Go
  121419.  
  121420.  
  121421. CREATE   procedure sp_PreglEvDekl
  121422.     @DatumOd smalldatetime,
  121423.     @DatumDo smalldatetime
  121424. As
  121425.     Select E.Godina,E.Rbr,E.Datum_Dok,E.Cas,E.Br_Paketi,E.Sifra_Oe, E.Sifra_Dok, E.Broj_Dok, 
  121426.     E.BrojDok,E.Reg_Vozilo,E.R_Broj,E.A_Broj,E.Sifra_Kup,K.ImeKup, E.Gran_Premin,E.W_Broj,E.R_Broj_Dop, 
  121427.     S.CarBroj, C.Ime, S.NetoTez,S.BrutoTez,S.FaktVred,S.StatVred          
  121428.     From EvDekl E
  121429.     Inner Join EvDeklStav S on S.Godina=E.Godina and S.Rbr=E.Rbr
  121430.     Left outer join Komint K on K.Sifra_Kup=E.Sifra_Kup
  121431.     left outer join CBroevi C on C.CarBroj=S.CarBroj
  121432.     Where  E.Datum_Dok >=@DatumOd and E.Datum_Dok <=@DatumDo
  121433.  
  121434.  
  121435.  
  121436.  
  121437.  
  121438. Go
  121439. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglfakturi_korisnici]'))
  121440. drop procedure [dbo].[sp_preglfakturi_korisnici]
  121441.  
  121442. Go
  121443. CREATE                     PROCEDURE sp_PreglFakturi_Korisnici
  121444.     @Sifra_Nal Smallint = Null,
  121445.     @Sifra_Dok Smallint = Null,
  121446.     @Sifra_OE Smallint = Null,
  121447.     @KoiOE Varchar(400) = Null,
  121448.     @Sifra_Prim Smallint = Null,
  121449.     @KoiOE_Prim char(6) = Null,
  121450.     @Broj_Nal_Od Int = Null,
  121451.     @Broj_Nal_Do Int = Null,
  121452.     @Broj_Dok_Od Int = Null,
  121453.     @Broj_Dok_Do Int = Null,
  121454.     @Datum_Dok_Od Smalldatetime = Null,
  121455.     @Datum_Dok_Do Smalldatetime = Null,
  121456.     @Datum_Nal_Od Smalldatetime = Null,
  121457.     @Datum_Nal_Do Smalldatetime = Null,
  121458.     @Sifra_Kup_Od Char(6) = Null,
  121459.     @Sifra_Kup_Do Char(6) = Null,
  121460.     @Bez_Sifra_Kup char(6) = Null,
  121461.     @Sifra_Za Char(1),
  121462.     @VlIzl Char(1),
  121463.     @PecFisc char(1) = Null,
  121464.     @Sifra_Nivo Char(2) = Null,
  121465.     @KFSifra_Nivo Char(1) = Null,
  121466.     @KFSifra_Prim Char(1) = Null,
  121467.     @Sifra_Pat    smallint = Null,
  121468.     @Sifra_Mest    int = Null,
  121469.     @Uces_Od    decimal(6,2) = Null,
  121470.     @Uces_Do    decimal(6,2) = Null,
  121471.     @Sifra_Drg    smallint = Null,
  121472.     @Lokacija    varchar(10) = Null,
  121473.     @NemaKomint    char(1) = Null,
  121474.     @NemaPatnik    char(1) = Null,
  121475.     @Sifra_Oper    varchar(20) = Null,
  121476.     @Sifra_Obj    smallint = Null,
  121477.     @PoKojDatum    char(1) = 'D',     -- D - Datum_Dok,      V - Datum_Vnes
  121478.     @Koi_Gradovi    varchar(300) = Null,
  121479.     @Kto        char(6) = Null,
  121480.     @BezOdbRabat    char(2) = 'NN',    -- DD - Bez odbien rabat so Danok    DN - Bez odbien rabat bez Danok
  121481.     @Sifra_Div    smallint = Null,
  121482.     @NemaDivizija    char(1) = Null,
  121483.     @PoGradovi    char(1) = 'N',
  121484.     @Sifra_Prev    char(6) = Null,
  121485.     @Spremil    varchar(5) = Null,
  121486.     @RezVoTabela    char(1) = 'N',
  121487.     @SoTezini    char(1) = 'N'
  121488. AS
  121489.     If @PoKojDatum = 'V' Or @PecFisc = 'D'
  121490.             If @Datum_Dok_Do Is Not Null
  121491.         Set @Datum_Dok_Do = @Datum_Dok_Do + 1
  121492.        Declare @SSQL Varchar(8000)
  121493.     If @RezVoTabela = 'D'
  121494.     Begin
  121495.         Set @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Nal, D.Broj_Nal, D.Datum_Dok, D.VlIzl, D.Toc200, D.MagVr, D.MagVrDan, D.Danok1, D.Danok2 
  121496.                 FROM DOKR D
  121497.                 INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  121498.                 LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  121499.                 INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  121500.                 LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  121501.                 LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE         
  121502.                 LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj '
  121503.     End
  121504.     Else
  121505.     Begin
  121506.         SET @SSQL = 'SELECT D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, D.Sifra_Obj, D.Datum_Dok, 
  121507.                     D.Rok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  121508.                     D.Dat_Pec_Fisc, 
  121509.                     Sum(S.Kolic*S.NabCena) NabVr, Sum(S.Kolic*S.MagCena) MagVrednost, sum(S.DokCena*S.Kolic) PoDokCena, TD.ImeDok,
  121510.                     K.ImeKup, K.SMesto,
  121511.                     O.ImeOrg As IORG, OP.ImeOrg As IORG_Prima, KO.ImeObj, '
  121512.         If @BezOdbRabat = 'DD'
  121513.             Set @SSQL = @SSQL + ' Sum(Case When S.VlIzl = ''I'' Then (S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''D'')) Else 0 End) VrednBezRabat, '
  121514.         Else If @BezOdbRabat = 'DN'
  121515.             Set @SSQL = @SSQL + ' Sum(Case When S.VlIzl = ''I'' Then (S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''N'')) Else 0 End) VrednBezRabat, '
  121516.         Else 
  121517.             Set @SSQL = @SSQL + ' Null as VrednBezRabat, '
  121518.         If @PoGradovi = 'D'
  121519.             Set @SSQL = @SSQL + ' (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End) Sifra_Grad, G.ImeGrad, '
  121520.         Else
  121521.             Set @SSQL = @SSQL + ' Null as Sifra_Grad, Null as ImeGrad, '
  121522.         If @SoTezini = 'D'
  121523.             Set @SSQL = @SSQL + ' Sum(S.Kolic*A.Tezina/1000) Tezina '
  121524.         Else 
  121525.             Set @SSQL = @SSQL + ' Null as  Tezina '
  121526.         Set @SSQL = @SSQL + ' FROM DOKR D
  121527.                      Inner Join Stavr S On D.DokrID=S.DokrID
  121528.                      INNER JOIN TipDok TD ON D.Sifra_Dok=TD.Sifra_Dok
  121529.                      LEFT OUTER JOIN Komint K ON D.Sifra_Kup=K.Sifra_Kup
  121530.                      INNER JOIN Orged O ON D.Sifra_OE=O.Sifra_OE
  121531.                      LEFT OUTER JOIN Nalozi N ON TD.Sifra_Nal=N.Sifra_Nal AND D.Broj_Nal=N.Broj_Nal
  121532.                      LEFT OUTER JOIN Orged OP ON D.Sifra_Prim=OP.Sifra_OE         
  121533.                      LEFT OUTER JOIN KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup and KO.Sifra_Obj=D.Sifra_Obj '
  121534.         If @Sifra_Drg Is Not Null Or @Lokacija Is Not Null Or @SoTezini = 'D'
  121535.             Set @SSQL = @SSQL + ' Inner Join Katart A On A.Sifra_art=S.Sifra_art '
  121536.         If @PoGradovi = 'D'
  121537.             Set @SSQL = @SSQL + ' Left Outer Join Grad G On G.Sifra_Grad = (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End) '
  121538.     End
  121539.     If @Sifra_Nal Is Null
  121540.         SET @SSQL = @SSQL + 'WHERE 1=1     '
  121541.     Else
  121542.         SET @SSQL = @SSQL + 'WHERE D.Sifra_Nal=''' + Cast(@Sifra_Nal As Varchar(10)) + ''' '
  121543.     If @KFSifra_Nivo Is Null
  121544.         Begin
  121545.             If @Sifra_Nivo Is Not Null
  121546.                 Set @SSQL = @SSQL + 'And D.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  121547.         End
  121548.     Else If @KFSifra_Nivo='D' And @Sifra_Nivo Is Not Null
  121549.         Set @SSQL = @SSQL + 'And (D.Sifra_Nivo<>''' + @Sifra_Nivo + ''' Or D.Sifra_Nivo Is Null) '
  121550.     If @PecFisc = 'D'
  121551.         SET @SSQL = @SSQL + ' AND D.Pec_Fisc > 0 '
  121552.     Else If @PecFisc = 'N'
  121553.         SET @SSQL = @SSQL + ' AND (D.Pec_Fisc = 0 or D.Pec_Fisc is Null) '
  121554.     If @Sifra_Dok Is NOT NULL
  121555.         SET @SSQL = @SSQL + 'AND D.Sifra_Dok=''' + Cast(@Sifra_Dok As Varchar(10)) + ''' '
  121556.        If @Sifra_OE Is NOT Null
  121557.               SET @SSQL = @SSQL + 'AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(6)) + ' '
  121558.        If @KoiOE Is NOT Null
  121559.               SET @SSQL = @SSQL + 'AND D.Sifra_OE In (' + @KoiOE + ') '
  121560.     If @KFSifra_Prim Is Null
  121561.         Begin
  121562.             If @Sifra_Prim Is Not Null
  121563.                 SET @SSQL = @SSQL + 'AND D.Sifra_Prim=' + Cast(@Sifra_Prim As Varchar(6)) + ' '
  121564.         End
  121565.     Else If @KFSifra_Prim='D' And @Sifra_Prim Is Not Null
  121566.         Set @SSQL = @SSQL + 'And (D.Sifra_Prim<>' + Cast(@Sifra_Prim As Varchar(6)) + ' Or D.Sifra_Prim Is Null) '
  121567.     If @KoiOE_Prim Is Not Null
  121568.         Set @SSQL = @SSQL + 'And D.Sifra_Prim In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @KoiOE_Prim + ''') '
  121569.     If @Sifra_Pat IS NOT NULL
  121570.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  121571. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaPatnik da ne se pusta filterot @Sifra_pat
  121572.     If @NemaPatnik = 'D'
  121573.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat is Null and D.Sifra_za in (1, 2) '
  121574.     If @Broj_Nal_Od Is NOT Null
  121575.            SET @SSQL = @SSQL + 'AND D.Broj_Nal>=''' + Cast(@Broj_Nal_Od As Varchar(35)) + ''' '
  121576.        If @Broj_Nal_Do Is NOT Null
  121577.          SET @SSQL = @SSQL + 'AND D.Broj_Nal<=''' + Cast(@Broj_Nal_Do As Varchar(35)) + ''' '
  121578.     If @Broj_Dok_Od Is NOT Null
  121579.            SET @SSQL = @SSQL + 'AND D.Broj_Dok>=''' + Cast(@Broj_Dok_Od As Varchar(35)) + ''' '
  121580.        If @Broj_Dok_Do Is NOT Null
  121581.          SET @SSQL = @SSQL + 'AND D.Broj_Dok<=''' + Cast(@Broj_Dok_Do As Varchar(35)) + ''' '
  121582.     If @PecFisc = 'D'
  121583.          Begin
  121584.         If @Datum_Dok_Od Is NOT Null
  121585.             SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  121586.            If @Datum_Dok_Do Is NOT Null
  121587.              SET @SSQL = @SSQL + 'AND D.Dat_Pec_Fisc<''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  121588.          End
  121589.     Else
  121590.          Begin
  121591.         If @PoKojDatum = 'V'
  121592.               Begin
  121593.             If @Datum_Dok_Od Is NOT Null                SET @SSQL = @SSQL + 'AND D.Datum_Vnes >= ''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  121594.             If @Datum_Dok_Do Is NOT Null
  121595.                  SET @SSQL = @SSQL + 'AND D.Datum_Vnes < ''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  121596.               End
  121597.         Else
  121598.               Begin
  121599.             If @Datum_Dok_Od Is NOT Null
  121600.                 SET @SSQL = @SSQL + 'AND D.Datum_Dok>=''' + Cast(@Datum_Dok_Od As Varchar(35)) + ''' '
  121601.                If @Datum_Dok_Do Is NOT Null
  121602.                  SET @SSQL = @SSQL + 'AND D.Datum_Dok<=''' + Cast(@Datum_Dok_Do As Varchar(35)) + ''' '
  121603.               End
  121604.          End
  121605.     If @Datum_Nal_Od Is NOT Null
  121606.            SET @SSQL = @SSQL + 'AND N.Datum_Nal>=''' + Cast(@Datum_Nal_Od As Varchar(35)) + ''' '
  121607.        If @Datum_Nal_Do Is NOT Null
  121608.          SET @SSQL = @SSQL + 'AND N.Datum_Nal<=''' + Cast(@Datum_Nal_Do As Varchar(35)) + ''' '
  121609.     If @Sifra_Kup_Od Is NOT Null
  121610.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup >=''' + @Sifra_Kup_Od + ''' '
  121611.     If @Sifra_Kup_Do Is NOT Null
  121612.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup <=''' + @Sifra_Kup_Do + ''' '
  121613.     If @Bez_Sifra_Kup Is NOT Null
  121614.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup <> ''' + @Bez_Sifra_Kup + ''' '
  121615. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaKomint da ne se pusta filterot @Sifra_Kup
  121616.     If @NemaKomint = 'D'
  121617.         SET @SSQL = @SSQL + 'AND D.Sifra_Kup Is Null and D.Sifra_za in (1, 2) ' 
  121618.     If @Sifra_Div IS NOT NULL
  121619.         SET @SSQL = @SSQL + ' AND D.Sifra_Div = ' + Cast(@Sifra_Div as varchar(5)) + ' '
  121620. -- Ima kontrola vo podgotovkata ako se pusti filterot @NemaDivizija da ne se pusta filterot @Sifra_Div
  121621.     If @NemaDivizija = 'D'
  121622.         SET @SSQL = @SSQL + 'AND D.Sifra_Div Is Null ' 
  121623.        If @Sifra_Obj Is NOT Null
  121624.               SET @SSQL = @SSQL + 'AND D.Sifra_Obj=' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  121625.     If @Sifra_Za Is NOT Null
  121626.         SET @SSQL = @SSQL + 'AND D.Sifra_Za=''' + Cast(@Sifra_Za As Varchar(35))+ ''' '
  121627.     If @VlIzl Is NOT Null
  121628.         SET @SSQL = @SSQL + 'AND D.VlIzl=''' + Cast(@VlIzl As Varchar(5))+ ''' '
  121629.        If @Sifra_Mest Is NOT Null
  121630.               SET @SSQL = @SSQL + 'AND D.Sifra_Mest=''' + Cast(@Sifra_Mest As Varchar(10)) + ''' '
  121631.        If @Uces_Od Is NOT Null
  121632.               SET @SSQL = @SSQL + 'AND S.Uces >=''' + Cast(@Uces_Od As Varchar(10)) + ''' '
  121633.        If @Uces_Do Is NOT Null
  121634.               SET @SSQL = @SSQL + 'AND S.Uces <=''' + Cast(@Uces_Do As Varchar(10)) + ''' '
  121635.        If @Sifra_Drg Is NOT Null
  121636.               SET @SSQL = @SSQL + 'AND A.Sifra_Drg =''' + Cast(@Sifra_Drg As Varchar(10)) + ''' '
  121637.        If @Lokacija IS NOT NULL
  121638.               SET @SSQL=@SSQL+'AND (A.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  121639.        If @Sifra_Oper IS NOT NULL
  121640.               SET @SSQL=@SSQL+'AND D.Sifra_Oper=''' + @Sifra_Oper + ''' '
  121641.        If @Kto IS NOT NULL
  121642.               SET @SSQL=@SSQL+'AND D.Kto=''' + @Kto + ''' '
  121643.        If @Sifra_Prev IS NOT NULL
  121644.               SET @SSQL=@SSQL+'AND D.Sifra_Prev=''' + @Sifra_Prev + ''' '
  121645.        If @Spremil IS NOT NULL
  121646.               SET @SSQL=@SSQL+'AND D.Spremil=''' + @Spremil + ''' '
  121647.     If @Koi_Gradovi Is Not NULL    
  121648.         Begin
  121649.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  121650.             OR ( KO.Sifra_Grad Is Null and K.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  121651.         End
  121652.      If @RezVoTabela <> 'D' Or @RezVoTabela Is Null
  121653.     Begin
  121654.         Set @SSQL = @SSQL + 'Group By D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.VlIzl, D.Sifra_Za, D.Sifra_Nal, D.Broj_Nal, D.Identif_Br, D.Sifra_Kup, D.Sifra_Obj, 
  121655.                     D.Datum_Dok, D.Rok, D.Kto, D.Toc200, D.MagVr, D.MagVrDan, D.Marza, D.Danok1, D.Danok2, D.PDanok1, D.PDanok2, D.PTrosok, D.DanDokCena, 
  121656.                     D.Dat_Pec_Fisc, TD.ImeDok, K.ImeKup, K.SMesto, O.ImeOrg, OP.ImeOrg, KO.ImeObj '
  121657.         If @PoGradovi = 'D'
  121658.             Set @SSQL = @SSQL + ', (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else K.Sifra_Grad End), G.ImeGrad '
  121659.     End
  121660.     If @RezVoTabela = 'D'
  121661.     Begin
  121662.         Create Table ##AMD
  121663.         (
  121664.          Sifra_OE    smallint, 
  121665.          Sifra_Nal    smallint,
  121666.          Broj_Nal    int, 
  121667.          Datum_Dok    smalldatetime,
  121668.          VlIzl        char(1), 
  121669.          Toc200    decimal(18,6), 
  121670.          MagVr        decimal(18,6), 
  121671.          MagVrDan    decimal(18,6), 
  121672.          Danok1    decimal(18,6), 
  121673.          Danok2    decimal(18,6)
  121674.         ) 
  121675.         Insert Into ##AMD Exec(@SSQL)
  121676.     End
  121677.     Else
  121678.         EXEC(@SSQL)
  121679.  
  121680.  
  121681. Go
  121682. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglkatasortlisti]'))
  121683. drop procedure [dbo].[sp_preglkatasortlisti]
  121684.  
  121685. Go
  121686.  
  121687. CREATE        PROCEDURE sp_PreglKatAsortListi
  121688.     @KatAsortPoSto char(5)
  121689. AS
  121690.     Declare @SSQL varchar(2000)
  121691. SET @SSQL='SELECT L.*'
  121692. IF Substring(@KatAsortPoSto,1,1)='D'
  121693.     SET @SSQL = @SSQL +', K.ImeKup Ime1' 
  121694. ELSE IF Substring(@KatAsortPoSto,1,1)='G'
  121695.     SET @SSQL = @SSQL +', G.Ime_Gr Ime1' 
  121696. ELSE IF Substring(@KatAsortPoSto,1,1)='2'
  121697.     SET @SSQL = @SSQL +', D.Ime_2 Ime1' 
  121698. ELSE IF Substring(@KatAsortPoSto,1,1)='4'
  121699.     SET @SSQL = @SSQL +', D.Ime_4 Ime1' 
  121700. ELSE IF Substring(@KatAsortPoSto,1,1)='H'
  121701.     SET @SSQL = @SSQL +', D.Ime_KHier Ime1' 
  121702. ELSE
  121703.     SET @SSQL = @SSQL +', '''' Ime1' 
  121704. IF Substring(@KatAsortPoSto,2,1)='P'
  121705.     SET @SSQL = @SSQL +', P.Ime_Podg Ime2' 
  121706. ELSE
  121707.     SET @SSQL = @SSQL +', '''' Ime2' 
  121708. SET @SSQL = @SSQL +' FROM KatAsortLista L '
  121709. IF Substring(@KatAsortPoSto,1,1)='D'
  121710.     SET @SSQL = @SSQL +' INNER JOIN Komint K ON L.Sifra1=K.Sifra_Kup ' 
  121711. ELSE IF Substring(@KatAsortPoSto,1,1)='G'
  121712.     SET @SSQL = @SSQL +' INNER JOIN Grupi G ON L.Sifra1=G.Sifra_Gr ' 
  121713. ELSE IF Substring(@KatAsortPoSto,1,1)='2'
  121714.     SET @SSQL = @SSQL +' INNER JOIN Drugo2 D ON L.Sifra1=D.Sifra_2 ' 
  121715. ELSE IF Substring(@KatAsortPoSto,1,1)='4'
  121716.     SET @SSQL = @SSQL +' INNER JOIN Drugo4 D ON L.Sifra1=D.Sifra_4 ' 
  121717. ELSE IF Substring(@KatAsortPoSto,1,1)='H'
  121718.     SET @SSQL = @SSQL +' INNER JOIN KatHier D ON L.Sifra1=D.Sifra_KHier ' 
  121719. IF Substring(@KatAsortPoSto,2,1)='P'
  121720.     SET @SSQL = @SSQL +' LEFT OUTER JOIN Podgrupi P ON L.Sifra2=P.Sifra_Podg' 
  121721. SET @SSQL = @SSQL + ' ORDER BY L.Broj_ALista, L.Reden_Broj'
  121722. EXEC (@SSQL)
  121723.  
  121724.  
  121725.  
  121726. Go
  121727. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglkatlokprom]'))
  121728. drop procedure [dbo].[sp_preglkatlokprom]
  121729.  
  121730. Go
  121731. CREATE PROCEDURE sp_PreglKatLokProm
  121732.     @Datum_Od    smalldatetime = NULL,
  121733.     @Datum_Do    smalldatetime = NULL,
  121734.     @Grupa    char(6) = NULL,
  121735.     @Podgrupa    char(6) = NULL,
  121736.     @Nova_Lok    varchar(10) = NULL,
  121737.     @Sifra_Drg    char(6) = NULL,
  121738.     @Komint_Od    varchar(6) = NULL,
  121739.     @Komint_Do    varchar(6) = NULL,
  121740.     @Sif_Art_Od    varchar(20) = NULL,
  121741.     @Sif_Art_Do    varchar(20) = NULL
  121742.  AS
  121743.     Declare @SSQL Varchar(2000)
  121744.     Set @SSQL = 'Select KLP.*, K.ImeArt
  121745.     From KatLokProm KLP
  121746.     Inner Join Katart K On KLP.Sifra_Art=K.Sifra_Art
  121747.     Left Outer Join Podgrupi P On K.Sifra_Podg=P.Sifra_Podg
  121748.     Left Outer Join Grupi G On P.Sifra_Gr=G.Sifra_Gr
  121749.     Where 1=1 '
  121750.     If @Datum_Od Is Not Null
  121751.         Set @SSQL = @SSQL + 'And KLP.Datum_Prom>=''' + Cast(@Datum_Od as varchar(35)) + ''' '
  121752.     If @Datum_Do Is Not Null
  121753.         Set @SSQL = @SSQL + 'And KLP.Datum_Prom<=''' + Cast(@Datum_Do as varchar(35)) + ''' '
  121754.     If @Podgrupa Is Not Null
  121755.         Set @SSQL = @SSQL + 'And P.Sifra_Podg=''' + Cast(@Podgrupa As Varchar(6)) + ''' '
  121756.     If @Grupa Is Not Null
  121757.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + Cast(@Grupa As Varchar(6)) + ' '
  121758.     If @Nova_Lok Is Not Null
  121759.         Set @SSQL = @SSQL + 'And KLP.Nova_Lok=''' + Cast(@Nova_Lok As Varchar(10)) + ''' '
  121760.     If @Sifra_Drg Is Not Null
  121761.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Drg  As Varchar(6)) + ' '
  121762.     If @Komint_Od Is Not Null
  121763.         Set @SSQL = @SSQL + 'And K.Kto>=''' + @Komint_Od + ''' '
  121764.     If @Komint_Do Is Not Null
  121765.         Set @SSQL = @SSQL + 'And K.Kto<=''' + @Komint_Do + ''' '
  121766.     If @Sif_Art_Od Is Not Null
  121767.         Set @SSQL = @SSQL + 'And KLP.Sifra_Art>=''' + @Sif_Art_Od + ''' '
  121768.     If @Sif_Art_Do Is Not Null
  121769.         Set @SSQL = @SSQL + 'And KLP.Sifra_Art<=''' + @Sif_Art_Do + ''' '
  121770. print (@SSQL)
  121771. Exec(@SSQL)
  121772.  
  121773.  
  121774.  
  121775. Go
  121776. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglkatspecpakuv]'))
  121777. drop procedure [dbo].[sp_preglkatspecpakuv]
  121778.  
  121779. Go
  121780.  
  121781.  
  121782.  
  121783.  
  121784.  
  121785.  
  121786. CREATE       PROCEDURE sp_PreglKatSpecPakuv
  121787.     @Sifra_art_Od    varchar(20)=null,
  121788.         @Sifra_art_Do    varchar(20)=null,
  121789.         @Sifra_Podg    char(6) = Null,
  121790.      @Sifra_Gr    char(3) = Null
  121791.  
  121792.  AS
  121793.         Declare @SSQL Varchar(8000)
  121794.     SET @SSQL = ' Select K.Sifra_art, K.Vid_Pakuv, K.Sifra_TipMat, K.Opis_Komp, K.Tezina, T.ImeTipMat, A.ImeArt, 
  121795.                       T.Tip, K.Datum, A.ImaKomerc, A.ImaBroevi 
  121796.                       from KatSpecPakuv K
  121797.                       left outer join KatSpecTipMat T on T.Sifra_TipMat=K.Sifra_TipMat
  121798.                       left outer join Katart A on A.Sifra_Art=K.Sifra_Art
  121799.                       left outer join Podgrupi P on P.Sifra_Podg=A.Sifra_Podg  '
  121800.         SET @SSQL = @SSQL + ' WHERE 1=1 '
  121801.         If @Sifra_Art_Od Is NOT Null
  121802.         SET @SSQL = @SSQL + 'AND K.Sifra_Art >=''' + @Sifra_art_Od + ''' ' 
  121803.     If @Sifra_Art_Do Is NOT Null
  121804.         SET @SSQL = @SSQL + 'AND K.Sifra_Art <=''' + @Sifra_art_Do + ''' '
  121805.     If @Sifra_Podg Is NOT Null
  121806.         SET @SSQL = @SSQL + 'AND A.Sifra_Podg =''' + @Sifra_Podg + ''' '
  121807.     If @Sifra_Gr Is NOT Null
  121808.         SET @SSQL = @SSQL + 'AND P.Sifra_Gr =''' + @Sifra_Gr + ''' '          
  121809.  
  121810.  
  121811. Exec(@SSQL)
  121812.  
  121813.  
  121814.  
  121815.  
  121816.  
  121817.  
  121818. Go
  121819. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglkorcosmoskr]'))
  121820. drop procedure [dbo].[sp_preglkorcosmoskr]
  121821.  
  121822. Go
  121823.  
  121824.  
  121825.  
  121826.  
  121827. CREATE    PROCEDURE sp_PreglKorCosmoSkr
  121828.     @Sifra_Oe        smallint = Null,
  121829.     @KoiOe            char(6)=NULL,
  121830.     @Sifra_Kup        char(6)=NULL,
  121831.     @Aktiven        char(1)=NULL,
  121832.     @Podred            char(1)='S',
  121833.     @Sifra_TipKartKor    smallint = Null,
  121834.     @Sifra_Kor_Od        varchar(20) = Null,
  121835.     @Sifra_Kor_Do        varchar(20) = Null,
  121836.     @Dat_Zacl_Od        smalldatetime = Null,
  121837.     @Dat_Zacl_Do        smalldatetime = Null,
  121838.     @KorSoPromet        char(1) = 'S',        -- S - Site,   P - So Promet,   N - Bez Promet
  121839.     @Dat_Promet_Od        smalldatetime = Null,
  121840.     @Dat_Promet_Do        smalldatetime = Null,
  121841.     @Den_Raganje_Od     smallint = Null,
  121842.     @Den_Raganje_Do     smallint = Null,
  121843.     @Mesec_Raganje_Od    smallint = Null,
  121844.     @Mesec_Raganje_Do    smallint = Null,
  121845.     @Promet_Od        decimal(18,6) = Null,
  121846.     @Promet_Do        decimal(18,6) = Null,
  121847.     @Sifra_Oe_Podigni smallint= null,
  121848.         @Datum_Akt_Od    smalldatetime = Null,
  121849.     @Datum_Akt_Do    smalldatetime = Null  
  121850. AS
  121851.  
  121852.     Declare @SSQL as varchar(8000)
  121853.     Declare @SSQLUsl as varchar(8000)
  121854.     Set @SSQLUsl = ' '
  121855.     If @Sifra_Oe Is Not Null
  121856.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' ' 
  121857.     If @KoiOE Is Not NULL
  121858.              Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @KoiOe  +  ''') '
  121859.  
  121860.     If @Aktiven Is Not Null
  121861.         Set @SSQLUsl  = @SSQLUsl + ' And K.Aktiven = ''' + @Aktiven + ''' '
  121862.  
  121863.     If @Sifra_TipKartKor Is Not Null
  121864.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_TipKartKor = ' + cast(@Sifra_TipKartKor as varchar(6)) + ' ' 
  121865.  
  121866.     If @Sifra_Kor_Od Is Not Null
  121867.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kor >= ''' + @Sifra_Kor_Od + ''' '    
  121868.     If @Sifra_Kor_Do Is Not Null
  121869.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kor <= ''' + @Sifra_Kor_Do + ''' '    
  121870.  
  121871.     If @Dat_Zacl_Od Is Not Null
  121872.         Set @SSQLUsl  = @SSQLUsl + ' And K.DodadenNa >= ''' + Cast(@Dat_Zacl_Od as varchar(30)) + ''' '    
  121873.     If @Dat_Zacl_Do Is Not Null
  121874.         Set @SSQLUsl  = @SSQLUsl + ' And K.DodadenNa < ''' + Cast(@Dat_Zacl_Do + 1 as varchar(30)) + ''' '    
  121875.  
  121876.     If @Den_Raganje_Od Is Not Null
  121877.         Set @SSQLUsl  = @SSQLUsl + ' And Day(Datum_Rag) >= ' + Cast(@Den_Raganje_Od as varchar(2)) + ' '
  121878.     If @Den_Raganje_Do Is Not Null
  121879.         Set @SSQLUsl  = @SSQLUsl + ' And Day(Datum_Rag) <= ' + Cast(@Den_Raganje_Do as varchar(2)) + ' '
  121880.  
  121881.     If @Mesec_Raganje_Od Is Not Null
  121882.         Set @SSQLUsl  = @SSQLUsl + ' And Month(Datum_Rag) >= ' + Cast(@Mesec_Raganje_Od as varchar(2)) + ' '
  121883.     If @Mesec_Raganje_Do Is Not Null
  121884.         Set @SSQLUsl  = @SSQLUsl + ' And Month(Datum_Rag) <= ' + Cast(@Mesec_Raganje_Do as varchar(2)) + ' '
  121885.     If @Sifra_Oe_Podigni Is Not Null
  121886.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Oe_Podigni = ''' + cast(@Sifra_Oe_Podigni as varchar(5)) + ''' '    
  121887.         If @Datum_Akt_Od Is Not Null 
  121888.         Set @SSQLUsl = @SSQLUsl + ' And K.Datum_Akt >= ''' + cast(@Datum_Akt_Od as varchar(30)) + ''' '      
  121889.         If @Datum_Akt_Do Is Not Null 
  121890.         Set @SSQLUsl = @SSQLUsl + ' And K.Datum_Akt <= ''' + cast(@Datum_Akt_Do as varchar(30)) + ''' '         
  121891.     
  121892.         If @KorSoPromet In ('P', 'N') Or @Dat_Promet_Od Is Not Null Or @Dat_Promet_Do Is Not Null Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  121893.     Begin
  121894.         Create Table #KorPromet
  121895.         (
  121896.          Sifra_Kor    varchar(20),
  121897.          Promet        decimal(18,6)
  121898.         )
  121899.         Set @SSQL = 'Select P.Sifra_Kor, Sum(Dolzi) 
  121900.                 From KartProm P
  121901.                 Inner Join KartKor K On K.Sifra_Kor=P.Sifra_Kor
  121902.                 Where 1=1 '
  121903.         If @Dat_Promet_Od Is Not Null
  121904.             Set @SSQL  = @SSQL + ' And P.Datum_Ska >= ''' + Cast(@Dat_Promet_Od as varchar(30)) + ''' '    
  121905.         If @Dat_Promet_Do Is Not Null
  121906.             Set @SSQL  = @SSQL + ' And P.Datum_Ska <= ''' + Cast(@Dat_Promet_Do as varchar(30)) + ''' '    
  121907.         If @Sifra_Kup Is Not Null    
  121908.             Set @SSQL = @SSQL + ' And P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  121909.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By P.Sifra_Kor '
  121910.         If @KorSoPromet In ('P', 'N') Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  121911.             Set @SSQL = @SSQL + ' Having 1=1 '
  121912.         If @Promet_Od Is Not Null
  121913.             Set @SSQL = @SSQL + ' And Sum(Dolzi) >= ' + Cast(@Promet_Od as varchar(20)) + ' '
  121914.         If @Promet_Do Is Not Null
  121915.             Set @SSQL = @SSQL + ' And Sum(Dolzi) <= ' + Cast(@Promet_Do as varchar(20)) + ' '
  121916.         If @KorSoPromet = 'P'
  121917.             Set @SSQL = @SSQL + ' And Sum(Dolzi) >= 0 '
  121918.         If @KorSoPromet = 'N'
  121919.             Set @SSQL = @SSQL + ' And Sum(Dolzi) = 0 '
  121920.         Insert Into #KorPromet Exec(@SSQL)
  121921.     End
  121922.  
  121923.     CREATE TABLE #TmpKart
  121924.     (
  121925.     RbrZapis smallint ,
  121926.     [Sifra_Oe] [smallint] NULL ,
  121927.     [Sifra_Kor] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121928.     [ImeKor] [varchar] (40) COLLATE SQL_Latin1_General_CP1_CI_AS  NULL ,
  121929.     [SMesto] [char] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121930.     [Adresa] [char] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121931.     [Posta] [char] (5) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121932.     [Telefon] [char] (12) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121933.     [LK] [char] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121934.     [Aktiven] [char] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121935.     [Novi_Limi] [decimal](18, 6) NULL ,
  121936.     [Sifra_Kup] [char] (6) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121937.     [DodadenNa] [smalldatetime] NULL ,
  121938.     [Sifra_TipKartKor] [smallint] NULL ,
  121939.     [RegBrLK] [varchar] (10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121940.     [Datum_Rag] [smalldatetime] NULL ,
  121941.     [EMail] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121942.     [Pol] [char] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121943.     [Profesija] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121944.     [BracenStatus] [char] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121945.     [TelMobil] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121946.     [Tel2] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  121947.     [ZabelKart] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
  121948.      PodKor        varchar(2000),
  121949.      Kontakt    varchar(200),
  121950.      Milenici    varchar(1000)
  121951.     )
  121952.  
  121953.     CREATE TABLE #TmpKartPlus
  121954.     (
  121955.      RbrZapis smallint null,
  121956.      Sifra_Kor varchar (20) null,
  121957.      PodKor        varchar(2000) null,
  121958.      Kontakt    varchar(200) null,
  121959.      Milenici    varchar(1000) null
  121960.     )
  121961.  
  121962.     set @SSQL = ' Insert into #TmpKart
  121963.     ( RbrZapis, Sifra_Oe, Sifra_Kor, ImeKor, SMesto, Adresa, Posta, 
  121964.       Telefon, LK, Aktiven, Sifra_Kup, DodadenNa, Sifra_TipKartKor, 
  121965.       Datum_Rag, EMail, Pol, Profesija, BracenStatus, 
  121966.       TelMobil, Tel2, ZabelKart ) '
  121967.  
  121968.  
  121969.     Set @SSQL = @SSQL + 
  121970.      ' Select 0, K.Sifra_Oe, K.Sifra_Kor, K.ImeKor, K.SMesto, K.Adresa, K.Posta,
  121971.                   K.Telefon, K.LK, K.Aktiven, K.Sifra_Kup, K.DodadenNa, K.Sifra_TipKartKor, 
  121972.           K.Datum_Rag, K.EMail, K.Pol, K.Profesija, K.BracenStatus, 
  121973.           K.TelMObil, K.Tel2, K.ZabelKart 
  121974.               From KartKor K 
  121975.           Where 1=1 ' + @SSQLUsl
  121976.  
  121977.     if @Sifra_Kup is not null
  121978.         Set @SSQL = @SSQL + ' And K.Sifra_Kup = ''' + @Sifra_Kup + ''' '   -- ako barame samo pregled na korisnici bez promet togass filterot go gledame od KartKor
  121979.  
  121980.     If @Podred = 'S'
  121981.         Set @SSQL = @SSQL + ' Order By K.Sifra_Kor, K.Sifra_Oe '
  121982.     Else If @Podred = 'A'
  121983.         Set @SSQL  = @SSQL +  ' Order By K.ImeKor, K.Sifra_Oe '
  121984.     Else If @Podred = 'K'
  121985.         Set @SSQL  = @SSQL +  ' Order By K.Sifra_Kup '
  121986.  
  121987.     Exec (@SSQL)
  121988.  
  121989.     ----- Za detalite vo ramna forma da gi prikazzeme -----
  121990.     Declare @Kontakt varchar(200)
  121991.     Declare @Deca varchar(2000)
  121992.     Declare @Milenici varchar(1000)
  121993.  
  121994.     Declare @Rbr_Kontakt smallint
  121995.     Declare @Rbr_Deca smallint
  121996.     Declare @Rbr_Milenici smallint
  121997.  
  121998.     Declare @Tip_Detal varchar(10)
  121999.     Declare @ImeDetal varchar(40)
  122000.     Declare @ImeDetal2 varchar(40)
  122001.  
  122002.     Declare @Kor as varchar(20)
  122003.     Declare @ImeKor as varchar(40)
  122004.     Declare @MaxZapis as int
  122005.  
  122006.     DECLARE Kart CURSOR FAST_FORWARD 
  122007.         FOR SELECT Sifra_Kor, ImeKor
  122008.         FROM #TmpKart
  122009.         Order By Sifra_Kor
  122010.     OPEN Kart
  122011.     FETCH NEXT FROM Kart INTO @Kor, @ImeKor
  122012.  
  122013.     WHILE @@FETCH_STATUS = 0
  122014.     Begin
  122015.  
  122016.         set @Kontakt = ''
  122017.         set @Deca = ''
  122018.         set @Milenici = ''
  122019.  
  122020.         set @Rbr_Kontakt = -1
  122021.         set @Rbr_Deca = -1
  122022.         set @Rbr_Milenici = -1
  122023.  
  122024.         set @MaxZapis = 0
  122025.         delete from #tmpKartPlus
  122026.  
  122027.         DECLARE Detal CURSOR FAST_FORWARD 
  122028.             FOR SELECT Tip_Detal, rtrim(ltrim(ImeDetal)), rtrim(ltrim(ImeDetal2))
  122029.         FROM KartKorDetali
  122030.         Where Sifra_Kor = @Kor
  122031.         order by rbr_detal
  122032.  
  122033.         OPEN Detal
  122034.         FETCH NEXT FROM Detal INTO @Tip_Detal, @ImeDetal, @ImeDetal2
  122035.  
  122036.         WHILE @@FETCH_STATUS = 0
  122037.         Begin
  122038.  
  122039.             if @ImeDetal is null
  122040.                 set @ImeDetal = ''
  122041.             if @ImeDetal2 is null
  122042.                 set @ImeDetal2 = ''
  122043.  
  122044.             if @Tip_Detal = 'KONTAKT'
  122045.                begin
  122046.                 set @Rbr_Kontakt = @Rbr_Kontakt + 1
  122047.                 if @Rbr_Kontakt = 0
  122048.                     update #TmpKart
  122049.                     set Kontakt = @ImeDetal
  122050.                     where Sifra_Kor = @Kor
  122051.                 else
  122052.                     begin
  122053.                       if @Rbr_Kontakt > @MaxZapis
  122054.                         begin
  122055.                       set @MaxZapis = @MaxZapis + 1
  122056.                       insert into #TmpKartPlus
  122057.                         (RbrZapis, Sifra_Kor)
  122058.                       values (@MaxZapis, @Kor)
  122059.                         end
  122060.                       update #TmpKartPlus
  122061.                       set Kontakt = @ImeDetal
  122062.                       where RbrZapis = @Rbr_Kontakt
  122063.                     end
  122064.                end
  122065.             else if @Tip_Detal = 'DECA'
  122066.                begin
  122067.                 set @Rbr_Deca = @Rbr_Deca + 1
  122068.                 if @Rbr_Deca = 0
  122069.                     update #TmpKart
  122070.                     set PodKor = @ImeDetal
  122071.                     where Sifra_Kor = @Kor
  122072.                 else
  122073.                     begin
  122074.                       if @Rbr_Deca > @MaxZapis
  122075.                         begin
  122076.                       set @MaxZapis = @MaxZapis + 1
  122077.                       insert into #TmpKartPlus
  122078.                         (RbrZapis, Sifra_Kor)
  122079.                       values (@MaxZapis, @Kor)
  122080.                        end
  122081.                      update #TmpKartPlus
  122082.                      set PodKor = @ImeDetal
  122083.                      where RbrZapis = @Rbr_Deca
  122084.                    end
  122085.                end
  122086.             else if @Tip_Detal = 'MILENICI'
  122087.                begin
  122088.                 set @Rbr_Milenici = @Rbr_Milenici + 1
  122089.                 if @Rbr_Milenici = 0
  122090.                     update #TmpKart
  122091.                     set Milenici = @ImeDetal2 + ' ' + @ImeDetal
  122092.                     where Sifra_Kor = @Kor
  122093.                 else
  122094.                                     begin
  122095.                       if @Rbr_Milenici > @MaxZapis
  122096.                         begin
  122097.                       set @MaxZapis = @MaxZapis + 1
  122098.                       insert into #TmpKartPlus
  122099.                         (RbrZapis, Sifra_Kor)
  122100.                       values (@MaxZapis, @Kor)
  122101.                         end
  122102.                      update #TmpKartPlus
  122103.                      set Milenici = @ImeDetal2 + ' ' + @ImeDetal
  122104.                      where RbrZapis = @Rbr_Milenici
  122105.                    end
  122106.                end
  122107.  
  122108.             FETCH NEXT FROM Detal INTO @Tip_Detal, @ImeDetal, @ImeDetal2
  122109.         End
  122110.         CLOSE Detal
  122111.         DEALLOCATE Detal
  122112.  
  122113.         insert into #TmpKart
  122114.         ( RbrZapis, Sifra_Kor, ImeKor, Kontakt, PodKor, Milenici )
  122115.         select RbrZapis, Sifra_Kor, @ImeKor, Kontakt, PodKor, Milenici
  122116.         from #TmpKartPlus
  122117.  
  122118.         FETCH NEXT FROM Kart INTO @Kor, @ImeKor
  122119.     End
  122120.     CLOSE Kart
  122121.     DEALLOCATE Kart
  122122.  
  122123.     If @Podred = 'S'
  122124.         select * 
  122125.         from #TmpKart
  122126.         order by Sifra_Kor, RbrZapis
  122127.     Else If @Podred = 'A'
  122128.         select * 
  122129.         from #TmpKart
  122130.         order by ImeKor, Sifra_Kor, RbrZapis
  122131.  
  122132.  
  122133.  
  122134.  
  122135.  
  122136. Go
  122137. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglkorcosmostand]'))
  122138. drop procedure [dbo].[sp_preglkorcosmostand]
  122139.  
  122140. Go
  122141.  
  122142.  
  122143.  
  122144.  
  122145.  
  122146. CREATE             PROCEDURE sp_PreglKorCosmoStand
  122147.     @Sifra_Oe        smallint = Null,
  122148.     @KoiOe            char(6)=NULL,
  122149.     @Sifra_Kup        char(6)=NULL,
  122150.     @Aktiven        char(1)=NULL,
  122151.     @Podred            char(1)='S',
  122152.     @Sifra_TipKartKor    smallint = Null,
  122153.     @Sifra_Kor_Od        varchar(20) = Null,
  122154.     @Sifra_Kor_Do        varchar(20) = Null,
  122155.     @Dat_Zacl_Od        smalldatetime = Null,
  122156.     @Dat_Zacl_Do        smalldatetime = Null,
  122157.     @KorSoPromet        char(1) = 'S',        -- S - Site,   P - So Promet,   N - Bez Promet
  122158.     @Dat_Promet_Od        smalldatetime = Null,
  122159.     @Dat_Promet_Do        smalldatetime = Null,
  122160.     @Den_Raganje_Od     smallint = Null,
  122161.     @Den_Raganje_Do     smallint = Null,
  122162.     @Mesec_Raganje_Od    smallint = Null,
  122163.     @Mesec_Raganje_Do    smallint = Null,
  122164.     @Promet_Od        decimal(18,6) = Null,
  122165.     @Promet_Do        decimal(18,6) = Null,
  122166.     @Sifra_Oe_Podigni smallint= null,
  122167.         @Datum_Akt_Od    smalldatetime = Null,
  122168.     @Datum_Akt_Do    smalldatetime = Null  
  122169. AS
  122170.  
  122171.     Declare @SSQL as varchar(8000)
  122172.     Declare @SSQLUsl as varchar(8000)
  122173.     Set @SSQLUsl = ' '
  122174.     If @Sifra_Oe Is Not Null
  122175.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' ' 
  122176.     If @KoiOE Is Not NULL
  122177.              Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_OE IN (Select G.Sifra_Oe from SGrOrg G where G.sif_GrOrg = ''' + @KoiOe  +  ''') '
  122178.  
  122179.     If @Aktiven Is Not Null
  122180.         Set @SSQLUsl  = @SSQLUsl + ' And K.Aktiven = ''' + @Aktiven + ''' '
  122181.  
  122182.     If @Sifra_TipKartKor Is Not Null
  122183.         Set @SSQLUsl = @SSQLUsl + ' and K.Sifra_TipKartKor = ' + cast(@Sifra_TipKartKor as varchar(6)) + ' ' 
  122184.  
  122185.     If @Sifra_Kor_Od Is Not Null
  122186.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kor >= ''' + @Sifra_Kor_Od + ''' '    
  122187.     If @Sifra_Kor_Do Is Not Null
  122188.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Kor <= ''' + @Sifra_Kor_Do + ''' '    
  122189.  
  122190.     If @Dat_Zacl_Od Is Not Null
  122191.         Set @SSQLUsl  = @SSQLUsl + ' And K.DodadenNa >= ''' + Cast(@Dat_Zacl_Od as varchar(30)) + ''' '    
  122192.     If @Dat_Zacl_Do Is Not Null
  122193.         Set @SSQLUsl  = @SSQLUsl + ' And K.DodadenNa < ''' + Cast(@Dat_Zacl_Do + 1 as varchar(30)) + ''' '    
  122194.  
  122195.     If @Den_Raganje_Od Is Not Null
  122196.         Set @SSQLUsl  = @SSQLUsl + ' And Day(Datum_Rag) >= ' + Cast(@Den_Raganje_Od as varchar(2)) + ' '
  122197.     If @Den_Raganje_Do Is Not Null
  122198.         Set @SSQLUsl  = @SSQLUsl + ' And Day(Datum_Rag) <= ' + Cast(@Den_Raganje_Do as varchar(2)) + ' '
  122199.  
  122200.     If @Mesec_Raganje_Od Is Not Null
  122201.         Set @SSQLUsl  = @SSQLUsl + ' And Month(Datum_Rag) >= ' + Cast(@Mesec_Raganje_Od as varchar(2)) + ' '
  122202.     If @Mesec_Raganje_Do Is Not Null
  122203.         Set @SSQLUsl  = @SSQLUsl + ' And Month(Datum_Rag) <= ' + Cast(@Mesec_Raganje_Do as varchar(2)) + ' '
  122204.     If @Sifra_Oe_Podigni Is Not Null
  122205.         Set @SSQLUsl  = @SSQLUsl + ' And K.Sifra_Oe_Podigni = ''' + cast(@Sifra_Oe_Podigni as varchar(5)) + ''' '
  122206.         If @Datum_Akt_Od Is Not Null 
  122207.         Set @SSQLUsl = @SSQLUsl + ' And K.Datum_Akt >= ''' + cast(@Datum_Akt_Od as varchar(30)) + ''' '      
  122208.         If @Datum_Akt_Do Is Not Null 
  122209.         Set @SSQLUsl = @SSQLUsl + ' And K.Datum_Akt <= ''' + cast(@Datum_Akt_Do as varchar(30)) + ''' '         
  122210.  
  122211.     If @KorSoPromet In ('P', 'N') Or @Dat_Promet_Od Is Not Null Or @Dat_Promet_Do Is Not Null Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  122212.     Begin
  122213.         Create Table #KorPromet
  122214.         (
  122215.          Sifra_Kor    varchar(20),
  122216.          Promet        decimal(18,6)
  122217.         )
  122218.         Set @SSQL = 'Select P.Sifra_Kor, Sum(Dolzi) 
  122219.                 From KartProm P
  122220.                 Inner Join KartKor K On K.Sifra_Kor=P.Sifra_Kor
  122221.                 Where 1=1 '
  122222.         If @Dat_Promet_Od Is Not Null
  122223.             Set @SSQL  = @SSQL + ' And P.Datum_Ska >= ''' + Cast(@Dat_Promet_Od as varchar(30)) + ''' '    
  122224.         If @Dat_Promet_Do Is Not Null
  122225.             Set @SSQL  = @SSQL + ' And P.Datum_Ska <= ''' + Cast(@Dat_Promet_Do as varchar(30)) + ''' '    
  122226.         If @Sifra_Kup Is Not Null    
  122227.             Set @SSQL = @SSQL + ' And P.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  122228.         Set @SSQL = @SSQL + @SSQLUsl + ' Group By P.Sifra_Kor '
  122229.         If @KorSoPromet In ('P', 'N') Or @Promet_Od Is Not Null Or @Promet_Do Is Not Null
  122230.             Set @SSQL = @SSQL + ' Having 1=1 '
  122231.         If @Promet_Od Is Not Null
  122232.             Set @SSQL = @SSQL + ' And Sum(Dolzi) >= ' + Cast(@Promet_Od as varchar(20)) + ' '
  122233.         If @Promet_Do Is Not Null
  122234.             Set @SSQL = @SSQL + ' And Sum(Dolzi) <= ' + Cast(@Promet_Do as varchar(20)) + ' '
  122235.         If @KorSoPromet = 'P'
  122236.             Set @SSQL = @SSQL + ' And Sum(Dolzi) >= 0 '
  122237.         If @KorSoPromet = 'N'
  122238.             Set @SSQL = @SSQL + ' And Sum(Dolzi) = 0 '
  122239.         Insert Into #KorPromet Exec(@SSQL)
  122240.     End
  122241.  
  122242.     CREATE TABLE #TmpKart
  122243.     (
  122244.     [Sifra_Oe] [smallint] NULL ,
  122245.     [Sifra_Kor] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122246.     [ImeKor] [varchar] (40) COLLATE SQL_Latin1_General_CP1_CI_AS  NULL ,
  122247.     [SMesto] [char] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122248.     [Adresa] [char] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122249.     [Posta] [char] (5) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122250.     [Telefon] [char] (12) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122251.     [LK] [char] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122252.     [Aktiven] [char] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122253.     [Novi_Limi] [decimal](18, 6) NULL ,
  122254.     [Sifra_Kup] [char] (6) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122255.     [DodadenNa] [smalldatetime] NULL ,
  122256.     [Sifra_TipKartKor] [smallint] NULL ,
  122257.     [RegBrLK] [varchar] (10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122258.     [Datum_Rag] [smalldatetime] NULL ,
  122259.     [EMail] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122260.     [Pol] [char] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122261.     [Profesija] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122262.     [BracenStatus] [char] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122263.     [TelMobil] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122264.     [Tel2] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
  122265.     [ZabelKart] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
  122266.      PodKor        varchar(2000),
  122267.      Kontakt    varchar(200),
  122268.      Milenici    varchar(1000)
  122269.     )
  122270.  
  122271.     set @SSQL = ' Insert into #TmpKart
  122272.     ( Sifra_Oe, Sifra_Kor, ImeKor, SMesto, Adresa, Posta, 
  122273.       Telefon, LK, Aktiven, Sifra_Kup, DodadenNa, Sifra_TipKartKor, 
  122274.       Datum_Rag, EMail, Pol, Profesija, BracenStatus, 
  122275.       TelMobil, Tel2, ZabelKart ) '
  122276.  
  122277.  
  122278.     Set @SSQL = @SSQL + 
  122279.      ' Select K.Sifra_Oe, K.Sifra_Kor, K.ImeKor, K.SMesto, K.Adresa, K.Posta,
  122280.                   K.Telefon, K.LK, K.Aktiven, K.Sifra_Kup, K.DodadenNa, K.Sifra_TipKartKor, 
  122281.           K.Datum_Rag, K.EMail, K.Pol, K.Profesija, K.BracenStatus, 
  122282.           K.TelMObil, K.Tel2, K.ZabelKart 
  122283.               From KartKor K 
  122284.           Where 1=1 ' + @SSQLUsl
  122285.  
  122286.     if @Sifra_Kup is not null
  122287.         Set @SSQL = @SSQL + ' And K.Sifra_Kup = ''' + @Sifra_Kup + ''' '   -- ako barame samo pregled na korisnici bez promet togass filterot go gledame od KartKor
  122288.  
  122289.     If @Podred = 'S'
  122290.         Set @SSQL = @SSQL + ' Order By K.Sifra_Kor, K.Sifra_Oe '
  122291.     Else If @Podred = 'A'
  122292.         Set @SSQL  = @SSQL +  ' Order By K.ImeKor, K.Sifra_Oe '
  122293.     Else If @Podred = 'K'
  122294.         Set @SSQL  = @SSQL +  ' Order By K.Sifra_Kup '
  122295.  
  122296.     Exec (@SSQL)
  122297.  
  122298.     ----- Za detalite vo ramna forma da gi prikazzeme -----
  122299.     Declare @Kontakt varchar(200)
  122300.     Declare @Deca varchar(2000)
  122301.     Declare @Milenici varchar(1000)
  122302.  
  122303.     Declare @Tip_Detal varchar(10)
  122304.     Declare @ImeDetal varchar(40)
  122305.     Declare @ImeDetal2 varchar(40)
  122306.  
  122307.     Declare @Kor as varchar(20)
  122308.  
  122309.     DECLARE Kart CURSOR FAST_FORWARD 
  122310.         FOR SELECT Sifra_Kor 
  122311.         FROM #TmpKart
  122312.         Order By Sifra_Kor
  122313.     OPEN Kart
  122314.     FETCH NEXT FROM Kart INTO @Kor
  122315.  
  122316.     WHILE @@FETCH_STATUS = 0
  122317.     Begin
  122318.  
  122319.         set @Kontakt = ''
  122320.         set @Deca = ''
  122321.         set @Milenici = ''
  122322.  
  122323.         DECLARE Detal CURSOR FAST_FORWARD 
  122324.             FOR SELECT Tip_Detal, rtrim(ltrim(ImeDetal)), rtrim(ltrim(ImeDetal2))
  122325.         FROM KartKorDetali
  122326.         Where Sifra_Kor = @Kor
  122327.         order by rbr_detal
  122328.  
  122329.         OPEN Detal
  122330.         FETCH NEXT FROM Detal INTO @Tip_Detal, @ImeDetal, @ImeDetal2
  122331.  
  122332.         WHILE @@FETCH_STATUS = 0
  122333.         Begin
  122334.  
  122335.             if @ImeDetal is null
  122336.                 set @ImeDetal = ''
  122337.             if @ImeDetal2 is null
  122338.                 set @ImeDetal2 = ''
  122339.  
  122340.             if @Tip_Detal = 'KONTAKT'
  122341.             begin
  122342.                 if @KOntakt <> ''
  122343.                     set @Kontakt = @Kontakt + ','
  122344.                 set @Kontakt = @Kontakt + @ImeDetal
  122345.             end
  122346.             else if @Tip_Detal = 'DECA'
  122347.             begin
  122348.                 if @Deca <> ''
  122349.                     set @Deca = @Deca + ','
  122350.                 set @Deca = @Deca + @ImeDetal
  122351.             end
  122352.             if @Tip_Detal = 'MILENICI'
  122353.             begin
  122354.                 if @Milenici <> ''
  122355.                     set @Milenici = @Milenici + ','
  122356.                 set @Milenici = @Milenici + @ImeDetal2 + ' ' + @ImeDetal
  122357.             end
  122358.  
  122359.             FETCH NEXT FROM Detal INTO @Tip_Detal, @ImeDetal, @ImeDetal2
  122360.         End
  122361.         CLOSE Detal
  122362.         DEALLOCATE Detal
  122363.  
  122364.         update #TmpKart
  122365.         set Podkor = @Deca,
  122366.             Kontakt = @Kontakt,
  122367.             Milenici = @Milenici
  122368.         where sifra_kor = @Kor
  122369.  
  122370.  
  122371.         FETCH NEXT FROM Kart INTO @Kor
  122372.     End
  122373.     CLOSE Kart
  122374.     DEALLOCATE Kart
  122375.  
  122376.     select * from #TmpKart
  122377.  
  122378.  
  122379.  
  122380.  
  122381.  
  122382.  
  122383. Go
  122384. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglkuppocenovnik]'))
  122385. drop procedure [dbo].[sp_preglkuppocenovnik]
  122386.  
  122387. Go
  122388. CREATE PROCEDURE sp_PreglKupPoCenovnik
  122389.     @Sifra_Kup_Od    char(6),
  122390.     @Sifra_Kup_Do    char(6),
  122391.     @KojCenovnik    Char(1) = Null
  122392. AS
  122393.     Declare @SSQL as Varchar(2000)
  122394.     Set @SSQL = ' Select Distinct C.Sifra_Kup, K.ImeKup, C.KojCenovnik, C.Aktiven, C.SImeVal, Val.ImeVal
  122395.             From Cenovnik C
  122396.             Left Outer Join Komint K On K.Sifra_Kup = C.Sifra_Kup
  122397.             Left Outer Join KrsLista Val On Val.SImeVal = C.SImeVal 
  122398.             Where 1=1 '
  122399.     If @Sifra_Kup_Od Is Not Null
  122400.         Set @SSQL = @SSQL + ' and C.Sifra_Kup >= ''' + @Sifra_Kup_Od + ''' '
  122401.     If @Sifra_Kup_Do Is Not Null
  122402.         Set @SSQL = @SSQL + ' and C.Sifra_Kup <= ''' + @Sifra_Kup_Do + ''' '
  122403.     If @KojCenovnik Is Not Null
  122404.         Set @SSQL = @SSQL + ' and C.KojCenovnik = ''' + @KojCenovnik + ''' '
  122405.     Exec (@SSQL)
  122406.  
  122407.  
  122408. Go
  122409. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pregllokacii]'))
  122410. drop procedure [dbo].[sp_pregllokacii]
  122411.  
  122412. Go
  122413.  
  122414. CREATE  PROCEDURE sp_PreglLokacii
  122415.     @Sifra_LokOd    char(3),    
  122416.     @Sifra_LokDo    char(3)
  122417.  AS
  122418.     Declare @SSQL as Varchar(2000)
  122419.     Set @SSQL = 'Select MA.Ime_MakLok, MA.Sifra_MakLok, L.Sifra_Lok, L.ImeLok, MI.Sifra_MikLok, MI.Ime_MikLok        from Lokacija L
  122420.         Left Outer Join MakroLok MA On MA.Sifra_Lok=L.Sifra_Lok  
  122421.         Left Outer Join MikroLok MI On MI.Sifra_MakLok=MA.Sifra_MakLok 
  122422.             Where 1=1 '
  122423.     If @Sifra_LokOd Is Not null
  122424.         Set @SSQL = @SSQL + ' And L.Sifra_Lok >= ' + @Sifra_LokOd + ' '
  122425.     If @Sifra_LokDo Is Not null
  122426.         Set @SSQL = @SSQL + ' And L.Sifra_Lok <= ' + @Sifra_LokDo + ' '
  122427.     Exec(@SSQL)
  122428.  
  122429.  
  122430.  
  122431. Go
  122432. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglmaslenost]'))
  122433. drop procedure [dbo].[sp_preglmaslenost]
  122434.  
  122435. Go
  122436.  
  122437. CREATE   PROCEDURE sp_PreglMaslenost
  122438.     @Sifra_Kup    CHAR(6) = NULL,
  122439.     @Datum_Od     SMALLDATETIME = NULL,
  122440.     @Datum_Do    SMALLDATETIME = NULL
  122441. AS
  122442.     DECLARE @SSQL AS NVARCHAR(1000)
  122443.     SET @SSQL = 'SELECT M.Sifra_Kup, K.ImeKup, M.Sifra_Art, A.ImeArt, M.Datum, M.Vrednost, M.Proteini
  122444.                  FROM MerenjaZaArt M
  122445.                  LEFT OUTER JOIN Komint K ON M.Sifra_Kup = K.Sifra_Kup
  122446.                    LEFT OUTER JOIN Katart A ON M.Sifra_Art = A.Sifra_Art ' 
  122447.     IF @Sifra_Kup IS NOT NULL
  122448.         SET @SSQL = @SSQL + ' WHERE M.Sifra_Kup=''' + @Sifra_Kup + ''' '
  122449.     IF @Datum_Od IS NOT NULL
  122450.         BEGIN
  122451.             IF @Sifra_Kup IS NULL 
  122452.                 SET @SSQL = @SSQL + ' WHERE M.Datum >= ''' + CAST(@Datum_Od AS VARCHAR(30)) + ''' '
  122453.             ELSE
  122454.                 SET @SSQL = @SSQL + 'AND M.Datum >= ''' + CAST(@Datum_Od AS VARCHAR(30)) + ''' '
  122455.         END
  122456.     IF @Datum_Do IS NOT NULL
  122457.         SET @SSQL = @SSQL + 'AND M.Datum <= ''' + CAST(@Datum_Do AS VARCHAR(30)) + ''' '
  122458.     
  122459.     SET @SSQL = @SSQL + ' GROUP BY M.Sifra_Kup, K.ImeKup, M.Sifra_Art, A.ImeArt, M.Datum, M.Vrednost, M.Proteini
  122460.                           ORDER BY M.Sifra_Kup, M.Sifra_Art, M.Datum '
  122461.  
  122462. EXEC (@SSQL)
  122463.  
  122464. RETURN @@ERROR
  122465.  
  122466.  
  122467.  
  122468.  
  122469. Go
  122470. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglmatdokkratok]'))
  122471. drop procedure [dbo].[sp_preglmatdokkratok]
  122472.  
  122473. Go
  122474.  
  122475. CREATE  PROCEDURE sp_PreglMatDokKratok
  122476.     @Sifra_OE    smallint=NULL,
  122477.     @Koi_TipDok    varchar(100)=NULL,
  122478.     @VlIzl        char(1)=NULL,
  122479.     @Datum_Od    smalldatetime = NULL,
  122480.     @Datum_Do    smalldatetime = NULL
  122481. AS
  122482.     DECLARE @SSQL varchar(3000)
  122483.     SET @SSQL = 'SELECT DokrID, Sifra_Kup, Sifra_OE, Sifra_Dok, Broj_Dok, Datum_Dok, Identif_Br
  122484.     FROM Dokr WHERE 1=1'
  122485.     IF @Sifra_OE IS NOT NULL
  122486.         SET @SSQL = @SSQL + ' AND Sifra_OE = '+cast(@Sifra_OE as varchar(5))
  122487.     IF @Koi_TipDok     IS NOT NULL
  122488.         SET @SSQL = @SSQL + ' AND Sifra_Dok IN ('+@Koi_TipDok+')'
  122489.     IF @VlIzl IS NOT NULL    
  122490.         SET @SSQL = @SSQL + ' AND VlIzl = '''+@VlIzl+''' '
  122491.     IF @Datum_Od IS NOT NULL
  122492.         SET @SSQL = @SSQL + ' AND Datum_Dok >= '''+cast(@Datum_Od as varchar(35))+''' '
  122493.     IF @Datum_Do IS NOT NULL
  122494.         SET @SSQL = @SSQL + ' AND Datum_Dok <= '''+cast(@Datum_Do as varchar(35))+''' '
  122495.     SET @SSQL = @SSQL + ' ORDER BY Datum_Dok DESC'
  122496.     EXEC(@SSQL)
  122497.  
  122498.  
  122499.  
  122500. Go
  122501. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglnaplata]'))
  122502. drop procedure [dbo].[sp_preglnaplata]
  122503.  
  122504. Go
  122505. CREATE  PROCEDURE sp_PreglNaplata
  122506.     @Datum_Od    smalldatetime = Null,
  122507.     @Datum_Do    smalldatetime = Null,
  122508.     @Sifra_Kup    char(6) = Null
  122509. AS
  122510.     Declare @SSQL as varchar(4000)
  122511.     Set @SSQL = ' Select N.Sifra_OE, N.Sifra_Dok, N.Broj_Dok, N.Sifra_Kup,  Kup.ImeKup, N.Pobaruva, N.Datum_Dok
  122512.             From Naplata N
  122513.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  122514.             Where 1=1 '
  122515.     If @Datum_Od Is Not Null
  122516.         Set @SSQL = @SSQL + ' And N.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  122517.     If @Datum_Do Is Not Null
  122518.         Set @SSQL = @SSQL + ' And N.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '
  122519.     If @Sifra_Kup Is Not Null
  122520.         Set @SSQL = @SSQL + ' And N.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  122521.     Set @SSQL = @SSQL + ' Order By N.Datum_Dok '
  122522.     Exec(@SSQL)
  122523.  
  122524.  
  122525.  
  122526. Go
  122527. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglnarac]'))
  122528. drop procedure [dbo].[sp_preglnarac]
  122529.  
  122530. Go
  122531. CREATE PROCEDURE sp_PreglNarac
  122532.     @Datum_Nar_Od    smalldatetime=Null,
  122533.     @Datum_Nar_Do    smalldatetime=Null,
  122534.     @Realiziran        char(1)=Null,             -- D/N  -   Realizirani/Nerealizirani Naracki
  122535.     @Dobavuvac        char(6)=Null,
  122536.     @Sifra_Art_Od        varchar(20)=Null,
  122537.     @Sifra_Art_Do        varchar(20)=Null,
  122538.     @Sifra_Podg        char(6)=Null,
  122539.     @PocnuvaSo        char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  122540.     @Sifra_Nar        smallint=Null,
  122541.     @Podred        char(1) = Null,
  122542.     @Sifra_Oe        smallint = Null,
  122543.     @GroupZaGrid        char(1) = 'N'        -- Za Prikazuv. vo grid procedurata gigrupira vrednostite
  122544.  AS
  122545.     Declare @SSQL as Varchar(4000)
  122546.     If @GroupZaGrid = 'D'
  122547.     Begin
  122548.         Set @SSQL = ' Select (Cast(N.Sifra_OE as varchar(6))+''-''+cast(N.Sifra_Nar as varchar(6))+''/''+cast(N.Broj_Nar as varchar(10))+'' ''+N.Identif_Br) as IDNarac, 
  122549.                     N.Sifra_Kup, Kup.ImeKup, N.Datum_Nar, 
  122550.                     Sum(S.Kolic) As Kolic, 
  122551.                     Sum(dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, 0) * S.Kolic) Vrednost '
  122552.     End
  122553.     Else
  122554.     Begin    
  122555.         Set @SSQL = ' Select N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Sifra_Obj, N.Datum_Nar, N.Sifra_Pat, N.Toc200, N.KojaVal, N.Kurs, 
  122556.                 N.DanDokCena, N.DanmagCena, N.CenaIznos, N.Realiziran, N.Realiz_Na, N.Dat_Ocek, N.Dat_Pristig, N.Dat_Utov, N.Vet_Broj, N.Dat_Vet_Vazn, 
  122557.                 N.Vozilo_Kont, Kup.ImeKup, S.Sifra_Art, K.ImeArt, S.Realiziran RealiziranArt, S.Kolic, 
  122558.                 dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, 0) DokCena, S.DanDokCena, S.MagCena, S.DanMagCena, S.Posn '
  122559.     End
  122560.     Set @SSQL = @SSQL + ' From Naracki N
  122561.             Inner Join StaNarac S On S.NarID=N.NArID
  122562.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  122563.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  122564.             Where 1=1 '
  122565.     If @Datum_Nar_Od Is Not Null
  122566.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_Nar_Od as varchar(30)) + ''' '
  122567.     If @Datum_Nar_Do Is Not Null
  122568.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + cast(@Datum_Nar_Do as varchar(30)) + ''' '
  122569.     If @Sifra_Art_Od Is Not Null
  122570.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  122571.     If @Sifra_Art_Do Is Not Null
  122572.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  122573.     If @Sifra_Podg Is Not Null
  122574.         If @PocnuvaSo = 'D'
  122575.             Set @SSQL = @SSQL + ' And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  122576.         Else 
  122577.             Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  122578.     If @Sifra_Nar Is Not Null
  122579.         Set @SSQL = @SSQL + ' And N.Sifra_Nar = ' + cast(@Sifra_Nar as varchar(10)) + ' '
  122580.     If @Dobavuvac Is Not Null
  122581.         Set @SSQL = @SSQL + ' And N.Sifra_Kup = ''' + @Dobavuvac + ''' '
  122582.     If @Sifra_Oe Is Not Null
  122583.         Set @SSQL = @SSQL + ' And N.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  122584.     If @Realiziran = 'D'
  122585.         Set @SSQL = @SSQL + ' And N.Realiziran = ''D'' '
  122586.     Else If @Realiziran = 'N'
  122587.         Set @SSQL = @SSQL + ' And (N.Realiziran = ''N'' Or N.Realiziran Is Null)'
  122588.     If @GroupZaGrid = 'D'
  122589.         Set @SSQL = @SSQL + ' Group By Cast(N.Sifra_OE as varchar(6))+''-''+cast(N.Sifra_Nar as varchar(6))+''/''+cast(N.Broj_Nar as varchar(10))+'' ''+N.Identif_Br,
  122590.                     N.Sifra_Kup, Kup.ImeKup, N.Datum_Nar, N.Broj_Nar 
  122591.                     Order By N.Datum_Nar, N.Broj_Nar '
  122592.     If @Podred = 'S'    
  122593.         Set @SSQL = @SSQL + ' Order By S.Sifra_Art '
  122594.     If @Podred = 'A'    
  122595.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  122596.     Exec(@SSQL)
  122597.  
  122598.  
  122599. Go
  122600. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglnaracpotvrdeni]'))
  122601. drop procedure [dbo].[sp_preglnaracpotvrdeni]
  122602.  
  122603. Go
  122604. CREATE   PROCEDURE sp_PreglNaracPotvrdeni
  122605.     @Datum_Nar_Od    smalldatetime=Null,
  122606.     @Datum_Nar_Do    smalldatetime=Null,
  122607.     @Dat_Ocek_Od    smalldatetime=Null,
  122608.     @Dat_Ocek_Do    smalldatetime=Null,
  122609.     @Dat_Pristig_Od    smalldatetime=Null,
  122610.     @Dat_Pristig_Do    smalldatetime=Null,
  122611.     @Dat_Dosp_Od        smalldatetime=Null,
  122612.     @Dat_Dosp_Do        smalldatetime=Null,
  122613. --    @Status        char(2)=Null,             -- NN  -  Natovareni,     PP - Pristignati      NP  -  Natovareni ili pristignati      Null - Site
  122614.     @Realizirani        char(1) = Null,        -- D - Prikazi realizirani        N - Ne gi prikazuva realiziranite
  122615.     @Nerealizirani        char(1) = Null,        -- D - Prikazi nerealizirani        N - Ne gi prikazuva nerealiziranite
  122616.     @Otkazani        char(1) = Null,        -- D - Prikazi otkazani        N - Ne gi prikazuva otkazanite
  122617.     @Dobavuvac        char(6)=Null,
  122618.     @Sifra_Art_Od        varchar(20)=Null,
  122619.     @Sifra_Art_Do        varchar(20)=Null,
  122620.     @Sifra_Podg        char(6)=Null,
  122621.     @PocnuvaSo        char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  122622.     @Sifra_Nar        smallint=Null,
  122623.     @Podred        char(1) = Null,
  122624.     @Sifra_Oe        smallint = Null,
  122625.     @GroupZaGrid        char(1) = 'N',        -- Za Prikazuv. vo grid procedurata gigrupira vrednostite
  122626.     @Vet_Br        char(1) = Null        -- D - Ima,     N - Nema,     S - Site
  122627.  AS
  122628.     Declare @SSQL as Varchar(4000)
  122629.     Declare @Status as varchar(50)
  122630.     Set @Status=''  -- Po pretpostavka deka status G nema
  122631.     If @Realizirani='D'
  122632.         Set @Status = @Status + '''R'''
  122633.     If @NeRealizirani='D'
  122634.         If @Status = ''
  122635.             Set @Status = @Status + '''N'''
  122636.         Else
  122637.             Set @Status = @Status + ', ''N'''
  122638.     If @Otkazani='D'
  122639.         If @Status = ''
  122640.             Set @Status = @Status + '''O'''
  122641.         Else
  122642.             Set @Status = @Status + ', ''O'''
  122643. --Print @Status
  122644.     If @GroupZaGrid = 'D'
  122645.     Begin
  122646.         Set @SSQL = ' Select N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Datum_Nar, N.Dat_Ocek, N.Dat_Pristig, N.Dat_Utov, 
  122647.                     N.Vet_Broj, N.Dat_Vet_Vazn, N.Vozilo_Kont, Kup.ImeKup, N.PlakOpis, N.Stat_Nar, 
  122648.                     (Cast(N.Sifra_OE as varchar(6))+''-''+cast(N.Sifra_Nar as varchar(6))+''/''+cast(N.Broj_Nar as varchar(10))+'' ''+N.Identif_Br) as IDNarac, 
  122649.                     Sum(S.Kolic) As Kolic, 
  122650.                     Sum(S.DokCena * S.Kolic) Vrednost,
  122651.                     N.Toc200,
  122652.                     DateAdd(day, N.Rok, N.Dat_Utov) as Dat_Dosp, '''' as Prazna'
  122653. --                    Sum(dbo.fn_VratiCenaSoDDVBezRabat(S.DokCena, S.DanDokCena, S.Posn, S.Uces, 0) * S.Kolic) Vrednost '
  122654.     End
  122655.     Else
  122656.     Begin    
  122657.         Set @SSQL = ' Select N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Sifra_Obj, N.Datum_Nar, N.Sifra_Pat, N.Toc200, N.KojaVal, N.Kurs, 
  122658.                 N.CenaIznos, N.Realiziran, N.Realiz_Na, N.Dat_Ocek, N.Dat_Pristig, N.Dat_Utov, N.Vet_Broj, N.Dat_Vet_Vazn, 
  122659.                 N.Vozilo_Kont, Kup.ImeKup, S.Sifra_Art, K.ImeArt, S.Realiziran RealiziranArt, S.Kolic, N.PlakOpis, N.Stat_Nar, Rtrim(S.ImeMat) ImeMat, 
  122660.                 K.EdMera SEdMera, S.EdMera,
  122661.                 S.DokCena, S.DanDokCena, S.MagCena, S.DanMagCena, S.Posn, DateAdd(day, N.Rok, N.Dat_Utov) as Dat_Dosp, '''' as Prazna '
  122662.     End
  122663.     Set @SSQL = @SSQL + ' From Naracki N
  122664.             Inner Join StaNarac S On S.NarID=N.NArID
  122665.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  122666.             Left Outer Join Komint Kup On Kup.Sifra_Kup=N.Sifra_Kup
  122667.             Where 1=1 '
  122668.     If @Datum_Nar_Od Is Not Null
  122669.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + cast(@Datum_Nar_Od as varchar(30)) + ''' '
  122670.     If @Datum_Nar_Do Is Not Null
  122671.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + cast(@Datum_Nar_Do as varchar(30)) + ''' '
  122672.     If @Dat_Ocek_Od Is Not Null
  122673.         Set @SSQL = @SSQL + ' And N.Dat_Ocek >= ''' + cast(@Dat_Ocek_Od as varchar(30)) + ''' '
  122674.     If @Dat_Ocek_Do Is Not Null
  122675.         Set @SSQL = @SSQL + ' And N.Dat_Ocek <= ''' + cast(@Dat_Ocek_Do as varchar(30)) + ''' '
  122676.     If @Dat_Pristig_Od Is Not Null
  122677.         Set @SSQL = @SSQL + ' And N.Dat_Pristig >= ''' + cast(@Dat_Pristig_Od as varchar(30)) + ''' '
  122678.     If @Dat_Pristig_Do Is Not Null
  122679.         Set @SSQL = @SSQL + ' And N.Dat_Pristig <= ''' + cast(@Dat_Pristig_Do as varchar(30)) + ''' '
  122680.     If @Dat_Dosp_Od Is Not Null
  122681.         Set @SSQL = @SSQL + ' And DateAdd(day, N.Rok, N.Dat_Utov) >= ''' + cast(@Dat_Dosp_Od as varchar(30)) + ''' '
  122682.     If @Dat_Dosp_Do Is Not Null
  122683.         Set @SSQL = @SSQL + ' And DateAdd(day, N.Rok, N.Dat_Utov) <= ''' + cast(@Dat_Dosp_Do as varchar(30)) + ''' '
  122684.     If @Sifra_Art_Od Is Not Null
  122685.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  122686.     If @Sifra_Art_Do Is Not Null
  122687.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  122688.     If @Sifra_Podg Is Not Null
  122689.         If @PocnuvaSo = 'D'
  122690.             Set @SSQL = @SSQL + ' And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  122691.         Else 
  122692.             Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  122693.     If @Sifra_Nar Is Not Null
  122694.         Set @SSQL = @SSQL + ' And N.Sifra_Nar = ' + cast(@Sifra_Nar as varchar(10)) + ' '
  122695.     If @Dobavuvac Is Not Null
  122696.         Set @SSQL = @SSQL + ' And N.Sifra_Kup = ''' + @Dobavuvac + ''' '
  122697.     If @Sifra_Oe Is Not Null
  122698.         Set @SSQL = @SSQL + ' And N.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(10)) + ' '
  122699.     If @Realizirani = 'D' Or @NeRealizirani = 'D' Or @Otkazani = 'D'
  122700.         Set @SSQL = @SSQL + ' And N.Stat_Nar In (' + @Status + ') '
  122701. --    Else If @Status = 'PP'
  122702. --        Set @SSQL = @SSQL + ' And N.Dat_Pristig Is Not Null '
  122703. --    Else If @Status = 'NP'
  122704. --        Set @SSQL = @SSQL + ' And (N.Dat_Pristig Is Not Null Or Dat_Utov Is Not Null) '
  122705.     If @Vet_Br = 'D'
  122706.         Set @SSQL = @SSQL + ' And N.Dat_Vet_Vazn Is Not Null '
  122707.     Else If @Vet_Br = 'N'
  122708.         Set @SSQL = @SSQL + ' And N.Dat_Vet_Vazn Is Null '
  122709.     If @Podred = 'S'    
  122710.         Set @SSQL = @SSQL + ' Order By S.Sifra_Art '
  122711.     Else If @Podred = 'A'    
  122712.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  122713.     Else If @Podred = 'D'
  122714.         Set @SSQL = @SSQL + ' Order By N.Datum_Nar, N.Broj_Nar '
  122715.     If @GroupZaGrid = 'D'
  122716.         Set @SSQL = @SSQL +  'Group By N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Identif_Br, N.Sifra_Kup, N.Datum_Nar, N.Dat_Ocek, N.Dat_Pristig, N.Dat_Utov, 
  122717.                     N.Vet_Broj, N.Dat_Vet_Vazn, N.Vozilo_Kont, Kup.ImeKup, N.PlakOpis, N.Stat_Nar, N.Toc200, DateAdd(day, N.Rok, N.Dat_Utov) 
  122718.                     Order By N.Datum_Nar, N.Broj_Nar '
  122719.     Exec(@SSQL)
  122720.  
  122721.  
  122722. Go
  122723. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglnarkratok]'))
  122724. drop procedure [dbo].[sp_preglnarkratok]
  122725.  
  122726. Go
  122727.  
  122728.  
  122729.  
  122730.  
  122731.  
  122732. CREATE       PROCEDURE sp_PreglNarKratok
  122733.     @Sifra_OE    smallint=NULL,
  122734.     @Koi_TipNar    varchar(100)=NULL,
  122735.     @Datum_Od    smalldatetime = NULL,
  122736.     @Datum_Do    smalldatetime = NULL,
  122737.     @Realiz        char(1)=''
  122738. AS
  122739.     DECLARE @SSQL varchar(3000)
  122740.     SET @SSQL = 'SELECT N.NarID, K.ImeKup, N.Sifra_OE, N.Sifra_Nar, N.Broj_Nar, N.Datum_Nar, N.Identif_Br, 
  122741.     Case N.Realiziran WHEN ''P'' Then ''Delumno realizirana'' WHEN ''D'' THEN ''Celosno realizirana'' WHEN ''S'' THen ''Realizirani site artikli so dr.kol.'' ELSE '''' END AS Realiziran
  122742.     FROM Naracki N LEFT OUTER JOIN Komint K ON N.Sifra_Kup=K.Sifra_Kup WHERE 1=1'
  122743.     IF @Sifra_OE IS NOT NULL
  122744.         SET @SSQL = @SSQL + ' AND N.Sifra_OE = '+cast(@Sifra_OE as varchar(5))
  122745.     IF @Koi_TipNAr     IS NOT NULL
  122746.         SET @SSQL = @SSQL + ' AND N.Sifra_Nar IN ('+@Koi_TipNar+')'
  122747.     IF @Datum_Od IS NOT NULL
  122748.         SET @SSQL = @SSQL + ' AND N.Datum_Nar >= '''+cast(@Datum_Od as varchar(35))+''' '
  122749.     IF @Datum_Do IS NOT NULL
  122750.         SET @SSQL = @SSQL + ' AND N.Datum_Nar <= '''+cast(@Datum_Do as varchar(35))+''' '
  122751.     IF @Realiz IS NOT NULL AND @Realiz='N'
  122752.         SET @SSQL = @SSQL + ' AND (Not (N.Realiziran = ''D'' Or N.Realiziran = ''S'') Or (N.Realiziran Is Null)) '
  122753.     SET @SSQL = @SSQL + ' ORDER BY N.Datum_Nar DESC, N.Broj_Nar DESC'
  122754.     EXEC(@SSQL)
  122755.  
  122756.  
  122757.  
  122758.  
  122759.  
  122760. Go
  122761. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglnarkratokf12]'))
  122762. drop procedure [dbo].[sp_preglnarkratokf12]
  122763.  
  122764. Go
  122765.  
  122766.  
  122767.  
  122768. CREATE     PROCEDURE sp_PreglNarKratokF12
  122769.     @Sifra_OE    smallint=NULL,
  122770.     @Sifra_Nar        smallint=NULL
  122771. AS
  122772.     SELECT TOP 100 N.NarID, N.Sifra_Kup, K.ImeKup, N.Broj_Nar,N.Datum_Nar, N.Toc200, N.Identif_Br
  122773.     FROM Naracki N  
  122774.     LEFT OUTER JOIN Komint K ON K.Sifra_Kup=N.Sifra_Kup 
  122775.     WHERE N.Sifra_Oe=@Sifra_Oe AND N.Sifra_Nar=@Sifra_Nar ORDER BY N.Datum_Nar DESC
  122776.  
  122777.  
  122778.  
  122779. Go
  122780. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglneazurdok]'))
  122781. drop procedure [dbo].[sp_preglneazurdok]
  122782.  
  122783. Go
  122784.  
  122785.  
  122786.  
  122787. CREATE               PROCEDURE sp_PreglNeazurDok
  122788.     @Sifra_OE     Smallint,
  122789.     @KoiOe    varchar(10) = Null,
  122790.     @Sifra_Dok    Smallint, 
  122791.     @Sifra_Nal     Smallint,
  122792.     @Datum_Od  Smalldatetime,
  122793.     @Datum_Do  Smalldatetime,
  122794.     @Sifra_Kup    char(6) = Null,
  122795.         @Toc200RazlNula  char(1) ='D'
  122796. AS
  122797.     Set Nocount On
  122798.     Declare @SSQL Varchar(8000)
  122799.     Set @SSQL =     'SELECT  D.Sifra_OE, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Prim, D.Sifra_Nal, D.Sifra_Kup, K.ImeKup, D.Toc200, D.MagVr, D.MagVrDan, D.Datum_Dok, O.ImeOrg, D.VlIzl 
  122800.             FROM Dokr D 
  122801.             Inner Join Orged O On O.Sifra_Oe = D.Sifra_Oe
  122802.             LEFT OUTER JOIN Komint K ON D.Sifra_Kup = K.Sifra_Kup 
  122803.             WHERE Broj_Nal IS NULL 
  122804.             AND D.Sifra_Dok IN (SELECT Sifra_Dok FROM TipDok WHERE DaliFin = ''D'') 
  122805.             AND D.Sifra_OE IN (SELECT Sifra_OE FROM OrgEd WHERE OrgDaliFin = ''D'') '
  122806.     If @Datum_Od Is Not NULL
  122807.         Set @SSQL = @SSQL + ' AND D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  122808.     If @Datum_Do Is Not NULL
  122809.         Set @SSQL = @SSQL + ' AND D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  122810.     If @Sifra_Dok Is Not NULL
  122811.         Set @SSQL = @SSQL + ' AND D.Sifra_Dok =' + Cast(@Sifra_Dok As Varchar(5)) + ' '
  122812.     If @Sifra_Nal Is Not NULL
  122813.         Set @SSQL = @SSQL + ' AND D.Sifra_Nal =' + Cast(@Sifra_Nal As Varchar(5)) + ' '
  122814.     If @Sifra_OE Is Not NULL
  122815.           Set @SSQL  = @SSQL + ' AND D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  122816.     If @KoiOE Is Not NULL
  122817.           Set @SSQL  = @SSQL + ' AND D.Sifra_OE In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe + ''') '
  122818.     If @Sifra_Kup Is Not NULL
  122819.           Set @SSQL  = @SSQL + ' AND D.Sifra_Kup = ' + @Sifra_Kup + ' '
  122820.         If @Toc200RazlNula ='D' 
  122821.           Set @SSQL = @SSQL + ' AND D.Toc200 <> 0'
  122822.     Print(@SSQL)
  122823.         Exec(@SSQL)
  122824.     Set Nocount Off
  122825.  
  122826. Go
  122827. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglosnsred]'))
  122828. drop procedure [dbo].[sp_preglosnsred]
  122829.  
  122830. Go
  122831.  
  122832.  
  122833.  
  122834.  
  122835.  
  122836. CREATE          PROCEDURE sp_PreglOsnSred
  122837.     @Inv_BrojOd    char(10) = Null, 
  122838.     @Inv_BrojDo    char(10) = Null, 
  122839.     @Sifra_Lok    char(3) = Null, 
  122840.     @Sifra_MakLok    char(10) = Null, 
  122841.     @Sifra_MikLok    char(10) = Null, 
  122842.     @Koi_Sva    char(1) = Null,         -- S - Site,     N - Novo nabaveni    O - Otpisani    A - Aktivni
  122843.     @Delov_God    smallint = Null,         -- Novonabaveni, Otpisani, Aktivirani vo taa Godina
  122844.     @Sifra_Amor    char(3) = Null,
  122845.     @DatNabOd    smalldatetime = Null,
  122846.     @DatNabDo    smalldatetime = Null,
  122847.     @DatAktOd    smalldatetime = Null,
  122848.     @DatAktDo    smalldatetime = Null,
  122849.     @DatPrestOd    smalldatetime = Null,
  122850.     @DatPrestDo    smalldatetime = Null,
  122851.     @Rabotnici    varchar(200) = Null,
  122852.     @SoDogradbi    char(1) = 'D',
  122853.     @OS_SI    char(1) = 'O',    -- O - Osnovni Sredstva,       S - Siten Inventar
  122854.     @Sifra_OsnGrPodel_ZaGrupiranje    smallint = NULL,
  122855.     @Filtri_OsnPodelbi    varchar(500) = NULL,
  122856.     @PrikOtpisani    char(1) = 'D',
  122857.     @Kto_anal varchar(10)= null
  122858. AS
  122859.  
  122860. CREATE TABLE #TmpPodel
  122861. (Sifra_OsnGrPodel smallint,
  122862. Sifra_OsnPodel smallint)
  122863. CREATE TABLE #TmpOsn 
  122864. (Inv_Broj char(10),
  122865. Sifra_OsnGrPodel smallint)
  122866. CREATE TABLE #TmpGrPodel (Sifra_OsnGrPodel smallint)
  122867. CREATE TABLE #TmpOsnSoPodel (Inv_Broj char(10), BrPodel smallint)
  122868.  
  122869. IF @Filtri_OsnPodelbi IS NOT NULL
  122870. Begin
  122871.     Declare @Sifra_OsnGrPodel varchar(4), @Sifra_OsnPodel varchar(4), @Zapirka smallint, @Crta smallint 
  122872.     While 1=1   
  122873.     Begin
  122874.         SET @Zapirka = PATINDEX('%,%', @Filtri_OsnPodelbi) 
  122875.         SET @Crta = PATINDEX('%-%', @Filtri_OsnPodelbi) 
  122876.         IF @Zapirka=0     BREAK
  122877.         SET @Sifra_OsnGrPodel = SUBSTRING(@Filtri_OsnPodelbi, 1, @Crta-1)
  122878.         SET @Sifra_OsnPodel = SUBSTRING(@Filtri_OsnPodelbi, @Crta+1, @Zapirka-@Crta-1)
  122879.         INSERT INTO #TmpPodel VALUES(@Sifra_OsnGrPodel, @Sifra_OsnPodel)
  122880.         SET @Filtri_OsnPodelbi = SUBSTRING(@Filtri_OsnPodelbi, @Zapirka+1, Len(@Filtri_OsnPodelbi)-@Zapirka+1)
  122881.     End
  122882.     INSERT INTO #TmpGrPodel SELECT Distinct Sifra_OsnGrPodel FROM #TmpPodel
  122883.  
  122884.     Declare @Sif_OGP smallint, @BrRazlGr smallint
  122885.     SELECT @BrRazlGr=COUNT(*) FROM #TmpGrPodel
  122886.     Declare TabO Cursor Fast_Forward For Select DISTINCT Sifra_OsnGrPodel From #TmpGrPodel
  122887.     Open TabO
  122888.     Fetch Next From TabO Into @Sif_OGP
  122889.     While @@Fetch_Status = 0
  122890.     Begin            --gi odreduv.osn.sred. koi imaat Sifra_OsnGrPodel po baran kriterium
  122891.         INSERT INTO #TmpOsn SELECT Inv_Broj, Sifra_OsnGrPodel FROM OsnPodelSta
  122892.         WHERE Sifra_OsnGrPodel = @Sif_OGP AND Sifra_OsnPodel IN (SELECT Sifra_OsnPodel FROM #TmpPodel WHERE Sifra_OsnGrPodel=@Sif_OGP)
  122893.  
  122894.         Fetch Next From TabO Into @Sif_OGP
  122895.     End
  122896.     Close TabO
  122897.     Deallocate TabO
  122898.     
  122899.     INSERT INTO #TmpOsnSoPodel SELECT Inv_Broj, Count(*) FROM #TmpOsn GROUP BY Inv_Broj
  122900.     DELETE FROM #TmpOsnSoPodel WHERE BrPodel<@BrRazlGr    --gi briseme tie osn.sred. koi gi nemaat site podelbi
  122901. --select * from #TmpOsn
  122902. --return
  122903. End
  122904.     Declare @SSQL as Varchar(8000)
  122905.     Set @SSQL = 'Select  O.Inv_Broj, O.Ime, O.Opis, O.Kto_Anal, O.Br_Smena, O.Sifra_Amor, O.DatNab, O.DatAkt, O.DatPrest, O.Sifra_MikLok, O.BarKod, 
  122906.             O.Orig_Nab_Vr, O.RedTrans, O.Valuta, O.Orig_Nab_Vr_Val, MIKL.Ime_MikLok, MIKL.Sifra_MakLok, MAKL.Ime_MakLok,
  122907.             MAKL.Sifra_Lok, L.ImeLok, A.Ime Ime_AmorGrp, K.ImeAnal, A.Stapka, O.Tip, O.Oznaka, O.Sifra_Rab, R.ImeRab, '
  122908.     IF @Sifra_OsnGrPodel_ZaGrupiranje IS NOT NULL
  122909.         Set @SSQL = @SSQL + 'OP.Sifra_OsnPodel, OP.Vrednost'
  122910.     ELSE
  122911.         Set @SSQL = @SSQL + ''''' Sifra_OsnPodel, '''' Vrednost'
  122912.     Set @SSQL = @SSQL + ' From OsnSred O
  122913.             Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  122914.             Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  122915.             Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  122916.             Left Outer Join AmorGrp A On A.Sifra_Amor=O.Sifra_Amor
  122917.             Left Outer Join Anal K On K.Kto_Anal=O.Kto_Anal 
  122918.             Left Outer Join Rabotnik R On R.Sifra_Rab=O.Sifra_Rab '
  122919.     IF @Sifra_OsnGrPodel_ZaGrupiranje IS NOT NULL 
  122920.         Set @SSQL = @SSQL + ' LEFT OUTER JOIN OsnPodelSta OPS ON O.Inv_Broj=OPS.Inv_Broj AND OPS.Sifra_OsnGrPodel='+cast(@Sifra_OsnGrPodel_ZaGrupiranje as varchar(4))+
  122921.                             ' LEFT OUTER JOIN OsnPodelbi OP ON OPS.Sifra_OsnGrPodel=OP.Sifra_OsnGrPodel AND OPS.Sifra_OsnPodel=OP.Sifra_OsnPodel '
  122922.     Set @SSQL = @SSQL + ' Where 1=1 '
  122923.     If @Inv_BrojOd Is Not null
  122924.         Set @SSQL = @SSQL + ' And O.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  122925.     If @Inv_BrojDo Is Not null
  122926.         Set @SSQL = @SSQL + ' And O.Inv_Broj <= ''' + @Inv_BrojDo + ''' ' 
  122927.     If @Sifra_Lok Is Not null
  122928.         Set @SSQL = @SSQL + ' And L.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  122929.     If @Sifra_MakLok Is Not null
  122930.         Set @SSQL = @SSQL + ' And MAKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  122931.     If @Sifra_MikLok Is Not null
  122932.         Set @SSQL = @SSQL + ' And MIKL.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  122933.     If @Sifra_Amor Is Not null
  122934.         Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  122935.     If @DatNabOd Is Not null
  122936.         Set @SSQL = @SSQL + ' And O.DatNab >= ''' + cast(@DatNabOd as varchar(30)) + ''' '
  122937.     If @DatNabDo Is Not null
  122938.         Set @SSQL = @SSQL + ' And O.DatNab <= ''' + cast(@DatNabDo as varchar(30)) + ''' '
  122939.     If @DatAktOd Is Not null
  122940.         Set @SSQL = @SSQL + ' And O.DatAkt >= ''' + cast(@DatAktOd as varchar(30)) + ''' '
  122941.     If @DatAktDo Is Not null
  122942.         Set @SSQL = @SSQL + ' And O.DatAkt <= ''' + cast(@DatAktDo as varchar(30)) + ''' '
  122943.     If @DatPrestOd Is Not null
  122944.         Set @SSQL = @SSQL + ' And O.DatPrest >= ''' + cast(@DatPrestOd as varchar(30)) + ''' '
  122945.     If @DatPrestDo Is Not null
  122946.         Set @SSQL = @SSQL + ' And O.DatPrest <= ''' + cast(@DatPrestDo as varchar(30)) + ''' '
  122947.     If @Rabotnici Is Not null
  122948.         Set @SSQL = @SSQL + ' And O.Sifra_Rab In (' + @Rabotnici + ') '
  122949.     If @OS_SI = 'O'
  122950.         Set @SSQL = @SSQL + ' And O.Tip = ''OS'' '
  122951.     Else If @OS_SI = 'S'
  122952.         Set @SSQL = @SSQL + ' And O.Tip = ''SI'' '
  122953.     IF @Filtri_OsnPodelbi IS NOT NULL
  122954.         SET @SSQL = @SSQL + ' AND O.Inv_Broj IN (SELECT Inv_Broj FROM #TmpOsnSoPodel) '
  122955.     IF @PrikOtpisani = 'N'
  122956.         Set @SSQL = @SSQL + ' And O.DatPrest Is Null '
  122957. /*    If @Koi_Sva = 'N'
  122958.     BEGIN
  122959.         If @DatNabOd IS NOT NULL
  122960.             Set @SSQL = @SSQL + ' And O.DatNab >= ''' + cast(@DatNabOd as varchar(35)) + ''' '
  122961.         If @DatNabDo IS NOT NULL
  122962.             Set @SSQL = @SSQL + ' And O.DatNab <= ''' + cast(@DatNabDo as varchar(35)) + ''' '
  122963.     END
  122964.     Else If @Koi_Sva = 'O'
  122965.     BEGIN
  122966.         IF @DatPrestOd IS NOT NULL
  122967.             Set @SSQL = @SSQL + ' And O.DatPrest >= ''' + cast(@DatPrestOd as varchar(35)) + ''' '
  122968.         IF @DatPrestDo IS NOT NULL
  122969.             Set @SSQL = @SSQL + ' And O.DatPrest <= ''' + cast(@DatPrestDo as varchar(35)) + ''' '
  122970.     END
  122971.     Else If @Koi_Sva = 'A'
  122972.     BEGIN
  122973.         If @DatAktOd IS NOT NULL
  122974.             Set @SSQL = @SSQL + ' And O.DatAkt >= ''' + cast(@DatAktOd as varchar(35)) + ''' '
  122975.         If @DatAktDo IS NOT NULL
  122976.             Set @SSQL = @SSQL + ' And O.DatAkt <= ''' + cast(@DatAktDo as varchar(35)) + ''' '
  122977.     END
  122978. */
  122979.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  122980.     If @Koi_Sva ='N' or (@Koi_Sva='S' and @SoDogradbi = 'D')  --samo ako se bara pregledot za novonabaveni sredstva, treba da se vklucat i novonabavenite sredstva
  122981.     Begin
  122982.         If @Delov_God is null
  122983.             Set @Delov_God = Year(@DatNabDo)
  122984.         Set @SSQL= @SSQL+' Union 
  122985.                 Select  S.Inv_Broj, O.Ime, ''Dogradba'' as Opis, O.Kto_Anal, O.Br_Smena, O.Sifra_Amor, S.Datum_Dok as DatNab, Null as DatAkt, Null as DatPrest, 
  122986.                 O.Sifra_MikLok, Null as BarKod, 
  122987.                 S.Orig_Nab_Vr, Null as RedTrans, S.Valuta, S.Orig_Nab_Vr_Val, MIKL.Ime_MikLok, MIKL.Sifra_MakLok, MAKL.Ime_MakLok,
  122988.                 MAKL.Sifra_Lok, L.ImeLok, A.Ime Ime_AmorGrp, K.ImeAnal, A.Stapka, O.Tip, O.Oznaka, O.Sifra_Rab, R.ImeRab,'
  122989.         IF @Sifra_OsnGrPodel_ZaGrupiranje IS NOT NULL
  122990.             Set @SSQL = @SSQL + 'OP.Sifra_OsnPodel, OP.Vrednost'
  122991.         ELSE
  122992.             Set @SSQL = @SSQL + ''''' Sifra_OsnPodel, '''' Vrednost'
  122993.         Set @SSQL = @SSQL + ' From StavOsnSred S
  122994.                 Inner Join OsnSred O On O.Inv_Broj=S.Inv_Broj
  122995.                 Left Outer Join MikroLok MIKL On MIKL.Sifra_MikLok=O.Sifra_MikLok
  122996.                 Left Outer Join MakroLok MAKL On MAKL.Sifra_MakLok=MIKL.Sifra_MakLok
  122997.                 Left Outer Join Lokacija L On L.Sifra_Lok=MAKL.Sifra_Lok
  122998.                 Left Outer Join AmorGrp A On A.Sifra_Amor=O.Sifra_Amor
  122999.                 Left Outer Join Anal K On K.Kto_Anal=O.Kto_Anal 
  123000.                 Left Outer Join Rabotnik R On R.Sifra_Rab=O.Sifra_Rab '
  123001.         IF @Sifra_OsnGrPodel_ZaGrupiranje IS NOT NULL
  123002.             Set @SSQL = @SSQL + ' LEFT OUTER JOIN OsnPodelSta OPS ON O.Inv_Broj=OPS.Inv_Broj AND OPS.Sifra_OsnGrPodel='+cast(@Sifra_OsnGrPodel_ZaGrupiranje as varchar(4))+
  123003.                                 ' LEFT OUTER JOIN OsnPodelbi OP ON OPS.Sifra_OsnGrPodel=OP.Sifra_OsnGrPodel AND OPS.Sifra_OsnPodel=OP.Sifra_OsnPodel '
  123004.         Set @SSQL = @SSQL + ' Where S.Tip_StaOsn = ''D'' and S.Delov_God = ' + cast(@Delov_God as varchar(4)) + ' '
  123005.         If @Inv_BrojOd Is Not null
  123006.             Set @SSQL = @SSQL + ' And S.Inv_Broj >= ''' + @Inv_BrojOd + ''' '
  123007.         If @Inv_BrojDo Is Not null
  123008.             Set @SSQL = @SSQL + ' And S.Inv_Broj <= ''' + @Inv_BrojDo + ''' ' 
  123009.         If @Sifra_Lok Is Not null
  123010.             Set @SSQL = @SSQL + ' And L.Sifra_Lok = ''' + @Sifra_Lok + ''' '
  123011.         If @Sifra_MakLok Is Not null
  123012.             Set @SSQL = @SSQL + ' And MAKL.Sifra_MakLok = ''' + @Sifra_MakLok + ''' '
  123013.         If @Sifra_MikLok Is Not null
  123014.             Set @SSQL = @SSQL + ' And MIKL.Sifra_MikLok = ''' + @Sifra_MikLok + ''' '
  123015.         If @Sifra_Amor Is Not null
  123016.             Set @SSQL = @SSQL + ' And O.Sifra_Amor = ''' + @Sifra_Amor + ''' '
  123017.         If @DatNabOd Is Not null
  123018.             Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@DatNabOd as varchar(30)) + ''' '
  123019.         If @DatNabDo Is Not null
  123020.             Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@DatNabDo as varchar(30)) + ''' '
  123021.         If @DatAktOd Is Not null
  123022.             Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@DatAktOd as varchar(30)) + ''' '
  123023.         If @DatAktDo Is Not null
  123024.             Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@DatAktDo as varchar(30)) + ''' '
  123025.         If @DatPrestOd Is Not null
  123026.             Set @SSQL = @SSQL + ' And O.DatPrest >= ''' + cast(@DatPrestOd as varchar(30)) + ''' '
  123027.         If @DatPrestDo Is Not null
  123028.             Set @SSQL = @SSQL + ' And O.DatPrest <= ''' + cast(@DatPrestDo as varchar(30)) + ''' '
  123029.         If @Rabotnici Is Not null
  123030.             Set @SSQL = @SSQL + ' And O.Sifra_Rab In (' + @Rabotnici + ') '
  123031.         If @OS_SI = 'O'
  123032.             Set @SSQL = @SSQL + ' And O.Tip = ''OS'' '
  123033.         Else If @OS_SI = 'S'
  123034.             Set @SSQL = @SSQL + ' And O.Tip = ''SI'' '
  123035.         IF @Filtri_OsnPodelbi IS NOT NULL
  123036.             SET @SSQL = @SSQL + ' AND O.Inv_Broj IN (SELECT Inv_Broj FROM #TmpOsnSoPodel) '
  123037.         IF @PrikOtpisani = 'N'
  123038.             Set @SSQL = @SSQL + ' And O.DatPrest Is Null '
  123039.     End
  123040.  
  123041. print @SSQL
  123042.     Exec(@SSQL)
  123043.  
  123044.  
  123045. Go
  123046. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglotkbeleska]'))
  123047. drop procedure [dbo].[sp_preglotkbeleska]
  123048.  
  123049. Go
  123050. CREATE procedure sp_PreglOtkBeleska
  123051.     @Sifra_Oe     SMALLINT = null,
  123052.     @Sifra_Dok     SMALLINT = null,
  123053.     @Sifra_KupOd char(6) = null,
  123054.     @Sifra_KupDo char(6) = null,
  123055.     @DatumOd smalldatetime = null,
  123056.     @DatumDo smalldatetime = null,
  123057.     @Sifra_art varchar(20)
  123058. As
  123059.     Declare @SSQL as varchar(7000)
  123060.     Set @SSQL= 'Select D.Sifra_Kup, K.ImeKup, K.Ziro, K.Danocen, K.Adresa, K.Smesto, S.Sifra_art, sum(S.Kolic) Kolic, 
  123061.                 sum(Kolic*(case S.DanDokCena When ''N'' then Dokcena else Dokcena/(1+S.Posn/100) end)) Vrednost, A.ImeArt 
  123062.                 FROM Stavr S
  123063.                 INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art
  123064.                 INNER JOIN Dokr D ON S.DokrID=D.DokrID 
  123065.                 LEFT OUTER JOIN Komint K ON K.Sifra_Kup=D.Sifra_Kup
  123066.                 LEFT OUTER JOIN OrgEd O ON D.Sifra_Oe = O.Sifra_Oe 
  123067.                 WHERE S.Sifra_Art=''' + @Sifra_Art + ''' ' 
  123068.     If @Sifra_Oe Is Not Null
  123069.         Set @SSQL = @SSQL + 'And S.Sifra_Oe=' + cast(@Sifra_Oe as varchar(10)) + ' '
  123070.     If @Sifra_Dok Is Not Null
  123071.         Set @SSQL = @SSQL + 'And S.Sifra_Dok=' + cast(@Sifra_Dok as varchar(10)) + ' '
  123072.     If @Sifra_KupOd Is Not NULL
  123073.         Set @SSQL = @SSQL + ' And K.Sifra_Kup>=' + Cast(@Sifra_KupOd As Varchar(6)) + ' '
  123074.     If @Sifra_KupDo Is Not NULL
  123075.         Set @SSQL = @SSQL + ' And K.Sifra_Kup<=' + Cast(@Sifra_KupDo As Varchar(6)) + ' '
  123076.     If @DatumOd Is Not NULL
  123077.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@DatumOd As Varchar(25)) + ''' '
  123078.     If @DatumDo Is Not NULL
  123079.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@DatumDo As Varchar(25)) + ''' '
  123080.     Set @SSQL = @SSQL + ' Group by D.sifra_kup, K.imekup, K.ziro, K.danocen, K.adresa, K.smesto, S.Sifra_art, A.ImeArt '
  123081. print @ssql
  123082. exec(@ssql)
  123083.  
  123084.  
  123085. Go
  123086. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglplanceni]'))
  123087. drop procedure [dbo].[sp_preglplanceni]
  123088.  
  123089. Go
  123090. CREATE  PROCEDURE sp_PreglPlanCeni
  123091.     @Sifra_OE    smallint,
  123092.     @Koi_Oe    char(6) = Null,
  123093.     @Datum    smalldatetime,
  123094.     @Sifra_Art_Od    varchar(20) = Null,
  123095.     @Sifra_Art_Do    varchar(20) = Null,
  123096.     @SoDanok    char(1) = 'D',
  123097.     @Podred    char(1) = 'S',
  123098.     @IzmNaDatum    char(1)= Null,    -- Ceni izmeneti samo na toj datum
  123099.     @SamoPoslCena char(1) = 'D'    -- Dali da ja dade samo cenata od posledniot datum ili da gi dade site promeni na ceni od razlicnite datumi
  123100. AS
  123101.     Declare @SSQL as varchar(8000)
  123102.     If @Sifra_Oe Is Not Null And @Koi_Oe Is Null
  123103.         SELECT @Koi_Oe = G.Sif_GrOrg FROM GrOrg G Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @Sifra_OE WHERE G.ZaedPlanCeni='D'
  123104.     If @Koi_Oe Is Null
  123105.         Set @Koi_Oe = ' '
  123106.     Create table #Dat
  123107.     (
  123108.      Sifra_Art    varchar(20),
  123109.      PoslDatum    smalldatetime
  123110.     )
  123111.     Set @SSQL = ' Select Sifra_Art, Max(Vazi_Od) as PoslDatum 
  123112.             From CeniPlanski 
  123113.             Where Sif_GrOrg = ''' + @Koi_Oe + ''' '
  123114.     If @Datum Is Not Null 
  123115.     Begin
  123116.         If @IzmNaDatum = 'D' 
  123117.             Set @SSQL = @SSQL + ' And Vazi_Od = ''' + Cast(@Datum as varchar(30)) + ''' '
  123118.         Else
  123119.             Set @SSQL = @SSQL + ' And Vazi_Od <= ''' + Cast(@Datum as varchar(30)) + ''' '
  123120.     End
  123121.     If @Sifra_Art_Od Is Not Null
  123122.         Set @SSQL = @SSQL + ' And Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  123123.     If @Sifra_Art_Do Is Not Null
  123124.         Set @SSQL = @SSQL + ' And Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  123125.     Set @SSQL = @SSQL + ' Group By Sifra_Art '
  123126.     Insert Into #Dat Exec(@SSQL)
  123127.     Set @SSQL = ' Select C.Sif_GrOrg, C.Sifra_Art, K.ImeArt, C.Vazi_Od, dbo.fn_VratiCena(C.Cena, T.ProcOsn, C.DanCena, ''' + @SoDanok + ''') Cena
  123128.             From CeniPlanski C '
  123129.     If @SamoPoslCena = 'D'
  123130.         Set @SSQL = @SSQL + ' Inner Join #Dat D On D.PoslDatum=C.Vazi_Od And D.Sifra_Art=C.Sifra_Art '
  123131.     Set @SSQL = @SSQL + ' Inner Join Katart K On K.Sifra_Art=C.Sifra_Art
  123132.                   Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar 
  123133.             Where C.Sif_GrOrg = ''' + @Koi_Oe + ''' '
  123134.     If @Datum Is Not Null 
  123135.     Begin
  123136.         If @IzmNaDatum = 'D' 
  123137.             Set @SSQL = @SSQL + ' And C.Vazi_Od = ''' + Cast(@Datum as varchar(30)) + ''' '
  123138.         Else
  123139.             Set @SSQL = @SSQL + ' And C.Vazi_Od <= ''' + Cast(@Datum as varchar(30)) + ''' '
  123140.     End
  123141.     If @Sifra_Art_Od Is Not Null
  123142.         Set @SSQL = @SSQL + ' And C.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  123143.     If @Sifra_Art_Do Is Not Null
  123144.         Set @SSQL = @SSQL + ' And C.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  123145.     If @Podred = 'S'
  123146.         Set @SSQL = @SSQL + ' Order By C.Sifra_Art '
  123147.     Else If @Podred = 'A'
  123148.         Set @SSQL = @SSQL + ' Order By K.ImeArt '
  123149.     Exec(@SSQL)
  123150.  
  123151.  
  123152. Go
  123153. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglpocnabceni]'))
  123154. drop procedure [dbo].[sp_preglpocnabceni]
  123155.  
  123156. Go
  123157. CREATE PROCEDURE sp_PreglPocNabCeni
  123158.     @Sifra_Oe    smallint
  123159. AS
  123160.     Select  P.Sifra_Oe, O.ImeOrg, P.Sifra_Art, K.ImeArt, P.NabCena, P.Datum_Dok, P.Datum_Vnes, P.Datum_Izm
  123161.     From PocNabCeni P
  123162.     Inner Join Orged O On O.Sifra_Oe=P.Sifra_Oe
  123163.     Inner Join Katart K On K.Sifra_Art=P.Sifra_Art
  123164.     Where P.Sifra_Oe=@Sifra_Oe
  123165.     Order by P.Sifra_Oe, P.Sifra_Art
  123166.  
  123167.  
  123168. Go
  123169. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglporastcenist]'))
  123170. drop procedure [dbo].[sp_preglporastcenist]
  123171.  
  123172. Go
  123173. CREATE PROCEDURE sp_PreglPorastCeniSt
  123174.     @Godina    Smallint
  123175.  AS
  123176.     Declare @SSQL as Varchar(2000)
  123177.     Set @SSQL = 'Select Mesec, Godina, Stapka
  123178.             From PorastCeniSt
  123179.             Where 1=1 '
  123180.     If @Godina Is Not null
  123181.         Set @SSQL = @SSQL + ' And Godina = ''' + cast(@Godina as varchar(4)) + ''' '
  123182.     Exec(@SSQL)
  123183.  
  123184.  
  123185. Go
  123186. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglrabnalfazi]'))
  123187. drop procedure [dbo].[sp_preglrabnalfazi]
  123188.  
  123189. Go
  123190.  
  123191.  
  123192.  
  123193.  
  123194. CREATE      PROCEDURE [dbo].[sp_PreglRabNalFazi]
  123195.     @Sifra_Oe    smallint=NULL,
  123196.     @Datum_Od    smalldatetime,
  123197.     @Datum_Do    smalldatetime,
  123198.     @Sifra_Smena    smallint=NULL,
  123199.     @Sifra_Faza    smallint=NULL,
  123200.     @Broj_RabN    int = Null
  123201. AS
  123202. Declare @SSQL varchar(5000)
  123203. Declare @SSQLUsl varchar(5000)
  123204. Set @SSQLUsl = ' '
  123205.  
  123206.     Create Table #ArtStaRabNal
  123207.     (
  123208.         RabNalID    int,
  123209.         SRNID        int,
  123210.         Sifra_Art    varchar(20)
  123211.     )
  123212.     Set @SSQL = ' Insert Into #ArtStaRabNal
  123213.                     Select RN.RabNalID, Min(S.SRNID), Null
  123214.                     FROM RabNalFazi RF 
  123215.                     INNER JOIN RabNal RN ON RF.RabNalID=RN.RabNalID
  123216.                     Inner Join StaRabNal S On S.RabNalID=RN.RabNalID
  123217.                 WHERE RF.Datum_Dok>='''+cast(@Datum_Od as varchar(35))+ ''' AND RF.Datum_Dok<='''+cast(@Datum_Do as varchar(35))  +''' '
  123218. --                WHERE RN.Datum_Otv>='''+cast(@Datum_Od as varchar(35))+ ''' AND RN.Datum_Otv<='''+cast(@Datum_Do as varchar(35))  +''' '
  123219.  
  123220.     IF @Sifra_OE IS NOT NULL
  123221.         SET @SSQLUsl=@SSQLUsl+' AND RN.Sifra_OERab='+cast(@Sifra_OE as varchar(5))
  123222.     IF @Sifra_Smena IS NOT NULL
  123223.         SET @SSQLUsl=@SSQLUsl+' AND RF.Sifra_Smena='+cast(@Sifra_Smena as varchar(5))
  123224.     IF @Sifra_Faza IS NOT NULL
  123225.         SET @SSQLUsl=@SSQLUsl+' AND RF.Sifra_Faza='+cast(@Sifra_Faza as varchar(5))
  123226.     IF @Broj_RabN IS NOT NULL
  123227.         SET @SSQLUsl=@SSQLUsl+' AND RN.Broj_RabN='+cast(@Broj_RabN as varchar(10))
  123228.     Set @SSQL = @SSQL + @SSQLUsl 
  123229.     SET @SSQL=@SSQL+' GROUP BY RN.RabNalID, S.SRNID '
  123230. --print @SSQL
  123231.     Exec(@SSQL)
  123232.  
  123233.     Update #ArtStaRabNal 
  123234.     Set Sifra_Art = S.Sifra_Art
  123235.     From StaRabNal S 
  123236.     Where S.SRNID=#ArtStaRabNal.SRNID
  123237.  
  123238.     Create Table #RabNalKolic
  123239.     (
  123240.         RabNalID    int,
  123241.         Kolic        decimal(18,6)
  123242.     )
  123243.     Insert Into #RabNalKolic
  123244.     Select S.RabNalID, Sum(S.Kolic)
  123245.     From StaRabNal S
  123246.     Inner Join #ArtStaRabNal A On A.RabNalID=S.RabNalID
  123247.     Group By S.RabNalID
  123248.  
  123249.  
  123250.     Create Table #Rez
  123251.     (
  123252.         Brojac        int identity(1,1),
  123253.         RabNalID    int,
  123254.         Sifra_Smena    smallint,
  123255.         Datum_Otv    smalldatetime,
  123256.         Sifra_OeRab    smallint,
  123257.         Sifra_OePrim    smallint,
  123258.         Broj_RabN    int,
  123259.         Opis        varchar(50),
  123260.         Sifra_Art    varchar(20),
  123261.         Sifra_Kup    char(6),
  123262.         KolicNalog    decimal(18,4),
  123263.         KolicBalirana    decimal(18,4),
  123264.         KumulBalirana    decimal(18,4),
  123265.         KolicMeguFaza    decimal(18,4),
  123266.         KumulMeguFaza    decimal(18,4),
  123267.         KolicPriem    decimal(18,4),
  123268.         KumulPriem    decimal(18,4),
  123269.         Datum_Dog    smalldatetime,
  123270.         Datum_Rok    smalldatetime,
  123271.         Datum_Dok    smalldatetime,
  123272.         KolicIzrab    decimal(18,4),
  123273.         KumulIzrab    decimal(18,4),
  123274.         CenaNeto    decimal(18,4),
  123275.         VrednIzrab    decimal(18,4),
  123276.            Dat_Ocek_Zatv    smalldatetime
  123277.     )
  123278. --se dobiva sraboteno po fazi
  123279.     Set @SSQL = ' SELECT RF.RabNalID, RF.Sifra_Smena, RN.Datum_Otv, RN.Sifra_OERab, RN.Sifra_OePrim, RN.Broj_RabN, 
  123280.                 RN.Opis, A.Sifra_Art, RN.Sifra_Kup, RK.Kolic KolicNalog,  
  123281.                 Sum(Case When RF.Sifra_Faza = 1 Then RF.Kolic Else 0 End) KolicBalirana,
  123282.                 Sum(Case When RF.Sifra_Faza = 2 Then RF.Kolic Else 0 End) KolicMeguFaza,
  123283.                 Sum(Case When RF.Sifra_Faza = 3 Then RF.Kolic Else 0 End) KolicPriem,
  123284.                 RN.Datum_Dog, RN.Datum_Rok, RF.Datum_Dok, 0 KolicIzrab, 0 CenaNeto, 0 VrednIzrab, RN.Dat_Ocek_Zatv
  123285.     FROM RabNalFazi RF
  123286.     INNER JOIN RabNal RN ON RF.RabNalID=RN.RabNalID
  123287.     INNER JOIN #ArtStaRabNal A ON A.RabNalID=RN.RabNalID
  123288.     INNER JOIN #RabNalKolic RK ON RK.RabNalID=RN.RabNalID
  123289.     Where RF.Datum_Dok>='''+cast(@Datum_Od as varchar(35))+ ''' AND RF.Datum_Dok<='''+cast(@Datum_Do as varchar(35))  +''' '
  123290. --    Where RN.Datum_Otv>='''+cast(@Datum_Od as varchar(35))+ ''' AND RN.Datum_Otv<='''+cast(@Datum_Do as varchar(35))  +''' '
  123291.     IF @Sifra_OE IS NOT NULL
  123292.         SET @SSQL=@SSQL+' AND RN.Sifra_OERab='+cast(@Sifra_OE as varchar(5))
  123293.     IF @Sifra_Smena IS NOT NULL
  123294.         SET @SSQL=@SSQL+' AND RF.Sifra_Smena='+cast(@Sifra_Smena as varchar(5))
  123295.     IF @Sifra_Faza IS NOT NULL
  123296.         SET @SSQL=@SSQL+' AND RF.Sifra_Faza='+cast(@Sifra_Faza as varchar(5))
  123297.     IF @Broj_RabN IS NOT NULL
  123298.         SET @SSQL=@SSQL+' AND RN.Broj_RabN='+cast(@Broj_RabN as varchar(10))
  123299.     Set @SSQL = @SSQL + ' Group By RF.RabNalID, RF.Sifra_Smena, RN.Datum_Otv, RN.Sifra_OERab, RN.Sifra_OePrim, RN.Broj_RabN, 
  123300.                 RN.Opis, A.Sifra_Art, RN.Sifra_Kup, RK.Kolic, RN.Datum_Dog, RF.Datum_Dok, RN.Datum_Rok, RN.Dat_Ocek_Zatv
  123301.         Order By RF.RabNalID, RF.Datum_Dok '
  123302. --    Print @SSQL
  123303.     Insert Into #Rez (RabNalID, Sifra_Smena, Datum_Otv, Sifra_OeRab, Sifra_OePrim, Broj_RabN, Opis, Sifra_Art, Sifra_Kup, 
  123304.             KolicNalog, KolicBalirana, KolicMeguFaza, KolicPriem, Datum_Dog, Datum_Rok, 
  123305.             Datum_Dok, KolicIzrab, CenaNeto, VrednIzrab,Dat_Ocek_Zatv) Exec (@SSQL)
  123306. UPDATE #Rez SET KumulBalirana=0, KumulMeguFaza=0, KumulPriem=0, KumulIzrab=0
  123307.  
  123308. --se dobiva priem na gotov proizvod po raboten nalog
  123309. Create Table #RabNalPriem
  123310.     (    RabNalID    int,
  123311.         Sifra_Smena    smallint,
  123312.         Datum_Dok    smalldatetime,
  123313.         KolicIzrab    decimal(18,6)    )
  123314.  
  123315.     Insert Into #RabNalPriem
  123316.     Select RN.RabNalID, DRN.Sifra_Smena, D.Datum_Dok, Sum(S.Kolic) 
  123317.     From RabNal RN
  123318.     Inner Join #ArtStaRabNal A On A.RabNalID=RN.RabNalID
  123319.     Inner Join DokRabNal DRN On DRN.RabNalID=RN.RabNAlID
  123320.      Inner Join Dokr D On D.DokrID=DRN.DokrID
  123321.     Inner Join Stavr S On S.DokrID=D.DokrID
  123322.     Where D.VlIZl='V' And D.Sifra_Dok=42 AND D.Datum_Dok>=@Datum_Od    AND D.Datum_Dok<=@Datum_Do   --ovde ne e potrebno sifra_Dok=42, ama aj
  123323.     Group By RN.RabNalID, DRN.Sifra_Smena, D.Datum_Dok        --AND DRN.Sifra_Smena IS NOT NULL 
  123324.  
  123325. UPDATE #Rez SET KolicIzrab=P.KolicIzrab FROM #RabNalPriem P WHERE #Rez.RabNalID=P.RabNalID AND #Rez.Sifra_Smena=P.Sifra_Smena AND #Rez.Datum_Dok=P.Datum_Dok
  123326.  
  123327. Insert Into #Rez (RabNalID, Sifra_Smena, Datum_Otv, Sifra_OeRab, Sifra_OePrim, Broj_RabN, Opis, Sifra_Art, Sifra_Kup, 
  123328.             KolicNalog, KolicBalirana, KolicMeguFaza, KolicPriem, Datum_Dog, Datum_Rok, 
  123329.             Datum_Dok, KolicIzrab, CenaNeto, VrednIzrab,Dat_Ocek_Zatv) 
  123330. SELECT P.RabNalID, P.Sifra_Smena, RN.Datum_Otv, RN.Sifra_OERab, RN.Sifra_OePrim, RN.Broj_RabN, 
  123331.                 RN.Opis, A.Sifra_Art, RN.Sifra_Kup, RK.Kolic KolicNalog, 0, 0, 0, 
  123332.                 RN.Datum_Dog, RN.Datum_Rok, P.Datum_Dok, P.KolicIzrab, 0 CenaNeto, 0 VrednIzrab, RN.Dat_Ocek_Zatv
  123333. FROM #RabNalPriem P
  123334. INNER JOIN RabNal RN ON P.RabNalID=RN.RabNalID
  123335. INNER JOIN #ArtStaRabNal A ON A.RabNalID=RN.RabNalID
  123336. INNER JOIN #RabNalKolic RK ON RK.RabNalID=RN.RabNalID
  123337. LEFT OUTER JOIN #Rez R ON R.RabNalID=P.RabNalID AND R.Sifra_Smena=P.Sifra_Smena AND R.Datum_Dok=P.Datum_Dok
  123338. WHERE R.RabNalID IS NULL  
  123339.  
  123340. -- sega treba da presm.kumul. da trgneme od preth. period
  123341.     Create Table #RezKumul
  123342.     (    Brojac        int identity(1,1),
  123343.         RabNalID    int,
  123344.         Sifra_Smena    smallint,
  123345.          KumulBalirana    decimal(18,4),
  123346.          KumulMeguFaza    decimal(18,4),
  123347.         KumulPriem    decimal(18,4),
  123348.         KumulIzrab    decimal(18,4)    )
  123349.  
  123350.     Set @SSQL = ' SELECT A.RabNalID, 
  123351.                 Sum(Case When RF.Sifra_Faza = 1 Then RF.Kolic Else 0 End) KolicBalirana,
  123352.                 Sum(Case When RF.Sifra_Faza = 2 Then RF.Kolic Else 0 End) KolicMeguFaza,
  123353.                 Sum(Case When RF.Sifra_Faza = 3 Then RF.Kolic Else 0 End) KolicPriem, 0
  123354.     FROM #ArtStaRabNal A
  123355.     LEFT OUTER JOIN RabNalFazi RF ON A.RabNalID=RF.RabNalID
  123356.     Where RF.Datum_Dok<'''+cast(@Datum_Od as varchar(35))+ ''' '
  123357.     IF @Sifra_Smena IS NOT NULL
  123358.         SET @SSQL=@SSQL+' AND RF.Sifra_Smena='+cast(@Sifra_Smena as varchar(5))
  123359.     IF @Sifra_Faza IS NOT NULL
  123360.         SET @SSQL=@SSQL+' AND RF.Sifra_Faza='+cast(@Sifra_Faza as varchar(5))
  123361.     Set @SSQL = @SSQL + ' Group By A.RabNalID '
  123362.     Insert Into #RezKumul (RabNalID, KumulBalirana, KumulMeguFaza, KumulPriem, KumulIzrab) Exec (@SSQL)
  123363.     INSERT INTO #RezKumul (RabNalID, KumulBalirana, KumulMeguFaza, KumulPriem, KumulIzrab) SELECT RabNalID, 0, 0, 0, 0 FROM #ArtStaRabNal
  123364.     WHERE RabNalID NOT IN (SELECT RabNalID FROM #RezKumul)
  123365.  
  123366.     Create Table #PriemPreth
  123367.     (    RabNalID    int,
  123368.         KolicIzrab    decimal(18,6)    )
  123369.  
  123370.     Insert Into #PriemPreth
  123371.     Select RN.RabNalID, Sum(S.Kolic) 
  123372.     From RabNal RN
  123373.     Inner Join #ArtStaRabNal A On A.RabNalID=RN.RabNalID
  123374.     Inner Join DokRabNal DRN On DRN.RabNalID=RN.RabNalID
  123375.      Inner Join Dokr D On D.DokrID=DRN.DokrID
  123376.     Inner Join Stavr S On S.DokrID=D.DokrID
  123377.     Where D.VlIZl='V' And D.Sifra_Dok=42 AND D.Datum_Dok<@Datum_Od     --ovde ne e potrebno sifra_Dok=42, ama aj
  123378.     Group By RN.RabNalID     --AND DRN.Sifra_Smena IS NOT NULL
  123379.  
  123380. UPDATE #RezKumul SET KumulIzrab=P.KolicIzrab FROM #PriemPreth P WHERE #RezKumul.RabNalID=P.RabNalID
  123381. --  select * from #rezkumul
  123382.   
  123383. Declare @PrethBalir decimal(18,4), @PrethMegu decimal(18,4), @PrethPriem decimal(18,4), @PrethIzrab decimal(18,4), @wRNID int
  123384. Declare @KBalir decimal(18,4), @KMegu decimal(18,4), @KPriem decimal(18,4), @KIzrab decimal(18,4), @wBrojac int
  123385.  
  123386.     Declare TabPreth Cursor Fast_Forward For
  123387.         Select RabNalID, KumulBalirana, KumulMeguFaza, KumulPriem, KumulIzrab  FROM #RezKumul
  123388.     Open TabPreth
  123389.     Fetch Next From TabPreth Into @wRNID, @PrethBalir, @PrethMegu, @PrethPriem, @PrethIzrab
  123390.     While @@Fetch_Status = 0
  123391.     Begin            
  123392.         -----
  123393.         Declare TabRez Cursor Fast_Forward For
  123394.         Select Brojac, KolicBalirana, KolicMeguFaza, KolicPriem, KolicIzrab FROM #Rez WHERE RabNalId=@wRNID ORDER BY Datum_Dok, Sifra_Smena 
  123395.         Open TabRez
  123396.         Fetch Next From TabRez Into @wBrojac, @KBalir, @KMegu, @KPriem, @KIzrab
  123397.         While @@Fetch_Status = 0
  123398.         Begin            
  123399.             SET @PrethBalir = @PrethBalir + @KBalir
  123400.             SET @PrethMegu = @PrethMegu +@KMegu
  123401.             SET @PrethPriem = @PrethPriem + @KPriem
  123402.             SET @PrethIzrab = @PrethIzrab + @KIzrab
  123403.  
  123404.             UPDATE #Rez SET KumulBalirana=@PrethBalir, KumulMeguFaza=@PrethMegu, KumulPriem=@PrethPriem, KumulIzrab=@PrethIzrab WHERE Brojac=@wBrojac
  123405.              Fetch Next From TabRez Into @wBrojac, @KBalir, @KMegu, @KPriem, @KIzrab
  123406.         End
  123407.         Close TabRez
  123408.         Deallocate TabRez
  123409.         -----
  123410.          Fetch Next From TabPreth Into @wRNID, @PrethBalir, @PrethMegu, @PrethPriem, @PrethIzrab
  123411.     End
  123412.     Close TabPreth
  123413.     Deallocate TabPreth
  123414.  
  123415.     ---------- Planski ceni -----------
  123416.     Create Table #OePlanCeni
  123417.     (
  123418.         Sifra_OePrim    smallint
  123419.     )
  123420.     Insert Into #OePlanCeni Select Distinct Sifra_OePrim From #Rez
  123421.  
  123422.     Create Table #PlanCeni
  123423.     (
  123424.         Sifra_OePrim    smallint,
  123425.         Sifra_Art    varchar(20),
  123426.         PlanCena    decimal(18,4)
  123427.     )
  123428.  
  123429.     Create table #Dat
  123430.     (
  123431.      Sifra_Art    varchar(20),
  123432.      PoslDatum    smalldatetime
  123433.     )
  123434.  
  123435.     Declare @SifOePrim as smallint
  123436.     Declare @KoiOePC as varchar(10)
  123437.  
  123438.     Declare PlanCeni Cursor Fast_Forward For Select Sifra_OePrim From #OePlanCeni 
  123439.     Open PlanCeni
  123440.     Fetch Next From PlanCeni Into @SifOePrim
  123441.     While @@Fetch_Status = 0
  123442.     Begin
  123443.         If @SifOePrim Is Not Null
  123444.             SELECT @KoiOePC = G.Sif_GrOrg FROM GrOrg G Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE= @SifOePrim WHERE G.ZaedPlanCeni='D'
  123445.         If @KoiOePC Is Null
  123446.             Set @KoiOePC = ' '
  123447.         
  123448.         Delete From #Dat
  123449.  
  123450.         Insert Into #Dat Select Sifra_Art, Max(Vazi_Od) as PoslDatum From CeniPlanski Where Sif_GrOrg = @KoiOePC And Vazi_Od <= @Datum_Do Group By Sifra_Art
  123451.  
  123452.         Insert Into #PlanCeni Select @SifOePrim, C.Sifra_Art, dbo.fn_VratiCena(C.Cena, T.ProcOsn, C.DanCena, 'N')
  123453.         From CeniPlanski C Inner Join KatArt A ON C.Sifra_Art=A.Sifra_Art Inner Join Tarifi T ON A.Sifra_Tar=T.Sifra_Tar
  123454.         Inner Join #Dat Dat ON C.Sifra_Art=Dat.Sifra_Art AND C.Vazi_Od=Dat.PoslDatum Where C.Sif_GrOrg=@KoiOePC 
  123455.  
  123456.         Fetch Next From PlanCeni Into @SifOePrim
  123457.     End
  123458.     Close PlanCeni
  123459.     Deallocate PlanCeni
  123460. --------------------------------------------------------------------------------------
  123461.  
  123462. /*    Create Table #RabNalPriem
  123463.     (
  123464.         RabNalID    int,
  123465.         Sifra_OePrim    smallint,
  123466.         Datum_Dok    smalldatetime,
  123467.         KolicIzrab    decimal(18,6),
  123468. --        VrednIzrab    decimal(18,6),
  123469. --        CenaNeto    decimal(18,4),
  123470.         Brojac        int
  123471.     )
  123472.     Insert Into #RabNalPriem
  123473.     Select RN.RabNalID, RN.Sifra_OePrim, D.Datum_Dok, Sum(S.Kolic), Null -- Sum(S.Kolic*PC.PlanCena), 0, Null --Sum(S.Kolic*(Case When S.DanDokCena='N' Then S.DokCena Else S.DokCena/(1+S.Posn/100) End)), 0, Null
  123474.     From RabNal RN
  123475.     Inner Join #ArtStaRabNal A On A.RabNalID=RN.RabNalID
  123476.     Inner Join DokRabNal DRN On DRN.RabNalID=RN.RabNAlID
  123477.     Left Outer Join #PlanCeni PC On PC.Sifra_Art=A.Sifra_Art And PC.Sifra_OePrim=RN.Sifra_OePrim
  123478.     Inner Join Dokr D On D.DokrID=DRN.DokrID
  123479.     Inner Join Stavr S On S.DokrID=D.DokrID
  123480.     Where D.VlIZl='V' And D.Sifra_Dok=42 AND DRN.Sifra_Smena IS NOT NULL
  123481.     Group By RN.RabNalID, RN.Sifra_OePrim, D.Datum_Dok
  123482.  
  123483. --    Update #RabNalPriem Set CenaNeto = (Case When KolicIzrab <> 0 Then VrednIzrab/KolicIzrab Else 0 End)
  123484.  
  123485.     Create Table #PrvPriem
  123486.     (
  123487.         RabNalID    int,
  123488.         Datum_Dok    smalldatetime,
  123489.         Brojac        int
  123490.     )
  123491.     Insert Into #PrvPriem Select RabNalID, Datum_Dok, Min(Brojac)
  123492.     From #Rez 
  123493.     Group By RabNalID, Datum_Dok
  123494.  
  123495.     Update #RabNalPriem Set Brojac = PP.Brojac From #PrvPriem PP
  123496.     Where PP.RabNalID=#RabNalPriem.RabNalID And PP.Datum_Dok=#RabNalPriem.Datum_Dok
  123497.  
  123498.     Create Table #PriemKol 
  123499.     (
  123500.      RabNalID    int,
  123501.      Brojac        int,
  123502.      KolicIzrab    decimal(18,2)
  123503.     )
  123504.     Insert Into #PriemKol Select RabNalID, null, Sum(KolicIzrab) From #RabNalPriem Group By RabNalID
  123505.     Update #PriemKol Set Brojac=R.Brojac From #RabNalPriem R Where R.RabNalId=#PriemKol.RabNalID And R.Brojac Is Not Null
  123506.  
  123507. --select * from #priemkol
  123508.     Update #Rez Set KolicIzrab=P.KolicIzrab--, VrednIzrab=P.VrednIzrab--, CenaNeto=P.CenaNeto
  123509.     From #PriemKol P
  123510.     Where P.RabNalID=#Rez.RabNalID And P.Brojac=#Rez.Brojac
  123511.  
  123512.     If @Datum_Od Is Null And @Datum_Do Is Null
  123513.         Insert Into #Rez (RabNalID, Datum_Otv, Sifra_OeRab, Broj_RabN, Opis, Sifra_Art, Sifra_Kup, 
  123514.                 KolicNalog, Datum_Dog, Datum_Rok, Datum_Dok, KolicIzrab, CenaNeto, VrednIzrab, Dat_Ocek_Zatv)
  123515.         Select P.RabNalID, RN.Datum_Otv, RN.Sifra_OeRab, RN.Broj_RabN, RN.Opis, A.Sifra_Art,  RN.Sifra_Kup, 
  123516.                 RK.Kolic KolicNalog, RN.Datum_Dog, RN.Datum_Rok, P.Datum_Dok, P.KolicIzrab, 0, 0, RN.Dat_Ocek_Zatv --P.CenaNeto, P.VrednIzrab
  123517.         From #RabNalPriem P
  123518.         INNER JOIN RabNal RN ON P.RabNalID=RN.RabNalID
  123519.         INNER JOIN #ArtStaRabNal A ON A.RabNalID=RN.RabNalID
  123520.         INNER JOIN #RabNalKolic RK ON RK.RabNalID=RN.RabNalID
  123521.         Where P.Brojac Is Null    */
  123522.  
  123523.     Update #Rez 
  123524.     Set  #Rez.CenaNeto = P.PlanCena    
  123525.     From #PlanCeni P 
  123526.     Where P.Sifra_Art = #Rez.Sifra_Art    
  123527.  
  123528.     Select R.RabNalID, R.Sifra_Smena, S.Ime_Smena ImeSmena, R.Datum_Otv, R.Sifra_OeRab, R.Broj_RabN, R.Opis, R.Sifra_Art, K.ImeArt, K.ImeArt2,
  123529.         R.Sifra_Kup, Kup.ImeKup, R.KolicNalog, R.KolicBalirana, R.KumulBalirana, R.KolicMeguFaza, R.KumulMeguFaza, R.KolicPriem, R.KumulPriem, R.Datum_Dog, R.Datum_Rok, 
  123530.         R.Datum_Dok, R.KolicIzrab, R.KumulIzrab, R.CenaNeto, Round(R.KolicMeguFaza * R.CenaNeto, 4) VrednIzrab, R.Dat_Ocek_Zatv
  123531.     From #Rez R
  123532.     Left Outer JOIN Smeni S ON R.Sifra_Smena=S.Sifra_Smena
  123533.     INNER JOIN KatArt K ON K.Sifra_Art=R.Sifra_Art
  123534.     LEFT OUTER JOIN Komint Kup On Kup.Sifra_Kup=R.Sifra_Kup
  123535.     ORDER BY R.Sifra_OeRab, R.Broj_RabN, R.Sifra_Smena, R.Datum_Dok
  123536.  
  123537.  
  123538.  
  123539.  
  123540.  
  123541.  
  123542.  
  123543. Go
  123544. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglrabnalozi]'))
  123545. drop procedure [dbo].[sp_preglrabnalozi]
  123546.  
  123547. Go
  123548.  
  123549.  
  123550. CREATE       PROCEDURE sp_PreglRabNalozi
  123551.     @Sifra_OE_Tros    smallint,
  123552.     @Sifra_OE_Pvo        smallint,
  123553.     @Sifra_Dok_Tros    varchar(200),
  123554.     @Sifra_Dok_Pvo    varchar(200),
  123555.     @Datum_Od        smalldatetime,
  123556.     @Datum_Do        smalldatetime,
  123557.     @BrojRabN_Od        int,
  123558.     @BrojRabN_Do        int,
  123559.     @NabCenaOdSur    char(1) = 'N',
  123560.     @CenaPoPresmPoArt    char(1) = 'N',
  123561.     @Sema_Fix_Tros    smallint = Null
  123562. --    @Sifra_Art_Od        varchar(20) = Null,
  123563. --    @Sifra_Art_Do        varchar(20) = Null
  123564. AS
  123565.  
  123566.     Declare @SSQL as varchar(4000)
  123567.  
  123568.     Create Table #Tabela1
  123569.     (
  123570.         BrojRabNal    int,
  123571.         Datum_Otv    smalldatetime, 
  123572.         Sifra_Art    varchar(20),
  123573.         ProizKol        decimal(18,4),
  123574.         PlanCena    decimal(18,4),
  123575.         ProizCena    decimal(18,4),
  123576.         PlanskaVr    decimal(18,4),
  123577.         ProizvodnaVr    decimal(18,4),
  123578.         Razlika        decimal(18,4),
  123579.     )
  123580.     Set @SSQL = 'Select R.Broj_RabN, R.Datum_Otv, S.Sifra_Art, Sum(S.Kolic), Sum(S.Kolic * dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ' + '''N''' + '))
  123581.         From Rabnal R
  123582.         Inner Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  123583.         Inner Join Dokr D On D.DokrId=DRN.DokrId
  123584.         Inner Join Stavr S On S.DokrID=D.DokrID
  123585.         Inner Join Katart K On K.Sifra_art = S.Sifra_art
  123586.         Where S.VlIzl =  ''V'' '
  123587.     If @Sifra_OE_Pvo Is Not Null
  123588.         Set @SSQL = @SSQL +  ' And S.Sifra_Oe = ' + cast(@Sifra_OE_Pvo as Varchar(10)) +  ' '
  123589.     If @Sifra_Dok_Pvo Is Not Null
  123590.         Set @SSQL = @SSQL +  ' And S.Sifra_Dok In (' + @Sifra_Dok_Pvo + ') '
  123591.     If @Datum_Od is Not Null 
  123592.         Set @SSQL = @SSQL + ' And R.Datum_Otv >= ''' + cast(@Datum_Od as Varchar(35))  + ''' '
  123593.     If @Datum_Do is Not Null 
  123594.         Set @SSQL = @SSQL + ' And R.Datum_Otv <= ''' + cast(@Datum_Do as Varchar(35))  + ''' '
  123595.     If @BrojRabN_Od is Not Null 
  123596.         Set @SSQL = @SSQL + ' And R.Broj_RabN >= ' + cast(@BrojRabN_Od as Varchar(8))  + ' '
  123597.     If @BrojRabN_Do is Not Null 
  123598.         Set @SSQL = @SSQL + ' And R.Broj_RabN <= ' + cast(@BrojRabN_Do as Varchar(8))  + ' '
  123599.     Set @SSQL = @SSQL + ' Group By  R.Broj_RabN, R.Datum_Otv, S.Sifra_Art ' 
  123600.     Insert Into #Tabela1(BrojRabNal, Datum_Otv, Sifra_art, ProizKol, PlanskaVr)
  123601.     Exec(@SSQL)
  123602.  
  123603.     If @CenaPoPresmPoArt = 'D'
  123604.     Begin
  123605.         -- Da ja najdam vkupnata tezina na proizvedenite artikli od rabotniot nalog
  123606.         Create Table #TabVkTez
  123607.         (
  123608.         BrojRabNal     Int,
  123609.         Sifra_Art    varchar(20),
  123610.         Tezina        decimal(18,6)    
  123611.         )    
  123612.         Insert Into #TabVkTez 
  123613.         Select T.BrojRabNal, T.Sifra_Art, Sum(T.ProizKol * (Case When K.Tezina Is Not Null Then K.Tezina Else 0 End))
  123614.         From #Tabela1 T
  123615.         Inner Join Katart K On K.Sifra_art = T.Sifra_art
  123616.         Group By  T.BrojRabNal, T.Sifra_Art 
  123617.     
  123618.  
  123619.         -- Kolku trebalo da se potrossi po sostavnica za  da mozat da se presmetaat procentite
  123620.         Create Table #Sostav
  123621.         (
  123622.          BrojRabNal    int,
  123623.          Sifra_Art    varchar(20),
  123624.          Sifra_Sur    varchar(20),
  123625.          Kolic        decimal(18,6),
  123626.          Procent    decimal(18,6)
  123627.         )
  123628.         Insert Into #Sostav 
  123629.         Select T.BrojRabNal, T.Sifra_Art, S.Sifra_Sur, T.ProizKol*S.Ima_Kolic/S.Za_Kolku, 0
  123630.         From #Tabela1 T
  123631.         Inner Join Sostav S On S.Sifra_Art = T.Sifra_Art
  123632.     
  123633.         Create Table #VkSur
  123634.         (
  123635.          BrojRabNal    int,
  123636.          Sifra_Sur    varchar(20),
  123637.          VkKolic        decimal(18,6)
  123638.         )
  123639.         Insert Into #VkSur
  123640.         Select BrojRabNal, Sifra_Sur, Sum(Kolic)
  123641.         From #Sostav
  123642.         Group By BrojRabNal, Sifra_Sur
  123643.  
  123644.         Update #Sostav 
  123645.         Set Procent = Kolic/V.VkKolic*100
  123646.         From  #VkSur V
  123647.         Where #Sostav.BrojRabNal=V.BrojRabNal And #Sostav.Sifra_Sur=V.Sifra_Sur
  123648.  
  123649.  
  123650.         -- Realno potrosseni surovini
  123651.         Create Table #PotrosSur
  123652.         (
  123653.          BrojRabNal    int,
  123654.          Sifra_Sur    varchar(20),
  123655.          Kolic        decimal(18,6),
  123656.          Vrednost    decimal(18,6),
  123657.          ProsCena    decimal(18,6),
  123658.         )
  123659.         Set @SSQL = 'Select R.Broj_RabN, S.Sifra_Art, Sum(S.Kolic), Sum(S.Kolic*S.DokCena), 0
  123660.             From Rabnal R
  123661.             Inner Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  123662.             Inner Join Dokr D On D.DokrId=DRN.DokrId
  123663.             Inner Join Stavr S On S.DokrID=D.DokrID
  123664.             Inner Join Katart K On K.Sifra_art = S.Sifra_art
  123665.             Where S.VlIzl =  ''I'' '    
  123666.         If @Sifra_OE_Tros Is Not Null
  123667.             Set @SSQL = @SSQL +  ' And S.Sifra_Oe = ' + cast(@Sifra_Oe_Tros as Varchar(10)) +  ' '
  123668.         If @Sifra_Dok_Tros Is Not Null
  123669.             Set @SSQL = @SSQL +  ' And S.Sifra_Dok In (' + @Sifra_Dok_Tros + ') '
  123670.         If @Datum_Od is Not Null 
  123671.             Set @SSQL = @SSQL + ' And R.Datum_Otv >= ''' + cast(@Datum_Od as Varchar(35))  + ''' '
  123672.         If @Datum_Do is Not Null 
  123673.             Set @SSQL = @SSQL + ' And R.Datum_Otv <= ''' + cast(@Datum_Do as Varchar(35))  + ''' '
  123674.         If @BrojRabN_Od is Not Null 
  123675.             Set @SSQL = @SSQL + ' And R.Broj_RabN >= ' + cast(@BrojRabN_Od as Varchar(8))  + ' '
  123676.         If @BrojRabN_Do is Not Null 
  123677.             Set @SSQL = @SSQL + ' And R.Broj_RabN <= ' + cast(@BrojRabN_Do as Varchar(8))  + ' '
  123678.         Set @SSQL = @SSQL + ' Group By R.Broj_RabN, S.Sifra_Art ' 
  123679.         Insert Into #PotrosSur Exec(@SSQL)
  123680.  
  123681.         Update #PotrosSur Set ProsCena=(Case When Kolic <> 0 Then Vrednost/Kolic Else Vrednost End)
  123682.  
  123683.         -- Spored sostavnicata da se raspredelat potrossenite surovini 
  123684.         Create Table #PotrosSurPoArt
  123685.         (
  123686.          BrojRabNal    int,
  123687.          Sifra_Art    varchar(20),
  123688.          Sifra_Sur    varchar(20),
  123689.          Kolic        decimal(18,6),
  123690.          VredPotros    decimal(18,6)
  123691.         )
  123692.         Insert Into #PotrosSurPoArt
  123693.         Select P.BrojRabNal, S.Sifra_Art, P.Sifra_Sur, (P.Kolic*S.Procent/100), (P.Kolic*S.Procent/100*P.ProsCena) VredPotros
  123694.         From #PotrosSur P
  123695.         Left Outer Join #Sostav S On S.BrojRabNal=P.BrojRabNal And S.Sifra_Sur=P.Sifra_Sur
  123696.     
  123697.         -- Proizvodna vrednost spored potrossenite surovini i procentot za raspredelba dobien od sostavnicite
  123698.         Create Table #ProizvVred
  123699.         (
  123700.          BrojRabNal    int,
  123701.          Sifra_Art    varchar(20),
  123702.          VredProizv    decimal(18,6)
  123703.         )
  123704.         Insert Into #ProizvVred
  123705.         Select BrojRabNal, Sifra_Art, Sum(VredPotros)
  123706.         From #PotrosSurPoArt
  123707.         Group By BrojRabNal, Sifra_Art
  123708.  
  123709.         Update #tabela1
  123710.         Set #tabela1.ProizvodnaVr = #ProizvVred.VredProizv
  123711.         from #ProizvVred
  123712.         Where #tabela1.BrojRabNal=#ProizvVred.BrojRabNal And #Tabela1.Sifra_Art=#ProizvVred.Sifra_Art
  123713.     End
  123714.     Else
  123715.     Begin
  123716.         Create Table #Tab2
  123717.         (
  123718.         BrojRabNal Int,
  123719.         Vrednost decimal(18,4)    
  123720.         )    
  123721.         Set @SSQL = 'Select R.Broj_RabN, Sum(S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ' + '''N''' + '))
  123722.             From Rabnal R
  123723.             Inner Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  123724.             Inner Join Dokr D On D.DokrId=DRN.DokrId
  123725.             Inner Join Stavr S On S.DokrID=D.DokrID
  123726.             Inner Join Katart K On K.Sifra_art = S.Sifra_art
  123727.             Where S.VlIzl =  ''I'' '
  123728.         If @Sifra_OE_Tros Is Not Null
  123729.             Set @SSQL = @SSQL +  ' And S.Sifra_Oe = ' + cast(@Sifra_Oe_Tros as Varchar(10)) +  ' '
  123730.         If @Sifra_Dok_Tros Is Not Null
  123731.             Set @SSQL = @SSQL +  ' And S.Sifra_Dok In (' + @Sifra_Dok_Tros + ') '
  123732.         If @Datum_Od is Not Null 
  123733.             Set @SSQL = @SSQL + ' And R.Datum_Otv >= ''' + cast(@Datum_Od as Varchar(35))  + ''' '
  123734.         If @Datum_Do is Not Null 
  123735.             Set @SSQL = @SSQL + ' And R.Datum_Otv <= ''' + cast(@Datum_Do as Varchar(35))  + ''' '
  123736.         If @BrojRabN_Od is Not Null 
  123737.             Set @SSQL = @SSQL + ' And R.Broj_RabN >= ' + cast(@BrojRabN_Od as Varchar(8))  + ' '
  123738.         If @BrojRabN_Do is Not Null 
  123739.             Set @SSQL = @SSQL + ' And R.Broj_RabN <= ' + cast(@BrojRabN_Do as Varchar(8))  + ' '
  123740.         Set @SSQL = @SSQL + ' Group By  R.Broj_RabN ' 
  123741.         Insert Into #Tab2  Exec(@SSQL)
  123742.  
  123743.         Update #tabela1
  123744.         Set #tabela1.ProizvodnaVr = #Tab2.Vrednost from #Tab2
  123745.         Where #tabela1.BrojRabNal=#Tab2.BrojRabNal
  123746.     End
  123747.  
  123748.  
  123749.  
  123750.     If @NabCenaOdSur = 'D'
  123751.     Begin
  123752.         Create Table #Art
  123753.         (
  123754.          Sifra_Art    varchar(20)
  123755.         )
  123756.         Insert Into #Art Select Distinct Sifra_Art From #Tabela1
  123757.         Create Table #Sost
  123758.         (
  123759.          Sifra_Art     varchar(20),
  123760. --         Sifra_Sur     varchar(20),
  123761. --         Ima_Kolic    decimal(18,6),
  123762.           Cena        decimal(18,6)
  123763.         )
  123764.         Insert Into #Sost 
  123765.         Select A.Sifra_Art, Sum(S.Ima_Kolic * dbo.fn_VratiCena(SO.Cena, So.Posn, So.DanCena, 'N'))
  123766.         From #Art A
  123767.         Inner Join Sostav S On S.Sifra_Art=A.Sifra_Art
  123768.         Left Outer Join Soart SO On SO.Sifra_Art=S.Sifra_Sur And SO.Sifra_Oe=@Sifra_Oe_Tros
  123769.         Group By A.Sifra_Art
  123770.         Update #Tabela1
  123771.         Set PlanCena = S.Cena 
  123772.         From #Sost S 
  123773.         Where S.Sifra_Art=#Tabela1.Sifra_Art
  123774.         Update #Tabela1 Set ProizCena = ProizvodnaVr/ProizKol
  123775.         Update #Tabela1 Set PlanskaVr = 0
  123776.         Update #Tabela1 Set PlanskaVr = PlanCena * ProizKol
  123777.         Update #Tabela1 Set Razlika = ProizvodnaVr-PlanskaVr
  123778.     End
  123779.     Else
  123780.     Begin
  123781.         Update #tabela1
  123782.         Set PlanCena = PlanskaVr/ProizKol, 
  123783.               ProizCena = ProizvodnaVr/ProizKol, 
  123784.               Razlika = ProizvodnaVr-PlanskaVr
  123785.     End
  123786.  
  123787.  
  123788.     Set @SSQL = ' Select T.BrojRabNal, T.Datum_Otv, T.Sifra_Art, K.ImeArt, T.ProizKol, T.PlanCena, T.ProizCena, T.PlanskaVr, T.ProizvodnaVr, T.Razlika, '
  123789.     If @Sema_Fix_Tros  Is Not Null
  123790.         Set @SSQL = @SSQL + ' (T.ProizKol * F.Cena) FixTros '
  123791.     Else 
  123792.         Set @SSQL = @SSQL + ' Null FixTros '
  123793.     Set @SSQL = @SSQL + ' From #Tabela1 T
  123794.                 Inner Join Katart K On K.Sifra_art=T.Sifra_art '
  123795.     If @Sema_Fix_Tros Is Not Null
  123796.         Set @SSQL = @SSQL + ' Left Outer Join ProizvTrosFix F On F.Sifra_Art = T.Sifra_Art And F.Proiz_Sema = ' + Cast(@Sema_Fix_Tros as varchar(6)) + ' '
  123797.     Set @SSQL = @SSQL + ' Order by BrojRabNal '
  123798.     Exec(@SSQL)
  123799.  
  123800.  
  123801.  
  123802. Go
  123803. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglrabnalozi_111]'))
  123804. drop procedure [dbo].[sp_preglrabnalozi_111]
  123805.  
  123806. Go
  123807.  
  123808.  
  123809.  
  123810.  
  123811. CREATE         PROCEDURE sp_PreglRabNalozi_111
  123812.     @Sifra_OE_Tros    smallint,
  123813.     @Sifra_OE_Pvo        smallint,
  123814.     @Sifra_Dok_Tros    varchar(200),
  123815.     @Sifra_Dok_Pvo    varchar(200),
  123816.     @Datum_Od        smalldatetime,
  123817.     @Datum_Do        smalldatetime,
  123818.     @BrojRabN_Od        int,
  123819.     @BrojRabN_Do        int,
  123820.     @NabCenaOdSur    char(1) = 'N'
  123821. --    @Sifra_Art_Od        varchar(20) = Null,
  123822. --    @Sifra_Art_Do        varchar(20) = Null
  123823.  AS
  123824.     Declare @SSQL as varchar(4000)
  123825.     Create Table #Tabela1
  123826.     (
  123827.         BrojRabNal    int,
  123828.         Datum_Otv    smalldatetime,
  123829.         Sifra_Art    varchar(20),
  123830.         ProizKol        decimal(18,4),
  123831.         PlanCena    decimal(18,4),
  123832.         ProizCena    decimal(18,4),
  123833.         PlanskaVr    decimal(18,4),
  123834.         ProizvodnaVr    decimal(18,4),
  123835.         Razlika        decimal(18,4),
  123836.     )
  123837.     Set @SSQL = 'Select R.Broj_RabN, R.Datum_Otv, S.Sifra_Art, Sum(S.Kolic), Sum(S.Kolic * dbo.fn_VratiCena(S.MagCena, S.Posn, S.DanMagCena, ' + '''N''' + '))
  123838.         From Rabnal R
  123839.         Inner Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  123840.         Inner Join Dokr D On D.DokrId=DRN.DokrId
  123841.         Inner Join Stavr S On S.DokrID=D.DokrID
  123842.         Inner Join Katart K On K.Sifra_art = S.Sifra_art
  123843.         Where S.VlIzl =  ''V'' '
  123844.     If @Sifra_OE_Pvo Is Not Null
  123845.         Set @SSQL = @SSQL +  ' And S.Sifra_Oe = ' + cast(@Sifra_OE_Pvo as Varchar(10)) +  ' '
  123846.     If @Sifra_Dok_Pvo Is Not Null
  123847.         Set @SSQL = @SSQL +  ' And S.Sifra_Dok In (' + @Sifra_Dok_Pvo + ') '
  123848.     If @Datum_Od is Not Null 
  123849.         Set @SSQL = @SSQL + ' And R.Datum_Otv >= ''' + cast(@Datum_Od as Varchar(35))  + ''' '
  123850.     If @Datum_Do is Not Null 
  123851.         Set @SSQL = @SSQL + ' And R.Datum_Otv <= ''' + cast(@Datum_Do as Varchar(35))  + ''' '
  123852.     If @BrojRabN_Od is Not Null 
  123853.         Set @SSQL = @SSQL + ' And R.Broj_RabN >= ' + cast(@BrojRabN_Od as Varchar(8))  + ' '
  123854.     If @BrojRabN_Do is Not Null 
  123855.         Set @SSQL = @SSQL + ' And R.Broj_RabN <= ' + cast(@BrojRabN_Do as Varchar(8))  + ' '
  123856.     Set @SSQL = @SSQL + ' Group By  R.Broj_RabN, R.Datum_Otv, S.Sifra_Art ' 
  123857.     Insert Into #Tabela1(BrojRabNal, Datum_Otv, Sifra_art, ProizKol, PlanskaVr)
  123858.     Exec(@SSQL)
  123859.  
  123860.  
  123861.     -- Da ja najdam vkupnata tezina na proizvedenite artikli od rabotniot nalog
  123862.     Create Table #TabVkTez
  123863.     (
  123864.     BrojRabNal     Int,
  123865.     Sifra_Art    varchar(20),
  123866.     Tezina        decimal(18,6)    
  123867.     )    
  123868.     Insert Into #TabVkTez 
  123869.     Select T.BrojRabNal, T.Sifra_Art, Sum(T.ProizKol * (Case When K.Tezina Is Not Null Then K.Tezina Else 0 End))
  123870.     From #Tabela1 T
  123871.     Inner Join Katart K On K.Sifra_art = T.Sifra_art
  123872.     Group By  T.BrojRabNal, T.Sifra_Art 
  123873.  
  123874.  
  123875.     -- Kolku trebalo da se potrossi po sostavnica za  da mozat da se presmetaat procentite
  123876.     Create Table #Sostav
  123877.     (
  123878.      BrojRabNal    int,
  123879.      Sifra_Art    varchar(20),
  123880.      Sifra_Sur    varchar(20),
  123881.      Kolic        decimal(18,6),
  123882.      Procent    decimal(18,6)
  123883.     )
  123884.     Insert Into #Sostav 
  123885.     Select T.BrojRabNal, T.Sifra_Art, S.Sifra_Sur, T.ProizKol*S.Ima_Kolic/S.Za_Kolku, 0
  123886.     From #Tabela1 T
  123887.     Inner Join Sostav S On S.Sifra_Art = T.Sifra_Art
  123888.  
  123889.     Create Table #VkSur
  123890.     (
  123891.      BrojRabNal    int,
  123892.      Sifra_Sur    varchar(20),
  123893.      VkKolic        decimal(18,6)
  123894.     )
  123895.     Insert Into #VkSur
  123896.     Select BrojRabNal, Sifra_Sur, Sum(Kolic)
  123897.     From #Sostav
  123898.     Group By BrojRabNal, Sifra_Sur
  123899.  
  123900.     Update #Sostav 
  123901.     Set Procent = Kolic/V.VkKolic*100
  123902.     From  #VkSur V
  123903.     Where #Sostav.BrojRabNal=V.BrojRabNal And #Sostav.Sifra_Sur=V.Sifra_Sur
  123904.  
  123905.  
  123906.     -- Realno potrosseni surovini
  123907.     Create Table #PotrosSur
  123908.     (
  123909.      BrojRabNal    int,
  123910.      Sifra_Sur    varchar(20),
  123911.      Kolic        decimal(18,6),
  123912.      ProsCena    decimal(18,6),
  123913.     )
  123914.     Set @SSQL = 'Select R.Broj_RabN, S.Sifra_Art, Sum(S.Kolic), Avg(S.DokCena)
  123915.         From Rabnal R
  123916.         Inner Join DokRabnal DRN On DRN.RabNalID=R.RabNalID
  123917.         Inner Join Dokr D On D.DokrId=DRN.DokrId
  123918.         Inner Join Stavr S On S.DokrID=D.DokrID
  123919.         Inner Join Katart K On K.Sifra_art = S.Sifra_art
  123920.         Where S.VlIzl =  ''I'' '
  123921.     If @Sifra_OE_Tros Is Not Null
  123922.         Set @SSQL = @SSQL +  ' And S.Sifra_Oe = ' + cast(@Sifra_Oe_Tros as Varchar(10)) +  ' '
  123923.     If @Sifra_Dok_Tros Is Not Null
  123924.         Set @SSQL = @SSQL +  ' And S.Sifra_Dok In (' + @Sifra_Dok_Tros + ') '
  123925.     If @Datum_Od is Not Null 
  123926.         Set @SSQL = @SSQL + ' And R.Datum_Otv >= ''' + cast(@Datum_Od as Varchar(35))  + ''' '
  123927.     If @Datum_Do is Not Null 
  123928.         Set @SSQL = @SSQL + ' And R.Datum_Otv <= ''' + cast(@Datum_Do as Varchar(35))  + ''' '
  123929.     If @BrojRabN_Od is Not Null 
  123930.         Set @SSQL = @SSQL + ' And R.Broj_RabN >= ' + cast(@BrojRabN_Od as Varchar(8))  + ' '
  123931.     If @BrojRabN_Do is Not Null 
  123932.         Set @SSQL = @SSQL + ' And R.Broj_RabN <= ' + cast(@BrojRabN_Do as Varchar(8))  + ' '
  123933.     Set @SSQL = @SSQL + ' Group By R.Broj_RabN, S.Sifra_Art ' 
  123934.     Insert Into #PotrosSur Exec(@SSQL)
  123935.  
  123936.     -- Spored sostavnicata da se raspredelat potrossenite surovini 
  123937.     Create Table #PotrosSurPoArt
  123938.     (
  123939.      BrojRabNal    int,
  123940.      Sifra_Art    varchar(20),
  123941.      Sifra_Sur    varchar(20),
  123942.      Kolic        decimal(18,6),
  123943.      VredPotros    decimal(18,6)
  123944.     )
  123945.     Insert Into #PotrosSurPoArt
  123946.     Select P.BrojRabNal, S.Sifra_Art, P.Sifra_Sur, (P.Kolic*S.Procent/100), (P.Kolic*S.Procent/100*P.ProsCena) VredPotros
  123947.     From #PotrosSur P
  123948.     Left Outer Join #Sostav S On S.BrojRabNal=P.BrojRabNal And S.Sifra_Sur=P.Sifra_Sur
  123949.  
  123950.     -- Proizvodna vrednost spored potrossenite surovini i procentot za raspredelba dobien od sostavnicite
  123951.     Create Table #ProizvVred
  123952.     (
  123953.      BrojRabNal    int,
  123954.      Sifra_Art    varchar(20),
  123955.      VredProizv    decimal(18,6)
  123956.     )
  123957.     Insert Into #ProizvVred
  123958.     Select BrojRabNal, Sifra_Art, Sum(VredPotros)
  123959.     From #PotrosSurPoArt
  123960.     Group By BrojRabNal, Sifra_Art
  123961.  
  123962.     Update #tabela1
  123963.     Set #tabela1.ProizvodnaVr = #ProizvVred.VredProizv
  123964.     from #ProizvVred
  123965.     Where #tabela1.BrojRabNal=#ProizvVred.BrojRabNal And #Tabela1.Sifra_Art=#ProizvVred.Sifra_Art
  123966.  
  123967.  
  123968.  
  123969. /*
  123970.  
  123971.  
  123972.  
  123973.     -- Vrednost na artiklite spored sostavnicata
  123974.     Create Table #VredArt
  123975.     (
  123976.         BrojRabNal    int,
  123977.         Sifra_Art     varchar(20),
  123978.         Vrednost    decimal(18,6),
  123979.         Procent        decimal(18,4)
  123980.     )
  123981.     Insert Into #VredArt
  123982.     Select T.BrojRabNal, T.Sifra_Art, Sum(S.Ima_Kolic*C.Cena/S.Za_Kolku*T.ProizKol), 0
  123983.     From #Tabela1 T
  123984.     Left Outer Join Sostav S On S.Sifra_Art=T.Sifra_Art
  123985.     Left Outer Join #CeniSur C On C.Sifra_Sur=S.Sifra_Sur And C.BrojRabNal=T.BrojRabNal
  123986.     Group By T.Sifra_Art, T.BrojRabNal
  123987. --select * from #VredArt
  123988.  
  123989.     Create Table #VredRabNal
  123990.     (
  123991.         BrojRabNal     Int,
  123992.         VkVredRabNal    decimal(18,6)
  123993.     )
  123994.     Insert Into #VredRabNal
  123995.     Select BrojRabNal, Sum(Vrednost)
  123996.     From #VredArt
  123997.     Group By BrojRabNal
  123998.  
  123999.     Update #VredArt 
  124000.     Set Procent = #VredArt.Vrednost/#VredRabNal.VkVredRabNal*100
  124001.     From #VredRabNal
  124002.     Where #VredRabNal.BrojRabNal=#VredArt.BrojRabNal
  124003.  
  124004. --select * from #VredArt
  124005. --select sum(procent) from #VredArt
  124006.  
  124007.     Update #tabela1
  124008.     Set #tabela1.ProizvodnaVr = #Tab2.Vrednost*#VredArt.Procent/100 
  124009.     from #Tab2, #VredArt
  124010.     Where #tabela1.BrojRabNal=#Tab2.BrojRabNal And #Tabela1.Sifra_Art=#VredArt.Sifra_Art
  124011.  
  124012. --select * from #Tabela1
  124013. */
  124014.     If @NabCenaOdSur = 'D'
  124015.     Begin
  124016.         Create Table #Art
  124017.         (
  124018.          Sifra_Art    varchar(20)
  124019.         )
  124020.         Insert Into #Art Select Distinct Sifra_Art From #Tabela1
  124021.         Create Table #Sost
  124022.         (
  124023.          Sifra_Art     varchar(20),
  124024. --         Sifra_Sur     varchar(20),
  124025. --         Ima_Kolic    decimal(18,6),
  124026.           Cena        decimal(18,6)
  124027.         )
  124028.         Insert Into #Sost 
  124029.         Select A.Sifra_Art, Sum(S.Ima_Kolic * dbo.fn_VratiCena(SO.Cena, So.Posn, So.DanCena, 'N'))
  124030.         From #Art A
  124031.         Inner Join Sostav S On S.Sifra_Art=A.Sifra_Art
  124032.         Left Outer Join Soart SO On SO.Sifra_Art=S.Sifra_Sur And SO.Sifra_Oe=@Sifra_Oe_Tros
  124033.         Group By A.Sifra_Art
  124034.         Update #Tabela1
  124035.         Set PlanCena = S.Cena 
  124036.         From #Sost S 
  124037.         Where S.Sifra_Art=#Tabela1.Sifra_Art
  124038.         Update #Tabela1 Set ProizCena = ProizvodnaVr/ProizKol
  124039.         Update #Tabela1 Set PlanskaVr = 0
  124040.         Update #Tabela1 Set PlanskaVr = PlanCena * ProizKol
  124041.         Update #Tabela1 Set Razlika = ProizvodnaVr-PlanskaVr
  124042.     End
  124043.     Else
  124044.     Begin
  124045.         Update #tabela1
  124046.         Set PlanCena = PlanskaVr/ProizKol, 
  124047.               ProizCena = ProizvodnaVr/ProizKol, 
  124048.               Razlika = ProizvodnaVr-PlanskaVr
  124049.     End
  124050.  
  124051. --select * from #tabela1
  124052.     Select T.BrojRabNal, T.Datum_Otv, T.Sifra_Art, K.ImeArt, T.ProizKol, T.PlanCena, T.ProizCena, T.PlanskaVr, T.ProizvodnaVr, T.Razlika    
  124053.     From #Tabela1 T
  124054. --    Inner Join RabNal R On R.Broj_RabN = T.BrojRabNal
  124055.     Inner Join Katart K On K.Sifra_art=T.Sifra_art
  124056.     Order by BrojRabNal
  124057.  
  124058. Go
  124059. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglrazlfix]'))
  124060. drop procedure [dbo].[sp_preglrazlfix]
  124061.  
  124062. Go
  124063. CREATE        PROCEDURE sp_PreglRazlFix
  124064.     @Sif_GrOrg    varchar(12) = NULL,
  124065.     @Datum_Od    Smalldatetime,
  124066.     @Datum_Do    Smalldatetime,
  124067.     @Sifra_Art_Od    varchar(20) = NULL,
  124068.     @Sifra_Art_Do    varchar(20) = NULL,
  124069.     @Sifra_Podg    varchar(6) = NULL,
  124070.     @Tip        char(1) = NULL,
  124071.     @Lokacija    varchar(10) = NULL, 
  124072.     @Kto        char(6) = NULL,
  124073.     @ZgolNam    char(1) = Null,
  124074.     @Podred    char(1) = 'D'    -- D - Po dobavuvac,  P - Podgrupa
  124075. AS
  124076.     Declare @SSQL Varchar(4000)
  124077.     Set @SSQL =     'SELECT R.Tip, R.Sif_GrORg, R.Sifra_Art, K.ImeArt, R.Stara_Cena, R.Nova_Cena, R.Datum, R.Sifra_Oper
  124078.             FROM RazlFix R 
  124079.             INNER JOIN KatArt K ON R.Sifra_Art = K.Sifra_Art 
  124080.             LEFT OUTER JOIN GrOrg G On G.Sif_GrOrg=R.Sif_GrOrg
  124081.             WHERE 1=1'
  124082.     If @Sif_GrOrg IS NOT NULL
  124083.         Set @SSQL = @SSQL + ' AND R.Sif_GrOrg = ''' + @Sif_GrOrg + ''' '
  124084.     If @Datum_Od Is NOT Null
  124085.         SET @SSQL = @SSQL + 'AND R.Datum >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  124086.     If @Datum_Do Is NOT Null
  124087.         SET @SSQL = @SSQL + 'AND R.Datum <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  124088.     If @Sifra_Art_Od Is NOT Null
  124089.         SET @SSQL = @SSQL + 'AND R.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  124090.     If @Sifra_Art_Do Is NOT Null
  124091.         SET @SSQL = @SSQL + 'AND R.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  124092.     If @Sifra_Podg Is NOT Null
  124093.         SET @SSQL = @SSQL + 'AND K.Sifra_Podg =''' + @Sifra_Podg + ''' '
  124094.     If @Lokacija Is NOT Null
  124095.         SET @SSQL = @SSQL + 'AND K.Lokacija =''' + @Lokacija + ''' '
  124096.     If @Kto Is NOT Null
  124097.         SET @SSQL = @SSQL + 'AND K.Kto =''' + @Kto + ''' '
  124098.     If @Tip IS NOT NULL
  124099.         Set @SSQL = @SSQL + ' AND R.Tip = ''' + @Tip + ''' '
  124100.     If @ZgolNam = 'Z'
  124101.                      Set @SSQL = @SSQL + ' And R.Stara_Cena < R.Nova_Cena '
  124102.     If @ZgolNam = 'N'
  124103.                      Set @SSQL = @SSQL + ' And R.Stara_Cena > R.Nova_Cena '
  124104.     If @Podred = 'D'
  124105.         Set @SSQL = @SSQL + ' ORDER BY K.Kto, R.Sifra_Art, K.ImeArt, R.Datum, R.Tip, G.Ime_GrOrg '
  124106.     Else If @Podred = 'P'
  124107.         Set @SSQL = @SSQL + ' ORDER BY K.Sifra_Podg, K.Kto, R.Sifra_Art, K.ImeArt, R.Datum, R.Tip, G.Ime_GrOrg '
  124108.     Else
  124109.         Set @SSQL = @SSQL + ' ORDER BY R.Sifra_Art, K.ImeArt, R.Datum, R.Tip, G.Ime_GrOrg '--R.Sif_GrOrg'
  124110.     Exec(@SSQL)
  124111.  
  124112.  
  124113. Go
  124114. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglruti]'))
  124115. drop procedure [dbo].[sp_preglruti]
  124116.  
  124117. Go
  124118.  
  124119.  
  124120.  
  124121.  
  124122. CREATE     PROCEDURE sp_PreglRuti
  124123.     @Sifra_Pat smallint  = null,
  124124.     @Sifra_GrPat char(6)  = null,
  124125.     @DatumOd smalldatetime = null, 
  124126.     @DatumDo smalldatetime = null,
  124127.     @DenOdNedela char(1) = Null
  124128. AS
  124129.     
  124130.     create Table #Tmp
  124131.         (
  124132.             Sifra_Pat smallint,
  124133.             ImePat varchar(30),
  124134.             DenOdNedela char(1),
  124135.             Datum smalldatetime,
  124136.             Rbr smallint,
  124137.             Sifra_Kup char(6),
  124138.             ImeKup varchar(40),
  124139.             Sifra_Obj smallint,
  124140.             ImeObj varchar(40),
  124141.             Adresa varchar(40),
  124142.             Mesto varchar(20)
  124143.         )
  124144.     declare @SSQL as varchar(1000)
  124145.     set @SSQL = ' select RP.Sifra_Pat, P.ImePat, RP.DenOdNedela, RP.Datum_Od,
  124146.     RP.Rbr, RP.Sifra_Kup, K.ImeKup, RP.Sifra_Obj, KO.ImeObj, case when RP.Sifra_obj is null then K.Adresa else KO.Adresa end as Adresa,
  124147.     case when RP.Sifra_obj is null then K.SMesto else KO.SMesto end as Mesto
  124148.     from RutiPlan RP
  124149.     inner join Patnici P on P.Sifra_Pat = RP.Sifra_Pat
  124150.     left outer join Komint K on K.Sifra_Kup = RP.Sifra_Kup 
  124151.     left outer join KObjekti KO on KO.Sifra_Obj = RP.Sifra_Obj and KO.Sifra_Kup = RP.Sifra_Kup
  124152.     where 1 = 1 '  
  124153.     
  124154.     If @DatumOd is not null
  124155.         set @SSQL = @SSQL + ' and RP.Datum_Od >= '''+cast(@DatumOd as varchar (25))+''' '
  124156.     If @DatumDo is not null
  124157.         set @SSQL = @SSQL + ' and RP.Datum_Od <= '''+cast(@DatumDo as varchar (25))+''' '
  124158.  
  124159.     If @Sifra_GrPat is not null
  124160.         set @SSQL = @SSQL + ' and RP.Sifra_Pat in (select Sifra_Pat from SGrpat SGr where SGr.Sif_GrPat = '''+Cast(@Sifra_GrPat  as varchar(6))+''')'
  124161.     
  124162.     If @Sifra_Pat is not null
  124163.         set @SSQL = @SSQL + ' and RP.Sifra_Pat ='+cast(@Sifra_Pat as varchar(15))+'' 
  124164.     
  124165.     If @DenOdNedela is not null
  124166.         set @SSQL = @SSQL + ' and RP.DenOdNedela ='+cast(@DenOdNedela as char(1))+''
  124167.  
  124168.     insert into #Tmp(Sifra_Pat,ImePat,DenOdNedela,Datum, Rbr,Sifra_Kup,ImeKup,Sifra_Obj,ImeObj,Adresa,Mesto) exec(@SSQL)
  124169.     
  124170.     If @DenOdNedela is null
  124171.     begin
  124172.         set @SSQL = ' select RD.Sifra_Pat, P.ImePat, RD.Datum, 
  124173.         RD.Rbr, RD.Sifra_Kup, K.ImeKup, RD.Sifra_Obj, KO.ImeObj, case when RD.Sifra_obj is null then K.Adresa else KO.Adresa end as Adresa,
  124174.         case when RD.Sifra_obj is null then K.SMesto else KO.SMesto end as Mesto
  124175.         from RutiZaDatum RD
  124176.         inner join Patnici P on P.Sifra_Pat = RD.Sifra_Pat
  124177.         left outer join Komint K on K.Sifra_Kup = RD.Sifra_Kup 
  124178.         left outer join KObjekti KO on KO.Sifra_Obj = RD.Sifra_Obj and KO.Sifra_Kup = RD.Sifra_Kup
  124179.         where 1 = 1 '
  124180.  
  124181.         If @DatumOd is not null
  124182.             set @SSQL = @SSQL + ' and RD.Datum >= '''+cast(@DatumOd as varchar (25))+''' '
  124183.         If @DatumDo is not null
  124184.             set @SSQL = @SSQL + ' and RD.Datum <= '''+cast(@DatumDo as varchar (25))+''' '
  124185.  
  124186.         If @Sifra_GrPat is not null
  124187.             set @SSQL = @SSQL + ' and RD.Sifra_Pat in (select Sifra_Pat from SGrpat SGr where SGr.Sif_GrPat = '''+Cast(@Sifra_GrPat  as varchar(6))+''')'
  124188.     
  124189.         If @Sifra_Pat is not null
  124190.             set @SSQL = @SSQL + ' and RD.Sifra_Pat ='+cast(@Sifra_Pat as varchar(15))+'' 
  124191.     
  124192.         insert into #Tmp(Sifra_Pat,ImePat,Datum,Rbr,Sifra_Kup,ImeKup,Sifra_Obj,ImeObj,Adresa,Mesto) exec(@SSQL)
  124193.     end
  124194.     
  124195.     select * from #Tmp order by Datum, DenOdNedela, Rbr
  124196.  
  124197.  
  124198.  
  124199.  
  124200.  
  124201. Go
  124202. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglrutiplan]'))
  124203. drop procedure [dbo].[sp_preglrutiplan]
  124204.  
  124205. Go
  124206.  
  124207. create  PROCEDURE sp_PreglRutiPlan
  124208.     @Sifra_Pat smallint  = null,
  124209.     @Sifra_GrPat char(6)  = null,
  124210.     @Datum_Vaznost smalldatetime,
  124211.     @DenOdNedela char(1) = Null
  124212.  
  124213. AS
  124214.  
  124215.     CREATE TABLE #TmpPR 
  124216.     ( Sifra_Pat smallint, 
  124217.       DenOdNedela smallint,
  124218.       Datum smalldatetime )
  124219.  
  124220.     -- Da gi dobieme NAJAKTUELNITE PLANOVI koi vazat vo PERIODOT
  124221.     INSERT INTO #TmpPR 
  124222.         SELECT Sifra_Pat, DenOdNedela, MAX(Datum_Od) 
  124223.         FROM RutiPlan 
  124224.         WHERE Datum_Od <= @Datum_Vaznost
  124225.         GROUP BY Sifra_Pat, DenOdNedela
  124226.  
  124227.     declare @SSQL as varchar(1000)
  124228.  
  124229.     set @SSQL = ' select RP.Sifra_Pat, P.ImePat, RP.DenOdNedela, RP.Datum_Od,
  124230.             RP.Rbr, RP.Sifra_Kup, K.ImeKup, K.SMesto, RP.Sifra_Obj, KO.ImeObj,
  124231.             Case When RP.Sifra_Obj is null then K.ImeKup else
  124232.                 rtrim(KO.ImeObj) + '' ('' + rtrim(K.ImeKup) + '')'' End ImeOpsto
  124233.             from RutiPlan RP
  124234.             INNER JOIN #TmpPR T 
  124235.                 ON RP.Sifra_Pat=T.Sifra_Pat AND RP.Datum_Od=T.Datum and RP.DenOdNedela = T.DenOdNedela
  124236.             inner join Patnici P
  124237.                  on P.Sifra_Pat = RP.Sifra_Pat
  124238.             left outer join Komint K 
  124239.                 on K.Sifra_Kup = RP.Sifra_Kup 
  124240.             left outer join KObjekti KO 
  124241.                 on KO.Sifra_Obj = RP.Sifra_Obj and KO.Sifra_Kup = RP.Sifra_Kup
  124242.             where 1 = 1 '  
  124243.     
  124244.     If @Sifra_GrPat is not null
  124245.         set @SSQL = @SSQL + ' and RP.Sifra_Pat in (select Sifra_Pat from SGrpat SGr where SGr.Sif_GrPat = '''+Cast(@Sifra_GrPat  as varchar(6))+''')'
  124246.     
  124247.     If @Sifra_Pat is not null
  124248.         set @SSQL = @SSQL + ' and RP.Sifra_Pat ='+cast(@Sifra_Pat as varchar(15))+'' 
  124249.     
  124250.     If @DenOdNedela is not null
  124251.         set @SSQL = @SSQL + ' and RP.DenOdNedela ='+cast(@DenOdNedela as char(1))+''
  124252.  
  124253.     Exec (@SSQL)
  124254.  
  124255.  
  124256.  
  124257. Go
  124258. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglscanlisti]'))
  124259. drop procedure [dbo].[sp_preglscanlisti]
  124260.  
  124261. Go
  124262.  
  124263.  
  124264.  
  124265. CREATE    PROCEDURE sp_PreglScanListi
  124266.     @Sifra_OE    smallint,    
  124267.     @Tip_Lista    smallint,
  124268.         @PrevzListi    char (1) = 'S'
  124269. AS
  124270. if @PrevzListi = 'N'
  124271.   SELECT DISTINCT TOP 300 Broj_Lista, Sifra_OE, Tip_Lista, dbo.fn_VratiDatum(Datum_Lista) Datum, Opis
  124272.   FROM ScanLista 
  124273.   ---- WHERE Sifra_OE=@Sifra_OE AND Tip_Lista=@Tip_Lista AND DokrId is Null
  124274.   WHERE Tip_Lista=@Tip_Lista AND DokrId is Null
  124275.   ORDER BY dbo.fn_VratiDatum(Datum_Lista) DESC, Broj_Lista DESC
  124276.         -- podred dod GK 21.03.11 za alma
  124277. else
  124278.   SELECT DISTINCT TOP 300 Broj_Lista, Sifra_OE, Tip_Lista, dbo.fn_VratiDatum(Datum_Lista) Datum, Opis
  124279.   FROM ScanLista 
  124280.   ---- WHERE Sifra_OE=@Sifra_OE AND Tip_Lista=@Tip_Lista 
  124281.   WHERE Tip_Lista=@Tip_Lista 
  124282.   ORDER BY dbo.fn_VratiDatum(Datum_Lista) DESC, Broj_Lista DESC
  124283.         -- podred dod GK 21.03.11 za alma
  124284. Go
  124285. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglscanlistipodat]'))
  124286. drop procedure [dbo].[sp_preglscanlistipodat]
  124287.  
  124288. Go
  124289.  
  124290.  
  124291.  
  124292. CREATE    PROCEDURE sp_PreglScanListiPoDat
  124293.     @Sifra_OE    smallint,
  124294.     @Tip_Lista    smallint,
  124295.     @Datum_Od    smalldatetime,
  124296.     @Datum_Do    smalldatetime,
  124297.     @Broj_Lista_Od    int=NULL,
  124298.     @Broj_Lista_Do    int=NULL
  124299.  
  124300. AS
  124301.  
  124302. Declare @SSQL varchar(4000)
  124303. SET @SSQL = 'SELECT S.*, A.ImeArt, A.EdMera, KS.ImeKatStatus, KP.ImeKatPak
  124304.          FROM ScanLista S
  124305.          LEFT OUTER JOIN KatArt A 
  124306.             ON S.Sifra_Art=A.Sifra_Art
  124307.          Left Outer Join KatStatus KS
  124308.             on KS.Sifra_KatStatus = S.Sifra_KatStatus
  124309.          Left Outer Join KatPakuv KP
  124310.             on KP.Sifra_KatPak = S.Sifra_KatPak
  124311.          WHERE 1=1 '
  124312. IF @Sifra_OE IS NOT NULL
  124313.     SET @SSQL=@SSQL+' AND S.Sifra_OE='+cast(@Sifra_OE as varchar(5)) 
  124314. IF @Tip_Lista IS NOT NULL
  124315.     SET @SSQL=@SSQL+' AND S.Tip_Lista='+cast(@Tip_Lista as varchar(5))
  124316. IF @Datum_Od IS NOT NULL
  124317.     SET @SSQL=@SSQL+' AND S.Datum_Lista>='''+cast(@Datum_Od as varchar(35))+''' '
  124318. IF @Datum_Do IS NOT NULL
  124319.     SET @SSQL=@SSQL+' AND S.Datum_Lista<'''+cast(@Datum_Do as varchar(35))+''' '  --namerno pomalo zosto e so vreme
  124320. IF @Broj_Lista_Od IS NOT NULL
  124321.     SET @SSQL=@SSQL+' AND S.Broj_Lista>='+cast(@Broj_Lista_Od as varchar(8))
  124322. IF @Broj_Lista_Do IS NOT NULL
  124323.     SET @SSQL=@SSQL+' AND S.Broj_Lista<='+cast(@Broj_Lista_Do as varchar(8))
  124324. SET @SSQL=@SSQL+' ORDER BY S.Broj_Lista, S.Rbr_Scan'
  124325.  
  124326. EXEC (@SSQL)
  124327.  
  124328.  
  124329.  
  124330.  
  124331.  
  124332. Go
  124333. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglsifkupart]'))
  124334. drop procedure [dbo].[sp_preglsifkupart]
  124335.  
  124336. Go
  124337. CREATE  PROCEDURE sp_PreglSifKupArt
  124338.     @Sifra_kup    char(6) = Null,
  124339.     @Sifra_art_Od    varchar(20) = Null,
  124340.     @Sifra_art_Do    varchar(20) = Null,
  124341.     @Sifra_Gr    char(3) = Null,
  124342.     @Sifra_Podg    char(6) = Null,
  124343.     @Lokacija    varchar(10) = Null,
  124344.     @Sifra_Tar    char(3) = Null,
  124345.     @Sifra_Brand    Smallint = Null AS
  124346.     Declare @SSQL as Varchar(4000)
  124347.     Set @SSQL= ' Select S.*, KUP.ImeKup, K.ImeArt,
  124348.                 K.Sifra_Podg, K.EdMera, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr
  124349.                 From SifKupArt S
  124350.                 Inner Join Katart K On K.Sifra_art = S.Sifra_art
  124351.                 Left Outer Join Komint KUP On KUP.Sifra_Kup = S.Sifra_kup
  124352.                 Left Outer Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  124353.                 Left Outer Join Grupi G On G.Sifra_Gr = P.Sifra_Gr '
  124354.     Set @SSQL=@SSQL+ ' Where 1=1 ' 
  124355.     If @Sifra_Kup Is Not Null
  124356.         Set @SSQL = @SSQL + ' and S.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  124357.     If @Sifra_Art_Od Is Not Null
  124358.         Set @SSQL = @SSQL + ' and S.Sifra_art >= ' + @Sifra_art_Od + ' '
  124359.     If @Sifra_Art_Do Is Not Null
  124360.         Set @SSQL = @SSQL + ' and S.Sifra_art <= ' + @Sifra_art_Do + ' '
  124361.     If @Sifra_Podg Is Not Null
  124362.         Set @SSQL = @SSQL + ' and K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  124363.     If @Sifra_Gr Is Not Null
  124364.         Set @SSQL = @SSQL + ' and G.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  124365.     If @Lokacija Is Not Null
  124366.         Set @SSQL = @SSQL + ' and K.Lokacija = ''' + @Lokacija + ''' '
  124367.     If @Sifra_Brand Is Not Null
  124368.         Set @SSQL=@SSQL+'AND (K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ') '
  124369.        If @Sifra_Tar Is Not Null
  124370.               Set @SSQL=@SSQL+'AND (K.Sifra_Tar='''+@Sifra_Tar+''') '
  124371.     Set @SSQL=@SSQL+ ' Order By S.Sifra_Kup, S.Sifra_Art '
  124372.     Exec (@SSQL)
  124373.  
  124374.  
  124375. Go
  124376. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglsifkupart1]'))
  124377. drop procedure [dbo].[sp_preglsifkupart1]
  124378.  
  124379. Go
  124380.  
  124381.  
  124382. CREATE   PROCEDURE sp_PreglSifKupArt1
  124383.     @Sifra_Pat    smallint=Null,
  124384.     @Sifra_reg    smallint=Null,
  124385.     @Sifra_Grad    smallint=Null
  124386. AS
  124387.     Declare @SSQL varchar(4000)
  124388.     CREATE TABLE #TmpKup    
  124389. (    Sifra_Kup    char(6))                            --ova da se napravi OR Sifra_pat in (..KomintPat
  124390.     SET @SSQL = 'SELECT Sifra_Kup FROM Komint WHERE (Aktiven IS NULL OR Aktiven <>''N'') AND Sifra_Kup IN (SELECT DISTINCT Sifra_Kup FROM SifKupArt) '
  124391. /*    If @Sifra_Pat Is Not Null
  124392.         SET @SSQL = @SSQL + ' AND (Sifra_Pat ='+ cast(@Sifra_Pat as varchar(6)) +' OR Sifra_Pat2 = '+ cast(@Sifra_Pat as varchar(6))  +') '
  124393.     If @Sifra_Grad Is Not Null
  124394.         SET @SSQL = @SSQL + ' AND Sifra_Grad ='+ cast(@Sifra_Grad as varchar(6))  
  124395.     If @Sifra_Reg IS NOT NULL
  124396.         SET @SSQL = @SSQL + ' AND Sifra_Reg ='+ cast(@Sifra_Reg as varchar(6))  
  124397.     INSERT INTO #TmpKup EXEC (@SSQL)    
  124398.     IF @Sifra_Pat IS NOT NULL  OR @Sifra_Grad IS NOT NULL  OR @Sifra_Reg IS NOT NULL
  124399.         BEGIN
  124400.         SET @SSQL = 'SELECT DISTINCT Sifra_Kup from KObjekti where 1=1 '
  124401.         If @Sifra_Pat Is Not Null
  124402.             SET @SSQL = @SSQL + ' AND (Sifra_Pat ='+ cast(@Sifra_Pat as varchar(6)) +' OR Sifra_Pat2 = '+ cast(@Sifra_Pat as varchar(6))  +') '
  124403.         If @Sifra_Grad Is Not Null
  124404.             SET @SSQL = @SSQL + ' AND Sifra_Grad ='+ cast(@Sifra_Grad as varchar(6))  
  124405.         If @Sifra_Reg IS NOT NULL
  124406.             SET @SSQL = @SSQL + ' AND Sifra_Reg ='+ cast(@Sifra_Reg as varchar(6))  
  124407.         INSERT INTO #TmpKup EXEC (@SSQL)    
  124408.         END */
  124409. INSERT INTO #TmpKup EXEC (@SSQL)    
  124410. SELECT Sifra_Kup Kup, Sifra_Art Art, Sifra_Art_Kup ArtKup FROM SifKupArt 
  124411. WHERE Prik_Fakt ='D' AND Sifra_Kup IN (SELECT Sifra_Kup FROM #TmpKup)
  124412.  
  124413.  
  124414.  
  124415.  
  124416. Go
  124417. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_preglsostavgr]'))
  124418. drop procedure [dbo].[sp_preglsostavgr]
  124419.  
  124420. Go
  124421. CREATE                   PROCEDURE sp_PreglSostavGR
  124422.     @Sifra_art    varchar(20)=null,
  124423.     @Datum_Od    smalldatetime=null,
  124424.     @Datum_Do    smalldatetime=null,
  124425.     @KontrSer    varchar(25)=NULL,
  124426.     @KojaCena    char(1) = Null,    -- N - Posledna Nabavna,      S - Prosecna Nabavna,      P - Planska
  124427.     @SoDDV    char(1) = 'D',
  124428.     @DatumCena    smalldatetime = Null,
  124429.     @Sifra_OeCena    smallint = Null
  124430. AS
  124431.     Declare @SSQL as varchar(4000)
  124432.     Create Table #Rez
  124433.     (
  124434.      Sifra_art    varchar(20),
  124435.      KontrSer    varchar(25),
  124436.      Datum_Sostav    smalldatetime,
  124437.      Za_Kolku    decimal(9,3),
  124438.      Sifra_Sur    varchar(20),
  124439.      Ima_Kolic    decimal(18,6),
  124440.      VodeckiArtikal    char(1),
  124441.      Cena        decimal(18,6)
  124442.     )
  124443.     Set @SSQL = ' Select SK.Sifra_art, SK.KontrSer, SK.Datum_Sostav, SK.Za_Kolku, SK.Sifra_Sur, 
  124444.                 SK.Ima_Kolic, SK.VodeckiArtikal, 0 as Cena
  124445.             From SostavKontr SK 
  124446.             Where 1=1 '
  124447.     IF @Datum_Od IS NOT NULL
  124448.         Set @SSQL = @SSQL + ' And SK.Datum_Sostav >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  124449.     IF @Datum_Do IS NOT NULL
  124450.         Set @SSQL = @SSQL + ' And SK.Datum_Sostav <= ''' + cast(@Datum_Do as varchar(30)) + ''' '    
  124451.     If @Sifra_Art IS NOT NULL
  124452.         Set @SSQL = @SSQL + ' And SK.Sifra_Art = ''' + @Sifra_Art + ''' '
  124453.     If @KontrSer Is NOT Null
  124454.         Set @SSQL = @SSQL + ' And SK.KontrSer = ''' + @KontrSer + ''' '
  124455.     Insert Into #Rez Exec(@SSQL)
  124456.     Create Table #Ceni
  124457.     (
  124458.      Sifra_Art    varchar(20),
  124459.      Cena        decimal(18,6)
  124460.     )
  124461.     If @KojaCena In ('N', 'S', 'P')
  124462.     Begin
  124463.         Set @SSQL = ' Select Distinct S.Sifra_Art, 0
  124464.                 From Stavr S
  124465.                 Inner Join Dokr D On D.DokrID=S.DokrID  
  124466.                 Where S.VlIzl=''V'' And D.Sifra_Za = ''2'' And S.Sifra_Oe = ' + Cast(@Sifra_OeCena as varchar(6)) + ' 
  124467.                 And S.Sifra_Art In (Select Sifra_Sur From #Rez)'
  124468.         If @Datum_Od IS NOT NULL
  124469.             Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + cast(@Datum_Od as varchar(30)) + ''' '
  124470.         If @Datum_Do IS NOT NULL
  124471.             Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + cast(@Datum_Do as varchar(30)) + ''' '    
  124472.         Insert Into #Ceni Exec(@SSQL)
  124473.     End
  124474.     If @KojaCena = 'N'
  124475.     Begin
  124476.         Update #Ceni Set Cena=dbo.fn_CenaDatum(@Sifra_OeCena, Sifra_Art, @DatumCena, @SoDDV)
  124477.     End
  124478.     Else If @KojaCena = 'S'
  124479.     Begin
  124480.         Create Table #ProsCeni    
  124481.         (
  124482.          Sifra_Oe    smallint,
  124483.          Sifra_Art    varchar(20),
  124484.          Sostojba    decimal(18,4),
  124485.          Vrednost    decimal(18,4),
  124486.          ProsCena    decimal(18,4)
  124487.         )
  124488.         Set @SSQL = ' Select S.Sifra_Oe, S.Sifra_Art, Sum(Case S.VlIzl When ''V'' Then S.Kolic When ''I'' Then (-1*S.Kolic) End),
  124489.                 Sum(Case S.VlIzl When ''V'' Then (S.Kolic*dbo.fn_VratiCena(S.NabCena, S.Posn, ''N'', ''' + @SoDDV + ''')) 
  124490.                           When ''I'' Then (-1*S.Kolic*dbo.fn_VratiCena(S.NabCena, S.Posn, ''N'', ''' + @SoDDV + ''')) End), Null
  124491.                 From Stavr S
  124492.                 Inner Join Dokr D On D.DokrID=S.DokrID  
  124493.                 Where S.Datum_Dok <= ''' + Cast(@DatumCena as varchar(30)) + ''' 
  124494.                 And S.Sifra_Art In (Select Sifra_Art From #Ceni)'
  124495.         If @Sifra_OECena Is Not Null
  124496.             Set @SSQL = @SSQL + 'And S.Sifra_OE=' + Cast(@Sifra_OECena As Varchar(10)) + ' '
  124497.         Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Art '
  124498.         Insert Into #ProsCeni Exec(@SSQL)
  124499.         Create Table #FinRazl    
  124500.         (
  124501.          Sifra_Oe    smallint,
  124502.          Sifra_Art    varchar(20),
  124503.          IznosRazl    decimal(18,4)
  124504.         )
  124505.         Set @SSQL = ' Select Sifra_Oe, Sifra_Art, Sum((Case VlIzl When ''V'' Then Iznos_Razl When ''I'' Then (-1*Iznos_Razl) End))
  124506.                 From RazlFin
  124507.                 Where Datum_Dok <= ''' + Cast(@DatumCena as varchar(30)) + '''  
  124508.                 And Sifra_Art In (Select Sifra_Art From #Ceni) '
  124509.         If @Sifra_OECena Is Not Null 
  124510.             Set @SSQL = @SSQL + 'And Sifra_OE=' + Cast(@Sifra_OECena As Varchar(10)) + ' '
  124511.         Set @SSQL = @SSQL + ' Group By Sifra_Oe, Sifra_Art '
  124512.         Insert Into #FinRazl Exec(@SSQL)
  124513.         Update #ProsCeni
  124514.         Set #ProsCeni.Vrednost=#ProsCeni.Vrednost+#FinRazl.IznosRazl
  124515.         From #FinRazl
  124516.         Where #ProsCeni.Sifra_Oe=#FinRazl.Sifra_Oe And #ProsCeni.Sifra_Art=#FinRazl.Sifra_Art
  124517.         Update #ProsCeni
  124518.         Set ProsCena=Vrednost/Sostojba
  124519.         Where Sostojba Is Not Null And Sostojba <> 0
  124520.         Update #ProsCeni
  124521.         Set ProsCena = 0
  124522.         Where ProsCena < 0
  124523.         Update #ProsCeni 
  124524.         Set ProsCena = S.NNabCena 
  124525.         FROM Soart S 
  124526.         Where (#ProsCeni.ProsCena = 0 Or #ProsCeni.ProsCena Is Null) AND #ProsCeni.Sifra_Art=S.Sifra_Art AND S.Sifra_OE=#ProsCeni.Sifra_OE 
  124527.         Update #Ceni Set Cena=#ProsCeni.ProsCena
  124528.         From #ProsCeni
  124529.         Where #Ceni.Sifra_Art=#ProsCeni.Sifra_Art
  124530.     End
  124531.     Else If @KojaCena='P'
  124532.     Begin
  124533.         Declare @Sif_GrOrg char(6)
  124534.         Declare @SifArt varchar(20)
  124535.         Declare @Cena decimal(18,6)
  124536.         SELECT @Sif_GrOrg = G.Sif_GrOrg 
  124537.         FROM GrOrg G 
  124538.         Inner Join SGrOrg S On G.Sif_GrOrg=S.Sif_GrOrg And S.Sifra_OE=@Sifra_OECena 
  124539.         WHERE G.ZaedPlanCeni='D'
  124540.         IF @Sif_GrOrg IS NULL
  124541.             Update #Ceni Set Cena = 0
  124542.         Else
  124543.         Begin
  124544.             Declare Ceni Cursor Fast_Forward 
  124545.                 For Select Sifra_Art From #Ceni
  124546.             Open Ceni
  124547.             Fetch Next From Ceni Into @SifArt
  124548.             While @@Fetch_Status = 0
  124549.             Begin
  124550.                 Select Top 1 @Cena=dbo.fn_VratiCena(C.Cena, T.ProcOsn, C.DanCena, @SoDDV)
  124551.                 From CeniPlanski C
  124552.                 Inner Join Katart K On K.Sifra_Art =C.Sifra_Art
  124553.                 Inner Join Tarifi T On T.Sifra_Tar=K.Sifra_Tar
  124554.                 Where Sif_GrOrg=@Sif_GrOrg AND C.Sifra_Art=@SifArt AND Vazi_Od<=@DatumCena 
  124555.                 Order By Vazi_Od Desc
  124556.                 Update #Ceni Set Cena=@Cena Where Sifra_Art= @SifArt
  124557.                 Set @Cena=0
  124558.                 Fetch Next From Ceni Into @SifArt        
  124559.             End
  124560.             Close Ceni
  124561.             Deallocate Ceni
  124562.         End
  124563.     End
  124564.     Update #Rez Set Cena=#Ceni.Cena
  124565.     From #Ceni
  124566.     Where #Ceni.Sifra_Art=#Rez.Sifra_Sur
  124567.     Select SK.Sifra_art, SK.KontrSer, SK.Datum_Sostav, SK.Za_Kolku, SK.Sifra_Sur, 
  124568.         SK.Ima_Kolic, SK.VodeckiArtikal, S.ImeArt ImeSur, K.ImeArt, SK.Cena
  124569.     From #Rez SK 
  124570.     Left Outer Join KatArt K On K.Sifra_Art=SK.Sifra_Art  
  124571.     Left Outer Join KatArt S On S.Sifra_Art=SK.Sifra_Sur
  124572.  
  124573.  
  124574. Go
  124575. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_presmamor]'))
  124576. drop procedure [dbo].[sp_presmamor]
  124577.  
  124578. Go
  124579.  
  124580.  
  124581.  
  124582.  
  124583. CREATE                                PROCEDURE sp_PresmAmor
  124584.     @GodPresm    smallint,
  124585.     @PocMesec    smallint,
  124586.     @KrMesec    smallint,
  124587.     @Inv_Broj_Od    char(10) = Null,
  124588.     @Inv_Broj_Do    char(10) = Null,
  124589.     @Kto_anal    varchar(200) = Null,
  124590.     @Sifra_Amor    varchar(200) = Null,
  124591.     @Sifra_MikLok    varchar(200) = Null,
  124592.     @Sifra_MakLok    varchar(200) = Null,
  124593.     @Sifra_Lok    varchar(200) = Null,
  124594.     @Sifra_Rab    varchar(200) = Null,
  124595.     @Za_Prenos    char(1) = 'N',        --D-izv.amort., N-prenos vo nova god.,K-Kniz,.vo glk,I-za izv.kartica
  124596.     @ImaDelumenOtpis char(1)='N',
  124597.     @PrikNovoNab        char(1) = 'D',  -- Novonabaveni    opciite dod.19.07.07
  124598.     @PrikDogradbi        char(1) = 'D',  -- Dogradbi
  124599.     @PrikNabOdPrethGod    char(1) = 'D',  -- Prethodno Nabaveni
  124600.     @PrikOtpisani        char(1) = 'D',   -- Otpisani  NE CEPKAJ DEFAULTI
  124601.     @KnizPo                varchar(2) = '',    -- ''-samo vk,MI-org.ed.od mikrol,MA-org.ed.od makrol,3-L-oe od lok.,D-Divivizii
  124602.     @OS_SI        char(1) = NULL,    -- O-Osnovni Sredstva, S-Siten Inventar NE CEPKAJ DEFAULT, BITEN ZA PRENOSOT
  124603.     @Osn_Amor        decimal(18,6) = 0 OUTPUT,
  124604.     @Otpis            decimal(18,6) = 0 OUTPUT     
  124605. AS
  124606.     Declare @SSQL varchar(2000)
  124607.     Declare @PocDat smalldatetime
  124608.     Declare @KrDat smalldatetime
  124609.     Declare @PocDatGod smalldatetime
  124610.     SET @PocDatGod = dbo.fn_NapraviDatum (@GodPresm, 1, 1)
  124611.     SET @PocDat = dbo.fn_NapraviDatum (@GodPresm, @PocMesec, 1)
  124612.     SET @KrDat = dbo.fn_VratiDatumOdDo (@GodPresm, @KrMesec, 31)
  124613.  
  124614.     CREATE TABLE #PomOsn
  124615. (    Inv_Broj        char(10),
  124616.     DatAkt        smalldatetime,
  124617.     DatPrest    smalldatetime
  124618. )
  124619.  
  124620.     CREATE TABLE #TmpAmorPresm
  124621. (    Inv_Broj        char(10),
  124622.     Rbr        smallint,
  124623.     DatAkt        smalldatetime,
  124624.     DatPrest    smalldatetime,
  124625.     PocDatAmor    smalldatetime,
  124626.     KrDatAmor    smalldatetime,
  124627.     Osn_Amor    decimal(18,2),
  124628.     Otpis_pret    decimal(18,2),
  124629.     Stapka_Amor    decimal(8,3),
  124630.     PocDatKumul    smalldatetime,
  124631.     KrDatKumul    smalldatetime,
  124632.     PocDatDoPer    smalldatetime,
  124633.     KrDatDoPer    smalldatetime,
  124634.     AmortKumul    decimal(18,6),
  124635.     AmortPer    decimal(18,6),
  124636.     Rashodovano    char(1),
  124637.     Miruvanje    char(1),
  124638.     Sifra_Kup    varchar(20)
  124639. )
  124640.     SET @SSQL = 'INSERT INTO #TmpAmorPresm (Inv_Broj, Rbr, DatAkt, DatPrest) SELECT Inv_Broj, 0,  DatAkt, DatPrest FROM OsnSred
  124641.             WHERE DatAkt IS NOT NULL AND DatAkt <= ''' +cast(@KrDat as varchar(35)) + 
  124642.             ''' AND (DatPrest IS NULL OR Year(DatPrest) >= ' + cast(@GodPresm as char(4)) + ' )'
  124643. --do 20.07.07    WHERE DatAkt IS NOT NULL AND Year(Datakt) <= ' +cast(@GodPresm as char(4)) + 
  124644. --    ' AND (DatPrest IS NULL OR Year(DatPrest) >= ' + cast(@GodPresm as char(4)) + ' )'
  124645.     If @Inv_Broj_Od IS NOT NULL
  124646.         SET @SSQL = @SSQL + ' AND Inv_Broj >= ''' + @Inv_Broj_Od + ''' '
  124647.     If @Inv_Broj_Do IS NOT NULL
  124648.         SET @SSQL = @SSQL + ' AND Inv_Broj <= ''' + @Inv_Broj_Do + ''' '
  124649.     If @Kto_Anal IS NOT NULL
  124650.         SET @SSQL = @SSQL + ' AND Kto_Anal IN (''' + @Kto_Anal + ''') '
  124651.     If @Sifra_Amor IS NOT NULL
  124652.         SET @SSQL = @SSQL + ' AND Sifra_Amor IN (''' + @Sifra_Amor + ''') '
  124653.     If @Sifra_MikLok IS NOT NULL
  124654.         SET @SSQL = @SSQL + ' AND Sifra_MikLok IN (''' + @Sifra_MikLok + ''') '
  124655.     If @Sifra_MakLok IS NOT NULL
  124656.         SET @SSQL = @SSQL + ' AND Sifra_MikLok IN (SELECT Sifra_MikLok FROM MikroLok WHERE Sifra_MakLok IN (''' + @Sifra_MakLok + ''')) '
  124657.     If @Sifra_Lok IS NOT NULL 
  124658.         SET @SSQL = @SSQL + ' AND Sifra_MikLok IN (SELECT Sifra_MikLok FROM MikroLok WHERE Sifra_MakLok IN (
  124659.         SELECT Sifra_MakLok FROM MakroLok WHERE Sifra_Lok IN (''' + @Sifra_Lok + '''))) '
  124660.     If @Sifra_Rab IS NOT NULL
  124661.         SET @SSQL = @SSQL + ' AND Sifra_Rab IN (' + @Sifra_Rab + ') '
  124662.     If @OS_SI = 'O'
  124663.         Set @SSQL = @SSQL + ' And Tip = ''OS'' '
  124664.     Else If @OS_SI = 'S'
  124665.         Set @SSQL = @SSQL + ' And Tip = ''SI'' '
  124666.     EXEC (@SSQL)
  124667. --print @ssql
  124668. IF @PrikDogradbi <> 'N'
  124669. Begin
  124670.     INSERT INTO #TmpAmorPresm (Inv_Broj, Rbr, DatAkt, DatPrest, Osn_Amor, Otpis_Pret) 
  124671.     SELECT Inv_Broj, 1,  Datum_Dok, Null, Osn_Amor, 0 FROM StavOsnSred    
  124672.     WHERE Inv_Broj IN (SELECT Inv_Broj FROM #TmpAmorPresm) AND Delov_God = @GodPresm 
  124673.     AND Tip_StaOsn IN ('D','E') AND Datum_Dok<=@KrDat
  124674. End
  124675.     INSERT INTO #PomOsn (Inv_Broj, DatAkt, DatPrest) 
  124676.     SELECT Inv_Broj, DatAkt, DatPrest FROM #TmpAmorPresm 
  124677.     Where Rbr <> 1  -- dod 06.06.2008 GK
  124678.     UPDATE #TmpAmorPresm SET DatPrest = #PomOsn.DatPrest FROM #PomOsn
  124679.     WHERE #PomOsn.Inv_Broj = #TmpAmorPresm.Inv_Broj AND #TmpAmorPresm.Rbr=1
  124680. IF @PrikOtpisani='N'
  124681.     Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where DatPrest IS NOT NULL AND DatPrest <= @KrDat)
  124682. IF @PrikNabOdPrethGod = 'N'
  124683. Begin
  124684.     If @PrikOtpisani = 'D'
  124685.         Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where Year(DatNab) < Year(@KrDat)
  124686.                         And (DatPrest Is Null Or Year(DatPrest) < Year(@KrDat) Or DatPrest > @KrDat))
  124687.     Else 
  124688.         Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where Year(DatNab) < Year(@KrDat)) and Rbr=0
  124689. End
  124690. IF @PrikNovoNab    ='N'
  124691. Begin
  124692.     If @PrikOtpisani = 'D'
  124693.         Delete From #TmpAmorPresm Where Inv_Broj In 
  124694.             (Select Inv_Broj From OsnSred Where Year(DatNab) = Year(@KrDat) And DatNab <= @KrDat 
  124695.                             And (DatPrest Is Null Or Year(DatPrest) < Year(@KrDat) Or DatPrest > @KrDat))
  124696.     Else
  124697.         Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where Year(DatNab) = Year(@KrDat) And DatNab <= @KrDat)
  124698. --    DELETE FROM #TmpAmorPresm WHERE Inv_Broj IN (SELECT Inv_Broj FROM StavOsnSred WHERE Delov_God = @GodPresm AND Tip_StaOsn ='P')
  124699. End
  124700. -- ELSE  GK - vaka bese do 13.02.09 ako se prikazuvaat sredstva nabaveni i otpisani vo ista godina nemasse vrednosti (verojatno ova ELSE bese po gresska staveno)
  124701.  
  124702. --dod.03.06.09
  124703.     CREATE TABLE #Tmp1AmorPresm
  124704. (    Inv_Broj        char(10),
  124705.     Rbr        smallint,
  124706.     DatAkt        smalldatetime,
  124707.     DatPrest    smalldatetime,
  124708.     PocDatAmor    smalldatetime,
  124709.     KrDatAmor    smalldatetime,
  124710.     Osn_Amor    decimal(18,2),
  124711.     Otpis_pret    decimal(18,2),
  124712.     Stapka_Amor    decimal(8,3),
  124713.     PocDatKumul    smalldatetime,
  124714.     KrDatKumul    smalldatetime,
  124715.     PocDatDoPer    smalldatetime,
  124716.     KrDatDoPer    smalldatetime,
  124717.     AmortKumul    decimal(18,6),
  124718.     AmortPer    decimal(18,6),
  124719.     Rashodovano    char(1),
  124720.     Miruvanje     char(1),
  124721.     Sifra_Kup    varchar(20))
  124722.  
  124723.     CREATE TABLE #Tmp2AmorPresm
  124724. (    Inv_Broj        char(10),
  124725.     Rbr        smallint,
  124726.     DatAkt        smalldatetime,
  124727.     DatPrest    smalldatetime,
  124728.     PocDatAmor    smalldatetime,
  124729.     KrDatAmor    smalldatetime,
  124730.     Osn_Amor    decimal(18,2),
  124731.     Otpis_pret    decimal(18,2),
  124732.     Stapka_Amor    decimal(8,3),
  124733.     PocDatKumul    smalldatetime,
  124734.     KrDatKumul    smalldatetime,
  124735.     PocDatDoPer    smalldatetime,
  124736.     KrDatDoPer    smalldatetime,
  124737.     AmortKumul    decimal(18,6),
  124738.     AmortPer    decimal(18,6),
  124739.     Rashodovano    char(1),
  124740.     Miruvanje    char(1),
  124741.     Sifra_Kup    varchar(20))
  124742.  
  124743. CREATE TABLE #TmpOS
  124744. (Inv_Broj    char(10))
  124745. CREATE TABLE #TmpMiruv
  124746. (Inv_Broj    char(10),
  124747. Datum        smalldatetime,
  124748. Sto            Char(1))
  124749.  
  124750. INSERT INTO #TmpMiruv (Inv_Broj, Datum, Sto) SELECT Inv_Broj, Datum_Dok, Tip_StaOsn     --do 21.04.11
  124751.     FROM StavOsnSred WHERE Datum_Dok<=@KrDat AND Tip_StaOsn='M' AND Inv_Broj IN (SELECT Inv_Broj FROM #TmpAmorPresm)
  124752. INSERT INTO #TmpMiruv (Inv_Broj, Datum, Sto) SELECT Inv_Broj, Datum_Dok, Tip_StaOsn 
  124753.     FROM StavOsnSred WHERE Datum_Dok<=@KrDat AND Tip_StaOsn='A' AND Inv_Broj IN (SELECT Inv_Broj FROM #TmpAmorPresm)
  124754.  
  124755. INSERT INTO #TmpOS SELECT DISTINCT Inv_Broj FROM #TmpMiruv
  124756.  
  124757.     DELETE FROM #Tmp1AmorPresm
  124758.     INSERT INTO #Tmp1AmorPresm SELECT * FROM #TmpAmorPresm WHERE Inv_Broj IN (SELECT Inv_Broj FROM #TmpMiruv) AND Rbr=0
  124759.     DELETE FROM #TmpAmorPresm WHERE Inv_Broj IN (SELECT Inv_Broj FROM #TmpMiruv) AND Rbr=0
  124760.     --select * from #TmpAmorPresm
  124761.     
  124762.     Declare @wInvBr char(10), @wDat smalldatetime, @wSto char(1), @wDatAkt smalldatetime, @wDatPrest smalldatetime, @wStInvBr char(10)
  124763.     Declare @wDatAkt1 smalldatetime, @wKlkM smallint, @wKlkA as smallint 
  124764.     SET @wStInvBr=''
  124765.     Declare Tabela1 Cursor Fast_Forward For
  124766.         Select Inv_Broj, Datum, Sto From #TmpMiruv ORDER BY Inv_Broj, Datum
  124767.     Open Tabela1
  124768.     Fetch Next From Tabela1 Into @wInvBr, @wDat, @wSto
  124769.     While @@Fetch_Status = 0
  124770.     Begin        
  124771.         IF @wInvBr <> @wStInvBr        --novo sredstvo
  124772.         Begin
  124773.             SELECT @wDatAkt =DatAkt, @wDatPrest=DatPrest FROM #Tmp1AmorPresm WHERE Inv_Broj=@wInvBr
  124774.             SET @wStInvBr=@wInvBr
  124775.             SET @wKlkM = 0
  124776.             SET @wKlkA = 0
  124777.             SET @wDatAkt1 = @wDatAkt
  124778.         End
  124779.         IF @wSto='M'
  124780.             Begin
  124781.                 SET @wKlkM = @wKlkM + 1
  124782.                 IF @wKlkM=1 AND @wKlkA=0
  124783.                     INSERT INTO #Tmp2AmorPresm (Inv_Broj,Rbr,DatAkt,DatPrest,Osn_Amor,Otpis_pret, Miruvanje)
  124784.                     VALUES (@wInvBr,0,@wDatAkt, @wDat,0,0,'M')
  124785.                 ELSE
  124786.                     UPDATE #Tmp2AmorPresm SET DatPrest=@wDat WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt1
  124787.             End
  124788.         ELSE
  124789.             Begin
  124790.                 SET @wKlkA = @wKlkA + 1
  124791.                 SET @wDatAkt1 = @wDat
  124792.                 INSERT INTO #Tmp2AmorPresm (Inv_Broj,Rbr,DatAkt,DatPrest,Osn_Amor,Otpis_pret, Miruvanje)
  124793.                 VALUES (@wInvBr,0,@wDat, @wDatPrest,0,0, 'A')
  124794.             End
  124795.         Fetch Next From Tabela1 Into @wInvBr, @wDat, @wSto
  124796.     End
  124797.     Close Tabela1
  124798.     Deallocate Tabela1
  124799.  
  124800.     Declare @ImaOvaaGod smallint, @PrvoStGod smallint
  124801.     Declare TabOS Cursor Fast_Forward For
  124802.         Select Inv_Broj  From #TmpOS ORDER BY Inv_Broj 
  124803.         Open TabOS
  124804.         Fetch Next From TabOS INTO @wInvBr
  124805.         While @@Fetch_Status = 0
  124806.         Begin        
  124807.             
  124808.             SET @PrvoStGod=0
  124809.             SET @ImaOvaaGod=0
  124810.             Declare Tabela2 Cursor Fast_Forward For
  124811.                 Select DatAkt, DatPrest, Miruvanje From #Tmp2AmorPresm WHERE Inv_Broj=@wInvBr ORDER BY DatAkt DESC
  124812.             Open Tabela2
  124813.             Fetch Next From Tabela2 Into  @wDatAkt, @wDatPrest, @wSto
  124814.             While @@Fetch_Status = 0
  124815.             Begin        
  124816.                  IF @wDatAkt >= @PocDatGod
  124817.                 Begin
  124818.                     INSERT INTO #TmpAmorPresm SELECT * FROM #Tmp2AmorPresm WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt
  124819.                     IF @ImaOvaaGod=1 UPDATE #TmpAmorPresm SET Rbr=4 WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt  
  124820.                     SET @ImaOvaaGod=1
  124821.                 End
  124822.                 ELSE
  124823.                 Begin
  124824.                     IF @PrvoStGod=0 AND @ImaOvaaGod=0 AND ((@wDatPrest IS NULL AND @wSto='A') OR (@wDatPrest IS NOT NULL AND (@wSto='M' OR @wDatPrest>=@PocDatGod)))
  124825.                     Begin
  124826.                         INSERT INTO #TmpAmorPresm SELECT * FROM #Tmp2AmorPresm WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt
  124827.                     End
  124828.                     SET @PrvoStGod=1            
  124829.                 End
  124830.                 Fetch Next From Tabela2 Into @wDatAkt, @wDatPrest, @wSto
  124831.             End
  124832.             Close Tabela2
  124833.             Deallocate Tabela2
  124834.     
  124835.         Fetch Next From TabOS INTO @wInvBr
  124836.     End
  124837.     Close TabOS
  124838.     Deallocate TabOS
  124839.     DELETE FROM #Tmp2AmorPresm
  124840.  
  124841. --sega uste komplikacijata da ima dogradba,delumen otpis na sredstvata koi se so miruvanje, aktiviranje
  124842. Declare @wOsnDogr decimal(18,6)
  124843. Declare TabDogr    Cursor Fast_Forward For         
  124844. SELECT A.Inv_Broj, A.DatAkt, A.DatPrest, A.Osn_Amor FROM #TmpAmorPresm A INNER JOIN #TmpOS O ON A.Inv_Broj=O.Inv_Broj WHERE A.Rbr=1 ORDER BY A.Inv_Broj, A.DatAkt
  124845. Open TabDogr 
  124846. Fetch Next From TabDogr Into @wInvBr, @wDatAkt, @wDatPrest, @wOsnDogr
  124847. While @@Fetch_Status = 0
  124848. Begin
  124849.  
  124850.     DELETE FROM #Tmp1AmorPresm
  124851.     INSERT INTO #Tmp1AmorPresm SELECT * FROM #TmpAmorPresm WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt AND Rbr=1
  124852.     DELETE FROM #TmpAmorPresm WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt AND Rbr=1
  124853.      DELETE FROM #Tmp2AmorPresm
  124854.  
  124855.     SET @wStInvBr=@wInvBr
  124856.     SET @wKlkM = 0
  124857.     SET @wKlkA = 0
  124858.     SET @wDatAkt1 = @wDatAkt
  124859.     Declare Tabela1 Cursor Fast_Forward For
  124860.         Select Datum, Sto From #TmpMiruv WHERE Inv_Broj=@wInvBr ORDER BY Datum
  124861.     Open Tabela1
  124862.     Fetch Next From Tabela1 Into @wDat, @wSto
  124863.     While @@Fetch_Status = 0
  124864.     Begin        
  124865.          IF @wSto='M'
  124866.             Begin
  124867.                 SET @wKlkM = @wKlkM + 1
  124868.                 IF @wKlkM=1 AND @wKlkA=0
  124869.                     INSERT INTO #Tmp2AmorPresm (Inv_Broj,Rbr,DatAkt,DatPrest,Osn_Amor,Otpis_pret, Miruvanje)
  124870.                     VALUES (@wInvBr,1,@wDatAkt, @wDat,@wOsnDogr,0,'M')
  124871.                 ELSE
  124872.                     UPDATE #Tmp2AmorPresm SET DatPrest=@wDat WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt1
  124873.             End
  124874.         ELSE
  124875.             Begin
  124876.                 SET @wKlkA = @wKlkA + 1
  124877.                 SET @wDatAkt1 = @wDat
  124878.                 INSERT INTO #Tmp2AmorPresm (Inv_Broj,Rbr,DatAkt,DatPrest,Osn_Amor,Otpis_pret, Miruvanje)
  124879.                 VALUES (@wInvBr,1,@wDat, @wDatPrest,@wOsnDogr,0, 'A')
  124880.             End
  124881.         Fetch Next From Tabela1 Into @wDat, @wSto
  124882.     End
  124883.     Close Tabela1
  124884.     Deallocate Tabela1
  124885.  
  124886.         SET @PrvoStGod=0
  124887.         SET @ImaOvaaGod=0
  124888.         Declare Tabela2 Cursor Fast_Forward For
  124889.             Select DatAkt, DatPrest, Miruvanje From #Tmp2AmorPresm WHERE Inv_Broj=@wInvBr ORDER BY DatAkt DESC
  124890.         Open Tabela2
  124891.         Fetch Next From Tabela2 Into  @wDatAkt, @wDatPrest, @wSto
  124892.         While @@Fetch_Status = 0
  124893.         Begin        
  124894.              IF @wDatAkt >= @PocDatGod
  124895.             Begin
  124896.                 INSERT INTO #TmpAmorPresm SELECT * FROM #Tmp2AmorPresm WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt
  124897.                 IF @ImaOvaaGod=1 UPDATE #TmpAmorPresm SET Rbr=5 WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt  
  124898.                 SET @ImaOvaaGod=1
  124899.             End
  124900.             ELSE
  124901.             Begin
  124902.                 IF @PrvoStGod=0 AND @ImaOvaaGod=0 AND ((@wDatPrest IS NULL AND @wSto='A') OR (@wDatPrest IS NOT NULL AND (@wSto='M' OR @wDatPrest>=@PocDatGod)))
  124903.                 Begin
  124904.                     INSERT INTO #TmpAmorPresm SELECT * FROM #Tmp2AmorPresm WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt
  124905.                 End
  124906.                 SET @PrvoStGod=1            
  124907.             End
  124908.             Fetch Next From Tabela2 Into @wDatAkt, @wDatPrest, @wSto
  124909.         End
  124910.         Close Tabela2
  124911.         Deallocate Tabela2
  124912.     
  124913. Fetch Next From TabDogr Into @wInvBr, @wDatAkt, @wDatPrest, @wOsnDogr
  124914. End
  124915. Close TabDogr
  124916. Deallocate TabDogr
  124917. --kraj so komplikacija dogradbi...........
  124918.  
  124919. --kr.03.06.09
  124920. --select * from #TmpAmorPresm
  124921.  
  124922.     UPDATE #TmpAmorPresm SET Osn_Amor = S.Osn_Amor, Otpis_Pret = S.Otpis_Pret 
  124923.     FROM PocSostOsn S WHERE S.Inv_Broj = #TmpAmorPresm.Inv_Broj AND S.Godina = @GodPresm AND #TmpAmorPresm.Rbr=0
  124924.  
  124925.     UPDATE #TmpAmorPresm SET Osn_Amor = S.Osn_Amor, Otpis_Pret = S.Otpis_Pret 
  124926.     FROM StavOsnSred S WHERE S.Inv_Broj = #TmpAmorPresm.Inv_Broj AND
  124927.     S.Delov_God = @GodPresm AND S.Tip_StaOsn ='P' AND (#TmpAmorPresm.Osn_Amor IS NULL OR #TmpAmorPresm.Osn_Amor=0) AND #TmpAmorPresm.Rbr=0
  124928.  
  124929.     UPDATE #TmpAmorPresm SET Stapka_Amor = AmorGrp.Stapka FROM OsnSred, AmorGrp
  124930.     WHERE #TmpAmorPresm.Inv_Broj = OsnSred.Inv_Broj AND OsnSred.Sifra_Amor = AmorGrp.Sifra_Amor
  124931.  
  124932.     UPDATE #TmpAmorPresm SET PocDatAmor = dbo.fn_VratiPrvDatumSledenMes (DatAkt, @GodPresm)
  124933.     UPDATE #TmpAmorPresm SET KrDatAmor = dbo.fn_NapraviDatum (@GodPresm+1, 1, 1) WHERE DatPrest IS NULL
  124934.     UPDATE #TmpAmorPresm SET KrDatAmor = dbo.fn_VratiDatumOdDo (year(DatPrest), month(DatPrest), 31) WHERE DatPrest IS NOT NULL
  124935.     UPDATE #TmpAmorPresm SET PocDatKumul = PocDatAmor WHERE PocDatAmor > @PocDatGod
  124936.     UPDATE #TmpAmorPresm SET PocDatKumul = @PocDatGod WHERE PocDatAmor <= @PocDatGod
  124937.     UPDATE #TmpAmorPresm SET KrDatKumul = KrDatAmor      WHERE KrDatAmor < @KrDat
  124938.     UPDATE #TmpAmorPresm SET KrDatKumul = @KrDat      WHERE KrDatAmor >= @KrDat
  124939.     UPDATE #TmpAmorPresm SET PocDatDoPer = PocDatAmor WHERE PocDatAmor > @PocDatGod
  124940.     UPDATE #TmpAmorPresm SET PocDatDoPer = @PocDatGod WHERE PocDatAmor <= @PocDatGod
  124941.     UPDATE #TmpAmorPresm SET KrDatDoPer = KrDatAmor   WHERE KrDatAmor < DateAdd(day, -1, @PocDat)
  124942.     UPDATE #TmpAmorPresm SET KrDatDoPer = DateAdd(day, -1, @PocDat) WHERE KrDatAmor >= DateAdd(day, -1, @PocDat)
  124943. --select * from #tmpamorpresm
  124944.     UPDATE #TmpAmorPresm SET AmortKumul = dbo.fn_PresmAmor (PocDatKumul, KrDatKumul, Osn_Amor, Stapka_Amor, Otpis_Pret)
  124945.     UPDATE #TmpAmorPresm SET AmortPer = dbo.fn_PresmAmor (PocDatDoPer, KrDatDoPer, Osn_Amor, Stapka_Amor, Otpis_Pret)
  124946.     --IF @ImaDelumenOtpis='D'        --dod.17.02.07 , trgnat if na 03.06
  124947.     --Begin
  124948.         UPDATE #TmpAmorPresm SET AmortKumul = dbo.fn_PresmAmor (PocDatKumul, KrDatKumul, Osn_Amor*-1, Stapka_Amor, Otpis_Pret)*-1 WHERE Rbr=1 AND Osn_Amor<0
  124949.         UPDATE #TmpAmorPresm SET AmortPer = dbo.fn_PresmAmor (PocDatDoPer, KrDatDoPer, Osn_Amor*-1, Stapka_Amor, Otpis_Pret)*-1 WHERE Rbr=1 AND Osn_Amor<0
  124950.     --End
  124951.     UPDATE #TmpAmorPresm SET Rashodovano = 'N'
  124952.     UPDATE #TmpAmorPresm SET Rashodovano = 'R' WHERE Inv_Broj IN (Select Inv_Broj From StavOsnSred Where Tip_StaOsn='Q' And Datum_Dok<@KrDat)
  124953.  
  124954.  
  124955. UPDATE #TmpAmorPresm SET Osn_Amor=0, Otpis_Pret=0 WHERE Rbr=4 --ova za da ne se sobira vo izv.poveke pati ista osnovica,otis
  124956. UPDATE #TmpAmorPresm SET Osn_Amor=0, Otpis_Pret=0 WHERE Rbr=5
  124957. --select * from #TmpAmorPresm
  124958. IF @Za_Prenos = 'D'
  124959.     SELECT T.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok,O.Sifra_Rab,O.Orig_Nab_Vr,
  124960.     SUM(T.Osn_Amor) Osn_Amor, SUM(T.Otpis_Pret+T.AmortKumul - T.AmortPer) Otpis_Pret, T.Rashodovano
  124961.      FROM #TmpAmorPresm T 
  124962.     INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  124963.     WHERE (T.DatPrest IS NULL OR Year(T.DatPrest)>@GodPresm Or T.Miruvanje='M') 
  124964.     GROUP BY T.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok,O.Sifra_Rab,O.Orig_Nab_Vr, T.Rashodovano
  124965.     ORDER BY T.Inv_Broj
  124966. ELSE IF @Za_Prenos='I'
  124967.     SELECT @Osn_Amor=SUM(Osn_Amor), @Otpis = SUM(Otpis_Pret+AmortKumul - AmortPer) FROM #TmpAmorPresm
  124968. ELSE IF @Za_Prenos='K'
  124969. Begin
  124970.     IF @KnizPo IS NULL OR @KnizPo=''
  124971.         SELECT O.Kto_Anal, SUM(T.AmortKumul - T.AmortPer) Izn_Amor           -- T.Rashodovano?
  124972.          FROM #TmpAmorPresm T 
  124973.         INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  124974.         WHERE (T.DatPrest IS NULL OR Year(T.DatPrest)>@GodPresm Or T.Miruvanje='M') 
  124975.         GROUP BY O.Kto_Anal    ORDER BY O.Kto_Anal  
  124976.     ELSE IF @KnizPo ='MI' 
  124977.         SELECT MI.Sifra_OE_Kniz Sifra_OE, O.Kto_Anal, SUM(T.AmortKumul - T.AmortPer) Izn_Amor           
  124978.          FROM #TmpAmorPresm T 
  124979.         INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  124980.         LEFT OUTER JOIN MikroLok MI ON O.Sifra_MikLok=MI.Sifra_MikLok
  124981.         WHERE (T.DatPrest IS NULL OR Year(T.DatPrest)>@GodPresm Or T.Miruvanje='M') 
  124982.         GROUP BY O.Kto_Anal, MI.Sifra_OE_Kniz ORDER BY O.Kto_Anal, MI.Sifra_OE_Kniz  
  124983.     ELSE IF @KnizPo ='MA' 
  124984.         SELECT MA.Sifra_OE_Kniz Sifra_OE, O.Kto_Anal, SUM(T.AmortKumul - T.AmortPer) Izn_Amor           
  124985.          FROM #TmpAmorPresm T 
  124986.         INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  124987.         LEFT OUTER JOIN MikroLok MI ON O.Sifra_MikLok=MI.Sifra_MikLok
  124988.         LEFT OUTER JOIN MakroLok MA ON MA.Sifra_MakLok=MI.Sifra_MakLok
  124989.         WHERE (T.DatPrest IS NULL OR Year(T.DatPrest)>@GodPresm Or T.Miruvanje='M') 
  124990.         GROUP BY O.Kto_Anal, MA.Sifra_OE_Kniz ORDER BY O.Kto_Anal, MA.Sifra_OE_Kniz   
  124991.     ELSE IF @KnizPo ='L' 
  124992.         SELECT L.Sifra_OE_Kniz Sifra_OE, O.Kto_Anal, SUM(T.AmortKumul - T.AmortPer) Izn_Amor           
  124993.          FROM #TmpAmorPresm T 
  124994.         INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  124995.         LEFT OUTER JOIN MikroLok MI ON O.Sifra_MikLok=MI.Sifra_MikLok
  124996.         LEFT OUTER JOIN MakroLok MA ON MA.Sifra_MakLok=MI.Sifra_MakLok
  124997.         LEFT OUTER JOIN Lokacija L ON L.Sifra_Lok=MA.Sifra_Lok
  124998.         WHERE (T.DatPrest IS NULL OR Year(T.DatPrest)>@GodPresm Or T.Miruvanje='M') 
  124999.         GROUP BY O.Kto_Anal, L.Sifra_OE_Kniz ORDER BY O.Kto_Anal, L.Sifra_OE_Kniz
  125000.     ELSE IF @KnizPo ='D' 
  125001.         SELECT O.Sifra_Div, O.Sifra_TrosM, O.Sifra_TrosV, O.Kto_Anal, SUM(T.AmortKumul - T.AmortPer) Izn_Amor           
  125002.          FROM #TmpAmorPresm T 
  125003.         INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  125004.         LEFT OUTER JOIN MikroLok MI ON O.Sifra_MikLok=MI.Sifra_MikLok
  125005.         WHERE (T.DatPrest IS NULL OR Year(T.DatPrest)>@GodPresm Or T.Miruvanje='M') 
  125006.         GROUP BY O.Kto_Anal, O.Sifra_Div, O.Sifra_TrosM, O.Sifra_TrosV    ORDER BY O.Kto_Anal, O.Sifra_Div, O.Sifra_TrosM, O.Sifra_TrosV   
  125007. End
  125008. ELSE                                                    --do22.06.09 bese O.DatPrest
  125009. Begin 
  125010.     UPDATE #TmpAmorPresm SET Sifra_Kup = D.Sifra_Kup From DokOsnSred D Inner Join StavOsnSred S On S.DokOID=D.DokOID Where S.Inv_Broj=#TmpAmorPresm.Inv_Broj And D.Tip_StaOsn in ('P','I')
  125011.  
  125012.     SELECT O.Inv_Broj, O.Ime, O.Opis, O.Kto_Anal, T.Stapka_Amor, O.DatAkt DatAktOE, T.DatPrest, T.Osn_Amor, T.Otpis_Pret,
  125013.          T.AmortKumul - T.AmortPer AmortPer, T.AmortKumul, O.Sifra_Amor, A.Ime ImeAmor, O.Sifra_MikLok, MI.Ime_MikLok, 
  125014.          MA.Sifra_MakLok, MA.Ime_MakLok, L.Sifra_Lok, L.ImeLok, O.BarKod, T.DatAkt, DateDiff(month, PocDatKumul, KrDatKumul)+1 BrMes, T.Rashodovano,
  125015.         D.Sifra_Div, D.ImeDiv, TM.Sifra_TrosM, TM.ImeTrosM, TV.Sifra_TrosV, TV.ImeTrosV, AA.ImeAnal, O.Sifra_Rab, Rab.ImeRab, T.Sifra_Kup, Kup.ImeKup
  125016.     FROM #TmpAmorPresm T 
  125017.     INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  125018.     INNER JOIN AmorGrp A ON A.Sifra_Amor = O.Sifra_Amor 
  125019.     LEFT OUTER JOIN MikroLok MI ON O.Sifra_MikLok = MI.Sifra_MikLok
  125020.     LEFT OUTER JOIN MakroLok MA ON MI.Sifra_MakLok = MA.Sifra_MakLok
  125021.     LEFT OUTER JOIN Lokacija L ON MA.Sifra_Lok = L.Sifra_Lok 
  125022.     LEFT OUTER JOIN Divizii D ON O.Sifra_Div=D.Sifra_Div
  125023.     LEFT OUTER JOIN TrosokMesto TM ON O.Sifra_TrosM = TM.Sifra_TrosM    
  125024.     LEFT OUTER JOIN TrosokVid TV ON O.Sifra_TrosV = TV.Sifra_TrosV
  125025.     LEFT OUTER JOIN Anal AA ON O.Kto_Anal = AA.Kto_Anal 
  125026.     LEFT OUTER JOIN Rabotnik Rab On Rab.Sifra_Rab=O.Sifra_Rab
  125027.     LEFT OUTER JOIN Komint Kup On Kup.Sifra_Kup = T.Sifra_Kup 
  125028.     ORDER BY O.Inv_Broj, O.DatAkt
  125029.  
  125030. End
  125031.  
  125032. ---select * from #TmpAmorPresm
  125033.  
  125034.  
  125035.  
  125036.  
  125037.  
  125038.  
  125039. Go
  125040. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_presmkamata]'))
  125041. drop procedure [dbo].[sp_presmkamata]
  125042.  
  125043. Go
  125044.  
  125045.  
  125046.  
  125047. CREATE    PROCEDURE sp_PresmKamata
  125048.     @Broj_KLista    int,
  125049.     @Sifra_Kup    char(6) Output,
  125050.      @ImeKup    char(40) Output,
  125051.     @Adresa    char(40) Output,
  125052.     @SMesto    char(20) Output,
  125053.     @Posta        char(10) Output,
  125054.     @Ziro        varchar(35) Output,
  125055.     @Banka    varchar(30) Output,
  125056.     @Telefon    varchar(20) Output,
  125057.     @Danocen    varchar(15) Output,
  125058.     @Datum_Kli    smalldatetime Output
  125059. AS
  125060.     Declare @Datum_Kam as smalldatetime
  125061. --------------------- dodadeno 16.09.04
  125062.     Select @Sifra_Kup=K.Sifra_Kup, @ImeKup=K.ImeKup, @Adresa=K.Adresa, @SMesto=K.SMesto, @Posta=K.Posta,
  125063.         @Ziro=K.Ziro, @Banka=K.Banka, @Telefon=K.Telefon, @Danocen=K.Danocen, @Datum_Kli=Datum_Kli
  125064.     From KListaD D
  125065.     Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  125066.     Where D.Broj=@Broj_KLista 
  125067. ----------------------------------------------------
  125068.     CREATE TABLE #KamSt
  125069. (    DatumOd    smalldatetime,
  125070.     DatumDo    smalldatetime,
  125071.     Stapka        decimal(18,6)
  125072. )    
  125073.     INSERT INTO #KamSt (DatumOd, Stapka) SELECT Datum_Od, God_Real_St FROM KStapki
  125074.     Declare @Datum_Od smalldatetime
  125075.     Declare @Datum_Od1 smalldatetime
  125076.     Declare @Datum_Do smalldatetime
  125077.     SET @Datum_Do = null
  125078.     SET @Datum_Od1 = null
  125079.     Declare KS Cursor Fast_Forward For
  125080.         Select DatumOd From #KamSt
  125081.     Open KS
  125082.     Fetch Next From KS Into @Datum_Od
  125083.     While @@Fetch_Status = 0
  125084.     Begin            
  125085.         SET @Datum_Do = DateAdd(day, -1, @Datum_Od)
  125086.         UPDATE #KamSt SET DatumDo = @Datum_Do WHERE DatumOd = @Datum_Od1
  125087.         SET @Datum_Od1 = @Datum_Od
  125088.         Fetch Next From KS Into @Datum_Od
  125089.     End
  125090.     Close KS
  125091.     Deallocate KS
  125092.     Select @Datum_Kam=Max(Datum_Kam)
  125093.     From KLista D
  125094.     Where D.Broj=@Broj_KLista 
  125095.     If @Datum_Kam < GetDate()
  125096.         Set @Datum_Kam=GetDate()
  125097.     UPDATE #KamSt SET DatumDo = @Datum_Kam  WHERE DatumDo IS NULL
  125098.     CREATE TABLE #TmpPer
  125099. (    Datum_Od    smalldatetime,
  125100.     Datum_Do    smalldatetime,
  125101.     InicOsn        char(1),
  125102.     Stapka        decimal(18,6)
  125103. )
  125104.     CREATE TABLE #TmpKL
  125105. (    KLisID        int,
  125106.     Broj_dok    varchar(45),
  125107.     Iznos        decimal(18,6),
  125108.     Datum_Fakt    smalldatetime,
  125109.     Datum_Dosp    smalldatetime,
  125110.     Datum_Kam    smalldatetime,
  125111.     Datum_Od    smalldatetime,
  125112.     Dena        smallint,
  125113.     KStapka    decimal(18,6),
  125114.     Koef        decimal(18,6),
  125115.     Osnovica    decimal(18,6),
  125116.     Kamata        decimal(18,6)
  125117. )
  125118.     Declare @DenPoc As Integer, @MesecPoc As Integer, @GodPoc As Integer
  125119.     Declare @TekDen As Integer, @TekMesec As Integer, @TekGod As Integer
  125120.     Declare @PomDatOd smalldatetime, @PomDatDo smalldatetime, @InicOsn as char(1)
  125121.     Declare @KamDatOd smalldatetime, @KamDatDo smalldatetime, @KamSt as decimal(18,6)
  125122.     Declare @DatFakt smalldatetime, @Rok as integer, @DatDosp smalldatetime, @DatKam as smalldatetime
  125123.     Declare @IznZaKam decimal(18,6), @BrFak as varchar(15), @Ekster as varchar(25), @KLisID int
  125124.     Declare @DenProv smallint
  125125.     Declare Stavki Cursor Fast_Forward For
  125126.         Select KLisID, Datum_Kam, Iznos, Datum_fakt, Rok_Dosp, Identif_br, Ekster From KLista WHERE Broj = @Broj_KLista
  125127.     Open Stavki
  125128.     Fetch Next From Stavki Into @KLisID, @DatKam, @IznZaKam, @DatFakt, @Rok, @BrFak, @Ekster
  125129.     While @@Fetch_Status = 0
  125130.     Begin            
  125131.         DELETE FROM #TmpPer
  125132. ---Odreduvame Periodi, Stapki i dali se inicira iznosot
  125133.         SET @DatDosp = DateAdd(day, @Rok, @DatFakt)
  125134.         SET @Datum_Od = DateAdd(day, @Rok + 1, @DatFakt)
  125135.         SET @Datum_Do = @DatKam
  125136.         SET @DenPoc = Day(@Datum_Od)
  125137.         SET @MesecPoc = Month(@Datum_Od)
  125138.         SET @GodPoc = Year(@Datum_Od)
  125139.         While @Datum_Od <= @Datum_Do  -- bese samo "<" G.K
  125140.         Begin
  125141.             SET @TekDen = 1 
  125142.             SET @TekMesec = Month(@Datum_Od)
  125143.             SET @TekGod = Year(@Datum_Od)
  125144.             If @TekGod = @GodPoc  AND @TekMesec = @MesecPoc And Day(@Datum_Od) < @DenPoc
  125145.                 SET @TekMesec = @TekMesec
  125146.             Else
  125147.                 SET @TekMesec = @TekMesec + 1
  125148.             If @TekMesec = 13 
  125149.                 Begin
  125150.                 SET @TekMesec = 12
  125151.                 SET @TekDen = 31
  125152.                 SET @PomDatDo = dbo.fn_NapraviDatum( @TekGod, @TekMesec, @TekDen)
  125153.                 SELECT @KamDatOd=DatumOd, @KamDatDo=DatumDo, @KamSt=Stapka             ---
  125154.                 FROM  #KamSt WHERE DatumOd <= @Datum_Od AND DatumDo >= @Datum_Od    ---
  125155.                 If @KamDatDo IS NOT NULL AND @PomDatDo >= @KamDatDo                 ---
  125156.                     SET @PomDatDo = @KamDatDo                                        ---
  125157.                 End
  125158.             Else
  125159.                 Begin
  125160.                 SET @PomDatDo = dbo.fn_NapraviDatum( @TekGod, @TekMesec, @TekDen)
  125161.                 SET @PomDatDo = DateAdd(day, -1, @PomDatDo)
  125162.                 SELECT @KamDatOd=DatumOd, @KamDatDo=DatumDo, @KamSt=Stapka 
  125163.                 FROM  #KamSt WHERE DatumOd <= @Datum_Od AND DatumDo >= @Datum_Od
  125164.                 If @KamDatDo IS NOT NULL AND @PomDatDo >= @KamDatDo 
  125165.                     SET @PomDatDo = @KamDatDo
  125166.                 End 
  125167.             If @PomDatDo > @Datum_Do  SET @PomDatDo = @Datum_Do
  125168.             If Month(@PomDatDo) = @MesecPoc --And Year(@PomDatDo) > @GodPoc 
  125169.             Begin
  125170.                 If Day(@PomDatDo) > @DenPoc And Day(@Datum_Od) < @DenPoc 
  125171.                     Set @PomDatDo = dbo.fn_NapraviDatum(@TekGod, @MesecPoc, @DenPoc-1)
  125172.                 Else If Day(@Datum_Od) = @DenPoc
  125173.                     SET @InicOsn = 'D'
  125174.                 Else 
  125175.                     SET @InicOsn = 'N'
  125176.                 SELECT @KamDatOd=DatumOd, @KamDatDo=DatumDo, @KamSt=Stapka 
  125177.                 FROM  #KamSt 
  125178.                 WHERE DatumOd <= @Datum_Od AND DatumDo >= @Datum_Od
  125179.                 If @KamDatDo IS NOT NULL AND @PomDatDo >= @KamDatDo 
  125180.                     SET @PomDatDo = @KamDatDo
  125181.             End
  125182.             Else
  125183.                 SET @InicOsn = 'N'
  125184. --print cast(@Datum_Od as varchar(35)) +' '+ cast(@PomDatDo as varchar(35)) +' '+ cast(@InicOsn  as varchar(35)) +' '+ cast( @KamSt as varchar(35))
  125185.             INSERT INTO #TmpPer (Datum_Od, Datum_Do, InicOsn, Stapka) 
  125186.             VALUES (@Datum_Od, @PomDatDo, @InicOsn, @KamSt)
  125187.             SET @Datum_Od = DateAdd(day, 1, @PomDatDo)
  125188.         End
  125189. --SEGA presmetuvame kamata
  125190.         Declare @Osnovica as decimal(18,6), @Kamata as decimal(18,6), @KoefP as decimal(18,6)
  125191.         Declare @DenPresm as smallint, @DenVoGod as smallint, @k as decimal(18,6)
  125192.         SET @Osnovica = @IznZaKam
  125193.         SET @Kamata = 0.0
  125194.         Declare KI Cursor Fast_Forward For
  125195.         Select Datum_Od, Datum_Do, InicOsn, Stapka From #TmpPer
  125196.         Open KI
  125197.         Fetch Next From KI Into @Datum_Od, @Datum_Do, @InicOsn, @KamSt
  125198.         While @@Fetch_Status = 0
  125199.         Begin            
  125200.             If @InicOsn = 'D' SET @Osnovica = @IznZaKam        
  125201.             SET @DenPresm = DateDiff(day, @Datum_od, @Datum_do) + 1
  125202.             SET @PomDatDo = dbo.fn_NapraviDatum(year(@Datum_Od), 12,31)
  125203.             SET @DenVoGod = DatePart(dy, @PomDatDo) 
  125204.             SET @k = round(cast(@DenPresm as decimal(8,2))/ cast(@DenVoGod as decimal(8,2)), 6)
  125205.             SET @KoefP = Round(Power((1 + @KamSt / 100),  @k) - 1, 6)
  125206.             SET @Kamata = Round((@KoefP * @Osnovica), 2)
  125207.             IF @Ekster IS NULL SET @Ekster=''
  125208.             INSERT INTO #TmpKL (KLisID,Broj_dok,Iznos,Datum_Fakt,Datum_Dosp,Datum_Kam,Datum_Od, Dena,KStapka,Koef,Osnovica,Kamata)
  125209.             VALUES (@KLisID, @BrFak+' '+@Ekster, @IznZaKam, @DatFakt, @DatDosp,@DatKam, @Datum_Od, @DenPresm,@KamSt,@KoefP,@Osnovica,@Kamata)
  125210.             SET @Osnovica = Round((@Osnovica + @Kamata), 2)
  125211.             Fetch Next From KI Into @Datum_Od, @Datum_Do, @InicOsn, @KamSt
  125212.         End
  125213.         Close KI
  125214.         Deallocate KI
  125215.         Fetch Next From Stavki Into @KLisID, @DatKam, @IznZaKam, @DatFakt, @Rok, @BrFak, @Ekster
  125216.     End
  125217.     Close Stavki
  125218.     Deallocate Stavki
  125219.     SELECT * FROM #TmpKL
  125220.  
  125221.  
  125222.  
  125223. Go
  125224. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_presmkamata_dekurzivna]'))
  125225. drop procedure [dbo].[sp_presmkamata_dekurzivna]
  125226.  
  125227. Go
  125228.  
  125229.  
  125230.  
  125231.  
  125232.  
  125233. CREATE      PROCEDURE sp_PresmKamata_Dekurzivna
  125234.     @Broj_KLista    int,
  125235.     @Zgolemuvanje    decimal(9,2) = 0,
  125236.     @Sifra_Kup    char(6) Output,
  125237.      @ImeKup    char(40) Output,
  125238.     @Adresa    char(40) Output,
  125239.     @SMesto    char(20) Output,
  125240.     @Posta        char(10) Output,
  125241.     @Ziro        varchar(35) Output,
  125242.     @Banka    varchar(30) Output,
  125243.     @Telefon    varchar(20) Output,
  125244.     @Danocen    varchar(15) Output,
  125245.     @Datum_Kli    smalldatetime Output
  125246. AS
  125247.     Declare @Datum_Kam as smalldatetime
  125248. --------------------- dodadeno 16.09.04
  125249.     Select @Sifra_Kup=K.Sifra_Kup, @ImeKup=K.ImeKup, @Adresa=K.Adresa, @SMesto=K.SMesto, @Posta=K.Posta,
  125250.         @Ziro=K.Ziro, @Banka=K.Banka, @Telefon=K.Telefon, @Danocen=K.Danocen, @Datum_Kli=Datum_Kli
  125251.     From KListaD D
  125252.     Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  125253.     Where D.Broj=@Broj_KLista 
  125254. ----------------------------------------------------
  125255.     CREATE TABLE #KamSt
  125256. (    DatumOd    smalldatetime,
  125257.     DatumDo    smalldatetime,
  125258.     Stapka        decimal(18,6)
  125259. )    
  125260.     INSERT INTO #KamSt (DatumOd, Stapka) SELECT Datum_Od, God_Real_St FROM KStapki --WHERE Datum_Od>='2010-01-01'
  125261.     Declare @Datum_Od smalldatetime
  125262.     Declare @Datum_Od1 smalldatetime
  125263.     Declare @Datum_Do smalldatetime
  125264.     SET @Datum_Do = null
  125265.     SET @Datum_Od1 = null
  125266.     Declare KS Cursor Fast_Forward For
  125267.         Select DatumOd From #KamSt
  125268.     Open KS
  125269.     Fetch Next From KS Into @Datum_Od
  125270.     While @@Fetch_Status = 0
  125271.     Begin            
  125272.         SET @Datum_Do = DateAdd(day, -1, @Datum_Od)
  125273.         UPDATE #KamSt SET DatumDo = @Datum_Do WHERE DatumOd = @Datum_Od1
  125274.         SET @Datum_Od1 = @Datum_Od
  125275.         Fetch Next From KS Into @Datum_Od
  125276.     End
  125277.     Close KS
  125278.     Deallocate KS
  125279.  
  125280.     Select @Datum_Kam=Max(Datum_Kam)
  125281.     From KLista D
  125282.     Where D.Broj=@Broj_KLista 
  125283.  
  125284.     If @Datum_Kam < GetDate()     Set @Datum_Kam=GetDate()
  125285.  
  125286.     UPDATE #KamSt SET DatumDo = @Datum_Kam  WHERE DatumDo IS NULL
  125287.  
  125288.     CREATE TABLE #TmpPer
  125289. (    Datum_Od    smalldatetime,
  125290.     Datum_Do    smalldatetime,
  125291.     InicOsn        char(1),
  125292.     Stapka        decimal(18,6)    
  125293. )
  125294.     Declare @DatFakt as smalldatetime, @DatKam as smalldatetime
  125295.     Declare @RokDosp as smallint
  125296.     Declare @Iznos as decimal(18,2)
  125297.     Select @DatFakt=Datum_Fakt, @DatKam=Datum_Kam, @RokDosp=Rok_Dosp, @Iznos=Iznos
  125298.     From Klista Where Broj = @Broj_KLista
  125299.  
  125300.     Declare @DatOd as smalldatetime, @DatDo as smalldatetime, @Stapka as decimal(9,2)
  125301.     
  125302.     Set @DatOd=@DatFakt+@RokDosp
  125303.     While @DatOd<=@DatKam
  125304.     Begin
  125305.         Select @DatDo=K.DatumDo, @Stapka=Stapka 
  125306.         From #KamSt K 
  125307.         Where K.DatumOd<=@DatOd And K.DatumDo>@DatOd
  125308.     
  125309.         If Year(@DatOd)<>Year(@DatDo)
  125310.             Set @DatDo = dbo.fn_NapraviDatum(Year(@DatOd), 12, 31)
  125311.  
  125312.         If @DatDo > @DatKam
  125313.             Set @DatDo=@DatKam
  125314.  
  125315.         Insert Into #TmpPer Values(@DatOd, @DatDo, 'D', @Stapka)
  125316.  
  125317.         Set @DatOd=DateAdd(day, 1, @DatDo)
  125318.     End    
  125319.     
  125320.     CREATE TABLE #TmpKL
  125321. (    KLisID        int,
  125322.     Broj_dok    varchar(45),
  125323.     Iznos        decimal(18,6),
  125324.     Datum_Fakt    smalldatetime,
  125325.     Datum_Dosp    smalldatetime,
  125326.     Datum_Kam    smalldatetime,
  125327.     Datum_Od    smalldatetime,
  125328.     Dena        smallint,
  125329.     KStapka    decimal(18,6),
  125330.     Koef        decimal(18,6),
  125331.     Osnovica    decimal(18,6),
  125332.     Kamata        decimal(18,6)
  125333. )
  125334.  
  125335.     Declare @Kamata as decimal(18,6)--, @KoefP as decimal(18,6)
  125336.     Declare @DenPresm as smallint, @DenVoGod as smallint, @k as decimal(18,6)
  125337.     Declare @PomDatDo as smalldatetime, @KamSt as decimal(18,6)
  125338.     Declare @IznZaKam as decimal(18,4), @KLisID as int, @BrFak as varchar(15), 
  125339.         @Ekster varchar(25), @DatDosp as smalldatetime
  125340.     
  125341.     SET @Kamata = 0.0
  125342.     
  125343.     Select @IznZaKam = Iznos, @KLisID=KLisID, @BrFak=Identif_br, @Ekster=Ekster, 
  125344.         @DatDosp=dateadd(day,Rok_Dosp,Datum_Fakt) From Klista Where Broj=@Broj_Klista
  125345.  
  125346.     If @Zgolemuvanje Is Null
  125347.         Set @Zgolemuvanje = 0
  125348.  
  125349.     Declare KI Cursor Fast_Forward For
  125350.     Select Datum_Od, Datum_Do, Stapka+@Zgolemuvanje From #TmpPer
  125351.     Open KI
  125352.     Fetch Next From KI Into @Datum_Od, @Datum_Do, @KamSt
  125353.     While @@Fetch_Status = 0
  125354.     Begin            
  125355.         SET @DenPresm = DateDiff(day, @Datum_od, @Datum_do) + 1
  125356.         SET @PomDatDo = dbo.fn_NapraviDatum(year(@Datum_Od), 12,31)
  125357.         SET @DenVoGod = DatePart(dy, @PomDatDo) 
  125358.  
  125359.         SET @k = round(cast(@DenPresm as decimal(8,2))/ (cast(@DenVoGod as decimal(8,2))*100), 6)
  125360.  
  125361.         Set @Kamata = Round((@IznZaKam * @K * @KamSt), 2)
  125362.  
  125363.         INSERT INTO #TmpKL (KLisID,Broj_dok,Iznos,Datum_Fakt,Datum_Dosp,Datum_Kam,Datum_Od, Dena,KStapka,Koef,Osnovica,Kamata)
  125364.         VALUES (@KLisID, @BrFak+' '+@Ekster, @IznZaKam, @DatFakt, @DatDosp, @DatKam, @Datum_Od, @DenPresm,@KamSt,0,@IznZaKam,@Kamata)
  125365.         Fetch Next From KI Into @Datum_Od, @Datum_Do, @KamSt
  125366.     End
  125367.     Close KI
  125368.     Deallocate KI
  125369.  
  125370.     SELECT * FROM #TmpKL
  125371.  
  125372.  
  125373. Go
  125374. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_presmkamatakomb]'))
  125375. drop procedure [dbo].[sp_presmkamatakomb]
  125376.  
  125377. Go
  125378.  
  125379.  
  125380.  
  125381.  
  125382. CREATE      PROCEDURE sp_PresmKamataKomb
  125383.     @Broj_KLista    int,
  125384.     @Zgolemuvanje    decimal(9,2) = 10,
  125385.     @Sifra_Kup    char(6) Output,
  125386.      @ImeKup    char(40) Output,
  125387.     @Adresa    char(40) Output,
  125388.     @SMesto    char(20) Output,
  125389.     @Posta        char(10) Output,
  125390.     @Ziro        varchar(35) Output,
  125391.     @Banka    varchar(30) Output,
  125392.     @Telefon    varchar(20) Output,
  125393.     @Danocen    varchar(15) Output,
  125394.     @Datum_Kli    smalldatetime Output
  125395. AS
  125396.     Declare @Datum_Kam as smalldatetime
  125397. --------------------- dodadeno 16.09.04
  125398.     Select @Sifra_Kup=K.Sifra_Kup, @ImeKup=K.ImeKup, @Adresa=K.Adresa, @SMesto=K.SMesto, @Posta=K.Posta,
  125399.         @Ziro=K.Ziro, @Banka=K.Banka, @Telefon=K.Telefon, @Danocen=K.Danocen, @Datum_Kli=Datum_Kli
  125400.     From KListaD D
  125401.     Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  125402.     Where D.Broj=@Broj_KLista 
  125403. ----------------------------------------------------
  125404.     CREATE TABLE #KamSt
  125405. (    DatumOd    smalldatetime,
  125406.     DatumDo    smalldatetime,
  125407.     Stapka        decimal(18,6)
  125408. )    
  125409.     INSERT INTO #KamSt (DatumOd, Stapka) SELECT Datum_Od, God_Real_St FROM KStapki
  125410.     Declare @Datum_Od smalldatetime
  125411.     Declare @Datum_Od1 smalldatetime
  125412.     Declare @Datum_Do smalldatetime
  125413.     SET @Datum_Do = null
  125414.     SET @Datum_Od1 = null
  125415.     Declare KS Cursor Fast_Forward For
  125416.         Select DatumOd From #KamSt
  125417.     Open KS
  125418.     Fetch Next From KS Into @Datum_Od
  125419.     While @@Fetch_Status = 0
  125420.     Begin            
  125421.         SET @Datum_Do = DateAdd(day, -1, @Datum_Od)
  125422.         UPDATE #KamSt SET DatumDo = @Datum_Do WHERE DatumOd = @Datum_Od1
  125423.         SET @Datum_Od1 = @Datum_Od
  125424.         Fetch Next From KS Into @Datum_Od
  125425.     End
  125426.     Close KS
  125427.     Deallocate KS
  125428.  
  125429.     Select @Datum_Kam=Max(Datum_Kam) From KLista D Where D.Broj=@Broj_KLista 
  125430.     If @Datum_Kam < GetDate()     Set @Datum_Kam=GetDate()
  125431.     UPDATE #KamSt SET DatumDo = @Datum_Kam  WHERE DatumDo IS NULL
  125432.  
  125433.     CREATE TABLE #TmpPer
  125434. (    Datum_Od    smalldatetime,
  125435.     Datum_Do    smalldatetime,
  125436.     InicOsn        char(1),
  125437.     Stapka        decimal(18,6))
  125438.  
  125439.     CREATE TABLE #TmpKL
  125440. (    KLisID        int,
  125441.     Broj_dok    varchar(45),
  125442.     Iznos        decimal(18,6),
  125443.     Datum_Fakt    smalldatetime,
  125444.     Datum_Dosp    smalldatetime,
  125445.     Datum_Kam    smalldatetime,
  125446.     Datum_Od    smalldatetime,
  125447.     Dena        smallint,
  125448.     KStapka    decimal(18,6),
  125449.     Koef        decimal(18,6),
  125450.     Osnovica    decimal(18,6),
  125451.     Kamata        decimal(18,6))
  125452.  
  125453.     Declare @DenPoc As Integer, @MesecPoc As Integer, @GodPoc As Integer
  125454.     Declare @TekDen As Integer, @TekMesec As Integer, @TekGod As Integer
  125455.     Declare @PomDatOd smalldatetime, @PomDatDo smalldatetime, @InicOsn as char(1)
  125456.     Declare @KamDatOd smalldatetime, @KamDatDo smalldatetime, @KamSt as decimal(18,6)
  125457.     Declare @DatFakt smalldatetime, @Rok as integer, @DatDosp smalldatetime, @DatKam as smalldatetime
  125458.     Declare @IznZaKam decimal(18,6), @BrFak as varchar(15), @Ekster as varchar(25), @KLisID int
  125459.     Declare @DenProv smallint
  125460.     Declare Stavki Cursor Fast_Forward For
  125461.         Select KLisID, Datum_Kam, Iznos, Datum_fakt, Rok_Dosp, Identif_br, Ekster From KLista WHERE Broj = @Broj_KLista
  125462.     Open Stavki
  125463.     Fetch Next From Stavki Into @KLisID, @DatKam, @IznZaKam, @DatFakt, @Rok, @BrFak, @Ekster
  125464.     While @@Fetch_Status = 0
  125465.     Begin            
  125466.         DELETE FROM #TmpPer
  125467. ---Odreduvame Periodi, Stapki i dali se inicira iznosot
  125468.         SET @DatDosp = DateAdd(day, @Rok, @DatFakt)
  125469.         SET @Datum_Od = DateAdd(day, @Rok + 1, @DatFakt)
  125470.         SET @Datum_Do = @DatKam
  125471.  
  125472.          --IF @DatKam>'2009-12-31' SET @Datum_Do='2009-12-31'        -----------------------------------
  125473.          IF @DatKam>'2010-01-31' SET @Datum_Do='2010-01-31'        -----------------------------------  GK 07.07.10
  125474.  
  125475.         SET @DenPoc = Day(@Datum_Od)
  125476.         SET @MesecPoc = Month(@Datum_Od)
  125477.         SET @GodPoc = Year(@Datum_Od)
  125478.         While @Datum_Od <= @Datum_Do  -- bese samo "<" G.K
  125479.         Begin
  125480.              SET @TekDen = 1 
  125481.             SET @TekMesec = Month(@Datum_Od)
  125482.             SET @TekGod = Year(@Datum_Od)
  125483.             If @TekGod = @GodPoc  AND @TekMesec = @MesecPoc And Day(@Datum_Od) < @DenPoc
  125484.                 SET @TekMesec = @TekMesec
  125485.             Else
  125486.                 SET @TekMesec = @TekMesec + 1
  125487.             If @TekMesec = 13 
  125488.                 Begin
  125489.                 SET @TekMesec = 12
  125490.                 SET @TekDen = 31
  125491.                 SET @PomDatDo = dbo.fn_NapraviDatum( @TekGod, @TekMesec, @TekDen)
  125492.                 SELECT @KamDatOd=DatumOd, @KamDatDo=DatumDo, @KamSt=Stapka             ---
  125493.                 FROM  #KamSt WHERE DatumOd <= @Datum_Od AND DatumDo >= @Datum_Od    ---
  125494.                 If @KamDatDo IS NOT NULL AND @PomDatDo >= @KamDatDo                 ---
  125495.                     SET @PomDatDo = @KamDatDo                                        ---
  125496.                 End
  125497.             Else
  125498.                 Begin
  125499.                 SET @PomDatDo = dbo.fn_NapraviDatum( @TekGod, @TekMesec, @TekDen)
  125500.                 SET @PomDatDo = DateAdd(day, -1, @PomDatDo)
  125501.                 SELECT @KamDatOd=DatumOd, @KamDatDo=DatumDo, @KamSt=Stapka 
  125502.                 FROM  #KamSt WHERE DatumOd <= @Datum_Od AND DatumDo >= @Datum_Od
  125503.                 If @KamDatDo IS NOT NULL AND @PomDatDo >= @KamDatDo 
  125504.                     SET @PomDatDo = @KamDatDo
  125505.                 End 
  125506.             If @PomDatDo > @Datum_Do  SET @PomDatDo = @Datum_Do
  125507.             If Month(@PomDatDo) = @MesecPoc --And Year(@PomDatDo) > @GodPoc 
  125508.             Begin
  125509.                 If Day(@PomDatDo) > @DenPoc And Day(@Datum_Od) < @DenPoc 
  125510.                     Set @PomDatDo = dbo.fn_NapraviDatum(@TekGod, @MesecPoc, @DenPoc-1)
  125511.                 Else If Day(@Datum_Od) = @DenPoc
  125512.                     SET @InicOsn = 'D'
  125513.                 Else 
  125514.                     SET @InicOsn = 'N'
  125515.                 SELECT @KamDatOd=DatumOd, @KamDatDo=DatumDo, @KamSt=Stapka 
  125516.                 FROM  #KamSt 
  125517.                 WHERE DatumOd <= @Datum_Od AND DatumDo >= @Datum_Od
  125518.                 If @KamDatDo IS NOT NULL AND @PomDatDo >= @KamDatDo 
  125519.                     SET @PomDatDo = @KamDatDo
  125520.             End
  125521.             Else
  125522.                 SET @InicOsn = 'N'
  125523.             INSERT INTO #TmpPer (Datum_Od, Datum_Do, InicOsn, Stapka) 
  125524.             VALUES (@Datum_Od, @PomDatDo, @InicOsn, @KamSt)
  125525.             SET @Datum_Od = DateAdd(day, 1, @PomDatDo)
  125526.         End
  125527.     --sega po nov metod od 01.02.2010
  125528.         --IF @DatKam>'2009-12-31'
  125529.         IF @DatKam>'2010-01-31'   -- GK 07.07.10
  125530.         Begin
  125531.             ---Set @Datum_Od='2010-01-01'
  125532.  
  125533.             While @Datum_Od<=@DatKam
  125534.             Begin
  125535.                 Select @Datum_Do=K.DatumDo, @KamSt=Stapka From #KamSt K Where K.DatumOd<=@Datum_Od And K.DatumDo>=@Datum_Od  -- GK 25.08.2010 Bese > i zezasse na preodni periodi
  125536.             
  125537.                 If Year(@Datum_Od)<>Year(@Datum_Do) Set @Datum_Do = dbo.fn_NapraviDatum(Year(@Datum_Od), 12, 31)
  125538.                 If @Datum_Do > @DatKam Set @Datum_Do=@DatKam
  125539.                 Insert Into #TmpPer Values(@Datum_Od, @Datum_Do, 'D', @KamSt)
  125540.                 Set @Datum_Od=DateAdd(day, 1, @Datum_Do)
  125541.             End    
  125542.         End  
  125543. --SEGA presmetuvame kamata
  125544.         Declare @Osnovica as decimal(18,6), @Kamata as decimal(18,6), @KoefP as decimal(18,6)
  125545.         Declare @DenPresm as smallint, @DenVoGod as smallint, @k as decimal(18,6)
  125546.         SET @Osnovica = @IznZaKam
  125547.         SET @Kamata = 0.0
  125548.         Declare KI Cursor Fast_Forward For
  125549.         Select Datum_Od, Datum_Do, InicOsn, Stapka From #TmpPer ORDER BY Datum_Od
  125550.         Open KI
  125551.         Fetch Next From KI Into @Datum_Od, @Datum_Do, @InicOsn, @KamSt
  125552.         While @@Fetch_Status = 0
  125553.         Begin            
  125554.             --IF @Datum_Od < '2010-01-01' 
  125555.             IF @Datum_Od < '2010-02-01'  --GK 07.07.10
  125556.             BEGIN
  125557.                 If @InicOsn = 'D' SET @Osnovica = @IznZaKam        
  125558.                 SET @DenPresm = DateDiff(day, @Datum_od, @Datum_do) + 1
  125559.                 SET @PomDatDo = dbo.fn_NapraviDatum(year(@Datum_Od), 12,31)
  125560.                 SET @DenVoGod = DatePart(dy, @PomDatDo) 
  125561.                 SET @k = round(cast(@DenPresm as decimal(8,2))/ cast(@DenVoGod as decimal(8,2)), 6)
  125562.                 SET @KoefP = Round(Power((1 + @KamSt / 100),  @k) - 1, 6)
  125563.                 SET @Kamata = Round((@KoefP * @Osnovica), 2)
  125564.                 IF @Ekster IS NULL SET @Ekster=''
  125565.                 INSERT INTO #TmpKL (KLisID,Broj_dok,Iznos,Datum_Fakt,Datum_Dosp,Datum_Kam,Datum_Od, Dena,KStapka,Koef,Osnovica,Kamata)
  125566.                 VALUES (@KLisID, @BrFak+' '+@Ekster, @IznZaKam, @DatFakt, @DatDosp,@DatKam, @Datum_Od, @DenPresm,@KamSt,@KoefP,@Osnovica,@Kamata)
  125567.                 SET @Osnovica = Round((@Osnovica + @Kamata), 2)
  125568.             END
  125569.             ELSE
  125570.             BEGIN
  125571.                 SET @DenPresm = DateDiff(day, @Datum_od, @Datum_do) + 1
  125572.                 SET @PomDatDo = dbo.fn_NapraviDatum(year(@Datum_Od), 12,31)
  125573.                 SET @DenVoGod = DatePart(dy, @PomDatDo) 
  125574.         
  125575.                 SET @k = round(cast(@DenPresm as decimal(8,2))/ (cast(@DenVoGod as decimal(8,2))*100), 6)
  125576.                 Set @Kamata = Round((@IznZaKam * @K * (@KamSt+@Zgolemuvanje)), 2)
  125577.         
  125578.                 INSERT INTO #TmpKL (KLisID,Broj_dok,Iznos,Datum_Fakt,Datum_Dosp,Datum_Kam,Datum_Od, Dena,KStapka,Koef,Osnovica,Kamata)
  125579.                 VALUES (@KLisID, @BrFak+' '+@Ekster, @IznZaKam, @DatFakt, @DatDosp, @DatKam, @Datum_Od, @DenPresm,@KamSt+@Zgolemuvanje, @K*(@KamSt+@Zgolemuvanje),@IznZaKam,@Kamata)
  125580.             END
  125581.             Fetch Next From KI Into @Datum_Od, @Datum_Do, @InicOsn, @KamSt
  125582.         End
  125583.         Close KI
  125584.         Deallocate KI
  125585.         Fetch Next From Stavki Into @KLisID, @DatKam, @IznZaKam, @DatFakt, @Rok, @BrFak, @Ekster
  125586.     End
  125587.     Close Stavki
  125588.     Deallocate Stavki
  125589.     SELECT * FROM #TmpKL
  125590.  
  125591. Go
  125592. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_presmotkup]'))
  125593. drop procedure [dbo].[sp_presmotkup]
  125594.  
  125595. Go
  125596.  
  125597.  
  125598. CREATE   PROCEDURE sp_PresmOtkup
  125599.     @Sifra_Oe    smallint,
  125600.     @Sifra_Dok    smallint,
  125601.     @Broj_Dok    int,
  125602.     @KSifra_Dok    smallint=null
  125603. AS
  125604. Declare @Datum_Dok    smalldatetime
  125605. Declare @Sifra_Kup    char(6)
  125606. Declare @Dat_DospOd    smalldatetime
  125607.  
  125608. SELECT @Datum_Dok=Datum_Dok, @Sifra_Kup=Sifra_Kup FROM Dokr WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  125609. SET @Dat_DospOd = dbo.fn_VratiDatumOd(Year(@Datum_Dok), Month(@Datum_Dok))
  125610.  
  125611. CREATE TABLE #Stavki
  125612. (Sifra_Art    varchar(20),
  125613. ImeArt        varchar(40),
  125614. EdMera        char(5),
  125615. Kolic        decimal(18,2),
  125616. Koef        decimal(18,2),
  125617. Cena        decimal(18,2),
  125618. Dokument    varchar(50),
  125619. Datum_Dok    smalldatetime,
  125620. Datum_Dosp    smalldatetime,
  125621. Sifra_Kup    char(6))
  125622.  
  125623. INSERT INTO #Stavki SELECT S.Sifra_Art, A.ImeArt, A.EdMera, S.Kolic, cast(S.Proc_Rand AS decimal(18,2))/100, dbo.fn_VratiCena(S.DokCena,S.POsnPren,S.DanDokCena,'D'), 
  125624. Cast(@Sifra_OE as varchar(3))+'-'+Cast(@Sifra_Dok as varchar(3))+'/'+Cast(@Broj_Dok as varchar(8)), S.Datum_Dok, S.Datum_Dok, @Sifra_Kup
  125625. FROM Stavr S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art WHERE Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  125626.  
  125627. IF @KSifra_Dok IS NULL
  125628.     INSERT INTO #Stavki SELECT S.Sifra_Art, A.ImeArt, A.EdMera, S.Kolic*-1, 0, dbo.fn_VratiCena(S.DokCena,S.POsn,S.DanDokCena,'D'),
  125629.     Cast(S.Sifra_OE as varchar(3))+'-'+Cast(S.Sifra_Dok as varchar(3))+'/'+Cast(S.Broj_Dok as varchar(8)), S.Datum_Dok, DateAdd(day, D.Rok, D.Datum_dok), @Sifra_Kup
  125630.     FROM Stavr S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art INNER JOIN Dokr D ON S.DokrID=D.DokrID
  125631.     WHERE D.Sifra_Kup = @Sifra_Kup AND D.Sifra_Za=1 AND D.VlIzl='I' AND 
  125632.     DateAdd(day, D.Rok, D.Datum_dok)>=@Dat_DospOd AND DateAdd(day, D.Rok, D.Datum_dok)<=@Datum_Dok
  125633.     ORDER BY S.Datum_Dok
  125634. ELSE
  125635.     INSERT INTO #Stavki SELECT S.Sifra_Art, A.ImeArt, A.EdMera, S.Kolic*-1, 0, dbo.fn_VratiCena(S.DokCena,S.POsn,S.DanDokCena,'D'),
  125636.     Cast(S.Sifra_OE as varchar(3))+'-'+Cast(S.Sifra_Dok as varchar(3))+'/'+Cast(S.Broj_Dok as varchar(8)), S.Datum_Dok, DateAdd(day, D.Rok, D.Datum_dok), @Sifra_Kup
  125637.     FROM Stavr S INNER JOIN KatArt A ON S.Sifra_Art=A.Sifra_Art INNER JOIN Dokr D ON S.DokrID=D.DokrID
  125638.     WHERE D.Sifra_Kup = @Sifra_Kup AND D.Sifra_Za=1 AND D.VlIzl='I' AND D.Sifra_Dok<>@KSifra_Dok AND 
  125639.     DateAdd(day, D.Rok, D.Datum_dok)>=@Dat_DospOd AND DateAdd(day, D.Rok, D.Datum_dok)<=@Datum_Dok
  125640.     ORDER BY S.Datum_Dok
  125641.  
  125642. SELECT S.*, K.ImeKup, K.Adresa, K.SMesto, B.ImeBanka Banka, KB.ZiroSka Ziro
  125643. FROM #Stavki S INNER JOIN Komint K ON S.Sifra_Kup=K.Sifra_Kup LEFT OUTER JOIN KBanki KB ON K.Sifra_Kup=KB.Sifra_Kup LEFT OUTER JOIN Banki B ON KB.Sifra_Ban=B.Sifra_Ban
  125644.  
  125645.  
  125646.  
  125647. Go
  125648. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_presmrevalorizacija]'))
  125649. drop procedure [dbo].[sp_presmrevalorizacija]
  125650.  
  125651. Go
  125652. CREATE                   PROCEDURE sp_PresmRevalorizacija
  125653.     @GodPresm    smallint,
  125654.     @PocMesec    smallint,
  125655.     @KrMesec    smallint,
  125656.     @Inv_Broj_Od    char(10) = Null,
  125657.     @Inv_Broj_Do    char(10) = Null,
  125658.     @Kto_anal    varchar(200) = Null,
  125659.     @Sifra_Amor    varchar(200) = Null,
  125660.     @Sifra_MikLok    varchar(200) = Null,
  125661.     @Sifra_MakLok    varchar(200) = Null,
  125662.     @Sifra_Lok    varchar(200) = Null,
  125663.     @Sifra_Rab    varchar(200) = Null,
  125664.     @Za_Prenos    char(1) = 'N',
  125665.     @ImaDelumenOtpis char(1)='N',
  125666.     @PrikNovoNab        char(1) = 'D',  -- Novonabaveni    opciite dod.19.07.07
  125667.     @PrikDogradbi        char(1) = 'D',  -- Dogradbi
  125668.     @PrikNabOdPrethGod    char(1) = 'D',  -- Prethodno Nabaveni
  125669.     @PrikOtpisani        char(1) = 'D',   -- Otpisani  NE CEPKAJ DEFAULTI
  125670.     @OS_SI        char(1) = 'O'    -- O - Osnovni Sredstva,     S - Siten Inventar
  125671. AS
  125672.     Declare @SSQL varchar(2000)
  125673.     Declare @PocDat smalldatetime
  125674.     Declare @KrDat smalldatetime
  125675.     Declare @PocDatGod smalldatetime
  125676.  
  125677.     SET @PocDatGod = dbo.fn_NapraviDatum (@GodPresm, 1, 1)
  125678.     SET @PocDat = dbo.fn_NapraviDatum (@GodPresm, @PocMesec, 1)
  125679.     SET @KrDat = dbo.fn_VratiDatumOdDo (@GodPresm, @KrMesec, 31)
  125680.  
  125681.     CREATE TABLE #PomOsn
  125682. (    Inv_Broj        char(10),
  125683.     DatAkt        smalldatetime,
  125684.     DatPrest    smalldatetime
  125685. )
  125686.  
  125687.     CREATE TABLE #TmpAmorPresm
  125688. (    Inv_Broj        char(10),
  125689.     Rbr        smallint,
  125690.     DatAkt        smalldatetime,
  125691.     DatPrest    smalldatetime,
  125692.     PocDatAmor    smalldatetime,
  125693.     KrDatAmor    smalldatetime,
  125694.     Osn_Amor    decimal(18,2),
  125695.     Otpis_pret    decimal(18,2),
  125696.     Stapka_Amor    decimal(8,3),
  125697.     PocDatKumul    smalldatetime,
  125698.     KrDatKumul    smalldatetime,
  125699.     PocDatDoPer    smalldatetime,
  125700.     KrDatDoPer    smalldatetime,
  125701.     AmortKumul    decimal(18,6),
  125702.     AmortPer    decimal(18,6),
  125703.     Rashodovano    char(1),
  125704.     KoefReval    decimal(18,3),
  125705.     Sifra_Kup    varchar(20)
  125706. )
  125707.     SET @SSQL = 'INSERT INTO #TmpAmorPresm (Inv_Broj, Rbr, DatAkt, DatPrest) SELECT Inv_Broj, 0,  DatAkt, DatPrest FROM OsnSred
  125708.             WHERE DatAkt IS NOT NULL AND DatAkt <= ''' +cast(@KrDat as varchar(35)) + 
  125709.             ''' AND (DatPrest IS NULL OR Year(DatPrest) >= ' + cast(@GodPresm as char(4)) + ' )'
  125710. --do 20.07.07    WHERE DatAkt IS NOT NULL AND Year(Datakt) <= ' +cast(@GodPresm as char(4)) + 
  125711. --    ' AND (DatPrest IS NULL OR Year(DatPrest) >= ' + cast(@GodPresm as char(4)) + ' )'
  125712.     If @Inv_Broj_Od IS NOT NULL
  125713.         SET @SSQL = @SSQL + ' AND Inv_Broj >= ''' + @Inv_Broj_Od + ''' '
  125714.     If @Inv_Broj_Do IS NOT NULL
  125715.         SET @SSQL = @SSQL + ' AND Inv_Broj <= ''' + @Inv_Broj_Do + ''' '
  125716.     If @Kto_Anal IS NOT NULL
  125717.         SET @SSQL = @SSQL + ' AND Kto_Anal IN (''' + @Kto_Anal + ''') '
  125718.     If @Sifra_Amor IS NOT NULL
  125719.         SET @SSQL = @SSQL + ' AND Sifra_Amor IN (''' + @Sifra_Amor + ''') '
  125720.     If @Sifra_MikLok IS NOT NULL
  125721.         SET @SSQL = @SSQL + ' AND Sifra_MikLok IN (''' + @Sifra_MikLok + ''') '
  125722.     If @Sifra_MakLok IS NOT NULL
  125723.         SET @SSQL = @SSQL + ' AND Sifra_MikLok IN (SELECT Sifra_MikLok FROM MikroLok WHERE Sifra_MakLok IN (''' + @Sifra_MakLok + ''')) '
  125724.     If @Sifra_Lok IS NOT NULL 
  125725.         SET @SSQL = @SSQL + ' AND Sifra_MikLok IN (SELECT Sifra_MikLok FROM MikroLok WHERE Sifra_MakLok IN (
  125726.         SELECT Sifra_MakLok FROM MakroLok WHERE Sifra_Lok IN (''' + @Sifra_Lok + '''))) '
  125727.     If @Sifra_Rab IS NOT NULL
  125728.         SET @SSQL = @SSQL + ' AND Sifra_Rab IN (' + @Sifra_Rab + ') '
  125729.     If @OS_SI = 'O'
  125730.         Set @SSQL = @SSQL + ' And Tip = ''OS'' '
  125731.     Else If @OS_SI = 'S'
  125732.         Set @SSQL = @SSQL + ' And Tip = ''SI'' '
  125733.     EXEC (@SSQL)
  125734.  
  125735.     IF @PrikDogradbi <> 'N'
  125736.     Begin
  125737.         INSERT INTO #TmpAmorPresm (Inv_Broj, Rbr, DatAkt, DatPrest, Osn_Amor, Otpis_Pret) 
  125738.         SELECT Inv_Broj, 1,  Datum_Dok, Null, Osn_Amor, 0 FROM StavOsnSred    
  125739.         WHERE Inv_Broj IN (SELECT Inv_Broj FROM #TmpAmorPresm) AND Delov_God = @GodPresm 
  125740.         AND Tip_StaOsn IN ('D','E') AND Datum_Dok<=@KrDat
  125741.     End
  125742.         INSERT INTO #PomOsn (Inv_Broj, DatAkt, DatPrest) 
  125743.         SELECT Inv_Broj, DatAkt, DatPrest FROM #TmpAmorPresm 
  125744.         Where Rbr <> 1  -- dod 06.06.2008 GK
  125745.         UPDATE #TmpAmorPresm SET DatPrest = #PomOsn.DatPrest FROM #PomOsn
  125746.         WHERE #PomOsn.Inv_Broj = #TmpAmorPresm.Inv_Broj AND #TmpAmorPresm.Rbr=1
  125747.     IF @PrikOtpisani='N'
  125748.         Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where DatPrest IS NOT NULL AND DatPrest <= @KrDat)
  125749.     IF @PrikNabOdPrethGod = 'N'
  125750.         If @PrikOtpisani = 'D'
  125751.             Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where Year(DatNab) < Year(@KrDat)
  125752.                         And (DatPrest Is Null Or Year(DatPrest) < Year(@KrDat) Or DatPrest > @KrDat))
  125753.         Else 
  125754.             Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where Year(DatNab) < Year(@KrDat)) and Rbr=0
  125755.     IF @PrikNovoNab    ='N'
  125756.     Begin
  125757.         If @PrikOtpisani = 'D'
  125758.             Delete From #TmpAmorPresm Where Inv_Broj In 
  125759.                 (Select Inv_Broj From OsnSred Where Year(DatNab) = Year(@KrDat) And DatNab <= @KrDat 
  125760.                             And (DatPrest Is Null Or Year(DatPrest) < Year(@KrDat) Or DatPrest > @KrDat))
  125761.         Else
  125762.             Delete From #TmpAmorPresm Where Inv_Broj In (Select Inv_Broj From OsnSred Where Year(DatNab) = Year(@KrDat) And DatNab <= @KrDat)
  125763. --    DELETE FROM #TmpAmorPresm WHERE Inv_Broj IN (SELECT Inv_Broj FROM StavOsnSred WHERE Delov_God = @GodPresm AND Tip_StaOsn ='P')
  125764. End
  125765. -- ELSE  GK - vaka bese do 13.02.09 ako se prikazuvaat sredstva nabaveni i otpisani vo ista godina nemasse vrednosti (verojatno ova ELSE bese po gresska staveno)
  125766.  
  125767. --dod.03.06.09
  125768.     CREATE TABLE #Tmp1AmorPresm
  125769. (    Inv_Broj        char(10),
  125770.     Rbr        smallint,
  125771.     DatAkt        smalldatetime,
  125772.     DatPrest    smalldatetime,
  125773.     PocDatAmor    smalldatetime,
  125774.     KrDatAmor    smalldatetime,
  125775.     Osn_Amor    decimal(18,2),
  125776.     Otpis_pret    decimal(18,2),
  125777.     Stapka_Amor    decimal(8,3),
  125778.     PocDatKumul    smalldatetime,
  125779.     KrDatKumul    smalldatetime,
  125780.     PocDatDoPer    smalldatetime,
  125781.     KrDatDoPer    smalldatetime,
  125782.     AmortKumul    decimal(18,6),
  125783.     AmortPer    decimal(18,6),
  125784.     Rashodovano    char(1),
  125785.     KoefReval    decimal(18,3),
  125786.     Sifra_Kup    varchar(20)
  125787. )
  125788.  
  125789.     CREATE TABLE #TmpMiruv
  125790.     (Inv_Broj    char(10),
  125791.     Datum        smalldatetime,
  125792.     Sto            Char(1))
  125793.  
  125794.     INSERT INTO #TmpMiruv (Inv_Broj, Datum, Sto) SELECT Inv_Broj, Datum_Dok, Tip_StaOsn
  125795.     FROM StavOsnSred WHERE Datum_Dok<=@KrDat AND Tip_StaOsn='M' AND Inv_Broj IN (SELECT Inv_Broj FROM #TmpAmorPresm)
  125796.  
  125797.     INSERT INTO #TmpMiruv (Inv_Broj, Datum, Sto) SELECT Inv_Broj, Datum_Dok, Tip_StaOsn 
  125798.     FROM StavOsnSred WHERE Datum_Dok >=@PocDatGod AND Datum_Dok<=@KrDat AND Tip_StaOsn='A' AND Inv_Broj IN (SELECT Inv_Broj FROM #TmpAmorPresm)
  125799.  
  125800.     INSERT INTO #Tmp1AmorPresm SELECT * FROM #TmpAmorPresm WHERE Inv_Broj IN (SELECT Inv_Broj FROM #TmpMiruv) AND Rbr=0
  125801.     DELETE FROM #TmpAmorPresm WHERE Inv_Broj IN (SELECT Inv_Broj FROM #TmpMiruv) AND Rbr=0
  125802.  
  125803.     Declare @wInvBr char(10), @wDat smalldatetime, @wSto char(1), @wDatAkt smalldatetime, @wDatPrest smalldatetime, @wStInvBr char(10)
  125804.     Declare @wDatAkt1 smalldatetime, @wKlkM smallint, @wKlkA as smallint
  125805.     SET @wStInvBr=''
  125806.     Declare Tabela1 Cursor Fast_Forward For
  125807.     Select Inv_Broj, Datum, Sto From #TmpMiruv ORDER BY Inv_Broj, Datum
  125808.     Open Tabela1
  125809.     Fetch Next From Tabela1 Into @wInvBr, @wDat, @wSto
  125810.     While @@Fetch_Status = 0
  125811.     Begin        
  125812.         IF @wInvBr <> @wStInvBr        --novo sredstvo
  125813.         Begin
  125814.             SELECT @wDatAkt =DatAkt, @wDatPrest=DatPrest FROM #Tmp1AmorPresm WHERE Inv_Broj=@wInvBr
  125815.             SET @wStInvBr=@wInvBr
  125816.             SET @wKlkM = 0
  125817.             SET @wKlkA = 0
  125818.             SET @wDatAkt1 = @wDatAkt
  125819.         End
  125820.  
  125821.         IF @wSto='M'
  125822.             Begin
  125823.                 SET @wKlkM = @wKlkM + 1
  125824.                 IF @wKlkM=1 AND @wKlkA=0
  125825.                     INSERT INTO #TmpAmorPresm (Inv_Broj,Rbr,DatAkt,DatPrest,Osn_Amor,Otpis_pret)
  125826.                     VALUES (@wInvBr,0,@wDatAkt, @wDat,0,0)
  125827.                 ELSE
  125828.                     UPDATE #TmpAmorPresm SET DatPrest=@wDat WHERE Inv_Broj=@wInvBr AND DatAkt=@wDatAkt1
  125829.             End
  125830.         ELSE
  125831.         Begin
  125832.             SET @wKlkA = @wKlkA + 1
  125833.             SET @wDatAkt1 = @wDat
  125834.             INSERT INTO #TmpAmorPresm (Inv_Broj,Rbr,DatAkt,DatPrest,Osn_Amor,Otpis_pret)
  125835.             VALUES (@wInvBr,0,@wDat, @wDatPrest,0,0)
  125836.         End
  125837.         Fetch Next From Tabela1 Into @wInvBr, @wDat, @wSto
  125838.     End
  125839.     Close Tabela1
  125840.     Deallocate Tabela1
  125841. --kr.03.06.09
  125842.  
  125843.     UPDATE #TmpAmorPresm SET Osn_Amor = S.Osn_Amor, Otpis_Pret = S.Otpis_Pret 
  125844.     FROM PocSostOsn S WHERE S.Inv_Broj = #TmpAmorPresm.Inv_Broj AND S.Godina = @GodPresm AND #TmpAmorPresm.Rbr=0
  125845.  
  125846.     UPDATE #TmpAmorPresm SET Osn_Amor = S.Osn_Amor, Otpis_Pret = S.Otpis_Pret 
  125847.     FROM StavOsnSred S WHERE S.Inv_Broj = #TmpAmorPresm.Inv_Broj AND
  125848.     S.Delov_God = @GodPresm AND S.Tip_StaOsn ='P' AND #TmpAmorPresm.Osn_Amor IS NULL AND #TmpAmorPresm.Rbr=0
  125849.  
  125850.     UPDATE #TmpAmorPresm SET Stapka_Amor = AmorGrp.Stapka FROM OsnSred, AmorGrp
  125851.     WHERE #TmpAmorPresm.Inv_Broj = OsnSred.Inv_Broj AND OsnSred.Sifra_Amor = AmorGrp.Sifra_Amor
  125852.     UPDATE #TmpAmorPresm SET PocDatAmor = dbo.fn_VratiPrvDatumSledenMes (DatAkt, @GodPresm)
  125853.     UPDATE #TmpAmorPresm SET KrDatAmor = dbo.fn_NapraviDatum (@GodPresm+1, 1, 1) WHERE DatPrest IS NULL
  125854.     UPDATE #TmpAmorPresm SET KrDatAmor = dbo.fn_VratiDatumOdDo (year(DatPrest), month(DatPrest), 31) WHERE DatPrest IS NOT NULL
  125855.     UPDATE #TmpAmorPresm SET PocDatKumul = PocDatAmor WHERE PocDatAmor > @PocDatGod
  125856.     UPDATE #TmpAmorPresm SET PocDatKumul = @PocDatGod WHERE PocDatAmor <= @PocDatGod
  125857.     UPDATE #TmpAmorPresm SET KrDatKumul = KrDatAmor      WHERE KrDatAmor < @KrDat
  125858.     UPDATE #TmpAmorPresm SET KrDatKumul = @KrDat      WHERE KrDatAmor >= @KrDat
  125859.     UPDATE #TmpAmorPresm SET PocDatDoPer = PocDatAmor WHERE PocDatAmor > @PocDatGod
  125860.     UPDATE #TmpAmorPresm SET PocDatDoPer = @PocDatGod WHERE PocDatAmor <= @PocDatGod
  125861.     UPDATE #TmpAmorPresm SET KrDatDoPer = KrDatAmor   WHERE KrDatAmor < DateAdd(day, -1, @PocDat)
  125862.     UPDATE #TmpAmorPresm SET KrDatDoPer = DateAdd(day, -1, @PocDat) WHERE KrDatAmor >= DateAdd(day, -1, @PocDat)
  125863.  
  125864.     UPDATE #TmpAmorPresm SET AmortKumul = dbo.fn_PresmAmor (PocDatKumul, KrDatKumul, Osn_Amor, Stapka_Amor, Otpis_Pret)
  125865.     UPDATE #TmpAmorPresm SET AmortPer = dbo.fn_PresmAmor (PocDatDoPer, KrDatDoPer, Osn_Amor, Stapka_Amor, Otpis_Pret)
  125866.     --IF @ImaDelumenOtpis='D'        --dod.17.02.07 , trgnat if na 03.06
  125867.     --Begin
  125868.         UPDATE #TmpAmorPresm SET AmortKumul = dbo.fn_PresmAmor (PocDatKumul, KrDatKumul, Osn_Amor*-1, Stapka_Amor, Otpis_Pret)*-1 WHERE Rbr=1 AND Osn_Amor<0
  125869.         UPDATE #TmpAmorPresm SET AmortPer = dbo.fn_PresmAmor (PocDatDoPer, KrDatDoPer, Osn_Amor*-1, Stapka_Amor, Otpis_Pret)*-1 WHERE Rbr=1 AND Osn_Amor<0
  125870.     --End
  125871.     UPDATE #TmpAmorPresm SET Rashodovano = 'N'
  125872.     UPDATE #TmpAmorPresm SET Rashodovano = 'R' WHERE Inv_Broj IN (Select Inv_Broj From StavOsnSred Where Tip_StaOsn='Q' And Datum_Dok<@KrDat)
  125873.  
  125874. --select * from #TmpAmorPresm
  125875.  
  125876.     Create Table #NabavTekGod
  125877.     (
  125878.         Inv_Broj        varchar(20),
  125879.         Rbr        smallint,
  125880.         DatAkt        smalldatetime,
  125881.         DatPrest    smalldatetime,
  125882.         Koef        decimal(18,4)
  125883.     )
  125884.     Insert Into #NabavTekGod Select Inv_Broj, Rbr, DatAkt, DatPrest, Null From #TmpAmorPresm Where Year(DatAkt)=Year(@PocDat)-- And Rbr=0
  125885.  
  125886.     Create Table #NabavPrethGod
  125887.     (
  125888.         Inv_Broj        varchar(20),
  125889.         Rbr        smallint,
  125890.         DatAkt        smalldatetime,
  125891.         DatPrest    smalldatetime,
  125892.         Koef        decimal(18,4)
  125893.     )
  125894.     Insert Into #NabavPrethGod Select Inv_Broj, Rbr, DatAkt, DatPrest, Null From #TmpAmorPresm Where Year(DatAkt)<Year(@PocDat)-- And Rbr=0
  125895. --select * from #NabavTekGod
  125896. --select * from #NabavPrethGod
  125897.     
  125898.     Update #NabavTekGod Set Koef =dbo.fn_PresmRevalNabTekGod(DatAkt, DatPrest, @PocDatGod, @KrDat)        
  125899.     Update #NabavPrethGod Set Koef =dbo.fn_PresmRevalNabPrethGod(DatAkt, DatPrest, @PocDatGod, @KrDat)    
  125900.     Update     #NabavTekGod Set Koef=0 Where Koef Is Null Or Koef < 0
  125901.     Update     #NabavPrethGod Set Koef=0 Where Koef Is Null Or Koef < 0
  125902.  
  125903.     Update #TmpAmorPresm Set KoefReval = K.Koef From #NabavTekGod K 
  125904.     Where K.Inv_Broj=#TmpAmorPresm.Inv_Broj And K.Rbr=#TmpAmorPresm.Rbr And K.DatAkt=#TmpAmorPresm.DatAkt
  125905.     Update #TmpAmorPresm Set KoefReval = K.Koef From #NabavPrethGod K 
  125906.     Where K.Inv_Broj=#TmpAmorPresm.Inv_Broj And K.Rbr=#TmpAmorPresm.Rbr And K.DatAkt=#TmpAmorPresm.DatAkt
  125907.  
  125908. IF @Za_Prenos = 'D'
  125909.     SELECT T.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok,O.Sifra_Rab,O.Orig_Nab_Vr,
  125910.     SUM(Round((T.Osn_Amor+T.Osn_Amor*T.KoefReval),4)) Osn_Amor, SUM(Round(((T.Otpis_Pret+T.AmortKumul - T.AmortPer) + (T.Otpis_Pret+T.AmortKumul - T.AmortPer)*T.KoefReval),4)) Otpis_Pret, 
  125911.     T.Rashodovano
  125912.      FROM #TmpAmorPresm T 
  125913.     INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  125914.     WHERE T.DatPrest IS NULL OR Year(T.DatPrest)>@GodPresm
  125915.     GROUP BY T.Inv_Broj, O.Kto_Anal, O.Sifra_Amor, O.Sifra_MikLok,O.Sifra_Rab,O.Orig_Nab_Vr, T.Rashodovano
  125916.     ORDER BY T.Inv_Broj
  125917. ELSE        
  125918. Begin
  125919.     UPDATE #TmpAmorPresm SET Sifra_Kup = D.Sifra_Kup From DokOsnSred D Inner Join StavOsnSred S On S.DokOID=D.DokOID Where S.Inv_Broj=#TmpAmorPresm.Inv_Broj And D.Tip_StaOsn in ('P','I')
  125920.                                             --do22.06.09 bese O.DatPrest
  125921.     SELECT O.Inv_Broj, O.Ime, O.Opis, O.Kto_Anal, T.Stapka_Amor, O.DatAkt DatAktOE, T.DatPrest, T.Osn_Amor, T.Otpis_Pret,
  125922.          T.AmortKumul - T.AmortPer AmortPer, T.AmortKumul, O.Sifra_Amor, A.Ime ImeAmor, O.Sifra_MikLok, MI.Ime_MikLok, 
  125923.          MA.Sifra_MakLok, MA.Ime_MakLok, L.Sifra_Lok, L.ImeLok, O.BarKod, T.DatAkt, DateDiff(month, PocDatKumul, KrDatKumul)+1 BrMes, 
  125924.         T.Rashodovano, T.KoefReval, T.DatPrest, O.Sifra_Rab, Rab.ImeRab, T.Sifra_Kup, Kup.ImeKup
  125925.     FROM #TmpAmorPresm T 
  125926.     INNER JOIN OsnSred O ON T.Inv_Broj = O.Inv_Broj
  125927.     INNER JOIN AmorGrp A ON A.Sifra_Amor = O.Sifra_Amor 
  125928.     LEFT OUTER JOIN MikroLok MI ON O.Sifra_MikLok = MI.Sifra_MikLok
  125929.     LEFT OUTER JOIN MakroLok MA ON MI.Sifra_MakLok = MA.Sifra_MakLok
  125930.     LEFT OUTER JOIN Lokacija L ON MA.Sifra_Lok = L.Sifra_Lok  
  125931.     LEFT OUTER JOIN Rabotnik Rab On Rab.Sifra_Rab=O.Sifra_Rab
  125932.     LEFT OUTER JOIN Komint Kup On Kup.Sifra_Kup = T.Sifra_Kup 
  125933. --    Where O.Inv_Broj In (Select Inv_Broj from #NabavTekGod)
  125934.     order by koefreval
  125935. End
  125936. ---select * from #TmpAmorPresm
  125937. Go
  125938. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_presmtrosprevoz_transnal]'))
  125939. drop procedure [dbo].[sp_presmtrosprevoz_transnal]
  125940.  
  125941. Go
  125942. CREATE  PROCEDURE sp_PresmTrosPrevoz_TransNal
  125943.     @Sifra_Oe        smallint = Null,
  125944.     @Broj_TransOd        int = Null,
  125945.     @Broj_TransDo        int = Null,
  125946.     @Datum_TransNalOd    smalldatetime = Null,
  125947.     @Datum_TransNalDo    smalldatetime = Null,
  125948.     @Sifra_Vid_Voz        varchar(20) = Null,
  125949.     @Sif_Grad_Glaven    smallint = Null,
  125950.     @Sifra_Prev        char(6) = Null,
  125951.     @Kurs            decimal(9,2) = 1
  125952. AS
  125953.     Declare @SSQL as varchar(8000)
  125954.     Create Table #Cursor
  125955.     (
  125956.      Sifra_Oe    smallint,
  125957.      Broj_Trans    int
  125958.     )
  125959.     Create Table #TransNal
  125960.     (
  125961.      Sifra_Oe    smallint,
  125962.      Broj_Trans    int,
  125963.      Opis        varchar(200),
  125964.      Iznos        decimal(18,4)
  125965.     )
  125966.     Set @SSQL = ' Select TN.Sifra_Oe, TN.Broj_Trans
  125967.             From TransNal TN
  125968.             Where 1=1 '
  125969.     If @Sifra_Oe Is Not Null    
  125970.         Set @SSQL = @SSQL + ' And TN.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  125971.     If @Broj_TransOd Is Not Null 
  125972.         Set @SSQL = @SSQL + ' And TN.Broj_Trans >= ' + cast(@Broj_TransOd as varchar(10)) + ' '
  125973.     If @Broj_TransDo Is Not Null 
  125974.         Set @SSQL = @SSQL + ' And TN.Broj_Trans <= ' + cast(@Broj_TransDo as varchar(10)) + ' '
  125975.     If @Datum_TransNalOd Is Not Null 
  125976.         Set @SSQL = @SSQL + ' And TN.Datum_TransNal >= ''' + cast(@Datum_TransNalOd as varchar(30)) + ''' '
  125977.     If @Datum_TransNalDo Is Not Null 
  125978.         Set @SSQL = @SSQL + ' And TN.Datum_TransNal <= ''' + cast(@Datum_TransNalDo as varchar(30)) + ''' '
  125979.     If @Sifra_Vid_Voz Is Not Null    
  125980.         Set @SSQL = @SSQL + ' And TN.Sifra_Vid_Voz = ' + @Sifra_Vid_Voz + ' '
  125981.     If @Sifra_Prev Is Not Null    
  125982.         Set @SSQL = @SSQL + ' And TN.Sifra_Prev = ' + @Sifra_Prev + ' '
  125983.     Insert Into #Cursor(Sifra_Oe, Broj_Trans) Exec(@SSQL)
  125984.     Declare @SifOe smallint
  125985.     Declare @BrTrans int
  125986.     Declare @SumFri decimal(18,2)
  125987.     Declare @BrFri smallint
  125988.     Declare @MaxKM as smallint
  125989.     Declare @BrGradovi as smallint
  125990.     Declare @CenaKM as decimal(18,2)
  125991.     Declare @SifVidVoz as varchar(20)
  125992.     Declare @Cena as decimal(18,2)
  125993.     Declare @KM as int
  125994. declare @brojac smallint
  125995. set @brojac=0
  125996. --select * from #transnal
  125997.     Declare TransNal Cursor Fast_Forward For Select Sifra_Oe, Broj_Trans From #Cursor
  125998.     Open TransNal
  125999.     Fetch Next From TransNal Into @SifOe, @BrTrans
  126000.     While @@Fetch_Status = 0 
  126001.     Begin
  126002.         -- Da najdeme dali ima mesta za isporaka nadvor od glavniot grad
  126003.         If Not Exists(Select T.Broj_Trans 
  126004.                   From TransNal T
  126005.                   Inner Join TransNalStav S On S.Sifra_Oe=T.Sifra_Oe And S.Broj_Trans=T.Broj_Trans
  126006.                   Inner Join Dokr D On D.DokrID=S.DokrID
  126007.                   Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  126008.                   Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  126009.                   Where T.Sifra_Oe=@SifOe And T.Broj_Trans=@BrTrans
  126010.                   And ((D.Sifra_Obj Is Not Null And KO.Sifra_Grad <> @Sif_Grad_Glaven) OR ( D.Sifra_Obj Is Null and Kup.Sifra_Grad <> @Sif_Grad_Glaven))  )
  126011.         Begin    -- Ako site mesta za isporaka se vo glavniot grad
  126012.             -- Da presmetame kolku e vkupniot iznos na fakturi vo transportniot nalog
  126013.             Select @SumFri = Sum(D.Toc200)
  126014.              From TransNal T
  126015.             Inner Join TransNalStav S On S.Sifra_Oe=T.Sifra_Oe And S.Broj_Trans=T.Broj_Trans
  126016.             Inner Join Dokr D On D.DokrID=S.DokrID
  126017.             Where T.Sifra_Oe=@SifOe And T.Broj_Trans=@BrTrans
  126018.             Select @BrFri = Count(Distinct D.Sifra_Kup + (Case When D.Sifra_Obj Is Not Null Then cast(D.Sifra_Obj as varchar(6)) Else '&&&' End))  -- Select @BrFri = Count(S.DokrID) 
  126019.              From TransNal T
  126020.             Inner Join TransNalStav S On S.Sifra_Oe=T.Sifra_Oe And S.Broj_Trans=T.Broj_Trans
  126021.             Inner Join Dokr D On D.DokrID=S.DokrID     -- dodadeno 12.01.2005
  126022.             Where T.Sifra_Oe=@SifOe And T.Broj_Trans=@BrTrans
  126023.             If @SumFri < 100000 And @BrFri > 5
  126024.             Begin
  126025.                 Insert Into #TransNal (Sifra_Oe, Broj_Trans, Opis, Iznos) 
  126026.                 Values(@SifOe, @BrTrans, Cast(@SumFri as varchar(20))+' den. * 1.5% + (' + Cast(@BrFri as varchar(10))+' br.f-ri - 5) * 100 den.' , (@SumFri*0.015+(@BrFri-5)*100))
  126027.             End
  126028.             Else
  126029.             Begin
  126030.                 Insert Into #TransNal (Sifra_Oe, Broj_Trans, Opis, Iznos) 
  126031.                 Values (@SifOe, @BrTrans, Cast(@SumFri as varchar(20))+' den. * 1.5% ', (@SumFri * 0.015))
  126032.             End
  126033.         End
  126034.         Else -- Ako ima mesta za isporaka i nadvor od glavniot grad
  126035.         Begin
  126036.             Select @MaxKM = Max(G.Oddalecenost)
  126037.                   From TransNal T
  126038.                   Inner Join TransNalStav S On S.Sifra_Oe=T.Sifra_Oe And S.Broj_Trans=T.Broj_Trans
  126039.                   Inner Join Dokr D On D.DokrID=S.DokrID
  126040.                   Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  126041.                   Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  126042.                   Left Outer Join Grad G On G.Sifra_Grad=(Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End)
  126043.                   Where T.Sifra_Oe=@SifOe And T.Broj_Trans=@BrTrans
  126044.             Select @SifVidVoz = Sifra_Vid_Voz
  126045.             From TransNal Where Sifra_Oe=@SifOe And Broj_Trans=@BrTrans
  126046.             Set @Cena = 0
  126047.             Set @KM=0
  126048.             Declare CrsCena Cursor Fast_Forward For Select Cena, KM From CenVidVozila Where Sifra_Vid_Voz = @SifVidVoz Order By KM
  126049.             Open CrsCena
  126050.             Fetch Next From CrsCena Into @Cena, @KM
  126051.             While @@Fetch_Status = 0
  126052.             Begin
  126053.                 Set @CenaKM=@Cena
  126054.                 If @MaxKM < @KM
  126055.                     Break
  126056.                 Fetch Next From CrsCena Into @Cena, @KM
  126057.             End    
  126058.             Close CrsCena
  126059.             Deallocate CrsCena
  126060.             If @MaxKM >= 100
  126061.             Begin 
  126062.                 Select @BrGradovi = count(distinct(Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End))
  126063.                               From TransNal T
  126064.                               Inner Join TransNalStav S On S.Sifra_Oe=T.Sifra_Oe And S.Broj_Trans=T.Broj_Trans
  126065.                               Inner Join Dokr D On D.DokrID=S.DokrID
  126066.                               Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup
  126067.                               Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  126068.                               Where T.Sifra_Oe=@SifOe And T.Broj_Trans=@BrTrans
  126069.                 Set @BrGradovi=@BrGradovi-1   -- brojot na gradovi - 1(krajnata destinacija)  -- znaci popatnite istovarni mesta
  126070.                 Insert Into #TransNal (Sifra_Oe, Broj_Trans, Opis, Iznos) 
  126071.                 Values(@SifOe, @BrTrans, Cast(@MaxKM as varchar(20))+ ' km * ' + Cast(@CenaKM as varchar(20)) + ' cena * ' + Cast(@Kurs as varchar(10)) + ' kurs + ' + Cast(@BrGradovi as varchar(20)) + ' gradovi * 190 den. ' , (@CenaKM * @MaxKM * @Kurs + (@BrGradovi*190)))
  126072.             End
  126073.             Else
  126074.             Begin
  126075.                 Insert Into #TransNal (Sifra_Oe, Broj_Trans, Opis, Iznos) 
  126076.                 Values(@SifOe, @BrTrans, Cast(@MaxKM as varchar(20))+ ' km * ' + Cast(@CenaKM as varchar(20)) + ' cena * ' + Cast(@Kurs as varchar(10)) + ' kurs + ', (@CenaKM * @MaxKM * @Kurs))
  126077.             End
  126078.         End --Ako ima mesta za isporaka i nadvor od glavniot grad
  126079.         Fetch Next From TransNal Into @SifOe, @BrTrans
  126080.     End
  126081.     Close TransNal
  126082.     Deallocate TransNal
  126083.     Select T.Sifra_Oe, O.ImeOrg, T.Broj_Trans, T.Opis, T.Iznos 
  126084.     From #TransNal T
  126085.     Inner Join Orged O On O.Sifra_Oe=T.Sifra_Oe
  126086.  
  126087.  
  126088. Go
  126089. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pretarart_izvpretar]'))
  126090. drop procedure [dbo].[sp_pretarart_izvpretar]
  126091.  
  126092. Go
  126093. CREATE          PROCEDURE sp_PretarArt_IzvPretar
  126094.     @Sifra_OE     Smallint = Null,
  126095.     @KoiOE     Varchar(200) = Null,
  126096.     @Datum_Od     Smalldatetime = Null,
  126097.     @Datum_Do     Smalldatetime = Null,
  126098.     @Sifra_Art_Od     Varchar(20) = Null,
  126099.     @Sifra_Art_Do     Varchar(20) = Null,
  126100.     @Sifra_Kup     Char(6) = Null,
  126101.     @Sifra_Gr     Char(3) = Null,
  126102.     @Sifra_Podg     Char(6) = Null,
  126103.     @Lokacija     Varchar(10) = Null,
  126104.     @ZgolNam     Char(1) = Null,
  126105.     @Podred     Char(1) = Null,
  126106.     @KoiArt        char(1) = 'S'    -- R - <> 0     P - > 0      N - < 0      E = 0
  126107. AS
  126108.     Declare @SSQL Varchar(8000)
  126109.     Set @SSQL = 'Select R.Sifra_Oe, R.Sifra_Art, K.ImeArt, K.EdMera, R.Datum_Dok, R.Datum_Vnes, R.Kolic, 
  126110.             R.PocCena PocCenaDDV, (R.PocCena*R.Kolic) PrethIznosDDV, R.KrCena KrCenaDDV, (R.KrCena*R.Kolic) NovIznosDDV, 
  126111.             dbo.fn_VratiCena(R.PocCena, R.POsn_PocCena, ''D'', ''N'') PocCenaNeto, (dbo.fn_VratiCena(R.PocCena, R.POsn_PocCena, ''D'', ''N'') * R.Kolic) PrethIznosNeto, 
  126112.             dbo.fn_VratiCena(R.KrCena, R.POsn_KrCena, ''D'', ''N'') KrCenaNeto, (dbo.fn_VratiCena(R.KrCena, R.POsn_KrCena, ''D'', ''N'') * R.Kolic) KrIznosNeto, 
  126113.             R.POsn_PocCena, R.POsn_KrCena
  126114.         From RazlCeniPretar R
  126115.          Inner Join KatArt K ON R.Sifra_Art=K.Sifra_Art And K.SMatUsl=''M''  '
  126116.     If @Sifra_Gr Is Not Null
  126117.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  126118.     Set @SSQL = @SSQL + ' Where ABS(R.PocCena - R.KrCena) > 0.0001 ' --1=1 '--R.Sifra_Razl IN (' + @Sifra_Razl + ') '
  126119.     if @ZgolNam = 'Z'
  126120.                      Set @SSQL = @SSQL + 'And R.PocCena < R.KrCena '
  126121.     if @ZgolNam = 'N'
  126122.                      Set @SSQL = @SSQL + 'And R.PocCena > R.KrCena '
  126123.     If @Sifra_OE Is Not Null
  126124.         Set @SSQL  = @SSQL + 'And R.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  126125.     If @KoiOE Is Not Null
  126126.         Set @SSQL  = @SSQL + 'And R.Sifra_OE IN (' + @KoiOE + ') '
  126127.     If @Lokacija Is Not NULL
  126128.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + '''  '
  126129.     If @Sifra_Podg Is Not NULL
  126130.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  126131.     If @Sifra_Gr Is Not NULL
  126132.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  126133.     If @Datum_Od Is Not NULL
  126134.         Set @SSQL = @SSQL + 'And R.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  126135.     If @Datum_Do Is Not NULL
  126136.         Set @SSQL = @SSQL + 'And R.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  126137.     If @Sifra_Kup Is Not NULL
  126138.         Set @SSQL = @SSQL + 'And K.Kto =' + @Sifra_Kup + ' '
  126139.     If @Sifra_Art_Od Is Not NULL
  126140.         Set @SSQL = @SSQL + 'And R.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  126141.     If @Sifra_Art_Do Is Not NULL
  126142.         Set @SSQL = @SSQL + 'And R.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  126143.     If @KoiArt = 'R'
  126144.         Set @SSQL = @SSQL + ' And R.Kolic <> 0 '
  126145.     Else If @KoiArt = 'P'
  126146.         Set @SSQL = @SSQL + ' And R.Kolic > 0 '
  126147.     Else If @KoiArt = 'N'
  126148.         Set @SSQL = @SSQL + ' And R.Kolic < 0 '
  126149.     Else If @KoiArt = 'E'
  126150.         Set @SSQL = @SSQL + ' And R.Kolic = 0 '
  126151.     If @Podred = 'S'
  126152.         Set @SSQL = @SSQL + 'Order By R.Sifra_Art, R.Datum_dok '
  126153.     Else If @Podred = 'A'
  126154.         Set @SSQL = @SSQL + 'Order By K.ImeArt, R.Datum_dok ' 
  126155.     Else If @Podred = 'D'
  126156.         Set @SSQL = @SSQL + 'Order By R.Datum_dok, R.Sifra_Art ' 
  126157.     Exec(@SSQL)
  126158.  
  126159.  
  126160. Go
  126161. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pretarart_pretarifiranje_soart]'))
  126162. drop procedure [dbo].[sp_pretarart_pretarifiranje_soart]
  126163.  
  126164. Go
  126165. CREATE  PROCEDURE sp_PretarArt_Pretarifiranje_Soart
  126166.     @Sifra_Oe    smallint = Null,
  126167.     @KoiOe    varchar(10) = Null,
  126168.     @Datum_Dok    smalldatetime,
  126169.     @Zaokr        smallint,
  126170.     @ProcZgolCen    decimal(6,2) = Null,
  126171.     @DanPromCen    char(1) = Null
  126172. AS
  126173.     Declare @SSQL as varchar(8000)
  126174.     Create Table #PA
  126175.     (
  126176.      Sifra_Oe         smallint,
  126177.      Sifra_Art        varchar(20),
  126178.      Cena            decimal(18,6),
  126179.      DanCena        char(1),
  126180.      CenaNeto        decimal(18,6),
  126181.      CenaDDV        decimal(18,6),
  126182.      Posn            decimal(6,2),
  126183.      Sifra_Tar_Nova        char(3),
  126184.      Posn_Nov        decimal(6,2),
  126185.      CenaNeto_Nova    decimal(18,6),
  126186.      CenaDDV_Nova    decimal(18,6),
  126187.      Sostojba        decimal(18,6)
  126188.     )
  126189.     Set @SSQL= ' Select S.Sifra_Oe, S.Sifra_Art, S.Cena, S.DanCena, Null, Null, S.POsn, P.Sifra_Tar_Nova, T.ProcOsn, Null, Null, (S.Vlez-S.Izlez)
  126190.             From Soart S
  126191.             Inner Join PretarArt P On P.Sifra_Art = S.Sifra_Art
  126192.             Inner Join Tarifi T On T.Sifra_Tar = P.Sifra_Tar_Nova
  126193.             Where 1=1 '
  126194.     If @Sifra_Oe Is Not Null
  126195.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  126196.     If @KoiOe Is Not Null 
  126197.         Set @SSQL = @SSQL + ' And S.Sifra_Oe In (Select Sifra_Oe From SGrorg Where Sif_GrOrg= ''' + @KoiOe + ''') '
  126198.     Insert Into #PA Exec(@SSQL)
  126199.     Update #PA Set CenaNeto = dbo.fn_VratiCena(Cena, Posn, DanCena, 'N'), CenaDDV = dbo.fn_VratiCena(Cena, Posn, DanCena, 'D')
  126200.     Update #PA Set  CenaNeto_Nova = Round(dbo.fn_VratiCena(CenaNeto, Posn_Nov, 'N', 'N'), @Zaokr), 
  126201.             CenaDDV_Nova = Round(dbo.fn_VratiCena(CenaNeto, Posn_Nov, 'N', 'D'), @Zaokr)
  126202.     Declare @SifOe smallint
  126203.     Declare @SifArt varchar(20)
  126204.     Declare @POsn_Sta decimal(6,2)
  126205.     Declare @Sifra_Tar_Nova char(3)
  126206.     Declare @POsn_Nov decimal(6,2)
  126207.     Declare @CenaDDV decimal(18,6)
  126208.     Declare @DanCena char(1)
  126209.     Declare @CenaDDV_Nova decimal(18,6)
  126210.     Declare @Sostojba decimal(18,6)
  126211.     Declare Pretar Cursor Fast_Forward 
  126212.     For Select Sifra_Oe, Sifra_Art, POsn, POsn_Nov, CenaDDV, DanCena, CenaDDV_Nova, Sostojba, Sifra_Tar_Nova From #PA
  126213.     Open Pretar
  126214.     Fetch Next From Pretar Into @SifOe, @SifArt, @POsn_Sta, @POsn_Nov, @CenaDDV, @DanCena, @CenaDDV_Nova, @Sostojba, @Sifra_Tar_Nova
  126215.     While @@Fetch_Status = 0
  126216.     Begin
  126217.         If @DanCena = 'N'
  126218.             Update Soart Set POsn = @POsn_Nov Where Sifra_Oe=@SifOe And Sifra_Art=@SifArt -- and POsn <> @POsn_Nov
  126219.         Else If @CenaDDV_Nova <> @CenaDDV -- @DanCena = 'D'
  126220.         Begin
  126221.             Update Soart Set Cena = @CenaDDV_Nova, Posn = @POsn_Nov Where Sifra_Oe=@SifOe And Sifra_Art=@SifArt
  126222.             Insert Into RazlCeniPretar (Sifra_Oe, Sifra_Art, Datum_Dok, Datum_Vnes, Kolic, PocCena, KrCena, POsn_PocCena, POsn_KrCena, Sifra_Nal, Broj_Nal)
  126223.             Values (@SifOe, @SifArt, @Datum_Dok, GetDate(), @Sostojba, @CenaDDV, @CenaDDV_Nova, @POsn_Sta, @POsn_Nov, Null, Null)
  126224.             Insert Into RazlCeni (Sifra_Razl, Sifra_Oe, Sifra_Art, Datum_Dok, Datum_Vnes, Kolic, PocCena, KrCena, POsn, PTar, DanPocCena, DanKrCena, Sifra_Nal, Broj_Nal)
  126225.             Values ('908', @SifOe, @SifArt, @Datum_Dok, GetDate(), @Sostojba, @CenaDDV, @CenaDDV_Nova, @POsn_Nov, @Sifra_Tar_Nova, 'D', 'D', Null, Null)
  126226.         End
  126227.         Fetch Next From Pretar Into @SifOe, @SifArt, @POsn_Sta, @POsn_Nov, @CenaDDV, @DanCena, @CenaDDV_Nova, @Sostojba, @Sifra_Tar_Nova
  126228.     End
  126229.     Close Pretar
  126230.     Deallocate Pretar
  126231.  
  126232.  
  126233. Go
  126234. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_pretarart_smenitarkatart]'))
  126235. drop procedure [dbo].[sp_pretarart_smenitarkatart]
  126236.  
  126237. Go
  126238.  
  126239. CREATE  PROCEDURE sp_PretarArt_SmeniTarKatart
  126240. AS
  126241.     Update Katart 
  126242.     Set Katart.Sifra_Tar = PretarArt.Sifra_Tar_Nova, IzmenetNa=GetDate()
  126243.     From PretarArt
  126244.     Where Katart.Sifra_Art = PretarArt.Sifra_Art
  126245.     And Katart.Sifra_Tar <> PretarArt.Sifra_Tar_Nova
  126246.  
  126247.  
  126248.  
  126249. Go
  126250. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prevzemiartikli]'))
  126251. drop procedure [dbo].[sp_prevzemiartikli]
  126252.  
  126253. Go
  126254.  
  126255.  
  126256.  
  126257.  
  126258. CREATE     procedure [dbo].[sp_PrevzemiArtikli]
  126259.     @Sifra_OE smallint,
  126260.     @Datum_Dok datetime= null ,
  126261.     @Aktiven char(1)= null
  126262. AS
  126263.     Declare @SSQL as varchar(5000)
  126264.  
  126265.     Set @SSQL= ' SELECT Sifra_Art, Replace(ImeArt, '''''''', '' '') ImeArt, EdMera, Nom, DogCena, MalCena, GotCena, SodrziEd, ImaKomerc
  126266.                FROM KatArt WHERE 1=1'
  126267. IF @Aktiven ='D'
  126268.     Set @SSQL = @SSQL + ' AND ( Aktiven Is Null OR Aktiven<>''N'') ' 
  126269. If @Sifra_Oe is not null
  126270.     set @SSQL = @SSQL + 'AND Sifra_Art IN (SELECT Sifra_Art FROM SoArt WHERE Sifra_OE=' + cast(@Sifra_Oe as varchar(15)) + ''
  126271. IF @Datum_Dok is not null
  126272.     Set  @SSQL = @SSQL + '  AND (Vlez-Izlez<>0 OR 
  126273.                          Sifra_Art IN (SELECT DISTINCT Sifra_Art FROM Stavr WHERE Sifra_OE=' + cast(@Sifra_Oe as varchar(15)) + '
  126274.                        AND Datum_Dok>=''' + cast(@DAtum_Dok as varchar(50)) + ''' ))'
  126275.  set @ssql= @ssql + ')'
  126276. --print @ssql
  126277. exec(@ssql)
  126278.  
  126279.  
  126280.  
  126281.  
  126282. Go
  126283. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prevzemibarkod]'))
  126284. drop procedure [dbo].[sp_prevzemibarkod]
  126285.  
  126286. Go
  126287. CREATE procedure sp_PrevzemiBarKod
  126288.     @Sifra_OE smallint,
  126289.     @Datum_Dok datetime= null ,
  126290.     @Aktiven char(1)= null
  126291. AS
  126292.     Declare @SSQL as varchar(5000)
  126293.  
  126294.     Set @SSQL= ' SELECT Sifra_Art, Nom FROM ABarKod WHERE 1=1'
  126295. IF @Aktiven ='D'
  126296.   Set @SSQL = @SSQL + ' AND Sifra_Art in(Select Sifra_Art From Katart Where( Aktiven Is Null OR Aktiven<>''N'')) ' 
  126297. If @Sifra_Oe is not null
  126298.     set @SSQL = @SSQL + 'AND Sifra_Art IN (SELECT Sifra_Art FROM SoArt WHERE Sifra_OE=' + cast(@Sifra_Oe as varchar(15)) + ''
  126299. IF @Datum_Dok is not null
  126300.     Set  @SSQL = @SSQL + '  AND (Vlez-Izlez<>0 OR 
  126301.                          Sifra_Art IN (SELECT DISTINCT Sifra_Art FROM Stavr WHERE Sifra_OE=' + cast(@Sifra_Oe as varchar(15)) + '
  126302.                        AND Datum_Dok>=''' + cast(@DAtum_Dok as varchar(50)) + ''' ))'
  126303.  set @ssql= @ssql + ')'
  126304.  
  126305. exec(@ssql)
  126306.  
  126307.  
  126308. Go
  126309. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prevzmckatpozicija]'))
  126310. drop procedure [dbo].[sp_prevzmckatpozicija]
  126311.  
  126312. Go
  126313.  
  126314.  
  126315.  
  126316.  
  126317. CREATE     PROCEDURE sp_PrevzMcKatPozicija
  126318.     @Br_MCLista varchar(300)
  126319. As 
  126320. declare @SSQL as varchar(500)
  126321.  
  126322. set @SSQL = 'Select L.Sif_MCPozicija, M.ImeMCPozicija, M.SkrImeMCPozicija, M.Tip, M.DozvVredC, M.DozvVredNOd, M.DozvVredNDo
  126323.              from MCLista L
  126324.              inner join MCKatPozicija M on M.Sif_MCPozicija = L.Sif_McPozicija
  126325.              where L.Aktiven <> ''N'' AND L.Br_MCLista in ('+@Br_MCLista+') '
  126326. exec (@SSQL)
  126327.  
  126328.  
  126329.  
  126330.  
  126331. Go
  126332. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prevzmclista]'))
  126333. drop procedure [dbo].[sp_prevzmclista]
  126334.  
  126335. Go
  126336.  
  126337.  
  126338.  
  126339.  
  126340. CREATE    PROCEDURE sp_PrevzMcLista
  126341.     @Br_MCLista varchar(300)
  126342. As 
  126343.  
  126344. declare @SSQL as varchar(300)
  126345.  
  126346. set @SSQL = ' Select L.Br_McLista, L.ImeMCLista, L.SkrImeMCLista, L.Sif_MCPozicija, L.Rbr, L.Aktiven
  126347.                   from MCLista L '
  126348. set @SSQL = @SSQL + ' where L.Br_MCLista in ('+@Br_MCLista+') '    
  126349.        
  126350. exec (@SSQL)
  126351.  
  126352.  
  126353.  
  126354.  
  126355. Go
  126356. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_priemi_zapecatenje]'))
  126357. drop procedure [dbo].[sp_priemi_zapecatenje]
  126358.  
  126359. Go
  126360. CREATE   PROCEDURE sp_Priemi_ZaPecatenje
  126361.     @Datum    smalldatetime,
  126362.     @Sifra_Dok    varchar(200),
  126363.     @Sifra_OE    varchar(200)=Null,
  126364.     @Pec_Dok    smallint = Null
  126365. AS
  126366.     Declare @SSQL as varchar(4000)
  126367.     Set @SSQL = ' Select Sifra_Oe, Sifra_Dok, Broj_Dok, Br_Kopii
  126368.             From Dokr Where 1=1
  126369.             And Datum_Dok >= ''' + cast(@Datum as varchar(30)) + ''' 
  126370.             And Sifra_Dok In ( ' + @Sifra_Dok + ') 
  126371.             And VlIzl = ''V'' ' 
  126372.     If @Sifra_OE IS NOT NULL
  126373.         Set @SSQL = @SSQL + ' And Sifra_OE In ( ' + @Sifra_OE + ') ' 
  126374.     If @Pec_Dok Is Not Null
  126375.         Set @SSQL = @SSQL + ' And Pec_Dok= ' + Cast(@Pec_Dok as varchar(6)) + ' '
  126376.     Else If @Pec_Dok Is Null
  126377.         Set @SSQL = @SSQL + ' And Pec_Dok Is Null '
  126378.     Exec(@SSQL)
  126379.  
  126380.  
  126381. Go
  126382. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prikdvadokzaedno]'))
  126383. drop procedure [dbo].[sp_prikdvadokzaedno]
  126384.  
  126385. Go
  126386. CREATE                PROCEDURE sp_PrikDvaDokZaedno
  126387.     @Sifra_OE    Smallint,            --PAZI  Prvo daj go pozitivniot, a potoa storno dok.
  126388.     @Sifra_Dok    Smallint,
  126389.     @Broj_Dok    int,
  126390.     @Sifra_OE2    Smallint,
  126391.     @Sifra_Dok2    Smallint,
  126392.     @Broj_Dok2    int,
  126393.     @DaliShift    char(1) = 'D',
  126394.     @Sifra_PRIM     smallint OUTPUT,
  126395.     @Sifra_Kup    varchar(15) = null OUTPUT,
  126396.     @Datum_Dok    smalldatetime = NULL  OUTPUT,
  126397.     @Opis        varchar(50) = Null OUTPUT,
  126398.     @Sifra_Obj    smallint =  Null OUTPUT,
  126399.     @ImeObj    varchar(50) = Null OUTPUT
  126400. AS
  126401.     Declare @Shift    int
  126402.     Declare @Art_Od    char(6)    
  126403.     Declare @Art_Do char(6)
  126404.     Declare @LenShift int
  126405.     SELECT @Shift = Ladno_Shift FROM Konfig
  126406.     if @Shift IS NULL
  126407.         Begin
  126408.             SET @Art_Od    = '001000'    
  126409.             SET @Art_Do = '002000'
  126410.         End
  126411.     Else
  126412.         Begin
  126413.             SET @LenShift = Len(cast(@Shift as varchar(6)))
  126414.             SET @Art_Od    = Replicate('0', 6-@LenShift) + cast(@Shift as varchar(6))
  126415.             SET @Art_Do    = Replicate('0', 6-@LenShift) + cast(@Shift*2 as varchar(6))
  126416.         End
  126417.     CREATE TABLE #TmpDist
  126418. (    Sifra_Art    varchar(20),
  126419.     ImeArt        varchar(40),
  126420.     EdMera        varchar(5),
  126421.     Datum_Dok    smalldatetime,
  126422.     Datum_Dok2    smalldatetime,
  126423.     Kolic        decimal(18,6),
  126424.     Kolic2        decimal(18,6),
  126425.     DokCena        decimal(18,6),
  126426.     Magcena        decimal(18,6),
  126427.     DanDokCena    char(1),
  126428.     DanMagCena    char(1),
  126429.     Uces        decimal(6,2),
  126430.     DokCena2    decimal(18,6),
  126431.     Magcena2    decimal(18,6),
  126432.     DanDokCena2    char(1),
  126433.     DanMagCena2    char(1),
  126434.     Uces2        decimal(6,2)
  126435. )
  126436.     CREATE TABLE #TmpZaPrviSifri
  126437. (    Sifra_Art    varchar(20)
  126438. )
  126439.     CREATE TABLE #TmpZaDrugiSifri
  126440. (    Sifra_Art    varchar(20)
  126441. )
  126442.     INSERT INTO #TmpZaPrviSifri (Sifra_Art) 
  126443.     SELECT Sifra_Art FROM KatArt 
  126444.     WHERE Sifra_Art IN (SELECT DISTINCT Sifra_Art FROM Stavr
  126445.     WHERE (Sifra_OE = @Sifra_OE AND Sifra_Dok = @Sifra_Dok AND Broj_Dok = @Broj_Dok) or
  126446.     (Sifra_OE = @Sifra_OE2 AND Sifra_Dok = @Sifra_Dok2 AND Broj_Dok = @Broj_Dok2))
  126447.     INSERT INTO #TmpZaDrugiSifri (Sifra_Art) 
  126448.     SELECT Sifra_Art FROM KatArt 
  126449.     WHERE Sifra_Art IN (SELECT DISTINCT Sifra_Art FROM Stavr
  126450.     WHERE Sifra_OE = @Sifra_OE2 AND Sifra_Dok = @Sifra_Dok2 AND Broj_Dok = @Broj_Dok2)
  126451.     UPDATE #TmpZaDrugiSifri
  126452.     set sifra_art = '000' + substring(Sifra_Art,4,3)
  126453.     WHERE Sifra_Art > @Art_Od  AND Sifra_Art < @Art_Do    
  126454. -- Unijata gi eliminira duplikatite vo zbirnata tabela,
  126455. -- bez razlika dali duplikatite poteknuvaat od edna ili od dvete tabeli
  126456.     INSERT INTO #TmpDist (sifrA_art)
  126457.     select sifra_art from #TmpZaPrviSifri
  126458.     union select sifra_art from #TmpZaDrugiSifri
  126459.     UPDATE #TmpDist
  126460.     set imeart = K.imeart, edmera = K.edmera
  126461.     from KATART K, #TmpDist T
  126462.     where T.sifrA_art = K.sifrA_art
  126463.     CREATE TABLE #TmpKolic
  126464. (    Sifra_Art    varchar(20),
  126465.     Datum_Dok    smalldatetime,
  126466.     DokCena        decimal(18,6),
  126467.     Magcena        decimal(18,6),
  126468.     DanDokCena    char(1),
  126469.     DanMagCena    char(1),
  126470.     Uces        decimal(6,2),
  126471.     Kolic        decimal(18,6)
  126472. )
  126473.     Select @Sifra_Prim=D.Sifra_prim, @Sifra_kup=D.Sifra_kup, @Datum_Dok=D.Datum_Dok, @Opis=D.Identif_Br, @Sifra_Obj=D.Sifra_Obj, @ImeObj=O.ImeObj 
  126474.     From Dokr D
  126475.     Left Outer Join KObjekti O On O.Sifra_Kup=D.Sifra_Kup And O.Sifra_Obj=D.Sifra_Obj
  126476.     Where Sifra_OE=@Sifra_OE AND Sifra_Dok=@Sifra_Dok AND Broj_Dok=@Broj_Dok
  126477.     INSERT INTO #TmpKolic SELECT Sifra_Art, Datum_Dok, DokCena, MagCena, DanDokCena, DanMagCena, Uces, SUM(Kolic)
  126478.     FROM Stavr WHERE Sifra_OE = @Sifra_OE AND Sifra_Dok = @Sifra_Dok AND Broj_Dok = @Broj_Dok
  126479.     GROUP BY Sifra_Art, Datum_Dok, DokCena, MagCena, DanDokCena, DanMagCena, Uces
  126480.     UPDATE #TmpDist SET Datum_Dok=S.Datum_Dok, DokCena=S.DokCena, MagCena=S.MagCena, 
  126481.     DanDokCena=S.DanDokCena, DanMagCena=S.DanMagCena, Uces=S.Uces, Kolic= S.Kolic
  126482.     FROM #TmpKolic S 
  126483.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art
  126484.     DELETE FROM #TmpKolic
  126485.     INSERT INTO #TmpKolic SELECT Sifra_Art, Datum_Dok, DokCena, MagCena, DanDokCena, DanMagCena, Uces, SUM(Kolic)
  126486.     FROM Stavr WHERE Sifra_OE = @Sifra_OE2 AND Sifra_Dok = @Sifra_Dok2 AND Broj_Dok = @Broj_Dok2
  126487.     GROUP BY Sifra_Art, Datum_Dok, DokCena, MagCena, DanDokCena, DanMagCena, Uces
  126488.     UPDATE #TmpDist SET Datum_Dok2=S.Datum_Dok, DokCena2=S.DokCena, MagCena2=S.MagCena, 
  126489.     DanDokCena2=S.DanDokCena, DanMagCena2=S.DanMagCena, Uces2=S.Uces, Kolic2= S.Kolic
  126490.     FROM #TmpKolic S 
  126491.     WHERE #TmpDist.Sifra_Art = S.Sifra_Art AND (S.Sifra_Art < @Art_Od or S.Sifra_Art>@Art_Do)
  126492.     UPDATE #TmpDist SET Datum_Dok2=S.Datum_Dok, DokCena2=S.DokCena, MagCena2=S.MagCena, 
  126493.     DanDokCena2=S.DanDokCena, DanMagCena2=S.DanMagCena, Uces2=S.Uces, Kolic2= S.Kolic
  126494.     FROM #TmpKolic S 
  126495.     WHERE #TmpDist.Sifra_Art = '000' + substring(S.Sifra_Art,4,3) AND S.Sifra_Art > @Art_Od  AND S.Sifra_Art < @Art_Do    
  126496.     UPDATE #TmpDist SET Kolic =0 WHERE Kolic IS NULL 
  126497.     UPDATE #TmpDist SET DokCena =0 WHERE DokCena IS NULL 
  126498.     UPDATE #TmpDist SET MagCena =0 WHERE MagCena IS NULL 
  126499.     UPDATE #TmpDist SET DanDokCena ='' WHERE DanDokCena IS NULL 
  126500.     UPDATE #TmpDist SET DanMagCena ='' WHERE DanMagCena IS NULL 
  126501.     UPDATE #TmpDist SET Uces =0 WHERE Uces IS NULL
  126502.     UPDATE #TmpDist SET Kolic2 =0 WHERE Kolic2 IS NULL 
  126503.     UPDATE #TmpDist SET DokCena2 =0 WHERE DokCena2 IS NULL 
  126504.     UPDATE #TmpDist SET MagCena2 =0 WHERE MagCena2 IS NULL 
  126505.     UPDATE #TmpDist SET DanDokCena2 ='' WHERE DanDokCena2 IS NULL 
  126506.     UPDATE #TmpDist SET DanMagCena2 ='' WHERE DanMagCena2 IS NULL 
  126507.     UPDATE #TmpDist SET Uces2 =0 WHERE Uces2 IS NULL
  126508.         update #TmpDist set DokCena = DokCena2 where DokCena = 0
  126509.         update #TmpDist set MagCena = MagCena2 where MagCena = 0
  126510.     SELECT * FROM #TmpDist where kolic <> 0 or kolic2 <> 0
  126511.  
  126512.  
  126513. Go
  126514. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_priknarbezdatisporaka]'))
  126515. drop procedure [dbo].[sp_priknarbezdatisporaka]
  126516.  
  126517. Go
  126518.  
  126519. CREATE  procedure sp_PrikNarBezDatIsporaka
  126520.     @Datum_od smalldatetime = null,
  126521.     @Datum_Do smalldatetime = null
  126522. As
  126523.     Declare @SSQL as varchar(8000)
  126524.     Set @SSQL= ' Select N.Sifra_Oe, N.Sifra_Nar, N.Broj_Nar, N.Sifra_Pat, N.Datum_Nar, N.Sifra_Kup, K.ImeKup, N.Sifra_Obj, OB.ImeObj, N.Toc200
  126525.                 From Naracki N
  126526.                 Left Outer Join Komint K ON N.Sifra_Kup=K.Sifra_Kup
  126527.                 Left Outer Join KObjekti OB ON N.Sifra_Kup=OB.Sifra_Kup And N.Sifra_Obj=OB.Sifra_Obj          
  126528.                 Where N.Dat_Isporaka IS NULL '
  126529.     If @Datum_Od Is Not Null
  126530.         Set @SSQL = @SSQL + ' And N.Datum_Nar >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  126531.     If @Datum_Do Is Not Null
  126532.         Set @SSQL = @SSQL + ' And N.Datum_Nar <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  126533. --print @ssql
  126534. exec (@ssql)
  126535.  
  126536.  
  126537.  
  126538.  
  126539. Go
  126540. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_priksaldozakonto]'))
  126541. drop procedure [dbo].[sp_priksaldozakonto]
  126542.  
  126543. Go
  126544.  
  126545.  
  126546.  
  126547.  
  126548.  
  126549. CREATE      PROCEDURE sp_PrikSaldoZaKonto
  126550.     @Kto_Anal char(10) ,
  126551.     @Datum smalldatetime 
  126552. AS
  126553.     
  126554.     Select sum(dolzi-pobaruva) as Saldo from Gstav WHERE Kto_Anal=@Kto_Anal and Year(Datum_Nal)= Year(@Datum)
  126555.  
  126556.  
  126557. Go
  126558. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_printer_orged_tipdok_lok]'))
  126559. drop procedure [dbo].[sp_printer_orged_tipdok_lok]
  126560.  
  126561. Go
  126562.  
  126563.  
  126564.  
  126565. CREATE  PROCEDURE sp_Printer_OrgEd_TipDok_Lok
  126566.     @Sifra_Oe    smallint = Null,
  126567.     @Sifra_Dok    smallint = Null, 
  126568.         @Lokacija        varchar(10)=null
  126569. AS
  126570.     Declare @SSQL as varchar(4000)
  126571.     Set @SSQL = ' Select D.Sifra_Oe, D.Sifra_Dok, D.BrKopii, D.Grp_Kasa, D.Lokacija, D.ImePrinter, D.FiskalenPrn,
  126572.                       D.ObicenPrn, D.BrKopiisoKor, D.FiskalenPrnSoKor, D.KopijaPrn, D.ImePrinterKopija, D.PaperName, D.ImePC  
  126573.               From KonfLokPrn D
  126574.               Where 1 = 1 '
  126575.     If @Sifra_Oe Is Not Null
  126576.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  126577.     If @Sifra_Dok Is Not Null
  126578.         Set @SSQL = @SSQL + ' And D.Sifra_Dok = ' + cast(@Sifra_Dok as varchar(6)) + ' '
  126579.         If @Lokacija IS NOT NULL
  126580.               Set @SSQL=@SSQL+'AND (D.Lokacija='''+lTrim(rtrim(@Lokacija))+''') '
  126581.         
  126582. print @SSQL
  126583.     Exec(@SSQL)
  126584.  
  126585.  
  126586.  
  126587.  
  126588.  
  126589.  
  126590. Go
  126591. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_art_mag_soferi]'))
  126592. drop procedure [dbo].[sp_prod_art_mag_soferi]
  126593.  
  126594. Go
  126595. CREATE PROCEDURE sp_Prod_Art_Mag_Soferi
  126596.     @KoiOe_Mag        varchar(10),
  126597.     @KoiOe_Sof        varchar(10),
  126598.     @Datum_DokOd    smalldatetime,
  126599.     @Datum_DokDo    smalldatetime,
  126600.     @Sifra_ArtOd        varchar(20),
  126601.     @Sifra_ArtDo        varchar(20),
  126602.     @Podred        char(1) = 'S'    -- S - Sifra,     A - Ime
  126603. AS
  126604.     Declare @SSQL as varchar(4000)
  126605.     Declare @SSQLUsl as varchar(4000)
  126606.     Set @SSQLUsl = ' '
  126607.     Create Table #Rez
  126608.     (
  126609.      Sifra_Art     varchar(20),
  126610.      ProdSoferi    decimal(18,6),
  126611.      ProdMag    decimal(18,6),
  126612.      ProdDrugi    decimal(18,6)
  126613.     )
  126614. -- Prodazba od soferite
  126615.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  126616.             From Dokr D
  126617.             Inner Join Stavr S On S.DokrID=D.DokrID
  126618.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  126619.             Where D.Sifra_Za = ''1'' And D.VlIzl = ''I'' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe_Sof + ''') '
  126620.     If @Datum_DokOd Is Not Null 
  126621.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok >= ''' + Cast(@Datum_DokOd as varchar(30)) + ''' '
  126622.     If @Datum_DokDo Is Not Null 
  126623.         Set @SSQLUsl = @SSQLUsl + ' and D.Datum_Dok <= ''' + Cast(@Datum_DokDo as varchar(30)) + ''' '
  126624.     If @Sifra_ArtOd Is Not Null 
  126625.         Set @SSQLUsl = @SSQLUsl + ' and S.Sifra_Art >= ''' + @Sifra_ArtOd + ''' '
  126626.     If @Sifra_ArtDo Is Not Null 
  126627.         Set @SSQLUsl = @SSQLUsl + ' and S.Sifra_Art <= ''' + @Sifra_ArtDo + ''' '
  126628.     Set @SSQLUsl = @SSQLUsl + ' Group By S.Sifra_Art '
  126629.     Insert Into #Rez(Sifra_Art, ProdSoferi) Exec(@SSQL+@SSQLUsl)
  126630. -- Prodazba od magacin
  126631.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  126632.             From Dokr D
  126633.             Inner Join Stavr S On S.DokrID=D.DokrID
  126634.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  126635.             Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  126636.             Where D.Sifra_Za = ''1'' And D.VlIzl = ''I'' And Kup.TipKup = ''2'' 
  126637.             And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe_Mag + ''') '
  126638.     Insert Into #Rez(Sifra_Art, ProdMag) Exec(@SSQL+@SSQLUsl)
  126639. -- Prodazba drugo
  126640.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Kolic)
  126641.             From Dokr D
  126642.             Inner Join Stavr S On S.DokrID=D.DokrID
  126643.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  126644.             Left Outer Join Komint Kup On Kup.Sifra_Kup = D.Sifra_Kup
  126645.             Where D.Sifra_Za = ''1'' And D.VlIzl = ''I'' And (Kup.TipKup <> ''2'' Or Kup.TipKup Is Null)
  126646.             And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @KoiOe_Mag + ''') '
  126647.     Insert Into #Rez(Sifra_Art, ProdDrugi) Exec(@SSQL+@SSQLUsl)
  126648.     Select R.Sifra_Art, K.ImeArt, K.ImaKomerc, K.Tezina, K.Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr,
  126649.         K.Sifra_Drg, B.Ime ImeBrend, B.Sifra_Drg1, BB.Ime_Drg1 ImeZbBrend,
  126650.         Sum(R.ProdSoferi) ProdSoferi, Sum(R.ProdMag) ProdMag, Sum(ProdDrugi) ProdDrugi
  126651.     From #Rez R
  126652.     Inner Join Katart K On K.Sifra_Art = R.Sifra_Art
  126653.     Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  126654.     Inner Join Grupi G On G.Sifra_Gr = P.Sifra_Gr
  126655.     Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg
  126656.     Left Outer Join DrgPodel1 BB On BB.Sifra_Drg1=B.Sifra_Drg1
  126657.     Group By R.Sifra_Art, K.ImeArt, K.ImaKomerc, K.Tezina, K.Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr,
  126658.            K.Sifra_Drg, B.Ime, B.Sifra_Drg1, BB.Ime_Drg1
  126659.  
  126660.  
  126661. Go
  126662. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_artbrendkto]'))
  126663. drop procedure [dbo].[sp_prod_artbrendkto]
  126664.  
  126665. Go
  126666.  
  126667.  
  126668.  
  126669.  
  126670.  
  126671. CREATE PROCEDURE sp_Prod_ArtBrendKto
  126672.     @Sifra_OE     Smallint = Null,
  126673.     @KoiOE     Varchar(300) = Null,
  126674.     @Pod1         Smallint = Null,
  126675.     @Pod2         Smallint = Null,
  126676.     @Pod3         Smallint = Null,
  126677.     @Pod4         Smallint = Null,
  126678.     @Pod5         Smallint = Null,
  126679.     @ADrugo1    smallint = Null,
  126680.     @ADrugo2    smallint = Null,
  126681.     @ADrugo3    smallint = Null,
  126682.     @ADrugo4    smallint = Null,
  126683.     @ADrugo5    smallint = Null,
  126684.     @Sifra_Tip     Smallint = Null,
  126685.     @Datum_Od     Smalldatetime = Null,
  126686.     @Datum_Do     Smalldatetime = Null,
  126687.     @Sifra_Art_Od     Varchar(20)= Null,
  126688.     @Sifra_Art_Do     Varchar(20) = Null,
  126689.     @Sifra_Kup_Od Char(6) = Null,
  126690.     @Sifra_Kup_Do Char(6) = Null,
  126691.     @Kto         Char(6) = Null,
  126692.     @Sifra_Gr     Char(3) = Null,
  126693.     @Sifra_Podg     Char(6) = Null,
  126694.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  126695.     @Lokacija     Varchar(10) = Null,
  126696.     @TipKup     Varchar(200) = Null,
  126697.     @Sifra_Brand     Smallint = Null,
  126698.     @Sifra_ZBrand     Smallint = Null,
  126699.     @Koi_Gradovi     Varchar(300) = Null,
  126700.     @Sifra_Pat    smallint    = Null,
  126701.     @Sifra_Obj    smallint  = Null,
  126702.     @TipDokProd    varchar(200) = Null,
  126703.     @Koi_Regioni    varchar(200) = Null,
  126704.     @Sifra_Mest     Int = Null,
  126705.     @KomercKako    char(1) = 'I',                 -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  126706.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  126707.     @Posrednik    char(6) = Null,
  126708.     @KojaCena     char(1) = '3',
  126709.     @PrikaziPo    char(1) = 'A',        -- A - Artikal,  B - Brend,   D - Kto(Dobavuvac),   G - Grupa,    P - Podgrupa
  126710.     @PrikaziArt    char(1) = 'N',        -- D - Prikazi Artikal    N - Ne
  126711.     @VkluciPrenosnici char(1) = 'N',
  126712.     @TipDokPrenos    varchar(300) = Null,
  126713.         @Sifra_Div    smallint = Null
  126714. AS
  126715.     If @PoKojDatum = 'V'
  126716.             If @Datum_Do Is Not Null
  126717.         Set @Datum_Do = @Datum_Do + 1
  126718.     Declare @SSQL Varchar(8000)
  126719.     create       TABLE #TopLista
  126720.     (
  126721.         Sifra_Art     Varchar(20) NULL,
  126722.         Kolicina     decimal(18, 4) NULL,
  126723.         Vrednost     decimal(18, 4) NULL,
  126724.         ProcProd    decimal(9,3) NULL,
  126725.         Zaliha         decimal(18, 4) NULL,
  126726.         ZalVredn    decimal(18,4) NULL,
  126727.         ZalProc        decimal(9,3) NULL
  126728.     )
  126729.     Set @SSQL = 'Select S.Sifra_Art, 
  126730.             Round(Sum(S.Kolic), 4) As Kolicina, '
  126731.         If @KojaCena = '3'
  126732.             Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) As Vr_Osnov, '
  126733.         Else If @KojaCena = '2'
  126734.             Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_SoRabat, '
  126735.         Else If @KojaCena = '1'
  126736.             Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) As Vr_Krajna, '
  126737.         Else If @KojaCena = '4'
  126738.             Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  126739.     Set @SSQL = @SSQL + 'Null as ProcProd, Null As Zaliha, Null as ZalVredn, Null as ZalProc '
  126740.     Set @SSQL = @SSQL + 'From Stavr S
  126741.         Inner Join KatArt K ON S.Sifra_aRT=K.Sifra_Art
  126742.         Inner Join Dokr D ON S.DokrID=D.DokrID '
  126743.     If @VkluciPrenosnici = 'D'
  126744.         Set @SSQL = @SSQL + ' And D.VlIzl=''I'' '   -- GK 2009-7-14 za Dauti vo prodazba da vlezat i prenosnicite
  126745.     Else 
  126746.         Set @SSQL = @SSQL + ' And D.Sifra_Za=1 ' 
  126747.     If @Sifra_Gr Is Not Null
  126748.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  126749.     If @Sifra_ZBrand Is Not Null
  126750.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  126751.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  126752.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null) Or (@Sifra_Pat Is Not Null)
  126753.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  126754.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  126755.     If @Posrednik is not null
  126756.         Set @SSQL = @SSQL + ' Inner Join ProdMest PM ON D.Sifra_Mest=PM.Sifra_Mest '   --D.Sifra_kup=PM.Sifra_kup and D.Sifra_obj=PM.Sifra_obj and
  126757.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  126758.     If @Sifra_OE Is Not NULL
  126759.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  126760.     If @KoiOE Is Not NULL
  126761.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  126762.     If @Koi_Gradovi Is Not NULL    
  126763.         Begin
  126764.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  126765.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  126766.         End
  126767.     If @Koi_Regioni Is Not NULL    
  126768.         Begin
  126769.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  126770.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  126771.         End
  126772.     If @TipKup Is Not NULL
  126773.         Set @SSQL = @SSQL + ' And KUP.TipKup In (' + @TipKup + ') '
  126774.     If @Sifra_Kup_Od Is Not NULL
  126775.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  126776.     If @Sifra_Kup_Do Is Not NULL
  126777.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  126778.        If @KomercKako = 'I'
  126779.         If @Sifra_Pat IS NOT NULL
  126780.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  126781.        If @KomercKako = 'T'
  126782.         If @Sifra_Pat IS NOT NULL
  126783.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  126784.     If @Sifra_Obj IS NOT NULL
  126785.         SET @SSQL = @SSQL + ' AND D.Sifra_Obj = ' + Cast(@Sifra_Obj as varchar(5)) + ' '
  126786.     If @Sifra_Art_Od Is Not Null
  126787.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  126788.     If @Sifra_Art_Do Is Not Null
  126789.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  126790.     If @Sifra_Brand Is Not Null
  126791.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  126792.     If @Sifra_ZBrand Is Not Null
  126793.         Set @SSQL = @SSQL + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  126794.     If @Sifra_Podg Is Not Null
  126795.         If @PocnuvaSo = 'D'
  126796.             Set @SSQL = @SSQL + 'And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  126797.         Else 
  126798.             Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  126799.     If @Sifra_Gr Is Not Null
  126800.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  126801.     If @Pod1 Is Not NULL
  126802.            Begin
  126803.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  126804.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  126805.            End
  126806.     If @Pod2 Is Not NULL
  126807.            Begin
  126808.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  126809.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  126810.            End
  126811.     If @Pod3 Is Not NULL
  126812.            Begin
  126813.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  126814.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  126815.            End
  126816.     If @Pod4 Is Not NULL
  126817.            Begin
  126818.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  126819.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  126820.            End
  126821.     If @Pod5 Is Not NULL
  126822.            Begin
  126823.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  126824.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  126825.            End
  126826. --    If @Pod5 Is Not NULL
  126827. --        Set @SSQL = @SSQL + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  126828.     If @Sifra_Tip Is Not Null
  126829.         SET @SSQL = @SSQL +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  126830.     If @Lokacija Is Not NULL
  126831.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  126832.     If @Kto Is Not NULL
  126833.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  126834.     If @PoKojDatum = 'V'
  126835.           Begin
  126836.         If @Datum_Od Is Not NULL
  126837.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  126838.         If @Datum_Do Is Not NULL
  126839.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  126840.           End
  126841.     Else 
  126842.           Begin
  126843.         If @Datum_Od Is Not NULL
  126844.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  126845.         If @Datum_Do Is Not NULL
  126846.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  126847.        End
  126848.     If @TipDokProd IS NOT NULL And @VkluciPrenosnici <> 'D'
  126849.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  126850.     Else If @TipDokProd IS NOT NULL And @VkluciPrenosnici = 'D' And @TipDokPrenos Is Not Null
  126851.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ',' + @TipDokPrenos + ') '
  126852.     Else If @TipDokProd IS NOT NULL And @VkluciPrenosnici = 'D' And @TipDokPrenos Is Null
  126853.         Set @SSQL = @SSQL + ' And (S.Sifra_Dok IN (' + @TipDokProd + ') Or D.Sifra_Za = ''3'') '
  126854.     Else If @TipDokProd IS NULL And @TipDokPrenos Is Not Null
  126855.         Set @SSQL = @SSQL + ' And (S.Sifra_Dok IN (' + @TipDokPrenos + ') Or D.Sifra_Za = ''1'') '
  126856.     If @Sifra_Mest Is Not NULL
  126857.         Set @SSQL = @SSQL + ' And D.Sifra_Mest =''' + Cast(@Sifra_Mest As Varchar(6)) + ''' '
  126858.     If @ADrugo1 Is Not NULL
  126859.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@ADrugo1 As Varchar(6)) + ' '
  126860.     If @ADrugo2 Is Not NULL
  126861.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@ADrugo2 As Varchar(6)) + ' '
  126862.     If @ADrugo3 Is Not NULL
  126863.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@ADrugo3 As Varchar(6)) + ' '
  126864.     If @ADrugo4 Is Not NULL
  126865.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@ADrugo4 As Varchar(6)) + ' '
  126866.     If @ADrugo5 Is Not NULL
  126867.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@ADrugo5 As Varchar(6)) + ' '
  126868.     If @Posrednik Is Not NULL
  126869.         Set @SSQL = @SSQL + ' And PM.Posrednik=' + Cast(@Posrednik As Varchar(6)) + ' '
  126870.         If @Sifra_Div Is Not NULL
  126871.         Set @SSQL = @SSQL + ' And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(6)) + ' '
  126872.     Set @SSQL = @SSQL + 'Group By S.Sifra_Art '
  126873. --print @SSQL
  126874.     Insert #TopLista Exec(@SSQL)
  126875.  
  126876.     Create Table #Zaliha
  126877.     (
  126878.      Sifra_Art     varchar(20),
  126879.      Kolic        decimal(18,4),
  126880.      Vrednost    decimal(18,4)
  126881.     )
  126882.     Set @SSQL = ' Select S.Sifra_Art, Round(Sum(S.Vlez-S.Izlez), 4) as Kolic, '
  126883.     If @KojaCena = '3'
  126884.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  ((S.Vlez-S.Izlez), S.Cena, S.DanCena, S.POsn)), 4) as Vr_Osnov '
  126885.     Else If @KojaCena = '2'
  126886.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat((S.Vlez-S.Izlez), S.Cena, S.DanCena, S.POsn, S.Uces, 0)), 4) as Vr_SoRabat '
  126887.     Else If @KojaCena = '1'
  126888.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna ((S.Vlez-S.Izlez), S.Cena, S.DanCena, S.POsn, 0.0, 0)), 4) as Vr_Krajna '
  126889.     Else If @KojaCena = '4'
  126890.         Set @SSQL = @SSQL + ' Round(Sum((S.Vlez-S.Izlez)*K.GotCena), 4) Vk_NPS '
  126891.     Set @SSQL = @SSQL + ' From Soart S
  126892.                 Inner Join Katart K On K.Sifra_art = S.Sifra_Art 
  126893.                 Where S.Sifra_Art In (Select Distinct Sifra_Art From #TopLista) AND K.SMatUsl=''M'' '
  126894.     If @Sifra_OE Is Not NULL
  126895.              Set @SSQL  = @SSQL + ' And Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  126896.     If @KoiOE Is Not NULL
  126897.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  126898.     Set @SSQL=@SSQL + ' Group By S.Sifra_Art '
  126899. --print @SSQL
  126900.  
  126901.     Insert Into #Zaliha Exec(@SSQL)
  126902.     Update #TopLista
  126903.     Set #TopLista.Zaliha=#Zaliha.Kolic, #TopLista.ZalVredn=#Zaliha.Vrednost
  126904.     From #Zaliha 
  126905.     Where #TopLista.Sifra_Art=#Zaliha.Sifra_Art
  126906.     Declare @VkProd decimal(18,4)
  126907.     Declare @VkZal decimal(18,4)
  126908.     Select @VkProd=Sum(Vrednost), @VkZal=Sum(ZalVredn) From #TopLista
  126909.     Update #TopLista 
  126910.     Set ProcProd=Vrednost/@VkProd*100, ZalProc=ZalVredn/@VkZal*100
  126911.     Set @SSQL = ' Select '
  126912.     If @PrikaziPo='A'
  126913.         Set @SSQL = @SSQL + ' T.Sifra_Art as Sifra, K.ImeArt As Ime, '
  126914.     Else If @PrikaziPo='B'
  126915.         Set @SSQL = @SSQL + ' K.Sifra_Drg as Sifra, B.Ime, '
  126916.     Else If @PrikaziPo='D'
  126917.         Set @SSQL = @SSQL + ' K.Kto as Sifra, Kup.ImeKup as Ime, '
  126918.     Else If @PrikaziPo='G'
  126919.         Set @SSQL = @SSQL + ' P.Sifra_Gr as Sifra, G.Ime_Gr as Ime, '
  126920.     Else If @PrikaziPo='P'
  126921.         Set @SSQL = @SSQL + ' K.Sifra_Podg as Sifra, P.Ime_Podg as Ime, '
  126922.     If @PrikaziArt = 'D'
  126923.         Set @SSQL = @SSQL + ' T.Sifra_Art, K.ImeArt, '
  126924.     Else 
  126925.         Set @SSQL = @SSQL + ' Null Sifra_Art, Null ImeArt, '
  126926.     Set @SSQL = @SSQL + ' Sum(T.Kolicina) Kolicina, Sum(T.Vrednost) Vrednost, Sum(T.ProcProd) ProcProd, 
  126927.                   Sum(T.Zaliha) Zaliha, Sum(T.ZalVredn) ZalVredn, Sum(T.ZalProc) ZalProc
  126928.             From #TopLista T
  126929.             Inner Join Katart K On K.Sifra_art = T.Sifra_Art '
  126930.     If @PrikaziPo='B'
  126931.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg = K.Sifra_Drg '
  126932.     Else If @PrikaziPo='D'
  126933.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup = K.Kto '
  126934.     Else If @PrikaziPo='G'
  126935.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  126936.                       Left Outer Join Grupi G On G.Sifra_Gr = P.Sifra_Gr '
  126937.     Else If @PrikaziPo='P'
  126938.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg '
  126939.     If @PrikaziPo='A'
  126940.         Set @SSQL = @SSQL + ' Group By T.Sifra_Art, K.ImeArt '
  126941.     Else If @PrikaziPo='B'
  126942.         Set @SSQL = @SSQL + ' Group By K.Sifra_Drg, B.Ime '
  126943.     Else If @PrikaziPo='D'
  126944.         Set @SSQL = @SSQL + ' Group By K.Kto, Kup.ImeKup '
  126945.     Else If @PrikaziPo='G'
  126946.         Set @SSQL = @SSQL + ' Group By P.Sifra_Gr, G.Ime_Gr '
  126947.     Else If @PrikaziPo='P'
  126948.         Set @SSQL = @SSQL + ' Group By K.Sifra_Podg, P.Ime_Podg '
  126949.     If @PrikaziArt = 'D'
  126950.         Set @SSQL = @SSQL + ', T.Sifra_Art, K.ImeArt '
  126951.     Exec(@SSQL)
  126952.  
  126953.  
  126954.  
  126955.  
  126956.  
  126957.  
  126958.  
  126959. Go
  126960. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_brojnovikomint]'))
  126961. drop procedure [dbo].[sp_prod_brojnovikomint]
  126962.  
  126963. Go
  126964.  
  126965.  
  126966. CREATE                      PROCEDURE [dbo].[sp_Prod_BrojNoviKomint]
  126967.     @Sifra_OE    Smallint = Null,
  126968.     @KoiOE    Varchar(1000) = Null,
  126969.     @Pod1        Smallint = Null,
  126970.     @Pod2        Smallint = Null,
  126971.     @Pod3         Smallint = Null,
  126972.     @Pod4         Smallint = Null,
  126973.     @Pod5         Smallint = Null,
  126974.     @Pod6         Smallint = Null,
  126975.     @Pod7         Smallint = Null,
  126976.     @Sifra_Tip     Smallint = Null,
  126977.     @Datum_Od    Smalldatetime = Null,
  126978.     @Datum_Do    Smalldatetime = Null,
  126979.     @Sifra_Art_Od    Varchar(20) = Null,
  126980.     @Sifra_Art_Do    Varchar(20) = Null,
  126981.     @Sifra_Kup_Od Char(6) = Null,
  126982.     @Sifra_Kup_Do Char(6) = Null,
  126983.     @Podred    Char(1) = Null,
  126984.     @Kto        Char(6) = Null,
  126985.     @Sifra_Gr    Char(3) = Null,
  126986.     @Sifra_Podg    Char(6) = Null,
  126987.     @Lokacija    Varchar(10) = Null,
  126988.     @TipKup    Char(11) = Null,
  126989.     @Sifra_Brand    Smallint = Null,
  126990.     @TipDokProd    varchar(200) = Null,
  126991.     @KoiPat    varchar(300) = Null,
  126992.     @Koi_Gradovi    varchar(200) = Null,
  126993.     @Koi_Regioni    varchar(200) = Null,
  126994.     @KomercKako    char(1) = 'I',        -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  126995.     @Drugo1    smallint = Null,
  126996.     @Drugo2    smallint = Null,
  126997.     @Drugo3    smallint = Null,
  126998.     @Drugo4    smallint = Null,
  126999.     @Drugo5    smallint = Null,
  127000.     @Drugo6    smallint = Null,
  127001.     @Drugo7    smallint = Null,
  127002.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N      (Povrzano e so @Sifra_Podg)
  127003. --    @Sifra_Plan    smallint = Null,        -- Dali da se vkluci planot po patnisci vo izvestajot
  127004.     @GrKup     varchar(500)= null,
  127005.     @GrArt         varchar(500)= null,
  127006.     @GrPat        varchar(10) = Null
  127007. AS
  127008.  
  127009.     Set Nocount On
  127010.     Declare @SSQL Varchar(8000)
  127011.     Declare @SSQLKup Varchar(8000)
  127012.     Declare @SSQLArt Varchar(8000)
  127013.     Declare @SSQLUsl Varchar(8000)
  127014.     SET @SSQLKup = ''
  127015.     SET @SSQLArt = ''
  127016.     SET @SSQLUsl = ''
  127017.  
  127018.     ----------  @SSQLKup --------------
  127019.     If @Pod1 Is Not NULL
  127020.            Begin
  127021.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  127022.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  127023.            End
  127024.     If @Pod2 Is Not NULL
  127025.            Begin
  127026.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  127027.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  127028.            End
  127029.     If @Pod3 Is Not NULL
  127030.            Begin
  127031.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  127032.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  127033.            End
  127034.     If @Pod4 Is Not NULL
  127035.            Begin
  127036.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  127037.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  127038.            End
  127039.     If @Pod5 Is Not NULL
  127040.            Begin
  127041.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  127042.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  127043.            End
  127044.     If @Pod6 Is Not NULL
  127045.            Begin
  127046.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  127047.                       Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  127048.            End
  127049.     If @Pod7 Is Not NULL
  127050.            Begin
  127051.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  127052.                       Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  127053.            End
  127054.     If @Sifra_Tip Is Not NULL
  127055.         Set @SSQLKup = @SSQLKup + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  127056.     If @Sifra_Kup_Od Is Not NULL
  127057.         Set @SSQLKup = @SSQLKup + 'And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  127058.     If @Sifra_Kup_Do Is Not NULL
  127059.         Set @SSQLKup = @SSQLKup + 'And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  127060.     If @TipKup Is Not NULL
  127061.         Set @SSQLKup = @SSQLKup + 'And KUP.TipKup=''' + @TipKup + ''' '
  127062.     If @Koi_Gradovi Is Not NULL    
  127063.         Begin
  127064.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  127065.                               OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  127066.         End    
  127067.     If @Koi_Regioni Is Not NULL    
  127068.         Begin
  127069.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  127070.                               OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  127071.         End
  127072.       If @KomercKako = 'I'
  127073.     Begin
  127074.         If @KoiPat Is Not Null
  127075.             Set @SSQLKup = @SSQLKup + ' And D.Sifra_Pat IN (' + @KoiPat + ') '
  127076.         If @GrPat Is Not Null
  127077.             Set @SSQLKup = @SSQLKup + ' And D.Sifra_Pat IN (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + ''') '
  127078.     End
  127079.        If @KomercKako = 'T'
  127080.     Begin
  127081.         If @KoiPat Is Not Null
  127082.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @KoiPat + ')) 
  127083.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In ( ' + @KoiPat + '))) '     
  127084.         If @GrPat Is Not Null
  127085.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + ''')) 
  127086.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (Select Sifra_Pat From SGrPat Where Sif_GrPat = ''' + @GrPat + '''))) '     
  127087.     End
  127088.     -------------------------------------------------------------------------------------------------------------------------------------
  127089.  
  127090.     -----  @SSQLUsl
  127091.     If @Sifra_Brand Is Not Null
  127092.         Set @SSQLArt  = @SSQLArt + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(5)) + ' '
  127093.     If @Lokacija Is Not NULL
  127094.         Set @SSQLArt = @SSQLArt + ' And K.Lokacija=''' + @Lokacija + ''' '
  127095.     If @Kto Is Not NULL
  127096.         Set @SSQLArt = @SSQLArt + ' And K.Kto=' + @Kto + ' '
  127097.     If @Sifra_Podg Is Not Null
  127098.         If @PocnuvaSo ='D'
  127099.             Set @SSQLArt=@SSQLArt + ' AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  127100.         Else
  127101.             Set @SSQLArt=@SSQLArt + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  127102.     If @Sifra_Gr Is Not NULL
  127103.         Set @SSQLArt = @SSQLArt + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  127104.     If @Sifra_Art_Od Is Not NULL
  127105.         Set @SSQLArt = @SSQLArt + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  127106.     If @Sifra_Art_Do Is Not NULL
  127107.         Set @SSQLArt = @SSQLArt + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  127108.     If @Drugo1 Is Not NULL
  127109.         Set @SSQLArt = @SSQLArt + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  127110.     If @Drugo2 Is Not NULL
  127111.         Set @SSQLArt = @SSQLArt + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  127112.     If @Drugo3 Is Not NULL
  127113.         Set @SSQLArt = @SSQLArt + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  127114.     If @Drugo4 Is Not NULL
  127115.         Set @SSQLArt = @SSQLArt + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  127116.     If @Drugo5 Is Not NULL
  127117.         Set @SSQLArt = @SSQLArt + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  127118.     If @Drugo6 Is Not NULL
  127119.         Set @SSQLArt = @SSQLArt + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  127120.     If @Drugo7 Is Not NULL
  127121.         Set @SSQLArt = @SSQLArt + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  127122.  
  127123.  
  127124.     If @Sifra_OE Is Not Null
  127125.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  127126.     If @KoiOE Is Not Null
  127127.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE In (' + @KoiOE + ') '
  127128.     If @TipDokProd IS NOT NULL
  127129.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Dok IN (' + @TipDokProd + ') '
  127130.     If @Datum_Od Is Not NULL
  127131.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  127132.     If @Datum_Do Is Not NULL
  127133.         Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  127134.  
  127135.  
  127136.     If @GrKup Is Not Null
  127137.     Begin
  127138.         CREATE   Table #KupObj
  127139.         (
  127140.             Sifra_Kup    char(6),
  127141.             Sifra_Obj    smallint
  127142.         )
  127143.         CREATE   Table #KupObj1
  127144.         (
  127145.             Sifra_Kup    char(6),
  127146.             Sifra_Obj    smallint
  127147.         )
  127148.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  127149.         Exec(@SSQL)
  127150.  
  127151.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  127152.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  127153.                 From SGrKupObj GK 
  127154.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  127155.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  127156.         Exec(@SSQL)
  127157.  
  127158.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  127159.         Exec(@SSQL)
  127160.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  127161.     End
  127162.  
  127163.     If @GrArt Is Not Null
  127164.     Begin
  127165.         Create Table #GrArt
  127166.         (
  127167.             Sifra_Art    varchar(20)
  127168.         )
  127169.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  127170.  
  127171.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  127172.         Exec(@SSQL)
  127173.     End
  127174.  
  127175.     Create Table #TabBrKup
  127176.     (
  127177.         Sifra_Pat    int,
  127178.         GrPat        varchar(10),
  127179.         BrKupPreth    int,
  127180.         BrKupDenes    int,
  127181.         BrKupPrethMes int,
  127182.         --BrNoviKup    int,
  127183.         ProdPaketi    decimal(18,4),
  127184.         ProdVrednost    decimal(18,4),
  127185.         ProdLitri        decimal(18,4),
  127186.         BrFakturi    int
  127187.     )
  127188.     Set @SSQL = ' Select D.Sifra_Pat, Null,
  127189.             Count(Distinct (Case When D.Datum_Dok < ''' + Cast(@Datum_Do as varchar(30)) + ''' Then (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Kup + '' '' + Cast(D.Sifra_Obj as varchar(4)) Else D.Sifra_Kup End) end)), 
  127190.             Count(Distinct (Case When D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' Then (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Kup + '' '' + Cast(D.Sifra_Obj as varchar(4)) Else D.Sifra_Kup End) end)),
  127191.             Count(Distinct (Case When D.Datum_Dok < ''' + Cast(Year(@Datum_Do) as varchar(4)) + '-' + Cast(month(@Datum_Do) as varchar(2)) + '-01' + ''' Then (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Kup + '' '' + Cast(D.Sifra_Obj as varchar(4)) Else D.Sifra_Kup End) end)),
  127192.             Sum(Case When D.Datum_Dok = ''' + Cast(@Datum_Do as varchar(30)) + ''' Then (Case When K.ImaKomerc > 0 Then S.Kolic / K.ImaKomerc Else S.Kolic End) Else 0 End) ProdPaketi,
  127193.             Sum(Case When D.Datum_Dok = ''' + Cast(@Datum_Do as varchar(30)) + ''' Then (S.Kolic * (Case When S.DanDokCena = ''D'' Then S.DokCena Else S.DokCena * (1+S.Posn/100) End) * (1-S.Uces/100) * (1-D.Kasa/100)) Else 0 End) ProdVrednost,
  127194.             Sum(Case When D.Datum_Dok = ''' + Cast(@Datum_Do as varchar(30)) + ''' Then (S.Kolic * K.Volumen / 1000) Else 0 End) ProdLitri,
  127195.             Count(Distinct (Case When D.Datum_Dok = ''' + Cast(@Datum_Do as varchar(30)) + ''' Then D.DokrID End)) BrFakturi
  127196.             From Dokr D
  127197.             Inner Join Stavr S On S.DokrID=D.DokrID
  127198.             Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art '
  127199.     If @GrKup Is Not Null
  127200.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  127201.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  127202.     If @GrArt Is Not Null
  127203.         Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  127204.     If @Sifra_Gr Is Not Null
  127205.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  127206.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  127207.         Or (@Pod5 Is Not Null) Or (@Pod6 Is Not Null) Or (@Pod7 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@KoiPat Is Not Null)  Or (@Koi_Gradovi Is Not Null)
  127208.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  127209.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  127210.     Set @SSQL = @SSQL + ' Where 1=1 '
  127211.  
  127212.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLKup + @SSQLArt + ' Group By D.Sifra_Pat '
  127213.  
  127214.     Insert Into #TabBrKup Exec (@SSQL)
  127215.  
  127216.     Update #TabBrKup Set GrPat = Sif_GrPat From SGrPat Where SGrPat.Sifra_Pat = #TabBrKup.Sifra_Pat --And SGrPat.Sif_GrPat In (
  127217.  
  127218.     Select T.GrPat, G.Ime_GrPat, T.Sifra_Pat, P.ImePat, T.BrKupPreth, T.BrKupDenes, (T.BrKupDenes - T.BrKupPreth) BrNoviKup, 
  127219.             T.BrKupPrethMes, (T.BrKupDenes - T.BrKupPrethMes) BrNoviKupMes,  T.ProdPaketi, T.ProdVrednost, T.ProdLitri, T.BrFakturi
  127220.     From #TabBrKup T
  127221.     Left Outer Join Patnici P On P.Sifra_Pat = T.Sifra_Pat
  127222.     Left Outer Join GrPat G On G.Sif_GrPat=T.GrPat
  127223.  
  127224.  
  127225. Go
  127226. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_komercpomes]'))
  127227. drop procedure [dbo].[sp_prod_komercpomes]
  127228.  
  127229. Go
  127230. CREATE                    PROCEDURE sp_Prod_KomercPoMes
  127231.     @Sifra_OE Smallint, 
  127232.     @KoiOE Varchar(200) = Null,
  127233.     @Pod1 Smallint = Null,
  127234.     @Pod2 Smallint = Null,
  127235.     @Pod3 Smallint = Null,
  127236.     @Pod4 Smallint = Null,
  127237.     @Pod5 Smallint = Null,
  127238.     @Sifra_Tip Smallint = Null,
  127239.     @Sifra_Art_Od Varchar(20) = Null,
  127240.     @Sifra_Art_Do Varchar(20) = Null,
  127241.     @Datum_Od Smalldatetime,      -- Zatoa sto ima promet od prethodna godina 
  127242.     @Datum_Do Smalldatetime,        -- datumite mora de se vo ramkite na edna godina
  127243.     @Sifra_Brand_Od Smallint = Null,
  127244.     @Sifra_Brand_Do Smallint = Null,
  127245.     @Sifra_Kup_Od Char(6) = Null,
  127246.     @Sifra_Kup_Do Char(6) = Null,
  127247.     @Podred Char(1) = Null,
  127248.     @Kto Char(6) = Null,
  127249.     @Sifra_Gr Char(3) = Null,
  127250.     @Sifra_Podg Char(6) = Null,
  127251.     @Lokacija Varchar(10) = Null,
  127252.     @TipKup Char(11) = Null,
  127253. --    @Komint_KObj Char(1) = Null,
  127254.     @RazbijSostav Char(1) = Null,
  127255.     @Sifra_obj Smallint = Null,
  127256.     @Sifra_Grad Varchar(200) = Null,
  127257.     @Koi_Regioni Varchar(200) = Null,
  127258.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  127259.     @Drugo1    smallint = Null,
  127260.     @Drugo2    smallint = Null,
  127261.     @Drugo3    smallint = Null,
  127262.     @Drugo4    smallint = Null,
  127263.     @Drugo5    smallint = Null,
  127264.     @Sifra_Pat    smallint = Null,
  127265.     @KomercKako     char(1) = 'I',
  127266.     @KojaCena    char(1) = '1',         -- 1 - Krajna,          3- Osnov,        2 - SoRabat      4 - NPS    
  127267.     @PrikaziPo    char(1)='P',        -- P - Patnik,    B - Brend
  127268.     @TipDokProd    varchar(300) = Null
  127269. AS
  127270.     If @PoKojDatum = 'V'
  127271.             If @Datum_Do Is Not Null
  127272.         Set @Datum_Do = @Datum_Do + 1
  127273.     Declare @SSQL Varchar(8000)
  127274.     Declare @SSQLUsl Varchar(8000)
  127275.     Declare @SSQLDat Varchar(8000)
  127276.     Declare @SSQLGroup Varchar(8000)
  127277.     Set @SSQLUsl = ' '
  127278.     Set @SSQLDat = ' '
  127279.     Set @SSQLGroup = ' '
  127280.     CREATE    Table #tSostav
  127281.     (    Sifra_Art Varchar(20),
  127282.         Sifra_Sur Varchar(20),
  127283.         Ima_Kolic Decimal(18,6),
  127284.         Cena Decimal(18,6),
  127285.         VkCena Decimal(18,6)
  127286.     )
  127287.     If @RazbijSostav = 'D'
  127288.         Begin
  127289.             Set @SSQL = 'Insert #tSostav
  127290.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  127291.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  127292.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  127293.             Exec(@SSQL)
  127294.         End
  127295.     Set @SSQL = 'Insert #tSostav
  127296.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  127297.         From Katart K '
  127298.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  127299.     If @RazbijSostav = 'D'
  127300.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  127301.     Exec(@SSQL)
  127302. --select * from #tsostav
  127303. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  127304. --------------------------------------------------------------
  127305.     If @PrikaziPo = 'P'
  127306.         Set @SSQL = 'Select D.Sifra_Pat, '
  127307.     Else If @PrikaziPo = 'B'
  127308.         Set @SSQL = 'Select K.Sifra_Drg, '
  127309.     Set @SSQL = @SSQL + 'Month(S.Datum_Dok) As Mesec, Year(S.Datum_Dok) As Godina, '
  127310.     If @KojaCena = '3'
  127311.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Promet, '
  127312.     Else If @KojaCena = '2'
  127313.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Promet, '
  127314.     Else If @KojaCena = '1'
  127315.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Promet, '
  127316.     Else If @KojaCena = '4'
  127317.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Promet, '
  127318.     Set @SSQL = @SSQL + ' Count(Distinct D.Broj_Dok) Fakturi, Count(S.DokID) Stavki, Count(Distinct D.Sifra_Kup) Komintenti '
  127319.     Set @SSQL = @SSQL + 'From #tSostav TS
  127320.                 Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  127321.                 Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  127322.                 Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  127323.                 Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  127324.                 Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup AND KO.SIFRA_OBJ=D.SIFRA_OBJ '
  127325.     If @Sifra_Gr Is Not Null
  127326.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  127327. --------------------------------------------------------------------------------------- U S L O V ----------------------------------------------------------------------------------------------------------------------------------------------------------
  127328.     Set @SSQLUsl = @SSQLUsl + 'Where K.Iskluci <> ''D'' '
  127329.     If @Lokacija Is Not NULL
  127330.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  127331.     If @Kto Is Not NULL
  127332.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  127333.     If @Sifra_Podg Is Not NULL
  127334.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  127335.     If @Sifra_Gr Is Not NULL
  127336.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  127337.     If @Sifra_Art_Od Is Not Null
  127338.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  127339.     If @Sifra_Art_Do Is Not Null
  127340.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  127341.        If @KomercKako = 'I'
  127342.         If @Sifra_Pat IS NOT NULL
  127343.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  127344.        If @KomercKako = 'T'
  127345.         If @Sifra_Pat IS NOT NULL
  127346.             SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  127347.     If @Pod1 Is Not NULL
  127348.            Begin
  127349.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  127350.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  127351.            End
  127352.     If @Pod2 Is Not NULL
  127353.            Begin
  127354.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  127355.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  127356.            End
  127357.     If @Pod3 Is Not NULL
  127358.            Begin
  127359.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  127360.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  127361.            End
  127362.     If @Pod4 Is Not NULL
  127363.            Begin
  127364.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  127365.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  127366.            End
  127367.     If @Pod5 Is Not NULL
  127368.            Begin
  127369.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  127370.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  127371.            End
  127372. --    If @Pod5 Is Not NULL
  127373. --        Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  127374.     If @Sifra_Tip Is Not Null
  127375.         SET @SSQLUsl = @SSQLUsl +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  127376.     If @Sifra_Kup_Od Is Not NULL
  127377.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  127378.     If @Sifra_Kup_Do Is Not NULL
  127379.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  127380.     If @Sifra_Brand_Od Is Not NULL
  127381.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Drg>=''' + Cast(@Sifra_Brand_Od As Varchar(5)) + ''' '
  127382.     If @Sifra_Brand_Do Is Not NULL
  127383.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Drg<=''' + Cast(@Sifra_Brand_Do As Varchar(5)) + ''' '
  127384.     If @Sifra_obj Is Not NULL
  127385.         Set @SSQLUsl = @SSQLUsl + 'And D.Sifra_obj=''' + Cast(@Sifra_obj As Varchar(5)) + ''' '
  127386.     If @Sifra_Grad Is Not NULL    
  127387.         Begin
  127388.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Sifra_Grad + ')) 
  127389.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Sifra_Grad + '))) '     
  127390.         End
  127391.     If @Koi_Regioni Is Not NULL    
  127392.         Begin
  127393.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  127394.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  127395.         End
  127396.     If @TipKup Is Not NULL
  127397.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  127398.     If @Sifra_OE Is Not NULL    
  127399.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  127400.     If @KoiOE Is Not NULL
  127401.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  127402.     If @Drugo1 Is Not NULL
  127403.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  127404.     If @Drugo2 Is Not NULL
  127405.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  127406.     If @Drugo3 Is Not NULL
  127407.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  127408.     If @Drugo4 Is Not NULL
  127409.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  127410.     If @Drugo5 Is Not NULL
  127411.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  127412.     If @TipDokProd Is Not NULL
  127413.              Set @SSQLUsl  = @SSQLUsl + ' And D.Sifra_Dok IN (' + @TipDokProd + ') '
  127414.     If @PrikaziPo = 'P'
  127415.         Set @SSQLGroup = @SSQLGroup + 'Group By D.Sifra_Pat, Month(S.Datum_Dok), Year(S.Datum_Dok) '
  127416.     Else If @PrikaziPo = 'B'
  127417.         Set @SSQLGroup = @SSQLGroup + 'Group By K.Sifra_Drg, Month(S.Datum_Dok), Year(S.Datum_Dok) '
  127418.     Set @SSQLGroup = @SSQLGroup + 'Order By Mesec, Godina'
  127419. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  127420. -------------------------------------------------------------------------------------------------------------- D A T U M -------------------------------------------------------------------------------------------------------------------------------
  127421.     Create Table #Datumi
  127422.     ( 
  127423.      Datum_Od    smalldatetime,
  127424.      Datum_Do    smalldatetime
  127425.     )
  127426.     Declare @DenOd int
  127427.     Declare @DenDo int
  127428.     Declare @MesecOd int
  127429.     Declare @MesecDo int
  127430.     Declare @Godina int
  127431.     Set @DenOd = Day(@Datum_Od)
  127432.     Set @DenDo = Day(@Datum_Do)
  127433.     Set @MesecOd=Month(@Datum_Od)
  127434.     Set @MesecDo=Month(@Datum_Do)
  127435.     Set @Godina = Year(@Datum_Do)
  127436.     While @MesecOd <= @MesecDo
  127437.     Begin
  127438.         Insert Into #Datumi Select dbo.fn_VratiDatumOdDo(@Godina, @MesecOd, @DenOd), dbo.fn_VratiDatumOdDo(@Godina, @MesecOd, @DenDo)
  127439.         Set @MesecOd = @MesecOd+1
  127440.     End    
  127441. --    select * from #Datumi
  127442. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------    
  127443. ------------------------------------------------------------------------------------------------- R  E  Z  U  L  T  A  T  I ----------------------------------------------------------------------------------------------------------------------------
  127444.     Declare @Dat_Od as smalldatetime
  127445.     Declare @Dat_Do as smalldatetime
  127446.     Create Table #Rez
  127447.     (
  127448.      Sifra        smallint,
  127449.      Mesec        varchar(2),
  127450.      Godina        varchar(4),
  127451.      Promet        decimal(18,6),
  127452.      Fakturi        int,
  127453.      Stavki        int,
  127454.      Komintenti    int
  127455.     )
  127456.     Declare Crs Cursor Fast_Forward For Select Datum_Od, Datum_Do From #Datumi Order By Datum_Od
  127457.     Open Crs
  127458.     Fetch Next From Crs Into @Dat_Od, @Dat_Do
  127459.     While @@FETCH_STATUS = 0
  127460.     Begin
  127461.         If @PoKojDatum = 'V'
  127462.         Begin
  127463.             If @Dat_Od Is Not NULL
  127464.                 Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes>=''' + Cast(@Dat_Od As Varchar(25)) + ''' '
  127465.             If @Dat_Do Is Not NULL
  127466.                 Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes<''' + Cast(@Dat_Do As Varchar(25)) + ''' '
  127467.         End
  127468.         Else 
  127469.         Begin
  127470.             If @Dat_Od Is NOT Null
  127471.                 SET @SSQLDat = @SSQLDat + 'AND S.Datum_Dok >= ''' +Cast(@Dat_OD as varchar(35)) +''' '
  127472.             If @Dat_Do Is NOT Null
  127473.                 SET @SSQLDat = @SSQLDat + 'AND S.Datum_Dok <= ''' +Cast(@Dat_Do as varchar(35)) +''' '
  127474.         End
  127475.         Print @SSQL+@SSQLUSL+@SSQLDat+@SSQLGroup
  127476.         Insert into #Rez Exec(@SSQL+@SSQLUSL+@SSQLDat+@SSQLGroup)
  127477.         Set @SSQLDat = ' '
  127478.         Fetch Next From Crs Into @Dat_Od, @Dat_Do
  127479.     End
  127480.     Close Crs
  127481.     Deallocate Crs
  127482. ------------------  PROSECNA PRODAZBA VO POSLEDNITE MESECI BEZ TEKOVNIOT
  127483.     Create table #ProsProd
  127484.     (
  127485.      Sifra        smallint,
  127486.      Godina        varchar(4),
  127487.      ProsPromet    Decimal(18,6),
  127488.      ProsFakturi    Decimal(18,6),
  127489.      ProsStavki    Decimal(18,6),
  127490.      ProsKomint    Decimal(18,6)
  127491.     )
  127492.     Insert Into #ProsProd Select Sifra,  Godina, Avg(Promet), Avg(Fakturi), Avg(Stavki), Avg(Komintenti)
  127493.     From #Rez
  127494.     Where Mesec <= @MesecDo-1
  127495.     Group By Sifra,  Godina
  127496.     Insert into #Rez 
  127497.     Select Sifra, 13, Godina, ProsPromet, ProsFakturi, ProsStavki, ProsKomint From #ProsProd
  127498. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  127499. ---------------------------------------------------------------------------- Presmetuvanje na procentite -----------------------------------------------------------------------------------
  127500.     Create Table #Proc
  127501.     (
  127502.      Sifra        smallint,
  127503.      Mesec        varchar(2),
  127504.      Godina        varchar(4),
  127505.      Promet        decimal(18,6),
  127506.      Fakturi        int,
  127507.      Stavki        int,
  127508.      Komintenti    int
  127509.     )
  127510.     Update #Rez set sifra = 756 where sifra is null        -- po pretpostavka deka nema sifra na patnik ili brend 756
  127511.     Update #ProsProd set sifra = 756 where sifra is null
  127512.     Insert into #Proc
  127513.     Select R.Sifra, 14, R.Godina, ((R.Promet/P.ProsPromet)-1)*100, ((R.Fakturi/P.ProsFakturi)-1)*100, ((R.Stavki/P.ProsStavki)-1)*100, ((R.Komintenti/P.ProsKomint)-1)*100
  127514.     From #Rez R
  127515.     Inner Join #ProsProd P On P.Sifra=R.Sifra
  127516.     Where R.Mesec = @MesecDo
  127517.     Insert Into #Rez select * from #Proc
  127518. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  127519.     Set @SSQL = ' Select R.Sifra, '
  127520.     If @PrikaziPo = 'P'
  127521.         Set @SSQL = @SSQL + ' P.ImePat as Ime, '
  127522.     Else If @PrikaziPo = 'B'
  127523.         Set @SSQL = @SSQL + ' D.Ime as Ime, '
  127524.     Set @SSQL = @SSQL + ' R.Mesec, R.Godina, R.Promet, R.Fakturi, R.Stavki, R.Komintenti '
  127525.     Set @SSQL = @SSQL + ' From #Rez R    
  127526.             Left Outer Join #ProsProd A On A.Sifra = R.Sifra and A.Godina = R.Godina '
  127527.     If @PrikaziPo = 'P'
  127528.         Set @SSQL = @SSQL + ' Left Outer Join Patnici P On P.Sifra_Pat = R.Sifra'
  127529.     Else If @PrikaziPo = 'B'
  127530.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel D On D.Sifra_Drg = R.Sifra '
  127531.     Set @SSQL = @SSQL + ' Order by R.sifra'
  127532.     Exec (@SSQL)
  127533. --podred
  127534. --    Momentalno e napravena procedurata dvata datumi da se vo ramkite na edna godina
  127535. --    pokasno moze da se pepravi so toa sto treba da ima kontrola poveke od 12 meseci.
  127536.  
  127537.  
  127538. Go
  127539. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_nabavka_sporedba_po_godini]'))
  127540. drop procedure [dbo].[sp_prod_nabavka_sporedba_po_godini]
  127541.  
  127542. Go
  127543.  
  127544. CREATE   PROCEDURE sp_Prod_Nabavka_Sporedba_Po_Godini
  127545.     @Sifra_Oe        smallint = Null,
  127546.     @Koi_Oe        varchar(10) = Null,
  127547.     @Datum_Dok_Od    smalldatetime = Null,
  127548.     @Datum_Dok_Do    smalldatetime = Null,
  127549.     @TipDokProd        varchar(300) = Null,
  127550.     @Sifra_Art_Od        varchar(20) = Null,
  127551.     @Sifra_Art_Do        varchar(20) = Null,
  127552.     @Sifra_Gr        char(3) = Null,
  127553.     @Sifra_Podg        char(6) = Null,
  127554.     @Lokacija        char(10) = Null,
  127555.     @Sifra_Kup        char(6) = Null,
  127556.     @KFSifra_Kup        char(1) = 'N',
  127557.     @Sifra_Drg        smallint = Null,
  127558.     @Sifra_Drg1        smallint = Null,
  127559.     @APod1        smallint = Null,
  127560.     @APod2        smallint = Null,
  127561.     @APod3        smallint = Null,
  127562.     @APod4        smallint = Null,
  127563.     @APod5        smallint = Null,
  127564.     @APod6        smallint = Null,
  127565.     @APod7        smallint = Null,
  127566.     @Koi_Gradovi        varchar(300) = Null,
  127567.     @Koi_Regioni        varchar(300) = Null,
  127568.     @KPod1        smallint = Null,
  127569.     @KPod2        smallint = Null,
  127570.     @KPod3        smallint = Null,
  127571.     @KPod4        smallint = Null,
  127572.     @KPod5        smallint = Null,
  127573.     @KPod6        smallint = Null,
  127574.     @KPod7        smallint = Null,
  127575.     @Sifra_Tip         Smallint = Null,
  127576.     @Sifra_Pat        Smallint = Null,
  127577.     @TipKup        Varchar(11)=Null,
  127578.     @Sifra_Nivo        Char(2) = Null,
  127579.     @Aktiven        Char(1) = Null,
  127580.     @KomercKako        Char(1) = 'I',                -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  127581.     @KolkuGodNazad    smallint = 1,        -- 1- edna,    2 - dve
  127582.     @VratiSto        char(1) = '4',        -- 4 - Podelbi 4 i 5,  A - Artikal, 5 - Podelba 5, G - Grad                    -- NEMA (A - Artikal,   D - Den,   M - Mesec,   P - Podgrupa,    B - Brend,   O - Org.Ed  )
  127583.     @Prikazi        char(1) = 'K',        -- K - Kolicina,   B - Brend Kolicina,   T - Tezina,   P - Paketi,   H - Hektolitri
  127584.     @Sifra_Za        char(1) = '1',
  127585.     @Kto            char(6) = Null,
  127586.     @GrKup            varchar(500)= null,
  127587.     @GrArt            varchar(500)= null
  127588. As
  127589.     Declare @SSQL as Varchar(8000)
  127590.     Declare @DatGod1_Od    smalldatetime
  127591.     Declare @DatGod1_Do    smalldatetime
  127592. --    Declare @DatGod2_Od    smalldatetime
  127593. --    Declare @DatGod2_Do    smalldatetime
  127594.     Declare @God smallint
  127595.     Declare @God1 smallint
  127596. --    Declare @God2 smallint
  127597.     Set @God = Year(@Datum_Dok_Od)
  127598.     Set @God1 = @God-1
  127599. --    Set @God2 = @God-2
  127600. --    If @KolkuGodNazad = 2
  127601. --    Begin
  127602. --        Set @DatGod1_Od = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-1, Month(@Datum_Dok_Od), Day(@Datum_Dok_Od))
  127603. --        Set @DatGod1_Do = dbo.fn_NapraviDatum(Year(@Datum_Dok_Do)-1, Month(@Datum_Dok_Do), Day(@Datum_Dok_Do))
  127604. --        Set @DatGod2_Od = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-2, Month(@Datum_Dok_Od), Day(@Datum_Dok_Od))
  127605. --        Set @DatGod2_Do = dbo.fn_NapraviDatum(Year(@Datum_Dok_Do)-2, Month(@Datum_Dok_Do), Day(@Datum_Dok_Do))
  127606. --    End
  127607.     If @KolkuGodNazad = 1
  127608.     Begin 
  127609.         Set @DatGod1_Od = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-1, Month(@Datum_Dok_Od), Day(@Datum_Dok_Od))
  127610.         Set @DatGod1_Do = dbo.fn_NapraviDatum(Year(@Datum_Dok_Do)-1, Month(@Datum_Dok_Do), Day(@Datum_Dok_Do))
  127611. --        Set @DatGod2_Od = Null
  127612. --        Set @DatGod2_Do = Null
  127613.     End
  127614.     Create Table #Tab
  127615.     (
  127616.      Sifra_Oe    smallint,
  127617.      Sifra_Art     varchar(20),    
  127618.      Datum_Dok    smalldatetime,
  127619.      Kolic        decimal(18,6),
  127620.      DokCena    decimal(18,6),
  127621.      Grad        varchar(40)
  127622.     )
  127623.     Set @SSQL = 'Select S.Sifra_Oe, S.Sifra_Art, S.Datum_Dok, Sum(S.Kolic) Kolic, (Case When S.DanDokCena = ''D'' Then S.DokCena Else (S.DokCena*(1+S.Posn/100)) End), '
  127624.     If @VratiSto = 'G'
  127625.         Set @SSQL = @SSQL + ' G.ImeGrad '
  127626.     Else
  127627.         Set @SSQL = @SSQL + ' Null Ime_Grad '
  127628.     Set @SSQL = @SSQL + ' From Dokr D
  127629.             Inner Join Stavr S On S.DokrID=D.DokrID
  127630.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  127631.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup 
  127632.             Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj '
  127633.     If @VratiSto = 'G'
  127634.         Set @SSQL = @SSQL + ' Left Outer Join Grad G On G.Sifra_Grad = (Case When KO.Sifra_Grad Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End)'
  127635.     If @Sifra_Gr Is Not Null
  127636.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  127637.     If @Sifra_Drg1 Is Not Null
  127638.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  127639.     If @Sifra_Za = '2'
  127640.         Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''2'' '
  127641.     Else 
  127642.         Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' '
  127643. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  127644.     Set @SSQL = @SSQL + ' And ('
  127645.     Set @SSQL = @SSQL + ' (D.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''') '
  127646.     If @KolkuGodNazad = 1 -- Or @KolkuGodNazad = 2
  127647.         Set @SSQL = @SSQL + ' Or (D.Datum_Dok >= ''' + Cast(@DatGod1_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + Cast(@DatGod1_Do as varchar(30)) + ''') '
  127648. --    If @KolkuGodNazad = 2
  127649. --        Set @SSQL = @SSQL + ' Or (D.Datum_Dok >= ''' + Cast(@DatGod2_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + Cast(@DatGod2_Do as varchar(30)) + ''') '
  127650.     Set @SSQL = @SSQL + ' )'
  127651. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------    
  127652.     If @Sifra_Oe Is Not Null
  127653.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  127654.     If @Koi_Oe Is Not Null
  127655.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  127656.     If @Sifra_Kup Is Not Null
  127657.     Begin
  127658.         If @KFSifra_Kup = 'D'
  127659.             Set @SSQL = @SSQL + ' And (D.Sifra_Kup <> ''' + @Sifra_Kup + ''' Or D.Sifra_Kup Is Null) '
  127660.         Else
  127661.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  127662.     End
  127663.     If @TipDokProd Is Not Null
  127664.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDokProd + ') '
  127665.     If @Sifra_Podg Is Not Null
  127666.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  127667.     If @Lokacija Is Not Null
  127668.         Set @SSQL = @SSQL + ' And K.Lokacija = ''' + @Lokacija + ''' '
  127669.     If @Sifra_Gr Is Not Null
  127670.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  127671.     If @Sifra_Art_Od Is Not Null
  127672.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  127673.     If @Sifra_Art_Do Is Not Null
  127674.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  127675.     If @Sifra_Drg Is Not Null
  127676.         Set @SSQL = @SSQL + ' And K.Sifra_Drg = ' + Cast(@Sifra_Drg as varchar(10)) + ' '
  127677.     If @Sifra_Drg1 Is Not Null
  127678.         Set @SSQL = @SSQL + ' And B.Sifra_Drg1 = ' + Cast(@Sifra_Drg1 as varchar(10)) + ' '
  127679.     If @APod1 Is Not Null
  127680.         Set @SSQL = @SSQL + ' And K.Drugo1 = ' + Cast(@APod1 as varchar(10)) + ' '
  127681.     If @APod2 Is Not Null
  127682.         Set @SSQL = @SSQL + ' And K.Drugo2 = ' + Cast(@APod2 as varchar(10)) + ' '
  127683.     If @APod3 Is Not Null
  127684.         Set @SSQL = @SSQL + ' And K.Drugo3 = ' + Cast(@APod3 as varchar(10)) + ' '
  127685.     If @APod4 Is Not Null
  127686.         Set @SSQL = @SSQL + ' And K.Drugo4 = ' + Cast(@APod4 as varchar(10)) + ' '
  127687.     If @APod5 Is Not Null
  127688.         Set @SSQL = @SSQL + ' And K.Drugo5 = ' + Cast(@APod5 as varchar(10)) + ' '
  127689.     If @APod6 Is Not Null
  127690.         Set @SSQL = @SSQL + ' And K.Drugo6 = ' + Cast(@APod6 as varchar(10)) + ' '
  127691.     If @APod7 Is Not Null
  127692.         Set @SSQL = @SSQL + ' And K.Drugo7 = ' + Cast(@APod7 as varchar(10)) + ' '
  127693.     If @Kto Is Not Null
  127694.         Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '
  127695.     If @Sifra_Tip Is Not Null
  127696.         Set @SSQL = @SSQL + 'And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  127697.     If @Sifra_Nivo Is Not Null
  127698.         Set @SSQL = @SSQL + 'And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  127699.     If @TipKup Is Not Null
  127700.         Set @SSQL = @SSQL + 'And Kup.TipKup=''' + @TipKup + ''' '
  127701.     If @Sifra_Pat IS NOT NULL
  127702.     Begin 
  127703.         If @KomercKako = 'I'
  127704.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  127705.         Else 
  127706.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  127707.     End
  127708.     If @Sifra_Pat Is Not Null
  127709.         Set @SSQL = @SSQL + 'And Kup.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(10)) + ' '
  127710.     If @Koi_Gradovi Is Not Null
  127711.         Set @SSQL = @SSQL + 'And KUP.Sifra_Grad In (' + @Koi_Gradovi + ') '
  127712.     If @Koi_Regioni Is Not Null
  127713.         Set @SSQL = @SSQL + 'And KUP.Sifra_Reg In (' + @Koi_Regioni + ') '
  127714.     If @Aktiven = 'D'    
  127715.         Set @SSQL = @SSQL + ' And (KUP.Aktiven <> ''N'' or KUP.Aktiven Is Null) '     
  127716.     Else If @Aktiven = 'N'    
  127717.         Set @SSQL = @SSQL + ' And KUP.Aktiven = ''N'' '     
  127718.     If @KPod1 Is Not Null
  127719.         Set @SSQL = @SSQL + 'And Kup.KDrugo1=' + Cast(@KPod1 As Varchar(10)) + ' '
  127720.     If @KPod2 Is Not Null
  127721.         Set @SSQL = @SSQL + 'And Kup.KDrugo2=' + Cast(@KPod2 As Varchar(10)) + ' '
  127722.     If @KPod3 Is Not Null
  127723.         Set @SSQL = @SSQL + 'And Kup.KDrugo3=' + Cast(@KPod3 As Varchar(10)) + ' '
  127724.     If @KPod4 Is Not Null
  127725.         Set @SSQL = @SSQL + 'And Kup.KDrugo4=' + Cast(@KPod4 As Varchar(10)) + ' '
  127726.     If @KPod5 Is Not Null
  127727.         Set @SSQL = @SSQL + 'And Kup.KDrugo5=' + Cast(@KPod5 As Varchar(10)) + ' '
  127728.     If @KPod6 Is Not Null
  127729.         Set @SSQL = @SSQL + 'And Kup.KDrugo6=' + Cast(@KPod6 As Varchar(10)) + ' '
  127730.     If @KPod7 Is Not Null
  127731.         Set @SSQL = @SSQL + 'And Kup.KDrugo7=' + Cast(@KPod7 As Varchar(10)) + ' '
  127732.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, S.Sifra_Art, S.Datum_Dok, (Case When S.DanDokCena = ''D'' Then S.DokCena Else (S.DokCena*(1+S.Posn/100)) End) '
  127733.     If @VratiSto = 'G'
  127734.         Set @SSQL = @SSQL + ', G.ImeGrad '
  127735.     Insert Into #Tab Exec(@SSQL)
  127736.     ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  127737. /*
  127738.     If @VratiSto = 'G'
  127739.         Set @SSQL = ' Select D1.Ime_1 Red, Null as Pakuvanje, Null as Sifra_Podg, '   
  127740.     Else If @VratiSto = 'M'
  127741.         Set @SSQL = ' Select Cast(Month(T.Datum_Dok) as varchar(20)) Red, Null as Pakuvanje, Null as Sifra_Podg, '
  127742.     Else If @VratiSto = 'D'
  127743.         Set @SSQL = ' Select (Case When Day(Datum_Dok) < 10 Then ''0'' End) + Cast(Day(T.Datum_Dok) as varchar(20)) + ''/'' + (Case When Month(Datum_Dok) < 10 Then ''0'' End) + Cast(Month(T.Datum_Dok) as varchar(20)) Red, Null as Pakuvanje, Null as Sifra_Podg, '
  127744.     Else If @VratiSto = 'P'
  127745.         Set @SSQL = ' Select P.Ime_Podg Red, Null as Pakuvanje, Null as Sifra_Podg, ' 
  127746.     Else If @VratiSto = 'B'
  127747.         Set @SSQL = ' Select B.Ime Red, Null as Pakuvanje, Null as Sifra_Podg, ' 
  127748.     Else If @VratiSto = 'A'
  127749.         Set @SSQL = ' Select K.ImeArt Red, D1.Ime_1 Pakuvanje, K.Sifra_Podg,  '
  127750.     Else If @VratiSto = 'O'
  127751.         Set @SSQL = ' Select O.ImeOrg Red, Null as Pakuvanje, Null as Sifra_Podg, ' 
  127752.     Else If @VratiSto = '4'
  127753. */
  127754.     Set @SSQL = ''
  127755.     If @VratiSto = 'A'
  127756.         Set @SSQL = ' Select T.Sifra_Art, K.ImeArt, P1.Ime_1 Podelba1, Year(Datum_Dok) Godina, Null Mesec, Null Nedela, Null Den,  Null Datum_Dok, P4.Ime_4 Podelba4, P5.Ime_5 Podelba5, Null Grad, ' 
  127757.     Else If @VratiSto = '4'
  127758.         Set @SSQL = ' Select Null Sifra_Art, Null ImeArt, Null Podelba1, Year(Datum_Dok) Godina, Month(Datum_Dok) Mesec, DatePart(Week, Datum_Dok) Nedela,
  127759.                 (Case DateName(weekday, Datum_Dok) 
  127760.                     When ''Monday'' Then ''1 Ponedelnik'' 
  127761.                     When ''Tuesday'' Then ''2 Vtornik'' 
  127762.                     When ''Wednesday'' Then ''3 Sreda''
  127763.                     When ''Thursday'' Then ''4 Cetvrtok''
  127764.                     When ''Friday'' Then ''5 Petok''
  127765.                     When ''Saturday'' Then ''6 Sabota'' 
  127766.                     When ''Sunday'' Then ''7 Nedela'' 
  127767.                     End) Den,  
  127768.                 Datum_Dok, P4.Ime_4 Podelba4, P5.Ime_5 Podelba5, Null Grad, ' 
  127769.     Else If @VratiSto = '5'
  127770.         Set @SSQL = ' Select Null Sifra_Art, Null ImeArt, Null Podelba1, Year(Datum_Dok) Godina, Null Mesec, Null Nedela, Null Den,  Null Datum_Dok, Null Podelba4, P5.Ime_5 Podelba5, Null Grad, ' 
  127771.     Else If @VratiSto = 'G'
  127772.         Set @SSQL = ' Select T.Sifra_Art, K.ImeArt, P1.Ime_1 Podelba1, Year(Datum_Dok) Godina, Null Mesec, Null Nedela, Null Den,  Null Datum_Dok, Null Podelba4, Null Podelba5, T.Grad, ' 
  127773.     If @Prikazi = 'K'
  127774.         Set @SSQL = @SSQL + ' Sum(T.Kolic) Vrednost '
  127775.     Else If @Prikazi = 'B'
  127776.         Set @SSQL = @SSQL + ' Sum(T.Kolic*K.KolkuDrg) Vrednost '
  127777.     Else If @Prikazi = 'T'
  127778.         Set @SSQL = @SSQL + ' Sum(T.Kolic*K.Tezina) Vrednost '
  127779.     Else If @Prikazi = 'P'
  127780.         Set @SSQL = @SSQL + ' Sum(T.Kolic/K.ImaKomerc) Vrednost '
  127781.     Else If @Prikazi = 'H'
  127782.         Set @SSQL = @SSQL + ' Sum(T.Kolic*K.Tezina/100000) Vrednost '
  127783.     Set @SSQL = @SSQL + ' From #Tab T 
  127784.                 Inner Join Katart K on  K.Sifra_Art = T.Sifra_Art '
  127785.     If @VratiSto = 'A'
  127786.         Set @SSQL = @SSQL + ' Left Outer Join Drugo1 P1 On P1.Sifra_1=K.Drugo1 
  127787.                       Left Outer Join Drugo4 P4 On P4.Sifra_4=K.Drugo4 
  127788.                       Left Outer Join Drugo5 P5 On P5.Sifra_5=K.Drugo5 '
  127789.     Else If @VratiSto = '4'
  127790.         Set @SSQL = @SSQL + ' Left Outer Join Drugo4 P4 On P4.Sifra_4=K.Drugo4 
  127791.                       Left Outer Join Drugo5 P5 On P5.Sifra_5=K.Drugo5 '
  127792.     Else If @VratiSto = '5'
  127793.         Set @SSQL = @SSQL + ' Left Outer Join Drugo5 P5 On P5.Sifra_5=K.Drugo5 '
  127794.     Else If @VratiSto = 'G'
  127795.         Set @SSQL = @SSQL + ' Left Outer Join Drugo1 P1 On P1.Sifra_1=K.Drugo1 '
  127796. /*    If @VratiSto = 'G'
  127797.         Set @SSQL = @SSQL + ' Group By D1.Ime_1 ' 
  127798.     Else If @VratiSto = 'M'
  127799.         Set @SSQL = @SSQL + ' Group By Cast(Month(T.Datum_Dok) as varchar(20)) '
  127800.     Else If @VratiSto = 'D'
  127801.         Set @SSQL = @SSQL + ' Group By (Case When Day(Datum_Dok) < 10 Then ''0'' End) + Cast(Day(T.Datum_Dok) as varchar(20)) + ''/'' + (Case When Month(Datum_Dok) < 10 Then ''0'' End) + Cast(Month(T.Datum_Dok) as varchar(20)) '
  127802.     Else If @VratiSto = 'P'
  127803.         Set @SSQL = @SSQL + ' Group By P.Ime_Podg ' 
  127804.     Else If @VratiSto = 'B'
  127805.         Set @SSQL = @SSQL + ' Group By B.Ime ' 
  127806. */
  127807.     If @VratiSto = 'A'
  127808.         Set @SSQL = @SSQL + ' Group By T.Sifra_Art, K.ImeArt, P1.Ime_1, Year(Datum_Dok), P4.Ime_4, P5.Ime_5 '
  127809.     Else If @VratiSto = '4'
  127810.         Set @SSQL = @SSQL + ' Group By P4.Ime_4, P5.Ime_5, Datum_Dok ' 
  127811.     Else If @VratiSto = '5'
  127812.         Set @SSQL = @SSQL + ' Group By P5.Ime_5, Datum_Dok ' 
  127813.     Else If @VratiSto = 'G'
  127814.         Set @SSQL = @SSQL + ' Group By T.Sifra_Art, K.ImeArt, P1.Ime_1, Year(Datum_Dok), T.Grad '
  127815. print @SSQL
  127816.     Exec (@SSQL)
  127817.  
  127818.  
  127819. Go
  127820. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_napl_po_komint]'))
  127821. drop procedure [dbo].[sp_prod_napl_po_komint]
  127822.  
  127823. Go
  127824. CREATE                       PROCEDURE sp_Prod_Napl_Po_Komint
  127825.     @Sifra_OE Smallint, 
  127826.     @KoiOE Varchar(500) = Null,
  127827.     @Pod1 Smallint = Null,
  127828.     @Pod2 Smallint = Null,
  127829.     @Pod3 Smallint = Null,
  127830.     @Pod4 Smallint = Null,
  127831.     @Pod5 Smallint = Null,
  127832.     @Sifra_Tip Smallint = Null,
  127833.     @Datum_Od Smalldatetime = Null,
  127834.     @Datum_Do Smalldatetime = Null,
  127835.     @Sifra_Kup_Od Char(6) = Null,
  127836.     @Sifra_Kup_Do Char(6) = Null,
  127837.     @Koi_Gradovi Varchar(200) = Null,
  127838.     @Sifra_Pat    smallint = Null,
  127839.     @TipDokProd    varchar(200) = Null,
  127840.     @Koi_Regioni     Varchar(200) = Null,
  127841.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  127842.     @TipKup Char(11) = Null,
  127843.     @Sifra_obj Smallint = Null,
  127844.     @KomercKako     char(1) = 'I',
  127845.     @KojaCena    char(1) = '1',                     -- 4 - NPS,    3 - Osnovna,     1 - Krajna,     2 - SoRabat
  127846.     @Komint_KObj    char(1) = 'K'
  127847. AS
  127848.     If @PoKojDatum = 'V'
  127849.             If @Datum_Do Is Not Null
  127850.         Set @Datum_Do = @Datum_Do + 1
  127851.     Set Nocount On
  127852.     Declare @SSQL Varchar(8000)
  127853.     Declare @SSQLUsl Varchar(8000)
  127854.     Declare @SSQLGroup Varchar(8000)
  127855.     Declare @Toc as decimal(18,6)
  127856.     SET @SSQLUsl = ' '
  127857.     SET @SSQLGroup = ' ' 
  127858. ------------------------------------------------------------------------------------ PRODAZBA;         DENOVI NA FAKTURIRANJE --------------------------------------------------------------------------------------------------
  127859.     Create Table #Prod
  127860.     ( 
  127861.      Sifra_Kup    char(6),
  127862.      Prodazba    decimal(18,6),
  127863.      Rok        int,
  127864.      ProdPoRok    decimal(18,6),
  127865.      VrSoRabat    decimal(18,6),
  127866.      VkRabat    decimal(18,6)
  127867.     )
  127868.     Set @SSQL = ' Select D.Sifra_Kup, '
  127869.     If @KojaCena = '3'
  127870.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, '
  127871.     Else If @KojaCena = '2'
  127872.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, '
  127873.     Else If @KojaCena = '1'
  127874.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, '
  127875.     Else If @KojaCena = '4'
  127876.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  127877.     Set @SSQL = @SSQL + ' Sum(D.Rok), '
  127878.     If @KojaCena = '3'
  127879.         Set @SSQL = @SSQL + ' Sum(Case When D.Rok <> 0  Then Round(dbo.fn_vr_osnov (S.Kolic, S.DokCena, S.DanDokCena, S.POsn) * D.Rok, 4)  
  127880.                                           Else   Round(dbo.fn_vr_osnov (S.Kolic, S.DokCena, S.DanDokCena, S.POsn), 4) end) as Vr_Osnov, '
  127881.     Else If @KojaCena = '2'
  127882.         Set @SSQL = @SSQL + ' Sum(Case When D.Rok <> 0  Then Round(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) * D.Rok, 4)  
  127883.                                           Else   Round(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa), 4) end) as Vr_Osnov, '
  127884.     Else If @KojaCena = '1'
  127885.         Set @SSQL = @SSQL + ' Sum(Case When D.Rok <> 0  Then Round(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) * D.Rok, 4)  
  127886.                                           Else   Round(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa), 4) end) as Vr_Osnov, '
  127887.     Else If @KojaCena = '4'
  127888.         Set @SSQL = @SSQL + ' Sum(Case When D.Rok <> 0  Then Round((S.Kolic*K.GotCena* D.Rok), 4)  
  127889.                                           Else   Round((S.Kolic*K.GotCena), 4) end) as Vr_Osnov, '
  127890.     If @KojaCena = '3' Or @KojaCena = '2' Or @KojaCena='1'
  127891.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, 
  127892.                        Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces)), 4) Rabat '
  127893.     Else If @KojaCena = '4'
  127894.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, 
  127895.                       Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic, K.GotCena, ''D'', S.Posn, S.Uces)),4) Rabat '
  127896.     Set @SSQL = @SSQL + ' From Dokr D
  127897.             Inner Join Stavr S On S.DokrId = D.DokrId 
  127898.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  127899.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  127900.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  127901.     Set @SSQL = @SSQL + 'Where D.VlIzl=''I'' and D.Sifra_Za = ''1'' and K.Iskluci <> ''D'' ' --and D.Toc200 > 50 '
  127902.     If @PoKojDatum = 'V'
  127903.           Begin
  127904.         If @Datum_Od Is Not NULL
  127905.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  127906.         If @Datum_Do Is Not NULL
  127907.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  127908.           End
  127909.     Else 
  127910.           Begin
  127911.         If @Datum_Od Is Not NULL
  127912.             Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  127913.         If @Datum_Do Is Not NULL
  127914.             Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  127915.           End
  127916. -------------------------------------------------------------------------------- U S L O V ------------------------------------------------------------------------------------------------
  127917.     If @Koi_Gradovi Is Not NULL    
  127918.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + ') '     
  127919.     If @Koi_Regioni Is Not NULL    
  127920.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Reg In ( ' + @Koi_Regioni + ') '     
  127921.     If @Sifra_Kup_Od Is Not NULL
  127922.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  127923.     If @Sifra_Kup_Do Is Not NULL
  127924.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  127925.     If @Pod1 Is Not NULL
  127926.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  127927.     If @Pod2 Is Not NULL
  127928.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  127929.     If @Pod3 Is Not NULL
  127930.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '    If @Pod4 Is Not NULL
  127931.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  127932.     If @Pod5 Is Not NULL
  127933.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  127934.     If @Sifra_Tip Is Not Null
  127935.         SET @SSQLUsl = @SSQLUsl +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  127936.     If @Sifra_Pat IS NOT NULL
  127937.         SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  127938.     If @TipKup Is Not NULL
  127939.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  127940.     If @Sifra_OE Is Not NULL    
  127941.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  127942.     If @KoiOE Is Not NULL
  127943.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  127944.     If @TipDokProd IS NOT NULL
  127945.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  127946. --    Set @SSQL = @SSQL + 'Group By D.Sifra_Kup '
  127947.     Set @SSQLGroup = @SSQLGroup + 'Group By D.Sifra_Kup '
  127948.     Insert Into #Prod Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  127949. print @SSQL+@SSQLUsl+@SSQLGroup
  127950. --select * from #Prod
  127951. ------------------------------------------------------------------------------------ NAPLATA;         DENOVI NA PLAKANJE --------------------------------------------------------------------------------------------------
  127952.     Create Table #Napl
  127953.     ( 
  127954.      Sifra_Kup    char(6),
  127955.      PlatIznos    decimal(18,6),
  127956.      Denovi        int,
  127957.      NaplPoDenovi    decimal(18,6)
  127958.     )
  127959. /*    Set @SSQL = ' Select A.sifra_kup, 
  127960.             (CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6)))
  127961.             from anfindok A
  127962.             inner join anzatv z on A.anid=z.anid2
  127963.             inner join anfindok f on  f.anid=z.anid1
  127964.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  127965.             where A.sifra_za=1 and abs(A.pobaruva) > 50  ' -- bese A.Pobaruva <>0 -- bara Zarko M&A 
  127966. */
  127967.     Set @SSQL = ' Select A.Sifra_Kup,
  127968.             Sum(A.Pobaruva),
  127969.             Sum((CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6)))),
  127970.             Sum(A.Pobaruva*(CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6))))
  127971.             from anfindok A
  127972.             inner join anzatv z on A.anid=z.anid2
  127973.             inner join anfindok f on  f.anid=z.anid1
  127974.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  127975.             where A.sifra_za=1 ' -- bese A.Pobaruva <>0
  127976.     If @PoKojDatum = 'V'
  127977.           Begin
  127978.         If @Datum_Od Is Not NULL
  127979.             Set @SSQL = @SSQL + ' And A.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  127980.         If @Datum_Do Is Not NULL
  127981.             Set @SSQL = @SSQL + ' And A.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  127982.           End
  127983.     Else 
  127984.           Begin
  127985.         If @Datum_Od Is Not NULL
  127986.             Set @SSQL = @SSQL + ' And A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  127987.         If @Datum_Do Is Not NULL
  127988.             Set @SSQL = @SSQL + ' And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  127989.           End
  127990. ---------------------------------------------------------------------------- U S L O V -----------------------------------------------------------------------------------------------
  127991.     Set @SSQLUsl = ' ' 
  127992.     If @Koi_Gradovi Is Not NULL    
  127993.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + ') '     
  127994.     If @Koi_Regioni Is Not NULL    
  127995.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Reg In ( ' + @Koi_Regioni + ') '     
  127996.     If @Sifra_Kup_Od Is Not NULL
  127997.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  127998.     If @Sifra_Kup_Do Is Not NULL
  127999.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  128000.     If @Pod1 Is Not NULL
  128001.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  128002.     If @Pod2 Is Not NULL
  128003.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  128004.     If @Pod3 Is Not NULL
  128005.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '
  128006.     If @Pod4 Is Not NULL
  128007.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  128008.     If @Pod5 Is Not NULL
  128009.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  128010.     If @Sifra_Tip Is Not Null
  128011.         SET @SSQLUsl = @SSQLUsl +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  128012.     If @Sifra_Pat IS NOT NULL
  128013.         SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  128014.     If @TipKup Is Not NULL
  128015.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  128016.     If @Sifra_OE Is Not NULL    
  128017.         Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  128018.     If @KoiOE Is Not NULL
  128019.              Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE IN (' + @KoiOE + ') '
  128020.     If @TipDokProd IS NOT NULL
  128021.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Dok IN (' + @TipDokProd + ') '
  128022.     Set @SSQLGroup = ' Group By A.Sifra_Kup  '
  128023.     Insert Into #Napl Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  128024. ------------------------------------------------------------------------
  128025.     Set @SSQL = ' Select A.Sifra_Kup,
  128026.             Sum(A.Pobaruva),
  128027.             Sum((CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6)))),
  128028.             Sum(A.Pobaruva*(CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6))))
  128029.             from anfindok A
  128030.             inner join anzatv z on A.anid=z.anid1
  128031.             inner join anfindok f on  f.anid=z.anid2
  128032.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  128033.             where A.sifra_za=1 ' -- bese A.Pobaruva <>0
  128034.     If @PoKojDatum = 'V'
  128035.           Begin
  128036.         If @Datum_Od Is Not NULL
  128037.             Set @SSQL = @SSQL + ' And A.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128038.         If @Datum_Do Is Not NULL
  128039.             Set @SSQL = @SSQL + ' And A.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128040.           End
  128041.     Else 
  128042.           Begin
  128043.         If @Datum_Od Is Not NULL
  128044.             Set @SSQL = @SSQL + ' And A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128045.         If @Datum_Do Is Not NULL
  128046.             Set @SSQL = @SSQL + ' And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128047.           End
  128048.     Insert Into #Napl Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  128049. --select * from #napl
  128050. --------------------------------------------------------------------------  O  B  R  T  -----------------------------------------------------------------------------------------------------
  128051.     Set @SSQLUsl = ' '
  128052.     Set @SSQLGroup = ' '
  128053.     Create Table #DenNapl
  128054.     (
  128055.      Sifra_Kup    char(6),
  128056.      Izlezi        decimal(18,6),
  128057.      Vrednost    decimal(18,6),
  128058.      Komintenti    decimal(18,6),
  128059.      DenoviProd    decimal(18,6),
  128060.      Obrti        decimal(18,6),
  128061.      EdenObrt    decimal(18,6),
  128062.      ProsObrt    decimal(18,6),
  128063.      ProsBrDen    decimal(18,6)
  128064.     )
  128065.     Set @SSQL = 'Select  D.Sifra_Kup,
  128066.             Count(S.DokID) As Izlezi, '
  128067.     If @KojaCena = '3'
  128068.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, '
  128069.     Else If @KojaCena = '2'
  128070.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, '
  128071.     Else If @KojaCena = '1'
  128072.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, '
  128073.     Else If @KojaCena = '4'
  128074.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  128075.     If @Komint_KObj = 'K'
  128076.         Set @SSQL =    @SSQL + 'Count(Distinct D.Sifra_Kup) As Komintenti, '   
  128077.     Else If @Komint_KObj = 'O'
  128078.         Set @SSQL =    @SSQL + 'Count(Distinct(Case When D.Sifra_Obj Is Null Then D.Sifra_Kup else (D.Sifra_kup+cast(D.Sifra_Obj as varchar(6))) end)) As Komintenti, '
  128079.     Set @SSQL = @SSQL + ' DateDiff(day, Min(D.Datum_Dok), Max(D.Datum_Dok)) As DenoviProd, 0, 0, 0, 0
  128080.                   From Stavr S
  128081.                   Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  128082.                   Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 '
  128083.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  128084.             Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  128085.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  128086.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  128087.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  128088.     If @PoKojDatum = 'V'
  128089.           Begin
  128090.         If @Datum_Od Is Not NULL
  128091.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128092.         If @Datum_Do Is Not NULL
  128093.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128094.           End
  128095.     Else 
  128096.           Begin
  128097.         If @Datum_Od Is Not NULL
  128098.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128099.         If @Datum_Do Is Not NULL
  128100.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128101.            End
  128102. ---- Uslov ------
  128103.     If @TipKup Is Not NULL
  128104.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  128105.     If @Sifra_Kup_Od Is Not NULL
  128106.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  128107.     If @Sifra_Kup_Do Is Not NULL
  128108.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  128109.     If @Pod1 Is Not NULL
  128110.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  128111.     If @Pod2 Is Not NULL
  128112.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  128113.     If @Pod3 Is Not NULL
  128114.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '    If @Pod4 Is Not NULL
  128115.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  128116.     If @Pod5 Is Not NULL
  128117.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  128118. /*    Zatoa sto vo istava procedura ima i naplata  a vo anfindok nema sifra_obj i moze da se dobijat nerealni podatoci (prodazbata po objekti a naplatata po komintenti)
  128119.     If @Pod1 Is Not NULL
  128120.            Begin
  128121.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  128122.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  128123.            End
  128124.     If @Pod2 Is Not NULL
  128125.            Begin
  128126.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  128127.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  128128.            End
  128129.     If @Pod3 Is Not NULL
  128130.            Begin
  128131.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  128132.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  128133.            End
  128134.     If @Pod4 Is Not NULL
  128135.            Begin
  128136.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  128137.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  128138.            End
  128139.     If @Pod5 Is Not NULL
  128140.            Begin
  128141.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  128142.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  128143.            End
  128144. */
  128145.     If @Sifra_Tip Is Not Null
  128146.         SET @SSQLUsl = @SSQLUsl +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  128147.     If @Sifra_OE Is Not NULL    
  128148.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  128149.     If @KoiOE Is Not NULL
  128150.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  128151.     If @Koi_Gradovi Is Not NULL    
  128152.         Begin
  128153.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  128154.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  128155.         End
  128156.     If @Koi_Regioni Is Not NULL    
  128157.         Begin
  128158.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  128159.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  128160.         End
  128161.     Set @SSQLGroup = @SSQLGroup + 'Group By D.Sifra_Kup '
  128162.     Insert Into #DenNapl Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  128163.     Update #DenNapl Set Obrti = (case Komintenti When 0 then 1 Else (Izlezi/komintenti-1) end)
  128164.     Update #DenNapl Set Obrti = 1 Where Obrti < 1
  128165.     Update #DenNapl Set EdenObrt=DenoviProd/Obrti Where Obrti <> 0
  128166.     Update #DenNapl Set ProsObrt=Vrednost/EdenObrt Where EdenObrt <> 0
  128167.     Update #DenNapl Set ProsBrDen=Vrednost/ProsObrt Where ProsObrt <> 0
  128168. --select * from #DenNapl
  128169. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128170.     Create Table #Rez
  128171.     ( 
  128172.      Sifra_Kup    char(6),
  128173.      Prodazba    decimal(18,6),
  128174.      FaktPoDenovi    decimal(18,6),
  128175.      NaplPoDenovi    decimal(18,6),
  128176.      Obrt        decimal(18,6),
  128177.      ProsRabat    decimal(18,6)
  128178.     )
  128179.     Insert Into #Rez(Sifra_Kup) Select Distinct Sifra_Kup From #Prod
  128180.     Insert Into #Rez(Sifra_Kup) Select Distinct Sifra_Kup From #Napl Where Sifra_Kup Not In (Select Distinct Sifra_Kup From #Rez)
  128181.     Insert Into #Rez(Sifra_Kup) Select Distinct Sifra_Kup From #DenNapl Where Sifra_Kup Not In (Select Distinct Sifra_Kup From #Rez)
  128182.     Update #Rez Set #Rez.Prodazba=#Prod.Prodazba, #Rez.FaktPoDenovi=(Case When (#Prod.Prodazba=0 Or #Prod.Prodazba is Null) Then 0 Else #Prod.ProdPoRok/#Prod.Prodazba End), 
  128183.                             #Rez.ProsRabat=(Case When (#Prod.VrSoRabat=0 Or #Prod.VrSoRabat Is Null) Then 0 Else #Prod.VkRabat/#Prod.VrSoRabat End) 
  128184.     From #Prod 
  128185.     Where #Prod.Sifra_Kup=#Rez.Sifra_Kup 
  128186.     Update #Rez Set #Rez.NaplPoDenovi=#Napl.NaplPoDenovi/#Napl.PlatIznos
  128187.     From #Napl 
  128188.     Where #Napl.Sifra_Kup=#Rez.Sifra_Kup  and #Napl.PlatIznos is Not Null And #Napl.PlatIznos <> 0
  128189.     Update #Rez Set #Rez.Obrt=#DenNapl.ProsBrDen
  128190.     From #DenNapl 
  128191.     Where #DenNapl.Sifra_Kup=#Rez.Sifra_Kup 
  128192.     Select R.Sifra_Kup, Kup.ImeKup, R.Prodazba, R.FaktPoDenovi, R.NaplPoDenovi, R.Obrt, R.ProsRabat
  128193.     From #Rez R
  128194.     Left Outer Join Komint Kup On Kup.Sifra_Kup=R.Sifra_Kup
  128195. Set Nocount Off
  128196.  
  128197.  
  128198. Go
  128199. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_napl_pomes]'))
  128200. drop procedure [dbo].[sp_prod_napl_pomes]
  128201.  
  128202. Go
  128203. CREATE                     PROCEDURE sp_Prod_Napl_PoMes
  128204.     @Sifra_OE Smallint, 
  128205.     @KoiOE Varchar(500) = Null,
  128206.     @Pod1 Smallint = Null,
  128207.     @Pod2 Smallint = Null,
  128208.     @Pod3 Smallint = Null,
  128209.     @Pod4 Smallint = Null,
  128210.     @Pod5 Smallint = Null,
  128211.     @Sifra_Tip Smallint = Null,
  128212.     @Datum_Od Smalldatetime = Null,
  128213.     @Datum_Do Smalldatetime = Null,
  128214.     @Sifra_Kup_Od Char(6) = Null,
  128215.     @Sifra_Kup_Do Char(6) = Null,
  128216.     @Koi_Gradovi Varchar(200) = Null,
  128217.     @Sifra_Pat    smallint = Null,
  128218.     @TipDokProd    varchar(200) = Null,
  128219.     @Koi_Regioni     Varchar(200) = Null,
  128220.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  128221.     @TipKup Char(11) = Null,
  128222.     @Sifra_obj Smallint = Null,
  128223.     @KomercKako     char(1) = 'I',
  128224.     @KojaCena    char(1) = '1',                     -- 4 - NPS,    3 - Osnovna,     1 - Krajna,     2 - SoRabat
  128225.     @Komint_KObj    char(1) = 'K'
  128226. --    @RazbijSostav Char(1) = 'N'
  128227. AS
  128228.     If @PoKojDatum = 'V'
  128229.             If @Datum_Do Is Not Null
  128230.         Set @Datum_Do = @Datum_Do + 1
  128231.     Set Nocount On
  128232.     Declare @SSQL Varchar(8000)
  128233.     Declare @SSQLUsl Varchar(8000)
  128234.     Declare @SSQLGroup Varchar(8000)
  128235.     Declare @Toc as decimal(18,6)
  128236.     SET @SSQLUsl = ' '
  128237.     SET @SSQLGroup = ' ' 
  128238.     Create Table #Tab
  128239.     ( 
  128240. --     Rbr        int,
  128241.      Godina        varchar(4),
  128242.      Mesec        varchar(2),
  128243. --     Sifra_Kup    char(6),
  128244.      RokIznos    decimal(18,4),
  128245.      VkIznos    decimal(18,4),
  128246.      Fakturi        decimal(18,4),
  128247.      DenIznos    decimal(18,4),
  128248.      PlatIznos    decimal(18,4),
  128249.      Obrt        decimal(18,6)
  128250.     )
  128251. --    Set @SSQL = ' Select D.Sifra_kup, Round(Sum(Case D.Rok When 0 Then D.Toc200 else (D.Rok*D.Toc200) end), 4) as RokIznos, 
  128252.     Set @SSQL = ' Select Year(D.Datum_Dok), Month(D.Datum_Dok), D.Rok as RokIznos, '
  128253.     If @KojaCena = '3'
  128254.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, '
  128255.     Else If @KojaCena = '2'
  128256.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, '
  128257.     Else If @KojaCena = '1'
  128258.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, '
  128259.     Else If @KojaCena = '4'
  128260.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  128261.     Set @SSQL = @SSQL + ' count(D.Broj_Dok), 0 as DenIznos, 0 PlatIznos, 0 as Obrt
  128262.             From Dokr D
  128263.             Inner Join Stavr S On S.DokrId = D.DokrId 
  128264.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  128265.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  128266.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  128267.     Set @SSQL = @SSQL + 'Where D.VlIzl=''I'' and D.Sifra_Za = ''1'' and K.Iskluci <> ''D'' ' --and D.Toc200 > 50 '
  128268.     If @PoKojDatum = 'V'
  128269.           Begin
  128270.         If @Datum_Od Is Not NULL
  128271.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128272.         If @Datum_Do Is Not NULL
  128273.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128274.           End
  128275.     Else 
  128276.           Begin
  128277.         If @Datum_Od Is Not NULL
  128278.             Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128279.         If @Datum_Do Is Not NULL
  128280.             Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128281.           End
  128282. -------------------------------------------------------------------------------- U S L O V ------------------------------------------------------------------------------------------------
  128283.     If @Koi_Gradovi Is Not NULL    
  128284.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + ') '     
  128285.     If @Koi_Regioni Is Not NULL    
  128286.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Reg In ( ' + @Koi_Regioni + ') '     
  128287.     If @Sifra_Kup_Od Is Not NULL
  128288.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  128289.     If @Sifra_Kup_Do Is Not NULL
  128290.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  128291.     If @Pod1 Is Not NULL
  128292.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  128293.     If @Pod2 Is Not NULL
  128294.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  128295.     If @Pod3 Is Not NULL
  128296.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '    If @Pod4 Is Not NULL
  128297.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  128298.     If @Pod5 Is Not NULL
  128299.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  128300.     If @Sifra_Tip Is Not Null
  128301.         SET @SSQLUsl = @SSQLUsl +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  128302.     If @Sifra_Pat IS NOT NULL
  128303.         SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  128304.     If @TipKup Is Not NULL
  128305.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  128306.     If @Sifra_OE Is Not NULL    
  128307.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  128308.     If @KoiOE Is Not NULL
  128309.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  128310.     If @TipDokProd IS NOT NULL
  128311.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  128312. --    Set @SSQL = @SSQL + 'Group By D.Sifra_Kup '
  128313.     Set @SSQLGroup = @SSQLGroup + 'Group By Year(D.Datum_Dok), Month(D.Datum_Dok), D.Rok '
  128314.     Insert Into #Tab Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  128315.  
  128316.     Declare @Godina as smallint
  128317.     Declare @DatOd as smalldatetime
  128318.     Declare @DatDo as smalldatetime
  128319.     Set @Godina =Year(@Datum_Od)-1
  128320.     Set @DatOd = Cast(Cast(@Godina as Varchar(4)) + '-01-01' as smalldatetime)
  128321.     Set @DatDo = Cast(Cast(@Godina as Varchar(4)) + '-12-31' as smalldatetime)
  128322.     Set @SSQL = ' Select Year(D.Datum_Dok), 0 as Mesec, D.Rok as RokIznos, '
  128323.     If @KojaCena = '3'
  128324.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, '
  128325.     Else If @KojaCena = '2'
  128326.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, '
  128327.     Else If @KojaCena = '1'
  128328.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, '
  128329.     Else If @KojaCena = '4'
  128330.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  128331.     Set @SSQL = @SSQL + ' count(D.Broj_Dok), 0 as DenIznos, 0 PlatIznos, 0 as Obrt
  128332.             From Dokr D
  128333.             Inner Join Stavr S On S.DokrId = D.DokrId 
  128334.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art            
  128335.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  128336.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  128337.     Set @SSQL = @SSQL + 'Where D.VlIzl=''I'' and D.Sifra_Za = ''1'' ' --and D.Toc200 > 50 '
  128338.     If @PoKojDatum = 'V'
  128339.           Begin
  128340.         If @DatOd Is Not NULL
  128341.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128342.         If @DatDo Is Not NULL
  128343.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  128344.           End
  128345.     Else 
  128346.           Begin
  128347.         If @DatOd Is Not NULL
  128348.             Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128349.         If @DatDo Is Not NULL
  128350.             Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  128351.           End
  128352.     Set @SSQLGroup = 'Group By Year(D.Datum_Dok), D.Rok '
  128353.     Insert Into #Tab Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  128354. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------    
  128355. --select * from #tab
  128356. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128357. --------------------------------------------------------------------------  O  B  R  T  -----------------------------------------------------------------------------------------------------
  128358.     Set @SSQLUsl = ' '
  128359.     Set @SSQLGroup = ' '
  128360.     Create Table #DenNapl
  128361.     (
  128362.      Godina        varchar(4),
  128363.      Mesec        varchar(2),
  128364. --     Sifra_art    varchar(20),
  128365.      Izlezi        decimal(18,6),
  128366.      Vrednost    decimal(18,6),
  128367.      Komintenti    decimal(18,6),
  128368.      DenoviProd    decimal(18,6),
  128369.      Obrti        decimal(18,6),
  128370.      EdenObrt    decimal(18,6),
  128371.      ProsObrt    decimal(18,6),
  128372.      ProsBrDen    decimal(18,6)
  128373.     )
  128374.     Set @SSQL = 'Select  Year(S.Datum_Dok), Month(S.Datum_Dok),
  128375.             Count(S.DokID) As Izlezi, '
  128376.     If @KojaCena = '3'
  128377.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, '
  128378.     Else If @KojaCena = '2'
  128379.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, '
  128380.     Else If @KojaCena = '1'
  128381.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, '
  128382.     Else If @KojaCena = '4'
  128383.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  128384.     If @Komint_KObj = 'K'
  128385.         Set @SSQL =    @SSQL + 'Count(Distinct D.Sifra_Kup) As Komintenti, '   
  128386.     Else If @Komint_KObj = 'O'
  128387.         Set @SSQL =    @SSQL + 'Count(Distinct(Case When D.Sifra_Obj Is Null Then D.Sifra_Kup else (D.Sifra_kup+cast(D.Sifra_Obj as varchar(6))) end)) As Komintenti, '
  128388.     Set @SSQL = @SSQL + ' DateDiff(day, Min(D.Datum_Dok), Max(D.Datum_Dok)) As DenoviProd, 0, 0, 0, 0
  128389.                   From Stavr S
  128390.                   Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  128391.                   Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 '
  128392.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  128393.             Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  128394.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  128395.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  128396.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  128397.     If @PoKojDatum = 'V'
  128398.           Begin
  128399.         If @Datum_Od Is Not NULL
  128400.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128401.         If @Datum_Do Is Not NULL
  128402.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128403.           End
  128404.     Else 
  128405.           Begin
  128406.         If @Datum_Od Is Not NULL
  128407.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128408.         If @Datum_Do Is Not NULL
  128409.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128410.            End
  128411. ---- Uslov ------
  128412.     If @TipKup Is Not NULL
  128413.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  128414.     If @Sifra_Kup_Od Is Not NULL
  128415.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  128416.     If @Sifra_Kup_Do Is Not NULL
  128417.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  128418.     If @Pod1 Is Not NULL
  128419.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  128420.     If @Pod2 Is Not NULL
  128421.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  128422.     If @Pod3 Is Not NULL
  128423.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '    If @Pod4 Is Not NULL
  128424.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  128425.     If @Pod5 Is Not NULL
  128426.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  128427. /*    Zatoa sto vo istava procedura ima i naplata  a vo anfindok nema sifra_obj i moze da se dobijat nerealni podatoci (prodazbata po objekti a naplatata po komintenti)
  128428.     If @Pod1 Is Not NULL
  128429.            Begin
  128430.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  128431.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  128432.            End
  128433.     If @Pod2 Is Not NULL
  128434.            Begin
  128435.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  128436.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  128437.            End
  128438.     If @Pod3 Is Not NULL
  128439.            Begin
  128440.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  128441.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  128442.            End
  128443.     If @Pod4 Is Not NULL
  128444.            Begin
  128445.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  128446.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  128447.            End
  128448.     If @Pod5 Is Not NULL
  128449.            Begin
  128450.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  128451.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  128452.            End
  128453. */    If @Sifra_Tip Is Not Null
  128454.         SET @SSQLUsl = @SSQLUsl +'AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  128455.     If @Sifra_OE Is Not NULL    
  128456.         Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  128457.     If @KoiOE Is Not NULL
  128458.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  128459.     If @Koi_Gradovi Is Not NULL    
  128460.         Begin
  128461.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  128462.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  128463.         End
  128464.     If @Koi_Regioni Is Not NULL    
  128465.         Begin
  128466.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  128467.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  128468.         End
  128469.     Set @SSQLGroup = @SSQLGroup + 'Group By Year(S.Datum_Dok), Month(S.Datum_Dok) '
  128470. Print @SSQL
  128471.     Insert Into #DenNapl Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  128472. --select * from #DenNapl
  128473. ------------------ Prethodna godina
  128474.     Set @SSQL = 'Select  Year(S.Datum_Dok), 0 as Mesec,
  128475.             Count(S.DokID) As Izlezi, '
  128476.     If @KojaCena = '3'
  128477.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_osnov  (S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, '
  128478.     Else If @KojaCena = '2'
  128479.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat, '
  128480.     Else If @KojaCena = '1'
  128481.         Set @SSQL = @SSQL + ' Round(Sum(dbo.fn_vr_krajna (S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, '
  128482.     Else If @KojaCena = '4'
  128483.         Set @SSQL = @SSQL + ' Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, '
  128484.     If @Komint_KObj = 'K'
  128485.         Set @SSQL =    @SSQL + 'Count(Distinct D.Sifra_Kup) As Komintenti, '   
  128486.     Else If @Komint_KObj = 'O'
  128487.         Set @SSQL =    @SSQL + 'Count(Distinct(Case When D.Sifra_Obj Is Null Then D.Sifra_Kup else (D.Sifra_kup+cast(D.Sifra_Obj as varchar(6))) end)) As Komintenti, '
  128488.     Set @SSQL = @SSQL + ' DateDiff(day, Min(D.Datum_Dok), Max(D.Datum_Dok)) As DenoviProd, 0, 0, 0, 0
  128489.                   From Stavr S
  128490.                   Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  128491.                   Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 '
  128492.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) 
  128493.             Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  128494.         Set @SSQL = @SSQL + 'Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  128495.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  128496.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  128497.     If @PoKojDatum = 'V'
  128498.           Begin
  128499.         If @DatOd Is Not NULL
  128500.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128501.         If @DatDo Is Not NULL
  128502.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  128503.           End
  128504.     Else 
  128505.           Begin
  128506.         If @DatOd Is Not NULL
  128507.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128508.         If @DatDo Is Not NULL
  128509.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  128510.            End
  128511.     Set @SSQLGroup =  'Group By Year(S.Datum_Dok) '
  128512.     Insert Into #DenNapl Exec(@SSQL+@SSQLUsl+@SSQLGroup)
  128513.     Update #DenNapl Set Obrti = (case Komintenti When 0 then 1 Else (Izlezi/komintenti-1) end)
  128514.     Update #DenNapl Set Obrti = 1 Where Obrti < 1
  128515.     Update #DenNapl Set EdenObrt=DenoviProd/Obrti Where Obrti <> 0
  128516.     Update #DenNapl Set ProsObrt=Vrednost/EdenObrt Where EdenObrt <> 0
  128517.     Update #DenNapl Set ProsBrDen=Vrednost/ProsObrt Where ProsObrt <> 0
  128518. --    Declare @Vrednost as decimal(18,6)
  128519. --    Declare @Obrti as decimal(18,6)--    Declare @denoviprod as decimal(18,6)
  128520. --    Declare @prosobrt as decimal(18,6)
  128521. --    select @Vrednost = Sum(Vrednost), @Obrti=Sum(obrti), @denoviprod=Sum(denoviprod), @prosobrt=Sum(prosobrt) from #dennapl
  128522. --    select @vrednost vrednost, @Obrti obrti, @denoviprod denoviprod 
  128523. --    select @denoviprod/@Obrti
  128524. --    select @vrednost/(@Vrednost*@obrti/@denoviprod), @Vrednost/@obrti, @vrednost*@denoviprod/@obrti
  128525. --    select @Vrednost/@prosobrt
  128526. --    Update #Tab 
  128527. --    Set #Tab.Obrt = #DenNapl.ProsObrt From #DenNapl
  128528. --    Where #Tab.Godina=#DenNapl.Godina and #Tab.Mesec=#DenNapl.Mesec
  128529. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128530. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128531. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128532. -------------------------------------------------------------------------------------------  N  A  P  L  A  T  A  ----------------------------------------------------------------------------------------------------------------------
  128533.     Create Table #Napl
  128534.     (
  128535.      Godina        varchar(4),
  128536.      Mesec        varchar(2),
  128537.      Rok        decimal(18,8),
  128538.      PlatIznos    decimal(18,6)
  128539.     )
  128540.     Set @SSQL = ' Select Year(A.Datum_Dok), Month(A.Datum_Dok),
  128541.             (CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6))),
  128542.             A.Pobaruva
  128543.             from anfindok A
  128544.             inner join anzatv z on A.anid=z.anid2
  128545.             inner join anfindok f on  f.anid=z.anid1
  128546.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  128547.             where A.sifra_za=1 and abs(A.pobaruva) > 50  ' -- bese A.Pobaruva <>0 -- bara Zarko M&A 
  128548.     If @PoKojDatum = 'V'
  128549.           Begin
  128550.         If @Datum_Od Is Not NULL
  128551.             Set @SSQL = @SSQL + ' And A.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128552.         If @Datum_Do Is Not NULL
  128553.             Set @SSQL = @SSQL + ' And A.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128554.           End
  128555.     Else 
  128556.           Begin
  128557.         If @Datum_Od Is Not NULL
  128558.             Set @SSQL = @SSQL + ' And A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128559.         If @Datum_Do Is Not NULL
  128560.             Set @SSQL = @SSQL + ' And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128561.           End
  128562. ---------------------------------------------------------------------------- U S L O V -----------------------------------------------------------------------------------------------
  128563.     Set @SSQLUsl = ' ' 
  128564.     If @Koi_Gradovi Is Not NULL    
  128565.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + ') '     
  128566.     If @Koi_Regioni Is Not NULL    
  128567.             Set @SSQLUsl = @SSQLUsl + ' and KUP.Sifra_Reg In ( ' + @Koi_Regioni + ') '     
  128568.     If @Sifra_Kup_Od Is Not NULL
  128569.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  128570.     If @Sifra_Kup_Do Is Not NULL
  128571.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  128572.     If @Pod1 Is Not NULL
  128573.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo1 = ''' + Cast(@Pod1 As Varchar(6)) + ''' '
  128574.     If @Pod2 Is Not NULL
  128575.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo2 = ''' + Cast(@Pod2 As Varchar(6)) + ''' '
  128576.     If @Pod3 Is Not NULL
  128577.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo3 = ''' + Cast(@Pod3 As Varchar(6)) + ''' '
  128578.     If @Pod4 Is Not NULL
  128579.         Set @SSQLUsl = @SSQLUsl + ' And Kup.KDrugo4 = ''' + Cast(@Pod4 As Varchar(6)) + ''' '
  128580.     If @Pod5 Is Not NULL
  128581.         Set @SSQLUsl = @SSQLUsl + ' And KUP.KDrugo5=''' + Cast(@Pod5 As Varchar(6)) + ''' '
  128582.     If @Sifra_Tip Is Not Null
  128583.         SET @SSQLUsl = @SSQLUsl +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  128584.     If @Sifra_Pat IS NOT NULL
  128585.         SET @SSQLUsl = @SSQLUsl + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  128586.     If @TipKup Is Not NULL
  128587.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup=''' + @TipKup + ''' '
  128588.     If @Sifra_OE Is Not NULL    
  128589.         Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  128590.     If @KoiOE Is Not NULL
  128591.              Set @SSQLUsl  = @SSQLUsl + ' And A.Sifra_OE IN (' + @KoiOE + ') '
  128592.     If @TipDokProd IS NOT NULL
  128593.         Set @SSQLUsl = @SSQLUsl + ' And A.Sifra_Dok IN (' + @TipDokProd + ') '
  128594.     Insert Into #Napl Exec(@SSQL+@SSQLUsl)
  128595. ------------------------------------------------------------------------
  128596.     Set @SSQL = ' Select Year(A.Datum_Dok), Month(A.Datum_Dok), 
  128597.             (CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6))),
  128598.             A.Pobaruva
  128599.             from anfindok A
  128600.             inner join anzatv z on A.anid=z.anid1
  128601.             inner join anfindok f on  f.anid=z.anid2
  128602.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  128603.             where A.sifra_za=1 and abs(A.pobaruva) > 50  ' -- bese A.Pobaruva <>0 -- bara Zarko M&A 
  128604.     If @PoKojDatum = 'V'
  128605.           Begin
  128606.         If @Datum_Od Is Not NULL
  128607.             Set @SSQL = @SSQL + ' And A.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128608.         If @Datum_Do Is Not NULL
  128609.             Set @SSQL = @SSQL + ' And A.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128610.           End
  128611.     Else 
  128612.           Begin
  128613.         If @Datum_Od Is Not NULL
  128614.             Set @SSQL = @SSQL + ' And A.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128615.         If @Datum_Do Is Not NULL
  128616.             Set @SSQL = @SSQL + ' And A.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128617.           End
  128618.     Insert Into #Napl Exec(@SSQL+@SSQLUsl)
  128619. --select * from #napl
  128620. ------------------------------------------------------------------------
  128621.     Set @SSQL = ' Select Year(A.Datum_Dok), 0 as Mesec, 
  128622.             (CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6))),
  128623.             A.Pobaruva
  128624.             from anfindok A
  128625.             inner join anzatv z on A.anid=z.anid2
  128626.             inner join anfindok f on  f.anid=z.anid1
  128627.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  128628.             where A.sifra_za=1 and abs(A.pobaruva) > 50  ' -- bese A.Pobaruva <>0 -- bara Zarko M&A 
  128629.     If @PoKojDatum = 'V'
  128630.           Begin
  128631.         If @DatOd Is Not NULL
  128632.             Set @SSQL = @SSQL + ' And A.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128633.         If @DatDo Is Not NULL
  128634.             Set @SSQL = @SSQL + ' And A.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  128635.           End
  128636.     Else 
  128637.           Begin
  128638.         If @DatOd Is Not NULL
  128639.             Set @SSQL = @SSQL + ' And A.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128640.         If @DatDo Is Not NULL
  128641.             Set @SSQL = @SSQL + ' And A.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  128642.           End
  128643.     Insert Into #Napl Exec(@SSQL+@SSQLUsl)
  128644. ------------------------------------------------------------------------
  128645.     Set @SSQL = ' Select Year(A.Datum_Dok), 0 as Mesec, 
  128646.             (CAST(datediff(day,dateadd(day, f.rok, f.datum_dok ), A.datum_dok) AS DECIMAL(18,6))),
  128647.             A.Pobaruva
  128648.             from anfindok A
  128649.             inner join anzatv z on A.anid=z.anid1
  128650.             inner join anfindok f on  f.anid=z.anid2
  128651.             Left outer Join Komint Kup on Kup.Sifra_Kup=A.Sifra_Kup
  128652.             where A.sifra_za=1 and abs(A.pobaruva) > 50  ' -- bese A.Pobaruva <>0 -- bara Zarko M&A 
  128653.     If @PoKojDatum = 'V'
  128654.           Begin
  128655.         If @DatOd Is Not NULL
  128656.             Set @SSQL = @SSQL + ' And A.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128657.         If @DatDo Is Not NULL
  128658.             Set @SSQL = @SSQL + ' And A.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  128659.           End
  128660.     Else 
  128661.           Begin
  128662.         If @DatOd Is Not NULL
  128663.             Set @SSQL = @SSQL + ' And A.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128664.         If @DatDo Is Not NULL
  128665.             Set @SSQL = @SSQL + ' And A.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  128666.           End
  128667.     Insert Into #Napl Exec(@SSQL+@SSQLUsl)
  128668. ------------------------------------------------------------------------
  128669.     Update #Napl Set Rok=0 Where Rok Is Null
  128670. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128671. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128672.     Create Table #Rokovi
  128673.     (
  128674.      Godina        varchar(4),
  128675.      Mesec        varchar(2),
  128676.      Rok        decimal(9,3),
  128677.      Plateno        decimal(18,6)
  128678.     )
  128679.     Insert Into #Rokovi Select Godina, Mesec, Avg(Rok), Sum(PlatIznos) from #Napl group by Godina, Mesec
  128680.     Update #Rokovi Set Rok = 0 where Rok<0
  128681. --select * from #rokovi
  128682. /*    Create Table #Vkup
  128683.     (
  128684.      Godina        varchar(4),
  128685.      Mesec        varchar(2),
  128686.      Vkupno    decimal(18,6)
  128687.     )
  128688.     Insert Into #Vkup Select Godina, Mesec, Sum(VkIznos) from #Tab Group By Godina, Mesec
  128689. */
  128690.     Set @SSQL = ' Select T.Godina, T.Mesec, Sum(T.VkIznos) as VkIznos, Sum(T.Fakturi) Fakturi,
  128691.                  R.Rok, R.Plateno
  128692.                 From #Tab T
  128693.                 Left Outer Join #Rokovi R On R.Godina=T.Godina and R.Mesec=T.Mesec '
  128694. --    Left Outer Join #Vkup V On V.Godina=T.Godina and V.Mesec=T.Mesec '
  128695.     Set @SSQL = @SSQL + ' Where 1=1 ' -- T.Sifra_Kup In (Select Distinct Sifra_Kup From #Podred) '
  128696.     Set @SSQL = @SSQL + ' Group By  T.Godina, T.Mesec, R.Rok, R.Plateno Order By T.Godina, T.Mesec' --T.RokIznos,
  128697. -----------------------------------------------------  Dodavanje Redni broevi za Cross Tab ------------------------------------------------------------------------
  128698.     Create Table #Tab2
  128699.     ( 
  128700.      Godina        varchar(4),
  128701.      Mesec        varchar(2),
  128702.      VkIznos    decimal(18,4),
  128703.      Fakturi        decimal(18,4),
  128704.      RokIznos    decimal(18,4),
  128705.      PlatIznos    decimal(18,4)
  128706.     )
  128707.     Insert Into #Tab2 Exec(@SSQL)
  128708.     Create Table #Tab3
  128709.     ( 
  128710.      Rbr        int,
  128711.      Godina        varchar(4),
  128712.      Mesec        varchar(2),
  128713.      VkIznos    decimal(18,4),
  128714.      Fakturi        decimal(18,4),
  128715.      ProsProd    decimal(18,4),
  128716.      PlatIznos    decimal(18,4),
  128717.      RokIznos    decimal(18,4),
  128718.      Obrt        decimal(18,4)
  128719.     )
  128720.     Insert Into #Tab3 Select 1, Godina, Mesec, VkIznos, 0, 0, 0, 0, 0 From #Tab2
  128721.     Insert Into #Tab3 Select 2, Godina, Mesec, 0, Fakturi, 0, 0, 0, 0 From #Tab2
  128722.     Insert Into #Tab3 Select 3, Godina, Mesec, 0, 0, (VkIznos/Fakturi), 0, 0, 0 From #Tab2
  128723.     Insert Into #Tab3 Select 4, Godina, Mesec, 0, 0, 0, PlatIznos, 0, 0 From #Tab2
  128724.     Insert Into #Tab3 Select 5, Godina, Mesec, 0, 0, 0, 0, RokIznos, 0 From #Tab2
  128725.     Insert Into #Tab3 Select 6, Godina, Mesec, 0, 0, 0, 0, 0, ProsBrDen From #DenNapl
  128726. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128727. --select * from #Rokovi
  128728. --select * from #Vkup
  128729. --select * from #Tab
  128730. Select * from #Tab3
  128731. -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128732.     Set Nocount Off
  128733.  
  128734. Go
  128735. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_napl_pooe]'))
  128736. drop procedure [dbo].[sp_prod_napl_pooe]
  128737.  
  128738. Go
  128739. CREATE PROCEDURE sp_Prod_Napl_PoOe
  128740.     @Sifra_Oe    smallint = Null,
  128741.     @KoiOe    varchar(6) = Null,
  128742.     @Datum_Od    smalldatetime = Null,
  128743.     @Datum_Do    smalldatetime = Null
  128744. AS
  128745.     Declare @SSQL as varchar(8000)
  128746.     Declare @SSQLUsl as varchar(8000)
  128747.     Set @SSQLUsl = ' '
  128748.     If @Sifra_Oe Is Not Null
  128749.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  128750.     If @KoiOe Is Not Null
  128751.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + Cast(@KoiOe As Varchar(6)) + ''') '
  128752.     If @Datum_Od Is Not Null
  128753.          Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  128754.     If @Datum_Do Is Not Null
  128755.          Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  128756.     Create Table #Rez
  128757.     (
  128758.      Sifra_Oe    smallint,
  128759.      ProdFra    decimal(18,6),
  128760.      ProdSka    decimal(18,6),
  128761.      UplFri        decimal(18,6),
  128762.     )
  128763.     --------------- Prodazba na faktura i smetka ------------------
  128764.     Set @SSQL = ' Select D.Sifra_Oe, 
  128765.             Sum(Case When D.Sifra_Dok In (81,83) Then D.Toc200 Else 0 End) ProdFra, 
  128766.             Sum(Case When D.Sifra_Dok In (82,84) Then D.Toc200 Else 0 End) ProdSka, 0
  128767.             From Dokr D
  128768.             Where D.Sifra_Za = ''1'' And D.Sifra_Dok In (81,82,83,84) '
  128769.     Insert Into #Rez Exec(@SSQL+@SSQLUsl + ' Group By D.Sifra_Oe ')
  128770.     --------------- Naplata po faktura ------------------
  128771.     Set @SSQL = ' Select D.Sifra_Oe, 0, 0, Sum(D.Plateno_Dolzi)
  128772.             From AnFinDok D
  128773.             Where D.Sifra_Za = ''1'' And D.Sifra_Dok In (81,83) '
  128774.     Insert Into #Rez Exec(@SSQL+@SSQLUsl + ' Group By D.Sifra_Oe ')
  128775.     Select R.Sifra_Oe, O.ImeOrg, Sum(R.ProdFra) ProdFra, Sum(R.ProdSka) ProdSka, Sum(R.UplFri) UplFri
  128776.     From #Rez R
  128777.     Inner Join Orged O On O.Sifra_Oe=R.Sifra_Oe
  128778.     Group By R.Sifra_Oe, O.ImeOrg
  128779.  
  128780.  
  128781. Go
  128782. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_planprod]'))
  128783. drop procedure [dbo].[sp_prod_planprod]
  128784.  
  128785. Go
  128786. CREATE                PROCEDURE sp_Prod_PlanProd
  128787.     @Sifra_OE    Smallint = Null,
  128788.     @KoiOE    Varchar(300) = Null,
  128789.     @Pod1        Smallint = Null,
  128790.     @Pod2        Smallint = Null,
  128791.     @Pod3         Smallint = Null,
  128792.     @Pod4         Smallint = Null,
  128793.     @Pod5         Smallint = Null,
  128794.     @Sifra_Tip     Smallint = Null,
  128795.     @Datum_Od    Smalldatetime = Null,
  128796.     @Datum_Do    Smalldatetime = Null,
  128797.     @Sifra_Art_Od    Varchar(20) = Null,
  128798.     @Sifra_Art_Do    Varchar(20) = Null,
  128799.     @Sifra_Kup_Od Char(6) = Null,
  128800.     @Sifra_Kup_Do Char(6) = Null,
  128801.     @Podred    Char(1) = Null,
  128802.     @Kto        Char(6) = Null,
  128803.     @Sifra_Gr    Char(3) = Null,
  128804.     @Sifra_Podg    Char(6) = Null,
  128805.     @Lokacija    Varchar(10) = Null,
  128806.     @TipKup    Char(11) = Null,
  128807.     @Sifra_Brand    Smallint = Null,
  128808.     @TipDokProd    varchar(200) = Null,
  128809.     @KoiPat    varchar(300) = Null,
  128810.     @Koi_Gradovi    varchar(200) = Null,
  128811.     @Koi_Regioni    varchar(200) = Null,
  128812.     @KomercKako    char(1) = 'I',        -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  128813.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  128814.     @Drugo1    smallint = Null,
  128815.     @Drugo2    smallint = Null,
  128816.     @Drugo3    smallint = Null,
  128817.     @Drugo4    smallint = Null,
  128818.     @Drugo5    smallint = Null,
  128819.     @PocnuvaSo    char(1) = 'N'        -- Se Odnesuva na podgrupite    D, N      (Povrzano e so @Sifra_Podg)
  128820. --    @ImePlan    varchar(10) = Null,
  128821. --    @GodinaPlan    smallint = Null,
  128822. --    @Sifra_OePlan    smallint = Null
  128823. AS
  128824.     If @PoKojDatum = 'V'
  128825.             If @Datum_Do Is Not Null
  128826.         Set @Datum_Do = @Datum_Do + 1
  128827.     Set Nocount On
  128828.     Declare @SSQL Varchar(8000)
  128829.     Declare @SSQLDat Varchar(1000)
  128830.     Declare @SSQLUsl Varchar(8000)
  128831.     Declare @SSQLUslArt Varchar(8000)
  128832.     Set @SSQLDat=' '
  128833.     Set @SSQLUsl=' '
  128834.     Set @SSQLUslArt=' '
  128835.     Create Table #Tab
  128836.     (
  128837.      Sifra_Art    Varchar(20),
  128838.      TekMesec    decimal(18,6),
  128839.      TekMesVr    decimal(18,6),
  128840.      LanMesec    decimal(18,6),
  128841.      LanMesVr    decimal(18,6),
  128842.      TekKumul    decimal(18,6),
  128843.      TekKumVr    decimal(18,6),
  128844.      LanKumul    decimal(18,6),
  128845.      LanKumVr    decimal(18,6),
  128846.      PlanGod    decimal(18,6),
  128847.      PlanVred    decimal(18,6)
  128848.     )
  128849.     Set @SSQL = 'Select S.Sifra_Art, 
  128850.             Round(Sum(S.Kolic), 4) As TekMesec,
  128851.             Round(Sum(S.Kolic * dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)), 4) As TekMesVr
  128852.         From Dokr D
  128853.         Inner Join Stavr S On S.DokrID=D.DokrID
  128854.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art '
  128855.     If @Sifra_Gr Is Not Null
  128856.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  128857.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  128858.              Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null)
  128859.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  128860.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  128861.     Set @SSQL = @SSQL + 'Where D.VlIzl=''I'' And D.Sifra_Za=1 And K.Iskluci <> ''D'' '
  128862.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128863.     If @TipDokProd IS NOT NULL
  128864.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  128865.       If @KomercKako = 'I'
  128866.         If @KoiPat Is Not Null
  128867.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Pat IN (' + @KoiPat + ') '
  128868.        If @KomercKako = 'T'
  128869.         If @KoiPat Is Not Null
  128870.             Set @SSQLUsl = @SSQLUsl + ' And Kup.Sifra_Pat IN (' + @KoiPat + ') '
  128871.     If @Sifra_OE Is Not Null
  128872.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  128873.     If @KoiOE Is Not Null
  128874.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_OE In (' + @KoiOE + ') '
  128875.     If @Pod1 Is Not NULL
  128876.            Begin
  128877.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  128878.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  128879.            End
  128880.     If @Pod2 Is Not NULL
  128881.            Begin
  128882.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  128883.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  128884.            End
  128885.     If @Pod3 Is Not NULL
  128886.            Begin
  128887.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  128888.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  128889.            End
  128890.     If @Pod4 Is Not NULL
  128891.            Begin
  128892.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  128893.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  128894.            End
  128895.     If @Pod5 Is Not NULL
  128896.            Begin
  128897.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  128898.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  128899.            End
  128900.     If @Sifra_Tip Is Not NULL
  128901.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  128902.     If @Sifra_Kup_Od Is Not NULL
  128903.         Set @SSQLUsl = @SSQLUsl + 'And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  128904.     If @Sifra_Kup_Do Is Not NULL
  128905.         Set @SSQLUsl = @SSQLUsl + 'And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  128906.     If @TipKup Is Not NULL
  128907.         Set @SSQLUsl = @SSQLUsl + 'And KUP.TipKup=''' + @TipKup + ''' '
  128908.     If @Koi_Gradovi Is Not NULL    
  128909.         Begin
  128910.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  128911.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  128912.         End    
  128913.     If @Koi_Regioni Is Not NULL    
  128914.         Begin
  128915.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  128916.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  128917.         End    
  128918.     -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128919.     -- Filtri po Artikli
  128920.     If @Sifra_Brand Is Not Null
  128921.         Set @SSQLUslArt  = @SSQLUslArt + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(5)) + ' '
  128922.     If @Lokacija Is Not NULL
  128923.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Lokacija=''' + @Lokacija + ''' '
  128924.     If @Kto Is Not NULL
  128925.         Set @SSQLUslArt = @SSQLUslArt + 'And K.Kto=' + @Kto + ' '
  128926.     If @Sifra_Podg Is Not Null
  128927.         If @PocnuvaSo ='D'
  128928.             Set @SSQLUslArt=@SSQLUslArt+'AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  128929.         Else
  128930.             Set @SSQLUslArt=@SSQLUslArt + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  128931.     If @Sifra_Gr Is Not NULL
  128932.         Set @SSQLUslArt = @SSQLUslArt + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  128933.     If @Sifra_Art_Od Is Not NULL
  128934.         Set @SSQLUslArt = @SSQLUslArt + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  128935.     If @Sifra_Art_Do Is Not NULL
  128936.         Set @SSQLUslArt = @SSQLUslArt + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  128937.     If @Drugo1 Is Not NULL
  128938.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  128939.     If @Drugo2 Is Not NULL
  128940.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  128941.     If @Drugo3 Is Not NULL
  128942.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  128943.     If @Drugo4 Is Not NULL
  128944.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  128945.     If @Drugo5 Is Not NULL
  128946.         Set @SSQLUslArt = @SSQLUslArt + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  128947.     --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128948. ---- DATUM (Od Do) za tekovniot mesec (period)
  128949.     If @PoKojDatum = 'V'
  128950.           Begin
  128951.         If @Datum_Od Is Not NULL
  128952.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128953.         If @Datum_Do Is Not NULL
  128954.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128955.           End
  128956.     Else 
  128957.           Begin
  128958.         If @Datum_Od Is Not NULL
  128959.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  128960.         If @Datum_Do Is Not NULL
  128961.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  128962.            End
  128963. --print @SSQL+@SSQLDat+'Group By K.Sifra_Podg'
  128964.     Insert Into #Tab(Sifra_Art, TekMesec, TekMesVr) Exec(@SSQL+@SSQLUsl+@SSQLUslArt+@SSQLDat+'Group By S.Sifra_Art')
  128965. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128966. ---- DATUM (Od Do) za tekovniot mesec od prethodnata godina
  128967.     Set @SSQLDat=''
  128968.     Declare @DatOd as smalldatetime
  128969.     Declare @DatDo as smalldatetime
  128970.     Set @DatOd = dateadd(year, -1, @Datum_Od)
  128971.     Set @DatDo = dateadd(year, -1, @Datum_Do)
  128972.     If @PoKojDatum = 'V'
  128973.           Begin
  128974.         If @DatOd Is Not NULL
  128975.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128976.         If @DatDo Is Not NULL
  128977.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  128978.           End
  128979.     Else 
  128980.           Begin
  128981.         If @DatOd Is Not NULL
  128982.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128983.         If @DatDo Is Not NULL
  128984.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  128985.            End
  128986. --print @SSQL+@SSQLDat+'Group By K.Sifra_Podg'
  128987.     Insert Into #Tab(Sifra_Art, LanMesec, LanMesVr) Exec(@SSQL+@SSQLUsl+@SSQLUslArt+@SSQLDat+'Group By S.Sifra_Art')
  128988. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  128989. ---- DATUM (Od Do) kumulativno za tekovnata godina
  128990.     Set @SSQLDat=''
  128991.     Set @DatOd = dbo.fn_VratiDatumOd(year(@Datum_Od), 1)
  128992.     Set @DatDo = @Datum_Do
  128993.     If @PoKojDatum = 'V'
  128994.           Begin
  128995.         If @DatOd Is Not NULL
  128996.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  128997.         If @DatDo Is Not NULL
  128998.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  128999.           End
  129000.     Else 
  129001.           Begin
  129002.         If @DatOd Is Not NULL
  129003.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  129004.         If @DatDo Is Not NULL
  129005.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  129006.            End
  129007. --print @SSQL+@SSQLDat+'Group By K.Sifra_Podg'
  129008.     Insert Into #Tab(Sifra_Art, TekKumul, TekKumVr) Exec(@SSQL+@SSQLUsl+@SSQLUslArt+@SSQLDat+'Group By S.Sifra_Art')
  129009. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  129010. ---- DATUM (Od Do) kumulativno za prethodnata godina
  129011.     Set @SSQLDat=''
  129012.     Set @DatOd = dbo.fn_VratiDatumOd((year(@Datum_Od)-1), 1)
  129013.     Set @DatDo = dateadd(year, -1, @Datum_Do)
  129014.     If @PoKojDatum = 'V'
  129015.           Begin
  129016.         If @DatOd Is Not NULL
  129017.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  129018.         If @DatDo Is Not NULL
  129019.             Set @SSQLDat = @SSQLDat + ' And D.Datum_Vnes<''' + Cast(@DatDo As Varchar(25)) + ''' '
  129020.           End
  129021.     Else 
  129022.           Begin
  129023.         If @DatOd Is Not NULL
  129024.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' '
  129025.         If @DatDo Is Not NULL
  129026.             Set @SSQLDat = @SSQLDat + 'And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  129027.            End
  129028. --print @SSQL+@SSQLDat+'Group By K.Sifra_Podg'
  129029.     Insert Into #Tab(Sifra_Art, LanKumul, LanKumVr) Exec(@SSQL+@SSQLUsl+@SSQLUslArt+@SSQLDat+'Group By S.Sifra_Art')
  129030. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  129031.     ------------------------------------------------------------------- PLANIRANO-----------------------------------------------------------------------------------
  129032.     Declare @GodinaPlan as smallint
  129033.         Set @GodinaPlan=Year(@Datum_Do)
  129034.     Set @SSQL = ' Select S.Sifra_Art, Sum(S.Plan_Kol) PlanKol, Sum(S.Plan_Vred) PlanVred
  129035.             From PlanMes S 
  129036.             Inner Join Katart K On K.Sifra_Art = S.Sifra_Art 
  129037.             Inner Join Podgrupi P On P.Sifra_Podg = K.Sifra_Podg
  129038.             Where S.Godina = ' + cast(@GodinaPlan as varchar(4)) + ' And S.Mesec=0 '
  129039.     If @Sifra_Oe Is Not Null 
  129040.         Set @SSQL=@SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  129041.     If @KoiOE Is Not Null
  129042.         Set @SSQL=@SSQL + ' And S.Sifra_OE In (' + @KoiOE + ') '
  129043. --    If @ImePlan Is Not Null
  129044. --        Set @SSQL=@SSQL + 'And S.ImePlan = ''' + @ImePlan + ''' '
  129045.     Insert Into #Tab (Sifra_Art, PlanGod, PlanVred) Exec(@SSQL+@SSQLUslArt+'Group By S.Sifra_Art')
  129046.     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  129047.     Set @SSQL = ' Select T.Sifra_Art, K.ImeArt, K.Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr, 
  129048.             Sum(T.TekMesec*K.Tezina/1000) TekMesec, Sum(T.TekMesVr) TekMesVr, Sum(T.LanMesec*K.Tezina/1000) LanMesec, Sum(T.LanMesVr) LanMesVr, 
  129049.             Sum(T.TekKumul*K.Tezina/1000) TekKumul, Sum(T.TekKumVr) TekKumVr, Sum(T.LanKumul*K.Tezina/1000) LanKumul, Sum(T.LanKumVr) LanKumVr,
  129050.             Sum(T.PlanGod*K.Tezina/1000) PlanGod, Sum(T.PlanVred) PlanVred
  129051.                 From #Tab T
  129052.                 Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  129053.                 Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg
  129054.                 Inner Join Grupi G On G.Sifra_Gr=P.Sifra_Gr
  129055.                 Group By T.Sifra_Art, K.ImeArt, K.Sifra_Podg, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr '
  129056.     If @Podred = 'A'
  129057.         Set @SSQL = @SSQL + 'Order By T.Sifra_Art '
  129058.     Else If @Podred = 'P'
  129059.         Set @SSQL = @SSQL + 'Order By K.Sifra_Podg '
  129060.     Else If @Podred = 'G'
  129061.         Set @SSQL = @SSQL + 'Order By P.Sifra_Gr ' 
  129062. --print @SSQL
  129063.     Exec(@SSQL)
  129064.     Set Nocount Off
  129065.  
  129066.  
  129067. Go
  129068. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_podevkalk]'))
  129069. drop procedure [dbo].[sp_prod_podevkalk]
  129070.  
  129071. Go
  129072.  
  129073. CREATE  PROCEDURE sp_Prod_PoDevKalk
  129074.     @Sifra_OE Smallint = 1,
  129075.     @KoiOE Varchar(300) = Null,
  129076.     @Pod1 Smallint = Null,
  129077.     @Pod2 Smallint = Null,
  129078.     @Pod3 Smallint = Null,
  129079.     @Pod4 Smallint = Null,
  129080.     @Pod5 Smallint = Null,
  129081.     @Datum_Od Smalldatetime = Null,
  129082.     @Datum_Do Smalldatetime = Null,
  129083.     @Sifra_Art_Od Varchar(20)= Null,
  129084.     @Sifra_Art_Do Varchar(20) = Null,
  129085.     @Podred Char(1) = 3,
  129086.     @Sifra_Gr Char(3) = Null,
  129087.     @Sifra_Podg Char(6) = Null,
  129088.     @Lokacija Varchar(10) = Null,
  129089.     @Sifra_Brand Smallint = Null,
  129090.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  129091.     @KolkuMesta    smallint = 6        -- Se Odnesuva na podgrupite    2, 3, 4, 5, 6
  129092.  AS
  129093.     Declare @SSQL as Varchar(8000)
  129094.     If @KolkuMesta Is Not Null
  129095.         Set @SSQL =  @SSQL + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') as Sifra_Podg, '
  129096.     Else 
  129097.         Set @SSQL =  @SSQL +   ' K.Sifra_Podg, ' 
  129098.     Set @SSQL = ' Select S.Sifra_art, K.ImeArt, S.Kolic, (S.Kolic*S.NabCena) NabVrednost, K.DogCena, S.Posn, '
  129099.         If @KolkuMesta Is Not Null
  129100.             Set @SSQL =  @SSQL + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') as Sifra_Podg, '
  129101.         Else 
  129102.             Set @SSQL =  @SSQL +   ' K.Sifra_Podg, ' 
  129103.     Set @SSQL = @SSQL + ' PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr
  129104.             From  DevStavk S
  129105.             Inner Join DevKalk D On D.Sifra_Oe = S.Sifra_Oe and D.Broj_Kalk = S.Broj_Kalk AND D.Sifra_Dok=S.Sifra_Dok
  129106.             Inner Join Katart K On K.Sifra_art = S.Sifra_Art
  129107.             Left Outer Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  129108.             Left Outer Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr 
  129109.             Where 1=1 '
  129110.     If @Sifra_OE Is Not NULL
  129111.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  129112.     If @KoiOE Is Not NULL
  129113.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  129114.     If @Sifra_Art_Od Is Not Null
  129115.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  129116.     If @Sifra_Art_Do Is Not Null
  129117.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  129118.     If @Sifra_Brand Is Not Null
  129119.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  129120.     If @Sifra_Podg Is Not Null
  129121.         If @PocnuvaSo = 'D'
  129122.             Set @SSQL = @SSQL + 'And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  129123.         Else 
  129124.             Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  129125.     If @Sifra_Gr Is Not Null
  129126.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  129127.     If @Pod1 Is Not NULL
  129128.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Pod1 As Varchar(6)) + ' '
  129129.     If @Pod2 Is Not NULL
  129130.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Pod2 As Varchar(6)) + ' '
  129131.     If @Pod3 Is Not NULL
  129132.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Pod3 As Varchar(6)) + ' '
  129133.     If @Pod4 Is Not NULL
  129134.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Pod4 As Varchar(6)) + ' '
  129135.     If @Pod5 Is Not NULL
  129136.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Pod5 As Varchar(6)) + ' '
  129137.     If @Lokacija Is Not NULL
  129138.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  129139.     If @Datum_Od Is Not NULL
  129140.         Set @SSQL = @SSQL + ' And D.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  129141.     If @Datum_Do Is Not NULL
  129142.         Set @SSQL = @SSQL + ' And D.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  129143.     If @Podred = 'S'
  129144.         Set @SSQL = @SSQL + 'Order By S.Sifra_Art '
  129145.     Else If @Podred = 'A'
  129146.         Set @SSQL = @SSQL + 'Order By K.ImeArt '
  129147.     Exec (@SSQL)
  129148.  
  129149.  
  129150.  
  129151.  
  129152. Go
  129153. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_podok_pobrend_rovita]'))
  129154. drop procedure [dbo].[sp_prod_podok_pobrend_rovita]
  129155.  
  129156. Go
  129157.  
  129158.  
  129159.  
  129160.  
  129161. CREATE                             PROCEDURE sp_Prod_PoDok_PoBrend_Rovita
  129162.     @Sifra_OE Smallint = Null, 
  129163.     @KoiOE Varchar(500) = Null,
  129164.     @Pod1 Smallint = Null,
  129165.     @Pod2 Smallint = Null,
  129166.     @Pod3 Smallint = Null,
  129167.     @Pod4 Smallint = Null,
  129168.     @Pod5 Smallint = Null,
  129169.     @Pod6 Smallint = Null,
  129170.     @Pod7 Smallint = Null,
  129171.     @KFPod1 char(1) = Null,
  129172.     @KFPod2 char(1) = Null,
  129173.     @KFPod3 char(1) = Null,
  129174.     @KFPod4 char(1) = Null,
  129175.     @KFPod5 char(1) = Null,
  129176.     @KFPod6 char(1) = Null,
  129177.     @KFPod7 char(1) = Null,
  129178.     @Sifra_Tip Smallint = Null,
  129179.     @Sifra_Art_Od Varchar(20) = Null,
  129180.     @Sifra_Art_Do Varchar(20) = Null,
  129181.     @Datum_Od Smalldatetime = Null,
  129182.     @Datum_Do Smalldatetime = Null,
  129183.     @Sifra_Brand_Od Smallint = Null,
  129184.     @Sifra_Brand_Do Smallint = Null,
  129185.     @Sifra_Kup_Od Char(6) = Null,
  129186.     @Sifra_Kup_Do Char(6) = Null,
  129187.     @Podred Char(1) = Null,
  129188.     @Kolku Int = Null,
  129189.     @Kto Char(6) = Null,
  129190.     @Sifra_Gr Char(3) = Null,
  129191.     @Sifra_Podg Char(6) = Null,
  129192.     @Lokacija Varchar(10) = Null,
  129193.     @TipKup Char(11) = Null,
  129194.     @RazbijSostav Char(1) = Null,
  129195.     @Sifra_obj Smallint = Null,
  129196.     @Sifra_Grad Varchar(200) = Null,
  129197.     @Koi_Regioni Varchar(200) = Null,
  129198.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  129199.     @Drugo1    smallint = Null,
  129200.     @Drugo2    smallint = Null,
  129201.     @Drugo3    smallint = Null,
  129202.     @Drugo4    smallint = Null,
  129203.     @Drugo5    smallint = Null,
  129204.     @Drugo6    smallint = Null,
  129205.     @Drugo7    smallint = Null,
  129206.     @Sifra_Pat    smallint = Null,
  129207.     @KomercKako     char(1) = 'I',
  129208.     @TipDokProd    varchar(300) = Null,
  129209.     @SoDDV    char(1) = 'D',
  129210. --    @Komint_KObj Char(1) = Null,
  129211. --    @PoZbirenBrand Char(1) = 'B',    --Ova stavi go Z-zb.brand,B-Brand,P-Podgrupi,G-Grupi,A-Artikli, M-Gradovi, K-Komintent, 4-Drugo4, H-Hierarhiski
  129212. --    @SoBKolic_Tez    char(1) = 'B',    --Ova stavi go B-Brand kolic, T-Tezina
  129213. --    @PoDenNed    char(1) = 'N',        -- W - Po Nedeli,        D - Po Denovi
  129214. --    @PoPat_GrPat    char(1) = 'N',
  129215. --    @PrikArt    char(1) = 'N'
  129216.     @GrKup     varchar(500) = Null,
  129217.     @GrArt        varchar(500) = Null
  129218.  
  129219. AS
  129220.     If @PoKojDatum = 'V'
  129221.             If @Datum_Do Is Not Null
  129222.         Set @Datum_Do = @Datum_Do + 1
  129223.     Declare @SSQL Varchar(8000)
  129224.     Declare @SSQLKup Varchar(8000)
  129225.     Set @SSQLKup = ' '
  129226.     CREATE    Table #tSostav
  129227.     (    Sifra_Art Varchar(20),
  129228.         Sifra_Sur Varchar(20),
  129229.         Ima_Kolic Decimal(18,6),
  129230.         Cena Decimal(18,6),
  129231.         VkCena Decimal(18,6)
  129232.     )
  129233.     If @RazbijSostav = 'D'
  129234.         Begin
  129235.             Set @SSQL = 'Insert #tSostav
  129236.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  129237.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  129238.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  129239.             Exec(@SSQL)
  129240.         End
  129241.     Set @SSQL = 'Insert #tSostav
  129242.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  129243.         From Katart K '
  129244.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  129245.     If @RazbijSostav = 'D'
  129246.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  129247.     Exec(@SSQL)
  129248. --select * from #tsostav
  129249. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  129250.     If @GrKup Is Not Null
  129251.     Begin
  129252.     CREATE   Table #KupObj
  129253.         (
  129254.             Sifra_Kup    char(6),
  129255.             Sifra_Obj    smallint
  129256.         )
  129257.         CREATE   Table #KupObj1
  129258.         (
  129259.             Sifra_Kup    char(6),
  129260.             Sifra_Obj    smallint
  129261.         )
  129262.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  129263.         Exec(@SSQL)
  129264.  
  129265.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  129266.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  129267.                 From SGrKupObj GK 
  129268.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  129269.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  129270.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  129271.         Exec(@SSQL)
  129272.  
  129273.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  129274.         Exec(@SSQL)
  129275.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  129276.     End
  129277.  
  129278.     If @GrArt Is Not Null
  129279.     Begin
  129280.         Create Table #GrArt
  129281.         (
  129282.             Sifra_Art    varchar(20)
  129283.         )
  129284.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  129285.  
  129286.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  129287.         Exec(@SSQL)
  129288.     End
  129289.  
  129290. --------------------------------------------------------------
  129291.     Create Table #Rez
  129292.     (
  129293.      DokrID        decimal(18,0),
  129294.      Datum_Dok    smalldatetime,     
  129295.      Sifra_Kup    varchar(6), 
  129296.      Sifra_Obj    smallint, 
  129297.      Sifra_Pat    int,
  129298.      Sifra_Art    varchar(20),
  129299.      Kolic        decimal(18,6),
  129300.      KolicVoKG    decimal(18,6),
  129301.      Iznos        decimal(18,6),
  129302.      Dat_Izrabotka    smalldatetime,
  129303.      Aktivnost    varchar(10),
  129304.      SoBarKod    char(1),
  129305.      ZalihaVoObj    int,
  129306.      IzlozenVoObj    char(1),
  129307.      PoleZaJoin    varchar(100)
  129308.     )
  129309. --    If @Kolku Is Not NULL  21.08.2008 gk
  129310. --        Set @SSQL = 'Select Top ' + Cast(@Kolku As Varchar(6)) + ' '
  129311. --    Else
  129312.     Set @SSQL = 'Select '
  129313.     Set @SSQL = @SSQL + ' D.DokrID, D.Datum_Dok, D.Sifra_Kup, D.Sifra_Obj, D.Sifra_Pat, S.Sifra_Art, 
  129314.                 S.Kolic,     (S.Kolic*K.Tezina/1000) KolicVoKG, '
  129315.                 If @SoDDV = 'D'
  129316.                     Set @SSQL = @SSQL + '  (S.Kolic*S.DokCena*(1-S.Uces/100)*(1-D.Kasa/100)) * (Case When S.DanDokCena = ''N'' Then (1+S.Posn/100) Else 1 End) Iznos, '
  129317.                 Else 
  129318.                     Set @SSQL = @SSQL + '  (S.Kolic*S.DokCena*(1-S.Uces/100)*(1-D.Kasa/100)) / (Case When S.DanDokCena = ''D'' Then (1+S.Posn/100) Else 1 End) Iznos, '
  129319.     Set @SSQL = @SSQL + ' (Case When S.Alt_Kolic > 0 Then S.Alt_Kolic Else 0 End) as ZalihaVoObj, (Case When KaloProc = 1 Then ''X'' When KaloProc = 2 Then ''L'' Else '' '' End) IzlozenVoObj '
  129320.     Set @SSQL = @SSQL + 'From #tSostav TS
  129321.                 Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  129322.                 Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  129323.                 Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art '
  129324.     If @Pod1 Is Not Null Or @Pod2 Is Not Null Or @Pod3 Is Not Null Or @Pod4 Is Not Null Or @Pod5 Is Not Null Or @Pod6 Is Not Null Or @Pod7 Is Not Null
  129325.         Or @Sifra_Tip Is Not Null Or @TipKup Is Not Null Or @Sifra_Grad Is Not Null Or @Koi_Regioni Is Not Null Or @Sifra_Pat Is Not Null Or @KomercKako = 'T'
  129326.         Set @SSQL = @SSQL + 'Left Outer Join Komint Kup ON Kup.Sifra_Kup=D.Sifra_Kup
  129327.                      Left Outer Join KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj '    
  129328.  
  129329.     If @GrKup Is Not Null
  129330.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  129331.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  129332.     If @GrArt Is Not Null
  129333.         Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  129334.     If @Sifra_Gr Is Not Null 
  129335.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  129336.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  129337.     If @Lokacija Is Not NULL
  129338.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  129339.     If @Kto Is Not NULL
  129340.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  129341.     If @Sifra_Podg Is Not NULL
  129342.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  129343.     If @Sifra_Gr Is Not NULL
  129344.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  129345.     If @Sifra_Art_Od Is Not Null
  129346.         Set @SSQL = @SSQL + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  129347.     If @Sifra_Art_Do Is Not Null
  129348.         Set @SSQL = @SSQL + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  129349.        If @KomercKako = 'I'
  129350.         If @Sifra_Pat IS NOT NULL
  129351.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  129352.        If @KomercKako = 'T'
  129353.         If @Sifra_Pat IS NOT NULL
  129354.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  129355.     If @PoKojDatum = 'V'
  129356.           Begin
  129357.         If @Datum_Od Is Not NULL
  129358.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  129359.         If @Datum_Do Is Not NULL
  129360.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  129361.           End
  129362.     Else 
  129363.           Begin
  129364.         If @Datum_Od Is NOT Null
  129365.             SET @SSQL = @SSQL + 'AND S.Datum_Dok >= ''' +Cast(@Datum_OD as varchar(35)) +''' '
  129366.         If @Datum_Do Is NOT Null
  129367.             SET @SSQL = @SSQL + 'AND S.Datum_Dok <= ''' +Cast(@Datum_Do as varchar(35)) +''' '
  129368.            End
  129369.     If @Sifra_OE Is Not NULL    
  129370.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  129371.     If @KoiOE Is Not NULL
  129372.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  129373.     If @TipDokProd Is Not NULL
  129374.              Set @SSQL  = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  129375.     If @Drugo1 Is Not NULL
  129376.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  129377.     If @Drugo2 Is Not NULL
  129378.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  129379.     If @Drugo3 Is Not NULL
  129380.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  129381.     If @Drugo4 Is Not NULL
  129382.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  129383.     If @Drugo5 Is Not NULL
  129384.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  129385.     If @Drugo6 Is Not NULL
  129386.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  129387.     If @Drugo7 Is Not NULL
  129388.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  129389.     If @Sifra_Brand_Od Is Not NULL
  129390.         Set @SSQL = @SSQL + ' And K.Sifra_Drg>=''' + Cast(@Sifra_Brand_Od As Varchar(5)) + ''' '
  129391.     If @Sifra_Brand_Do Is Not NULL
  129392.         Set @SSQL = @SSQL + ' And K.Sifra_Drg<=''' + Cast(@Sifra_Brand_Do As Varchar(5)) + ''' '
  129393.     If @Pod1 Is Not NULL
  129394.         If @KFPod1 = 'D'
  129395.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  129396.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  129397.         Else
  129398.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  129399.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  129400.     If @Pod2 Is Not NULL
  129401.         If @KFPod2 = 'D'
  129402.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  129403.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  129404.         Else
  129405.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  129406.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  129407.     If @Pod3 Is Not NULL
  129408.         If @KFPod3 = 'D'
  129409.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  129410.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  129411.         Else
  129412.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  129413.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  129414.     If @Pod4 Is Not NULL
  129415.         If @KFPod4 = 'D'
  129416.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  129417.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  129418.         Else
  129419.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  129420.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  129421.     If @Pod5 Is Not NULL
  129422.         If @KFPod5 = 'D'
  129423.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  129424.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  129425.         Else
  129426.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  129427.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  129428.     If @Pod6 Is Not NULL
  129429.         If @KFPod6 = 'D'
  129430.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  129431.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  129432.         Else
  129433.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  129434.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  129435.     If @Pod7 Is Not NULL
  129436.         If @KFPod7 = 'D'
  129437.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  129438.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  129439.         Else
  129440.             Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  129441.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  129442.     If @Sifra_Tip Is Not Null
  129443.         SET @SSQLKup = @SSQLKup +' AND KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  129444.     If @Sifra_Kup_Od Is Not NULL
  129445.         Set @SSQLKup = @SSQLKup + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  129446.     If @Sifra_Kup_Do Is Not NULL
  129447.         Set @SSQLKup = @SSQLKup + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  129448.     If @Sifra_obj Is Not NULL
  129449.         Set @SSQLKup = @SSQLKup + 'And D.Sifra_obj=''' + Cast(@Sifra_obj As Varchar(5)) + ''' '
  129450.     If @Sifra_Grad Is Not NULL    
  129451.         Begin
  129452.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Sifra_Grad + ')) 
  129453.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Sifra_Grad + '))) '     
  129454.         End
  129455.     If @Koi_Regioni Is Not NULL    
  129456.         Begin
  129457.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  129458.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  129459.         End
  129460.     If @TipKup Is Not NULL
  129461.         Set @SSQLKup = @SSQLKup + ' And KUP.TipKup=''' + @TipKup + ''' '
  129462.     Print @SSQL
  129463.     Insert Into #Rez (DokrID, Datum_Dok, Sifra_Kup, Sifra_Obj, Sifra_Pat, Sifra_Art, Kolic, KolicVoKG, Iznos, ZalihaVoObj, IzlozenVoObj) Exec(@SSQL+@SSQLKup)
  129464.  
  129465.  
  129466.  
  129467. --select * from #rez
  129468. --select *, Cast(Cast(Year(DatumVreme) as char(4)) + '-' + Cast(Month(DatumVreme) as char(2)) + '-' + Cast(Day(DatumVreme) as char(2)) as smalldatetime)  from Akcija
  129469. --where sifra_oe=8 and DatumVreme>'2008-11-17' And DatumVreme<='2008-11-18' and sifra_kup = '012727'
  129470.  
  129471.     Update #Rez set Sifra_Obj = 1234 Where sifra_obj is null
  129472.  
  129473. --Select * from #Rez
  129474.  
  129475.     Update #Rez
  129476.     Set #Rez.Dat_Izrabotka = A.DatumVreme, #Rez.Aktivnost = A.Aktivnost, #Rez.SoBarKod = A.SoBarKod
  129477.     From Akcija A
  129478.     Where A.Sifra_Kup = #Rez.Sifra_Kup And (Case When A.Sifra_Obj Is Null Or A.Sifra_Obj = 0 Then 1234 Else A.Sifra_Obj End) = #Rez.Sifra_Obj 
  129479.         And A.Sifra_Oe = #Rez.Sifra_Pat And Cast(Cast(Year(DatumVreme) as char(4)) + '-' + Cast(Month(DatumVreme) as char(2)) + '-' + Cast(Day(DatumVreme) as char(2)) as smalldatetime) = #Rez.Datum_Dok
  129480. --Select * from #Rez
  129481.  
  129482.     Update #Rez set PoleZaJoin = Sifra_Kup + (Case When Sifra_Obj Is Not Null Then Cast(Sifra_Obj as char(6)) Else '1234  ' End) + 
  129483.                     (Case When Aktivnost Is Not Null Then Aktivnost Else ' ' End) + 
  129484.                     (Case When Dat_Izrabotka Is Not Null Then Cast(Dat_Izrabotka as char(12)) Else Cast(' ' as char(12)) End) + 
  129485.                     (Case When Sifra_Pat Is Not Null Then Cast(Sifra_Pat as char(6)) Else '      ' End) 
  129486. --Select * from #Rez
  129487.     ---------------------------------
  129488.     Create Table #Akc
  129489.     (
  129490.      DokrID        decimal(18,0),
  129491.      Datum_Dok    smalldatetime,     
  129492.      Sifra_Kup    varchar(6), 
  129493.      Sifra_Obj    smallint, 
  129494.      Sifra_Pat    int,
  129495.      Dat_Izrabotka    smalldatetime,
  129496.      Aktivnost    varchar(10),
  129497.      SoBarKod    char(1),
  129498.      PoleZaJoin    varchar(100)
  129499.     )
  129500.  
  129501. --select * from #Rez
  129502.     Set @SSQL = ' Select Cast(Cast(D.Sifra_Oe as smallint) as varchar(3))+Cast(Cast(D.Sifra_Kup as int) as varchar(6))+Cast((Case When D.Sifra_Obj Is Null Then 0 Else D.Sifra_Obj End) as varchar(6))+Cast(Day(D.DatumVreme) as varchar(2)), 
  129503.                 D.DatumVreme, D.Sifra_Kup, D.Sifra_Obj, D.Sifra_Oe, D.DatumVreme, D.Aktivnost, D.SoBarKod, 
  129504.                 D.Sifra_Kup + (Case When D.Sifra_Obj Is Not Null And D.Sifra_Obj <> 0 Then Cast(D.Sifra_Obj as char(6)) Else ''1234  '' End) + 
  129505.                     (Case When D.Aktivnost Is Not Null Then D.Aktivnost Else '' '' End) + Cast(D.DatumVreme as char(12)) + Cast(D.Sifra_Oe As char(6)) PoleZaJoin
  129506.             From Akcija D '
  129507.     If @Pod1 Is Not Null Or @Pod2 Is Not Null Or @Pod3 Is Not Null Or @Pod4 Is Not Null Or @Pod5 Is Not Null Or @Pod6 Is Not Null Or @Pod7 Is Not Null
  129508.         Or @Sifra_Tip Is Not Null Or @TipKup Is Not Null Or @Sifra_Grad Is Not Null Or @Koi_Regioni Is Not Null Or @Sifra_Pat Is Not Null Or @KomercKako = 'T'
  129509.         Set @SSQL = @SSQL + 'Left Outer Join Komint Kup ON Kup.Sifra_Kup=D.Sifra_Kup
  129510.                      Left Outer Join KObjekti KO ON KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj '    
  129511.  
  129512.     If @GrKup Is Not Null
  129513.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  129514.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  129515.  
  129516.     Set @SSQL = @SSQL + ' Where 1=1 ' --D.Sifra_Kup + (Case When D.Sifra_Obj Is Not Null Then Cast(D.Sifra_Obj as char(6)) Else ''1234  '' End) + 
  129517.                         --(Case When D.Aktivnost Is Not Null Then D.Aktivnost Else '' '' End) + Cast(D.DatumVreme as char(12)) + Cast(D.Sifra_Oe As char(6)) 
  129518.                          --Not In (Select PoleZaJoin From #Rez) '
  129519.     If @Sifra_OE Is Not NULL    
  129520.         Set @SSQL  = @SSQL + ' And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  129521.     If @KoiOE Is Not NULL
  129522.              Set @SSQL  = @SSQL + ' And D.Sifra_OE IN (' + @KoiOE + ') '
  129523.     If @Datum_Od Is NOT Null
  129524.         SET @SSQL = @SSQL + 'AND D.DatumVreme >= ''' +Cast(@Datum_Od as varchar(35)) +''' '
  129525.     If @Datum_Do Is NOT Null
  129526.          If @PoKojDatum = 'V'
  129527.             SET @SSQL = @SSQL + 'AND D.DatumVreme < ''' +Cast(@Datum_Do as varchar(35)) +''' '
  129528.         Else
  129529.             SET @SSQL = @SSQL + 'AND D.DatumVreme < ''' +Cast(@Datum_Do+1 as varchar(35)) +''' '
  129530.     Insert Into #Akc Exec (@SSQL + @SSQLKup)
  129531. --select * from #Akc
  129532.  
  129533. print @SSQL + @SSQLKup
  129534.  
  129535.     Insert Into #Rez (DokrID, Datum_Dok, Sifra_Kup, Sifra_Obj, Sifra_Pat, Dat_Izrabotka, Aktivnost, SoBarKod)
  129536.     Select DokrID, Datum_Dok, Sifra_Kup, Sifra_Obj, Sifra_Pat, Dat_Izrabotka, Aktivnost, SoBarKod
  129537.     From #Akc 
  129538.     Where PoleZaJoin Not In (Select PoleZaJoin From #Rez)
  129539.  
  129540.     Update #Rez set Sifra_Obj = Null Where sifra_obj = 1234
  129541.     Update #Rez set Sifra_Obj = Null Where sifra_obj = 0    -- 16.03.2010 GK
  129542.  
  129543. --Exec (@SSQL + @SSQLKup)
  129544. --select * from #Rez
  129545.  
  129546.     Select D.DokrID, (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End) RovMerch, K4.Ime_4K ImeRovMerch,
  129547.         D.Sifra_Pat, Pat.ImePat, D.Sifra_Kup, Kup.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  129548.         (Case When KO.Sifra_Obj Is Not Null Then KO.Adresa Else Kup.Adresa End) Adresa,
  129549.         Null as Broj, 
  129550.         (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) Sifra_Reg, R.ImeRegion,
  129551.         (Case When D.Sifra_Obj Is Not Null Then KO.SMesto Else Kup.SMesto End) as Naselba,
  129552.         (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) Sifra_Grad, G.ImeGrad,
  129553.         (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End) VidPM, K1.Ime_1K ImeVidPM,
  129554.         (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo3 Else Kup.KDrugo3 End) SifLok, K3.Ime_3K Lokacija,
  129555.         (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End) SifStatusPM, K2.Ime_2K StatusPM,
  129556.         K6.Ime_6K as Slob1, K7.Ime_7K as Slob2, Null as Slob3,
  129557.         D.Sifra_Art, K.ImeArt, K.Sifra_Drg Sifra_Brend, B.Ime ImeBrend,
  129558.         D.Kolic, D.KolicVoKG, D.Iznos, 
  129559.         D.Dat_Izrabotka, D.Aktivnost, A.ImeAkc, D.SoBarKod,
  129560.         (Case When D.Dat_Izrabotka Is Not Null Then Cast(Year(D.Dat_Izrabotka) as char(4)) + '-' + (Case When Month(D.Dat_Izrabotka)<10 Then '0' Else '' End) + Rtrim(Cast(Month(D.Dat_Izrabotka) as char(2)))+'-'+
  129561.             (Case When Day(D.Dat_Izrabotka)<10 Then '0' Else '' End) + Rtrim(Cast(Day(D.Dat_Izrabotka) as char(2))) End) DatumIzrab,
  129562.         (Case When D.Dat_Izrabotka Is Not Null Then (Case When DatePart(hh, D.Dat_Izrabotka) < 10 Then '0' Else '' End) + Rtrim(Cast(DatePart(hh, D.Dat_Izrabotka) as char(2)))+':'+
  129563.             (Case When DatePart(mi, D.Dat_Izrabotka) < 10 Then '0' Else '' End) + Rtrim(Cast(Datepart(mi, D.Dat_Izrabotka) as char(2))) End) VremeIzrab,
  129564.         (Case When ZalihaVoObj > 0 Then Cast(ZalihaVoObj as varchar(12)) + ' ' + IzlozenVoObj Else ' ' End) ZalihaVoObj 
  129565.     From #Rez D
  129566.     Left Outer Join KatArt K ON K.Sifra_Art=D.Sifra_Art
  129567.     Left Outer Join DrgPodel B ON K.Sifra_Drg=B.Sifra_Drg 
  129568.     Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  129569.     Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup AND KO.Sifra_Obj=D.Sifra_Obj 
  129570.     Left Outer Join KDrugo1 K1 On K1.Sifra_1K = (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End)
  129571.     Left Outer Join KDrugo2 K2 On K2.Sifra_2K = (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End)
  129572.     Left Outer Join KDrugo3 K3 On K3.Sifra_3K = (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo3 Else Kup.KDrugo3 End)
  129573.     Left Outer Join KDrugo4 K4 On K4.Sifra_4K = (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End)
  129574.     Left Outer Join KDrugo6 K6 On K6.Sifra_6K = (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo6 Else Kup.KDrugo6 End)
  129575.     Left Outer Join KDrugo7 K7 On K7.Sifra_7K = (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo7 Else Kup.KDrugo7 End)
  129576.     Left Outer Join GRegion R On R.Sifra_Reg = (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End)
  129577.     Left Outer Join GRad G On G.Sifra_Grad = (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End)
  129578.     Left Outer Join Patnici Pat On Pat.Sifra_Pat=D.Sifra_Pat 
  129579.     Left Outer Join SifAkc A On A.Sifra_Akc=D.Aktivnost
  129580.     Order By D.Datum_Dok, D.DokrID
  129581.  
  129582.  
  129583.  
  129584.  
  129585. /*    Set @SSQL = @SSQL + ' (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo4 Else Kup.KDrugo4 End) RovMerch, K4.Ime_4K ImeRovMerch,
  129586.                 D.Sifra_Pat, Pat.ImePat, D.Sifra_Kup, Kup.ImeKup, D.Sifra_Obj, KO.ImeObj, 
  129587.                 (Case When KO.Sifra_Obj Is Not Null Then KO.Adresa Else Kup.Adresa End) Adresa,
  129588.                 Null as Broj, 
  129589.                 (Case When KO.Sifra_Obj Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) Sifra_Reg, R.ImeRegion,
  129590.                 Null as Naselba,
  129591.                 (Case When KO.Sifra_Obj Is Not Null Then KO.Sifra_Grad Else Kup.Sifra_Grad End) Sifra_Grad, G.ImeGrad,
  129592.                 (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo1 Else Kup.KDrugo1 End) VidPM, K1.Ime_1K ImeVidPM,
  129593.                 Null as Lokacija,
  129594.                 (Case When D.Sifra_Obj Is Not Null Then KO.KDrugo2 Else Kup.KDrugo2 End) SifStatusPM, K2.Ime_2K StatusPM,
  129595.                 Null as Slob1, Null as Slob2, Null as Slob3,
  129596.                 S.Sifra_Art, K.ImeArt, K.Sifra_Drg Sifra_Brend, B.Ime ImeBrend,
  129597.                 S.Kolic, 
  129598.                 (S.Kolic*K.Tezina/1000) KolicVoKG, '
  129599.                 If @SoDDV = 'D'
  129600.                     Set @SSQL = @SSQL + '  (S.Kolic*S.DokCena*(1-S.Uces/100)*(1-D.Kasa/100)) * (Case When S.DanDokCena = ''N'' Then (1+S.Posn/100) Else 1 End) Iznos '
  129601.                 Else 
  129602.                     Set @SSQL = @SSQL + '  (S.Kolic*S.DokCena*(1-S.Uces/100)*(1-D.Kasa/100)) / (Case When S.DanDokCena = ''D'' Then (1+S.Posn/100) Else 1 End) Iznos '
  129603. */
  129604.  
  129605. Go
  129606. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_pooe]'))
  129607. drop procedure [dbo].[sp_prod_pooe]
  129608.  
  129609. Go
  129610.  
  129611.  
  129612. CREATE                      PROCEDURE [dbo].[sp_Prod_PoOE]
  129613.     @Sifra_OE    Smallint = Null,
  129614.     @KoiOE    Varchar(1000) = Null,
  129615.     @Pod1        Smallint = Null,
  129616.     @Pod2        Smallint = Null,
  129617.     @Pod3         Smallint = Null,
  129618.     @Pod4         Smallint = Null,
  129619.     @Pod5         Smallint = Null,
  129620.     @Pod6         Smallint = Null,
  129621.     @Pod7         Smallint = Null,
  129622.     @Sifra_Tip     Smallint = Null,
  129623.     @Datum_Od    Smalldatetime = Null,
  129624.     @Datum_Do    Smalldatetime = Null,
  129625.     @Sifra_Art_Od    Varchar(20) = Null,
  129626.     @Sifra_Art_Do    Varchar(20) = Null,
  129627.     @Sifra_Kup_Od Char(6) = Null,
  129628.     @Sifra_Kup_Do Char(6) = Null,
  129629.     @Podred    Char(1) = Null,
  129630.     @Kto        Char(6) = Null,
  129631.     @Sifra_Gr    Char(3) = Null,
  129632.     @Sifra_Podg    Char(6) = Null,
  129633.     @Lokacija    Varchar(10) = Null,
  129634.     @TipKup    Char(11) = Null,
  129635.     @Sifra_Brand    Smallint = Null,
  129636.     @RazbijSostav    Char(1) = 'N',
  129637.     @PoOEPat    char(1) = 'O',        -- O - Organizaciona edinica,  P - Patnik,  K - Kupuvac,   G - Grupi na patnici
  129638.     @TipDokProd    varchar(200) = Null,
  129639.     @KoiPat    varchar(300) = Null,
  129640.     @Koi_Gradovi    varchar(200) = Null,
  129641.     @Koi_Regioni    varchar(200) = Null,
  129642.     @KomercKako    char(1) = 'I',        -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  129643.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  129644.     @Drugo1    smallint = Null,
  129645.     @Drugo2    smallint = Null,
  129646.     @Drugo3    smallint = Null,
  129647.     @Drugo4    smallint = Null,
  129648.     @Drugo5    smallint = Null,
  129649.     @Drugo6    smallint = Null,
  129650.     @Drugo7    smallint = Null,
  129651.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N      (Povrzano e so @Sifra_Podg)
  129652.     @SoFinSaldo    char(1) = 'N',
  129653.     @VratiSto    char(1) = Null,        -- R - Region
  129654.     @Sifra_Plan    smallint = Null,        -- Dali da se vkluci planot po patnisci vo izvestajot
  129655.     @GrKup     varchar(500)= null,
  129656.     @GrArt         varchar(500)= null
  129657. AS
  129658.     If @PoKojDatum = 'V'
  129659.             If @Datum_Do Is Not Null
  129660.         Set @Datum_Do = @Datum_Do + 1
  129661.     Set Nocount On
  129662.     Declare @SSQL Varchar(8000)
  129663.     Declare @SSQLKup Varchar(3000)
  129664.     SET @SSQLKup = ''
  129665.  
  129666.     If @Pod1 Is Not NULL
  129667.            Begin
  129668.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  129669.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  129670.            End
  129671.     If @Pod2 Is Not NULL
  129672.            Begin
  129673.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  129674.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  129675.            End
  129676.     If @Pod3 Is Not NULL
  129677.            Begin
  129678.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  129679.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  129680.            End
  129681.     If @Pod4 Is Not NULL
  129682.            Begin
  129683.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  129684.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  129685.            End
  129686.     If @Pod5 Is Not NULL
  129687.            Begin
  129688.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  129689.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  129690.            End
  129691.     If @Pod6 Is Not NULL
  129692.            Begin
  129693.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  129694.                       Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  129695.            End
  129696.     If @Pod7 Is Not NULL
  129697.            Begin
  129698.         Set @SSQLKup = @SSQLKup + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  129699.                       Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  129700.            End
  129701.     If @Sifra_Tip Is Not NULL
  129702.         Set @SSQLKup = @SSQLKup + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  129703.     If @Sifra_Kup_Od Is Not NULL
  129704.         Set @SSQLKup = @SSQLKup + 'And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  129705.     If @Sifra_Kup_Do Is Not NULL
  129706.         Set @SSQLKup = @SSQLKup + 'And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  129707.     If @TipKup Is Not NULL
  129708.         Set @SSQLKup = @SSQLKup + 'And KUP.TipKup=''' + @TipKup + ''' '
  129709.     If @Koi_Gradovi Is Not NULL    
  129710.         Begin
  129711.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  129712.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  129713.         End    
  129714.     If @Koi_Regioni Is Not NULL    
  129715.         Begin
  129716.             Set @SSQLKup = @SSQLKup + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  129717.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  129718.         End    
  129719.     If @PoOePat <> 'P' Or @PoOePat Is Not Null     -- izvestajot e po org.ed.
  129720.     Begin
  129721.         If @Sifra_OE Is Not Null
  129722.             Set @SSQLKup = @SSQLKup + 'And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  129723.         If @KoiOE Is Not Null
  129724.             Set @SSQLKup = @SSQLKup + 'And D.Sifra_OE In (' + @KoiOE + ') '
  129725.     End
  129726.  
  129727.     CREATE    Table #tSostav
  129728.     (    Sifra_Art Varchar(20),
  129729.         Sifra_Sur Varchar(20),
  129730.         Ima_Kolic Decimal(18,6),
  129731.         Cena Decimal(18,6),
  129732.         VkCena Decimal(18,6)
  129733.     )
  129734.     CREATE  INDEX IX_Sostav ON #tSostav(Sifra_Art)
  129735.     If @RazbijSostav = 'D'
  129736.         Begin
  129737.             Set @SSQL = 'Insert #tSostav
  129738.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  129739.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  129740.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  129741.             Exec(@SSQL)
  129742.         End
  129743.     Set @SSQL = 'Insert #tSostav
  129744.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  129745.         From Katart K '
  129746.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  129747.     If @RazbijSostav = 'D'
  129748.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  129749.     Exec(@SSQL)
  129750.  
  129751.     If @GrKup Is Not Null
  129752.     Begin
  129753.     CREATE   Table #KupObj
  129754.         (
  129755.             Sifra_Kup    char(6),
  129756.             Sifra_Obj    smallint
  129757.         )
  129758.         CREATE   Table #KupObj1
  129759.         (
  129760.             Sifra_Kup    char(6),
  129761.             Sifra_Obj    smallint
  129762.         )
  129763.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  129764.         Exec(@SSQL)
  129765.  
  129766.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  129767.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  129768.                 From SGrKupObj GK 
  129769.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  129770.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  129771.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  129772.         Exec(@SSQL)
  129773.  
  129774.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  129775.         Exec(@SSQL)
  129776.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  129777.     End
  129778.  
  129779.     If @GrArt Is Not Null
  129780.     Begin
  129781.         Create Table #GrArt
  129782.         (
  129783.             Sifra_Art    varchar(20)
  129784.         )
  129785.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  129786.  
  129787.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  129788.         Exec(@SSQL)
  129789.     End
  129790.  
  129791.  
  129792. -- Sega #tSostav e poln so Sostavnici i so fiktivni sostavnici
  129793. --------    SALDO
  129794. CREATE TABLE #TmpFinSaldo
  129795. (Sifra_OE    varchar(6),
  129796.  Saldo        decimal(18,2),
  129797.  Dosp_Saldo    decimal(18,2))
  129798.  
  129799. CREATE TABLE #TmpFinSaldoVK    -- GK 12.10.2006  za da napram sum na saldo po o.e. ili patnik da dava samo po edna stavka za da ne mi se multiplicira vo join-ot posle
  129800. (Sifra_OE    varchar(6),
  129801.  Saldo        decimal(18,2),
  129802.  Dosp_Saldo    decimal(18,2))
  129803.  
  129804. IF @SoFinSaldo ='D'
  129805. Begin
  129806.     If @PoOEPat = 'P'
  129807.         Set @SSQL = 'Select D.Sifra_Pat '
  129808.     Else If @PoOEPat = 'K'
  129809.         Set @SSQL = 'Select D.Sifra_Kup '
  129810.     Else If @PoOEPat = 'G'
  129811.         Set @SSQL = 'Select SGP.Sif_GrPat '
  129812.     Else If @PoOEPat = 'M'
  129813.         Set @SSQL = 'Select D.Sifra_Mest '
  129814.     Else
  129815.         Set @SSQL = 'Select D.Sifra_OE '
  129816.     SET @SSQL = @SSQL + ', SUM(D.Dolzi) - Sum(D.Pobaruva), SUM(Pobaruva) * -1 FROM AnFinDok D '
  129817.     If @PoOEPat = 'G'
  129818.         Set @SSQL = @SSQL + ' Left Outer Join SGrPat SGP On SGP.Sifra_Pat = D.Sifra_Pat '
  129819.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  129820.              Or (@Pod5 Is Not Null) Or (@Pod6 Is Not Null) Or (@Pod7 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@KoiPat Is Not Null) Or (@Koi_Gradovi Is Not Null)
  129821.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  129822.                      Left Outer Join Komint KO ON D.Sifra_kup=KO.Sifra_kup '    -- da se doraboti koga e od ANFinDok da se sredi @SSQKKup sez KObjekti
  129823.     If @GrKup Is Not Null
  129824.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=A.Sifra_Kup '  
  129825.  
  129826.     SET @SSQL = @SSQL + ' WHERE D.Sifra_Za =''1'' '
  129827.     IF @Datum_Do IS NOT NULL
  129828.         SET @SSQL = @SSQL + ' AND D.Datum_Dok<= '''+cast(@Datum_Do as varchar(35)) +''' '
  129829.     If @KoiPat Is Not Null            -- If @KomercKako = 'T' Ovde nema smisla Tekoven patnik zosto vo KomintPat ima mnogu tekovni
  129830.         Set @SSQL = @SSQL + ' And D.Sifra_Pat IN (' + @KoiPat + ') '
  129831.     SET @SSQL = @SSQL + @SSQLKup
  129832.     If @PoOEPat = 'P'
  129833.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Pat '
  129834.     Else If @PoOEPat = 'K'
  129835.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup '
  129836.     Else If @PoOEPat = 'G'
  129837.         SET @SSQL = @SSQL + ' GROUP BY SGP.Sif_GrPat '
  129838.     Else If @PoOEPat = 'M'
  129839.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Mest '
  129840.     Else
  129841.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_OE '
  129842.     INSERT INTO #TmpFinSaldo EXEC(@SSQL)
  129843.  
  129844.     If @PoOEPat = 'P'
  129845.         Set @SSQL = 'Select D.Sifra_Pat '
  129846.     Else If @PoOEPat = 'K'
  129847.         Set @SSQL = 'Select D.Sifra_Kup '
  129848.     Else If @PoOEPat = 'G'
  129849.         Set @SSQL = 'Select SGP.Sif_GrPat '
  129850.     Else If @PoOEPat = 'M'
  129851.         Set @SSQL = 'Select D.Sifra_Mest '
  129852.     Else
  129853.         Set @SSQL = 'Select D.Sifra_OE '
  129854.     SET @SSQL = @SSQL + ', 0, SUM(Dolzi) FROM AnFinDok D '
  129855.     If @PoOEPat = 'G'
  129856.         Set @SSQL = @SSQL + ' Left Outer Join SGrPat SGP On SGP.Sifra_Pat = D.Sifra_Pat '
  129857.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  129858.              Or (@Pod5 Is Not Null) Or (@Pod6 Is Not Null) Or (@Pod7 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@KoiPat Is Not Null) Or (@Koi_Gradovi Is Not Null)
  129859.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  129860.                      Left Outer Join Komint KO ON D.Sifra_kup=KO.Sifra_kup '    -- da se doraboti koga e od ANFinDok da se sredi @SSQKKup sez KObjekti
  129861.     If @GrKup Is Not Null
  129862.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup '
  129863.  
  129864.     SET @SSQL = @SSQL + ' WHERE D.Sifra_Za =''1'' '
  129865.     IF @Datum_Do IS NOT NULL
  129866.         SET @SSQL = @SSQL + ' AND DateADD(day, D.Rok, D.Datum_Dok)<= '''+cast(@Datum_Do as varchar(35)) +''' '
  129867.     If @KoiPat Is Not Null            -- If @KomercKako = 'T' Ovde nema smisla Tekoven patnik zosto vo KomintPat ima mnogu tekovni
  129868.         Set @SSQL = @SSQL + ' And D.Sifra_Pat IN (' + @KoiPat + ') '
  129869.     SET @SSQL = @SSQL + @SSQLKup
  129870.     If @PoOEPat = 'P'
  129871.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Pat '
  129872.     Else If @PoOEPat = 'K'
  129873.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Kup '
  129874.     Else If @PoOEPat = 'G'
  129875.         SET @SSQL = @SSQL + ' GROUP BY SGP.Sif_GrPat '
  129876.     Else If @PoOEPat = 'M'
  129877.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_Mest '
  129878.     Else
  129879.         SET @SSQL = @SSQL + ' GROUP BY D.Sifra_OE '
  129880. --print @SSQL
  129881.     INSERT INTO #TmpFinSaldo EXEC(@SSQL)
  129882.  
  129883.     -- GK 12.10.2006
  129884.     Insert Into #TmpFinSaldoVK 
  129885.     Select Sifra_OE, Sum(Saldo) Saldo, Sum(Dosp_Saldo) Dosp_Saldo 
  129886.     From #TmpFinSaldo
  129887.     Group By Sifra_OE
  129888. End         -------------------------------------    SALDO
  129889. --------------------------------------------------------------
  129890.     If @PoOEPat = 'P'
  129891.         Set @SSQL = 'Select D.Sifra_Pat as Sifra_OE, PP.ImePat As ImeOrg,'
  129892.     Else If @PoOEPat = 'K'
  129893.         Set @SSQL = 'Select D.Sifra_Kup as Sifra_OE, Kup.ImeKup As ImeOrg,'
  129894.     Else If @PoOEPat = 'G'
  129895.         Set @SSQL = 'Select GP.Sif_GrPat as Sifra_OE, GP.Ime_GrPat As ImeOrg,'
  129896.     Else If @PoOEPat = 'M'
  129897.         Set @SSQL = 'Select D.Sifra_Mest as Sifra_OE, PMM.Opis As ImeOrg,'
  129898.     Else
  129899.         Set @SSQL = 'Select S.Sifra_OE, O.ImeOrg,'
  129900.     If @VratiSto = 'R'
  129901.         Set @SSQL = @SSQL + ' (Case When KO.Sifra_Reg Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) Sifra_Reg, R.ImeRegion, '
  129902.     Else If @VratiSto = 'G'
  129903.         Set @SSQL = @SSQL + ' Kup.Sifra_Grad Sifra_Reg, G.ImeGrad as ImeRegion, '
  129904.     Else
  129905.         Set @SSQL = @SSQL + ' Null as Sifra_Reg, Null as ImeRegion, '
  129906.     Set @SSQL = @SSQL + 'Count(Distinct(S.DokrID)) As Br_Fri,
  129907.             Count(Distinct(S.DokID)) As Br_Stavki,
  129908.             Count(Distinct(Case When D.Sifra_Obj Is Not Null Then Cast(D.Sifra_Kup as varchar(6)) + ''&&&'' + Cast(D.Sifra_Obj as varchar(6)) Else D.Sifra_Kup End)) As Br_Komint,
  129909.             Round(Avg(S.Kolic), 4) As Pros_Kolic,
  129910.             Round(Avg(S.DokCena), 4) As Pros_Cena,
  129911.             Round(Avg(K.GotCena), 4) As Pros_NPS,
  129912.             Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)), 4) UL_Edinici,
  129913.             Round(Sum(dbo.fn_vr_osnov  (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  129914.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  129915.             Round(Sum(dbo.fn_vr_krajna (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna,
  129916.             Round(Sum(S.Kolic*TS.Ima_Kolic*K.GotCena), 4) Vk_NPS, 
  129917.             Round(Sum(S.Kolic * S.NabCena), 4) As Vr_NabBezDDV, 
  129918.             Round(Sum(S.Kolic * S.NabCena * (1+S.POsn/100)), 4) As Vr_NabSoDDV,
  129919.             Round(Sum(S.kolic*K.Tezina/1000), 4) as KolicVoKg, 
  129920.             Round(Sum(S.kolic*K.Volumen/1000), 4) as Volumen, 
  129921.             F.Saldo, F.Dosp_Saldo, Sum(S.Kolic) VkKolic, 
  129922.             Round(Sum(S.kolic / case when K.ImaKomerc = 0 then 1 else K.ImaKomerc end), 4) as KolicVoPaketi, '
  129923.     If @Sifra_Plan Is Not Null And @PoOEPat = 'P'
  129924.         Set @SSQL = @SSQL + ' PL.UspesniPoseti, PL.ProdMesta, PL.Prodazba '
  129925.     Else 
  129926.         Set @SSQL = @SSQL + ' Null as UspesniPoseti, Null as ProdMesta, Null as Prodazba '
  129927.     Set @SSQL = @SSQL + ' From #tSostav TS
  129928.                 Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  129929.                 Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  129930.                 Inner Join Dokr D On S.DokrID=D.DokrID '
  129931.     If @GrKup Is Not Null
  129932.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  129933.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  129934.     If @GrArt Is Not Null
  129935.         Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  129936.     If @PoOEPat = 'P'
  129937.         Set @SSQL = @SSQL + ' Left Outer Join #TmpFinSaldoVK F ON F.Sifra_OE=D.Sifra_Pat
  129938.                       Left Outer Join Patnici PP ON D.Sifra_Pat = PP.Sifra_Pat '
  129939.     Else If @PoOEPat = 'K'
  129940.         Set @SSQL = @SSQL + ' Left Outer Join #TmpFinSaldoVK F ON F.Sifra_OE=D.Sifra_Kup '
  129941.     Else If @PoOEPat = 'G'
  129942.         Set @SSQL = @SSQL + ' Left Outer Join SGrPat SGP ON SGP.Sifra_Pat = D.Sifra_Pat
  129943.                       Left Outer Join GrPat GP ON GP.Sif_GrPat = SGP.Sif_GrPat
  129944.                       Left Outer Join #TmpFinSaldoVK F ON F.Sifra_OE=GP.Sif_GrPat '
  129945.     Else If @PoOEPat = 'M'
  129946.         Set @SSQL = @SSQL + ' Left Outer Join #TmpFinSaldoVK F ON F.Sifra_OE=D.Sifra_Mest
  129947.                               Left Outer Join ProdMest PMM ON PMM.Sifra_Mest = D.Sifra_Mest '
  129948.     Else
  129949.         Set @SSQL = @SSQL + ' Left Outer Join #TmpFinSaldoVK F ON F.Sifra_OE=S.Sifra_OE
  129950.                      Inner Join Orged O On D.Sifra_OE=O.Sifra_OE '
  129951.     If @Sifra_Plan Is Not Null And @PoOEPat = 'P'
  129952.         Set @SSQL = @SSQL + ' Left Outer Join PlanPat PL On PL.Sifra_Pat=D.Sifra_Pat And PL.Sifra_Plan = ' + Cast(@Sifra_Plan as varchar(6)) + ' And PL.Godina = ' + Cast(Year(@Datum_Do) as varchar(4)) + ' And PL.Mesec = ' + Cast(Month(@Datum_Do) as varchar(4)) + ' '
  129953.     If @Sifra_Gr Is Not Null
  129954.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  129955.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null)
  129956.              Or (@Pod5 Is Not Null) Or (@Pod6 Is Not Null) Or (@Pod7 Is Not Null) Or (@Sifra_Tip Is Not Null) Or (@Koi_Regioni Is Not Null) Or (@KoiPat Is Not Null)  Or (@Koi_Gradovi Is Not Null) Or @VratiSto In ('R', 'G') Or @PoOEPat='K'
  129957.         Set @SSQL = @SSQL + 'Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  129958.                      Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  129959.     If @VratiSto = 'R'
  129960.         Set @SSQL = @SSQL + ' Left Outer Join GRegion R ON R.Sifra_Reg=(Case When KO.Sifra_Reg Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) '
  129961.     Else If @VratiSto = 'G'
  129962.         Set @SSQL = @SSQL + ' Left Outer Join Grad G ON G.Sifra_Grad=Kup.Sifra_Grad '
  129963.     Set @SSQL = @SSQL + ' Where D.VlIzl=''I'' And D.Sifra_Za=1 And K.Iskluci <> ''D'' '
  129964.     If @TipDokProd IS NOT NULL
  129965.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  129966.       If @KomercKako = 'I'
  129967.         If @KoiPat Is Not Null
  129968.             Set @SSQL = @SSQL + ' And D.Sifra_Pat IN (' + @KoiPat + ') '
  129969.        If @KomercKako = 'T'
  129970.         If @KoiPat Is Not Null
  129971.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @KoiPat + ')) 
  129972.                         OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In ( ' + @KoiPat + '))) '     
  129973. --            Set @SSQL = @SSQL + ' And Kup.Sifra_Pat IN (' + @KoiPat + ') '
  129974.     If @Sifra_Brand Is Not Null
  129975.         Set @SSQL  = @SSQL + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(5)) + ' '
  129976.     If @Lokacija Is Not NULL
  129977.         Set @SSQL = @SSQL + 'And K.Lokacija=''' + @Lokacija + ''' '
  129978.     If @Kto Is Not NULL
  129979.         Set @SSQL = @SSQL + 'And K.Kto=' + @Kto + ' '
  129980.     If @Sifra_Podg Is Not Null
  129981.         If @PocnuvaSo ='D'
  129982.             Set @SSQL=@SSQL+'AND (K.Sifra_Podg Like  ''' + Rtrim(@Sifra_Podg) + '%'') '
  129983.         Else
  129984.             Set @SSQL=@SSQL + ' And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  129985. --    If @Sifra_Podg Is Not NULL
  129986. --        Set @SSQL = @SSQL + 'And K.Sifra_Podg=' + @Sifra_Podg + ' '
  129987.     If @Sifra_Gr Is Not NULL
  129988.         Set @SSQL = @SSQL + 'And P.Sifra_Gr=' + @Sifra_Gr + ' '
  129989.     If @PoKojDatum = 'V'
  129990.           Begin
  129991.         If @Datum_Od Is Not NULL
  129992.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  129993.         If @Datum_Do Is Not NULL
  129994.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  129995.           End
  129996.     Else 
  129997.           Begin
  129998.         If @Datum_Od Is Not NULL
  129999.             Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  130000.         If @Datum_Do Is Not NULL
  130001.             Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  130002.            End
  130003.     If @Sifra_Art_Od Is Not NULL
  130004.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  130005.     If @Sifra_Art_Do Is Not NULL
  130006.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  130007.     If @Drugo1 Is Not NULL
  130008.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  130009.     If @Drugo2 Is Not NULL
  130010.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  130011.     If @Drugo3 Is Not NULL
  130012.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  130013.     If @Drugo4 Is Not NULL
  130014.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  130015.     If @Drugo5 Is Not NULL
  130016.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  130017.     If @Drugo6 Is Not NULL
  130018.         Set @SSQL = @SSQL + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  130019.     If @Drugo7 Is Not NULL
  130020.         Set @SSQL = @SSQL + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  130021.     If @PoOePat = 'P'     -- izvestajot e po patnik (zaradi da se zema gore dolgot od site organizacioni edinici).    --dod 14.11.2006 GK   @SSQLKup
  130022.     Begin
  130023.         If @Sifra_OE Is Not Null
  130024.             Set @SSQLKup = @SSQLKup + 'And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  130025.         If @KoiOE Is Not Null
  130026.             Set @SSQLKup = @SSQLKup + 'And D.Sifra_OE In (' + @KoiOE + ') '
  130027.     End
  130028.     Set @SSQL = @SSQL + @SSQLKup
  130029.     If @PoOEPat = 'P'
  130030.         Set @SSQL = @SSQL + ' Group By D.Sifra_Pat, PP.ImePat, F.Saldo, F.Dosp_Saldo '
  130031.     Else If @PoOEPat = 'K'
  130032.         Set @SSQL = @SSQL + ' Group By D.Sifra_Kup, Kup.ImeKup, F.Saldo, F.Dosp_Saldo '
  130033.     Else If @PoOEPat = 'G'
  130034.         Set @SSQL = @SSQL + ' Group By GP.Sif_GrPat, GP.Ime_GrPat, F.Saldo, F.Dosp_Saldo '
  130035.     Else If @PoOEPat = 'M'
  130036.         Set @SSQL = @SSQL + ' Group By D.Sifra_Mest, PMM.Opis, F.Saldo, F.Dosp_Saldo '
  130037.     Else
  130038.         Set @SSQL = @SSQL + ' Group By S.Sifra_OE, O.ImeOrg, F.Saldo, F.Dosp_Saldo '
  130039.     If @VratiSto = 'R'
  130040.         Set @SSQL = @SSQL + ', (Case When KO.Sifra_Reg Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End), R.ImeRegion '
  130041.     Else If @VratiSto = 'G'
  130042.         Set @SSQL = @SSQL + ', Kup.Sifra_Grad, G.ImeGrad '
  130043.     If @Sifra_Plan Is Not Null And @PoOEPat = 'P'
  130044.         Set @SSQL = @SSQL + ' , PL.UspesniPoseti, PL.ProdMesta, PL.Prodazba '
  130045.     If @Podred = 'S'
  130046.         If @PoOEPat = 'P'
  130047.             Set @SSQL = @SSQL + ' Order by D.Sifra_Pat '
  130048.         Else
  130049.             Set @SSQL = @SSQL + 'Order By S.Sifra_OE '
  130050.     Else If @Podred = 'A'
  130051.         If @PoOEPat = 'P'
  130052.             Set @SSQL = @SSQL + ' Order by PP.ImePat '
  130053.         Else
  130054.             Set @SSQL = @SSQL + 'Order By O.ImeOrg ' 
  130055.     Else If @Podred = '1'
  130056.         Set @SSQL = @SSQL + 'Order By Br_Fri Desc ' 
  130057.     Else If @Podred = '2'
  130058.         Set @SSQL = @SSQL + 'Order By UL_Edinici Desc ' 
  130059.     Else If @Podred = '3'
  130060.         Set @SSQL = @SSQL + 'Order By Vk_NPS Desc '
  130061. --print @SSQL
  130062.     Exec(@SSQL)
  130063.     Set Nocount Off
  130064.  
  130065.  
  130066.  
  130067. Go
  130068. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_sporedba_po_godini]'))
  130069. drop procedure [dbo].[sp_prod_sporedba_po_godini]
  130070.  
  130071. Go
  130072. CREATE     PROCEDURE sp_Prod_Sporedba_Po_Godini
  130073.     @Sifra_Oe        smallint = Null,
  130074.     @Koi_Oe        varchar(10) = Null,
  130075.     @Datum_Dok_Od    smalldatetime = Null,
  130076.     @Datum_Dok_Do    smalldatetime = Null,
  130077.     @TipDokProd        varchar(300) = Null,
  130078.     @Sifra_Art_Od        varchar(20) = Null,
  130079.     @Sifra_Art_Do        varchar(20) = Null,
  130080.     @Sifra_Gr        char(3) = Null,
  130081.     @Sifra_Podg        char(6) = Null,
  130082.     @Lokacija        char(10) = Null,
  130083.     @Sifra_Kup        char(6) = Null,
  130084.     @KFSifra_Kup        char(1) = 'N',
  130085.     @Sifra_Drg        smallint = Null,
  130086.     @Sifra_Drg1        smallint = Null,
  130087.     @APod1        smallint = Null,
  130088.     @APod2        smallint = Null,
  130089.     @APod3        smallint = Null,
  130090.     @APod4        smallint = Null,
  130091.     @APod5        smallint = Null,
  130092.     @APod6        smallint = Null,
  130093.     @APod7        smallint = Null,
  130094.     @Koi_Gradovi        varchar(300) = Null,
  130095.     @Koi_Regioni        varchar(300) = Null,
  130096.     @KPod1        smallint = Null,
  130097.     @KPod2        smallint = Null,
  130098.     @KPod3        smallint = Null,
  130099.     @KPod4        smallint = Null,
  130100.     @KPod5        smallint = Null,
  130101.     @KPod6        smallint = Null,
  130102.     @KPod7        smallint = Null,
  130103.     @Sifra_Tip         Smallint = Null,
  130104.     @Sifra_Pat        Smallint = Null,
  130105.     @TipKup        Varchar(11)=Null,
  130106.     @Sifra_Nivo        Char(2) = Null,
  130107.     @Aktiven        Char(1) = Null,
  130108.     @KomercKako        Char(1) = 'I',                -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  130109.     @KolkuGodNazad    smallint = 1,        -- 1- edna,    2 - dve
  130110.     @VratiSto        char(1) = 'A',        -- A - Artikal,   D - Den,   M - Mesec,   P - Podgrupa,    B - Brend,   O - Org.Ed,  4 - Podelbi 4 i 5
  130111.     @Prikazi        char(1) = 'K',        -- K - Kolicina,   B - Brend Kolicina,   T - Tezina,   P - Paketi,   H - Hektolitri
  130112.     @Kto            char(6) = Null,
  130113.     @Sifra_Za        char(1) = '1',
  130114.     @GrKup            varchar(500)= null,
  130115.     @GrArt            varchar(500)= null
  130116. As
  130117.     Declare @SSQL as Varchar(8000)
  130118.     Declare @DatGod1_Od    smalldatetime
  130119.     Declare @DatGod1_Do    smalldatetime
  130120.     Declare @DatGod2_Od    smalldatetime
  130121.     Declare @DatGod2_Do    smalldatetime
  130122.     Declare @God smallint
  130123.     Declare @God1 smallint
  130124.     Declare @God2 smallint
  130125.     Set @God = Year(@Datum_Dok_Od)
  130126.     Set @God1 = @God-1
  130127.     Set @God2 = @God-2
  130128.     If @KolkuGodNazad = 2
  130129.     Begin
  130130.         Set @DatGod1_Od = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-1, Month(@Datum_Dok_Od), Day(@Datum_Dok_Od))
  130131.         Set @DatGod1_Do = dbo.fn_NapraviDatum(Year(@Datum_Dok_Do)-1, Month(@Datum_Dok_Do), Day(@Datum_Dok_Do))
  130132.         Set @DatGod2_Od = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-2, Month(@Datum_Dok_Od), Day(@Datum_Dok_Od))
  130133.         Set @DatGod2_Do = dbo.fn_NapraviDatum(Year(@Datum_Dok_Do)-2, Month(@Datum_Dok_Do), Day(@Datum_Dok_Do))
  130134.     End
  130135.     Else If @KolkuGodNazad = 1
  130136.     Begin 
  130137.         Set @DatGod1_Od = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-1, Month(@Datum_Dok_Od), Day(@Datum_Dok_Od))
  130138.         Set @DatGod1_Do = dbo.fn_NapraviDatum(Year(@Datum_Dok_Do)-1, Month(@Datum_Dok_Do), Day(@Datum_Dok_Do))
  130139.         Set @DatGod2_Od = Null
  130140.         Set @DatGod2_Do = Null
  130141.     End
  130142.     Create Table #Tab
  130143.     (
  130144.      Sifra_Oe    smallint,
  130145.      Sifra_Art     varchar(20),    
  130146.      Datum_Dok    smalldatetime,
  130147.      Kolic        decimal(18,6),
  130148.      DokCena    decimal(18,6)
  130149.     )
  130150. ------------------------------------------------------------------
  130151.     If @GrKup Is Not Null
  130152.     Begin
  130153.     Create    Table #KupObj
  130154.         (
  130155.             Sifra_Kup    char(6),
  130156.             Sifra_Obj    smallint
  130157.         )
  130158.         CREATE   Table #KupObj1
  130159.         (
  130160.             Sifra_Kup    char(6),
  130161.             Sifra_Obj    smallint
  130162.         )
  130163.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  130164.         Exec(@SSQL)
  130165.  
  130166.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  130167.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  130168.                 From SGrKupObj GK 
  130169.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  130170.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  130171.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  130172.         Exec(@SSQL)
  130173.  
  130174.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  130175.         Exec(@SSQL)
  130176.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  130177.     End
  130178.     If @GrArt Is Not Null
  130179.     Begin
  130180.         Create Table #GrArt
  130181.         (
  130182.             Sifra_Art    varchar(20)
  130183.         )
  130184.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  130185.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  130186.         Exec(@SSQL)
  130187.     End
  130188. -------------------------------------------------------------------------
  130189.  
  130190.     Set @SSQL = 'Select S.Sifra_Oe, S.Sifra_Art, S.Datum_Dok, S.Kolic, 
  130191.         (Case When S.DanDokCena = ''D'' Then S.DokCena Else (S.DokCena*(1+S.Posn/100)) End) * (1-S.Uces/100) *(1-D.Kasa/100)
  130192.             From Dokr D
  130193.             Inner Join Stavr S On S.DokrID=D.DokrID
  130194.             Inner Join Katart K On K.Sifra_Art=S.Sifra_Art
  130195.             Left Outer Join Komint Kup On Kup.Sifra_Kup=D.Sifra_Kup '
  130196.     If @Sifra_Gr Is Not Null
  130197.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  130198.     If @Sifra_Drg1 Is Not Null
  130199.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  130200. -------------------------------------
  130201.     If @GrKup Is Not Null
  130202.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  130203.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  130204.     If @GrArt Is Not Null
  130205.              Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  130206. --------------------------------------
  130207.     If @Sifra_Za = '2'
  130208.         Set @SSQL = @SSQL + ' Where D.VlIzl=''V'' And D.Sifra_Za = ''2'' '
  130209.     Else
  130210.         Set @SSQL = @SSQL + ' Where D.VlIzl=''I'' And D.Sifra_Za = ''1'' '
  130211. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130212.     Set @SSQL = @SSQL + ' And ('
  130213.     Set @SSQL = @SSQL + ' (D.Datum_Dok >= ''' + Cast(@Datum_Dok_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + Cast(@Datum_Dok_Do as varchar(30)) + ''') '
  130214.     If @KolkuGodNazad = 2 Or @KolkuGodNazad = 1
  130215.         Set @SSQL = @SSQL + ' Or (D.Datum_Dok >= ''' + Cast(@DatGod1_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + Cast(@DatGod1_Do as varchar(30)) + ''') '
  130216.     If @KolkuGodNazad = 2
  130217.         Set @SSQL = @SSQL + ' Or (D.Datum_Dok >= ''' + Cast(@DatGod2_Od as varchar(30)) + ''' And D.Datum_Dok <= ''' + Cast(@DatGod2_Do as varchar(30)) + ''') '
  130218.     Set @SSQL = @SSQL + ' )'
  130219. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------    
  130220.     If @Sifra_Oe Is Not Null
  130221.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  130222.     If @Koi_Oe Is Not Null
  130223.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  130224.     If @Sifra_Kup Is Not Null
  130225.     Begin
  130226.         If @KFSifra_Kup = 'D'
  130227.             Set @SSQL = @SSQL + ' And (D.Sifra_Kup <> ''' + @Sifra_Kup + ''' Or D.Sifra_Kup Is Null) '
  130228.         Else
  130229.             Set @SSQL = @SSQL + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  130230.     End
  130231.     If @TipDokProd Is Not Null
  130232.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDokProd + ') '
  130233.     If @Sifra_Podg Is Not Null
  130234.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  130235.     If @Lokacija Is Not Null
  130236.         Set @SSQL = @SSQL + ' And K.Lokacija = ''' + @Lokacija + ''' '
  130237.     If @Sifra_Gr Is Not Null
  130238.         Set @SSQL = @SSQL + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  130239.     If @Sifra_Art_Od Is Not Null
  130240.         Set @SSQL = @SSQL + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  130241.     If @Sifra_Art_Do Is Not Null
  130242.         Set @SSQL = @SSQL + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  130243.     If @Sifra_Drg Is Not Null
  130244.         Set @SSQL = @SSQL + ' And K.Sifra_Drg = ' + Cast(@Sifra_Drg as varchar(10)) + ' '
  130245.     If @Sifra_Drg1 Is Not Null
  130246.         Set @SSQL = @SSQL + ' And B.Sifra_Drg1 = ' + Cast(@Sifra_Drg1 as varchar(10)) + ' '
  130247.     If @APod1 Is Not Null
  130248.         Set @SSQL = @SSQL + ' And K.Drugo1 = ' + Cast(@APod1 as varchar(10)) + ' '
  130249.     If @APod2 Is Not Null
  130250.         Set @SSQL = @SSQL + ' And K.Drugo2 = ' + Cast(@APod2 as varchar(10)) + ' '
  130251.     If @APod3 Is Not Null
  130252.         Set @SSQL = @SSQL + ' And K.Drugo3 = ' + Cast(@APod3 as varchar(10)) + ' '
  130253.     If @APod4 Is Not Null
  130254.         Set @SSQL = @SSQL + ' And K.Drugo4 = ' + Cast(@APod4 as varchar(10)) + ' '
  130255.     If @APod5 Is Not Null
  130256.         Set @SSQL = @SSQL + ' And K.Drugo5 = ' + Cast(@APod5 as varchar(10)) + ' '
  130257.     If @APod6 Is Not Null
  130258.         Set @SSQL = @SSQL + ' And K.Drugo6 = ' + Cast(@APod6 as varchar(10)) + ' '
  130259.     If @APod7 Is Not Null
  130260.         Set @SSQL = @SSQL + ' And K.Drugo7 = ' + Cast(@APod7 as varchar(10)) + ' '
  130261.     If @Kto Is Not Null
  130262.         Set @SSQL = @SSQL + ' And K.Kto = ''' + @Kto + ''' '
  130263.     If @Sifra_Tip Is Not Null
  130264.         Set @SSQL = @SSQL + ' And Kup.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  130265.     If @Sifra_Nivo Is Not Null
  130266.         Set @SSQL = @SSQL + ' And Kup.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  130267.     If @TipKup Is Not Null
  130268.         Set @SSQL = @SSQL + ' And Kup.TipKup=''' + @TipKup + ''' '
  130269.     If @Sifra_Pat IS NOT NULL
  130270.     Begin 
  130271.         If @KomercKako = 'I'
  130272.             SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  130273.         Else 
  130274.             SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  130275.     End
  130276.     If @Sifra_Pat Is Not Null
  130277.         Set @SSQL = @SSQL + ' And Kup.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(10)) + ' '
  130278.     If @Koi_Gradovi Is Not Null
  130279.         Set @SSQL = @SSQL + ' And KUP.Sifra_Grad In (' + @Koi_Gradovi + ') '
  130280.     If @Koi_Regioni Is Not Null
  130281.         Set @SSQL = @SSQL + ' And KUP.Sifra_Reg In (' + @Koi_Regioni + ') '
  130282.     If @Aktiven = 'D'    
  130283.         Set @SSQL = @SSQL + ' And (KUP.Aktiven <> ''N'' or KUP.Aktiven Is Null) '     
  130284.     Else If @Aktiven = 'N'    
  130285.         Set @SSQL = @SSQL + ' And KUP.Aktiven = ''N'' '     
  130286.     If @KPod1 Is Not Null
  130287.         Set @SSQL = @SSQL + ' And Kup.KDrugo1=' + Cast(@KPod1 As Varchar(10)) + ' '
  130288.     If @KPod2 Is Not Null
  130289.         Set @SSQL = @SSQL + ' And Kup.KDrugo2=' + Cast(@KPod2 As Varchar(10)) + ' '
  130290.     If @KPod3 Is Not Null
  130291.         Set @SSQL = @SSQL + ' And Kup.KDrugo3=' + Cast(@KPod3 As Varchar(10)) + ' '
  130292.     If @KPod4 Is Not Null
  130293.         Set @SSQL = @SSQL + ' And Kup.KDrugo4=' + Cast(@KPod4 As Varchar(10)) + ' '
  130294.     If @KPod5 Is Not Null
  130295.         Set @SSQL = @SSQL + ' And Kup.KDrugo5=' + Cast(@KPod5 As Varchar(10)) + ' '
  130296.     If @KPod6 Is Not Null
  130297.         Set @SSQL = @SSQL + ' And Kup.KDrugo6=' + Cast(@KPod6 As Varchar(10)) + ' '
  130298.     If @KPod7 Is Not Null
  130299.         Set @SSQL = @SSQL + ' And Kup.KDrugo7=' + Cast(@KPod7 As Varchar(10)) + ' '
  130300. print (@ssql)
  130301.     Insert Into #Tab Exec(@SSQL)
  130302.  
  130303.     If @VratiSto = 'G'
  130304.         Set @SSQL = ' Select D1.Ime_1 Red, Null as Pakuvanje, Null as Sifra_Podg, '   
  130305.     Else If @VratiSto = 'M'
  130306.         Set @SSQL = ' Select Cast(Month(T.Datum_Dok) as varchar(20)) Red, Null as Pakuvanje, Null as Sifra_Podg, '
  130307.     Else If @VratiSto = 'D'
  130308.         Set @SSQL = ' Select (Case When Day(Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Day(T.Datum_Dok) as varchar(20)) + ''/'' + (Case When Month(Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(T.Datum_Dok) as varchar(20)) Red, Null as Pakuvanje, Null as Sifra_Podg, '
  130309.     Else If @VratiSto = 'P'
  130310.         Set @SSQL = ' Select P.Ime_Podg Red, Null as Pakuvanje, Null as Sifra_Podg, ' 
  130311.     Else If @VratiSto = 'B'
  130312.         Set @SSQL = ' Select B.Ime Red, Null as Pakuvanje, Null as Sifra_Podg, ' 
  130313.     Else If @VratiSto = 'A'
  130314.         Set @SSQL = ' Select K.ImeArt Red, D1.Ime_1 Pakuvanje, K.Sifra_Podg,  '
  130315.     Else If @VratiSto = 'O'
  130316.         Set @SSQL = ' Select O.ImeOrg Red, Null as Pakuvanje, Null as Sifra_Podg, ' 
  130317.     Else If @VratiSto = '4'
  130318.         Set @SSQL = ' Select P4.Ime_4 Red, Null as Pakuvanje, P5.Ime_5 as Sifra_Podg, ' 
  130319.     If @Prikazi = 'K'
  130320.         Set @SSQL = @SSQL + ' Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then T.Kolic Else 0 End) GodSega,
  130321.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God1 as varchar(4)) + ' Then T.Kolic Else 0 End) GodPreth1,
  130322.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God2 as varchar(4)) + ' Then T.Kolic Else 0 End) GodPreth2, '
  130323.     Else If @Prikazi = 'B'
  130324.         Set @SSQL = @SSQL + ' Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then (T.Kolic*K.KolkuDrg) Else 0 End) GodSega,
  130325.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God1 as varchar(4)) + ' Then (T.Kolic*K.KolkuDrg) Else 0 End) GodPreth1,
  130326.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God2 as varchar(4)) + ' Then (T.Kolic*K.KolkuDrg) Else 0 End) GodPreth2, '
  130327.     Else If @Prikazi = 'T'
  130328.         Set @SSQL = @SSQL + ' Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then (T.Kolic*K.Tezina) Else 0 End) GodSega,
  130329.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God1 as varchar(4)) + ' Then (T.Kolic*K.Tezina) Else 0 End) GodPreth1,
  130330.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God2 as varchar(4)) + ' Then (T.Kolic*K.Tezina) Else 0 End) GodPreth2, '
  130331.     Else If @Prikazi = 'P'
  130332.         Set @SSQL = @SSQL + ' Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then (Case When K.ImaKomerc <> 0 Then (T.Kolic/K.ImaKomerc) Else 0 End) Else 0 End) GodSega,
  130333.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God1 as varchar(4)) + ' Then (Case When K.ImaKomerc <> 0 Then (T.Kolic/K.ImaKomerc) Else 0 End) Else 0 End) GodPreth1,
  130334.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God2 as varchar(4)) + ' Then (Case When K.ImaKomerc <> 0 Then (T.Kolic/K.ImaKomerc) Else 0 End) Else 0 End) GodPreth2, '
  130335.     Else If @Prikazi = 'H'
  130336.         Set @SSQL = @SSQL + ' Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then (T.Kolic*K.Tezina/100000) Else 0 End) GodSega,
  130337.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God1 as varchar(4)) + ' Then (T.Kolic*K.Tezina/100000) Else 0 End) GodPreth1,
  130338.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God2 as varchar(4)) + ' Then (T.Kolic*K.Tezina/100000) Else 0 End) GodPreth2, '
  130339.     Else If @Prikazi = 'V'
  130340.         Set @SSQL = @SSQL + ' Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then (T.Kolic*T.DokCena) Else 0 End) GodSega,
  130341.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God1 as varchar(4)) + ' Then (T.Kolic*T.DokCena) Else 0 End) GodPreth1,
  130342.                       Sum(Case When Year(Datum_Dok) = ' + Cast(@God2 as varchar(4)) + ' Then (T.Kolic*T.DokCena) Else 0 End) GodPreth2, '
  130343.     If @VratiSto = 'A'
  130344.         Set @SSQL = @SSQL + ' K.ImaKomerc, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr, '
  130345.     Else
  130346.         Set @SSQL = @SSQL + ' Null ImaKomerc, Null Ime_Podg, Null Sifra_Gr, Null Ime_Gr, '
  130347.     Set @SSQL = @SSQL + ' Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then T.Kolic Else 0 End) KolicSega, 
  130348.                   Sum(Case When Year(Datum_Dok) = ' + Cast(@God as varchar(4)) + ' Then (Case When K.ImaKomerc <> 0 Then (T.Kolic/K.ImaKomerc) Else 0 End) Else 0 End) PaketiSega '
  130349.     Set @SSQL = @SSQL + ' From #Tab T 
  130350.                 Inner Join Katart K on  K.Sifra_Art = T.Sifra_Art '
  130351.     If @VratiSto = 'G'
  130352.         Set @SSQL = @SSQL + ' Left Outer Join Drugo1 D1 On D1.Sifra_1=K.Drugo1 '
  130353.     Else If @VratiSto = 'A'
  130354.         Set @SSQL = @SSQL + ' Left Outer Join Drugo1 D1 On D1.Sifra_1=K.Drugo1 
  130355.                       Left Outer Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg 
  130356.                       Left Outer Join Grupi G On G.Sifra_Gr=P.Sifra_Gr '
  130357.     Else If @VratiSto = 'P'
  130358.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg=K.Sifra_Podg '
  130359.     Else If @VratiSto = 'B'
  130360.         Set @SSQL = @SSQL + ' Left Outer Join DrgPodel B On B.Sifra_Drg=K.Sifra_Drg '
  130361.     Else If @VratiSto = 'O'
  130362.         Set @SSQL = @SSQL + ' Left Outer Join OrgEd O On O.Sifra_Oe=T.Sifra_Oe '
  130363.     Else If @VratiSto = '4'
  130364.         Set @SSQL = @SSQL + ' Left Outer Join Drugo4 P4 On P4.Sifra_4=K.Drugo4 
  130365.                       Left Outer Join Drugo5 P5 On P5.Sifra_5=K.Drugo5 '
  130366.     If @VratiSto = 'G'
  130367.         Set @SSQL = @SSQL + ' Group By D1.Ime_1 ' 
  130368.     Else If @VratiSto = 'M'
  130369.         Set @SSQL = @SSQL + ' Group By Cast(Month(T.Datum_Dok) as varchar(20)) '
  130370.     Else If @VratiSto = 'D'
  130371.         Set @SSQL = @SSQL + ' Group By T.Datum_Dok '--(Case When Day(Datum_Dok) < 10 Then ''0'' else '''' End) + Cast(Day(T.Datum_Dok) as varchar(20)) + ''/'' + (Case When Month(Datum_Dok) < 10 Then ''0'' else '''' End) + Cast(Month(T.Datum_Dok) as varchar(20)) '
  130372.     Else If @VratiSto = 'P'
  130373.         Set @SSQL = @SSQL + ' Group By P.Ime_Podg ' 
  130374.     Else If @VratiSto = 'B'
  130375.         Set @SSQL = @SSQL + ' Group By B.Ime ' 
  130376.     Else If @VratiSto = 'A'
  130377.         Set @SSQL = @SSQL + ' Group By K.ImeArt, D1.Ime_1, K.Sifra_Podg, K.ImaKomerc, P.Ime_Podg, P.Sifra_Gr, G.Ime_Gr '
  130378.     Else If @VratiSto = 'O'
  130379.         Set @SSQL = @SSQL + ' Group By O.ImeOrg ' 
  130380.     Else If @VratiSto = '4'
  130381.         Set @SSQL = @SSQL + ' Group By P4.Ime_4, P5.Ime_5 ' 
  130382. print @SSQL
  130383.     Exec (@SSQL)
  130384.  
  130385. /*
  130386.     Select T.Sifra_Art, K.ImeArt, Round(T.Cena, 2) Cena, T.Dev, K.Drugo1, D1.Ime_1, Round(Sum(T.Kolic), 2) Kolic, Round(Sum(T.Litri), 2) Litri, Round(Sum(T.Vrednost), 2) Vrednost, 
  130387.             Round(Sum(T.Akciza), 2) Akciza, Round(Sum(T.Danok), 2) Danok
  130388.     From #Tab T
  130389.     Inner Join Katart K On K.Sifra_Art = T.Sifra_Art
  130390.     Left Outer Join Drugo1 D1 On D1.Sifra_1=K.Drugo1
  130391.     Group By T.Sifra_Art, K.ImeArt, Round(T.Cena, 2), T.Dev, K.Drugo1, D1.Ime_1
  130392.     Order By T.Sifra_Art
  130393. */
  130394.  
  130395.  
  130396.  
  130397.  
  130398.  
  130399.  
  130400. Go
  130401. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_sporedba_po_godini_i_meseci]'))
  130402. drop procedure [dbo].[sp_prod_sporedba_po_godini_i_meseci]
  130403.  
  130404. Go
  130405. CREATE        PROCEDURE sp_Prod_Sporedba_Po_Godini_i_Meseci
  130406.     @Sifra_Oe        smallint = Null,
  130407.     @Koi_Oe        varchar(10) = Null,
  130408.     @Datum_Dok_Od    smalldatetime = Null,
  130409.     @Datum_Dok_Do    smalldatetime = Null,
  130410.     @TipDokProd        varchar(300) = Null,
  130411.     @Sifra_Art_Od        varchar(20) = Null,
  130412.     @Sifra_Art_Do        varchar(20) = Null,
  130413.     @Sifra_Gr        char(3) = Null,
  130414.     @Sifra_Podg        char(6) = Null,
  130415.     @Lokacija        char(10) = Null,
  130416.     @Sifra_Kup        char(6) = Null,
  130417.     @KFSifra_Kup        char(1) = 'N',
  130418.     @Sifra_Drg        smallint = Null,
  130419.     @Sifra_Drg1        smallint = Null,
  130420.     @APod1        smallint = Null,
  130421.     @APod2        smallint = Null,
  130422.     @APod3        smallint = Null,
  130423.     @APod4        smallint = Null,
  130424.     @APod5        smallint = Null,
  130425.     @APod6        smallint = Null,
  130426.     @APod7        smallint = Null,
  130427.     @Koi_Gradovi        varchar(300) = Null,
  130428.     @Koi_Regioni        varchar(300) = Null,
  130429.     @KPod1        smallint = Null,
  130430.     @KPod2        smallint = Null,
  130431.     @KPod3        smallint = Null,
  130432.     @KPod4        smallint = Null,
  130433.     @KPod5        smallint = Null,
  130434.     @KPod6        smallint = Null,
  130435.     @KPod7        smallint = Null,
  130436.     @Sifra_Tip         Smallint = Null,
  130437.     @Sifra_Pat        Smallint = Null,
  130438.     @TipKup        Varchar(11)=Null,
  130439.     @Sifra_Nivo        Char(2) = Null,
  130440.     @Aktiven        Char(1) = Null,
  130441.     @KomercKako        Char(1) = 'I',                -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint
  130442.     @KolkuGodNazad    smallint = 1,        -- 1- edna,    2 - dve
  130443.     @VratiSto        char(1) = 'A',        --  B - Brend,   K- Komintent
  130444.     @Prikazi        char(1) = 'K',        -- K - Kolicina,   B - Brend Kolicina,   T - Tezina,   P - Paketi,   H - Hektolitri
  130445.     @Kto            char(6) = Null,
  130446.     @Sifra_Za        char(1) = '1',
  130447.     @SoDanok        char(1) = 'N'
  130448. As
  130449.     Declare @SSQL as Varchar(8000)
  130450.     Declare @SSQLUsl as Varchar(8000)
  130451.     Declare @DatOd smalldatetime --datum od
  130452.     Declare @DatDo smalldatetime --datum do
  130453.     Declare @DatLaniOd smalldatetime --datum od lani
  130454.     Declare @DatLaniDo smalldatetime -- datum do lani 
  130455.     Declare @DatLaniPoc smalldatetime-- poc. datum lani
  130456.     Declare @DatGodPoc smalldatetime-- poc datum godinava
  130457. -------------------POSTAVI DATUMI--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130458.     Set @DatOd=@Datum_Dok_Od
  130459.     Set @DatDo=@Datum_Dok_Do
  130460.     Set @DatLaniOd = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-1, Month(@Datum_Dok_Od), Day(@Datum_Dok_Od))
  130461.     Set @DatLaniDo = dbo.fn_NapraviDatum(Year(@Datum_Dok_Do)-1, Month(@Datum_Dok_Do), Day(@Datum_Dok_Do))
  130462.     Set @DatLaniPoc = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od)-1, 1, 1)
  130463.     Set @DatGodPoc = dbo.fn_NapraviDatum(Year(@Datum_Dok_Od), 1, 1)
  130464. --print @DatLaniOd
  130465. --print @DatLaniDo
  130466. --print @DatLaniPoc
  130467. --print @DatGodPoc
  130468. ---------------------tabela----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130469. Create Table #Tmp
  130470.     ( Ime varchar(40),
  130471.     Grupiraj varchar(20),
  130472.     GrupirajIme varchar(40),
  130473.     MesecLani decimal(18,2), 
  130474.     MesecGod decimal(18,2),
  130475.     DifMesec integer,
  130476.     GodinaLani decimal(18,2),
  130477.     GodinaGod decimal(18,2),
  130478.     DifGodina integer)
  130479. ------------Filtri--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130480. Set @SSQLUsl=''
  130481.     If @Sifra_Oe Is Not Null
  130482.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(10)) + ' '
  130483.     If @Koi_Oe Is Not Null
  130484.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  130485.     If @Sifra_Kup Is Not Null
  130486.     Begin
  130487.         If @KFSifra_Kup = 'D'
  130488.             Set @SSQLUsl = @SSQLUsl + ' And (D.Sifra_Kup <> ''' + @Sifra_Kup + ''' Or D.Sifra_Kup Is Null) '
  130489.         Else
  130490.             Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup = ''' + @Sifra_Kup + ''' '
  130491.     End
  130492.     If @TipDokProd Is Not Null
  130493.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Dok In (' + @TipDokProd + ') '
  130494.     If @Sifra_Art_Od Is Not Null
  130495.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  130496.     If @Sifra_Art_Do Is Not Null
  130497.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  130498.     If @Sifra_Drg Is Not Null
  130499.         Set @SSQLUsl = @SSQLUsl + ' And KA.Sifra_Drg = ' + Cast(@Sifra_Drg as varchar(10)) + ' '
  130500.     If @Sifra_Drg1 Is Not Null
  130501.         Set @SSQLUsl = @SSQLUsl + ' And DR.Sifra_Drg1 = ' + Cast(@Sifra_Drg1 as varchar(10)) + ' '
  130502.     If @Sifra_Podg Is Not Null
  130503.         Set @SSQLUsl = @SSQLUsl + ' And KA.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  130504.     If @Lokacija Is Not Null
  130505.         Set @SSQLUsl = @SSQLUsl + ' And KA.Lokacija = ''' + @Lokacija + ''' '
  130506.     If @Sifra_Gr Is Not Null
  130507.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  130508.     If @APod1 Is Not Null
  130509.         Set @SSQLUsl = @SSQLUsl + ' And KA.Drugo1 = ' + Cast(@APod1 as varchar(10)) + ' '
  130510.     If @APod2 Is Not Null
  130511.         Set @SSQLUsl = @SSQLUsl + ' And KA.Drugo2 = ' + Cast(@APod2 as varchar(10)) + ' '
  130512.     If @APod3 Is Not Null
  130513.         Set @SSQLUsl = @SSQLUsl + ' And KA.Drugo3 = ' + Cast(@APod3 as varchar(10)) + ' '
  130514.     If @APod4 Is Not Null
  130515.         Set @SSQLUsl = @SSQLUsl + ' And KA.Drugo4 = ' + Cast(@APod4 as varchar(10)) + ' '
  130516.     If @APod5 Is Not Null
  130517.         Set @SSQLUsl = @SSQLUsl + ' And KA.Drugo5 = ' + Cast(@APod5 as varchar(10)) + ' '
  130518.     If @APod6 Is Not Null
  130519.         Set @SSQLUsl = @SSQLUsl + ' And KA.Drugo6 = ' + Cast(@APod6 as varchar(10)) + ' '
  130520.     If @APod7 Is Not Null
  130521.         Set @SSQLUsl = @SSQLUsl + ' And KA.Drugo7 = ' + Cast(@APod7 as varchar(10)) + ' '
  130522.     If @Kto Is Not Null
  130523.         Set @SSQLUsl = @SSQLUsl + ' And KA.Kto = ''' + @Kto + ''' '
  130524.     If @Sifra_Tip Is Not Null
  130525.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(10)) + ' '
  130526.     If @Sifra_Nivo Is Not Null
  130527.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  130528.     If @TipKup Is Not Null
  130529.         Set @SSQLUsl = @SSQLUsl + ' And K.TipKup=''' + @TipKup + ''' '
  130530.     If @Sifra_Pat IS NOT NULL
  130531.     Begin 
  130532.         If @KomercKako = 'I'
  130533.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  130534.         Else 
  130535.             SET @SSQLUsl = @SSQLUsl + ' AND K.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  130536.     End
  130537.     If @Sifra_Pat Is Not Null
  130538.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(10)) + ' '
  130539.     If @Koi_Gradovi Is Not Null
  130540.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Grad In (' + @Koi_Gradovi + ') '
  130541.     If @Koi_Regioni Is Not Null
  130542.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Reg In (' + @Koi_Regioni + ') '
  130543.     If @Aktiven = 'D'    
  130544.         Set @SSQLUsl = @SSQLUsl + ' And (K.Aktiven <> ''N'' or K.Aktiven Is Null) '     
  130545.     Else If @Aktiven = 'N'    
  130546.         Set @SSQLUsl = @SSQLUsl + ' And K.Aktiven = ''N'' '     
  130547.     If @KPod1 Is Not Null
  130548.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo1=' + Cast(@KPod1 As Varchar(10)) + ' '
  130549.     If @KPod2 Is Not Null
  130550.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo2=' + Cast(@KPod2 As Varchar(10)) + ' '
  130551.     If @KPod3 Is Not Null
  130552.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo3=' + Cast(@KPod3 As Varchar(10)) + ' '
  130553.     If @KPod4 Is Not Null
  130554.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo4=' + Cast(@KPod4 As Varchar(10)) + ' '
  130555.     If @KPod5 Is Not Null
  130556.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo5=' + Cast(@KPod5 As Varchar(10)) + ' '
  130557.     If @KPod6 Is Not Null
  130558.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo6=' + Cast(@KPod6 As Varchar(10)) + ' '
  130559.     If @KPod7 Is Not Null
  130560.         Set @SSQLUsl = @SSQLUsl + ' And K.KDrugo7=' + Cast(@KPod7 As Varchar(10)) + ' '
  130561. ------------mesec vo minatata godina--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130562.     If @VratiSto='K' 
  130563.         Set @SSQL=' Select K.ImeKup,K.TipKup,GT.ImeTipKup, '  
  130564.     else
  130565.         Set @SSQL=' Select DR.Ime,DR.Sifra_drg1,'' '', '
  130566.     Set @SSQL=@SSQL + ' Sum(S.Kolic*dbo.fn_VratiCena(S.DokCena,S.POsn,S.DanDokCena,'''+@SoDanok+''' )*(1-S.Uces/100)*(1-D.Kasa/100)), 0, 0, 0, 0, 0  
  130567.                    From Stavr S
  130568.            Inner Join Dokr D On D.DokrID=S.DokrID
  130569.                    Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  130570.                    Inner Join KatArt KA on S.Sifra_Art=KA.Sifra_Art '
  130571.     if @VratiSto='K'
  130572.           Set @SSQL=@SSQL+' Left Outer Join GTipKup GT on K.TipKup=GT.TipKUp  '
  130573.     else
  130574.         Set @SSQL=@SSQL+' Left Outer Join DrgPodel DR On KA.Sifra_drg=DR.Sifra_drg '
  130575.     If @Sifra_Gr Is Not Null
  130576.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg = KA.Sifra_Podg '
  130577.  
  130578.     Set @SSQL=@SSQL+'Where S.Datum_Dok>='''+cast(@DatLaniOd as Varchar(35))+'''
  130579.                      and S.Datum_Dok<='''+cast(@DatLaniDo as varchar(35))+''' '
  130580.     Set @SSQL= @SSQL+@SSQLUsl
  130581.     if @VratiSto='K'
  130582.         Set @SSQL=@SSQL+' Group by K.ImeKup,K.TipKup,GT.ImeTipKup'
  130583.     else
  130584.         Set @SSQL=@SSQL+' Group by DR.Ime,DR.Sifra_drg1 '
  130585.     Insert Into #Tmp (Ime, Grupiraj, GrupirajIme, MesecLani, MesecGod, DifMesec, GodinaLani, GodinaGod, DifGodina) exec(@ssql)
  130586.     print @ssql
  130587. --------------mesec ovaa godina--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130588.     If @VratiSto='K' 
  130589.         Set @SSQL=' Select K.ImeKup,K.TipKup,GT.ImeTipKup, '
  130590.     else
  130591.         Set @SSQL=' Select DR.Ime,DR.Sifra_drg1, '' '', '
  130592.     Set @SSQL=@SSQL + '0, Sum(S.Kolic*dbo.fn_VratiCena(S.DokCena,S.POsn,S.DanDokCena,'''+@SoDanok+''' )*(1-S.Uces/100)*(1-D.Kasa/100)), 0, 0, 0, 0 
  130593.                        From Stavr S
  130594.                        Inner Join Dokr D On D.DokrID=S.DokrID
  130595.                        Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  130596.                        Inner Join KatArt KA on S.Sifra_Art=KA.Sifra_Art '
  130597.     if @VratiSto='K'
  130598.           Set @SSQL=@SSQL+' Left Outer Join GTipKup GT on K.TipKup=GT.TipKUp '
  130599.     else
  130600.         Set @SSQL=@SSQL+' Left Outer Join DrgPodel DR On KA.Sifra_drg=DR.Sifra_drg '
  130601.     If @Sifra_Gr Is Not Null
  130602.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg = KA.Sifra_Podg '
  130603.     Set @SSQL=@SSQL+'Where S.Datum_Dok>='''+cast(@DatOd as Varchar(35))+'''
  130604.                      and S.Datum_Dok<='''+cast(@DatDo as varchar(35))+''' '
  130605.     Set @SSQL= @SSQL+@SSQLUsl
  130606.     if @VratiSto='K'
  130607.         Set @SSQL=@SSQL+' Group by K.ImeKup,K.TipKup,GT.ImeTipKup'
  130608.     else
  130609.         Set @SSQL=@SSQL+' Group by DR.Ime,DR.Sifra_drg1'
  130610.     Insert Into #Tmp (Ime, Grupiraj, GrupirajIme, MesecLani, MesecGod, DifMesec, GodinaLani, GodinaGod, DifGodina) exec(@ssql)
  130611.     print @ssql
  130612. -----------------------------od poc do mesec minatata godina-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130613.     If @VratiSto='K' 
  130614.         Set @SSQL=' Select K.ImeKup,K.TipKup,GT.ImeTipKup,' 
  130615.     else
  130616.         Set @SSQL=' Select DR.Ime,DR.Sifra_drg1,'' '',  '
  130617.     Set @SSQL=@SSQL + ' 0, 0, 0, Sum(S.Kolic*dbo.fn_VratiCena(S.DokCena,S.POsn,S.DanDokCena,'''+@SoDanok+''' )*(1-S.Uces/100)*(1-D.Kasa/100)),0, 0   
  130618.                        From Stavr S
  130619.                        Inner Join Dokr D On D.DokrID=S.DokrID
  130620.                        Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  130621.                        Inner Join KatArt KA on S.Sifra_Art=KA.Sifra_Art '
  130622.     if @VratiSto='K'
  130623.           Set @SSQL=@SSQL+'Left Outer Join GTipKup GT on K.TipKup=GT.TipKUp '
  130624.     else
  130625.         Set @SSQL=@SSQL+' Left Outer Join DrgPodel DR On KA.Sifra_drg=DR.Sifra_drg   '
  130626.     If @Sifra_Gr Is Not Null
  130627.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg = KA.Sifra_Podg '
  130628.     Set @SSQL=@SSQL+'Where S.Datum_Dok>='''+cast(@DatLaniPoc as Varchar(35))+'''
  130629.                      and S.Datum_Dok<='''+cast(@DatLaniDo as varchar(35))+''' '
  130630.     Set @SSQL= @SSQL+@SSQLUsl
  130631.     if @VratiSto='K'
  130632.         Set @SSQL=@SSQL+' Group by K.ImeKup,K.TipKup,GT.ImeTipKup'
  130633.     else
  130634.         Set @SSQL=@SSQL+' Group by DR.Ime,DR.Sifra_drg1 '
  130635.     Insert Into #Tmp (Ime, Grupiraj, GrupirajIme, MesecLani, MesecGod, DifMesec, GodinaLani, GodinaGod, DifGodina) exec(@ssql)
  130636.     print @ssql
  130637. ---------------------------od poc do mesec ovaa godina--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130638.     If @VratiSto='K' 
  130639.         Set @SSQL=' Select K.ImeKup,K.TipKup,GT.ImeTipKup,'
  130640.     else
  130641.         Set @SSQL=' Select DR.Ime,DR.Sifra_drg1, '' '',  '      
  130642.     Set @SSQL=@SSQL + ' 0, 0, 0,0, Sum(S.Kolic*dbo.fn_VratiCena(S.DokCena,S.POsn,S.DanDokCena,'''+@SoDanok+''' )*(1-S.Uces/100)*(1-D.Kasa/100)),0  
  130643.                         From Stavr S
  130644.                         Inner Join Dokr D On D.DokrID=S.DokrID
  130645.                         Left Outer Join Komint K On K.Sifra_Kup=D.Sifra_Kup
  130646.                         Inner Join KatArt KA on S.Sifra_Art=KA.Sifra_Art '
  130647.     if @VratiSto='K'
  130648.           Set @SSQL=@SSQL+' Left Outer Join GTipKup GT on K.TipKup=GT.TipKUp '
  130649.     else
  130650.         Set @SSQL=@SSQL+' Left Outer Join DrgPodel DR On KA.Sifra_drg=DR.Sifra_drg   '
  130651.     If @Sifra_Gr Is Not Null
  130652.         Set @SSQL = @SSQL + ' Left Outer Join Podgrupi P On P.Sifra_Podg = KA.Sifra_Podg '
  130653.     Set @SSQL=@SSQL+' Where S.Datum_Dok>='''+cast(@DatGodPoc as Varchar(35))+'''
  130654.                      and S.Datum_Dok<='''+cast(@DatDo as varchar(35))+''' '
  130655.     Set @SSQL= @SSQL+@SSQLUsl
  130656.     if @VratiSto='K'
  130657.         Set @SSQL=@SSQL+' Group by K.ImeKup,K.TipKup,GT.ImeTipKup'
  130658.     else
  130659.         Set @SSQL=@SSQL+' Group by DR.Ime,DR.Sifra_drg1 '
  130660.     Insert Into #Tmp (Ime, Grupiraj, GrupirajIme, MesecLani, MesecGod, DifMesec, GodinaLani, GodinaGod, DifGodina) exec(@ssql)
  130661.     print @ssql
  130662.  
  130663. Create Table #Tmp1
  130664.     ( Ime varchar(40),
  130665.     Grupiraj varchar(20),
  130666.     GrupirajIme varchar(40),
  130667.     MesecLani decimal(18,2), 
  130668.     MesecGod decimal(18,2),
  130669.     DifMesec integer,
  130670.     GodinaLani decimal(18,2),
  130671.     GodinaGod decimal(18,2),
  130672.     DifGodina integer)
  130673.  
  130674. Insert Into #Tmp1 
  130675. Select Ime, Grupiraj, GrupirajIme, 
  130676. Sum(MesecLani) MesecLani, Sum(MesecGod) MesecGod, 
  130677. Sum(DifMesec) DifMesec,  Sum(GodinaLani) GodinaLani,
  130678. Sum(GodinaGod) GodinaGod, Sum(DifGodina) DifGodina
  130679. FROM #Tmp
  130680. GROUP BY Ime, Grupiraj, GrupirajIme
  130681.  
  130682. select * from #Tmp1
  130683.  
  130684. ---------------------------Krajno--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  130685. SELECT  Ime, Grupiraj, GrupirajIme, MesecLani,  MesecGod,  (case when MesecLani=0 then 100 else MesecGod/Meseclani*100-100 end) DifMesec,  GodinaLani,GodinaGod, (case when GodinaLani=0 then 100 else GodinaGod/GodinaLani*100-100 end) DifGodina
  130686. FROM #Tmp1
  130687.  
  130688.  
  130689. Go
  130690. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_vozila_cd]'))
  130691. drop procedure [dbo].[sp_prod_vozila_cd]
  130692.  
  130693. Go
  130694.  
  130695. CREATE PROCEDURE [dbo].[sp_prod_vozila_cd]
  130696.     @Datum_Od    smalldatetime = Null,
  130697.     @Datum_Do    smalldatetime = Null,
  130698.     @Sifra_OE    smallint = Null,
  130699.     @Lista_OE    varchaR(2000) = Null,
  130700.     @KoiArt        varchar(10) = Null,
  130701.     @Sifra_Od    varchar(20) = Null,
  130702.     @Sifra_Do    varchar(20) = Null,
  130703.     @Kto        char(6) = Null,
  130704.     @Sifra_Gr    char(3) = Null,
  130705.     @Sifra_Podg    char(6) = Null,
  130706.     @Lokacija    varchar(10) = Null,
  130707.     @Zbiren        char(1) = Null
  130708.  
  130709. AS
  130710.  
  130711.     Create Table #tProdArt
  130712.     (    Sifra_oe    smallint,
  130713.         Sifra_Art    varchar(20),
  130714.         Konsignacija decimal (18, 4),
  130715.         Prodavnica    decimal (18, 4),
  130716.         Faktura        decimal (18, 4),
  130717.         PKonsignacija decimal (18, 4),
  130718.         PProdavnica    decimal (18, 4),
  130719.         PFaktura        decimal (18, 4)
  130720.     )
  130721.  
  130722.     Declare @SSQL_Usl varchaR(1000)
  130723.     Declare @SSQL_Usl_Flex varchaR(1000)
  130724.  
  130725.     set @SSQL_Usl = ' '
  130726.        If @Sifra_Od IS NOT NULL 
  130727.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art >= ''' + @Sifra_Od + ''' '
  130728.  
  130729.        If @Sifra_Do IS NOT NULL 
  130730.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_Art <= ''' + @Sifra_Do + ''' '
  130731.  
  130732.        If @Kto IS NOT NULL
  130733.               Set @SSQL_Usl = @SSQL_Usl + ' AND K.Kto = ''' + @Kto + ''' '
  130734.  
  130735.        If @Sifra_Gr IS NOT NULL
  130736.               Set @SSQL_Usl = @SSQL_Usl + ' AND P.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  130737.  
  130738.      If @Sifra_Podg Is Not Null
  130739.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  130740.  
  130741.        If @Lokacija IS NOT NULL
  130742.         Set @SSQL_Usl = @SSQL_Usl + ' AND K.Lokacija = ''' + @Lokacija + ''' '
  130743.  
  130744.     if @Sifra_Oe is not null
  130745.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_oe = ' + cast(@Sifra_Oe as varchaR(5)) + ' '
  130746.  
  130747.     set @SSQL_Usl_Flex = @SSQL_Usl
  130748.     if @Lista_Oe is not null
  130749.     begin
  130750.         if @Zbiren = 'D'
  130751.             Set @SSQL_Usl_Flex = @SSQL_Usl_Flex + ' AND (S.Sifra_oe = 91 or S.Sifra_oe in (' + @Lista_Oe + ')) '
  130752.         Set @SSQL_Usl = @SSQL_Usl + ' AND S.Sifra_oe in (' + @Lista_Oe + ') '
  130753.     end
  130754.  
  130755.     Declare @SSQL_Usl_Dat varchaR(100)
  130756.     set @SSQL_Usl_Dat = ' '
  130757.  
  130758.     if @Datum_Od is not null
  130759.         set @SSQL_Usl_Dat = @SSQL_Usl_Dat + ' and S.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  130760.  
  130761.     if @Datum_Do is not null
  130762.         set @SSQL_Usl_Dat = @SSQL_Usl_Dat + ' and S.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  130763.  
  130764.     Declare @SSQL_Usl_Dat_Preth varchaR(100)
  130765.     set @SSQL_Usl_Dat_Preth = ' '
  130766.     if @Datum_Od is not null
  130767.         set @SSQL_Usl_Dat_Preth = @SSQL_Usl_Dat_Preth + ' and S.Datum_Dok < ''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  130768.  
  130769.     -- Odjaveni koliccini od konsignacija
  130770.     -- Za da gi prikazzeme SAMO vozilata, pravime INNER join so VOZILA
  130771.     Declare @SSQL varchaR(6000)
  130772.     set @SSQL = '
  130773.     select S.Sifra_Oe, S.Sifra_Art, sum(S.Kolic), 0, 0, 0, 0, 0
  130774.     From Stavr S
  130775.     inner join Dokr D
  130776.         on S.DokrId = D.DokrId
  130777.     inner join Vozila V
  130778.         on S.SIfra_Art = V.SifrA_Art
  130779.     where S.Sifra_Dok in (18,19) ' 
  130780.     + @SSQL_Usl_Dat + @SSQL_USL + '
  130781.     group by S.Sifra_Oe, S.Sifra_Art '
  130782.  
  130783.     Exec ('insert into #tProdArt ' + @SSQL)
  130784.  
  130785.     ----- AJ sega i za prethodnata sostojba
  130786.     if @Datum_Od is not null
  130787.     begin
  130788.         set @SSQL = '
  130789.         select S.Sifra_Oe, S.Sifra_Art, 0, 0, 0, sum(S.Kolic), 0, 0
  130790.         From Stavr S
  130791.         inner join Dokr D
  130792.             on S.DokrId = D.DokrId
  130793.         inner join Vozila V
  130794.             on S.SIfra_Art = V.SifrA_Art
  130795.         where S.Sifra_Dok in (18,19) ' 
  130796.         + @SSQL_Usl_Dat_Preth + @SSQL_USL + '
  130797.         group by S.Sifra_Oe, S.Sifra_Art '
  130798.  
  130799.         Exec ('insert into #tProdArt ' + @SSQL)
  130800.     end
  130801.  
  130802.     -- Prodadeni koliccini od prodavnica
  130803.     -- Za da gi prikazzeme SAMO vozilata, pravime INNER join so VOZILA
  130804.     set @SSQL = '
  130805.     select S.Sifra_Oe, S.Sifra_Art, 0, sum(S.Kolic), 0, 0, 0, 0
  130806.     From Stavr S
  130807.     inner join Dokr D
  130808.         on S.DokrId = D.DokrId
  130809.     inner join Vozila V
  130810.         on S.SIfra_Art = V.SifrA_Art
  130811.     where S.Sifra_Dok in (100,101) ' 
  130812.     + @SSQL_Usl_Dat + @SSQL_USL + '
  130813.     group by S.Sifra_Oe, S.Sifra_Art '
  130814.  
  130815.     Exec ('insert into #tProdArt ' + @SSQL)
  130816.  
  130817.     ----- AJ sega i za prethodnata sostojba
  130818.     if @Datum_Od is not null
  130819.     begin
  130820.         set @SSQL = '
  130821.         select S.Sifra_Oe, S.Sifra_Art, 0, 0, 0, 0, sum(S.Kolic), 0
  130822.         From Stavr S
  130823.         inner join Dokr D
  130824.             on S.DokrId = D.DokrId
  130825.         inner join Vozila V
  130826.             on S.SIfra_Art = V.SifrA_Art
  130827.         where S.Sifra_Dok in (100,101) ' 
  130828.         + @SSQL_Usl_Dat_Preth + @SSQL_USL + '
  130829.         group by S.Sifra_Oe, S.Sifra_Art '
  130830.  
  130831.         Exec ('insert into #tProdArt ' + @SSQL)
  130832.     end
  130833.  
  130834.     -- Prodadeni koliccini direktno na faktura
  130835.     -- Za da gi prikazzeme SAMO vozilata, pravime INNER join so VOZILA
  130836.  
  130837.     -- Prvo da vidime koi DokrId voopssto vo bazata se od ODJAVA fakturi
  130838.     Create Table #tFaktDok
  130839.     (    DokrIdFra     int,
  130840.         Sifra_oe    int,
  130841.         Sifra_Dok    int,
  130842.         Broj_Dok    int,
  130843.         Toc200        decimal (18, 2)
  130844.     )
  130845.  
  130846.        Set @SSQL = 'SELECT DFakt.DokrId, 
  130847.              DFakt.Sifra_Oe, DFakt.Sifra_Dok, DFakt.Broj_Dok,
  130848.              DFakt.Toc200
  130849.              From Dokr DFakt
  130850.              inner join DokrOdj DV
  130851.             on DV.DokrId_Fra = DFakt.DokrId '
  130852.     insert into #tFaktDok  Exec (@SSQL)
  130853.  
  130854.     set @SSQL = '
  130855.     select S.Sifra_Oe, S.Sifra_Art, 0, 0, sum(S.Kolic), 0, 0, 0
  130856.     From Stavr S
  130857.     inner join Dokr D
  130858.         on S.DokrId = D.DokrId
  130859.     inner join Vozila V
  130860.         on S.SIfra_Art = V.SifrA_Art
  130861.     where S.Sifra_Dok in (1, 3, 6) and 
  130862.           S.DokrId not in (select DokrIdFra from #tFaktDok) ' 
  130863.     + @SSQL_Usl_Dat + @SSQL_USL + '
  130864.     group by S.Sifra_Oe, S.Sifra_Art '
  130865.  
  130866.     Exec ('insert into #tProdArt ' + @SSQL)
  130867.  
  130868.     ----- AJ sega i za prethodnata sostojba
  130869.     if @Datum_Od is not null
  130870.     begin
  130871.         set @SSQL = '
  130872.         select S.Sifra_Oe, S.Sifra_Art, 0, 0, 0, 0, 0, sum(S.Kolic)
  130873.         From Stavr S
  130874.         inner join Dokr D
  130875.             on S.DokrId = D.DokrId
  130876.         inner join Vozila V
  130877.             on S.SIfra_Art = V.SifrA_Art
  130878.         where S.Sifra_Dok in (1, 3, 6) and 
  130879.               S.DokrId not in (select DokrIdFra from #tFaktDok) ' 
  130880.         + @SSQL_Usl_Dat_Preth + @SSQL_USL + '
  130881.         group by S.Sifra_Oe, S.Sifra_Art '
  130882.  
  130883.         Exec ('insert into #tProdArt ' + @SSQL)
  130884.     end
  130885.  
  130886.     ---
  130887.  
  130888.     if @Zbiren = 'D'
  130889.     begin
  130890.         Create Table #tZal
  130891.         (    Sifra_Art    varchar(20),
  130892.             ZalKons     decimal (18, 4),
  130893.             ZalProd        decimal (18, 4),
  130894.             ZalMag        decimal (18, 4),
  130895.             ZalCarSklad    decimal (18, 4)
  130896.         )
  130897.  
  130898.         -- Dodaj Zaliha od konsignacija
  130899.         set @SSQL = '
  130900.         insert into #tZal
  130901.             Select S.Sifra_Art, 
  130902.                Sum(S.Vlez - S.Izlez),
  130903.                0,
  130904.                0,
  130905.                0
  130906.             From Soart S
  130907.             inner join Vozila V
  130908.                 on S.SIfra_Art = V.SifrA_Art
  130909.             inner Join SGrOrg GO
  130910.                 on S.Sifra_Oe = GO.Sifra_Oe
  130911.             where GO.Sif_GrOrg = ''KONS'' '
  130912.             + @SSQL_Usl +
  130913.             ' Group By S.Sifra_Art '
  130914.         exec (@SSQL)
  130915.  
  130916.         -- Dodaj Zaliha od PRODAVNICI
  130917.         set @SSQL = '
  130918.         insert into #tZal
  130919.             Select S.Sifra_Art, 
  130920.                0,
  130921.                Sum(S.Vlez - S.Izlez),
  130922.                0,
  130923.                0
  130924.             From Soart S
  130925.             inner join Vozila V
  130926.                 on S.SIfra_Art = V.SifrA_Art
  130927.             inner Join SGrOrg GO
  130928.                 on S.Sifra_Oe = GO.Sifra_Oe
  130929.             where GO.Sif_GrOrg = ''PROD'' '
  130930.             + @SSQL_Usl +
  130931.             ' Group By S.Sifra_Art '
  130932.         exec (@SSQL)
  130933.  
  130934.         -- Dodaj Zaliha od MAGACINITE
  130935.         -- Pripazi na SSQL_Usl_Flex
  130936.         set @SSQL = '
  130937.         insert into #tZal
  130938.             Select S.Sifra_Art, 
  130939.                0,
  130940.                0,
  130941.                Sum(S.Vlez - S.Izlez),
  130942.                0
  130943.             From Soart S
  130944.             inner join Vozila V
  130945.                 on S.SIfra_Art = V.SifrA_Art
  130946.             inner Join SGrOrg GO
  130947.                 on S.Sifra_Oe = GO.Sifra_Oe
  130948.             where GO.Sif_GrOrg = ''GMAG'' '
  130949.             + @SSQL_Usl_Flex +
  130950.             ' Group By S.Sifra_Art'
  130951.         exec (@SSQL)
  130952.  
  130953.         -- Carinski sklad TBD
  130954.         --
  130955.     end
  130956.  
  130957.     if @Zbiren = 'D'
  130958.     begin
  130959.         Create Table #tProdArtSum
  130960.         (    Sifra_Art    varchar(20),
  130961.             Konsignacija decimal (18, 4),
  130962.             Prodavnica    decimal (18, 4),
  130963.             Faktura        decimal (18, 4),
  130964.             PKonsignacija decimal (18, 4),
  130965.             PProdavnica    decimal (18, 4),
  130966.             PFaktura    decimal (18, 4)
  130967.         )
  130968.  
  130969.         insert into #tProdArtSum
  130970.                SELECT S.Sifra_Art, 
  130971.                 Sum(Konsignacija),
  130972.                 Sum(Prodavnica),
  130973.                 Sum(Faktura),
  130974.                 Sum(PKonsignacija),
  130975.                 Sum(PProdavnica),
  130976.                 Sum(PFaktura)
  130977.             FROM #tProdArt S
  130978.             group By S.Sifra_Art
  130979.  
  130980.         Create Table #tZalSum
  130981.         (    Sifra_Art    varchar(20),
  130982.             ZalKons     decimal (18, 4),
  130983.             ZalProd        decimal (18, 4),
  130984.             ZalMag        decimal (18, 4),
  130985.             ZalCarSklad    decimal (18, 4)
  130986.         )
  130987.  
  130988.         insert into #tZalSum
  130989.                SELECT S.Sifra_Art, 
  130990.                 Sum(ZalKons),
  130991.                 Sum(ZalProd),
  130992.                 Sum(ZalMag),
  130993.                 Sum(ZalCarSklad)
  130994.             FROM #tZal S
  130995.             group By S.Sifra_Art
  130996.  
  130997.         -- Kreiraj zapis vo #tProdArtSum ako ima zaliha.... Zaradi ednostavnost natamu
  130998.         insert into #tProdArtSum
  130999.                SELECT S.Sifra_Art, 
  131000.                 0,
  131001.                 0,
  131002.                 0,
  131003.                 0,
  131004.                 0,
  131005.                 0
  131006.             FROM #tZalSum S
  131007.             where S.Sifra_Art not in (select Sifra_Art from #tProdArtSum)
  131008.             group By S.Sifra_Art
  131009.  
  131010.         -- Kreiraj zapis vo #tProdArtSum ako ima zaliha vo 2, 3, 4.... Zaradi ednostavnost natamu
  131011.         insert into #tProdArtSum
  131012.                SELECT S.Sifra_Art, 
  131013.                 0,
  131014.                 0,
  131015.                 0,
  131016.                 0,
  131017.                 0,
  131018.                 0
  131019.             FROM Soart S
  131020.             where S.Sifra_Art not in (select Sifra_Art from #tProdArtSum)
  131021.                    and S.Sifra_Oe = 2 and S.Vlez - S.Izlez <> 0
  131022.  
  131023.         insert into #tProdArtSum
  131024.                SELECT S.Sifra_Art, 
  131025.                 0,
  131026.                 0,
  131027.                 0,
  131028.                 0,
  131029.                 0,
  131030.                 0
  131031.             FROM Soart S
  131032.             where S.Sifra_Art not in (select Sifra_Art from #tProdArtSum)
  131033.                    and S.Sifra_Oe = 3 and S.Vlez - S.Izlez <> 0
  131034.  
  131035.         insert into #tProdArtSum
  131036.                SELECT S.Sifra_Art, 
  131037.                 0,
  131038.                 0,
  131039.                 0,
  131040.                 0,
  131041.                 0,
  131042.                 0
  131043.             FROM Soart S
  131044.             where S.Sifra_Art not in (select Sifra_Art from #tProdArtSum)
  131045.                    and S.Sifra_Oe = 4 and S.Vlez - S.Izlez <> 0
  131046.  
  131047.         -- Formiraj rezultat    
  131048.            SELECT S.Sifra_Art, 
  131049.                 S.Konsignacija, 
  131050.                 S.Prodavnica,
  131051.                 S.Faktura,
  131052.                 Z.ZalKons,
  131053.                 Z.ZalProd,
  131054.                 Z.ZalMag,
  131055.                 Z.ZalCarSklad,
  131056.                 K.ImeArt, K.ImeArt2, K.Edmera,
  131057.                 K.Nabavna, K.GotCena, K.Dogcena, K.Malcena, K.Specena,
  131058.                 case when S2.Vlez - S2.Izlez is null then 0 else  S2.Vlez - S2.Izlez end  Zaliha2,
  131059.                 case when S3.Vlez - S3.Izlez is null then 0 else S3.Vlez - S3.Izlez end Zaliha3,
  131060.                 case when S4.Vlez - S4.Izlez is null then 0 else S4.Vlez - S4.Izlez end Zaliha4,
  131061.                 S.PKonsignacija, 
  131062.                 S.PProdavnica,
  131063.                 S.PFaktura
  131064.         FROM #tProdArtSum S
  131065.         INNER JOIN Katart K 
  131066.             ON S.Sifra_Art = K.Sifra_Art 
  131067.         Left Outer Join #TZalSum Z
  131068.             on Z.Sifra_Art = S.Sifra_Art
  131069.         Left Outer Join Soart S2
  131070.             on S2.Sifra_Art = S.Sifra_Art and S2.Sifra_Oe = 2
  131071.         Left Outer Join Soart S3
  131072.             on S3.Sifra_Art = S.Sifra_Art and S3.Sifra_Oe = 3
  131073.         Left Outer Join Soart S4
  131074.             on S4.Sifra_Art = S.Sifra_Art and S4.Sifra_Oe = 4
  131075.         where S.Konsignacija <> 0 or S.Prodavnica <> 0 or S.Faktura <> 0 or
  131076.               Z.ZalKons <> 0 or Z.ZalProd <> 0 or Z.ZalMag <> 0 or Z.ZalCarSklad <>0
  131077.               or case when S2.Vlez - S2.Izlez is null then 0 else  S2.Vlez - S2.Izlez end <> 0 
  131078.               or  case when S3.Vlez - S3.Izlez is null then 0 else S3.Vlez - S3.Izlez end <> 0     
  131079.                or  case when S4.Vlez - S4.Izlez is null then 0 else S4.Vlez - S4.Izlez end <> 0
  131080.               or S.PKonsignacija <> 0 or S.PProdavnica <> 0 or S.PFaktura <> 0
  131081.     end
  131082.     else
  131083.            SELECT S.Sifra_OE, S.Sifra_Art,
  131084.                 Sum(Konsignacija) Konsignacija, 
  131085.                 Sum(Prodavnica) Prodavnica,
  131086.                 Sum(Faktura) Faktura,
  131087.                 Sum(Konsignacija + Prodavnica + Faktura) Prodazba,
  131088.                 K.ImeArt, K.ImeArt2, K.Edmera, T.ProcOsn, Soa.DanCena,
  131089.                 Soa.Cena, K.Nabavna, K.GotCena, Soa.NNabCena, K.Dogcena, K.Malcena, K.Specena,
  131090.                 O.ImeOrg, O.OrgGrad,
  131091.                 Sum(PKonsignacija) PKonsignacija, 
  131092.                 Sum(PProdavnica) PProdavnica,
  131093.                 Sum(PFaktura) PFaktura
  131094.         FROM #tProdArt S
  131095.         left outer join Soart Soa on S.Sifra_oe = Soa.Sifra_oe and S.Sifra_Art = Soa.Sifra_Art
  131096.         INNER JOIN Katart K ON S.Sifra_Art=K.Sifra_Art 
  131097.         INNER JOIN Tarifi T ON K.Sifra_Tar=T.Sifra_Tar 
  131098.         inner join OrgEd O
  131099.         on S.Sifra_Oe = O.Sifra_Oe
  131100.         group by S.Sifra_OE, S.Sifra_Art, K.ImeArt, K.ImeArt2, K.Edmera, T.ProcOsn, Soa.DanCena,
  131101.                  Soa.Cena, K.Nabavna, K.GotCena, Soa.NNabCena, K.Dogcena, K.Malcena, K.Specena,
  131102.                  O.ImeOrg, O.OrgGrad
  131103.         --having Sum(Konsignacija) <> 0 or Sum(Prodavnica) <> 0 or sum(Faktura) <> 0 
  131104.         --      or sum(PKonsignacija) <> 0 or sum(PProdavnica) <> 0 or sum(PFaktura) <> 0
  131105.         having Sum(Konsignacija + Prodavnica + Faktura) <> 0 
  131106.  
  131107.  
  131108.  
  131109.  
  131110.  
  131111.  
  131112. Go
  131113. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_vrat]'))
  131114. drop procedure [dbo].[sp_prod_vrat]
  131115.  
  131116. Go
  131117. CREATE     PROCEDURE [dbo].[sp_Prod_Vrat]
  131118.     @KoiOE Varchar(200) = Null,
  131119.     @Pod1 Smallint = Null,
  131120.     @Pod2 Smallint = Null,
  131121.     @Pod3 Smallint = Null,
  131122.     @Pod4 Smallint = Null,
  131123.     @Pod5 Smallint = Null,
  131124.     @Sifra_Tip Smallint = Null,
  131125.     @Datum_Od Smalldatetime = Null,
  131126.     @Datum_Do Smalldatetime = Null,
  131127.     @Sifra_Brand Smallint = Null,
  131128.     @Sifra_Art_Od Varchar(20) = Null,
  131129.     @Sifra_Art_Do Varchar(20) = Null,
  131130.     @Sifra_Kup_Od Char(6) = Null,
  131131.     @Sifra_Kup_Do Char(6) = Null,
  131132.     @Podred Char(1) = Null,
  131133.     @Kto Char(6) = Null,
  131134.     @Sifra_Gr Char(3) = Null,
  131135.     @Sifra_Podg Char(6) = Null,
  131136.     @Lokacija Varchar(10) = Null,
  131137.     @TipKup Char(11) = Null,
  131138.     @Koi_Gradovi varchar(200) = Null,
  131139.     @Koi_Regioni varchar(200) = Null,
  131140.     @TipDokProd varchar(200) = Null
  131141. AS
  131142.     Set Nocount On
  131143.     Declare @SSQL Varchar(4000)
  131144.     Declare @SSQL1 Varchar(4000)
  131145.     Declare @SSQL2 Varchar(4000)
  131146.     Declare @SSQL3 Varchar(4000)
  131147.     Declare @SSQLDat Varchar(4000)
  131148.     Declare @SSQLL Varchar(8000)
  131149.     
  131150.     Set @SSQLDat = ' '
  131151.     Create Table #Tab1
  131152.     (
  131153.     Sifra_Kup    char(6),
  131154.     Sifra_Obj    smallint,
  131155.     VkProd        decimal(18,6),
  131156.     ProdLeb    decimal(18,6),
  131157.     VratLeb        decimal(18,6),
  131158.     ProdPec    decimal(18,6),
  131159.     VratPec        decimal(18,6),
  131160.     ProcVratLeb    decimal(6,2),
  131161.     ProcVratPec    decimal(6,2)
  131162.     )
  131163. --and S.Sifra_Podg In (101, 102) And D.Sifra_Za=1'
  131164.     Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, sum(S.kolic*S.DokCena) 
  131165.          From Stavr S
  131166.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  131167.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  131168.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131169.         Set @SSQL= @SSQL + ' Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  131170.                                Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131171.     If @Sifra_Gr Is Not Null
  131172.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131173.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg In (000101, 000102) And D.Sifra_Za=1 and S.kolic > 0 '
  131174. --print @SSQL
  131175.     Set @SSQL1= ' And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999'' '
  131176.     If @Sifra_Brand Is Not NULL
  131177.         Set @SSQL1 = @SSQL1 +  ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  131178.     If @Lokacija Is Not NULL
  131179.         Set @SSQL1 = @SSQL1 + ' And K.Lokacija=''' + @Lokacija + ''' '
  131180.     If @Kto Is Not NULL
  131181.         Set @SSQL1 = @SSQL1 + ' And K.Kto=' + @Kto + ' '
  131182.     If @Sifra_Podg Is Not NULL
  131183.         Set @SSQL1 = @SSQL1 + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  131184.     If @Sifra_Gr Is Not NULL
  131185.         Set @SSQL1 = @SSQL1 + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  131186.         
  131187.     If @Datum_Od Is Not NULL
  131188.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131189.     If @Datum_Do Is Not NULL
  131190.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  131191.         
  131192.     If @Pod1 Is Not NULL
  131193.            Begin
  131194.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  131195.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  131196.            End
  131197.     If @Pod2 Is Not NULL
  131198.            Begin
  131199.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  131200.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  131201.            End
  131202.     If @Pod3 Is Not NULL
  131203.            Begin
  131204.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  131205.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  131206.            End
  131207.     If @Pod4 Is Not NULL
  131208.         Begin
  131209.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  131210.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  131211.            End
  131212.     If @Pod5 Is Not NULL
  131213.         Begin
  131214.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  131215.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  131216.            End
  131217.     If @Sifra_Tip Is Not NULL
  131218.         Set @SSQL1 = @SSQL1 + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  131219.     If @Sifra_Kup_Od Is Not NULL
  131220.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  131221.     If @Sifra_Kup_Do Is Not NULL
  131222.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  131223.     If @Sifra_Art_Od Is Not NULL
  131224.         Set @SSQL1 = @SSQL1 + ' And substring(S.Sifra_Art, 4, 3)>=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  131225.     If @Sifra_Art_Do Is Not NULL
  131226.         Set @SSQL1 = @SSQL1 + ' And substring(S.Sifra_Art, 4, 3)<=''' + substring(@Sifra_Art_Do, 4, 3) + ''' '
  131227.     If @TipKup Is Not NULL
  131228.         Set @SSQL1 = @SSQL1 + ' And KUP.TipKup=''' + @TipKup + ''' '
  131229.     If @KoiOE Is Not NULL
  131230.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131231.     If @TipDokProd Is Not NULL
  131232.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  131233.     If @Koi_Gradovi Is Not NULL    
  131234.         Begin
  131235.             Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  131236.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  131237.         End
  131238.     If @Koi_Regioni Is Not NULL    
  131239.         Begin
  131240.             Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  131241.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  131242.         End
  131243.     Set @SSQL2 =  ' Group By D.Sifra_Kup, D.Sifra_Obj '
  131244. Print @SSQL1
  131245. ----------------------------------------------------------------- Prodazba Na Leb ----------------------------------------------------------------------------------------------------------------------------------
  131246.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, ProdLeb) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  131247. --print @SSQL + @SSQL1 + @SSQL2
  131248. --select * from #Tab1
  131249.     Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, sum(S.kolic*S.DokCena) 
  131250.          From Stavr S
  131251.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  131252.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  131253.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  131254.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131255.         Set @SSQL= @SSQL + ' Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  131256.                                Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131257.     If @Sifra_Gr Is Not Null
  131258.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131259.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg In (000101, 000102) And D.Sifra_Za=1and S.kolic < 0 '
  131260.  
  131261.     Set @SSQLDat = ' '
  131262.     If @Datum_Od Is Not NULL
  131263.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od+1 As Varchar(35)) + ''' '
  131264.     If @Datum_Do Is Not NULL
  131265.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do+1 As Varchar(35)) + ''' '
  131266.  
  131267.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, VratLeb) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  131268. ----------------------------------------------------------------- Prodazba Na Peciva ----------------------------------------------------------------------------------------------------------------------------------
  131269.     Set @SSQL = ' '
  131270.     Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, Sum(S.kolic*S.DokCena) 
  131271.          From Stavr S
  131272.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  131273.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  131274.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  131275.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131276.         Set @SSQL= @SSQL + ' Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  131277.                                Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131278.     If @Sifra_Gr Is Not Null
  131279.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131280.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg Not In (000101, 000102) And D.Sifra_Za=1 and S.kolic > 0 '
  131281.  
  131282.     Set @SSQLDat = ' '
  131283.     If @Datum_Od Is Not NULL
  131284.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131285.     If @Datum_Do Is Not NULL
  131286.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  131287.  
  131288.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, ProdPec) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  131289. --print @SSQL + @SSQL1 + @SSQL2
  131290. --select * from #Tab1
  131291.     Set @SSQL = ' '
  131292.     Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, Sum(S.kolic*S.DokCena) 
  131293.          From Stavr S
  131294.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  131295.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  131296.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  131297.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131298.         Set @SSQL= @SSQL + ' Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  131299.                                Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131300.     If @Sifra_Gr Is Not Null
  131301.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131302.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg Not In (000101, 000102) And D.Sifra_Za=1 and S.kolic < 0 '
  131303.     
  131304.     Set @SSQLDat = ' '
  131305.     If @Datum_Od Is Not NULL
  131306.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od+1 As Varchar(35)) + ''' '
  131307.     If @Datum_Do Is Not NULL
  131308.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do+1 As Varchar(35)) + ''' '
  131309.  
  131310.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, VratPec) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  131311. --------------------------------------------------------------------Vkupna Prodazba-------------------------------------------------------------------------------------------------------------------------------
  131312.     Set @SSQL = ' '
  131313.     Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, sum(S.kolic*S.DokCena)
  131314.          From Stavr S
  131315.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  131316.         Inner Join Dokr D ON S.DokrID=D.DokrID ' 
  131317.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  131318.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131319.         Set @SSQL= @SSQL + ' Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  131320.                                Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131321.     If @Sifra_Gr Is Not Null
  131322.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131323.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' And D.Sifra_Za=1 And S.Kolic>0 '
  131324.  
  131325.     Set @SSQLDat = ' '
  131326.     If @Datum_Od Is Not NULL
  131327.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131328.     If @Datum_Do Is Not NULL
  131329.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  131330.  
  131331.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, VkProd) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  131332.     
  131333.         Set @SSQL = 'Select D.Sifra_Kup, D.Sifra_Obj, sum(S.kolic*S.DokCena)
  131334.          From Stavr S
  131335.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  131336.         Inner Join Dokr D ON S.DokrID=D.DokrID ' 
  131337.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  131338.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131339.         Set @SSQL= @SSQL + ' Inner Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  131340.                                Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131341.     If @Sifra_Gr Is Not Null
  131342.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131343.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' And D.Sifra_Za=1 And S.Kolic<0 '
  131344.  
  131345.     Set @SSQLDat = ' '
  131346.     If @Datum_Od Is Not NULL
  131347.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od+1 As Varchar(35)) + ''' '
  131348.     If @Datum_Do Is Not NULL
  131349.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do+1 As Varchar(35)) + ''' '
  131350.  
  131351.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, VkProd) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  131352. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  131353.     Create Table #Tab2
  131354.     (
  131355.     Sifra_Kup    char(6),
  131356.     Sifra_Obj    smallint,
  131357.     VkProd        decimal(18,6),
  131358.     ProdLeb    decimal(18,6),
  131359.     VratLeb        decimal(18,6),
  131360.     ProdPec    decimal(18,6),
  131361.     VratPec        decimal(18,6),
  131362.     ProcVratLeb    decimal(6,2),
  131363.     ProcVratPec    decimal(6,2)
  131364.     )
  131365. Insert Into #tab2 select sifra_Kup, sifra_obj,  sum(vkprod), sum(prodleb),  Abs(Sum(VratLeb)), sum(prodpec), Abs(Sum(VratPec)), 0, 0
  131366. from #Tab1 
  131367. group by sifra_Kup, sifra_obj
  131368.     Set @SSQL = ' Select T.Sifra_Kup, KUP.ImeKup, T.Sifra_Obj, KO.ImeObj, T.vkprod, T.prodleb,  T.VratLeb, T.prodpec, T.VratPec,
  131369.          Round((T.VratLeb/T.ProdLeb*100), 2) ProcVrLeb, Round((T.VratPec/T.ProdPec*100), 2) ProcVrPec
  131370.     From #Tab2 T
  131371.     Inner Join Komint KUP ON T.Sifra_Kup=KUP.Sifra_Kup
  131372.     Left Outer Join KObjekti KO ON T.Sifra_Obj=KO.Sifra_obj and T.Sifra_kup=KO.Sifra_kup '
  131373.     If @Podred = 'S'
  131374.         Set @SSQL=@SSQL + ' Order By T.Sifra_Kup '
  131375.     If @Podred = 'A'
  131376.         Set @SSQL=@SSQL + ' Order By KUP.ImeKup '
  131377.     If @Podred = 'V'
  131378.         Set @SSQL=@SSQL + ' Order By T.VkProd Desc '    
  131379.     Exec(@SSQL)
  131380.     Set Nocount Off
  131381.  
  131382.  
  131383.  
  131384.  
  131385. Go
  131386. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_vrat_poart]'))
  131387. drop procedure [dbo].[sp_prod_vrat_poart]
  131388.  
  131389. Go
  131390. CREATE      PROCEDURE sp_Prod_Vrat_PoArt
  131391.     @KoiOE Varchar(500) = Null,
  131392.     @Pod1 Smallint = Null,
  131393.     @Pod2 Smallint = Null,
  131394.     @Pod3 Smallint = Null,
  131395.     @Pod4 Smallint = Null,
  131396.     @Pod5 Smallint = Null,
  131397.     @Sifra_Tip Smallint = Null,
  131398.     @Datum_Od Smalldatetime = Null,
  131399.     @Datum_Do Smalldatetime = Null,
  131400.     @Sifra_Brand Smallint = Null,
  131401.     @Sifra_Art_Od Varchar(20) = Null,
  131402.     @Sifra_Art_Do Varchar(20) = Null,
  131403.     @Sifra_Kup_Od Char(6) = Null,
  131404.     @Sifra_Kup_Do Char(6) = Null,
  131405.     @Podred Char(1) = Null,
  131406.     @Kto Char(6) = null,
  131407.     @Sifra_Gr Char(3) = Null,
  131408.     @Sifra_Podg Char(6) = Null,
  131409.     @Lokacija Varchar(10) = Null,
  131410.     @TipKup Char(11) = Null,
  131411.     @Koi_Gradovi varchar(200)=Null,
  131412.     @Koi_Regioni varchar(200) = Null,
  131413.     @TipDokProd    varchar(200) = Null,
  131414.     @DaliPoKomint    char(1) = 'N',
  131415.     @Sifra_Obj    smallint = Null
  131416. AS
  131417.     Set Nocount On
  131418.     Declare @SSQL Varchar(4000)
  131419.     Declare @SSQL1 Varchar(4000)
  131420.     Declare @SSQL2 Varchar(4000)
  131421.     Declare @SSQLDat Varchar(4000)
  131422.     Declare @SSQLDatSled Varchar(4000)
  131423.     Set @SSQLDat = ' '
  131424.     Set @SSQLDatSled = ' '
  131425.     If @Sifra_Kup_Od Is Null and @Sifra_Kup_Do Is Null
  131426.         Set @Sifra_kup_Od = '000001'
  131427.     Create Table #Tab1
  131428.     (
  131429.     Sifra_Kup    char(6),
  131430.     Sifra_Obj    smallint,
  131431.     Sifra_Art    varchar(20),
  131432.     KolProd        decimal(18,6),
  131433.     KolVrat        decimal(18,6),
  131434.     VredProd    decimal(18,6),
  131435.     VredVrat    decimal(18,6)
  131436.     )
  131437.     SET @SSQL = 'SELECT DISTINCT D.Sifra_Kup, D.Sifra_Obj, Substring(S.Sifra_Art,4,3) 
  131438.             FROM Stavr S 
  131439.             INNER JOIN Dokr D ON S.DokrID = D.DokrID
  131440.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art '
  131441.     If @Sifra_Gr Is Not Null
  131442.         Set @SSQL = @SSQL + ' Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131443.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  131444.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131445.         Set @SSQL= @SSQL + ' Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  131446.                     Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131447.     Set @SSQL = @SSQL + 'Where D.Sifra_Za=1 
  131448.                 And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999'' '
  131449.     If @Sifra_Brand Is Not NULL
  131450.         Set @SSQL = @SSQL +  ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  131451.     If @Lokacija Is Not NULL
  131452.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  131453.     If @Kto Is Not NULL
  131454.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  131455.     If @Sifra_Podg Is Not NULL
  131456.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  131457.     If @Sifra_Gr Is Not NULL
  131458.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  131459.     If @Datum_Od Is Not NULL
  131460.         Set @SSQL = @SSQL + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131461.     If @Datum_Do Is Not NULL
  131462.         Set @SSQL = @SSQL + ' And S.Datum_Dok <=''' + Cast(DateAdd(day, 1, @Datum_Do) As Varchar(35)) + ''' '
  131463.     If @Pod1 Is Not NULL
  131464.            Begin
  131465.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  131466.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  131467.            End
  131468.     If @Pod2 Is Not NULL
  131469.            Begin
  131470.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  131471.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  131472.            End
  131473.     If @Pod3 Is Not NULL
  131474.            Begin
  131475.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  131476.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  131477.            End
  131478.     If @Pod4 Is Not NULL
  131479.            Begin
  131480.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  131481.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  131482.            End
  131483.     If @Pod5 Is Not NULL
  131484.            Begin
  131485.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  131486.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  131487.            End
  131488.     If @Sifra_Tip Is Not NULL
  131489.         Set @SSQL = @SSQL + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  131490.     If @Sifra_Kup_Od Is Not NULL
  131491.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  131492.     If @Sifra_Kup_Do Is Not NULL
  131493.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  131494.     If @Sifra_Obj Is Not NULL
  131495.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  131496.     If @Sifra_Art_Od Is Not NULL
  131497.         Set @SSQL = @SSQL + ' And substring(S.Sifra_Art, 4, 3)>=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  131498.     If @Sifra_Art_Do Is Not NULL
  131499.         Set @SSQL = @SSQL + ' And substring(S.Sifra_Art, 4, 3)<=''' + substring(@Sifra_Art_Do, 4, 3) + ''' '
  131500.     If @TipKup Is Not NULL
  131501.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '    If @KoiOE Is Not NULL
  131502.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131503.     If @TipDokProd Is Not NULL
  131504.              Set @SSQL  = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  131505.     If @Koi_Gradovi Is Not NULL    
  131506.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  131507.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  131508.     If @Koi_Regioni Is Not NULL    
  131509.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  131510.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  131511. print @SSQL
  131512.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, Sifra_Art) EXEC(@SSQL)
  131513.     CREATE TABLE #Pom1
  131514. (    Sifra_Kup    char(6),
  131515.     Sifra_Obj    smallint,
  131516.     Sifra_Art    varchar(20),
  131517.     Kolic        decimal(18,6),
  131518.     Vred        decimal(18,6)
  131519. )
  131520.     SET @SSQL = 'SELECT D.Sifra_Kup, D.Sifra_Obj, Substring(S.Sifra_Art,4,3), Sum(S.Kolic), 
  131521.             SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) 
  131522.         FROM Stavr S 
  131523.         INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  131524.         WHERE D.Sifra_Kup IN (SELECT DISTINCT Sifra_Kup FROM #Tab1) 
  131525.         AND Substring(S.Sifra_Art,4,3) IN (SELECT DISTINCT RTrim(Sifra_Art) FROM #Tab1) 
  131526.         And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999'' '   -- dodadeno 05.02.2008 gk za zito leb (vo prodavba da ne vleguvaat lodni i korpi i sl.)
  131527.     If @KoiOE Is Not NULL
  131528.              Set @SSQL  = @SSQL+ ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131529.     If @TipDokProd Is Not NULL
  131530.              Set @SSQL  = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  131531.     If @Datum_Od Is Not NULL
  131532.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131533.     If @Datum_Do Is Not NULL
  131534.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  131535.     Set @SSQL2 =  ' Group By D.Sifra_Kup, D.Sifra_Obj, Substring(S.Sifra_Art,4,3) '
  131536.     INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + ' AND S.Kolic > 0 and D.sifra_za = 1 ' + @SSQL2)
  131537. --select * from #pom1    
  131538.     Update #Pom1
  131539.     Set Sifra_obj = 0 Where sifra_Obj is Null
  131540.     Update #Tab1
  131541.     Set Sifra_obj = 0 Where sifra_Obj is Null
  131542.     Update #Pom1
  131543.     Set Sifra_Kup = 0 Where sifra_Kup is Null
  131544.     Update #Tab1
  131545.     Set Sifra_kup = 0 Where sifra_kup is Null
  131546.     UPDATE #Tab1 
  131547.     SET #Tab1.KolProd = #Pom1.Kolic, #Tab1.VredProd = #Pom1.Vred
  131548.     FROM #Pom1
  131549.     WHERE #Pom1.Sifra_Kup = #Tab1.Sifra_Kup AND #Pom1.Sifra_Obj = #Tab1.Sifra_Obj AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131550.     Set @SSQLDat = ' '
  131551.     If @Datum_Od Is Not NULL
  131552.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(DateAdd(day, 1, @Datum_Od) As Varchar(35)) + ''' '
  131553.     If @Datum_Do Is Not NULL
  131554.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(DateAdd(day, 1, @Datum_Do) As Varchar(35)) + ''' '
  131555.     DELETE FROM #Pom1
  131556.     INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + ' AND S.Kolic < 0' + @SSQL2)
  131557. --select * from #pom1    
  131558.     Update #Pom1
  131559.     Set Sifra_obj = 0 Where sifra_Obj is Null
  131560.     Update #Pom1
  131561.     Set Sifra_kup = 0 Where sifra_kup is Null
  131562.     UPDATE #Tab1 
  131563.     SET KolVrat = #Pom1.Kolic, VredVrat = #Pom1.Vred 
  131564.     FROM #Pom1
  131565.     WHERE #Pom1.Sifra_Kup = #Tab1.Sifra_Kup AND #Pom1.Sifra_Obj = #Tab1.Sifra_Obj AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131566. --select * from #Tab1    
  131567.     If @DaliPoKomint = 'D'
  131568.     Begin
  131569.         Set @SSQL= 'SELECT T.*, K.ImeKup, O.ImeObj, A.ImeArt
  131570.             From #Tab1 T 
  131571.             INNER JOIN KatArt A ON ' + '000' + '+rtrim(T.Sifra_Art)  = A.Sifra_Art
  131572.             LEFT OUTER JOIN Komint K on K.Sifra_Kup = T.Sifra_Kup
  131573.             LEFT OUTER JOIN KObjekti O on O.Sifra_Kup = T.Sifra_Kup  AND O.Sifra_Obj = T.Sifra_Obj '
  131574.         If @Podred = 'S'
  131575.             Set @SSQL=@SSQL + ' Order By T.Sifra_art '
  131576.         If @Podred = 'A'
  131577.             Set @SSQL=@SSQL + ' Order By A.ImeArt '
  131578.         If @Podred = 'V'
  131579.             Set @SSQL=@SSQL + ' Order By T.VredProd desc '
  131580.     End
  131581.     If @DaliPoKomint = 'N'
  131582.     Begin
  131583.         Set @SSQL= 'SELECT 0 as Sifra_Kup, 0 as Sifra_Obj, T.Sifra_Art, Sum(T.KolProd) KolProd, sum(T.KolVrat) KolVrat, sum(T.VredProd) VredProd,
  131584.                  sum(T.VredVrat) VredVrat, 0 as ImeKup, 0 as ImeObj,  A.ImeArt
  131585.             From #Tab1 T 
  131586.             INNER JOIN KatArt A ON ' + '000' +'+rtrim(T.Sifra_Art)  = A.Sifra_Art
  131587.             LEFT OUTER JOIN Komint K on K.Sifra_Kup = T.Sifra_Kup
  131588.             LEFT OUTER JOIN KObjekti O on O.Sifra_Kup = T.Sifra_Kup  AND O.Sifra_Obj = T.Sifra_Obj
  131589.             Group By T.Sifra_Art, A.ImeArt '
  131590.         If @Podred = 'S'
  131591.             Set @SSQL=@SSQL + ' Order By T.Sifra_art '
  131592.         If @Podred = 'A'
  131593.             Set @SSQL=@SSQL + ' Order By A.ImeArt '
  131594.         If @Podred = 'V'
  131595.             Set @SSQL=@SSQL + ' Order By sum(T.VredProd) desc '
  131596.     End
  131597.     Exec(@SSQL)
  131598.     Set Nocount Off
  131599.  
  131600.  
  131601. Go
  131602. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_vrat_poart_pooe]'))
  131603. drop procedure [dbo].[sp_prod_vrat_poart_pooe]
  131604.  
  131605. Go
  131606.  
  131607.  
  131608. CREATE         PROCEDURE [dbo].[sp_Prod_Vrat_PoArt_PoOe]
  131609.     @KoiOE Varchar(500) = Null,
  131610.     @Datum_Od Smalldatetime = Null,
  131611.     @Datum_Do Smalldatetime = Null,
  131612.     @Sifra_Brand Smallint = Null,
  131613.     @Sifra_Art_Od Varchar(20) = Null,
  131614.     @Sifra_Art_Do Varchar(20) = Null,
  131615.     @Podred Char(1) = Null,
  131616.     @Kto Char(6) = null,
  131617.     @Sifra_Gr Char(3) = Null,
  131618.     @Sifra_Podg Char(6) = Null,
  131619.     @Lokacija Varchar(10) = Null,
  131620.     @Oe_Mag        varchar(50)='1,101,110,115,660'
  131621. AS
  131622.     Set Nocount On
  131623.     Declare @SSQL Varchar(4000)
  131624.     Declare @SSQL1 Varchar(4000)
  131625.     Declare @SSQL2 Varchar(4000)
  131626.     Declare @SSQLDat Varchar(4000)
  131627.     Declare @SSQLDatSled Varchar(4000)
  131628.     Set @SSQLDat = ' '
  131629.     Set @SSQLDatSled = ' '
  131630.  
  131631.     Create Table #Tab1
  131632.     (
  131633.     Sifra_Oe    smallint,
  131634.     Sifra_Art    varchar(20),
  131635.     KolPriem    decimal(18,6),
  131636.     VredPriem    decimal(18,6),
  131637.     KolVrat        decimal(18,6),
  131638.     VredVrat    decimal(18,6),
  131639.     KolPriemP    decimal(18,6),
  131640.     VredPriemP    decimal(18,6),
  131641.     KolDadP     decimal(18,6),
  131642.     VredVratP    decimal(18,6),
  131643.     KolDrIzl    decimal(18,6),
  131644.     VredDrIzl   decimal(18,6),
  131645.     KolProd        decimal(18,6),
  131646.     VredProd    decimal(18,6),
  131647.     ProcVrat    decimal(18,6)
  131648.     )
  131649.     SET @SSQL = 'SELECT DISTINCT D.Sifra_Oe, S.Sifra_Art, 0,0,0,0,0,0,0,0,0,0,0,0,0 FROM Stavr S 
  131650.             INNER JOIN Dokr D ON S.DokrID = D.DokrID
  131651.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art '
  131652.     If @Sifra_Gr Is Not Null
  131653.         Set @SSQL = @SSQL + ' Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131654.     --Set @SSQL = @SSQL + 'Where D.Sifra_Za=3 And D.VlIzl=''V'' And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999''
  131655.     Set @SSQL = @SSQL + 'Where 1=1 '
  131656.     If @Sifra_Brand Is Not NULL
  131657.         Set @SSQL = @SSQL + ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  131658.     If @Lokacija Is Not NULL
  131659.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  131660.     If @Kto Is Not NULL
  131661.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  131662.     If @Sifra_Podg Is Not NULL
  131663.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  131664.     If @Sifra_Gr Is Not NULL
  131665.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  131666.     If @Datum_Od Is Not NULL
  131667.         Set @SSQL = @SSQL + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131668.     If @Datum_Do Is Not NULL
  131669.         Set @SSQL = @SSQL + ' And S.Datum_Dok <=''' + Cast(DateAdd(day, 1, @Datum_Do) As Varchar(35)) + ''' '
  131670.     If @Sifra_Art_Od Is Not NULL
  131671.         --Set @SSQL = @SSQL + ' And substring(S.Sifra_Art, 4, 3)>=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  131672.         Set @SSQL = @SSQL + ' And S.Sifra_Art >=''' + @Sifra_Art_Od + '''  '    
  131673.     If @Sifra_Art_Do Is Not NULL
  131674.         --Set @SSQL = @SSQL + ' And substring(S.Sifra_Art, 4, 3)<=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  131675.         Set @SSQL = @SSQL + ' And S.Sifra_Art <=''' + @Sifra_Art_Do + '''  '
  131676.                 
  131677.     If @KoiOE Is Not NULL
  131678.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131679. --print @SSQL
  131680.     INSERT INTO #Tab1  EXEC(@SSQL)  --(Sifra_Oe, Sifra_Art)
  131681.  
  131682.     CREATE TABLE #Pom1
  131683. (    Sifra_Oe    smallint,
  131684.     Sifra_Art    varchar(20),
  131685.     Kolic        decimal(18,6),
  131686.     Vred        decimal(18,6)
  131687. )    
  131688.     --primeno vo magacin
  131689.     SET @SSQL = 'SELECT D.Sifra_Oe, S.Sifra_Art , Sum(S.Kolic), 
  131690.             SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) 
  131691.         FROM Stavr S 
  131692.         INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  131693.         INNER Join #Tab1 T ON T.Sifra_Oe = D.Sifra_Oe and T.Sifra_art=S.Sifra_art
  131694.          Where (D.VlIzl=''V'' AND ((D.Sifra_Za=3 And D.Sifra_Prim IN ('+@OE_Mag+')) Or D.Sifra_Za=2) ) '
  131695.          --AND Substring(S.Sifra_Art,4,3) IN (SELECT DISTINCT RTrim(Sifra_Art) FROM #Tab1) 
  131696.         --And D.Sifra_Za = ''3'' And D.VlIzl=''V'' '    -- dodadeno 05.02.2008 gk za zito leb (vo prodavba da ne vleguvaat lodni i korpi i sl.)
  131697.     If @KoiOE Is Not NULL
  131698.              Set @SSQL  = @SSQL+ ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131699.     If @Datum_Od Is Not NULL
  131700.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131701.     If @Datum_Do Is Not NULL
  131702.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' ' 
  131703.     Set @SSQL2 =  ' Group By D.Sifra_Oe, S.Sifra_Art '
  131704.  
  131705.     INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat+' AND S.Kolic > 0 ' + @SSQL2)
  131706.     
  131707.  
  131708.     UPDATE #Tab1 
  131709.     SET #Tab1.KolPriem = #Pom1.Kolic, #Tab1.VredPriem = #Pom1.Vred
  131710.     FROM #Pom1
  131711.     WHERE #Pom1.Sifra_Oe = #Tab1.Sifra_Oe AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131712.  
  131713.     --Vrateno vo magacin  
  131714.     DELETE FROM #Pom1
  131715.     
  131716.     INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + ' AND S.Kolic < 0' + @SSQL2)
  131717.     
  131718.     UPDATE #Tab1 
  131719.     SET KolVrat = #Pom1.Kolic, VredVrat = #Pom1.Vred 
  131720.     FROM #Pom1
  131721.     WHERE #Pom1.Sifra_Oe = #Tab1.Sifra_Oe AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131722.     
  131723.  
  131724.     --Primeno od drugi prodavnici
  131725.     SET @SSQLDat = ' '
  131726.     SET @SSQL = 'SELECT D.Sifra_Oe, S.Sifra_Art , Sum(S.Kolic), 
  131727.             SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) 
  131728.         FROM Stavr S 
  131729.         INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  131730.         INNER Join #Tab1 T ON T.Sifra_Oe = D.Sifra_Oe and T.Sifra_art=S.Sifra_art
  131731.          Where D.VlIzl=''V'' AND D.Sifra_Za=3 And D.Sifra_Prim NOT IN ('+@OE_Mag+') '
  131732.     If @KoiOE Is Not NULL
  131733.              Set @SSQL  = @SSQL+ ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131734.     If @Datum_Od Is Not NULL
  131735.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131736.     If @Datum_Do Is Not NULL
  131737.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' ' 
  131738.     Set @SSQL2 =  ' Group By D.Sifra_Oe, S.Sifra_Art '
  131739.  
  131740.     DELETE FROM #Pom1
  131741.     --INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat+' AND S.Kolic > 0 ' + @SSQL2) neka odi +-vo ista kol.
  131742.     INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + @SSQL2)
  131743.  
  131744.     UPDATE #Tab1 
  131745.     SET #Tab1.KolPriemP = #Pom1.Kolic, #Tab1.VredPriemP = #Pom1.Vred
  131746.     FROM #Pom1
  131747.     WHERE #Pom1.Sifra_Oe = #Tab1.Sifra_Oe AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131748.  
  131749.     --Dadeno od drugi prodavnici
  131750.     SET @SSQL = 'SELECT D.Sifra_Oe, S.Sifra_Art , Sum(S.Kolic), 
  131751.             SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) 
  131752.         FROM Stavr S 
  131753.         INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  131754.         INNER Join #Tab1 T ON T.Sifra_Oe = D.Sifra_Oe and T.Sifra_art=S.Sifra_art
  131755.          Where D.VlIzl=''I'' AND D.Sifra_Za=3 And D.Sifra_Prim NOT IN ('+@OE_Mag+') '
  131756.     If @KoiOE Is Not NULL
  131757.              Set @SSQL  = @SSQL+ ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131758.     If @Datum_Od Is Not NULL
  131759.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131760.     If @Datum_Do Is Not NULL
  131761.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' ' 
  131762.     Set @SSQL2 =  ' Group By D.Sifra_Oe, S.Sifra_Art '
  131763.  
  131764.     DELETE FROM #Pom1
  131765.      INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + @SSQL2)
  131766.      
  131767.     UPDATE #Tab1 
  131768.     SET #Tab1.KolDadP  = #Pom1.Kolic, #Tab1.VredVratP = #Pom1.Vred
  131769.     FROM #Pom1
  131770.     WHERE #Pom1.Sifra_Oe = #Tab1.Sifra_Oe AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131771.     
  131772.     --drugi izlezi 
  131773.     SET @SSQL = 'SELECT D.Sifra_Oe, S.Sifra_Art , Sum(S.Kolic), 
  131774.             SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) 
  131775.         FROM Stavr S 
  131776.         INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  131777.         INNER JOIN TipDok TipD ON D.Sifra_Dok= TipD.Sifra_Dok
  131778.         INNER Join #Tab1 T ON T.Sifra_Oe = D.Sifra_Oe and T.Sifra_art=S.Sifra_art
  131779.          Where (D.VlIzl=''I'' AND D.Sifra_Za=1 And TipD.AnalKupDob <> ''D'' AND D.Sifra_Dok NOT IN (100,101,73,74)) '
  131780.     If @KoiOE Is Not NULL
  131781.              Set @SSQL  = @SSQL+ ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131782.     If @Datum_Od Is Not NULL
  131783.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131784.     If @Datum_Do Is Not NULL
  131785.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' ' 
  131786.     Set @SSQL2 =  ' Group By D.Sifra_Oe, S.Sifra_Art '
  131787.  
  131788.     DELETE FROM #Pom1
  131789.      INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + @SSQL2)
  131790.      
  131791.     UPDATE #Tab1 
  131792.     SET #Tab1.KolDrIzl   = #Pom1.Kolic, #Tab1.VredDrIzl = #Pom1.Vred
  131793.     FROM #Pom1
  131794.     WHERE #Pom1.Sifra_Oe = #Tab1.Sifra_Oe AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131795.     
  131796.     
  131797.     --Prodazba
  131798.     SET @SSQLDat = ' '
  131799.     SET @SSQL = 'SELECT D.Sifra_Oe, S.Sifra_Art , Sum(S.Kolic), 
  131800.             SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) 
  131801.         FROM Stavr S 
  131802.         INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  131803.         INNER JOIN TipDok TipD ON D.Sifra_Dok= TipD.Sifra_Dok
  131804.         INNER Join #Tab1 T ON T.Sifra_Oe = D.Sifra_Oe and T.Sifra_art=S.Sifra_art
  131805.          Where ((D.VlIzl=''I'' AND D.Sifra_Za=1 And TipD.AnalKupDob = ''D'') OR D.Sifra_Dok IN (100,101,73,74)) '
  131806.     If @KoiOE Is Not NULL
  131807.              Set @SSQL  = @SSQL+ ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131808.     If @Datum_Od Is Not NULL
  131809.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131810.     If @Datum_Do Is Not NULL
  131811.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' ' 
  131812.     Set @SSQL2 =  ' Group By D.Sifra_Oe, S.Sifra_Art '
  131813.     
  131814.     DELETE FROM #Pom1
  131815.     --INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + ' AND S.Kolic > 0' + @SSQL2)
  131816.     INSERT INTO #Pom1 EXEC(@SSQL+ @SSQLDat + @SSQL2)
  131817.     
  131818.     UPDATE #Tab1 
  131819.     SET #Tab1.KolProd   = #Pom1.Kolic, #Tab1.VredProd = #Pom1.Vred
  131820.     FROM #Pom1
  131821.     WHERE #Pom1.Sifra_Oe = #Tab1.Sifra_Oe AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  131822.     
  131823.     --%vrateno
  131824.     Create Table #Tab2
  131825.     (Sifra_Oe    smallint,
  131826.     Sifra_Art    varchar(20),
  131827.     KolPriem    decimal(18,6),
  131828.     VredPriem    decimal(18,6),
  131829.     KolVrat        decimal(18,6),
  131830.     VredVrat    decimal(18,6),
  131831.     KolPriemP    decimal(18,6),
  131832.     VredPriemP    decimal(18,6),
  131833.     KolDadP     decimal(18,6),
  131834.     VredVratP    decimal(18,6),
  131835.     KolDrIzl    decimal(18,6),
  131836.     VredDrIzl       decimal(18,6),
  131837.     KolProd        decimal(18,6),
  131838.     VredProd        decimal(18,6),
  131839.     ProcVrat    decimal(18,6)    )
  131840.      
  131841.  
  131842.     INSERT INTO #Tab2 
  131843.     SELECT T.Sifra_Oe, '000'+Substring(T.Sifra_Art, 4,3), Sum(T.KolPriem) KolPriem, 0, sum(T.KolVrat) KolVrat, 0,
  131844.                 sum(T.KolPriemP) KolPriemP, 0,sum(T.KolDadP) KolDadP, 0,sum(T.KolDrIzl) KolDrIzl, 0,sum(T.KolProd) KolProd, 0, 0
  131845.     FROM #Tab1 T WHERE T.Sifra_Art<='001999'
  131846.     GROUP BY T.Sifra_Oe, Substring(T.Sifra_Art, 4,3),T.Sifra_Art--,T.KolPriem,T.KolVrat,T.KolPriemP,T.KolDadP,T.KolDrIzl,T.KolProd
  131847.  
  131848.     INSERT INTO #Tab2 
  131849.     SELECT T.Sifra_Oe,  T.Sifra_Art, Sum(T.KolPriem) KolPriem, 0, sum(T.KolVrat) KolVrat, 0,
  131850.                 sum(T.KolPriemP) KolPriemP, 0,sum(T.KolDadP) KolDadP, 0,sum(T.KolDrIzl) KolDrIzl, 0,sum(T.KolProd) KolProd, 0, 0
  131851.     FROM #Tab1 T WHERE T.Sifra_Art>'001999'
  131852.     GROUP BY T.Sifra_Oe,  T.Sifra_Art-- ,T.KolPriem,T.KolVrat,T.KolPriemP,T.KolDadP,T.KolDrIzl,T.KolProd
  131853.     UPDATE #Tab2 SET ProcVrat = Abs(round(KolVrat*100/ (KolPriem+KolPriemP),2)) WHERE KolPriem+KolPriemP<>0
  131854.  
  131855.     
  131856.     Set @SSQL= 'SELECT T.Sifra_Oe, O.ImeOrg, T.Sifra_Art, A.ImeArt, T.KolPriem, T.KolVrat , 
  131857.                 T.KolPriemP, T.KolDadP, T.KolDrIzl, T.KolProd,T.ProcVrat 
  131858.             From #Tab2 T 
  131859.             INNER JOIN KatArt A ON T.Sifra_Art  = A.Sifra_Art
  131860.             INNER JOIN Orged O On O.Sifra_Oe=T.Sifra_Oe
  131861.             WHERE T.Sifra_Art<''001000'' OR T.Sifra_Art>''001999'' ' --filter za artikli izmegu 000001-000999 i  > 002000
  131862.     
  131863.     --Set @SSQL = @SSQL + ' Group By T.Sifra_Oe, O.ImeOrg, T.Sifra_Art, A.ImeArt, T.ProcVrat  '
  131864.     
  131865.         If @Podred = 'S'
  131866.             Set @SSQL=@SSQL + ' Order By T.Sifra_art '
  131867.         If @Podred = 'A'
  131868.             Set @SSQL=@SSQL + ' Order By A.ImeArt '
  131869.         If @Podred = 'V'
  131870.             Set @SSQL=@SSQL + ' Order By T.ProcVrat desc '
  131871.     print @SSQL
  131872.     Exec(@SSQL)
  131873.     Set Nocount Off
  131874.  
  131875.  
  131876.  
  131877.  
  131878.  
  131879.  
  131880.  
  131881. Go
  131882. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_vrat_poart_zv]'))
  131883. drop procedure [dbo].[sp_prod_vrat_poart_zv]
  131884.  
  131885. Go
  131886. CREATE      PROCEDURE sp_Prod_Vrat_PoArt_ZV
  131887.     @KoiOE Varchar(500) = Null,
  131888.     @Pod1 Smallint = Null,
  131889.     @Pod2 Smallint = Null,
  131890.     @Pod3 Smallint = Null,
  131891.     @Pod4 Smallint = Null,
  131892.     @Pod5 Smallint = Null,
  131893.     @Sifra_Tip Smallint = Null,
  131894.     @Datum_Od Smalldatetime = Null,
  131895.     @Datum_Do Smalldatetime = Null,
  131896.     @Sifra_Brand Smallint = Null,
  131897.     @Sifra_Art_Od Varchar(20) = Null,
  131898.     @Sifra_Art_Do Varchar(20) = Null,
  131899.     @Sifra_Kup_Od Char(6) = Null,
  131900.     @Sifra_Kup_Do Char(6) = Null,
  131901.     @Podred Char(1) = Null,
  131902.     @Kto Char(6) = null,
  131903.     @Sifra_Gr Char(3) = Null,
  131904.     @Sifra_Podg Char(6) = Null,
  131905.     @Lokacija Varchar(10) = Null,
  131906.     @TipKup Char(11) = Null,
  131907.     @Koi_Gradovi varchar(200)=Null,
  131908.     @Koi_Regioni varchar(200) = Null,
  131909.     @TipDokProd    varchar(200) = Null,
  131910.     @DaliPoKomint    char(1) = 'N',
  131911.     @Sifra_Obj    smallint = Null
  131912. AS
  131913.     Set Nocount On
  131914.     Declare @SSQL Varchar(4000)
  131915.     Declare @SSQL1 Varchar(4000)
  131916.     Declare @SSQL2 Varchar(4000)
  131917.     If @Sifra_Kup_Od Is Null and @Sifra_Kup_Do Is Null
  131918.         Set @Sifra_kup_Od = '000001'
  131919.     Create Table #Tab1
  131920.     (
  131921.     Sifra_Kup    char(6),
  131922.     Sifra_Obj    smallint,
  131923.     Sifra_Art    varchar(20),
  131924.     KolProd        decimal(18,6),
  131925.     KolVrat        decimal(18,6),
  131926.     VredProd    decimal(18,6),
  131927.     VredVrat    decimal(18,6)
  131928.     )
  131929.     SET @SSQL = 'SELECT DISTINCT D.Sifra_Kup, D.Sifra_Obj, 
  131930.                 (Case When Len(S.Sifra_Art)<7 Then S.Sifra_Art Else Substring(S.Sifra_Art, 2, 6) End)
  131931.             FROM Stavr S 
  131932.             INNER JOIN Dokr D ON S.DokrID = D.DokrID
  131933.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art '
  131934.     If @Sifra_Gr Is Not Null
  131935.         Set @SSQL = @SSQL + ' Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  131936.     If (@TipKup Is Not Null) Or (@Pod1 Is Not Null) Or (@Pod2 Is Not Null) Or (@Koi_Gradovi Is Not Null) Or (@Pod3 Is Not Null) 
  131937.         Or (@Pod4 Is Not Null) Or (@Pod5 Is Not Null) Or (@Sifra_Tip Is Not Null)  Or (@Koi_Regioni Is Not Null)
  131938.         Set @SSQL= @SSQL + ' Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  131939.                     Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  131940.     Set @SSQL = @SSQL + 'Where D.Sifra_Za=1 '
  131941.     If @Sifra_Brand Is Not NULL
  131942.         Set @SSQL = @SSQL +  ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  131943.     If @Lokacija Is Not NULL
  131944.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  131945.     If @Kto Is Not NULL
  131946.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  131947.     If @Sifra_Podg Is Not NULL
  131948.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  131949.     If @Sifra_Gr Is Not NULL
  131950.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  131951.     If @Datum_Od Is Not NULL
  131952.         Set @SSQL = @SSQL + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  131953.     If @Datum_Do Is Not NULL
  131954.         Set @SSQL = @SSQL + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  131955.     If @Pod1 Is Not NULL
  131956.            Begin
  131957.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  131958.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  131959.            End
  131960.     If @Pod2 Is Not NULL
  131961.            Begin
  131962.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  131963.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  131964.            End
  131965.     If @Pod3 Is Not NULL
  131966.            Begin
  131967.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  131968.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  131969.            End
  131970.     If @Pod4 Is Not NULL
  131971.            Begin
  131972.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  131973.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  131974.            End
  131975.     If @Pod5 Is Not NULL
  131976.            Begin
  131977.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  131978.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  131979.            End
  131980.     If @Sifra_Tip Is Not NULL
  131981.         Set @SSQL = @SSQL + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  131982.     If @Sifra_Kup_Od Is Not NULL
  131983.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  131984.     If @Sifra_Kup_Do Is Not NULL
  131985.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  131986.     If @Sifra_Obj Is Not NULL
  131987.         Set @SSQL = @SSQL + ' And D.Sifra_Obj = ' + Cast(@Sifra_Obj As Varchar(6)) + ' '
  131988.     If @Sifra_Art_Od Is Not NULL
  131989.         Set @SSQL = @SSQL + ' And (Case When Len(S.Sifra_Art)<7 Then S.Sifra_Art Else substring(S.Sifra_Art, 2, 6)>=''' + @Sifra_Art_Od + ''' '
  131990.     If @Sifra_Art_Do Is Not NULL
  131991.         Set @SSQL = @SSQL + ' And (Case When Len(S.Sifra_Art)<7 Then S.Sifra_Art Else substring(S.Sifra_Art, 2, 6)<=''' + @Sifra_Art_Do + ''' '
  131992.     If @TipKup Is Not NULL
  131993.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '    If @KoiOE Is Not NULL
  131994.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  131995.     If @TipDokProd Is Not NULL
  131996.              Set @SSQL  = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  131997.     If @Koi_Gradovi Is Not NULL    
  131998.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  131999.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  132000.     If @Koi_Regioni Is Not NULL    
  132001.         Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  132002.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  132003. print @SSQL
  132004.     INSERT INTO #Tab1 (Sifra_Kup, Sifra_Obj, Sifra_Art) EXEC(@SSQL)
  132005.     CREATE TABLE #Pom1
  132006. (    Sifra_Kup    char(6),
  132007.     Sifra_Obj    smallint,
  132008.     Sifra_Art    varchar(20),
  132009.     Kolic        decimal(18,6),
  132010.     Vred        decimal(18,6)
  132011. )
  132012.     SET @SSQL = 'SELECT D.Sifra_Kup, D.Sifra_Obj, (Case When Len(S.Sifra_Art)<7 Then S.Sifra_Art Else Substring(S.Sifra_Art, 2, 6) End), Sum(S.Kolic), 
  132013.     SUM(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, ''D'')) 
  132014.     FROM Stavr S 
  132015.     INNER JOIN Dokr D ON S.DokrID = D.DokrID 
  132016.     WHERE D.Sifra_Kup IN (SELECT DISTINCT Sifra_Kup FROM #Tab1) 
  132017.     AND (Case When Len(S.Sifra_Art)<7 Then S.Sifra_Art Else Substring(S.Sifra_Art, 2, 6) End) IN (SELECT DISTINCT RTrim(Sifra_Art) FROM #Tab1) '
  132018.     If @Datum_Od Is Not NULL
  132019.         Set @SSQL = @SSQL + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  132020.     If @Datum_Do Is Not NULL
  132021.         Set @SSQL = @SSQL + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  132022.     If @KoiOE Is Not NULL
  132023.              Set @SSQL  = @SSQL+ ' And S.Sifra_OE IN (' + @KoiOE + ') '
  132024.     If @TipDokProd Is Not NULL
  132025.              Set @SSQL  = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  132026.     Set @SSQL2 =  ' Group By D.Sifra_Kup, D.Sifra_Obj, (Case When Len(S.Sifra_Art)<7 Then S.Sifra_Art Else Substring(S.Sifra_Art, 2, 6) End) '
  132027.     INSERT INTO #Pom1 EXEC(@SSQL+ ' AND S.Kolic > 0 and D.sifra_za = 1 ' + @SSQL2)
  132028.     Update #Pom1
  132029.     Set Sifra_obj = 0 Where sifra_Obj is Null
  132030.     Update #Tab1
  132031.     Set Sifra_obj = 0 Where sifra_Obj is Null
  132032.     Update #Pom1
  132033.     Set Sifra_Kup = 0 Where sifra_Kup is Null
  132034.     Update #Tab1
  132035.     Set Sifra_kup = 0 Where sifra_kup is Null
  132036.     UPDATE #Tab1 SET #Tab1.KolProd = #Pom1.Kolic, #Tab1.VredProd = #Pom1.Vred
  132037.      FROM #Pom1
  132038.     WHERE #Pom1.Sifra_Kup = #Tab1.Sifra_Kup AND #Pom1.Sifra_Obj = #Tab1.Sifra_Obj AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  132039.     DELETE FROM #Pom1
  132040.     INSERT INTO #Pom1 EXEC(@SSQL+ ' AND S.Kolic < 0' + @SSQL2)
  132041.     Update #Pom1
  132042.     Set Sifra_obj = 0 Where sifra_Obj is Null
  132043.     Update #Pom1
  132044.     Set Sifra_kup = 0 Where sifra_kup is Null
  132045.     UPDATE #Tab1 SET KolVrat = #Pom1.Kolic, VredVrat = #Pom1.Vred FROM #Pom1
  132046.     WHERE #Pom1.Sifra_Kup = #Tab1.Sifra_Kup AND #Pom1.Sifra_Obj = #Tab1.Sifra_Obj AND #Pom1.Sifra_Art = #Tab1.Sifra_Art
  132047.     If @DaliPoKomint = 'D'
  132048.     Begin
  132049.     Set @SSQL= 'SELECT T.*, K.ImeKup, O.ImeObj, A.ImeArt
  132050.     From #Tab1 T 
  132051.     INNER JOIN KatArt A ON T.Sifra_Art = A.Sifra_Art
  132052.     LEFT OUTER JOIN Komint K on K.Sifra_Kup = T.Sifra_Kup
  132053.     LEFT OUTER JOIN KObjekti O on O.Sifra_Kup = T.Sifra_Kup  AND O.Sifra_Obj = T.Sifra_Obj '
  132054.     If @Podred = 'S'
  132055.         Set @SSQL=@SSQL + ' Order By T.Sifra_art '
  132056.     If @Podred = 'A'
  132057.         Set @SSQL=@SSQL + ' Order By A.ImeArt '
  132058.     If @Podred = 'V'
  132059.         Set @SSQL=@SSQL + ' Order By T.VredProd desc '
  132060.     End
  132061.     If @DaliPoKomint = 'N'
  132062.     Begin
  132063.     Set @SSQL= 'SELECT 0 as Sifra_Kup, 0 as Sifra_Obj, T.Sifra_Art, Sum(T.KolProd) KolProd, sum(T.KolVrat) KolVrat, sum(T.VredProd) VredProd,
  132064.          sum(T.VredVrat) VredVrat, 0 as ImeKup, 0 as ImeObj,  A.ImeArt
  132065.     From #Tab1 T 
  132066.     INNER JOIN KatArt A ON T.Sifra_Art  = A.Sifra_Art
  132067.     LEFT OUTER JOIN Komint K on K.Sifra_Kup = T.Sifra_Kup
  132068.     LEFT OUTER JOIN KObjekti O on O.Sifra_Kup = T.Sifra_Kup  AND O.Sifra_Obj = T.Sifra_Obj
  132069.     Group By T.Sifra_Art, A.ImeArt '
  132070.     If @Podred = 'S'
  132071.         Set @SSQL=@SSQL + ' Order By T.Sifra_art '
  132072.     If @Podred = 'A'
  132073.         Set @SSQL=@SSQL + ' Order By A.ImeArt '
  132074.     If @Podred = 'V'
  132075.         Set @SSQL=@SSQL + ' Order By sum(T.VredProd) desc '
  132076.     End
  132077.     Exec(@SSQL)
  132078.     Set Nocount Off
  132079.  
  132080.  
  132081. Go
  132082. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_vrat_pooe]'))
  132083. drop procedure [dbo].[sp_prod_vrat_pooe]
  132084.  
  132085. Go
  132086.  
  132087. CREATE      PROCEDURE [dbo].[sp_Prod_Vrat_PoOE]
  132088.     @KoiOE Varchar(200) = Null,
  132089.     @Datum_Od Smalldatetime = Null,
  132090.     @Datum_Do Smalldatetime = Null,
  132091.     @Sifra_Brand Smallint = Null,
  132092.     @Sifra_Art_Od Varchar(20) = Null,
  132093.     @Sifra_Art_Do Varchar(20) = Null,
  132094.     @Podred Char(1) = Null,
  132095.     @Kto Char(6) = Null,
  132096.     @Sifra_Gr Char(3) = Null,
  132097.     @Sifra_Podg Char(6) = Null,
  132098.     @Lokacija Varchar(10) = Null
  132099. AS
  132100.     Set Nocount On
  132101.     Declare @SSQL Varchar(4000)
  132102.     Declare @SSQL1 Varchar(4000)
  132103.     Declare @SSQL2 Varchar(4000)
  132104.     Declare @SSQL3 Varchar(4000)
  132105.     Declare @SSQLDat Varchar(4000)
  132106.     Declare @SSQLL Varchar(8000)
  132107.     
  132108.     Set @SSQLDat = ' '
  132109.     Create Table #Tab1
  132110.     (
  132111.     Sifra_Oe    smallint,
  132112.     VkProd        decimal(18,6),
  132113.     ProdLeb    decimal(18,6),
  132114.     VratLeb        decimal(18,6),
  132115.     ProdPec    decimal(18,6),
  132116.     VratPec        decimal(18,6),
  132117.     ProcVratLeb    decimal(6,2),
  132118.     ProcVratPec    decimal(6,2)
  132119.     )
  132120. --and S.Sifra_Podg In (101, 102) And D.Sifra_Za=1'
  132121.     Set @SSQL = 'Select D.Sifra_Oe, sum(S.kolic*S.DokCena) 
  132122.         From Stavr S
  132123.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  132124.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  132125.     If @Sifra_Gr Is Not Null
  132126.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132127.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg In (000101, 000102) And D.Sifra_Za=3 and D.VlIzl=''V'' And S.kolic > 0 '
  132128. --print @SSQL
  132129.     Set @SSQL1= ' And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999'' '
  132130.     If @Sifra_Brand Is Not NULL
  132131.         Set @SSQL1 = @SSQL1 +  ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  132132.     If @Lokacija Is Not NULL
  132133.         Set @SSQL1 = @SSQL1 + ' And K.Lokacija=''' + @Lokacija + ''' '
  132134.     If @Kto Is Not NULL
  132135.         Set @SSQL1 = @SSQL1 + ' And K.Kto=' + @Kto + ' '
  132136.     If @Sifra_Podg Is Not NULL
  132137.         Set @SSQL1 = @SSQL1 + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  132138.     If @Sifra_Gr Is Not NULL
  132139.         Set @SSQL1 = @SSQL1 + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  132140.         
  132141.     If @Datum_Od Is Not NULL
  132142.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  132143.     If @Datum_Do Is Not NULL
  132144.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  132145.         
  132146.     If @Sifra_Art_Od Is Not NULL
  132147.         Set @SSQL1 = @SSQL1 + ' And substring(S.Sifra_Art, 4, 3)>=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  132148.     If @Sifra_Art_Do Is Not NULL
  132149.         Set @SSQL1 = @SSQL1 + ' And substring(S.Sifra_Art, 4, 3)<=''' + substring(@Sifra_Art_Do, 4, 3) + ''' '
  132150.     If @KoiOE Is Not NULL
  132151.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  132152.     Set @SSQL2 =  ' Group By D.Sifra_Oe '
  132153. Print @SSQL1
  132154. ----------------------------------------------------------------- Prodazba Na Leb ----------------------------------------------------------------------------------------------------------------------------------
  132155.     INSERT INTO #Tab1 (Sifra_Oe, ProdLeb) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  132156. --print @SSQL + @SSQL1 + @SSQL2
  132157. --select * from #Tab1
  132158.     Set @SSQL = 'Select D.Sifra_Oe, sum(S.kolic*S.DokCena) 
  132159.          From Stavr S
  132160.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  132161.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  132162.     If @Sifra_Gr Is Not Null
  132163.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132164.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg In (000101, 000102) And D.Sifra_Za=3 and D.VlIzl=''V'' And S.kolic < 0 '
  132165.  
  132166.     Set @SSQLDat = ' '
  132167.     If @Datum_Od Is Not NULL
  132168.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od+1 As Varchar(35)) + ''' '
  132169.     If @Datum_Do Is Not NULL
  132170.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do+1 As Varchar(35)) + ''' '
  132171.  
  132172.     INSERT INTO #Tab1 (Sifra_Oe, VratLeb) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  132173. ----------------------------------------------------------------- Prodazba Na Peciva ----------------------------------------------------------------------------------------------------------------------------------
  132174.     Set @SSQL = ' '
  132175.     Set @SSQL = 'Select D.Sifra_Oe, Sum(S.kolic*S.DokCena) 
  132176.          From Stavr S
  132177.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  132178.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  132179.     If @Sifra_Gr Is Not Null
  132180.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132181.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg Not In (000101, 000102) And D.Sifra_Za=3 and D.VlIzl=''V'' And S.kolic > 0 '
  132182.  
  132183.     Set @SSQLDat = ' '
  132184.     If @Datum_Od Is Not NULL
  132185.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  132186.     If @Datum_Do Is Not NULL
  132187.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  132188.  
  132189.     INSERT INTO #Tab1 (Sifra_Oe, ProdPec) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  132190. --print @SSQL + @SSQL1 + @SSQL2
  132191. --select * from #Tab1
  132192.     Set @SSQL = ' '
  132193.     Set @SSQL = 'Select D.Sifra_Oe, Sum(S.kolic*S.DokCena) 
  132194.          From Stavr S
  132195.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  132196.         Inner Join Dokr D ON S.DokrID=D.DokrID  ' 
  132197.     If @Sifra_Gr Is Not Null
  132198.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132199.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' and K.Sifra_Podg Not In (000101, 000102) And D.Sifra_Za=3 and D.VlIzl=''V'' And S.kolic < 0 '
  132200.     
  132201.     Set @SSQLDat = ' '
  132202.     If @Datum_Od Is Not NULL
  132203.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od+1 As Varchar(35)) + ''' '
  132204.     If @Datum_Do Is Not NULL
  132205.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do+1 As Varchar(35)) + ''' '
  132206.  
  132207. --    INSERT INTO #Tab1 (Sifra_Oe, VratPec) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  132208. --------------------------------------------------------------------Vkupna Prodazba-------------------------------------------------------------------------------------------------------------------------------
  132209.     Set @SSQL = ' '
  132210.     Set @SSQL = 'Select D.Sifra_Oe, sum(S.kolic*S.DokCena)
  132211.          From Stavr S
  132212.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  132213.         Inner Join Dokr D ON S.DokrID=D.DokrID ' 
  132214.     If @Sifra_Gr Is Not Null
  132215.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132216.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' And D.Sifra_Za=3 And D.VlIzl=''V'' And S.Kolic>0 '
  132217.  
  132218.     Set @SSQLDat = ' '
  132219.     If @Datum_Od Is Not NULL
  132220.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  132221.     If @Datum_Do Is Not NULL
  132222.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  132223.  
  132224.     INSERT INTO #Tab1 (Sifra_Oe, VkProd) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  132225.     
  132226.     Set @SSQL = 'Select D.Sifra_Oe, sum(S.kolic*S.DokCena)
  132227.          From Stavr S
  132228.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art 
  132229.         Inner Join Dokr D ON S.DokrID=D.DokrID ' 
  132230.     If @Sifra_Gr Is Not Null
  132231.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132232.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' And D.Sifra_Za=3 And D.VlIzl=''V'' And S.Kolic<0 '
  132233.  
  132234.     Set @SSQLDat = ' '
  132235.     If @Datum_Od Is Not NULL
  132236.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok >=''' + Cast(@Datum_Od+1 As Varchar(35)) + ''' '
  132237.     If @Datum_Do Is Not NULL
  132238.         Set @SSQLDat = @SSQLDat + ' And S.Datum_Dok <=''' + Cast(@Datum_Do+1 As Varchar(35)) + ''' '
  132239.  
  132240. --    INSERT INTO #Tab1 (Sifra_Oe, VkProd) EXEC(@SSQL + @SSQL1 + @SSQLDat + @SSQL2)
  132241. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  132242.     Create Table #Tab2
  132243.     (
  132244.     Sifra_Oe    smallint,
  132245.     VkProd        decimal(18,6),
  132246.     ProdLeb    decimal(18,6),
  132247.     VratLeb        decimal(18,6),
  132248.     ProdPec    decimal(18,6),
  132249.     VratPec        decimal(18,6),
  132250.     ProcVratLeb    decimal(6,2),
  132251.     ProcVratPec    decimal(6,2)
  132252.     )
  132253.     Insert Into #tab2 select Sifra_Oe,  sum(vkprod), sum(prodleb),  Abs(Sum(VratLeb)), sum(prodpec), Abs(Sum(VratPec)), 0, 0
  132254.     from #Tab1 
  132255.     group by sifra_Oe
  132256.  
  132257.     Set @SSQL = ' Select T.Sifra_Oe, O.ImeOrg, 
  132258.             T.vkprod, T.prodleb,  T.VratLeb, T.prodpec, T.VratPec,
  132259.              Round((T.VratLeb/T.ProdLeb*100), 2) ProcVrLeb, Round((T.VratPec/T.ProdPec*100), 2) ProcVrPec
  132260.     From #Tab2 T
  132261.     Inner Join Orged O ON O.Sifra_Oe=T.Sifra_Oe '
  132262.     If @Podred = 'S'
  132263.         Set @SSQL=@SSQL + ' Order By T.Sifra_Oe '
  132264.     If @Podred = 'A'
  132265.         Set @SSQL=@SSQL + ' Order By O.ImeOrg '
  132266.     If @Podred = 'V'
  132267.         Set @SSQL=@SSQL + ' Order By T.VkProd Desc '    
  132268.     Exec(@SSQL)
  132269.     Set Nocount Off
  132270. Go
  132271. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prod_vrat_porelacii]'))
  132272. drop procedure [dbo].[sp_prod_vrat_porelacii]
  132273.  
  132274. Go
  132275. CREATE      PROCEDURE sp_Prod_Vrat_PoRelacii
  132276.     @KoiOE Varchar(500) = Null,
  132277.     @Pod1 Smallint = Null,
  132278.     @Pod2 Smallint = Null,
  132279.     @Pod3 Smallint = Null,
  132280.     @Pod4 Smallint = Null,
  132281.     @Pod5 Smallint = Null,
  132282.     @Sifra_Tip Smallint = Null,
  132283.     @Datum_Od Smalldatetime = Null,
  132284.     @Datum_Do Smalldatetime = Null,
  132285.     @Sifra_Brand Smallint = Null,
  132286.     @Sifra_Art_Od Varchar(20) = Null,              --da se vnesuvaat kako 001
  132287.     @Sifra_Art_Do Varchar(20) = Null,    -- 002, 010, 020, 300 itn
  132288.     @Sifra_Kup_Od Char(6) = Null,
  132289.     @Sifra_Kup_Do Char(6) = Null,
  132290.     @Podred Char(1) = Null,
  132291.     @Sifra_Gr Char(3) = Null,
  132292.     @Sifra_Podg Char(6) = Null,
  132293.     @Lokacija Varchar(10) = Null,
  132294.     @TipKup Char(11) = Null,
  132295.     @Koi_Gradovi varchar(200)=NULL,
  132296.     @Koi_Regioni varchar(200) = Null,
  132297.     @TipDokProd    varchar(200) = Null,
  132298.     @Sifra_Reg smallint = Null
  132299. AS
  132300.     Set Nocount On
  132301.     Declare @SSQL Varchar(4000)
  132302.     Declare @SSQL1 Varchar(4000)
  132303.     Declare @SSQL2 Varchar(4000)
  132304.     Create Table #Tab1
  132305.     (
  132306.     Sifra_Reg    smallint,
  132307.     Sifra_Art    varchar(20),
  132308.     KolProd        decimal(18,6),
  132309.     KolVrat        decimal(18,6),
  132310.     ProcVrat    decimal(6,2)
  132311. --    VredProd    decimal(18,6),
  132312. --    VredVrat    decimal(18,6)
  132313.     )
  132314.     SET @SSQL1 = 'SELECT DISTINCT KUP.Sifra_Reg, substring(S.Sifra_Art,4,3)
  132315.             FROM Stavr S 
  132316.             INNER JOIN Dokr D ON S.DokrID = D.DokrID
  132317.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art 
  132318.             Inner JOIN Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  132319.             LEFT OUTER JOIN KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  132320. --            LEFT OUTER JOIN GRegion R On R.Sifra_Reg=KUP.Sifra_Reg '
  132321.     If @Sifra_Gr Is Not Null
  132322.         Set @SSQL1 = @SSQL1 + ' Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132323.     Set @SSQL1 = @SSQL1 + 'Where D.Sifra_Za=1  And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999'' '
  132324.     If @Sifra_Brand Is Not NULL
  132325.         Set @SSQL1 = @SSQL1 +  ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  132326.     If @Lokacija Is Not NULL
  132327.         Set @SSQL1 = @SSQL1 + ' And K.Lokacija=''' + @Lokacija + ''' '
  132328.     If @Sifra_Podg Is Not NULL
  132329.         Set @SSQL1 = @SSQL1 + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  132330.     If @Sifra_Gr Is Not NULL
  132331.         Set @SSQL1 = @SSQL1 + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  132332.     If @Datum_Od Is Not NULL
  132333.         Set @SSQL1 = @SSQL1 + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  132334.     If @Datum_Do Is Not NULL
  132335.         Set @SSQL1 = @SSQL1 + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  132336.     If @Pod1 Is Not NULL
  132337.            Begin
  132338.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  132339.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  132340.            End
  132341.     If @Pod2 Is Not NULL
  132342.            Begin
  132343.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  132344.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  132345.            End
  132346.     If @Pod3 Is Not NULL
  132347.            Begin
  132348.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  132349.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  132350.            End
  132351.     If @Pod4 Is Not NULL
  132352.            Begin
  132353.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  132354.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  132355.            End
  132356.     If @Pod5 Is Not NULL
  132357.            Begin
  132358.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  132359.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  132360.            End
  132361.     If @Sifra_Reg Is Not NULL    
  132362.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + cast(@Sifra_Reg as VArchar(5)) + ') 
  132363.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg = ' + cast(@Sifra_Reg as Varchar(5)) + '))' 
  132364.     If @Sifra_Tip Is Not NULL
  132365.         Set @SSQL1 = @SSQL1 + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  132366.     If @Sifra_Kup_Od Is Not NULL
  132367.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup >=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  132368.     If @Sifra_Kup_Do Is Not NULL
  132369.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup <=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  132370.     If @Sifra_Art_Od Is Not NULL
  132371.         Set @SSQL1 = @SSQL1 + ' And Substring(S.Sifra_Art,4,3) >=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  132372.     If @Sifra_Art_Do Is Not NULL
  132373.         Set @SSQL1 = @SSQL1 + ' And Substring(S.Sifra_Art,4,3) <=''' + substring(@Sifra_Art_Do, 4 ,3) + ''' '
  132374.     If @TipKup Is Not NULL
  132375.         Set @SSQL1 = @SSQL1 + ' And KUP.TipKup=''' + @TipKup + ''' '
  132376.     If @KoiOE Is Not NULL
  132377.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  132378.     If @TipDokProd Is Not NULL
  132379.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  132380.     If @Koi_Gradovi Is Not NULL    
  132381.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  132382.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  132383.     If @Koi_Regioni Is Not NULL    
  132384.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  132385.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  132386. print @SSQL1
  132387.     INSERT INTO #Tab1 (Sifra_Reg, Sifra_Art) EXEC(@SSQL1)--+@SSQL2+@SSQL)
  132388. --select * from #tab1
  132389.     CREATE TABLE #Pom1
  132390.     (
  132391.     Sifra_Reg    smallint,
  132392.     Sifra_Art    varchar(20),
  132393.     Kolic        decimal(18,6)
  132394. --    Vred        decimal(18,6)
  132395.     )
  132396.     SET @SSQL1 = ' Select KUP.Sifra_Reg, substring(S.Sifra_Art,4,3), Sum(Kolic)
  132397.             FROM Stavr S 
  132398.             INNER JOIN Dokr D ON S.DokrID = D.DokrID
  132399.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art 
  132400.             Inner JOIN Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  132401.             LEFT OUTER JOIN KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  132402.     If @Sifra_Gr Is Not Null
  132403.         Set @SSQL1 = @SSQL1 + ' Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132404.     Set @SSQL1 = @SSQL1 + 'Where D.Sifra_Za=1 and S.Kolic > 0  And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999'' '
  132405.     If @Sifra_Brand Is Not NULL
  132406.         Set @SSQL1 = @SSQL1 +  ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  132407.     If @Lokacija Is Not NULL
  132408.         Set @SSQL1 = @SSQL1 + ' And K.Lokacija=''' + @Lokacija + ''' '
  132409.     If @Sifra_Podg Is Not NULL
  132410.         Set @SSQL1 = @SSQL1 + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  132411.     If @Sifra_Gr Is Not NULL
  132412.         Set @SSQL1 = @SSQL1 + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  132413.     If @Datum_Od Is Not NULL
  132414.         Set @SSQL1 = @SSQL1 + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  132415.     If @Datum_Do Is Not NULL
  132416.         Set @SSQL1 = @SSQL1 + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  132417.     If @Pod1 Is Not NULL
  132418.            Begin
  132419.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  132420.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  132421.            End
  132422.     If @Pod2 Is Not NULL
  132423.            Begin
  132424.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  132425.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  132426.            End
  132427.     If @Pod3 Is Not NULL
  132428.            Begin
  132429.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  132430.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  132431.            End
  132432.     If @Pod4 Is Not NULL
  132433.            Begin
  132434.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  132435.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  132436.            End
  132437.     If @Pod5 Is Not NULL
  132438.            Begin
  132439.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  132440.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  132441.            End
  132442.     If @Sifra_Reg Is Not NULL    
  132443.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + cast(@Sifra_Reg as VArchar(5)) + ') 
  132444.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg = ' + cast(@Sifra_Reg as Varchar(5)) + '))' 
  132445.     If @Sifra_Tip Is Not NULL
  132446.         Set @SSQL1 = @SSQL1 + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  132447.     If @Sifra_Kup_Od Is Not NULL
  132448.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  132449.     If @Sifra_Kup_Do Is Not NULL
  132450.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  132451.     If @Sifra_Art_Od Is Not NULL
  132452.         Set @SSQL1 = @SSQL1 + ' And Substring(S.Sifra_Art,4,3) >=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  132453.     If @Sifra_Art_Do Is Not NULL
  132454.         Set @SSQL1 = @SSQL1 + ' And Substring(S.Sifra_Art,4,3) <=''' + substring(@Sifra_Art_Do,4 , 3) + ''' '
  132455.     If @TipKup Is Not NULL
  132456.         Set @SSQL1 = @SSQL1 + ' And KUP.TipKup=''' + @TipKup + ''' '
  132457.     If @KoiOE Is Not NULL
  132458.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  132459.     If @TipDokProd Is Not NULL
  132460.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  132461.     If @Koi_Gradovi Is Not NULL    
  132462.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  132463.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  132464.     If @Koi_Regioni Is Not NULL    
  132465.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  132466.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  132467.     Set @SSQL1=@SSQL1 + ' Group By KUP.Sifra_Reg, substring(S.Sifra_Art,4,3) '
  132468. print @SSQL1
  132469.     Insert Into #Pom1 Exec(@SSQL1)
  132470. --SELECT*FROM #POM1
  132471. update #Tab1 set Sifra_reg = 999 where sifra_reg Is null
  132472. update #Pom1 set Sifra_reg = 999 where sifra_reg Is null
  132473.     Update #Tab1 
  132474.     Set #Tab1.KolProd=#Pom1.Kolic
  132475.     From #Pom1
  132476.     Where #Tab1.Sifra_Reg=#Pom1.Sifra_Reg and #Tab1.Sifra_art=#Pom1.Sifra_art
  132477.     Delete From #Pom1
  132478.     SET @SSQL1 = ' Select KUP.Sifra_Reg, substring(S.Sifra_Art,4,3), Sum(Kolic)
  132479.             FROM Stavr S 
  132480.             INNER JOIN Dokr D ON S.DokrID = D.DokrID
  132481.             INNER JOIN Katart K On K.Sifra_Art = S.Sifra_Art 
  132482.             Inner JOIN Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  132483.             LEFT OUTER JOIN KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  132484.     If @Sifra_Gr Is Not Null
  132485.         Set @SSQL1 = @SSQL1 + ' Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132486.     Set @SSQL1 = @SSQL1 + 'Where D.Sifra_Za=1 and S.Kolic < 0  And S.Sifra_art >=''000001'' and S.Sifra_art <= ''001999'' '
  132487.     If @Sifra_Brand Is Not NULL
  132488.         Set @SSQL1 = @SSQL1 +  ' And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  132489.     If @Lokacija Is Not NULL
  132490.         Set @SSQL1 = @SSQL1 + ' And K.Lokacija=''' + @Lokacija + ''' '
  132491.     If @Sifra_Podg Is Not NULL
  132492.         Set @SSQL1 = @SSQL1 + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  132493.     If @Sifra_Gr Is Not NULL
  132494.         Set @SSQL1 = @SSQL1 + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  132495.     If @Datum_Od Is Not NULL
  132496.         Set @SSQL1 = @SSQL1 + ' And S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  132497.     If @Datum_Do Is Not NULL
  132498.         Set @SSQL1 = @SSQL1 + ' And S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  132499.     If @Pod1 Is Not NULL
  132500.            Begin
  132501.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  132502.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  132503.            End
  132504.     If @Pod2 Is Not NULL
  132505.            Begin
  132506.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  132507.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  132508.            End
  132509.     If @Pod3 Is Not NULL
  132510.            Begin
  132511.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  132512.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  132513.            End
  132514.     If @Pod4 Is Not NULL
  132515.            Begin
  132516.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  132517.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  132518.            End
  132519.     If @Pod5 Is Not NULL
  132520.            Begin
  132521.         Set @SSQL1 = @SSQL1 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  132522.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  132523.            End
  132524.     If @Sifra_Reg Is Not NULL    
  132525.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg = ' + cast(@Sifra_Reg as VArchar(5)) + ') 
  132526.                         OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg = ' + cast(@Sifra_Reg as Varchar(5)) + '))' 
  132527.     If @Sifra_Tip Is Not NULL
  132528.         Set @SSQL1 = @SSQL1 + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  132529.     If @Sifra_Kup_Od Is Not NULL
  132530.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  132531.     If @Sifra_Kup_Do Is Not NULL
  132532.         Set @SSQL1 = @SSQL1 + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  132533.     If @Sifra_Art_Od Is Not NULL
  132534.         Set @SSQL1 = @SSQL1 + ' And Substring(S.Sifra_Art,4,3) >=''' + substring(@Sifra_Art_Od, 4, 3) + ''' '
  132535.     If @Sifra_Art_Do Is Not NULL
  132536.         Set @SSQL1 = @SSQL1 + ' And Substring(S.Sifra_Art,4,3) <=''' + substring(@Sifra_Art_Do, 4 ,3) + ''' '
  132537.     If @TipKup Is Not NULL
  132538.         Set @SSQL1 = @SSQL1 + ' And KUP.TipKup=''' + @TipKup + ''' '
  132539.     If @KoiOE Is Not NULL
  132540.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  132541.     If @TipDokProd Is Not NULL
  132542.              Set @SSQL1  = @SSQL1 + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  132543.     If @Koi_Gradovi Is Not NULL    
  132544.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  132545.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  132546.     If @Koi_Regioni Is Not NULL    
  132547.         Set @SSQL1 = @SSQL1 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  132548.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  132549.     Set @SSQL1=@SSQL1 + ' Group By KUP.Sifra_Reg, substring(S.Sifra_Art,4,3) '
  132550. print @SSQL1
  132551.     Insert Into #Pom1 Exec(@SSQL1)
  132552. --SELECT*FROM #POM1
  132553. update #Pom1 set Sifra_reg = 999 where sifra_reg Is null
  132554.     Update #Tab1 
  132555.     Set #Tab1.KolVrat=#Pom1.Kolic
  132556.     From #Pom1
  132557.     Where #Tab1.Sifra_Reg=#Pom1.Sifra_Reg and #Tab1.Sifra_art=#Pom1.Sifra_art
  132558.     Update #Tab1 
  132559.     Set ProcVrat = (KolVrat/KolProd*100), Sifra_art = '000' + substring(sifra_art,1,3)
  132560.     Select T.Sifra_Reg, R.ImeRegion, T.Sifra_Art, K.ImeArt, T.KolProd, T.KolVrat, T.ProcVrat
  132561.     From #tab1 T
  132562.     Inner Join Katart K On K.Sifra_art = T.Sifra_art
  132563.     Left Outer Join GRegion R On R.Sifra_Reg=T.Sifra_Reg
  132564.     Order by T.Sifra_Art
  132565. Set Nocount Off
  132566.  
  132567.  
  132568. Go
  132569. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodadeno_vrateno]'))
  132570. drop procedure [dbo].[sp_prodadeno_vrateno]
  132571.  
  132572. Go
  132573.  
  132574.  
  132575. CREATE    PROCEDURE sp_Prodadeno_Vrateno
  132576.     @Sifra_OE Smallint = Null,
  132577.     @KoiOE Varchar(300) = Null,
  132578.     @Datum_Od Smalldatetime = Null,
  132579.     @Datum_Do Smalldatetime = Null,
  132580.     @Sifra_Art_Od Varchar(20)= Null,
  132581.     @Sifra_Art_Do Varchar(20) = Null,
  132582.     @Sifra_Kup_Od Char(6) = Null,
  132583.     @Sifra_Kup_Do Char(6) = Null,
  132584.     @Podred Char(1) = 'S',
  132585.     @Kolku Int = Null,
  132586.     @Kto Char(6) = Null,
  132587.     @Sifra_Gr Char(3) = Null,
  132588.     @Sifra_Podg Char(6) = Null,
  132589.     @Lokacija Varchar(10) = Null,
  132590.     @Sifra_Brand Smallint = Null,
  132591.     @Sifra_ZBrand Smallint = Null,
  132592.     @TipDokProd    varchar(200) = Null,
  132593.     @SoDanok    char(1) = 'D',
  132594.     @Drugo1    smallint = Null,
  132595.     @Drugo2    smallint = Null,
  132596.     @Drugo3    smallint = Null,
  132597.     @Drugo4    smallint = Null,
  132598.     @Drugo5    smallint = Null,
  132599.     @PoObjekti char (1) = 'D',
  132600.     @Sifra_Pat smallint= null,
  132601.     @PatnikOd    char(1) = 'K',        -- K - Komint       D - Dokument
  132602.     @GroupPoArt    char(1) = 'D'        -- D - Da ne se prikazuva patnikot za da ne gi duplira stavkite za eden artikal prodaden od poveke patnici 
  132603. AS
  132604.     Declare @SSQL as varchar(8000)
  132605.     Set @SSQL = 'Select S.Sifra_Art, K.ImeArt, '
  132606.     If @GroupPoArt = 'D'
  132607.         Set @SSQL = @SSQL + ' Null SIfra_Pat, Null ImePat, '
  132608.     Else
  132609.         If @PatnikOd = 'D'
  132610.             Set @SSQL = @SSQL + ' D.SIfra_Pat, PA.ImePat, '
  132611.         Else 
  132612.             Set @SSQL = @SSQL + ' KK.SIfra_Pat, PA.ImePat, '
  132613.     Set @SSQL = @SSQL + ' 
  132614.             Sum(Case When ((TD.DaliStorno <> ''D'' Or TD.DaliStorno Is Null) And TD.Plus_Minus=''-'') Then 0 Else S.Kolic End) ProdKolic,
  132615.             Sum(Case When ((TD.DaliStorno <> ''D'' Or TD.DaliStorno Is Null) And TD.Plus_Minus=''-'') Then S.Kolic Else 0 End) VratKolic, 
  132616.             Sum(Case When ((TD.DaliStorno <> ''D'' Or TD.DaliStorno Is Null) And TD.Plus_Minus=''-'') Then 0 Else (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')*(1-S.Uces/100)*(1-D.Kasa/100)) End) ProdVred,
  132617.             Sum(Case When ((TD.DaliStorno <> ''D'' Or TD.DaliStorno Is Null) And TD.Plus_Minus=''-'') Then (S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDanok + ''')*(1-S.Uces/100)*(1-D.Kasa/100)) Else 0 End) VratVred, 
  132618.             Sum(Case When ((TD.DaliStorno <> ''D'' Or TD.DaliStorno Is Null) And TD.Plus_Minus=''-'') Then 0 Else S.Kolic*K.Tezina/1000 End) ProdTezina,
  132619.             Sum(Case When ((TD.DaliStorno <> ''D'' Or TD.DaliStorno Is Null) And TD.Plus_Minus=''-'') Then S.Kolic*K.Tezina/1000 Else 0 End) VratTezina '
  132620.     if @PoOBjekti = 'D'
  132621.         Set @SSQL = @SSQL + ', D.Sifra_Kup, KOM.ImeKup, D.Sifra_Obj, OB.ImeObj '
  132622.     Set @SSQL = @SSQL + 'From Stavr S
  132623.         Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 And D.VlIzl = ''I''
  132624.         Inner Join TipDok TD On TD.Sifra_Dok=D.Sifra_Dok
  132625.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art '
  132626.     If @PatnikOd = 'D'
  132627.         Set @SSQL = @SSQL + ' Left outer join Patnici PA on D.Sifra_Pat=PA.Sifra_Pat '
  132628.     Else
  132629.         Set @SSQL = @SSQL + ' Inner join Komint KK on D.Sifra_Kup=KK.Sifra_Kup 
  132630.                       Left outer join Patnici PA on KK.Sifra_Pat=PA.Sifra_Pat '
  132631.     if @PoOBjekti = 'D'
  132632.     begin
  132633.         Set @SSQL = @SSQL + 'Left Outer Join Komint KOM On D.Sifra_Kup=KOM.Sifra_Kup '
  132634.         Set @SSQL = @SSQL + 'Left Outer Join KObjekti OB On D.Sifra_Kup=OB.Sifra_Kup and D.Sifra_Obj=OB.Sifra_Obj '
  132635.     end
  132636.     If @Sifra_Gr Is Not Null
  132637.         Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  132638.     If @Sifra_ZBrand Is Not Null
  132639.         Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  132640.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  132641.     If @Sifra_OE Is Not NULL
  132642.              Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  132643.     If @KoiOE Is Not NULL
  132644.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  132645.     If @Sifra_Kup_Od Is Not NULL
  132646.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  132647.     If @Sifra_Kup_Do Is Not NULL
  132648.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  132649.     If @Sifra_Art_Od Is Not Null
  132650.         Set @SSQL = @SSQL + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  132651.     If @Sifra_Art_Do Is Not Null
  132652.         Set @SSQL = @SSQL + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  132653.     If @Sifra_Brand Is Not Null
  132654.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  132655.     If @Sifra_ZBrand Is Not Null
  132656.         Set @SSQL = @SSQL + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  132657.     If @Sifra_Podg Is Not Null
  132658.         Set @SSQL = @SSQL + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  132659.     If @Sifra_Gr Is Not Null
  132660.         Set @SSQL = @SSQL + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  132661.     If @Lokacija Is Not NULL
  132662.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  132663.     If @Kto Is Not NULL
  132664.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  132665.     If @Datum_Od Is Not NULL
  132666.         Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  132667.     If @Datum_Do Is Not NULL
  132668.         Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  132669.     If @TipDokProd IS NOT NULL
  132670.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  132671.     If @Drugo1 Is Not NULL
  132672.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  132673.     If @Drugo2 Is Not NULL
  132674.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  132675.     If @Drugo3 Is Not NULL
  132676.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  132677.     If @Drugo4 Is Not NULL
  132678.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  132679.     If @Drugo5 Is Not NULL
  132680.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  132681.     If @Sifra_Pat Is Not NULL
  132682.         If @PatnikOd = 'D'
  132683.             Set @SSQL = @SSQL + ' And D.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  132684.         Else
  132685.             Set @SSQL = @SSQL + ' And KK.Sifra_Pat=' + Cast(@Sifra_Pat As Varchar(6)) + ' '
  132686.     If @PoOBjekti = 'D'
  132687.         Set @SSQL = @SSQL + ' Group By S.Sifra_Art, K.ImeArt, D.Sifra_Kup, KOM.ImeKup, D.Sifra_Obj, OB.ImeObj  '
  132688.     else
  132689.         Set @SSQL = @SSQL + ' Group By S.Sifra_Art, K.ImeArt '
  132690.  
  132691.     If @GroupPoArt = 'D'
  132692.         Set @SSQL = @SSQL + ' '
  132693.     Else
  132694.         If @PatnikOd = 'D'
  132695.             Set @SSQL = @SSQL + ', D.SIfra_Pat, PA.ImePat '
  132696.         Else 
  132697.             Set @SSQL = @SSQL + ', KK.SIfra_Pat, PA.ImePat '
  132698.  
  132699.     if @PoOBjekti = 'D'
  132700.     begin
  132701.         If @Podred = 'S'
  132702.             Set @SSQL = @SSQL + ' Order By S.Sifra_Art, D.Sifra_Kup, D.Sifra_Obj '
  132703.         Else
  132704.             Set @SSQL = @SSQL + ' Order By K.ImeArt, KOM.ImeKup, OB.ImeObj '
  132705.     end
  132706.     else
  132707.     begin
  132708.         If @Podred = 'S'
  132709.             Set @SSQL = @SSQL + 'Order By S.Sifra_Art '
  132710.         Else If @Podred = 'A'
  132711.             Set @SSQL = @SSQL + 'Order By K.ImeArt '
  132712.         Else If @Podred = 'K'
  132713.             Set @SSQL = @SSQL + 'Order By ProdKolic DESC'
  132714.         Else If @Podred = 'V'
  132715.             Set @SSQL = @SSQL + 'Order By ProdVred DESC'
  132716.     end
  132717. print @SSQL
  132718.     Exec(@SSQL)
  132719.  
  132720. Go
  132721. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodaja_one2play]'))
  132722. drop procedure [dbo].[sp_prodaja_one2play]
  132723.  
  132724. Go
  132725.  
  132726.  
  132727.  
  132728. CREATE    PROCEDURE sp_Prodaja_One2Play
  132729.     @Datum_Od    smalldatetime,
  132730.     @Datum_Do    smalldatetime
  132731. AS
  132732.  
  132733. Select Cast(D.Sifra_Oe as varchar(6))+'-'+Cast(D.Sifra_Dok as varchar(6))+'/'+Cast(D.Broj_Dok as varchar(10)) as BrojDok, D.Datum_Dok, DateAdd(Day,D.Rok,D.Datum_Dok) Datum_Dosp, D.Datum_Dok Datum_Knjiz,
  132734.     Nar.Datum_Nar, D.Sifra_Kup, Kup.ImeKup NazivKupca, (Case When D.Sifra_Obj Is Not null Then D.Sifra_Obj Else D.Sifra_Kup End) DostavMjesto, 
  132735.     (Case When D.Sifra_Obj Is Not null Then KO.ImeObj Else Kup.ImeKup End) NazivDostavMjesto,
  132736.     (Case When KO.TipKup Is Not Null Then KO.TipKup Else Kup.TipKup End) KategKupca, TK.ImeTipKup NazivKategKupca, 
  132737.     (Case When KO.SMesto Is Not Null Then KO.SMesto Else Kup.SMesto End) Mjesto, 
  132738.     (Case When KO.Posta Is Not Null Then KO.Posta Else Kup.Posta End) PostBroj, 
  132739.     (Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End) SifraKomercijaliste, Pat.ImePat NazivKomercijaliste, '' GrupaKomerc, 
  132740.     S.Sifra_Art, K.Alt_Sifra SifraOne2Play, K.ImeArt NazivArtikla,
  132741.     S.Kolic Kolicina, 
  132742.     Round(S.Kolic*(Case When S.DanDokCena='N' Then S.DokCena Else S.DokCena/(1+S.Posn/100) End), 4) ProdajnaVrijednostDok,
  132743.     Round(S.Kolic*(Case When S.DanDokCena='N' Then S.DokCena Else S.DokCena/(1+S.Posn/100) End)*S.Uces/100 + S.Kolic*(Case When S.DanDokCena='N' Then S.DokCena Else S.DokCena/(1+S.Posn/100) End)*D.Kasa/100, 4) Rabati,
  132744.     Round(S.Kolic*(Case When S.DanDokCena='N' Then S.DokCena Else S.DokCena/(1+S.Posn/100) End)*(1-S.Uces/100)*(1-D.Kasa/100), 4) NetoVrijedDok,
  132745.     Round(S.Kolic*K.DogCena/(1+S.Posn/100), 4) ProdajnaVrijednost 
  132746. From Dokr D
  132747. Inner Join Stavr S ON S.DokrID=D.DokrID
  132748. Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  132749. Left Outer Join Komint Kup On KUp.Sifra_Kup=D.Sifra_Kup
  132750. Left Outer Join KObjekti KO On KO.Sifra_Kup=D.Sifra_Kup And KO.Sifra_Obj=D.Sifra_Obj
  132751. Left Outer Join GTipKup TK On TK.TipKup=(Case When KO.TipKup Is Not Null Then KO.TipKup Else Kup.TipKup End)
  132752. Left Outer Join Patnici Pat On Pat.Sifra_Pat=(Case When KO.Sifra_Pat Is Not Null Then KO.Sifra_Pat Else Kup.Sifra_Pat End)
  132753. Left Outer Join Naracki Nar On Nar.Sifra_oe=D.Sifra_OeNar And Nar.Sifra_Nar=D.Sifra_Nar And Nar.Broj_Nar=D.Broj_Nar
  132754. LEFT OUTER JOIN Podgrupi PG ON K.Sifra_Podg=PG.Sifra_Podg
  132755. Where PG.Sifra_Gr='025' AND D.VlIzl = 'I' And D.Sifra_Za = 1 And D.Datum_Dok >= @Datum_Od And D.Datum_Dok <= @Datum_Do
  132756. order by D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok
  132757.  
  132758.  
  132759.  
  132760.  
  132761.  
  132762. Go
  132763. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazba_akciipromo]'))
  132764. drop procedure [dbo].[sp_prodazba_akciipromo]
  132765.  
  132766. Go
  132767. CREATE  PROCEDURE sp_Prodazba_AkciiPromo
  132768.     @Ozn_Akcija        char(10),
  132769.     @Sifra_Art_Paket    varchar(20) = Null,
  132770.     @SoDDV        char(1) = 'D',
  132771.     @Datum_Od        smalldatetime = Null,
  132772.     @Datum_Do        smalldatetime = Null,
  132773.     @Sifra_Oe        smallint = Null,
  132774.     @KoiOe        varchar(6) = Null
  132775. AS
  132776.     Declare @SSQL as varchar(8000)
  132777.     Set @SSQL = ' Select A.Sifra_Art_Osnoven, K.ImeArt, A.Sifra_Art_Paket, A.Rabat, Count(*) KolkuLinii, 
  132778.             Sum(S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDDV + ''')) Iznos, 
  132779.             Sum((S.Kolic * dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDDV + ''') * 
  132780.                 (1-Cast(UcesOsn as decimal(9,2))/10000) * (1-Cast(UcesKol as decimal(9,2))/10000)) * Cast(UcesDod as decimal(9,2))/10000) UcesAkc,
  132781.             Sum(S.Kolic) Kolic, Round(Sum(S.Kolic/A.Kolicina), 4) PromoKolic 
  132782.         From Stavr S
  132783.         Inner Join AkciiPromoSta A On S.Sifra_Art=A.Sifra_Art_Osnoven
  132784.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  132785.         Where A.Ozn_Akcija = ''' + @Ozn_Akcija + ''' '
  132786.     If @Sifra_Art_Paket Is Not Null
  132787.         Set @SSQL = @SSQL + ' And A.Sifra_Art_Paket = ''' + @Sifra_Art_Paket + ''' '
  132788.     If @Sifra_Oe Is Not Null
  132789.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  132790.     If @KoiOe Is Not Null
  132791.         Set @SSQL = @SSQL + ' And S.Sifra_OE IN (Select Sifra_Oe From SGrOrg  where sif_GrOrg = ''' + @KoiOe  +  ''') '
  132792.     If @Datum_Od Is Not Null
  132793.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  132794.     If @Datum_Do Is Not Null
  132795.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  132796.     Set @SSQL = @SSQL + ' Group By A.Sifra_Art_Osnoven, A.Sifra_Art_Paket, K.ImeArt, A.Rabat '
  132797. print @SSQL
  132798.     Exec (@SSQL)
  132799.  
  132800.  
  132801. Go
  132802. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazba_boi_golemini]'))
  132803. drop procedure [dbo].[sp_prodazba_boi_golemini]
  132804.  
  132805. Go
  132806. CREATE PROCEDURE sp_Prodazba_Boi_Golemini
  132807.     @Sifra_Oe    smallint,
  132808.     @Koi_Oe    varchar(6),
  132809.     @Datum_Od    smalldatetime,
  132810.     @Datum_Do    smalldatetime,
  132811.     @Sifra_Art_Od    varchar(20),
  132812.     @Sifra_Art_Do    varchar(20),
  132813.     @Sifra_Podg    char(6),
  132814.     @Sifra_Gr    char(3)
  132815. AS
  132816.     Set Nocount On
  132817.     Declare @SSQL as varchar(8000)
  132818.     Set @SSQL = ' Select P.Sifra_Art, K.ImeArt, P.KontrSer1, P.KontrSer2, Sum(P.Kolic) Kolic, Sum(P.Kolic*P.Cena) Vrednost
  132819.             From ProdKontrSer P
  132820.             Inner Join Katart K On K.Sifra_Art=P.Sifra_Art '
  132821.     If @Sifra_Gr Is Not Null
  132822.         Set @SSQL = @SSQL + ' Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg '
  132823.     Set @SSQL = @SSQL + ' Where 1=1 '
  132824.     If @Sifra_Oe Is Not Null
  132825.         Set @SSQL = @SSQL + ' And P.Sifra_Mark = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  132826.     If @Koi_Oe Is Not Null
  132827.         Set @SSQL = @SSQL + ' And P.Sifra_Mark In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  132828.     If @Datum_Od Is Not Null
  132829.         Set @SSQL = @SSQL + ' And P.Datum >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  132830.     If @Datum_Do Is Not Null
  132831.         Set @SSQL = @SSQL + ' And P.Datum <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  132832.     If @Sifra_Art_Od Is Not Null
  132833.         Set @SSQL = @SSQL + ' And P.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  132834.     If @Sifra_Art_Do Is Not Null
  132835.         Set @SSQL = @SSQL + ' And P.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  132836.     If @Sifra_Podg Is Not Null
  132837.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  132838.     If @Sifra_Gr Is Not Null
  132839.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  132840.     Set @SSQL = @SSQL + ' Group By P.Sifra_Art, K.ImeArt, P.KontrSer1, P.KontrSer2 '
  132841.     Print @SSQL
  132842.     Exec(@SSQL)
  132843.     Set Nocount Off
  132844.  
  132845.  
  132846. Go
  132847. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazba_kontrolenpregled]'))
  132848. drop procedure [dbo].[sp_prodazba_kontrolenpregled]
  132849.  
  132850. Go
  132851. CREATE PROCEDURE sp_Prodazba_KontrolenPregled
  132852.     @Sifra_Oe    smallint,
  132853.     @Koi_Oe    varchar(6),
  132854.     @Datum_Od    smalldatetime,
  132855.     @Datum_Do    smalldatetime
  132856. AS
  132857.     Set Nocount On
  132858.     Declare @SSQL as varchar(8000)
  132859.     Create Table #Tab
  132860.     (
  132861.      Sifra_Mark    smallint,
  132862.      Datum        smalldatetime,
  132863.      Vrednost    decimal(18,6),
  132864.      VrednNal100    decimal(18,6)
  132865.     )
  132866.     Set @SSQL = ' Select P.Sifra_Mark, P.Datum, Sum(P.Kolic*P.Cena) Vrednost, 0
  132867.             From ProdKontrSer P 
  132868.             Where 1=1 '
  132869.     If @Sifra_Oe Is Not Null
  132870.         Set @SSQL = @SSQL + ' And P.Sifra_Mark = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  132871.     If @Koi_Oe Is Not Null
  132872.         Set @SSQL = @SSQL + ' And P.Sifra_Mark In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  132873.     If @Datum_Od Is Not Null
  132874.         Set @SSQL = @SSQL + ' And P.Datum >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  132875.     If @Datum_Do Is Not Null
  132876.         Set @SSQL = @SSQL + ' And P.Datum <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  132877.     Set @SSQL = @SSQL + ' Group By P.Sifra_Mark, P.Datum '
  132878.     Insert Into #Tab Exec(@SSQL)
  132879.  
  132880.     Set @SSQL = ' Select D.Sifra_Oe, D.Datum_Dok, 0, Sum(S.Kolic*(Case When S.DanDokCena = ''D'' Then S.DokCena Else S.DokCena*(1+S.Posn/100) End) * (1-S.Uces/100) * (1-D.Kasa/100)) Vrednost
  132881.             From Dokr D
  132882.             Inner Join Stavr S On S.DokrID=D.DokrID
  132883.             Where D.Sifra_Nal = 100 '
  132884.     If @Sifra_Oe Is Not Null
  132885.         Set @SSQL = @SSQL + ' And D.Sifra_Oe = ' + Cast(@Sifra_Oe as varchar(6)) + ' '
  132886.     If @Koi_Oe Is Not Null
  132887.         Set @SSQL = @SSQL + ' And D.Sifra_Oe In (Select Sifra_Oe From SGrOrg Where Sif_GrOrg = ''' + @Koi_Oe + ''') '
  132888.     If @Datum_Od Is Not Null
  132889.         Set @SSQL = @SSQL + ' And D.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' '
  132890.     If @Datum_Do Is Not Null
  132891.         Set @SSQL = @SSQL + ' And D.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' '
  132892.     Set @SSQL = @SSQL + ' Group By D.Sifra_Oe, D.Datum_Dok '
  132893.     Insert Into #Tab Exec(@SSQL)
  132894.  
  132895.     Select Sifra_Mark, Datum, Sum(Vrednost) Vrednost, Sum(VrednNal100) VrednNal100
  132896.     From #Tab
  132897.     Group By Sifra_Mark, Datum
  132898.  
  132899.     Set Nocount Off
  132900.  
  132901. Go
  132902. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazba_lager]'))
  132903. drop procedure [dbo].[sp_prodazba_lager]
  132904.  
  132905. Go
  132906. CREATE PROCEDURE sp_Prodazba_Lager
  132907.     @Datum_Od    Smalldatetime,
  132908.     @Datum_Do    Smalldatetime,
  132909.     @Sifra_OEProd    varchar(200) = NULL,
  132910.     @KF_OE    char(1)  = 'N',
  132911.     @Sifra_OEZal    varchar(200),
  132912.     @Sifra_Podg    varchar(200) = NULL,
  132913.     @KF_Podg    char(1) = 'N',
  132914.     @Sifra_Gr    varchar(200) = NULL,
  132915.     @KF_Gr    char(1) = 'N',
  132916.     @Kto        varchar(200) = NULL,
  132917.     @KF_Kto    char(1) = 'N',
  132918.     @Sifra_Brand    varchar(200) = NULL,
  132919.     @KF_Brand    char(1) = 'N',
  132920.     @Lokacija    varchar(10) = NULL,
  132921.     @KF_Lokacija    char(1) = 'N',
  132922.     @SoDanok    Char(1) = 'N',
  132923.     @RazbijSostav    Char(1) = 'N',
  132924.     @TipDokProd    varchar(200) = Null,
  132925.     @Sifra_Art_Od    varchar(20) = Null,
  132926.     @Sifra_Art_Do    varchar(20) = Null,
  132927.     @Sifra_Kup    varchar(6) = Null,
  132928.     @Sifra_Obj    smallint = Null,
  132929.     @PoKojDatum    char(1) = 'D'        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  132930. AS
  132931.     If @PoKojDatum = 'V'
  132932.             If @Datum_Do Is Not Null
  132933.         Set @Datum_Do = @Datum_Do + 1
  132934.     CREATE    Table #tSostav
  132935.     (    Sifra_Art    varchar(20), 
  132936.         Sifra_Sur    varchar(20), 
  132937.         Ima_Kolic    Decimal(18,6),
  132938.         Cena        Decimal(18,6),
  132939.         VkCena        Decimal(18,6)
  132940.     )
  132941.     Declare @SSQL Varchar(8000)
  132942.     Declare @SSQL1 Varchar(8000)
  132943.     Set @SSQL1 = ''
  132944.     If @Sifra_Art_Od Is Not Null
  132945.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  132946.     If @Sifra_Art_Do Is Not Null
  132947.         Set @SSQL1 = @SSQL1 + 'And K.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  132948.     If @Sifra_Podg Is Not NULL
  132949.          Begin
  132950.         If @KF_Podg = 'N'
  132951.                Set @SSQL1 = @SSQL1 + 'And K.Sifra_Podg IN (' + @Sifra_Podg  + ') '
  132952.         Else
  132953.             Set @SSQL1 = @SSQL1 + 'And K.Sifra_Podg NOT IN (' + @Sifra_Podg  + ') '
  132954.         End
  132955.     If @Sifra_Gr Is Not NULL
  132956.         Begin
  132957.         If @KF_Gr = 'N'
  132958.                 Set @SSQL1 = @SSQL1 + 'And P.Sifra_Gr IN (' + @Sifra_Gr  + ') '
  132959.         Else
  132960.             Set @SSQL1 = @SSQL1 + 'And P.Sifra_Gr NOT IN (' + @Sifra_Gr  + ') '
  132961.         End
  132962.     If @Kto Is Not NULL
  132963.         Begin
  132964.         If @KF_Kto = 'N'
  132965.                 Set @SSQL1 = @SSQL1 + 'And K.Kto IN (' + @Kto  + ') '
  132966.         Else
  132967.             Set @SSQL1 = @SSQL1 + 'And K.Kto NOT IN (' + @Kto  + ') '
  132968.         End
  132969.     If @Sifra_Brand Is Not NULL
  132970.          Begin
  132971.         If @KF_Brand = 'N'
  132972.                 Set @SSQL1 = @SSQL1 + 'And K.Sifra_Drg IN (' + @Sifra_Brand  + ') '
  132973.         Else
  132974.             Set @SSQL1 = @SSQL1 + 'And K.Sifra_Drg NOT IN (' + @Sifra_Brand  + ') '
  132975.         End
  132976.     If @Lokacija Is Not NULL
  132977.         Begin
  132978.         If @KF_Lokacija  = 'N'
  132979.             Set @SSQL1 = @SSQL1 + 'And K.Lokacija = ''' + @Lokacija + ''' '
  132980.         Else
  132981.             Set @SSQL1 = @SSQL1 + 'And K.Lokacija <> ''' + @Lokacija + ''' '
  132982.         End    
  132983.     If @RazbijSostav = 'D'
  132984.     Begin
  132985.         Set @SSQL = 'Insert #tSostav 
  132986.         Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena From Sostav S 
  132987.         Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  132988.     If @Sifra_Gr Is Not NULL
  132989.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132990.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  132991.     EXEC(@SSQL + @SSQL1)
  132992.     End
  132993.     Set @SSQL = 'Insert #tSostav 
  132994.     Select K.Sifra_Art, K.Sifra_Art,1, 1, 1
  132995.     From Katart K '
  132996.     If @Sifra_Gr Is Not NULL
  132997.         Set @SSQL = @SSQL + ' Inner Join Podgrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  132998.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  132999.     If @RazbijSostav = 'D'
  133000.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  133001.     Exec(@SSQL+@SSQL1)
  133002.     CREATE    Table #ProdZal
  133003.     (
  133004.         Sifra_Art    Varchar(20),
  133005.         KolicProd    decimal(18,6),
  133006.         VrProd        decimal(18,6),
  133007.         Vlez        Decimal(18,6),
  133008.         Izlez        Decimal(18,6),
  133009.         VrVlez        Decimal(18,6),
  133010.         VrIzlez        Decimal(18,6)
  133011.     )
  133012. --        Round(Sum(dbo.fn_VratiVredIzl (S.Kolic*TS.Ima_Kolic, S.DokCena*TS.Cena/TS.VkCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa, '''+@SoDanok+''')), 4) as VrProd,
  133013.     Set @SSQL = 'INSERT INTO #ProdZal  Select S.Sifra_Art,
  133014.         Round(Sum(S.Kolic), 4) KolicProd,
  133015.         Round(Sum(S.Kolic*TS.Ima_Kolic * S.NabCena), 4) as VrProd,
  133016.         0, 0, 0, 0
  133017.         From #tSostav TS
  133018.         Inner Join Stavr S ON TS.Sifra_Art=S.Sifra_Art
  133019.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1 
  133020.         Where S.VlIzl = ''I'' And 
  133021.         (S.ImaDodatna Is NULL OR S.ImaDodatna = '' '' OR S.ImaDodatna = '''')  '
  133022.     If @PoKojDatum = 'V'
  133023.           Begin
  133024.         If @Datum_Od Is Not NULL
  133025.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  133026.         If @Datum_Do Is Not NULL
  133027.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  133028.           End
  133029.     Else 
  133030.           Begin
  133031.         If @Datum_Od Is Not NULL
  133032.             Set @SSQL = @SSQL + 'And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  133033.         If @Datum_Do Is Not NULL
  133034.             Set @SSQL = @SSQL + 'And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  133035.            End
  133036.     If @TipDokProd IS NOT NULL
  133037.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  133038.     If @Sifra_Kup Is Not Null
  133039.         Set @SSQL = @SSQL + 'And D.Sifra_Kup =''' + @Sifra_Kup + ''' '
  133040.     If @Sifra_Obj Is Not Null
  133041.         Set @SSQL = @SSQL + 'And D.Sifra_Obj =' + Cast(@Sifra_Obj as varchar(4)) + ' '
  133042.     If @Sifra_OEProd Is Not NULL    
  133043.     Begin
  133044.         If @KF_OE = 'N'
  133045.                 Set @SSQL = @SSQL + 'And S.Sifra_OE  IN (' + @Sifra_OEProd  + ') '
  133046.         Else
  133047.             Set @SSQL = @SSQL + 'And S.Sifra_OE  NOT IN (' + @Sifra_OEProd  + ') '
  133048.     End
  133049.     Set @SSQL = @SSQL + ' Group By S.Sifra_Art '
  133050.     EXEC(@SSQL)
  133051.     SET @SSQL =  'INSERT INTO #ProdZal     
  133052.             SELECT S.Sifra_Art, 0, 0,
  133053.             SUM(CASE WHEN S.VlIzl = ''V'' THEN S.Kolic
  133054.                 ELSE 0
  133055.                 END) Vlez, 
  133056.             SUM(CASE WHEN S.VlIzl = ''I'' THEN S.Kolic
  133057.                 ELSE 0
  133058.                 END) Izlez,
  133059.             SUM(CASE WHEN S.VlIzl = ''V'' THEN (S.Kolic*SO.NNabCena)
  133060.                 ELSE 0
  133061.                 END) VrVlez, 
  133062.             SUM(CASE WHEN S.VlIzl = ''I'' THEN (S.Kolic*SO.NNabCena)
  133063.                 ELSE 0
  133064.                 END) VrIzlez
  133065.             FROM Stavr  S '
  133066.     If @PoKojDatum='V'
  133067.         Set @SSQL = @SSQL + ' INNER JOIN DOKR D On S.DokrID=D.DokrID '
  133068.     Set @SSQL = @SSQL + ' Left Outer Join Soart SO On SO.Sifra_art=S.Sifra_Art and SO.Sifra_Oe=S.Sifra_Oe '
  133069.     Set @SSQL = @SSQL + ' WHERE S.Sifra_Art IN (SELECT Sifra_Art FROM #tSostav) '
  133070.     If @PoKojDatum='V'
  133071.          Begin
  133072.         If @Datum_Do Is Not Null
  133073.             SET @SSQL = @SSQL +' AND D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(35)) + ''' '    
  133074.          End
  133075.     Else
  133076.         Begin
  133077.         IF @Datum_Do IS NOT NULL 
  133078.             SET @SSQL = @SSQL +' AND S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  133079.         End
  133080.     If @Sifra_OEZal Is Not NULL    
  133081.                    Set @SSQL = @SSQL + ' And S.Sifra_OE  IN (' + @Sifra_OEZal  + ') '
  133082.     Set @SSQL = @SSQL + ' GROUP BY  S.Sifra_Art'
  133083.     EXEC(@SSQL)
  133084.     Select     P.Sifra_Art, K.ImeArt, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr, 
  133085.         Sum(P.KolicProd) as KolicProd, Sum(P.VrProd) as VrProd, Sum(P.Vlez-P.Izlez) as Zaliha, Sum(P.VrVlez-P.VrIzlez) as VrZaliha
  133086.     From #ProdZal P
  133087.     Inner Join Katart K On K.Sifra_Art=P.Sifra_Art
  133088.     Inner Join Podgrupi PG On PG.Sifra_Podg=K.Sifra_Podg
  133089.     Inner Join Grupi G On G.Sifra_Gr=PG.Sifra_Gr
  133090.     Group By P.Sifra_Art, K.ImeArt, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, G.Ime_Gr
  133091.  
  133092.  
  133093. Go
  133094. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazba_nabavka_voperiod]'))
  133095. drop procedure [dbo].[sp_prodazba_nabavka_voperiod]
  133096.  
  133097. Go
  133098. CREATE        PROCEDURE sp_Prodazba_Nabavka_VoPeriod
  133099.     @Sifra_OE         Smallint = Null,
  133100.     @KoiOE         varchar(300) = Null,
  133101.     @Datum_Od        smalldatetime = Null,  
  133102.     @Datum_Do        smalldatetime = Null,
  133103.     @Sifra_Art_Od         varchar(20)= Null,
  133104.     @Sifra_Art_Do         varchar(20) = Null,
  133105.     @Sifra_Gr          char(3) = Null,
  133106.     @Sifra_Podg         char(6) = Null,
  133107.     @Kto             char(6) = Null,
  133108.     @Lokacija         varchar(10) = Null,
  133109.     @Sifra_Brand         smallint = Null,
  133110.     @Sifra_ZBrand         smallint = Null,
  133111.     @Drugo1        smallint = Null,
  133112.     @Drugo2        smallint = Null,
  133113.     @Drugo3        smallint = Null,
  133114.     @Drugo4        smallint = Null,
  133115.     @Drugo5        smallint = Null,
  133116.     @Drugo6        smallint = Null,
  133117.     @Drugo7        smallint = Null,
  133118.     @Podred         char(1) = Null,
  133119.     @NabProd        char(1) = 'P',        -- N - Nabavka,     P - Prodazba
  133120.     @PrikaziSto        char(1) = 'P'        -- D - Dobavuvac, P - Podgrupa
  133121. --    @PrikaziArt        char(1) = 'D'        -- D - Prikazi Artikli   N - Bez Artikli
  133122. AS
  133123.     Declare @SSQL Varchar(8000)
  133124.     Declare @SSQLUsl Varchar(8000)
  133125.     --------- Uslov
  133126.     Set @SSQLUsl = ' '
  133127.     If @Sifra_OE Is Not NULL
  133128.              Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  133129.     If @KoiOE Is Not Null
  133130.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_OE In (' + @KoiOe + ') ' 
  133131.     If @Datum_Od Is Not NULL
  133132.              Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  133133.     If @Datum_Do Is Not NULL
  133134.              Set @SSQLUsl = @SSQLUsl + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  133135.     If @Sifra_Art_Od Is Not Null
  133136.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  133137.     If @Sifra_Art_Do Is Not Null
  133138.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  133139.     If @Sifra_Brand Is Not Null
  133140.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  133141.     If @Sifra_ZBrand Is Not Null
  133142.         Set @SSQLUsl = @SSQLUsl + ' And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  133143.     If @Sifra_Podg Is Not Null
  133144.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  133145.     If @Sifra_Gr Is Not Null
  133146.         Set @SSQLUsl = @SSQLUsl + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  133147.     If @Lokacija Is Not NULL
  133148.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  133149.     If @Kto Is Not NULL
  133150.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  133151.     If @Drugo1 Is Not NULL
  133152.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  133153.     If @Drugo2 Is Not NULL
  133154.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  133155.     If @Drugo3 Is Not NULL
  133156.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  133157.     If @Drugo4 Is Not NULL
  133158.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  133159.     If @Drugo5 Is Not NULL
  133160.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  133161.     If @Drugo6 Is Not NULL
  133162.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo6=' + Cast(@Drugo6 As Varchar(6)) + ' '
  133163.     If @Drugo7 Is Not NULL
  133164.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo7=' + Cast(@Drugo7 As Varchar(6)) + ' '
  133165.     ----------------------------------------------------------------------------------------------------------------------------------
  133166.     Declare @BrNedeli Decimal(9,2)
  133167.         Set @BrNedeli = Cast(DateDiff(Day, @Datum_Od, @Datum_Do) as decimal(9,2)) / 7
  133168.     Set @SSQL = 'Select S.Sifra_Oe, O.ImeOrg, S.Sifra_Art, K.ImeArt, '
  133169.     If @PrikaziSto = 'P' 
  133170.         Set @SSQL = @SSQL + ' K.Sifra_Podg Sifra_Pod, PG.Ime_Podg ImePod, '
  133171.     Else If @PrikaziSto = 'D' 
  133172.         Set @SSQL = @SSQL + ' K.Kto Sifra_Pod, Kup.ImeKup ImePod, '
  133173.     Set @SSQL = @SSQL + ' Sum(S.Kolic) Kolic, ''' + Cast(@BrNedeli as varchar(5)) + ''' as BrNedeli, K.ImaBroevi, K.Volumen, K.ImaPaleta
  133174.         From Dokr D
  133175.         Inner Join Stavr S On S.DokrID = D.DokrID
  133176.         Inner Join Katart K On K.Sifra_Art = S.Sifra_Art
  133177.         Inner Join Orged O On O.Sifra_Oe = S.Sifra_Oe '
  133178.     If @PrikaziSto = 'D'
  133179.         Set @SSQL = @SSQL + ' Left Outer Join Komint Kup On Kup.Sifra_Kup = K.Kto '
  133180.     If @Sifra_Gr Is Not Null Or @PrikaziSto = 'P'
  133181.         Set @SSQL = @SSQL + ' Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133182.     If @Sifra_ZBrand Is Not Null
  133183.         Set @SSQL = @SSQL + ' Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133184.     If @NabProd = 'P'
  133185.         Set @SSQL = @SSQL + ' Where S.VlIzl = ''I'' And D.Sifra_Za = ''1'' '
  133186.     Else If @NabProd = 'N'        
  133187.         Set @SSQL = @SSQL + ' Where S.VlIzl = ''V'' '
  133188.     Set @SSQL = @SSQL + ' And (K.Volumen >0 Or K.ImaPaleta > 0) '
  133189.     Set @SSQL = @SSQL + @SSQLUsl 
  133190.     Set @SSQL = @SSQL + ' Group By S.Sifra_Oe, O.ImeOrg, S.Sifra_Art, K.ImeArt, '
  133191.     If @PrikaziSto = 'P' 
  133192.         Set @SSQL = @SSQL + ' K.Sifra_Podg, PG.Ime_Podg, '
  133193.     Else If @PrikaziSto = 'D' 
  133194.         Set @SSQL = @SSQL + ' K.Kto, Kup.ImeKup, '
  133195.     Set @SSQL = @SSQL + ' K.ImaBroevi, K.Volumen, K.ImaPaleta ' 
  133196. Print @SSQL
  133197.     Exec(@SSQL)
  133198.  
  133199. Go
  133200. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazba_zaliha]'))
  133201. drop procedure [dbo].[sp_prodazba_zaliha]
  133202.  
  133203. Go
  133204. CREATE PROCEDURE sp_Prodazba_Zaliha
  133205.     @Sifra_Oe_Prod    smallint,
  133206.     @Sifra_Oe_Zal        smallint,
  133207.     @Datum_Prod_Od    smalldatetime,
  133208.     @Datum_Prod_Do    smalldatetime,
  133209.     @KoiArt            char(1) = 'S'    -- S - Site     Z - Samo onie art so zaliha
  133210. AS
  133211.     -------- Zaliha (samo pozitivna) -----------
  133212.     Create Table #Zal
  133213.     (
  133214.      Sifra_Art    varchar(20),
  133215.      Zaliha        decimal(18,6)
  133216.     )
  133217.     Insert Into #Zal 
  133218.     Select Sifra_Art, (Vlez-Izlez) as Zaliha
  133219.     From Soart 
  133220.     Where Sifra_Oe=@Sifra_Oe_Zal And (Vlez-Izlez) <> 0
  133221.     ----------------------------------------------------------
  133222.     If @KoiArt = 'Z'    -- samo onie art so zaliha > 0
  133223.         Select S.Sifra_Art, Sum(S.Kolic) as Prodazba, Z.Zaliha
  133224.         From Dokr D
  133225.         Inner Join Stavr S On S.DokrID=D.DokrID
  133226.         Inner Join #Zal Z On Z.Sifra_Art=S.Sifra_Art
  133227.         Where D.Sifra_Za='1' And S.VlIzl='I'
  133228.             And S.Sifra_Oe=@Sifra_Oe_Prod 
  133229.             And S.Datum_Dok>=@Datum_Prod_Od 
  133230.             And S.Datum_Dok<=@Datum_Prod_Do
  133231.             And Z.Zaliha > 0
  133232.         Group By S.Sifra_Art, Z.Zaliha
  133233.     Else -- site art za koi ima prodazba
  133234.         Select S.Sifra_Art, Sum(S.Kolic) as Prodazba, Z.Zaliha
  133235.         From Dokr D
  133236.         Inner Join Stavr S On S.DokrID=D.DokrID
  133237.         Left Outer Join #Zal Z On Z.Sifra_Art=S.Sifra_Art
  133238.         Where D.Sifra_Za='1' And S.VlIzl='I'
  133239.             And S.Sifra_Oe=@Sifra_Oe_Prod 
  133240.             And S.Datum_Dok>=@Datum_Prod_Od 
  133241.             And S.Datum_Dok<=@Datum_Prod_Do
  133242.         Group By S.Sifra_Art, Z.Zaliha
  133243.  
  133244.  
  133245. Go
  133246. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazba_zaliha_zanaracka]'))
  133247. drop procedure [dbo].[sp_prodazba_zaliha_zanaracka]
  133248.  
  133249. Go
  133250.  
  133251.  
  133252. CREATE   PROCEDURE sp_Prodazba_Zaliha_ZaNaracka
  133253.     @Sifra_Oe_Prod    smallint,
  133254.     @Sifra_Oe_Zal        smallint,
  133255.     @Datum_Prod_Od    smalldatetime,
  133256.     @Datum_Prod_Do    smalldatetime,
  133257.     @KoiArt            char(1) = 'S',    -- S - Site     Z - Samo onie art so zaliha
  133258.     @SoBoiGolemini        char(1) = 'D',    -- D/N
  133259.     @BarKod_Od        varchar(25) = Null,
  133260.     @BarKod_Do        varchar(25) = Null,
  133261.     @Sifra_Gr        char(3) = Null,
  133262.     @Sifra_Podg        char(6) = Null,
  133263.     @Sifra_Art_Od        varchar(20) = Null,
  133264.     @Sifra_Art_Do        varchar(20) = Null
  133265. AS
  133266.     Set Nocount On
  133267.     Declare @SSQL As Varchar(8000)
  133268.     Declare @SSQLUsl As Varchar(8000)
  133269.     -------- Zaliha od Org.ed za zaliha -----------
  133270.     Create Table #Zal
  133271.     (
  133272.      Sifra_Art    varchar(20),
  133273.      Zaliha        decimal(18,6)
  133274.     )
  133275.     Set @SSQL = ' Select Sifra_Art, Sum(Vlez-Izlez) as Zaliha
  133276.         From Soart 
  133277.         Where 1=1 '
  133278.     If @Sifra_Oe_Zal Is Not Null
  133279.         Set @SSQL = @SSQL + 'And Sifra_Oe= ' + Cast(@Sifra_Oe_Zal as varchar(6)) + ' ' 
  133280.     Set @SSQL = @SSQL + ' Group By Sifra_Art 
  133281.                 Having Sum(Vlez-Izlez) <> 0 '
  133282.     Insert Into #Zal Exec(@SSQL)
  133283.     ----------------------------------------------------------
  133284.     -------- Zaliha od Org.ed za zaliha -----------
  133285.     Create Table #ZalOeProd
  133286.     (
  133287.      Sifra_Art    varchar(20),
  133288.      ZalOeProd    decimal(18,6)
  133289.     )
  133290.     Set @SSQL = ' Select Sifra_Art, Sum(Vlez-Izlez) as Zaliha
  133291.         From Soart 
  133292.         Where 1=1 '
  133293.     If @Sifra_Oe_Zal Is Not Null
  133294.         Set @SSQL = @SSQL + 'And Sifra_Oe= ' + Cast(@Sifra_Oe_Prod as varchar(6)) + ' ' 
  133295.     Set @SSQL = @SSQL + ' Group By Sifra_Art 
  133296.                 Having Sum(Vlez-Izlez) <> 0 '
  133297.     Insert Into #ZalOeProd Exec(@SSQL)
  133298.     ----------------------------------------------------------
  133299.     Set @SSQL = ' Select P.Sifra_Art, K.ImeArt, '
  133300.     If @SoBoiGolemini <> 'N'
  133301.         Set @SSQL = @SSQL + ' P.KontrSer1, P.KontrSer2, '
  133302.     Else
  133303.         Set @SSQL = @SSQL + ' Null as KontrSer1, Null as KontrSer2, '
  133304.     Set @SSQL = @SSQL + ' Sum(P.Kolic) as Prodazba, Z.Zaliha, ZP.ZalOeProd, K.Sifra_Podg, PG.Ime_Podg,
  133305.                 PG.Sifra_Gr, GR.Ime_Gr
  133306.         From ProdKontrSer P
  133307.         Inner Join Katart K On K.Sifra_Art = P.Sifra_Art
  133308.         Left Outer Join #Zal Z On Z.Sifra_Art=P.Sifra_Art
  133309.         Left Outer Join #ZalOeProd ZP On ZP.Sifra_Art=P.Sifra_Art 
  133310.         Inner Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg 
  133311.         Inner Join Grupi GR On GR.Sifra_Gr = PG.Sifra_Gr '
  133312.     Set @SSQL = @SSQL + ' Where 1=1 '
  133313.     If @Sifra_Oe_Prod Is Not Null
  133314.         Set @SSQL = @SSQL + ' And P.Sifra_Mark= ' + Cast(@Sifra_Oe_Prod as varchar(6)) + ' ' 
  133315.     If @Datum_Prod_Od Is Not Null
  133316.         Set @SSQL = @SSQL + ' And P.Datum >= ''' + Cast(@Datum_Prod_Od as varchar(30)) + ''' '
  133317.     If @Datum_Prod_Do Is Not Null
  133318.         Set @SSQL = @SSQL + ' And P.Datum <= ''' + Cast(@Datum_Prod_Do as varchar(30)) + ''' '
  133319.     If @Sifra_Gr Is Not Null
  133320.         Set @SSQL = @SSQL + ' And PG.Sifra_Gr = ''' + @Sifra_Gr + ''' '
  133321.     If @Sifra_Podg Is Not Null
  133322.         Set @SSQL = @SSQL + ' And K.Sifra_Podg = ''' + @Sifra_Podg + ''' '
  133323.     If @BarKod_Od Is Not Null
  133324.         Set @SSQL = @SSQL + ' And K.Nom >= ''' + @BarKod_Od + ''' '
  133325.     If @BarKod_Do Is Not Null
  133326.         Set @SSQL = @SSQL + ' And K.Nom <= ''' + @BarKod_Do + ''' '
  133327.     If @Sifra_Art_Od Is Not Null
  133328.         Set @SSQL = @SSQL + ' And P.Sifra_Art >= ''' + @Sifra_Art_Od + ''' '
  133329.     If @Sifra_Art_Do Is Not Null
  133330.         Set @SSQL = @SSQL + ' And P.Sifra_Art <= ''' + @Sifra_Art_Do + ''' '
  133331.     If @KoiArt = 'Z'
  133332.         Set @SSQL = @SSQL + ' And Z.Zaliha <> 0 '
  133333.     Set @SSQL = @SSQL + ' Group By P.Sifra_Art, K.ImeArt, Z.Zaliha, ZP.ZalOeProd, K.Sifra_Podg, PG.Ime_Podg, PG.Sifra_Gr, GR.Ime_Gr  '
  133334.     If @SoBoiGolemini <> 'N'
  133335.         Set @SSQL = @SSQL + ', P.KontrSer1, P.KontrSer2 '
  133336.     Exec (@SSQL)
  133337.  
  133338.  
  133339.  
  133340. Go
  133341. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbanakarticki]'))
  133342. drop procedure [dbo].[sp_prodazbanakarticki]
  133343.  
  133344. Go
  133345.  
  133346.  
  133347. CREATE      PROCEDURE sp_ProdazbaNaKarticki
  133348.     @Sifra_Oe    smallint = Null,
  133349.     @Koi_Oe    varchar(10) = Null,
  133350.     @Sifra_Art_Od    varchar(20) = Null,
  133351.     @Sifra_Art_Do    varchar(20) = Null,
  133352.     @Datum_Od    smalldatetime = Null,
  133353.     @Datum_Do    smalldatetime = Null,
  133354.     @Sifra_kup    char(6) = Null,
  133355.     @SeriskiBrOd    varchar(20) = Null,
  133356.     @SeriskiBrDo    varchar(20) = Null
  133357.  AS
  133358.     Declare @SSQL as varchar(8000)
  133359.     Create Table #Tab
  133360.     (
  133361.      DokId        int,
  133362.      Sifra_Oe    smallint,
  133363.      Sifra_Dok    smallint,
  133364.      Broj_Dok    int,
  133365.      Identif_br    varchar(25),
  133366.      Datum_Dok    smalldatetime,
  133367.      Sifra_Kup    char(6),
  133368.      Sifra_Art     varchar(20),
  133369.      SeriskiBr    varchar(20),
  133370.      Kolic        decimal(18,6),
  133371.      Iznos        decimal(18,6),
  133372.      Grupa        int,
  133373.          Sifra_Obj        int
  133374.     )
  133375.     Set @SSQL = ' Select S.DokId, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Identif_br, D.Datum_Dok, D.Sifra_Kup, S.Sifra_Art, B.SeriskiBr, 
  133376.             (Case When S.Kolic >= 0  Then 1 Else  -1  End), 
  133377.             (Case When S.Kolic >= 0  Then (1*S.DokCena) Else (-1*S.DokCena)  End) Iznos,
  133378.                         D.Sifra_Obj 
  133379.             From BrStavr B
  133380.             Inner Join Stavr S On S.DokID=B.DokID
  133381.             Inner Join Dokr D On D.DokrID=S.DokrID
  133382.             Where D.Sifra_Za = ''1'' '
  133383.     If @Sifra_Oe Is not Null
  133384.         Set @SSQL = @SSQL + ' And S.Sifra_Oe = ' + cast(@Sifra_Oe as varchar(6)) + ' '
  133385.     If @Koi_OE Is Not Null
  133386.         SET @SSQL = @SSQL + 'And S.Sifra_OE In (Select Sifra_OE From SGrOrg Where Sif_GrOrg=''' + @Koi_OE + ''') '
  133387.        If @Sifra_Art_Od IS NOT NULL 
  133388.         Set @SSQL = @SSQL + 'AND S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  133389.        If @Sifra_Art_Do IS NOT NULL 
  133390.         Set @SSQL = @SSQL + 'AND S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  133391.     If @SeriskiBrOd Is not Null
  133392.         Set @SSQL = @SSQL + ' And B.SeriskiBr >= ' + @SeriskiBrOd + ' '
  133393.     If @SeriskiBrDo Is not Null
  133394.         Set @SSQL = @SSQL + ' And B.SeriskiBr <= ' + @SeriskiBrDo + ' '
  133395.     If @Datum_Od Is Not Null
  133396.         Set @SSQL = @SSQL + ' And S.Datum_Dok >= ''' + Cast(@Datum_Od as varchar(30)) + ''' ' 
  133397.     If @Datum_Do Is Not Null
  133398.         Set @SSQL = @SSQL + ' And S.Datum_Dok <= ''' + Cast(@Datum_Do as varchar(30)) + ''' ' 
  133399.     If @Sifra_Kup Is not Null
  133400.         Set @SSQL = @SSQL + ' And D.Sifra_Kup = ' + @Sifra_Kup + ' '
  133401.     Set @SSQL = @SSQL + ' Order By S.DokID, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Identif_br, D.Datum_Dok, D.Sifra_Kup, S.Sifra_Art, B.SeriskiBr, D.Sifra_Obj '
  133402.     Insert Into #Tab(DokID, Sifra_Oe, Sifra_Dok, Broj_Dok, Identif_br, Datum_Dok, Sifra_Kup, Sifra_Art, SeriskiBr, Kolic, Iznos, Sifra_Obj) Exec(@SSQL)
  133403. --    select * from #Tab    
  133404.     Create Table #SerBr
  133405.     (
  133406.      Sifra_Art    varchar(20),
  133407.      Broj        Int,
  133408.      SeriskiBrOd    varchar(20),
  133409.      SeriskiBrDo    varchar(20)
  133410.     )
  133411.     Declare @SeriskiBr as varchar(20)
  133412.     Declare @SeriskiBrPred as varchar(20)
  133413.     Declare @Broj as int
  133414.     Declare @Sifra_Art as Varchar(20)
  133415.     Declare @DokID as int
  133416.     Declare @DokIDPred as int
  133417.     Set @Broj=1
  133418.     Declare SeriskiBroj Cursor Fast_Forward For 
  133419.         Select Sifra_Art, SeriskiBr, DokID From #Tab Order By DokID, Sifra_Art, SeriskiBr
  133420.     Open SeriskiBroj
  133421.     Fetch Next From SeriskiBroj Into @Sifra_Art, @SeriskiBr, @DokID
  133422.     While @@Fetch_Status = 0
  133423.     Begin
  133424.         If @SeriskiBrPred Is Null
  133425.         Begin
  133426.             Insert Into #SerBr(Broj, Sifra_Art, SeriskiBrOd) Values(@Broj, @Sifra_Art, @SeriskiBr)
  133427.             Update #Tab 
  133428.             Set Grupa = @Broj
  133429.             Where SeriskiBr=@SeriskiBr and Sifra_Art= @Sifra_Art and DokID=@DokID
  133430.             Set @SeriskiBrPred = @SeriskiBr
  133431.             Set @DokIDPred = @DokID
  133432.         End
  133433.         Else
  133434.         Begin
  133435.             If cast(@SeriskiBr as decimal(20,0)) = cast(@SeriskiBrPred as decimal(20,0))+ 1 and @DokID = @DokIDPred
  133436.             Begin    
  133437.                 Update #Tab 
  133438.                 Set Grupa = @Broj  
  133439.                 Where SeriskiBr=@SeriskiBr and DokID=@DokID
  133440.                 Set @SeriskiBrPred = @SeriskiBr
  133441.                 Set @DokIDPred = @DokID    
  133442.             End
  133443.             Else
  133444.             Begin
  133445.                 Update #SerBr
  133446.                 Set SeriskiBrDo = @SeriskiBrPred Where Broj=@Broj
  133447.                 Set @Broj = @Broj + 1
  133448.                 Insert Into #SerBr (Broj, Sifra_Art, SeriskiBrOd) Select @Broj, @Sifra_Art, @SeriskiBr
  133449.                 Update #Tab 
  133450.                 Set Grupa = @Broj
  133451.                 Where SeriskiBr=@SeriskiBr and DokID=@DokID
  133452.                 Set @SeriskiBrPred = @SeriskiBr
  133453.                 Set @DokIDPred = @DokID    
  133454.             End    
  133455.         End        
  133456.         Fetch Next From SeriskiBroj Into @Sifra_Art, @SeriskiBr, @DokID
  133457.     End
  133458.         Update #SerBr
  133459.         Set SeriskiBrDo = @SeriskiBr Where Broj=@Broj
  133460.     Close SeriskiBroj
  133461.     Deallocate SeriskiBroj
  133462.  
  133463.     Set @SSQL = ' Select  T.Sifra_Oe, T.Sifra_Dok, T.Broj_Dok, T.Identif_br, T.Datum_Dok, T.Sifra_Kup, Kup.ImeKup, Kup.Adresa, Kup.SMesto, T.Sifra_Art, K.ImeArt, T.SeriskiBr, 
  133464.                 T.Kolic, T.Iznos, T.Grupa, (Rtrim(SB.SeriskiBrOd)+''-''+Rtrim(SB.SeriskiBrDo)) SerBrOdDo, Kup.Sifra_Grad, G.ImeGrad, T.Sifra_Obj
  133465.             From #Tab T
  133466.             Inner Join Katart K On K.Sifra_Art=T.Sifra_Art 
  133467.             Left Outer Join Komint Kup On Kup.Sifra_Kup=T.Sifra_Kup
  133468.             Left Outer Join #SerBr SB On SB.Broj = T.Grupa 
  133469.             Left Outer Join Grad G On G.Sifra_Grad=Kup.Sifra_Grad '
  133470.               Set @SSQL=@SSQL+'ORDER BY T.Grupa'
  133471.     Exec(@SSQL)
  133472. Go
  133473. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbapoarthierarhii]'))
  133474. drop procedure [dbo].[sp_prodazbapoarthierarhii]
  133475.  
  133476. Go
  133477.  
  133478. CREATE  PROCEDURE sp_ProdazbaPoArtHierarhii
  133479.     @Sifra_OE     Smallint = Null,
  133480.     @KoiOE     Varchar(300) = Null,
  133481.     @Datum_Od     Smalldatetime = Null,
  133482.     @Datum_Do     Smalldatetime = Null,
  133483.     @Sifra_Art_Od     Varchar(20)= Null,
  133484.     @Sifra_Art_Do     Varchar(20) = Null,
  133485.     @Sifra_Kup_Od Char(6) = Null,
  133486.     @Sifra_Kup_Do Char(6) = Null,
  133487.     @Sifra_Gr     Char(3) = Null,
  133488.     @Sifra_Podg     Char(6) = Null,
  133489.     @Sifra_Brand     Smallint = Null,
  133490.     @Sifra_ZBrand     Smallint = Null,
  133491.     @Kto         Char(6) = Null,
  133492.     @Lokacija     Varchar(10) = Null,
  133493.     @Drugo1    smallint = Null,
  133494.     @Drugo2    smallint = Null,
  133495.     @Drugo3    smallint = Null,
  133496.     @Drugo4    smallint = Null,
  133497.     @Drugo5    smallint = Null,
  133498.     @TipKup     Varchar(200) = Null,
  133499.     @Koi_Gradovi     Varchar(200) = Null,
  133500.     @Koi_Regioni    varchar(200) = Null,
  133501.     @Sifra_Pat    smallint    = Null,
  133502.     @KomercKako    char(1) = 'I',                 -- I -  Istoriski od AnFinDok,       T - Tekovno od Komint    
  133503.     @Pod1         Smallint = Null,
  133504.     @Pod2         Smallint = Null,
  133505.     @Pod3         Smallint = Null,
  133506.     @Pod4         Smallint = Null,
  133507.     @Pod5         Smallint = Null,
  133508.     @Posrednik    char(6) = Null,
  133509.     @Sifra_Nivo    char(2) = Null,
  133510.     @TipDokProd    varchar(200) = Null,
  133511.     @Podred     Char(1) = 3,
  133512.     @PrikaziSto    char(1) = 'K',    -- K - Kolicina, T - Tezina, V - Vrednost, P-Paketi, L - Litri
  133513.     @ZalihaOdOE    varchar(300) = Null,
  133514.     @Sif_KHierLike     nvarchar(20)= Null,
  133515.     @Sifra_KHier     nvarchar(20)=Null,
  133516.     @ZalOdOENadzor varchar(300) = Null,
  133517.     @KojIzv    char(1) = 'K',    -- K - Po Kanali na prodazba,   T - Tipovi na kupuvaci,    R - Po Regioni    P - Patnici
  133518.     @Koi_Iminja    char(1) = 'A',    -- Alternativni (stranski) iminja
  133519. --    @Komint_KObj     Char(1) = 'K'
  133520.     @TopKolku    smallint = Null,
  133521.     @Datum_TopOd smalldatetime = Null,
  133522.     @Datum_TopDo smalldatetime = Null,
  133523.     @Baza2    varchar(20) = Null
  133524. AS
  133525.     CREATE            Table #Prod
  133526.     (
  133527.      Sifra_Kolona        varchar(10),
  133528.      Ime_Kolona        varchar(40),
  133529.      Sifra_Red        nvarchar(20),
  133530.      Ime_Red        nvarchar(40),
  133531.      Sifra_Red_2        nvarchar(20),
  133532.      Ime_Red_2        nvarchar(50),
  133533.      PrethGodTekPromet    decimal(18,6),
  133534.      PrethGodKumulPromet    decimal(18,6),
  133535.      TekPromet        decimal(18,6),
  133536.      KumulPromet        decimal(18,6)
  133537.      )
  133538.     Declare @SSQL Varchar(8000)
  133539.     Declare @SSQLFrom Varchar(8000)
  133540.     Declare @SSQLFromB2 Varchar(8000)
  133541.     Declare @SSQLUsl Varchar(8000)
  133542.     Declare @SSQLDat Varchar(8000)
  133543.     Declare @SSQLGroup Varchar(8000)
  133544.     Set @SSQLFrom = ' '
  133545.     Set @SSQLFromB2 = ' '
  133546.     Set @SSQLUsl = ' '
  133547.     Set @SSQLDat = ' '
  133548.     Set @SSQLGroup = ' '
  133549.     Declare @DatOd as smalldatetime
  133550.     Declare @DatDo as smalldatetime
  133551.     Set @SSQLUsl = @SSQLUsl + 'Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D'' '
  133552.     If @Sifra_OE Is Not NULL
  133553.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  133554.     If @KoiOE Is Not NULL
  133555.              Set @SSQLUsl  = @SSQLUsl + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  133556.     If @Koi_Gradovi Is Not NULL    
  133557.         Begin
  133558.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  133559.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  133560.         End
  133561.     If @Koi_Regioni Is Not NULL    
  133562.         Begin
  133563.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  133564.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  133565.         End
  133566.     If @TipKup Is Not NULL
  133567.         Set @SSQLUsl = @SSQLUsl + ' And KUP.TipKup In (' + @TipKup + ') '
  133568.     If @Sifra_Nivo Is Not NULL
  133569.         Set @SSQLUsl = @SSQLUsl + ' And KUP.Sifra_Nivo = ''' + @Sifra_Nivo + ''' '
  133570.     If @Sifra_Kup_Od Is Not NULL
  133571.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  133572.     If @Sifra_Kup_Do Is Not NULL
  133573.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  133574.        If @KomercKako = 'I'
  133575.         If @Sifra_Pat IS NOT NULL
  133576.             SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  133577.        If @KomercKako = 'T'
  133578.         If @Sifra_Pat IS NOT NULL
  133579.             Set @SSQLUsl = @SSQLUsl + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat =  ' + Cast(@Sifra_Pat as varchar(5)) + ') 
  133580.                         OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat  =  ' + Cast(@Sifra_Pat as varchar(5)) + ')) '
  133581.     If @Sifra_Art_Od Is Not Null
  133582.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  133583.     If @Sifra_Art_Do Is Not Null
  133584.         Set @SSQLUsl = @SSQLUsl + 'And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  133585.     If @Sif_KHierLike IS NOT NULL 
  133586.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_KHier Like ''' + @Sif_KHierLike + '%'' '
  133587.     If @Sifra_KHier IS NOT NULL 
  133588.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_KHier=''' + @Sifra_KHier + ''' '
  133589.     If @Sifra_Brand Is Not Null
  133590.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=' + Cast(@Sifra_Brand As Varchar(6)) + ' '
  133591.     If @Sifra_ZBrand Is Not Null
  133592.         Set @SSQLUsl = @SSQLUsl + 'And B.Sifra_Drg1=' + Cast(@Sifra_ZBrand As Varchar(6)) + ' '
  133593.     If @Sifra_Podg Is Not Null
  133594.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Podg=''' + @Sifra_Podg + ''' '
  133595.     If @Sifra_Gr Is Not Null
  133596.         Set @SSQLUsl = @SSQLUsl + 'And PG.Sifra_Gr=''' + @Sifra_Gr + ''' '
  133597.     If @Pod1 Is Not NULL
  133598.            Begin
  133599.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  133600.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  133601.            End
  133602.     If @Pod2 Is Not NULL
  133603.            Begin
  133604.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  133605.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  133606.            End
  133607.     If @Pod3 Is Not NULL
  133608.            Begin
  133609.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  133610.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  133611.            End
  133612.     If @Pod4 Is Not NULL
  133613.            Begin
  133614.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  133615.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  133616.            End
  133617.     If @Pod5 Is Not NULL
  133618.            Begin
  133619.         Set @SSQLUsl = @SSQLUsl + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  133620.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  133621.            End
  133622.     If @Lokacija Is Not NULL
  133623.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  133624.     If @Kto Is Not NULL
  133625.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  133626.     If @TipDokProd IS NOT NULL
  133627.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  133628.     If @Drugo1 Is Not NULL
  133629.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  133630.     If @Drugo2 Is Not NULL
  133631.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  133632.     If @Drugo3 Is Not NULL
  133633.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  133634.     If @Drugo4 Is Not NULL
  133635.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  133636.     If @Drugo5 Is Not NULL
  133637.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  133638.     If @Posrednik Is Not NULL
  133639.         Set @SSQLUsl = @SSQLUsl + ' And PM.Posrednik=' + Cast(@Posrednik As Varchar(6)) + ' '
  133640.     -----------------------------------------------------------------------------------------------------------------------------------------------------------------
  133641.     If @KojIzv = 'K'    -------------------- PRODAZBA PO KANALI ----------------------------
  133642.     Begin
  133643.         If @Koi_Iminja = 'A'
  133644.             Set @SSQL = ' Select (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End), VPJ.Alt_Ime_VPJ, 
  133645.                         H3.Sifra_KHier, H3.Alt_ImeKHier, H2.Sifra_KHier, H2.Alt_ImeKHier, '
  133646.         Else
  133647.             Set @SSQL = ' Select (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End), VPJ.Ime_VPJ, 
  133648.                         H3.Sifra_KHier, H3.Ime_KHier, H2.Sifra_KHier, H2.Ime_KHier, '
  133649.         If @PrikaziSto = 'K'
  133650.             Set @SSQL = @SSQL + ' Sum(S.Kolic) '
  133651.         Else If @PrikaziSto = 'T'
  133652.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Tezina/1000) '
  133653.         Else If @PrikaziSto = 'V'
  133654.             Set @SSQL = @SSQL + ' Sum(dbo.fn_Vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) '
  133655.         Else If @PrikaziSto = 'P'
  133656.             Set @SSQL = @SSQL + ' Sum(Case K.ImaKomerc When 0 Then S.kolic Else (S.Kolic/K.ImaKomerc) End ) '
  133657.         Else If @PrikaziSto = 'L'
  133658.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Volumen/1000) '
  133659.         Set @SSQLFrom = @SSQLFrom + ' From Dokr D
  133660.             Inner Join Stavr S On S.DokrID=D.DokrID 
  133661.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133662.             Left Outer Join KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  133663.             Left Outer Join KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  133664.             Left Outer Join KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  133665.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133666.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  133667.             Left Outer Join VidProdObj VPJ On VPJ.Sifra_Vpj=(Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End) '
  133668.         If @Sifra_Gr Is Not Null
  133669.             Set @SSQLFrom = @SSQLFrom + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133670.         If @Sifra_ZBrand Is Not Null
  133671.             Set @SSQLFrom = @SSQLFrom + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133672.         If @Baza2 Is Not Null
  133673.         Begin 
  133674.             Set @SSQLFromB2 = @SSQLFromB2 + ' From ' + @Baza2 + '..Dokr D
  133675.                 Inner Join ' + @Baza2 + '..Stavr S On S.DokrID=D.DokrID 
  133676.                 Inner Join ' + @Baza2 + '..KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133677.                 Left Outer Join ' + @Baza2 + '..KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  133678.                 Left Outer Join ' + @Baza2 + '..KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  133679.                 Left Outer Join ' + @Baza2 + '..KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  133680.                 Left Outer Join ' + @Baza2 + '..Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133681.                 Left Outer Join ' + @Baza2 + '..KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  133682.                 Left Outer Join ' + @Baza2 + '..VidProdObj VPJ On VPJ.Sifra_Vpj=(Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End) '
  133683.             If @Sifra_Gr Is Not Null
  133684.                 Set @SSQLFromB2 = @SSQLFromB2 + 'Inner Join ' + @Baza2 + '..Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133685.             If @Sifra_ZBrand Is Not Null
  133686.                 Set @SSQLFromB2 = @SSQLFromB2 + 'Inner Join ' + @Baza2 + '..DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133687.         End
  133688.         If @Koi_Iminja = 'A'
  133689.             Set @SSQLGroup = ' Group By (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End), VPJ.Alt_Ime_VPJ, 
  133690.                         H3.Sifra_KHier, H3.Alt_ImeKHier, H2.Sifra_KHier, H2.Alt_ImeKHier '
  133691.         Else
  133692.             Set @SSQLGroup = ' Group By (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Vpj Else Kup.Sifra_Vpj End), VPJ.Ime_VPJ, 
  133693.                         H3.Sifra_KHier, H3.Ime_KHier, H2.Sifra_KHier, H2.Ime_KHier '
  133694.     End
  133695.     If @KojIzv = 'R'    -------------------- PRODAZBA PO REGIONI ----------------------------
  133696.     Begin
  133697.         Set @SSQL = ' Select (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End), R.ImeRegion, '
  133698.         If @Koi_Iminja = 'A'
  133699.             Set @SSQL = @SSQL + ' H3.Sifra_KHier, H3.Alt_ImeKHier, H2.Sifra_KHier, H2.Alt_ImeKHier, '
  133700.         Else
  133701.             Set @SSQL = @SSQL + ' H3.Sifra_KHier, H3.Ime_KHier, H2.Sifra_KHier, H2.Ime_KHier, '
  133702.         If @PrikaziSto = 'K'
  133703.             Set @SSQL = @SSQL + ' Sum(S.Kolic) '
  133704.         Else If @PrikaziSto = 'T'
  133705.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Tezina/1000) '
  133706.         Else If @PrikaziSto = 'V'
  133707.             Set @SSQL = @SSQL + ' Sum(dbo.fn_Vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) '
  133708.         Else If @PrikaziSto = 'P'
  133709.             Set @SSQL = @SSQL + ' Sum(Case K.ImaKomerc When 0 Then S.kolic Else (S.Kolic/K.ImaKomerc) End ) '
  133710.         Else If @PrikaziSto = 'L'
  133711.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Volumen/1000) '
  133712.         Set @SSQLFrom = @SSQLFrom + ' From Dokr D
  133713.             Inner Join Stavr S On S.DokrID=D.DokrID 
  133714.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133715.             Left Outer Join KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  133716.             Left Outer Join KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  133717.             Left Outer Join KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  133718.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133719.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  133720.             Left Outer Join GRegion R On R.Sifra_Reg=(Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) '
  133721.         If @Sifra_Gr Is Not Null
  133722.             Set @SSQLFrom = @SSQLFrom + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133723.         If @Sifra_ZBrand Is Not Null
  133724.             Set @SSQLFrom = @SSQLFrom + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133725.         If @Baza2 Is Not Null
  133726.         Begin
  133727.             Set @SSQLFromB2 = @SSQLFromB2 + ' From ' + @Baza2 + '..Dokr D
  133728.                 Inner Join ' + @Baza2 + '..Stavr S On S.DokrID=D.DokrID 
  133729.                 Inner Join ' + @Baza2 + '..KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133730.                 Left Outer Join ' + @Baza2 + '..KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  133731.                 Left Outer Join ' + @Baza2 + '..KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  133732.                 Left Outer Join ' + @Baza2 + '..KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  133733.                 Left Outer Join ' + @Baza2 + '..Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133734.                 Left Outer Join ' + @Baza2 + '..KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  133735.                 Left Outer Join ' + @Baza2 + '..GRegion R On R.Sifra_Reg=(Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End) '
  133736.             If @Sifra_Gr Is Not Null
  133737.                 Set @SSQLFromB2 = @SSQLFromB2 + 'Inner Join ' + @Baza2 + '..Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133738.             If @Sifra_ZBrand Is Not Null
  133739.                 Set @SSQLFromB2 = @SSQLFromB2 + 'Inner Join ' + @Baza2 + '..DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133740.         End
  133741.         Set @SSQLGroup = 'Group By (Case When D.Sifra_Obj Is Not Null Then KO.Sifra_Reg Else Kup.Sifra_Reg End), R.ImeRegion, '
  133742.         If @Koi_Iminja = 'A'
  133743.             Set @SSQLGroup = @SSQLGroup + ' H3.Sifra_KHier, H3.Alt_ImeKHier, H2.Sifra_KHier, H2.Alt_ImeKHier '
  133744.         Else
  133745.             Set @SSQLGroup = @SSQLGroup + ' H3.Sifra_KHier, H3.Ime_KHier, H2.Sifra_KHier, H2.Ime_KHier '
  133746.     End
  133747.     If @KojIzv = 'T'    -------------------- PRODAZBA PO TIPOVI KUPUVACI ----------------------------
  133748.     Begin
  133749.         Set @SSQL = ' Select (Case When Kup.Sifra_Tip = 1 Then Kup.Sifra_Kup Else Cast(Kup.Sifra_Tip as varchar(10)) End),
  133750.                     (Case When Kup.Sifra_Tip = 1 Then Kup.ImeKup Else TK.ImeTip End),  '
  133751.         If @Koi_Iminja = 'A'
  133752.             Set @SSQL = @SSQL + ' H3.Sifra_KHier, H3.Alt_ImeKHier, Null, Null, '--H2.Sifra_KHier, H2.Alt_ImeKHier, '
  133753.         Else
  133754.             Set @SSQL = @SSQL + ' H3.Sifra_KHier, H3.Ime_KHier, Null, Null, ' --H2.Sifra_KHier, H2.Ime_KHier, '
  133755.         If @PrikaziSto = 'K'
  133756.             Set @SSQL = @SSQL + ' Sum(S.Kolic) '
  133757.         Else If @PrikaziSto = 'T'
  133758.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Tezina/1000) '
  133759.         Else If @PrikaziSto = 'V'
  133760.             Set @SSQL = @SSQL + ' Sum(dbo.fn_Vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) '
  133761.         Else If @PrikaziSto = 'P'
  133762.             Set @SSQL = @SSQL + ' Sum(Case K.ImaKomerc When 0 Then S.kolic Else (S.Kolic/K.ImaKomerc) End ) '
  133763.         Else If @PrikaziSto = 'L'
  133764.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Volumen/1000) '
  133765.         Set @SSQLFrom = @SSQLFrom + ' From Dokr D
  133766.             Inner Join Stavr S On S.DokrID=D.DokrID 
  133767.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133768.             Left Outer Join KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  133769.             Left Outer Join KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  133770.             Left Outer Join KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  133771.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133772.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  133773.             Left Outer Join TipKomint TK On TK.Sifra_Tip=Kup.Sifra_Tip '
  133774.         If @Sifra_Gr Is Not Null
  133775.             Set @SSQLFrom = @SSQLFrom + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133776.         If @Sifra_ZBrand Is Not Null
  133777.             Set @SSQLFrom = @SSQLFrom + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133778.         If @Baza2 Is Not Null
  133779.         Begin
  133780.             Set @SSQLFromB2 = @SSQLFromB2 + ' From ' + @Baza2 + '..Dokr D
  133781.                 Inner Join ' + @Baza2 + '..Stavr S On S.DokrID=D.DokrID 
  133782.                 Inner Join ' + @Baza2 + '..KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133783.                 Left Outer Join ' + @Baza2 + '..KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  133784.                 Left Outer Join ' + @Baza2 + '..KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  133785.                 Left Outer Join ' + @Baza2 + '..KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier
  133786.                 Left Outer Join ' + @Baza2 + '..Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133787.                 Left Outer Join ' + @Baza2 + '..KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  133788.                 Left Outer Join ' + @Baza2 + '..TipKomint TK On TK.Sifra_Tip=Kup.Sifra_Tip '
  133789.             If @Sifra_Gr Is Not Null
  133790.                 Set @SSQLFromB2 = @SSQLFromB2 + 'Inner Join ' + @Baza2 + '..Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133791.             If @Sifra_ZBrand Is Not Null
  133792.                 Set @SSQLFromB2 = @SSQLFromB2 + 'Inner Join ' + @Baza2 + '..DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133793.         End
  133794.         Set @SSQLGroup = ' Group By (Case When Kup.Sifra_Tip = 1 Then Kup.Sifra_Kup Else Cast(Kup.Sifra_Tip as varchar(10)) End),
  133795.                         (Case When Kup.Sifra_Tip = 1 Then Kup.ImeKup Else TK.ImeTip End),  '
  133796.         If @Koi_Iminja = 'A'
  133797.             Set @SSQLGroup = @SSQLGroup + ' H3.Sifra_KHier, H3.Alt_ImeKHier '--H2.Sifra_KHier, H2.Alt_ImeKHier, '
  133798.         Else
  133799.             Set @SSQLGroup = @SSQLGroup + ' H3.Sifra_KHier, H3.Ime_KHier ' --H2.Sifra_KHier, H2.Ime_KHier, '
  133800.     End
  133801.     If @KojIzv = 'P'    -------------------- PRODAZBA PO PATNICI, KOMINTENTI I OBJEKTI ----------------------------
  133802.     Begin
  133803.         If @TopKolku > 0
  133804.         Begin
  133805.             Create Table #Art
  133806.             (
  133807.              Sifra_Art    varchar(20),
  133808.              Vrednost    decimal(18,6)
  133809.             )
  133810.             Set @SSQL = 'Select Top ' + Cast(@TopKolku as varchar(6)) + ' S.Sifra_Art, Sum(dbo.fn_Vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa))
  133811.                     From Dokr D
  133812.                     Inner Join Stavr S On S.DokrID=D.DokrID 
  133813.                     Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133814.                     Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133815.                     Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup  '
  133816.                 If @Sifra_Gr Is Not Null
  133817.                     Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133818.                 If @Sifra_ZBrand Is Not Null
  133819.                     Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133820.                 Set @SSQLDat = ' And D.Datum_Dok >= ''' + Cast(@Datum_TopOd as varchar(30)) + ''' And D.Datum_Dok <= ''' + Cast(@Datum_TopDo as varchar(30)) + ''' '
  133821.                 Set @SSQLGroup = 'Group By S.Sifra_Art
  133822.                         Order By Sum(dbo.fn_Vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) Desc '
  133823.             Insert Into #Art Exec(@SSQL+@SSQLUsl+@SSQLDat+@SSQLGroup)
  133824.         End
  133825.         Set @SSQL = ' Select S.Sifra_Art, K.ImeArt, '
  133826.         If @Koi_Iminja = 'A'
  133827.             Set @SSQL = @SSQL + ' D.Sifra_Pat, Pat.ImePat, (Case When D.Sifra_Obj Is Not Null Then Cast(D.Sifra_Obj as varchar(6)) Else D.Sifra_Kup End), 
  133828.                                     (Case When D.Sifra_Obj Is Not Null Then KO.ImeObj Else Kup.Alt_ImeKup End),  '   -- treba Alt_ImeObj, ama odkako ke se dodajt vo tabelata
  133829.         Else
  133830.             Set @SSQL = @SSQL + ' D.Sifra_Pat, Pat.ImePat, (Case When D.Sifra_Obj Is Not Null Then Cast(D.Sifra_Obj as varchar(6)) Else D.Sifra_Kup End), 
  133831.                                     (Case When D.Sifra_Obj Is Not Null Then KO.ImeObj Else Kup.ImeKup End),  ' 
  133832.         If @PrikaziSto = 'K'
  133833.                 Set @SSQL = @SSQL + ' Sum(S.Kolic) '
  133834.         Else If @PrikaziSto = 'T'
  133835.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Tezina/1000) '
  133836.         Else If @PrikaziSto = 'V'
  133837.             Set @SSQL = @SSQL + ' Sum(dbo.fn_Vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) '
  133838.         Else If @PrikaziSto = 'P'
  133839.             Set @SSQL = @SSQL + ' Sum(Case K.ImaKomerc When 0 Then S.kolic Else (S.Kolic/K.ImaKomerc) End ) '
  133840.         Else If @PrikaziSto = 'L'
  133841.             Set @SSQL = @SSQL + ' Sum(S.Kolic*K.Volumen/1000) '
  133842.         Set @SSQL = @SSQL + ' From Dokr D
  133843.             Inner Join Stavr S On S.DokrID=D.DokrID 
  133844.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art 
  133845.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup 
  133846.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup 
  133847.             Left Outer Join Patnici Pat On  Pat.Sifra_Pat = D.Sifra_Pat '
  133848.         If @TopKolku > 0
  133849.             Set @SSQL = @SSQL + ' Inner Join #Art A On A.Sifra_Art = S.Sifra_Art '
  133850.         If @Sifra_Gr Is Not Null
  133851.             Set @SSQL = @SSQL + 'Inner Join Podgrupi PG On K.Sifra_Podg=PG.Sifra_Podg '
  133852.         If @Sifra_ZBrand Is Not Null
  133853.             Set @SSQL = @SSQL + 'Inner Join DrgPodel B On K.Sifra_Drg=B.Sifra_Drg '
  133854.         Set @SSQLGroup = 'Group By S.Sifra_Art, K.ImeArt, '
  133855.         If @Koi_Iminja = 'A'
  133856.             Set @SSQLGroup = @SSQLGroup + ' D.Sifra_Pat, Pat.ImePat, (Case When D.Sifra_Obj Is Not Null Then Cast(D.Sifra_Obj as varchar(6)) Else D.Sifra_Kup End), 
  133857.                                     (Case When D.Sifra_Obj Is Not Null Then KO.ImeObj Else Kup.Alt_ImeKup End)  '   -- treba Alt_ImeObj, ama odkako ke se dodajt vo tabelata
  133858.         Else
  133859.             Set @SSQLGroup = @SSQLGroup + ' D.Sifra_Pat, Pat.ImePat, (Case When D.Sifra_Obj Is Not Null Then Cast(D.Sifra_Obj as varchar(6)) Else D.Sifra_Kup End), 
  133860.                                     (Case When D.Sifra_Obj Is Not Null Then KO.ImeObj Else Kup.ImeKup End)  ' 
  133861.         If @PrikaziSto = 'K'
  133862.             Set @SSQLGroup = @SSQLGroup + ' Order By Sum(S.Kolic) Desc '
  133863.         Else If @PrikaziSto = 'T'
  133864.             Set @SSQLGroup = @SSQLGroup + ' Order By Sum(S.Kolic*K.Tezina/1000) Desc '
  133865.         Else If @PrikaziSto = 'V'
  133866.             Set @SSQLGroup = @SSQLGroup + ' Order By Sum(dbo.fn_Vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.Posn, S.Uces, D.Kasa)) Desc '
  133867.         Else If @PrikaziSto = 'P'
  133868.             Set @SSQLGroup = @SSQLGroup + ' Order By Sum(Case K.ImaKomerc When 0 Then S.kolic Else (S.Kolic/K.ImaKomerc) End ) Desc '
  133869.         Else If @PrikaziSto = 'L'
  133870.             Set @SSQLGroup = @SSQLGroup + ' Order By Sum(S.Kolic*K.Volumen/1000) Desc '
  133871.     End
  133872.     -- Promet vo prethodna godina za periodot od do datum
  133873.     If @KojIzv <> 'P'   -- Dokolku sakame izvestaj po patnici ne ni treba
  133874.     Begin
  133875.         Set @DatOd = dbo.fn_VratiDatumOdDo(Cast(Year(@Datum_Od)-1 as Varchar(4)), Cast(Month(@Datum_Od) as varchar(2)), Cast(Day(@Datum_Od) as varchar(2)))
  133876.         Set @DatDo = dbo.fn_VratiDatumOdDo(Cast(Year(@Datum_Do)-1 as Varchar(4)), Cast(Month(@Datum_Do) as varchar(2)), Cast(Day(@Datum_Do) as varchar(2)))
  133877.         Set @SSQLDat = ' And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  133878.         If @Baza2 Is Not Null
  133879.             Insert Into #Prod (Sifra_Kolona, Ime_Kolona, Sifra_Red, Ime_Red, Sifra_Red_2, Ime_Red_2, PrethGodTekPromet) 
  133880.             Exec(@SSQL + @SSQLFromB2 + @SSQLUsl + @SSQLDat + @SSQLGroup)
  133881.         Else
  133882.             Insert Into #Prod (Sifra_Kolona, Ime_Kolona, Sifra_Red, Ime_Red, Sifra_Red_2, Ime_Red_2, PrethGodTekPromet) 
  133883.             Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLDat + @SSQLGroup)
  133884.     End
  133885.     -- Kumulativen Promet vo prethodna godina za periodot od 01.01.prethgod 
  133886.     If @KojIzv <> 'P'   -- Dokolku sakame izvestaj po patnici ne ni treba
  133887.     Begin
  133888.         Set @DatOd = dbo.fn_VratiDatumOdDo(Cast(Year(@Datum_Od)-1 as Varchar(4)), '01', '01')
  133889.         Set @DatDo = dbo.fn_VratiDatumOdDo(Cast(Year(@Datum_Do)-1 as Varchar(4)), Cast(Month(@Datum_Do) as varchar(2)), Cast(Day(@Datum_Do) as varchar(2)))
  133890.         Set @SSQLDat = ' And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  133891.         If @Baza2 Is Not Null
  133892.             Insert Into #Prod (Sifra_Kolona, Ime_Kolona, Sifra_Red, Ime_Red, Sifra_Red_2, Ime_Red_2, PrethGodKumulPromet) 
  133893.             Exec(@SSQL + @SSQLFromB2 + @SSQLUsl + @SSQLDat + @SSQLGroup)
  133894.         Else
  133895.             Insert Into #Prod (Sifra_Kolona, Ime_Kolona, Sifra_Red, Ime_Red, Sifra_Red_2, Ime_Red_2, PrethGodKumulPromet) 
  133896.             Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLDat + @SSQLGroup)
  133897.     End
  133898.     -- Promet za period Od - Do tekovna godina
  133899.     Set @DatOd = @Datum_Od
  133900.     Set @DatDo = @Datum_Do
  133901.     Set @SSQLDat = ' And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  133902. print @SSQL + @SSQLUsl + @SSQLDat + @SSQLGroup
  133903.     Insert Into #Prod (Sifra_Kolona, Ime_Kolona, Sifra_Red, Ime_Red, Sifra_Red_2, Ime_Red_2, TekPromet) 
  133904.     Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLDat + @SSQLGroup)
  133905.     -- Kumulativen Promet vo tekovnata godina
  133906.     If @KojIzv <> 'P'    -- Dokolku sakame izvestaj po patnici ne ni treba
  133907.     Begin
  133908.         Set @DatOd = dbo.fn_VratiDatumOdDo(Cast(Year(@Datum_Od) as Varchar(4)), '01', '01')
  133909.         Set @DatDo = @Datum_Do
  133910.         Set @SSQLDat = ' And S.Datum_Dok>=''' + Cast(@DatOd As Varchar(25)) + ''' And S.Datum_Dok<=''' + Cast(@DatDo As Varchar(25)) + ''' '
  133911.         Insert Into #Prod (Sifra_Kolona, Ime_Kolona, Sifra_Red, Ime_Red, Sifra_Red_2, Ime_Red_2, KumulPromet) 
  133912.         Exec(@SSQL + @SSQLFrom + @SSQLUsl + @SSQLDat + @SSQLGroup)
  133913.     End
  133914.     Select (Case When Sifra_Kolona Is Null Then ' ' Else Sifra_Kolona End) Sifra_Kolona, (Case When Ime_Kolona Is Null Then ' ' Else Ime_Kolona End) Ime_Kolona, 
  133915.         (Case When Sifra_Red Is Null Then ' ' Else Sifra_Red End) Sifra_Red, (Case When Ime_Red Is Null Then ' ' Else Ime_Red End) Ime_Red, 
  133916.         (Case When Sifra_Red_2 Is Null Then ' ' Else Sifra_Red_2 End) Sifra_Red_2, (Case When Ime_Red_2 Is Null Then ' ' Else Ime_Red_2 End) Ime_Red_2, 
  133917.         Sum(PrethGodTekPromet) PrethGodTekPromet, Sum(PrethGodKumulPromet) PrethGodKumulPromet, 
  133918.         Sum(TekPromet) TekPromet, Sum(KumulPromet) KumulPromet
  133919.     From #Prod 
  133920.     Group By (Case When Sifra_Kolona Is Null Then ' ' Else Sifra_Kolona End), (Case When Ime_Kolona Is Null Then ' ' Else Ime_Kolona End), 
  133921.         (Case When Sifra_Red Is Null Then ' ' Else Sifra_Red End), (Case When Ime_Red Is Null Then ' ' Else Ime_Red End),
  133922.         (Case When Sifra_Red_2 Is Null Then ' ' Else Sifra_Red_2 End), (Case When Ime_Red_2 Is Null Then ' ' Else Ime_Red_2 End)
  133923.     Order By Sifra_Red, Sifra_Red_2
  133924.  
  133925. Go
  133926. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbapodnabcena]'))
  133927. drop procedure [dbo].[sp_prodazbapodnabcena]
  133928.  
  133929. Go
  133930.  
  133931.  
  133932.  
  133933.  
  133934.  
  133935. CREATE    PROCEDURE sp_ProdazbaPodNabCena
  133936.     @Sifra_OE Smallint = Null, 
  133937.     @KoiOE Varchar(300) = Null,
  133938.     @Pod1 Smallint = Null,
  133939.     @Pod2 Smallint = Null,
  133940.     @Pod3 Smallint = Null,
  133941.     @Pod4 Smallint = Null,
  133942.     @Pod5 Smallint = Null,
  133943.     @Sifra_Tip Smallint = Null,
  133944.     @Datum_Od Smalldatetime = Null,
  133945.     @Datum_Do Smalldatetime = Null,
  133946.     @Sifra_Brand Smallint = Null,
  133947.     @Sifra_Art_Od Varchar(20) = Null,
  133948.     @Sifra_Art_Do Varchar(20) = Null,
  133949.     @Sifra_Kup_Od Char(6) = Null,
  133950.     @Sifra_Kup_Do Char(6) = Null,
  133951.     @Kto Char(6) = Null,
  133952.     @Sifra_Gr Char(3) = Null,
  133953.     @Sifra_Podg Char(6) = Null,
  133954.     @Lokacija Varchar(10) = Null,
  133955.     @TipKup Char(11) = Null,
  133956.     @Komint_KObj Char(1) = 'K',
  133957.     @Koi_Gradovi varchar(200) = Null,
  133958.     @Koi_Regioni varchar(200) = Null,
  133959.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  133960.     @Drugo1    smallint = Null,
  133961.     @Drugo2    smallint = Null,
  133962.     @Drugo3    smallint = Null,
  133963.     @Drugo4    smallint = Null,
  133964.     @Drugo5    smallint = Null,
  133965.     @Podred     Char(1) = Null,
  133966.     @KojaNabavna    Char(1) = 'D',        -- D - Prosecna po dokument,    P - Posledna nabavna 
  133967.     @Sifra_Pat smallint = Null,
  133968.     @KomercKako    char(1) = 'I',          --I - Istoriski od Dokr,   T - tekovno od Komint
  133969.     @TipDokProd    varchar(300) = Null
  133970. AS
  133971.     If @PoKojDatum = 'V'
  133972.             If @Datum_Do Is Not Null
  133973.         Set @Datum_Do = @Datum_Do + 1
  133974.     Set Nocount On
  133975.     Declare @SSQL Varchar(8000)
  133976.     Set @SSQL = 'Select D.Sifra_Kup, KUP.ImeKup, S.Sifra_Art, K.ImeArt,  K.Edmera, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Datum_Dok,
  133977.             S.Kolic, K.Sifra_Tar, '
  133978.     If @KojaNabavna = 'D' 
  133979.         Set @SSQL = @SSQL + ' S.NabCena, '
  133980.     Else If @KojaNabavna = 'P' 
  133981.         Set @SSQL = @SSQL + ' dbo.fn_VratiCena(SO.Cena,  SO.POsn, SO.DanCena, ''N'') as NabCena, '
  133982.     Set @SSQL = @SSQL + ' dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) as ProdCena, '
  133983.     If @KojaNabavna = 'D' 
  133984.         Set @SSQL = @SSQL + ' S.Kolic * (dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) - S.NabCena) VrRazlika '
  133985.     Else If @KojaNabavna = 'P' 
  133986.         Set @SSQL = @SSQL + ' S.Kolic * (dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) - 
  133987.                             dbo.fn_VratiCena(SO.Cena,  SO.POsn, SO.DanCena, ''N'')) VrRazlika '
  133988.     If @KomercKako = 'T'
  133989.         SET @SSQL = @SSQL + ', Kup.Sifra_Pat, PT.ImePat '
  133990.     ELSE
  133991.         SET @SSQL = @SSQL + ', D.Sifra_Pat, PT.ImePat '
  133992.     Set @SSQL = @SSQL + 'From Stavr S 
  133993.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  133994.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  133995.         Left Outer Join Soart SO On SO.Sifra_Oe = S.Sifra_Oe and SO.Sifra_Art = S.Sifra_Art
  133996.         Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  133997.          Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  133998.     If @KomercKako = 'T'
  133999.         SET @SSQL = @SSQL + ' LEFT OUTER JOIN Patnici PT ON Kup.Sifra_Pat=PT.Sifra_Pat '
  134000.     ELSE
  134001.         SET @SSQL = @SSQL + ' LEFT OUTER JOIN Patnici PT ON D.Sifra_Pat=PT.Sifra_Pat '
  134002.     If @Sifra_Gr Is Not Null
  134003.         Set @SSQL = @SSQL +  'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  134004.     Set @SSQL = @SSQL + ' Where K.Iskluci <> ''D'' '
  134005.     If @KojaNabavna = 'D' 
  134006.         Set @SSQL = @SSQL + ' And dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) < S.NabCena
  134007.                     And (S.Kolic * (dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) - S.NabCena))<(-1*0.5) '
  134008.     Else If @KojaNabavna = 'P' 
  134009.         Set @SSQL = @SSQL + ' And dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) < dbo.fn_VratiCena(SO.Cena,  SO.POsn, SO.DanCena, ''N'')
  134010.                     And (S.Kolic * (dbo.fn_VratiCenaOsnov(S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa) - dbo.fn_VratiCena(SO.Cena,  SO.POsn, SO.DanCena, ''N''))) < (-1*0.5) '
  134011.     If @Sifra_Brand Is Not NULL
  134012.         Set @SSQL = @SSQL + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  134013.     If @Lokacija Is Not NULL
  134014.         Set @SSQL = @SSQL + ' And K.Lokacija=''' + @Lokacija + ''' '
  134015.     If @Kto Is Not NULL
  134016.         Set @SSQL = @SSQL + ' And K.Kto=' + @Kto + ' '
  134017.     If @Sifra_Podg Is Not NULL
  134018.         Set @SSQL = @SSQL + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  134019.     If @Sifra_Gr Is Not NULL
  134020.         Set @SSQL = @SSQL + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  134021.     If @PoKojDatum = 'V'
  134022.           Begin
  134023.         If @Datum_Od Is Not NULL
  134024.             Set @SSQL = @SSQL + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  134025.         If @Datum_Do Is Not NULL
  134026.             Set @SSQL = @SSQL + ' And D.Datum_Vnes<''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  134027.           End
  134028.     Else 
  134029.           Begin
  134030.         If @Datum_Od Is Not NULL
  134031.             Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  134032.         If @Datum_Do Is Not NULL
  134033.             Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  134034.            End
  134035. ---------------------------------------------------------------  19.07.2004  -------------------------------------------------------------------------------------------------------------------------
  134036.     If @Pod1 Is Not NULL
  134037.            Begin
  134038.         Set @SSQL = @SSQL + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  134039.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  134040.            End
  134041.     If @Pod2 Is Not NULL
  134042.            Begin
  134043.         Set @SSQL = @SSQL + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  134044.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  134045.            End
  134046.     If @Pod3 Is Not NULL
  134047.            Begin
  134048.         Set @SSQL = @SSQL + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  134049.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  134050.            End
  134051.     If @Pod4 Is Not NULL
  134052.            Begin
  134053.         Set @SSQL = @SSQL + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  134054.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  134055.            End
  134056.     If @Pod5 Is Not NULL
  134057.            Begin
  134058.         Set @SSQL = @SSQL + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  134059.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  134060.            End
  134061. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  134062.     If @Sifra_Tip Is Not NULL
  134063.         Set @SSQL = @SSQL + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  134064.     If @Sifra_Kup_Od Is Not NULL
  134065.         Set @SSQL = @SSQL + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  134066.     If @Sifra_Kup_Do Is Not NULL
  134067.         Set @SSQL = @SSQL + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  134068.     If @Sifra_Art_Od Is Not NULL
  134069.         Set @SSQL = @SSQL + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  134070.     If @Sifra_Art_Do Is Not NULL
  134071.         Set @SSQL = @SSQL + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  134072.     If @TipKup Is Not NULL
  134073.         Set @SSQL = @SSQL + ' And KUP.TipKup=''' + @TipKup + ''' '
  134074.     If @Sifra_OE Is Not NULL    
  134075.         Set @SSQL  = @SSQL + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  134076.     If @KoiOE Is Not NULL
  134077.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  134078.     If @TipDokProd Is Not Null
  134079.         Set @SSQL = @SSQL + ' And D.Sifra_Dok In (' + @TipDokProd + ') '
  134080.     If @Koi_Gradovi Is Not NULL    
  134081.         Begin
  134082.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  134083.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  134084.         End
  134085.     If @Koi_Regioni Is Not NULL    
  134086.         Begin
  134087.             Set @SSQL = @SSQL + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  134088.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  134089.         End
  134090.     If @Drugo1 Is Not NULL
  134091.         Set @SSQL = @SSQL + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  134092.     If @Drugo2 Is Not NULL
  134093.         Set @SSQL = @SSQL + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  134094.     If @Drugo3 Is Not NULL
  134095.         Set @SSQL = @SSQL + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  134096.     If @Drugo4 Is Not NULL
  134097.         Set @SSQL = @SSQL + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  134098.     If @Drugo5 Is Not NULL
  134099.         Set @SSQL = @SSQL + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  134100.  
  134101.     --Dimce 310109
  134102.     If @Sifra_Pat IS NOT NULL
  134103.         Begin
  134104.         If @KomercKako = 'T'
  134105.         SET @SSQL = @SSQL + ' AND Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  134106.     
  134107.         If @KomercKako = 'I'
  134108.         SET @SSQL = @SSQL + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(6)) + ' '
  134109.         End
  134110.     --
  134111.     
  134112.     Set @SSQL = @SSQL + 'Order By D.Datum_Dok, D.Sifra_Oe, D.Sifra_Dok, D.Broj_Dok, D.Sifra_Kup, S.Sifra_Art '
  134113.     Exec(@SSQL)
  134114.     Set Nocount Off
  134115.  
  134116. Go
  134117. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbapodrav]'))
  134118. drop procedure [dbo].[sp_prodazbapodrav]
  134119.  
  134120. Go
  134121. CREATE       PROCEDURE sp_ProdazbaPodrav
  134122.     @KoiOE    Varchar(300) = Null,
  134123.     @Datum_Od    Smalldatetime = Null,
  134124.     @Datum_Do    Smalldatetime = Null,
  134125.     @Kurs        decimal(18,6),
  134126.     @TipDokProd    varchar(200) = Null,
  134127.     @KojaFirma    char(2)
  134128. AS
  134129.     Declare @SSQL       varchar(8000)
  134130.     Declare @SSQL1 varchar(1000)
  134131.     Declare @SSQL2 varchar(1000)
  134132.     CREATE      TABLE #Prodazba        --NE GIBAJ DOLZINA NA POLINJA
  134133. (    Godina        smallint,
  134134.     Mesec        smallint,
  134135.     Den        char(2),
  134136.     Pret        char(6),
  134137.     Emp        char(8),
  134138.     PO        char(4),
  134139.     TipDok        char(1),
  134140.     OE        char(4),
  134141.     Sifra_Kup    char(10),
  134142.     Sifra_Obj    char(10),
  134143.     Sifra_Art    char(18),
  134144.     Kolic        decimal(10,3),
  134145.     EdMera        char(3),
  134146.     Bruto        decimal(13,2),
  134147.     Neto        decimal(13,2),
  134148.     ARabat        decimal(13,2),
  134149.     Odbr        decimal(13,2),
  134150.     TTros        decimal(13,2),
  134151.     Kasa        decimal(13,2),
  134152.     DogRabat    decimal(13,2),
  134153.     AsorRabat    decimal(13,2),
  134154.     KolRabat    decimal(13,2),
  134155.     MTros        decimal(13,2),
  134156.     POS        decimal(13,2),
  134157.     OstPop        decimal(13,2),
  134158.     Zaokr        decimal(13,2),
  134159.     SRabat        decimal(13,2),
  134160.     SuperRabat    decimal(13,2),
  134161.     TM        decimal(13,2),
  134162.     KamRabat    decimal(13,2),
  134163.     Tros        decimal(13,2),
  134164.     EUR        decimal(13,2), 
  134165.     SifArt        varchar(20)
  134166. )
  134167. -------------------------------------------------------------
  134168.     SET @SSQL2 = 'Select ''F'' '
  134169.     Set @SSQL = 'As TipDok, YEAR(S.Datum_Dok), MONTH(S.Datum_Dok), D.Sifra_Kup, KO.Sifra_Pat, K.Alt_Sifra, 
  134170.             Substring(K.EdMera,1,3), Round(Sum(S.Kolic), 3)  As Kolicina,
  134171.             Round(Sum(dbo.fn_VratiVredIzl(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, 0, 0, ''N'')), 2) As Bruto,
  134172.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) As Neto,
  134173.             Round(Sum(dbo.fn_VratiRabatBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces)), 2) As Rabat,
  134174.             Round(Sum(dbo.fn_VratiKasaBezDDV(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 2) As Kasa,
  134175.             K.Sifra_Art
  134176.             From  Stavr S 
  134177.         Inner Join KatArt K ON S.Sifra_Art=K.Sifra_Art
  134178.         Inner Join Dokr D ON S.DokrID=D.DokrID And D.Sifra_Za=1
  134179.         Left Outer Join Komint KO ON D.Sifra_Kup=KO.Sifra_Kup Where K.Iskluci <> ''D'' '
  134180.     If @KoiOE Is Not NULL
  134181.              Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  134182.     If @Datum_Od Is Not NULL
  134183.         Set @SSQL = @SSQL + ' And S.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(35)) + ''' '
  134184.     If @Datum_Do Is Not NULL
  134185.         Set @SSQL = @SSQL + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(35)) + ''' '
  134186.     If @TipDokProd IS NOT NULL
  134187.         Set @SSQL = @SSQL + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  134188.     Set @SSQL1 =  'Group By YEAR(S.Datum_Dok), MONTH(S.Datum_Dok), D.Sifra_Kup, KO.Sifra_Pat, K.Alt_Sifra, K.EdMera, K.Sifra_Art '
  134189. --print @ssql2+@ssql+@ssql1
  134190.     Insert #Prodazba (TipDok, Godina, Mesec, Sifra_Kup, Emp, Sifra_art, EdMera, Kolic, Bruto, Neto, DogRabat, Kasa, SifArt)  
  134191.     Exec(@SSQL2 + @SSQL + ' And Kolic > 0 ' + @SSQL1)
  134192.     SET @SSQL2 = 'Select ''P'' '
  134193.     Insert #Prodazba (TipDok, Godina, Mesec, Sifra_Kup, Emp, Sifra_art, EdMera, Kolic, Bruto, Neto, DogRabat, Kasa, SifArt)  
  134194.     Exec(@SSQL2 + @SSQL + ' And Kolic < 0 ' + @SSQL1)
  134195.     CREATE TABLE TmpCeniArtN
  134196.     ( Sifra_Art  varchar(20),    
  134197.       DokID  int,
  134198.       Datum smalldatetime
  134199.     )
  134200.     CREATE TABLE #PomCeni
  134201. (    Sifra_Art    varchar(20),
  134202.     DokID        int
  134203. )
  134204.     Set @SSQL = 'SELECT S.Sifra_art,  max(S.Datum_Dok) Datum  FROM Stavr S 
  134205.         WHERE S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35)) + 
  134206.         ''' AND S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '') AND
  134207.         S.Sifra_OE  IN (' + @KoiOE + ')  GROUP BY S.Sifra_Art '
  134208.     INSERT INTO TmpCeniArtN (Sifra_Art, Datum) EXEC (@SSQL)
  134209.     Set @SSQL = 'SELECT S.Sifra_art,  max(S.DokID) DokID FROM Stavr S, TmpCeniArtN C
  134210.     WHERE S.Sifra_Art=C.Sifra_Art AND S.Datum_Dok = C.Datum  AND S.Kolic > 0 AND S.VlIZl = ''V'' AND (S.ImaDodatna Is NULL  OR S.ImaDodatna ='' '') AND
  134211.         S.Sifra_OE  IN (' + @KoiOE + ')  GROUP BY S.Sifra_Art' 
  134212.     INSERT INTO #PomCeni (Sifra_Art, DokID) EXEC (@SSQL)
  134213.     UPDATE TmpCeniArtN SET DokID = S.DokID FROM #PomCeni S
  134214.     WHERE TmpCeniArtN.Sifra_Art = S.Sifra_Art
  134215.     UPDATE #Prodazba SET DogRabat = DogRabat * -1, Kasa = Kasa * -1
  134216.     UPDATE #Prodazba
  134217.     SET  Tros = #Prodazba.Kolic * dbo.fn_VratiVredIzl(1, S.DokCena, S.DanDokCena, S.POsnPren, S.Uces, D.Kasa, 'N')
  134218.     FROM TmpCeniArtN C, Stavr S, Dokr D, KatArt K
  134219.     WHERE #Prodazba.SifArt = K.Sifra_Art AND K.Sifra_Art = C.Sifra_Art AND C.Sifra_Art=S.Sifra_Art
  134220.     AND S.DokID = C.DokID AND D.DokrID = S.DokrID
  134221.     DROP TABLE TmpCeniArtN
  134222. --SEGA ZA FIN.ODOBRENIJA
  134223.     Set @SSQL = 'Select ''O'' As TipDok, YEAR(F.Datum_Dok), MONTH(F.Datum_Dok), F.Sifra_Kup, KO.Sifra_Pat, Substring(F.Opis,1,18), 
  134224.             '' '' As EdMera, 0 As Kolic, Sum(Pobaruva * -1) As Bruto, Sum(Pobaruva * -1) As Neto, 0 As DogRabat, 0 as Kasa
  134225.             From  AnFinDok F
  134226.         Inner Join Komint KO ON F.Sifra_Kup=KO.Sifra_Kup '
  134227. --    If @KoiOE Is Not NULL
  134228. --             Set @SSQL  = @SSQL + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  134229.     Set @SSQL = @SSQL + 'Where Sifra_Dok=62 '
  134230.     If @Datum_Od Is Not NULL
  134231.         Set @SSQL = @SSQL + ' And F.Datum_Dok>=''' + Cast(@Datum_Od As Varchar(25)) + ''' '
  134232.     If @Datum_Do Is Not NULL
  134233.         Set @SSQL = @SSQL + ' And F.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(25)) + ''' '
  134234.     Set @SSQL1 =  'Group By YEAR(F.Datum_Dok), MONTH(F.Datum_Dok), F.Sifra_Kup, KO.Sifra_Pat, F.Opis '
  134235.     Insert #Prodazba  (TipDok, Godina, Mesec, Sifra_Kup, Emp, Sifra_art, EdMera, Kolic, Bruto, Neto, DogRabat, Kasa)  
  134236.     Exec(@SSQL + @SSQL1)
  134237.     UPDATE #Prodazba SET Sifra_Art = 'ODO06' Where Sifra_Art like '     %'    
  134238.     UPDATE #Prodazba SET Den='  ', Pret=@KojaFirma, PO=' ', OE=' ',  ARabat=0, Odbr=0, TTros=0, 
  134239.         AsorRabat=0, KolRabat=0, MTros=0, POS=0, OstPop=0, Zaokr=0, SRabat=0, SuperRabat=0,TM=0, 
  134240.         KamRabat=0, EUR=Round(Neto / @Kurs, 2), Sifra_Kup = @KojaFirma+'-'+substring(sifra_kup,1,6)
  134241.     UPDATE #Prodazba SET Sifra_Obj = Sifra_Kup
  134242.     UPDATE #Prodazba SET Emp='99' WHERE Emp IS NULL
  134243.     SELECT Godina, Mesec, Den, Pret, Emp, PO, TipDok, OE, Sifra_Kup, Sifra_Obj, Sifra_Art,
  134244.     Kolic, EdMera, Bruto, Neto, ARabat,  Odbr,  TTros, Kasa, DogRabat, AsorRabat, KolRabat,
  134245.     MTros, POS, OstPop, Zaokr, SRabat, SuperRabat, TM, KamRabat, Tros, EUR FROM  #Prodazba
  134246.  
  134247.  
  134248. Go
  134249. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbapokomerc_art]'))
  134250. drop procedure [dbo].[sp_prodazbapokomerc_art]
  134251.  
  134252. Go
  134253. CREATE        PROCEDURE sp_ProdazbaPoKomerc_Art
  134254.     @Sifra_OE    Smallint = Null, 
  134255.     @KoiOE     Varchar(10) = Null,
  134256.     @Pod1         Smallint = Null,
  134257.     @Pod2         Smallint = Null,
  134258.     @Pod3         Smallint = Null,
  134259.     @Pod4         Smallint = Null,
  134260.     @Pod5         Smallint = Null,
  134261.     @Sifra_Tip     Smallint = Null,
  134262.     @Datum_Od     Smalldatetime = Null,
  134263.     @Datum_Do     Smalldatetime = Null,
  134264.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  134265.     @Sifra_Brand     Smallint = Null,
  134266.     @Sifra_Art_Od     Varchar(20) = Null,
  134267.     @Sifra_Art_Do     Varchar(20) = Null,
  134268.     @Sifra_Kup_Od Char(6) = Null,
  134269.     @Sifra_Kup_Do Char(6) = Null,
  134270.     @Kto         Char(6) = Null,
  134271.     @Sifra_Gr     Char(3) = Null,
  134272.     @Sifra_Podg     Char(6) = Null,
  134273.     @Lokacija     Varchar(10) = Null,
  134274.     @TipKup     Char(11) = Null,
  134275.     @Koi_Gradovi     varchar(200) = Null,
  134276.     @Koi_Regioni     varchar(200) = Null,
  134277.     @Drugo1    smallint = Null,
  134278.     @Drugo2    smallint = Null,
  134279.     @Drugo3    smallint = Null,
  134280.     @Drugo4    smallint = Null,
  134281.     @Drugo5    smallint = Null,
  134282.     @TipDokProd    varchar(200) = Null,
  134283.     @Sifra_Pat    smallint = Null,
  134284.     @KomercKako    char(1) = 'I',
  134285.     @Podred     Char(1) = Null
  134286. AS
  134287.     If @PoKojDatum = 'V'
  134288.             If @Datum_Do Is Not Null
  134289.         Set @Datum_Do = @Datum_Do + 1
  134290.     Set Nocount On
  134291.     Declare @SSQL Varchar(8000)
  134292.     Declare @SSQLUsl Varchar(8000)
  134293.     Declare @SSQLUslKom Varchar(8000)
  134294.     Set @SSQLUslKom = ' '
  134295.     Set @SSQLUsl = ' '
  134296.     If @KomercKako = 'I'
  134297.         Set @SSQL = ' Select D.Sifra_Pat, '
  134298.     Else
  134299.         Set @SSQL = ' Select Kup.Sifra_Pat, '
  134300.     Set @SSQL = @SSQL + ' K.Sifra_Podg, P.Ime_Podg, Pat.ImePat, S.Sifra_Art, K.ImeArt, 
  134301.                 Round(Sum(S.Kolic), 4) Kolic, 
  134302.                 Round(Sum(Case When K.ImaKomerc>0 Then S.Kolic/K.ImaKomerc Else S.Kolic End), 4) Paketi,
  134303.                 Round(Sum(S.Kolic*K.Tezina/1000), 4) MSU
  134304.             From Dokr D
  134305.             Inner Join Stavr S On S.DokrID=D.DokrID 
  134306.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art
  134307.             Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg
  134308.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  134309.              Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  134310.     If @KomercKako = 'I'
  134311.         Set @SSQL = @SSQL + ' Left Outer Join Patnici Pat ON Pat.Sifra_Pat=D.Sifra_Pat '
  134312.     Else
  134313.         Set @SSQL = @SSQL + ' Left Outer Join Patnici Pat ON Pat.Sifra_Pat=Kup.Sifra_Pat '
  134314.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D''  ' 
  134315.     If @Sifra_OE Is Not NULL    
  134316.         Set @SSQLUsl  = @SSQLUsl + ' And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  134317.     If @KoiOE Is Not NULL
  134318.              Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE IN (Select Sifra_Oe From SGrOrg G Where Sif_GrOrg = ''' + @KoiOe  +  ''') '
  134319.     If @TipDokProd is Not null
  134320.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Dok IN (' + @TipDokProd + ') '
  134321.     If @Sifra_Brand Is Not NULL
  134322.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  134323.     If @Lokacija Is Not NULL
  134324.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  134325.     If @Kto Is Not NULL
  134326.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  134327.     If @Sifra_Podg Is Not NULL
  134328.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  134329.     If @Sifra_Gr Is Not NULL
  134330.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  134331.     If @PoKojDatum = 'V'
  134332.           Begin
  134333.         If @Datum_Od Is Not NULL
  134334.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  134335.         If @Datum_Do Is Not NULL
  134336.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes <''' + Cast((@Datum_Do + 1) As Varchar(30)) + ''' '
  134337.           End
  134338.     Else 
  134339.      Begin
  134340.         If @Datum_Od Is Not NULL
  134341.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  134342.         If @Datum_Do Is Not NULL
  134343.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok <=''' + Cast(@Datum_Do  As Varchar(30)) + ''' '
  134344.            End
  134345.     If @Sifra_Art_Od Is Not NULL
  134346.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  134347.     If @Sifra_Art_Do Is Not NULL
  134348.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  134349.     If @Drugo1 Is Not NULL
  134350.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  134351.     If @Drugo2 Is Not NULL
  134352.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  134353.     If @Drugo3 Is Not NULL
  134354.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  134355.     If @Drugo4 Is Not NULL
  134356.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  134357.     If @Drugo5 Is Not NULL
  134358.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  134359.     If @KomercKako = 'I' And @Sifra_Pat IS NOT NULL
  134360.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  134361.     -- Uslov po Komintenti (samo od filtrite za komintenti) -------------------------------------
  134362.     If @Pod1 Is Not NULL
  134363.            Begin
  134364.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  134365.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  134366.            End
  134367.     If @Pod2 Is Not NULL
  134368.            Begin
  134369.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  134370.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  134371.            End
  134372.     If @Pod3 Is Not NULL
  134373.            Begin
  134374.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  134375.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  134376.            End
  134377.     If @Pod4 Is Not NULL
  134378.            Begin
  134379.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  134380.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  134381.            End
  134382.     If @Pod5 Is Not NULL
  134383.            Begin
  134384.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  134385.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  134386.            End
  134387.     If @Sifra_Tip Is Not NULL
  134388.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  134389.     If @Sifra_Kup_Od Is Not NULL
  134390.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  134391.     If @Sifra_Kup_Do Is Not NULL
  134392.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  134393.     If @TipKup Is Not NULL
  134394.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.TipKup=''' + @TipKup + ''' '
  134395.     If @Koi_Gradovi Is Not NULL    
  134396.         Begin
  134397.             Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  134398.                     OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  134399.         End
  134400.     If @Koi_Regioni Is Not NULL    
  134401.         Begin
  134402.             Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  134403.                     OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  134404.         End
  134405.     If @KomercKako = 'T' And @Sifra_Pat IS NOT NULL
  134406.         SET @SSQLUslKom = @SSQLUslKom + ' AND (Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' Or Kup.Sifra_Pat2 = ' + Cast(@Sifra_Pat as varchar(5)) + ') ' 
  134407.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslKom
  134408.     If @KomercKako = 'I'
  134409.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat, '
  134410.     Else
  134411.         Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat, '
  134412.     Set @SSQL = @SSQL + ' K.Sifra_Podg, P.Ime_Podg, Pat.ImePat, S.Sifra_Art, K.ImeArt '
  134413.     If @Podred = 'S' 
  134414.     Begin
  134415.         If @KomercKako = 'I'
  134416.             Set @SSQL = @SSQL + ' Order By D.Sifra_Pat, S.Sifra_Art '
  134417.         Else
  134418.             Set @SSQL = @SSQL + ' Order By Kup.Sifra_Pat, S.Sifra_Art'
  134419.     End
  134420.     Else 
  134421.             Set @SSQL = @SSQL + ' Order By Pat.ImePat, S.Sifra_Art'
  134422.     Exec(@SSQL)
  134423.     Set Nocount Off
  134424.  
  134425.  
  134426. Go
  134427. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbapokomercijalisti]'))
  134428. drop procedure [dbo].[sp_prodazbapokomercijalisti]
  134429.  
  134430. Go
  134431. CREATE        PROCEDURE sp_ProdazbaPoKomercijalisti
  134432.     @Sifra_OE    Smallint = Null, 
  134433.     @KoiOE     Varchar(10) = Null,
  134434.     @Pod1         Smallint = Null,
  134435.     @Pod2         Smallint = Null,
  134436.     @Pod3         Smallint = Null,
  134437.     @Pod4         Smallint = Null,
  134438.     @Pod5         Smallint = Null,
  134439.     @Sifra_Tip     Smallint = Null,
  134440.     @Datum_Od     Smalldatetime = Null,
  134441.     @Datum_Do     Smalldatetime = Null,
  134442.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  134443.     @Sifra_Brand     Smallint = Null,
  134444.     @Sifra_Art_Od     Varchar(20) = Null,
  134445.     @Sifra_Art_Do     Varchar(20) = Null,
  134446.     @Sifra_Kup_Od Char(6) = Null,
  134447.     @Sifra_Kup_Do Char(6) = Null,
  134448.     @Kto         Char(6) = Null,
  134449.     @Sifra_Gr     Char(3) = Null,
  134450.     @Sifra_Podg     Char(6) = Null,
  134451.     @Lokacija     Varchar(10) = Null,
  134452.     @TipKup     Char(11) = Null,
  134453.     @Koi_Gradovi     varchar(200) = Null,
  134454.     @Koi_Regioni     varchar(200) = Null,
  134455.     @Drugo1    smallint = Null,
  134456.     @Drugo2    smallint = Null,
  134457.     @Drugo3    smallint = Null,
  134458.     @Drugo4    smallint = Null,
  134459.     @Drugo5    smallint = Null,
  134460.     @TipDokProd    varchar(200) = Null,
  134461.     @Sifra_Pat    smallint = Null,
  134462.     @KomercKako    char(1) = 'I',
  134463.     @Podred     Char(1) = Null,
  134464.     @PoKomObj    char(1) = 'K',        -- K - po Komintenti    O - po Objekti
  134465.     @SoDDV    char(1) = 'D',
  134466.     @TopKolkuKup    smallint = 120        -- Kolku najdobri komintenti da se zemaat za prosecna prodazba
  134467. --    @KojIzv    char(1),
  134468. --    @BrKomint    smallint
  134469. AS
  134470.     If @PoKojDatum = 'V'
  134471.             If @Datum_Do Is Not Null
  134472.         Set @Datum_Do = @Datum_Do + 1
  134473.     Set Nocount On
  134474.     Declare @SSQL Varchar(8000)
  134475.     Declare @SSQLUsl Varchar(8000)
  134476.     Declare @SSQLUslKom Varchar(8000)
  134477.     Set @SSQLUslKom = ' '
  134478.     Set @SSQLUsl = ' '
  134479.     Create Table #ProdPat
  134480.     (
  134481.      Sifra_Pat    int,
  134482.      Den        smallint,
  134483.      Kolic        decimal(18,6),
  134484.      Paketi        decimal(18,6),
  134485.      Poseti        int,
  134486.      MSU        decimal(18,6),
  134487.      Iznos        decimal(18,6)
  134488.     )
  134489. --                Round(Sum(S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDDV + ''')),4) Iznos 
  134490.     If @KomercKako = 'I'
  134491.         Set @SSQL = ' Select D.Sifra_Pat, '
  134492.     Else
  134493.         Set @SSQL = ' Select Kup.Sifra_Pat, '
  134494.     Set @SSQL = @SSQL + ' Day(D.Datum_Dok) Den, 
  134495.                 Round(Sum(S.Kolic), 4) Kolic, Round(Sum(Case When K.ImaKomerc>0 Then S.Kolic/K.ImaKomerc Else S.Kolic End), 4) Paketi,
  134496.                 Count(Distinct D.DokrID) Poseti, Round(Sum(S.Kolic*K.Tezina/1000), 4) MSU, 
  134497.                 Round(Sum(S.Kolic*dbo.fn_VratiCena(S.DokCena, S.Posn, S.DanDokCena, ''' + @SoDDV + ''')),4) Iznos 
  134498.             From Dokr D
  134499.             Inner Join Stavr S On S.DokrID=D.DokrID 
  134500.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art
  134501.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  134502.              Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  134503.     If @Sifra_Gr Is Not Null
  134504.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  134505.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D''  ' 
  134506.     If @Sifra_OE Is Not NULL    
  134507.         Set @SSQLUsl  = @SSQLUsl + ' And D.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  134508.     If @KoiOE Is Not NULL
  134509.              Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_OE IN (Select Sifra_Oe From SGrOrg G Where Sif_GrOrg = ''' + @KoiOe  +  ''') '
  134510.     If @TipDokProd is Not null
  134511.         Set @SSQLUsl = @SSQLUsl + ' And D.Sifra_Dok IN (' + @TipDokProd + ') '
  134512.     If @Sifra_Brand Is Not NULL
  134513.         Set @SSQLUsl = @SSQLUsl + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  134514.     If @Lokacija Is Not NULL
  134515.         Set @SSQLUsl = @SSQLUsl + ' And K.Lokacija=''' + @Lokacija + ''' '
  134516.     If @Kto Is Not NULL
  134517.         Set @SSQLUsl = @SSQLUsl + ' And K.Kto=' + @Kto + ' '
  134518.     If @Sifra_Podg Is Not NULL
  134519.         Set @SSQLUsl = @SSQLUsl + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  134520.     If @Sifra_Gr Is Not NULL
  134521.         Set @SSQLUsl = @SSQLUsl + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  134522.     If @PoKojDatum = 'V'
  134523.           Begin
  134524.         If @Datum_Od Is Not NULL
  134525.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  134526.         If @Datum_Do Is Not NULL
  134527.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Vnes <''' + Cast((@Datum_Do + 1) As Varchar(30)) + ''' '
  134528.           End
  134529.     Else 
  134530.      Begin
  134531.         If @Datum_Od Is Not NULL
  134532.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  134533.         If @Datum_Do Is Not NULL
  134534.             Set @SSQLUsl = @SSQLUsl + ' And D.Datum_Dok <=''' + Cast(@Datum_Do  As Varchar(30)) + ''' '
  134535.            End
  134536.     If @Sifra_Art_Od Is Not NULL
  134537.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art>=''' + @Sifra_Art_Od + ''' '
  134538.     If @Sifra_Art_Do Is Not NULL
  134539.         Set @SSQLUsl = @SSQLUsl + ' And S.Sifra_Art<=''' + @Sifra_Art_Do + ''' '
  134540.     If @Drugo1 Is Not NULL
  134541.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo1=' + Cast(@Drugo1 As Varchar(6)) + ' '
  134542.     If @Drugo2 Is Not NULL
  134543.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo2=' + Cast(@Drugo2 As Varchar(6)) + ' '
  134544.     If @Drugo3 Is Not NULL
  134545.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo3=' + Cast(@Drugo3 As Varchar(6)) + ' '
  134546.     If @Drugo4 Is Not NULL
  134547.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo4=' + Cast(@Drugo4 As Varchar(6)) + ' '
  134548.     If @Drugo5 Is Not NULL
  134549.         Set @SSQLUsl = @SSQLUsl + ' And K.Drugo5=' + Cast(@Drugo5 As Varchar(6)) + ' '
  134550.     If @KomercKako = 'I' And @Sifra_Pat IS NOT NULL
  134551.         SET @SSQLUsl = @SSQLUsl + ' AND D.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' '
  134552.     -- Uslov po Komintenti (samo od filtrite za komintenti) -------------------------------------
  134553.     If @Pod1 Is Not NULL
  134554.            Begin
  134555.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  134556.                       Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  134557.            End
  134558.     If @Pod2 Is Not NULL
  134559.            Begin
  134560.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  134561.                       Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  134562.            End
  134563.     If @Pod3 Is Not NULL
  134564.            Begin
  134565.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  134566.                       Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  134567.            End
  134568.     If @Pod4 Is Not NULL
  134569.            Begin
  134570.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  134571.                       Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  134572.            End
  134573.     If @Pod5 Is Not NULL
  134574.            Begin
  134575.         Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  134576.                       Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  134577.            End
  134578.     If @Sifra_Tip Is Not NULL
  134579.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.Sifra_Tip=' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  134580.     If @Sifra_Kup_Od Is Not NULL
  134581.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  134582.     If @Sifra_Kup_Do Is Not NULL
  134583.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  134584.     If @TipKup Is Not NULL
  134585.         Set @SSQLUslKom = @SSQLUslKom + ' And KUP.TipKup=''' + @TipKup + ''' '
  134586.     If @Koi_Gradovi Is Not NULL    
  134587.         Begin
  134588.             Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  134589.                     OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  134590.         End
  134591.     If @Koi_Regioni Is Not NULL    
  134592.         Begin
  134593.             Set @SSQLUslKom = @SSQLUslKom + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  134594.                     OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  134595.         End
  134596.     If @KomercKako = 'T' And @Sifra_Pat IS NOT NULL
  134597.         SET @SSQLUslKom = @SSQLUslKom + ' AND (Kup.Sifra_Pat = ' + Cast(@Sifra_Pat as varchar(5)) + ' Or Kup.Sifra_Pat2 = ' + Cast(@Sifra_Pat as varchar(5)) + ') ' 
  134598.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslKom
  134599.     If @KomercKako = 'I'
  134600.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat, Day(D.Datum_Dok) '
  134601.     Else
  134602.         Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat, Day(D.Datum_Dok)'
  134603.     Insert Into #ProdPat Exec(@SSQL)
  134604.     --------  Vo kolku denovi ima promet po komercijalist 
  134605.     Create Table #DenoviProm
  134606.     (
  134607.      Sifra_Pat    int,
  134608.      DenoviProm    int,
  134609.     )
  134610.     If @KomercKako = 'I'
  134611.         Set @SSQL = ' Select D.Sifra_Pat, '
  134612.     Else
  134613.         Set @SSQL = ' Select Kup.Sifra_Pat, '
  134614.     Set @SSQL = @SSQL + ' Count(Distinct D.Datum_Dok)
  134615.             From Dokr D
  134616.             Inner Join Stavr S On S.DokrID=D.DokrID 
  134617.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art
  134618.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  134619.              Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  134620.     If @Sifra_Gr Is Not Null
  134621.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  134622.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D''  ' 
  134623.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslKom
  134624.     If @KomercKako = 'I'
  134625.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat '
  134626.     Else
  134627.         Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat '
  134628.     Insert Into #DenoviProm Exec(@SSQL)
  134629.     -----------------------------------------------------------------------------------------------------------------------
  134630.     -------- Razlicni Artikli po komercijalist 
  134631.     Create Table #ArtPoPat
  134632.     (
  134633.      Sifra_Pat    int,
  134634.      RazlArt    int,
  134635.     )
  134636.     If @KomercKako = 'I'
  134637.         Set @SSQL = ' Select D.Sifra_Pat, '
  134638.     Else
  134639.         Set @SSQL = ' Select Kup.Sifra_Pat, '
  134640.     Set @SSQL = @SSQL + ' Count(Distinct S.Sifra_Art)
  134641.             From Dokr D
  134642.             Inner Join Stavr S On S.DokrID=D.DokrID 
  134643.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art
  134644.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  134645.              Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  134646.     If @Sifra_Gr Is Not Null
  134647.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  134648.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D''  ' 
  134649.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslKom
  134650.     If @KomercKako = 'I'
  134651.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat '
  134652.     Else
  134653.         Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat '
  134654.     Insert Into #ArtPoPat Exec(@SSQL)
  134655.     -----------------------------------------------------------------------------------------------------------------------
  134656.     -------- Razlicni Komintenti po komercijalist 
  134657.     Create Table #KupPoPat
  134658.     (
  134659.      Sifra_Pat    int,
  134660.      RazlKup    int,
  134661.     )
  134662.     If @KomercKako = 'I'
  134663.         Set @SSQL = ' Select D.Sifra_Pat, '
  134664.     Else
  134665.         Set @SSQL = ' Select Kup.Sifra_Pat, '
  134666.     Set @SSQL = @SSQL + ' Count(Distinct D.Sifra_Kup)
  134667.             From Dokr D
  134668.             Inner Join Stavr S On S.DokrID=D.DokrID 
  134669.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art
  134670.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  134671.              Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  134672.     If @Sifra_Gr Is Not Null
  134673.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  134674.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D''  ' 
  134675.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslKom
  134676.     If @KomercKako = 'I'
  134677.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat '
  134678.     Else
  134679.         Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat '
  134680.     Insert Into #KupPoPat Exec(@SSQL)
  134681.     --------- Prosek od prometot od najdobritr  X  Kupuvaci ---------------------------------------
  134682.     Create Table #ProsProm
  134683.     (
  134684.      Sifra_Pat    int,
  134685.      ProsProm    decimal(18,6)
  134686.     )
  134687.     Create Table #TopX
  134688.     (
  134689.      Sifra_Pat    int,
  134690.      Sifra_Kup    char(6),
  134691.      Promet        decimal(18,6)
  134692.     )
  134693.     If @KomercKako = 'I'
  134694.         Set @SSQL = ' Select D.Sifra_Pat, '
  134695.     Else
  134696.         Set @SSQL = ' Select Kup.Sifra_Pat, '
  134697.     Set @SSQL = @SSQL + ' D.Sifra_Kup, Sum(S.Kolic * (Case When S.DanDokCena = ''N'' Then (S.DokCena*(1+S.Posn/100)) Else S.DokCena End)) Promet
  134698.             From Dokr D
  134699.             Inner Join Stavr S On S.DokrID=D.DokrID 
  134700.             Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art
  134701.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  134702.              Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  134703.     If @Sifra_Gr Is Not Null
  134704.         Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  134705.     Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D''  ' 
  134706.     Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslKom
  134707.     If @KomercKako = 'I'
  134708.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat, D.Sifra_Kup '
  134709.     Else
  134710.         Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat, D.Sifra_Kup '
  134711.     Insert Into #TopX Exec(@SSQL)
  134712.     Declare @Patnik char(6)
  134713.     Declare Patnik Cursor Fast_Forward
  134714.     For Select Distinct Sifra_Pat From #TopX
  134715.     Open Patnik
  134716.     Fetch Next From Patnik Into @Patnik
  134717.     While @@Fetch_Status=0
  134718.     Begin
  134719.         If @KomercKako = 'I'
  134720.             Set @SSQL = ' Select D.Sifra_Pat, '
  134721.         Else
  134722.             Set @SSQL = ' Select Kup.Sifra_Pat, '
  134723.         Set @SSQL = @SSQL + ' Count(Distinct S.Sifra_Art) 
  134724.                 From Dokr D
  134725.                 Inner Join Stavr S On S.DokrID=D.DokrID 
  134726.                 Inner Join KatArt K ON K.Sifra_Art=S.Sifra_Art
  134727.                 Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  134728.                  Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  134729.         If @Sifra_Gr Is Not Null
  134730.             Set @SSQL = @SSQL + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  134731.         Set @SSQL = @SSQL + ' Where D.Sifra_Za = ''1'' And K.Iskluci <> ''D''  ' 
  134732.         Set @SSQL = @SSQL + @SSQLUsl + @SSQLUslKom
  134733.         Set @SSQL = @SSQL +    ' And D.Sifra_Kup In (Select Top ' + Cast(@TopKolkuKup as varchar(6)) + ' Sifra_Kup
  134734.                             From #TopX 
  134735.                             Where Sifra_Pat = ' + Cast(@Patnik as Varchar(10)) + ' 
  134736.                             Group By Sifra_Kup 
  134737.                             Order By Sum(Promet) Desc) '
  134738.     If @KomercKako = 'I'
  134739.         Set @SSQL = @SSQL + ' Group By  D.Sifra_Pat '
  134740.     Else
  134741.         Set @SSQL = @SSQL + ' Group By Kup.Sifra_Pat '
  134742. print @SSQL
  134743.         Insert into #ProsProm Exec(@SSQL)
  134744.         Fetch Next From Patnik Into @Patnik
  134745.     End
  134746.     Close Patnik
  134747.     Deallocate Patnik
  134748.     -----------------------------------------------------------------------------------------------------------------------
  134749.     Select D.Sifra_Pat, P.ImePat, D.Den, D.Kolic, D.Paketi, D.Poseti, D.MSU, D.Iznos, DP.DenoviProm, A.RazlArt, K.RazlKup, PP.ProsProm TopXProsProm
  134750.     From  #ProdPat D
  134751.     Left Outer Join Patnici P On P.Sifra_Pat=D.Sifra_Pat
  134752.     Left Outer Join #DenoviProm DP On DP.Sifra_Pat=D.Sifra_Pat
  134753.     Left Outer Join #ArtPoPat A On A.Sifra_Pat=D.Sifra_Pat
  134754.     Left Outer Join #KupPoPat K On K.Sifra_Pat=D.Sifra_Pat
  134755.     Left Outer Join #ProsProm PP On PP.Sifra_Pat=D.Sifra_Pat
  134756.     Order By D.Sifra_Pat, D.Den
  134757. /*    ----------  Da go najdeme vkupniot broj na Komintenti spored uslovite - po Objekti -------
  134758.     Create  Table #Komint
  134759.     (
  134760.      BrKom    int
  134761.     )
  134762.     Set @SSQL = ' Select Count (Distinct (Case When KO.Sifra_Obj >=1 Then Kup.Sifra_Kup + ''&&&'' + Cast(KO.Sifra_Obj as varchar(6)) Else Kup.Sifra_Kup End))
  134763.             From Komint Kup
  134764.             Left Outer Join KObjekti KO On KO.Sifra_Kup = Kup.Sifra_Kup
  134765.             Where 1=1 ' 
  134766.     Insert Into #Komint Exec (@SSQL + @SSQLUslKom)
  134767.     Select @BrKomint = BrKom From #Komint
  134768.     -------------------------------------------------------------------------------------------------------------------------------------
  134769. */
  134770.     Set Nocount Off
  134771.  
  134772.  
  134773. Go
  134774. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbapopodelbi]'))
  134775. drop procedure [dbo].[sp_prodazbapopodelbi]
  134776.  
  134777. Go
  134778.  
  134779.  
  134780. CREATE    PROCEDURE sp_ProdazbaPoPodelbi
  134781.     @Podelba Varchar(10) = Null,  -- D(1,2,3,4,5,6,7) - Podelba(1,2,3,4,5,6,7), TK-Tipkomint, GR-Grad, RE-Region, NI-Nivo, ST-Sifra_Tip, OE-Org.Ed, KO-Komintent, OB-Objekt 
  134782.     @Sifra_OE Smallint = Null,          -- PI-Patnik istoriski (Dokr),   PT-Patnik tekoven (Komint),   VP - Vid na prodazen objekt, ME - Meseci, KV - Kvartal, TD-Tip na dokument
  134783.     @KoiOE Varchar(300) = Null,
  134784.     @Pod1 Smallint = Null,
  134785.     @Pod2 Smallint = Null,
  134786.     @Pod3 Smallint = Null,
  134787.     @Pod4 Smallint = Null,
  134788.     @Pod5 Smallint = Null,    
  134789.     @Pod6 Smallint = Null,    
  134790.     @Pod7 Smallint = Null,    
  134791.     @KFPod1 Char(1) = Null,
  134792.     @KFPod2 Char(1) = Null,
  134793.     @KFPod3 Char(1) = Null,
  134794.     @KFPod4 Char(1) = Null,
  134795.     @KFPod5 Char(1) = Null,
  134796.     @KFPod6 Char(1) = Null,
  134797.     @KFPod7 Char(1) = Null,
  134798.     @TipKup VarChar(200) = Null,
  134799.     @Sifra_Nivo Char(2) = Null,
  134800.     @Sifra_Tip Smallint = Null,
  134801.     @Koi_Gradovi varchar(200) = Null,
  134802.     @Koi_Regioni varchar(200) = Null,    
  134803.     @Datum_Od Smalldatetime = Null,
  134804.     @Datum_Do Smalldatetime = Null,
  134805.     @Sifra_Brand Smallint = Null,
  134806.     @Sifra_Kup_Od Char(6) = Null,
  134807.     @Sifra_Kup_Do Char(6) = Null,
  134808.     @Kto Char(6) = Null,
  134809.     @Sifra_Gr Char(3) = Null,
  134810.     @Sifra_Podg Char(6) = Null,
  134811.     @Lokacija Varchar(10) = Null,
  134812.     @Sifra_Art_Od    varchar(20) = Null,
  134813.     @Sifra_Art_Do    varchar(20) = Null,
  134814.     @RazbijSostav    char(1) = 'N',
  134815.     @PodelArt    Varchar(2) = Null,        -- AR - Artikl,       PG - Podgrupa,     GR - Grupa,      BR - Brend,     D(1,2,3,4,5,6,7) - Podelba(1,2,3,4,5,6,7),     KT - Kto(Dobavuvac),  
  134816.     @TipDokProd    VarChar(300) = Null,    --        ME - Mesec,     KV - Kvartal,   KH - Hierarhii na artikli (6 mesta),    H2 - Hierarhii na artikli (2 mesta),  DI - Divizija
  134817.     @NeraspredKom char(1) = 'D',          -- Prikazi Neraspredeleni Komintenti
  134818.     @NeraspredArt char(1) = 'D',        -- Prikazi Neraspredeleni Artikli
  134819.     @KlucniDobav    varchar(500) = Null,
  134820.     @APod1 Smallint = Null,
  134821.     @APod2 Smallint = Null,
  134822.     @APod3 Smallint = Null,
  134823.     @APod4 Smallint = Null,
  134824.     @APod5 Smallint = Null,
  134825.     @APod6 Smallint = Null,
  134826.     @APod7 Smallint = Null,
  134827.     @Sifra_VPJ    Smallint = Null,    
  134828.     @Alt_ImeArt    char(1) = 'N',
  134829.     @KoiPat    varchar(300) = Null,
  134830.     @KomercKako     char(1) = 'I',
  134831.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  134832.     @KolkuMesta    smallint = 6,        -- Se Odnesuva na podgrupite    2, 3, 4, 5, 6
  134833.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  134834.     @Sifra_Div    smallint = Null,
  134835.     @PrethBazaOd    char(1) = 'N',        -- K - Konfig (poleto PrethBaza)     ?T? - Nekoja tabela (Fir Paral ili Nekoja Nova za vo idnina)
  134836.     @ParalenliBazi     varchar(200) = Null,
  134837.     @BrKoloni    int = Null OUTPUT,
  134838.     @IzvBat        char(1) = Null,
  134839.     @GrKup     varchar(500) = Null,
  134840.     @GrArt        varchar(500) = Null
  134841.  
  134842. AS
  134843.  
  134844.     Declare @SSQL Varchar(8000)
  134845.     Declare @SSQL1 Varchar(8000)
  134846.     Declare @SSQL2 Varchar(8000)
  134847.     Declare @SSQL3 Varchar(8000)
  134848.     Declare @SSQL4 Varchar(8000)
  134849.     Declare @SSQL5 Varchar(8000)
  134850.     Declare @SSQLArt Varchar(8000)
  134851.     Declare @SSQLArtJoin Varchar(8000)
  134852.     Declare @SSQLArtGroup Varchar(8000)
  134853.     Declare @SSQLFrom Varchar(8000)
  134854.     Set @SSQL = ''
  134855.     Set @SSQL1 = ''
  134856.     Set @SSQL2 = ''
  134857.     Set @SSQL3 = ''
  134858.     Set @SSQL4 = ''
  134859.     Set @SSQL5 = ''
  134860.     Set @SSQLArt = ''
  134861.     Set @SSQLArtJoin = ''
  134862.     Set @SSQLArtGroup = ''
  134863.     Set @SSQLFrom = ''
  134864.  
  134865.     Create          Table #tSostav
  134866.     (    Sifra_Art Varchar(20),
  134867.         Sifra_Sur Varchar(20),
  134868.         Ima_Kolic Decimal(18,6),
  134869.         Cena Decimal(18,6),
  134870.         VkCena Decimal(18,6)
  134871.     )
  134872.  
  134873.     If @RazbijSostav = 'D'
  134874.         Begin
  134875.             Set @SSQL = 'Insert #tSostav
  134876.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  134877.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  134878.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  134879.             Exec(@SSQL)
  134880.         End
  134881.     Set @SSQL = 'Insert #tSostav
  134882.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  134883.         From Katart K '
  134884.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  134885.     If @RazbijSostav = 'D'
  134886.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  134887.     Exec(@SSQL)
  134888.  
  134889.     If @GrKup Is Not Null
  134890.     Begin
  134891.     CREATE   Table #KupObj
  134892.         (
  134893.             Sifra_Kup    char(6),
  134894.             Sifra_Obj    smallint
  134895.         )
  134896.         CREATE   Table #KupObj1
  134897.         (
  134898.             Sifra_Kup    char(6),
  134899.             Sifra_Obj    smallint
  134900.         )
  134901.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  134902.         Exec(@SSQL)
  134903.  
  134904.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  134905.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  134906.                 From SGrKupObj GK 
  134907.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  134908.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  134909.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  134910.         Exec(@SSQL)
  134911.  
  134912.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  134913.         Exec(@SSQL)
  134914.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  134915.     End
  134916.  
  134917.     If @GrArt Is Not Null
  134918.     Begin
  134919.         Create Table #GrArt
  134920.         (
  134921.             Sifra_Art    varchar(20)
  134922.         )
  134923.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  134924.  
  134925.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  134926.         Exec(@SSQL)
  134927.     End
  134928.  
  134929.     Set @Podelba = Upper(@Podelba)
  134930.     If @Podelba = 'D1'
  134931.         Set @SSQL1 = 'Select KUP.KDrugo1 Tip, KD1.Ime_1K Ime, '
  134932.     Else If @Podelba = 'D2'
  134933.         Set @SSQL1 = 'Select KUP.KDrugo2 Tip, KD2.Ime_2K Ime, '
  134934.     Else If @Podelba = 'D3'
  134935.         Set @SSQL1 = 'Select KUP.KDrugo3 Tip, KD3.Ime_3K Ime, '
  134936.     Else If @Podelba = 'D4'
  134937.         Set @SSQL1 = 'Select KUP.KDrugo4 Tip, KD4.Ime_4K Ime, '
  134938.     Else If @Podelba = 'D5'
  134939.         Set @SSQL1 = 'Select KUP.KDrugo5 Tip, KD5.Ime_5K Ime, '
  134940.     Else If @Podelba = 'D6'
  134941.         Set @SSQL1 = 'Select KUP.KDrugo6 Tip, KD6.Ime_6K Ime, '
  134942.     Else If @Podelba = 'D7'
  134943.         Set @SSQL1 = 'Select KUP.KDrugo7 Tip, KD7.Ime_7K Ime, '
  134944.     Else If @Podelba = 'TK'
  134945.         Set @SSQL1 = 'Select KUP.TipKup Tip, GT.ImeTipKup Ime, '
  134946.     Else If @Podelba = 'NI'
  134947.         Set @SSQL1 = 'Select KUP.Sifra_Nivo Tip, NI.ImeNivo Ime, '
  134948.     Else If @Podelba = 'GR'
  134949.         Set @SSQL1 = 'Select KUP.Sifra_Grad Tip, GR.ImeGrad Ime, '
  134950.     Else If @Podelba = 'RE'
  134951.         Set @SSQL1 = 'Select KUP.Sifra_Reg Tip, RE.ImeRegion Ime, '
  134952.     Else If @Podelba = 'ST'
  134953.         Set @SSQL1 = 'Select KUP.Sifra_Tip Tip, TK.ImeTip Ime, '
  134954.     Else If @Podelba = 'OE'
  134955.         Set @SSQL1 = 'Select S.Sifra_Oe Tip, Oe.ImeOrg Ime, '
  134956.     Else If @Podelba = 'KO'
  134957.         Set @SSQL1 = 'Select D.Sifra_Kup Tip, Kup.ImeKup Ime, '
  134958.     Else If @Podelba = 'OB'
  134959.         Set @SSQL1 = 'Select D.Sifra_Kup + '' '' + (Case When D.Sifra_Obj Is Not Null Then dbo.fn_levonuli(Cast(D.Sifra_Obj as varchar(6)),3) Else '''' End) Tip, 
  134960.                      Kup.ImeKup + '' '' + (Case When KO.ImeObj Is Not Null Then KO.ImeObj Else '''' End) Ime, '
  134961.     Else If @Podelba = 'PI'
  134962.         Set @SSQL1 = 'Select D.Sifra_Pat Tip, Pat.ImePat Ime, '
  134963.     Else If @Podelba = 'PT'
  134964.         Set @SSQL1 = 'Select KUP.Sifra_Pat Tip, Pat.ImePat Ime, '
  134965.     Else If @Podelba = 'VP'        
  134966.         Set @SSQL1 = 'Select KUP.Sifra_Vpj Tip, VPJ.Ime_Vpj Ime, '
  134967.     Else If @Podelba = 'ME'
  134968.         Set @SSQL1 = 'Select (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)) Tip, Null Ime, '
  134969.     Else If @Podelba = 'KV'
  134970.         Set @SSQL1 = 'Select ''0'' + Cast(DatePart(Quarter, D.Datum_Dok) as varchar(2)) + ''-'' + Cast(Year(D.Datum_Dok) as varchar(4)) Tip, Null Ime, '
  134971.     Else If @Podelba = 'TD'
  134972.         Set @SSQL1 = 'Select S.Sifra_Dok Tip, (Case When S.Sifra_Dok < 10 Then ''00'' When S.Sifra_Dok >=10 And S.Sifra_Dok < 100 Then ''0'' Else '''' End) + Cast(S.Sifra_Dok as varchar(6)) + '' '' + TD.ImeDok Ime, '
  134973.     If @PodelArt = 'AR'
  134974.         If @Alt_ImeArt = 'D'
  134975.             Set @SSQLArt = @SSQLArt + ' K.Alt_Sifra SifraPodel, K.Alt_Ime ImePodel, '
  134976.         Else
  134977.             Set @SSQLArt = @SSQLArt + ' TS.Sifra_Sur SifraPodel, K.ImeArt ImePodel, '
  134978.     Else If @PodelArt = 'PG'
  134979.         If @KolkuMesta Is Not Null
  134980.             Set @SSQLArt = @SSQLArt + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') SifraPodel, PG.Ime_Podg ImePodel, '
  134981.         Else 
  134982.             Set @SSQLArt = @SSQLArt + ' K.Sifra_Podg SifraPodel, PG.Ime_Podg ImePodel, '
  134983.     Else If @PodelArt = 'GR'
  134984.         Set @SSQLArt = @SSQLArt + ' PG.Sifra_Gr SifraPodel, G.Ime_Gr ImePodel, '
  134985.     Else If @PodelArt = 'BR'
  134986.         Set @SSQLArt = @SSQLArt + ' K.Sifra_Drg SifraPodel, BR.Ime ImePodel, '
  134987.     Else If @PodelArt = 'D1'
  134988.         Set @SSQLArt = @SSQLArt + ' K.Drugo1 SifraPodel, D1.Ime_1 ImePodel, '
  134989.     Else If @PodelArt = 'D2'
  134990.         Set @SSQLArt = @SSQLArt + ' K.Drugo2 SifraPodel, D2.Ime_2 ImePodel, '
  134991.     Else If @PodelArt = 'D3'
  134992.         Set @SSQLArt = @SSQLArt + ' K.Drugo3 SifraPodel, D3.Ime_3 ImePodel, '    
  134993.     Else If @PodelArt = 'D4'
  134994.         Set @SSQLArt = @SSQLArt + ' K.Drugo4 SifraPodel, D4.Ime_4 ImePodel, '
  134995.     Else If @PodelArt = 'D5'
  134996.         Set @SSQLArt = @SSQLArt + ' K.Drugo5 SifraPodel, D5.Ime_5 ImePodel, '
  134997.     Else If @PodelArt = 'D6'
  134998.         Set @SSQLArt = @SSQLArt + ' K.Drugo6 SifraPodel, D6.Ime_6 ImePodel, '
  134999.     Else If @PodelArt = 'D7'
  135000.         Set @SSQLArt = @SSQLArt + ' K.Drugo7 SifraPodel, D7.Ime_7 ImePodel, '
  135001.     Else If @PodelArt = 'KT'
  135002.         Set @SSQLArt = @SSQLArt + ' K.Kto SifraPodel, KT.ImeKup ImePodel, '
  135003.     Else If @PodelArt = 'ME'
  135004.         Set @SSQLArt = @SSQLArt + ' (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)) SifraPodel, Null ImePodel, '
  135005.     Else If @PodelArt = 'KV'
  135006.         Set @SSQLArt = @SSQLArt + ' ''0'' + Cast(DatePart(Quarter, D.Datum_Dok) as varchar(2)) + ''-'' + Cast(Year(D.Datum_Dok) as varchar(4)) SifraPodel, Null ImePodel, '
  135007.     Else If @PodelArt = 'KH'
  135008.         Set @SSQLArt = @SSQLArt + ' Substring(K.Sifra_KHier,1,2) SifraPodel, KH.Ime_KHier ImePodel, '
  135009.     Else If @PodelArt = 'H1'
  135010.         Set @SSQLArt = @SSQLArt + ' H3.Sifra_KHier SifraPodel, H3.Ime_KHier ImePodel, '
  135011.     Else If @PodelArt = 'DI'
  135012.         Set @SSQLArt = @SSQLArt + ' K.Sifra_Div SifraPodel, DI.ImeDiv ImePodel, '
  135013. --    Else If @PodelArt = 'TD'
  135014. --        Set @SSQLArt = @SSQLArt + ' S.Sifra_Dok SifraPodel, TD.ImeDok ImePodel, '
  135015. --    Set @SSQL = ' TS.Sifra_Sur Sifra_art, K.ImeArt, 
  135016.     Set @SSQL = '     Round(Sum(dbo.fn_vr_osnov(S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  135017.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  135018.             Round(Sum(dbo.fn_vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, 
  135019.             Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, 
  135020.             Round(Sum(S.Kolic*S.NabCena),4) Vr_Nabavna,
  135021.             Count(Distinct D.Sifra_Kup) As Komintenti,
  135022.             Count(Distinct D.DokrID) As BrojFakturi,
  135023.             Round(Sum(S.Kolic),4) as Kolicina, Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.FIX_BrandKolic(K.KolkuDrg)),4) as BrandKolic,
  135024.             Round(Sum(S.Kolic*K.BTezina),4) as BrutoTezina, Round(Sum(S.Kolic*K.Tezina),4) as NetoTezina,
  135025.             Round(Sum(TS.Ima_Kolic*S.Kolic*K.Tezina/100000), 4) As Hektolitri,
  135026.             Round(Sum(TS.Ima_Kolic*S.Kolic*K.Volumen/1000), 4) As Volumen '
  135027.  
  135028.     Set @SSQLFrom = ' From #tSostav TS
  135029.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  135030.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  135031.         Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 
  135032.         Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  135033.         Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  135034.     If @GrKup Is Not Null
  135035.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  135036.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  135037.     If @GrArt Is Not Null
  135038.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  135039.  
  135040.     If @Podelba = 'D1'
  135041.         Set @SSQL2 = 'Left Outer Join KDrugo1 KD1 ON KUP.KDrugo1=KD1.Sifra_1K '
  135042.     Else If @Podelba = 'D2'
  135043.         Set @SSQL2 = 'Left Outer Join KDrugo2 KD2 ON KUP.KDrugo2=KD2.Sifra_2K '
  135044.     Else If @Podelba = 'D3'
  135045.         Set @SSQL2 = 'Left Outer Join KDrugo3 KD3 ON KUP.KDrugo3=KD3.Sifra_3K '
  135046.     Else If @Podelba = 'D4'
  135047.         Set @SSQL2 = 'Left Outer Join KDrugo4 KD4 ON KUP.KDrugo4=KD4.Sifra_4K '
  135048.     Else If @Podelba = 'D5'
  135049.         Set @SSQL2 = 'Left Outer Join KDrugo5 KD5 ON KUP.KDrugo5=KD5.Sifra_5K '
  135050.     Else If @Podelba = 'D6'
  135051.         Set @SSQL2 = 'Left Outer Join KDrugo6 KD6 ON KUP.KDrugo6=KD6.Sifra_6K '
  135052.     Else If @Podelba = 'D7'
  135053.         Set @SSQL2 = 'Left Outer Join KDrugo7 KD7 ON KUP.KDrugo7=KD7.Sifra_7K '
  135054.     Else If @Podelba = 'TK'
  135055.         Set @SSQL2 = 'Left Outer Join GTipKup GT ON KUP.TipKup=GT.TipKup '
  135056.     Else If @Podelba = 'GR'
  135057.         Set @SSQL2 = 'Left Outer Join Grad GR ON KUP.Sifra_Grad=GR.Sifra_Grad '
  135058.     Else If @Podelba = 'RE'
  135059.         Set @SSQL2 = 'Left Outer Join GREGION RE ON KUP.Sifra_Reg=RE.Sifra_Reg '
  135060.     Else If @Podelba = 'NI'
  135061.         Set @SSQL2 = 'Left Outer Join NIVO NI ON KUP.Sifra_Nivo=NI.Sifra_Nivo '
  135062.     Else If @Podelba = 'ST'
  135063.         Set @SSQL2 = 'Left Outer Join TipKomint TK ON KUP.Sifra_Tip=TK.Sifra_Tip '
  135064.     Else If @Podelba = 'PT'
  135065.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON KUP.Sifra_Pat=Pat.Sifra_Pat '
  135066.     Else If @Podelba = 'PI'
  135067.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON D.Sifra_Pat=Pat.Sifra_Pat '
  135068.     Else If @Podelba = 'OE'
  135069.         Set @SSQL2 = 'Left Outer Join Orged OE ON Oe.Sifra_Oe=S.Sifra_Oe '
  135070.     Else If @Podelba = 'VP'
  135071.         Set @SSQL2 = 'Left Outer Join VidProdObj VPJ On KUP.Sifra_Vpj=Vpj.Sifra_Vpj '
  135072.     Else If @Podelba = 'TD'
  135073.         Set @SSQL2 = 'Left Outer Join TipDok TD ON TD.Sifra_Dok=S.Sifra_Dok '
  135074.  
  135075.     If @PodelArt = 'PG'
  135076.         If @KolkuMesta Is Not Null
  135077.             Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Podgrupi PG On PG.Sifra_Podg = Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + ') '
  135078.         Else
  135079.             Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg '
  135080.     Else If @PodelArt = 'GR'
  135081.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Podgrupi PG On PG.Sifra_Podg = K.Sifra_Podg
  135082.                                    Left Outer Join Grupi G On G.Sifra_Gr = PG.Sifra_Gr '
  135083.     Else If @PodelArt = 'BR'
  135084.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join DrgPodel BR On BR.Sifra_Drg = K.Sifra_Drg '
  135085.     Else If @PodelArt = 'D1'
  135086.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Drugo1 D1 On D1.Sifra_1 = K.Drugo1 '
  135087.     Else If @PodelArt = 'D2'
  135088.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Drugo2 D2 On D2.Sifra_2 = K.Drugo2 '
  135089.     Else If @PodelArt = 'D3'
  135090.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Drugo3 D3 On D3.Sifra_3 = K.Drugo3 '
  135091.     Else If @PodelArt = 'D4'
  135092.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Drugo4 D4 On D4.Sifra_4 = K.Drugo4 '
  135093.     Else If @PodelArt = 'D5'
  135094.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Drugo5 D5 On D5.Sifra_5 = K.Drugo5 '
  135095.     Else If @PodelArt = 'D6'
  135096.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Drugo6 D6 On D6.Sifra_6 = K.Drugo6 '
  135097.     Else If @PodelArt = 'D7'
  135098.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Drugo7 D7 On D7.Sifra_7 = K.Drugo7 '
  135099.     Else If @PodelArt = 'KT'
  135100.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Komint KT On KT.Sifra_Kup = K.Kto '
  135101.     Else If @PodelArt = 'KH'
  135102.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join KatHier KH On KH.Sifra_KHier = Substring(K.Sifra_KHier,1,2) '
  135103.     Else If @PodelArt = 'H1'
  135104.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join KatHier H1 On H1.Sifra_KHier=K.Sifra_KHier
  135105.                                   Left Outer Join KatHier H2 On H2.Sifra_KHier=H1.Sifra_KHier_Hier
  135106.                                   Left Outer Join KatHier H3 On H3.Sifra_KHier=H2.Sifra_KHier_Hier '
  135107.     Else If @PodelArt = 'DI'
  135108.         Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join Divizii DI On DI.Sifra_Div = K.Sifra_Div '
  135109. --    Else If @PodelArt = 'TD'
  135110. --        Set @SSQLArtJoin = @SSQLArtJoin + ' Left Outer Join TipDok TD ON TD.Sifra_Dok=S.Sifra_Dok '
  135111.  
  135112.     Set @SSQL3 = ''
  135113.     If @Sifra_Gr Is Not Null And @PodelArt Not in ('PG', 'GR')
  135114.         Set @SSQL3 = @SSQL3 + 'Inner Join PodGrupi PG ON K.Sifra_Podg=PG.Sifra_Podg '
  135115.     Set @SSQL3 = @SSQL3 + 'Where K.Iskluci <> ''D'' '
  135116.     If @Sifra_Art_Od Is Not NULL        --POSLE OVDE PROSIRI KAKO STO E ZA GRADOVI, REGIONI
  135117.         Set @SSQL3 = @SSQL3 + ' And K.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  135118.     If @Sifra_Art_Do Is Not NULL
  135119.         Set @SSQL3 = @SSQL3 + ' And K.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  135120.     If @TipKup Is Not NULL
  135121.            Begin
  135122.         Set @SSQL3 = @SSQL3 + ' And ((KO.TipKup Is Not Null And KO.TipKup In (' + @TipKup + '))
  135123.                           Or (KO.TipKup Is Null And Kup.TipKup In (' + @TipKup + '))) '
  135124.            End
  135125.     If @TipDokProd is not null
  135126.         Set @SSQL3 = @SSQL3 + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  135127.     If @Pod1 Is Not NULL
  135128.         If @KFPod1 = 'D'
  135129.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  135130.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  135131.         Else
  135132.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  135133.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  135134.     If @Pod2 Is Not NULL
  135135.         If @KFPod2 = 'D'
  135136.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  135137.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  135138.         Else
  135139.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  135140.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  135141.     If @Pod3 Is Not NULL
  135142.         If @KFPod3 = 'D'
  135143.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  135144.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  135145.         Else
  135146.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  135147.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  135148.     If @Pod4 Is Not NULL
  135149.         If @KFPod4 = 'D'
  135150.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  135151.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  135152.         Else
  135153.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  135154.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  135155.     If @Pod5 Is Not NULL
  135156.         If @KFPod5 = 'D'
  135157.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  135158.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  135159.         Else
  135160.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  135161.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  135162.     If @Pod6 Is Not NULL
  135163.         If @KFPod6 = 'D'
  135164.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  135165.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  135166.         Else
  135167.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  135168.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  135169.     If @Pod7 Is Not NULL
  135170.         If @KFPod7 = 'D'
  135171.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  135172.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  135173.         Else
  135174.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  135175.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  135176.     If @Sifra_Tip Is Not NULL
  135177.         Set @SSQL3 = @SSQL3 + ' And Kup.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  135178.     If @Sifra_VPJ Is Not NULL
  135179.            Begin
  135180.         Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_VPJ Is Not Null And KO.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(6)) + ')
  135181.                       Or (KO.Sifra_VPJ Is Null And Kup.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(6)) + ')) '
  135182.            End
  135183.     If @Sifra_Nivo Is Not NULL
  135184.         Set @SSQL3 = @SSQL3 + ' And KUP.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  135185.     If @Lokacija Is Not NULL
  135186.         Set @SSQL3 = @SSQL3 + ' And K.Lokacija=''' + @Lokacija + ''' '
  135187.     If @Kto Is Not NULL
  135188.         Set @SSQL3 = @SSQL3 + ' And K.Kto=' + @Kto + ' '
  135189.     If @Sifra_Podg Is Not Null
  135190.         If @PocnuvaSo = 'D'
  135191.             Set @SSQL3 = @SSQL3 + ' And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  135192.         Else 
  135193.             Set @SSQL3 = @SSQL3 + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  135194.     If @Sifra_Gr Is Not NULL
  135195.         Set @SSQL3 = @SSQL3 + ' And PG.Sifra_Gr=' + @Sifra_Gr + ' '
  135196.     If @PoKojDatum = 'V'
  135197.     Begin
  135198.         If @Datum_Od Is Not NULL
  135199.             Set @SSQL3 = @SSQL3 + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  135200.         If @Datum_Do Is Not NULL
  135201.             Set @SSQL3 = @SSQL3 + ' And D.Datum_Vnes<''' + Cast(@Datum_Do + 1 As Varchar(30)) + ''' '
  135202.     End
  135203.     Else 
  135204.     Begin
  135205.         If @Datum_Od Is Not NULL
  135206.             Set @SSQL3 = @SSQL3 + ' And S.Datum_Dok>=''' + cast(@Datum_Od As Varchar(30)) + ''' '
  135207.         If @Datum_Do Is Not NULL
  135208.             Set @SSQL3 = @SSQL3 + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  135209.     End
  135210. --    If @Datum_Od Is NOT Null
  135211. --        SET @SSQL3 = @SSQL3 + 'AND S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35))+ ''' '
  135212. --    If @Datum_Do Is NOT Null
  135213. --        SET @SSQL3 = @SSQL3 + 'AND S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35))+ ''' '
  135214.     If @Sifra_Kup_Od Is Not NULL
  135215.         Set @SSQL3 = @SSQL3 + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  135216.     If @Sifra_Kup_Do Is Not NULL
  135217.         Set @SSQL3 = @SSQL3 + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  135218.     If @Sifra_Brand Is Not NULL
  135219.         Set @SSQL3 = @SSQL3 + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  135220.     If @APod1 Is Not NULL
  135221.         Set @SSQL3 = @SSQL3 + 'And K.Drugo1=' + Cast(@APod1 As Varchar(5)) + ' '
  135222.     If @APod2 Is Not NULL
  135223.         Set @SSQL3 = @SSQL3 + 'And K.Drugo2=' + Cast(@APod2 As Varchar(5)) + ' '
  135224.     If @APod3 Is Not NULL
  135225.         Set @SSQL3 = @SSQL3 + 'And K.Drugo3=' + Cast(@APod3 As Varchar(5)) + ' '
  135226.     If @APod4 Is Not NULL
  135227.         Set @SSQL3 = @SSQL3 + 'And K.Drugo4=' + Cast(@APod4 As Varchar(5)) + ' '
  135228.     If @APod5 Is Not NULL
  135229.         Set @SSQL3 = @SSQL3 + 'And K.Drugo5=' + Cast(@APod5 As Varchar(5)) + ' '
  135230.     If @APod6 Is Not NULL
  135231.         Set @SSQL3 = @SSQL3 + 'And K.Drugo6=' + Cast(@APod6 As Varchar(5)) + ' '
  135232.     If @APod7 Is Not NULL
  135233.         Set @SSQL3 = @SSQL3 + 'And K.Drugo7=' + Cast(@APod7 As Varchar(5)) + ' '
  135234.     If @Sifra_Div Is Not NULL
  135235.         Set @SSQL3 = @SSQL3 + 'And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(5)) + ' '
  135236.     If @Sifra_OE Is Not NULL    
  135237.         Set @SSQL3  = @SSQL3 + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  135238.     If @KoiOE Is Not NULL
  135239.              Set @SSQL3 = @SSQL3 + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  135240.     If @Koi_Gradovi Is Not NULL    
  135241.         Begin
  135242.             Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  135243.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  135244.         End
  135245.     If @Koi_Regioni Is Not NULL    
  135246.         Begin
  135247.             Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  135248.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  135249.         End
  135250.        If @KomercKako = 'I'
  135251.         If @KoiPat IS NOT NULL
  135252.             SET @SSQL3 = @SSQL3 + ' AND D.Sifra_Pat In (' + @KoiPat + ') '
  135253.        If @KomercKako = 'T'
  135254.         If @KoiPat IS NOT NULL
  135255.             Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @KoiPat + ')) 
  135256.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @KoiPat + '))) '
  135257.     If @KlucniDobav Is Not Null
  135258.         Set @SSQL3 = @SSQL3 + ' And K.Kto IN (' + @KlucniDobav + ') '
  135259.  
  135260.     If @Podelba = 'D1'
  135261.         Set @SSQL4 = 'Group By KUP.KDrugo1, KD1.Ime_1k, '
  135262.     Else If @Podelba = 'D2'
  135263.         Set @SSQL4 = 'Group By KUP.KDrugo2, KD2.Ime_2K, '
  135264.     Else If @Podelba = 'D3'
  135265.         Set @SSQL4 = 'Group By KUP.KDrugo3, KD3.Ime_3K, '
  135266.     Else If @Podelba = 'D4'
  135267.         Set @SSQL4 = 'Group By KUP.KDrugo4, KD4.Ime_4K, '
  135268.     Else If @Podelba = 'D5'
  135269.         Set @SSQL4 = 'Group By KUP.KDrugo5, KD5.Ime_5K, '
  135270.     Else If @Podelba = 'D6'
  135271.         Set @SSQL4 = 'Group By KUP.KDrugo6, KD6.Ime_6K, '
  135272.     Else If @Podelba = 'D7'
  135273.         Set @SSQL4 = 'Group By KUP.KDrugo7, KD7.Ime_7K, '
  135274.     Else If @Podelba = 'TK'
  135275.         Set @SSQL4 = 'Group By KUP.TipKup, GT.ImeTipKup, '
  135276.     Else If @Podelba = 'NI'
  135277.         Set @SSQL4 = 'Group By KUP.Sifra_Nivo, NI.ImeNivo, '
  135278.     Else If @Podelba = 'GR'
  135279.         Set @SSQL4 = 'Group By KUP.Sifra_Grad, GR.ImeGrad, '
  135280.     Else If @Podelba = 'RE'
  135281.         Set @SSQL4 = 'Group By KUP.Sifra_Reg, RE.ImeRegion, '
  135282.     Else If @Podelba = 'ST'
  135283.         Set @SSQL4 = 'Group By KUP.Sifra_Tip, TK.ImeTip, '
  135284.     Else If @Podelba = 'PT'
  135285.         Set @SSQL4 = 'Group By KUP.Sifra_Pat, Pat.ImePat, '
  135286.     Else If @Podelba = 'PI'
  135287.         Set @SSQL4 = 'Group By D.Sifra_Pat, Pat.ImePat, '
  135288.     Else If @Podelba = 'OE'
  135289.         Set @SSQL4 = 'Group By S.Sifra_Oe, Oe.ImeOrg, '
  135290.     Else If @Podelba = 'KO'
  135291.         Set @SSQL4 = 'Group By D.Sifra_Kup, Kup.ImeKup, '
  135292.     Else If @Podelba = 'OB'
  135293.         Set @SSQL4 = 'Group By D.Sifra_Kup + '' '' + (Case When D.Sifra_Obj Is Not Null Then dbo.fn_levonuli(Cast(D.Sifra_Obj as varchar(6)),3) Else '''' End), 
  135294.                      Kup.ImeKup + '' '' + (Case When KO.ImeObj Is Not Null Then KO.ImeObj Else '''' End), '
  135295.     Else If @Podelba = 'VP'
  135296.         Set @SSQL4 = 'Group By KUP.Sifra_Vpj, VPJ.Ime_Vpj, '
  135297.     Else If @Podelba = 'ME'
  135298.         Set @SSQL4 = 'Group By (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)), '
  135299.     Else If @Podelba = 'KV'
  135300.         Set @SSQL4 = 'Group By ''0'' + Cast(DatePart(Quarter, D.Datum_Dok) as varchar(2)) + ''-'' + Cast(Year(D.Datum_Dok) as varchar(4)), '
  135301.     Else If @Podelba = 'TD'
  135302.         Set @SSQL4 = 'Group By S.Sifra_Dok, TD.ImeDok, '
  135303.  
  135304.     If @PodelArt = 'AR'
  135305.         If @Alt_ImeArt = 'D'
  135306.             Set @SSQLArtGroup = @SSQLArtGroup + ' K.Alt_Sifra, K.Alt_Ime  '
  135307.         Else
  135308.             Set @SSQLArtGroup = @SSQLArtGroup + ' TS.Sifra_Sur, K.ImeArt '
  135309.     Else If @PodelArt = 'PG'
  135310.         If @KolkuMesta Is Not Null
  135311.             Set @SSQLArtGroup = @SSQLArtGroup + ' Substring(K.Sifra_Podg, 1, ' + cast(@KolkuMesta as varchar(1)) + '), PG.Ime_Podg '
  135312.         Else
  135313.             Set @SSQLArtGroup = @SSQLArtGroup + ' K.Sifra_Podg, PG.Ime_Podg '
  135314.     Else If @PodelArt = 'GR'
  135315.         Set @SSQLArtGroup = @SSQLArtGroup + ' PG.Sifra_Gr, G.Ime_Gr '
  135316.     Else If @PodelArt = 'BR'
  135317.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Sifra_Drg, BR.Ime '
  135318.     Else If @PodelArt = 'D1'
  135319.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Drugo1, D1.Ime_1 '
  135320.     Else If @PodelArt = 'D2'
  135321.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Drugo2, D2.Ime_2 '
  135322.     Else If @PodelArt = 'D3'
  135323.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Drugo3, D3.Ime_3 '    
  135324.     Else If @PodelArt = 'D4'
  135325.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Drugo4, D4.Ime_4 '
  135326.     Else If @PodelArt = 'D5'
  135327.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Drugo5, D5.Ime_5 '
  135328.     Else If @PodelArt = 'D6'
  135329.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Drugo6, D6.Ime_6 '
  135330.     Else If @PodelArt = 'D7'
  135331.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Drugo7, D7.Ime_7 '
  135332.     Else If @PodelArt = 'KT'
  135333.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Kto, KT.ImeKup '
  135334.     Else If @PodelArt = 'ME'
  135335.         Set @SSQLArtGroup = @SSQLArtGroup + ' (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)) '
  135336.     Else If @PodelArt = 'KV'
  135337.         Set @SSQLArtGroup = @SSQLArtGroup + ' ''0'' + Cast(DatePart(Quarter, D.Datum_Dok) as varchar(2)) + ''-'' + Cast(Year(D.Datum_Dok) as varchar(4)) '
  135338.     Else If @PodelArt = 'KH'
  135339.         Set @SSQLArtGroup = @SSQLArtGroup + ' Substring(K.Sifra_KHier,1,2), KH.Ime_KHier '
  135340.     Else If @PodelArt = 'H1'
  135341.         Set @SSQLArtGroup = @SSQLArtGroup + ' H3.Sifra_KHier, H3.Ime_KHier '
  135342.     Else If @PodelArt = 'DI'
  135343.         Set @SSQLArtGroup = @SSQLArtGroup + ' K.Sifra_Div, DI.ImeDiv '
  135344. --    Else If @PodelArt = 'TD'
  135345. --        Set @SSQLArtGroup = @SSQLArtGroup + ' S.Sifra_Dok, TD.ImeDok '
  135346. --    Set @SSQL5 = ' TS.Sifra_Sur, K.ImeArt '
  135347.     Create Table #Rezultati 
  135348.     (
  135349.     Tip         char(30),
  135350.     Ime        varchar(80),
  135351.     SifraPodel    varchar(30),
  135352.     ImePodel    char(80),
  135353.     Vr_Osnov    decimal(18,6),
  135354.     Vr_SoRabat    decimal(18,6),
  135355.     Vr_Krajna    decimal(18,6),
  135356.     Vr_NPS        decimal(18,6),
  135357.     Vr_Nabavna    decimal(18,6),
  135358.     Komitenti    decimal(18,6),
  135359.     BrFakturi    int,
  135360.     Kolicina        decimal(18,6),
  135361.     Procent        decimal(18,6),
  135362.     BrandKolic    decimal(18,6),
  135363.     BrutoTezina    decimal(18,6),
  135364.     NetoTezina    decimal(18,6),
  135365.     Hektolitri    decimal(18,6),
  135366.     Volumen    decimal(18,6)
  135367.     )
  135368. print '1'
  135369. print @SSQL3
  135370. Print'2'
  135371. Print @SSQL1+@SSQLArt+@SSQL+@SSQLFrom+@SSQL2+@SSQLArtJoin+@SSQL3+' And D.Sifra_Obj IS NULL '+@SSQL4+@SSQLArtGroup+@SSQL5
  135372.     Insert Into #Rezultati(Tip, Ime,  SifraPodel, ImePodel, Vr_Osnov, Vr_SoRabat, Vr_Krajna, Vr_NPS, Vr_Nabavna, Komitenti, BrFakturi, Kolicina, BrandKolic, BrutoTezina, NetoTezina, Hektolitri, Volumen)
  135373.     Exec(@SSQL1+@SSQLArt+@SSQL+@SSQLFrom+@SSQL2+@SSQLArtJoin+@SSQL3+' And D.Sifra_Obj IS NULL '+@SSQL4+@SSQLArtGroup+@SSQL5)
  135374.  
  135375.     ----------------------------------------------- P R E T H O D N I   B A Z I ----------------------------------------------------------
  135376.     If @PrethBazaOd = 'K' Or @ParalenliBazi Is Not Null
  135377.     Begin
  135378.         Declare @ImeBaza as varchar(30)
  135379.         Create Table #Bazi
  135380.         (
  135381.             ImeBaza    varchar(30)
  135382.         )
  135383.         If @PrethBazaOd = 'K'        
  135384.         Begin 
  135385.             Set @SSQLFrom = ' Insert Into #Bazi Select PrethBaza From Konfig '
  135386.             Exec (@SSQLFrom)
  135387.         End
  135388.         If @ParalenliBazi Is Not Null
  135389.         Begin
  135390.             Declare @Poz_Delim Smallint
  135391.             Declare @Poz_Start Smallint
  135392.             Declare @BazaIme varchar(50)
  135393.             If @ParalenliBazi Is Null 
  135394.                 Set @ParalenliBazi = ''
  135395.             Set @Poz_Start = 0
  135396.             While 1=1
  135397.             Begin
  135398.                 Set @Poz_Delim = Charindex(',', @ParalenliBazi, @Poz_Start)
  135399.                 If @Poz_Delim = 0
  135400.                     Break
  135401.                 Set @BazaIme = SubString(@ParalenliBazi, @Poz_Start, @Poz_Delim-@Poz_Start)
  135402.                 Set @Poz_Start = @Poz_Delim + 1
  135403.                 Insert Into #Bazi Select @BazaIme
  135404.             End
  135405.         End
  135406.  
  135407.         If Exists (Select ImeBaza From #Bazi)
  135408.         Begin
  135409.             Declare CursorBazi Cursor Fast_Forward For Select ImeBaza From #Bazi
  135410.             Open CursorBazi
  135411.             Fetch Next From CursorBazi Into @ImeBaza
  135412.             While @@Fetch_Status = 0
  135413.             Begin
  135414.                 Set @SSQLFrom = ' From #tSostav TS
  135415.                     Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  135416.                     Inner Join ' + @ImeBaza + '..Stavr S On TS.Sifra_Art=S.Sifra_Art
  135417.                     Inner Join ' + @ImeBaza + '..Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 
  135418.                     Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  135419.                     Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  135420.                 If @GrKup Is Not Null
  135421.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  135422.                                     And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  135423.                 If @GrArt Is Not Null
  135424.                         Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  135425.  
  135426.                 Insert Into #Rezultati(Tip, Ime,  SifraPodel, ImePodel, Vr_Osnov, Vr_SoRabat, Vr_Krajna, Vr_NPS, Vr_Nabavna, Komitenti, BrFakturi, Kolicina, BrandKolic, BrutoTezina, NetoTezina, Hektolitri, Volumen)
  135427.                 Exec(@SSQL1+@SSQLArt+@SSQL+@SSQLFrom+@SSQL2+@SSQLArtJoin+@SSQL3+' And D.Sifra_Obj IS NULL '+@SSQL4+@SSQLArtGroup+@SSQL5)
  135428.  
  135429.                 Fetch Next From CursorBazi Into @ImeBaza
  135430.             End
  135431.             Close CursorBazi
  135432.             Deallocate CursorBazi
  135433.         End
  135434.     End
  135435.  
  135436. --select * from #rezultati
  135437. ---///////   Zatoa sto filterot po podelbi na komitenti i objekti gleda i od komintenti i od objekti sledniot del od procedurata moze da otpadne
  135438. --///////   ----------------------------------------------------------------------------- 19.07.2004
  135439. --///////  Ne moze da otpadne zatoa sto vo toj slucaj podelbite na objektite ke se zemaat samo od Komintentot a ne od podobjektot -------  16.09.2004
  135440.     If @Podelba = 'D1'
  135441.         Set @SSQL1 = 'Select KO.KDrugo1 Tip, KD1.Ime_1K Ime, '
  135442.     Else If @Podelba = 'D2'
  135443.         Set @SSQL1 = 'Select KO.KDrugo2 Tip, KD2.Ime_2K Ime, '
  135444.     Else If @Podelba = 'D3'
  135445.         Set @SSQL1 = 'Select KO.KDrugo3 Tip, KD3.Ime_3K Ime, '
  135446.     Else If @Podelba = 'D4'
  135447.         Set @SSQL1 = 'Select KO.KDrugo4 Tip, KD4.Ime_4K Ime, '
  135448.     Else If @Podelba = 'D5'
  135449.         Set @SSQL1 = 'Select KO.KDrugo5 Tip, KD5.Ime_5K Ime, '
  135450.     Else If @Podelba = 'D6'
  135451.         Set @SSQL1 = 'Select KO.KDrugo6 Tip, KD6.Ime_6K Ime, '
  135452.     Else If @Podelba = 'D7'
  135453.         Set @SSQL1 = 'Select KO.KDrugo7 Tip, KD7.Ime_7K Ime, '
  135454.     Else If @Podelba = 'TK'
  135455.         Set @SSQL1 = 'Select KO.TipKup Tip, GT.ImeTipKup Ime, '
  135456.     Else If @Podelba = 'NI'
  135457.         Set @SSQL1 = 'Select KO.Sifra_Nivo Tip, NI.ImeNivo Ime, '
  135458.     Else If @Podelba = 'GR'
  135459.         Set @SSQL1 = 'Select KO.Sifra_Grad Tip, GR.ImeGrad Ime, '
  135460.     Else If @Podelba = 'RE'
  135461.         Set @SSQL1 = 'Select KO.Sifra_Reg Tip, RE.ImeRegion Ime, '
  135462. --    Else If @Podelba = 'ST'
  135463. --        Set @SSQL1 = 'Select KO.Sifra_Tip Tip, TK.ImeTip Ime, '
  135464.     Else If @Podelba = 'ST'
  135465.         Set @SSQL1 = 'Select Kup.Sifra_Tip Tip, TK.ImeTip Ime, '
  135466.     Else If @Podelba = 'OE'
  135467.         Set @SSQL1 = 'Select S.Sifra_Oe Tip, Oe.ImeOrg Ime, '
  135468.     Else If @Podelba = 'KO'
  135469.         Set @SSQL1 = 'Select D.Sifra_Kup Tip, Kup.ImeKup Ime, '
  135470.     Else If @Podelba = 'OB'
  135471.         Set @SSQL1 = 'Select D.Sifra_Kup + '' '' + (Case When D.Sifra_Obj Is Not Null Then dbo.fn_levonuli(Cast(D.Sifra_Obj as varchar(6)),3) Else '''' End) Tip, 
  135472.                      Kup.ImeKup + '' '' + (Case When KO.ImeObj Is Not Null Then KO.ImeObj Else '''' End) Ime, '
  135473.     Else If @Podelba = 'PI'
  135474.         Set @SSQL1 = 'Select D.Sifra_Pat Tip, Pat.ImePat Ime, '
  135475.     Else If @Podelba = 'PT'
  135476.         Set @SSQL1 = 'Select KO.Sifra_Pat Tip, Pat.ImePat Ime, '
  135477.     Else If @Podelba = 'VP'
  135478.         Set @SSQL1 = 'Select KO.Sifra_Vpj Tip, VPJ.Ime_Vpj Ime, '
  135479.     Else If @Podelba = 'ME'
  135480.         Set @SSQL1 = 'Select (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)) Tip, Null as Ime, '
  135481.     Else If @Podelba = 'KV'
  135482.         Set @SSQL1 = 'Select ''0'' + Cast(DatePart(Quarter, D.Datum_Dok) as varchar(2)) + ''-'' + Cast(Year(D.Datum_Dok) as varchar(4)) Tip, Null Ime, '
  135483.     Else If @Podelba = 'TD'
  135484.         Set @SSQL1 = 'Select S.Sifra_Dok Tip, (Case When S.Sifra_Dok < 10 Then ''00'' When S.Sifra_Dok >=10 And S.Sifra_Dok < 100 Then ''0'' Else '''' End) + Cast(S.Sifra_Dok as varchar(6)) + '' '' + TD.ImeDok Ime, '
  135485. --    Set @SSQL = ' TS.Sifra_Sur Sifra_art, K.ImeArt, 
  135486.     Set @SSQL = ' Round(Sum(dbo.fn_vr_osnov(S.Kolic, S.DokCena, S.DanDokCena, S.POsn)), 4) as Vr_Osnov, 
  135487.             Round(Sum(dbo.fn_vr_sorabat(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_SoRabat,
  135488.             Round(Sum(dbo.fn_vr_krajna(S.Kolic, S.DokCena, S.DanDokCena, S.POsn, S.Uces, D.Kasa)), 4) as Vr_Krajna, 
  135489.             Round(Sum(S.Kolic*K.GotCena), 4) As Vr_NPS, 
  135490.             Round(Sum(S.Kolic*S.NabCena),4) Vr_Nabavna,
  135491.             Count(Distinct D.Sifra_Kup+cast(d.sifra_obj as varchar(6))) As Komintenti,
  135492.             Count(Distinct D.DokrID) As BrojFakturi,
  135493.             Round(Sum(S.Kolic),4) as Kolicina, Round(Sum(S.Kolic*TS.Ima_Kolic*dbo.fix_BrandKolic(K.KolkuDrg)),4) as BrandKolic,
  135494.             Round(Sum(S.Kolic*K.BTezina),4) BrutoTezina, Round(Sum(S.Kolic*K.Tezina),4) NetoTezina,
  135495.             Round(Sum(TS.Ima_Kolic*S.Kolic*K.Tezina/100000), 4) As Hektolitri, 
  135496.             Round(Sum(TS.Ima_Kolic*S.Kolic*K.Volumen/1000), 4) As Voumen '
  135497.  
  135498.     Set @SSQLFrom = ' From #tSostav TS
  135499.             Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  135500.             Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  135501.             Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 
  135502.             Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  135503.             Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  135504.     If @GrKup Is Not Null
  135505.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  135506.                         And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  135507.     If @GrArt Is Not Null
  135508.         Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  135509.  
  135510.     If @Podelba = 'D1'
  135511.         Set @SSQL2 = 'Left Outer Join KDrugo1 KD1 ON KO.KDrugo1=KD1.Sifra_1K '
  135512.     Else If @Podelba = 'D2'
  135513.         Set @SSQL2 = 'Left Outer Join KDrugo2 KD2 ON KO.KDrugo2=KD2.Sifra_2K '
  135514.     Else If @Podelba = 'D3'
  135515.         Set @SSQL2 = 'Left Outer Join KDrugo3 KD3 ON KO.KDrugo3=KD3.Sifra_3K '
  135516.     Else If @Podelba = 'D4'
  135517.         Set @SSQL2 = 'Left Outer Join KDrugo4 KD4 ON KO.KDrugo4=KD4.Sifra_4K '
  135518.     Else If @Podelba = 'D5'
  135519.         Set @SSQL2 = 'Left Outer Join KDrugo5 KD5 ON KO.KDrugo5=KD5.Sifra_5K '
  135520.     Else If @Podelba = 'D6'
  135521.         Set @SSQL2 = 'Left Outer Join KDrugo6 KD6 ON KO.KDrugo6=KD6.Sifra_6K '
  135522.     Else If @Podelba = 'D7'
  135523.         Set @SSQL2 = 'Left Outer Join KDrugo7 KD7 ON KO.KDrugo7=KD7.Sifra_7K '
  135524.     Else If @Podelba = 'TK'
  135525.         Set @SSQL2 = 'Left Outer Join GTipKup GT ON KO.TipKup=GT.TipKup '
  135526.     Else If @Podelba = 'GR'
  135527.         Set @SSQL2 = 'Left Outer Join Grad GR ON KO.Sifra_Grad=GR.Sifra_Grad '
  135528.     Else If @Podelba = 'RE'
  135529.         Set @SSQL2 = 'Left Outer Join GREGION RE ON KO.Sifra_Reg=RE.Sifra_Reg '
  135530.     Else If @Podelba = 'NI'
  135531.         Set @SSQL2 = 'Left Outer Join NIVO NI ON KO.Sifra_Nivo=NI.Sifra_Nivo '
  135532. --    Else If @Podelba = 'ST'
  135533. --        Set @SSQL2 = 'Left Outer Join TipKomint TK ON KO.Sifra_Tip=TK.Sifra_Tip '
  135534.     Else If @Podelba = 'ST'
  135535.         Set @SSQL2 = 'Left Outer Join TipKomint TK ON Kup.Sifra_Tip=TK.Sifra_Tip '
  135536.     Else If @Podelba = 'PT'
  135537.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON KO.Sifra_Pat=Pat.Sifra_Pat '
  135538.     Else If @Podelba = 'PI'
  135539.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON D.Sifra_Pat=Pat.Sifra_Pat '
  135540.     Else If @Podelba = 'OE'
  135541.         Set @SSQL2 = 'Left Outer Join Orged OE ON OE.Sifra_Oe=S.Sifra_Oe '
  135542.     Else If @Podelba = 'VP'
  135543.         Set @SSQL2 = 'Left Outer Join VidProdObj VPJ ON KO.Sifra_Vpj=VPJ.Sifra_Vpj '
  135544.     Else If @Podelba = 'TD'
  135545.         Set @SSQL2 = 'Left Outer Join TipDok TD ON TD.Sifra_Dok=S.Sifra_Dok '
  135546.     If @Podelba = 'D1'
  135547.         Set @SSQL4 = 'Group By KO.KDrugo1, KD1.Ime_1k, '
  135548.     Else If @Podelba = 'D2'
  135549.         Set @SSQL4 = 'Group By KO.KDrugo2, KD2.Ime_2K, '
  135550.     Else If @Podelba = 'D3'
  135551.         Set @SSQL4 = 'Group By KO.KDrugo3, KD3.Ime_3K, '
  135552.     Else If @Podelba = 'D4'
  135553.         Set @SSQL4 = 'Group By KO.KDrugo4, KD4.Ime_4K, '
  135554.     Else If @Podelba = 'D5'
  135555.         Set @SSQL4 = 'Group By KO.KDrugo5, KD5.Ime_5K, '
  135556.     Else If @Podelba = 'D6'
  135557.         Set @SSQL4 = 'Group By KO.KDrugo6, KD6.Ime_6K, '
  135558.     Else If @Podelba = 'D7'
  135559.         Set @SSQL4 = 'Group By KO.KDrugo7, KD7.Ime_7K, '
  135560.     Else If @Podelba = 'TK'
  135561.         Set @SSQL4 = 'Group By KO.TipKup, GT.ImeTipKup, '
  135562.     Else If @Podelba = 'NI'
  135563.         Set @SSQL4 = 'Group By KO.Sifra_Nivo, NI.ImeNivo, '
  135564.     Else If @Podelba = 'GR'
  135565.         Set @SSQL4 = 'Group By KO.Sifra_Grad, GR.ImeGrad, '
  135566.     Else If @Podelba = 'RE'
  135567.         Set @SSQL4 = 'Group By KO.Sifra_Reg, RE.ImeRegion, '
  135568. --    Else If @Podelba = 'ST'
  135569. --        Set @SSQL4 = 'Group By KO.Sifra_Tip, TK.ImeTip, '
  135570.     Else If @Podelba = 'ST'
  135571.         Set @SSQL4 = 'Group By Kup.Sifra_Tip, TK.ImeTip, '
  135572.     Else If @Podelba = 'PT'
  135573.         Set @SSQL4 = 'Group By KO.Sifra_Pat, Pat.ImePat, '
  135574.     Else If @Podelba = 'PI'
  135575.         Set @SSQL4 = 'Group By D.Sifra_Pat, Pat.ImePat, '
  135576.     Else If @Podelba = 'KO'
  135577.         Set @SSQL4 = 'Group By D.Sifra_Kup, Kup.ImeKup, '
  135578.     Else If @Podelba = 'OB'
  135579.         Set @SSQL4 = 'Group By D.Sifra_Kup + '' '' + (Case When D.Sifra_Obj Is Not Null Then dbo.fn_levonuli(Cast(D.Sifra_Obj as varchar(6)),3) Else '''' End), 
  135580.                      Kup.ImeKup + '' '' + (Case When KO.ImeObj Is Not Null Then KO.ImeObj Else '''' End), '
  135581.     Else If @Podelba = 'VP'
  135582.         Set @SSQL4 = 'Group By KO.Sifra_Vpj, VPJ.Ime_Vpj, '
  135583.     Else If @Podelba = 'ME'
  135584.         Set @SSQL4 = 'Group By (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)), '
  135585.     Else If @Podelba = 'KV'
  135586.         Set @SSQL4 = 'Group By ''0'' + Cast(DatePart(Quarter, D.Datum_Dok) as varchar(2)) + ''-'' + Cast(Year(D.Datum_Dok) as varchar(4)), '
  135587.     Else If @Podelba = 'TD'
  135588.         Set @SSQL4 = 'Group By S.Sifra_Dok, TD.ImeDok, '
  135589.  
  135590.     Insert Into #Rezultati(Tip, Ime,  SifraPodel, ImePodel, Vr_Osnov, Vr_SoRabat, Vr_Krajna, Vr_NPS, Vr_Nabavna, Komitenti, BrFakturi, Kolicina, BrandKolic, BrutoTezina, NetoTezina, Hektolitri, Volumen)
  135591.     Exec(@SSQL1+@SSQLArt+@SSQL+@SSQLFrom+@SSQL2+@SSQLArtJoin+@SSQL3+' And D.Sifra_Obj IS NOT NULL '+@SSQL4+@SSQLArtGroup+@SSQL5)
  135592. --    Exec(@SSQL1+@SSQL+@SSQL2+@SSQL3+' And D.Sifra_Obj IS NOT NULL '+@SSQL4+@SSQL5)
  135593. Print @SSQL1+@SSQLArt+@SSQL+@SSQLFrom+@SSQL2+@SSQLArtJoin+@SSQL3+' And D.Sifra_Obj IS NOT NULL '+@SSQL4+@SSQLArtGroup+@SSQL5
  135594.  
  135595.     ----------------------------------------------- P R E T H O D N I   B A Z I ----------------------------------------------------------
  135596.     If @PrethBazaOd = 'K' Or @ParalenliBazi Is Not Null
  135597.     Begin
  135598.         If Exists (Select ImeBaza From #Bazi)
  135599.         Begin
  135600.             Declare CursorBazi Cursor Fast_Forward For Select ImeBaza From #Bazi
  135601.             Open CursorBazi
  135602.             Fetch Next From CursorBazi Into @ImeBaza
  135603.             While @@Fetch_Status = 0
  135604.             Begin
  135605.                 Set @SSQLFrom = ' From #tSostav TS
  135606.                         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  135607.                         Inner Join ' + @ImeBaza + '..Stavr S On TS.Sifra_Art=S.Sifra_Art
  135608.                         Inner Join ' + @ImeBaza + '..Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 
  135609.                         Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  135610.                         Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  135611.                 If @GrKup Is Not Null
  135612.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  135613.                                     And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  135614.                 If @GrArt Is Not Null
  135615.                     Set @SSQLFrom = @SSQLFrom + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  135616.  
  135617.                 Insert Into #Rezultati(Tip, Ime,  SifraPodel, ImePodel, Vr_Osnov, Vr_SoRabat, Vr_Krajna, Vr_NPS, Vr_Nabavna, Komitenti, BrFakturi, Kolicina, BrandKolic, BrutoTezina, NetoTezina, Hektolitri, Volumen)
  135618.                 Exec(@SSQL1+@SSQLArt+@SSQL+@SSQLFrom+@SSQL2+@SSQLArtJoin+@SSQL3+' And D.Sifra_Obj IS NOT NULL '+@SSQL4+@SSQLArtGroup+@SSQL5)
  135619.  
  135620.                 Fetch Next From CursorBazi Into @ImeBaza
  135621.             End
  135622.             Close CursorBazi
  135623.             Deallocate CursorBazi
  135624.         End
  135625.     End
  135626.  
  135627. ---///////////-----------------------------------------   DO OVDE   ----------------------------------------------------------------------------------------------------------------
  135628. --select * from #rezultati
  135629.     Declare @Vkupno decimal(18,6)
  135630.     Set @Vkupno = (select Sum(Kolicina) From #Rezultati)
  135631.     Update #Rezultati
  135632.     Set #Rezultati.Procent = (Case When @Vkupno<>0 Then #Rezultati.Kolicina/@Vkupno*100 Else 0 End)    
  135633. --select * from #rezultati
  135634.     If @Podelba = 'ME'
  135635.         Update #Rezultati Set Ime = Tip
  135636.     If @PodelArt = 'ME'
  135637.         Update #Rezultati Set ImePodel = SifraPodel
  135638.     If @Podelba = 'KV'
  135639.         Update #Rezultati Set Ime = substring(Tip, 1, 2) + ' kvartal ' +  substring(Tip, 4, 4)
  135640.     If @PodelArt = 'KV'
  135641.         Update #Rezultati Set ImePodel = substring(SifraPodel, 1, 2) + ' kvartal ' +  substring(SifraPodel, 4, 4)
  135642.  
  135643.     Set @SSQL = ' Select R.Tip, R.Ime, R.SifraPodel, R.ImePodel, 
  135644.             Round(Sum(R.Vr_Osnov), 4) Vr_Osnov, Round(Sum(R.Vr_SoRabat), 4) Vr_SoRabat, Round(Sum(R.Vr_Krajna), 4) Vr_Krajna, 
  135645.             Round(Sum(R.Vr_NPS), 4) Vr_NPS, Round(Sum(R.Komitenti), 4) Brojnost, Round(Sum(R.Kolicina), 4) Kolicina, 
  135646.             Round(Sum(R.Procent), 4) Procent, Round(Sum(R.BrandKolic), 4) BrandKolic, Round(Sum(R.BrutoTezina), 4) BrutoTezina, 
  135647.             Round(Sum(R.NetoTezina), 4) NetoTezina, Sum(R.Vr_Nabavna) Vr_Nabavna, Sum(R.Vr_SoRabat - R.Vr_Nabavna) Vr_RazlCena,
  135648.             Round(Sum(Hektolitri), 4) Hektolitri, Sum(R.BrFakturi) BrFakturi, Round(Sum(Volumen), 4) Volumen '
  135649.     if @IzvBat = 'D' 
  135650.     begin
  135651.         if @Podelba = 'KO'
  135652.             Set @SSQL = @SSQL + ' , Kom.KDrugo1, Kom.KDrugo2  '
  135653.         else if @PodelArt = 'AR'
  135654.             Set @SSQL = @SSQL + ' , Kata.Sifra_Podg, Podg.Ime_Podg, Podg.Sifra_Gr,
  135655.                         Round(Sum(R.Kolicina / case when kata.imakomerc = 0 then 1 else kata.imakomerc end), 4) KolicPak '
  135656.     end
  135657.     If @Podelba = 'OB'
  135658.         Set @SSQL = @SSQL + ', KD7.Sifra_7K, KD7.Ime_7K '
  135659.     Else 
  135660.         Set @SSQL = @SSQL + ', Null Sifra_7K, Null Ime_7K '
  135661.  
  135662.     Set @SSQL = @SSQL + ' From #Rezultati R '
  135663.  
  135664.     if @IzvBat = 'D'
  135665.     begin
  135666.         if  @Podelba = 'KO'
  135667.             Set @SSQL = @SSQL + ' Left Outer Join Komint Kom on Kom.Sifra_Kup = R.Tip '
  135668.         else if @PodelArt = 'AR'
  135669.             Set @SSQL = @SSQL + ' Left Outer Join Katart Kata on Kata.SifrA_art = R.SifraPodel
  135670.                           left Outer Join Podgrupi Podg on Podg.SifrA_Podg = Kata.Sifra_Podg '
  135671.     end
  135672.     If @Podelba = 'OB'
  135673.         Set @SSQL = @SSQL + ' Left Outer Join Komint K7 On K7.Sifra_Kup = Substring(R.Tip,1,6)
  135674.                       Left Outer Join KObjekti KO7 On KO7.Sifra_Kup = Substring(R.Tip,1,6) And KO7.Sifra_Obj = (Case When Substring(R.Tip,8,3) <> '''' Then Substring(R.Tip,8,3) Else Null End)
  135675.                       Left Outer Join KDrugo7 KD7 on KD7.Sifra_7K = (Case When KO7.KDrugo7 Is Not Null Then KO7.KDrugo7 Else K7.KDrugo7 End) '
  135676.     If @NeraspredArt = 'N'
  135677.         Set @SSQL = @SSQL + ' Where R.SifraPodel Is Not Null '
  135678.  
  135679. -- Dodadeno 24.12.2004 za Alma
  135680.     If @NeraspredKom = 'N' and @NeraspredArt = 'D'
  135681.         Set @SSQL = @SSQL + ' Where R.Tip Is Not Null '
  135682.     If @NeraspredKom = 'N' and @NeraspredArt = 'N'
  135683.         Set @SSQL = @SSQL + ' And R.Tip Is Not Null '
  135684.  
  135685. -------------------------------------------------
  135686.  
  135687.     Set @SSQL = @SSQL + ' Group By R.Tip, R.Ime, R.SifraPodel, R.ImePodel '
  135688.     If @Podelba = 'OB'
  135689.         Set @SSQL = @SSQL + ', KD7.Sifra_7K, KD7.Ime_7K '
  135690.  
  135691.     if @IzvBat = 'D'
  135692.     begin
  135693.         if @Podelba = 'KO'
  135694.             Set @SSQL = @SSQL + ' , Kom.KDrugo1, Kom.KDrugo2 '
  135695.         else if @PodelArt = 'AR'
  135696.             Set @SSQL = @SSQL + ' , Kata.Sifra_Podg, Podg.Ime_Podg, Podg.Sifra_Gr '
  135697.     end
  135698.  
  135699.     Exec (@SSQL)
  135700. print @SSQL
  135701.  
  135702.     Select @BrKoloni = Count(Distinct Tip) From #Rezultati
  135703.  
  135704. Go
  135705. if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_prodazbapopodelbi_bezpodel]'))
  135706. drop procedure [dbo].[sp_prodazbapopodelbi_bezpodel]
  135707.  
  135708. Go
  135709.  
  135710.  
  135711. CREATE    PROCEDURE sp_ProdazbaPoPodelbi_BezPodel
  135712.     @Podelba Varchar(10) = Null,     -- D(1,2,3,4,5,6,7) - Podelba(1,2,3,4,5,6,7), TK-Tipkomint, GR-Grad, RE-Region, NI-Nivo, ST-Sifra_Tip, OE-Org.Ed, KO-Komintent, OB-Objekt 
  135713.     @Sifra_OE Smallint = Null,          -- PI-Patnik istoriski (Dokr),   PT-Patnik tekoven (Komint),  VP-Vid na prodazen objekt, ME - Meseci, TD - Tip na dokument
  135714.     @KoiOE Varchar(300) = Null,
  135715.     @Pod1 Smallint = Null,
  135716.     @Pod2 Smallint = Null,
  135717.     @Pod3 Smallint = Null,
  135718.     @Pod4 Smallint = Null,
  135719.     @Pod5 Smallint = Null,    
  135720.     @Pod6 Smallint = Null,    
  135721.     @Pod7 Smallint = Null,    
  135722.     @KFPod1 Char(1) = Null,
  135723.     @KFPod2 Char(1) = Null,
  135724.     @KFPod3 Char(1) = Null,
  135725.     @KFPod4 Char(1) = Null,
  135726.     @KFPod5 Char(1) = Null,
  135727.     @KFPod6 Char(1) = Null,
  135728.     @KFPod7 Char(1) = Null,
  135729.     @TipKup Varchar(200) = Null,
  135730.     @Sifra_Nivo Char(2) = Null,
  135731.     @Sifra_Tip Smallint = Null,
  135732.     @Koi_Gradovi varchar(200) = Null,
  135733.     @Koi_Regioni varchar(200) = Null,    
  135734.     @Datum_Od Smalldatetime = Null,
  135735.     @Datum_Do Smalldatetime = Null,
  135736.     @Sifra_Brand Smallint = Null,
  135737.     @Sifra_Kup_Od Char(6) = Null,
  135738.     @Sifra_Kup_Do Char(6) = Null,
  135739.     @Kto Char(6) = Null,
  135740.     @Sifra_Gr Char(3) = Null,
  135741.     @Sifra_Podg Char(6) = Null,
  135742.     @Lokacija Varchar(10) = Null,
  135743.     @Sifra_Art_Od    varchar(20) = Null,
  135744.     @Sifra_Art_Do    varchar(20) = Null,
  135745.     @RazbijSostav    char(1) = 'N',
  135746.     @PodelArt    Varchar(2) = Null,                -- AR - Artikl,      PG - Podgrupa,     GR - Grupa,      BR - Brend,     D(1,2,3,4,5,6,7) - Podelba(1,2,3,4,5,6,7),       KT - Kto(Dobavuvac)
  135747.     @BezPodelArtKup  char(1) = 'K',                   -- A - Bez Podelba na artikli,       K - Komitenti,         ME - Mesec,    KH - Hierarhii na artikli (6 Mesta),    DI - Divizija
  135748.     @TipDokProd    VarChar(300) = Null,
  135749.     @APod1 Smallint = Null,
  135750.     @APod2 Smallint = Null,
  135751.     @APod3 Smallint = Null,
  135752.     @APod4 Smallint = Null,
  135753.     @APod5 Smallint = Null,
  135754.     @APod6 Smallint = Null,
  135755.     @APod7 Smallint = Null,
  135756.     @Sifra_VPJ Smallint = Null,
  135757.     @KoiPat Varchar(300) = Null,
  135758.     @PocnuvaSo    char(1) = 'N',        -- Se Odnesuva na podgrupite    D, N
  135759.     @KolkuMesta    smallint = 6,        -- Se Odnesuva na podgrupite    2, 3, 4, 5, 6
  135760.     @KomercKako char(1) = 'I',
  135761.     @PoKojDatum    char(1) = 'D',        -- D - Po Datum na Dokument,    V - Po Datum Na Vnes
  135762.     @Sifra_Div smallint = Null,
  135763.     @GrKup     varchar(500) = Null,
  135764.     @GrArt        varchar(500) = Null
  135765. AS
  135766.     Declare @SSQL Varchar(8000)
  135767.     Declare @SSQL1 Varchar(8000)
  135768.     Declare @SSQL2 Varchar(8000)
  135769.     Declare @SSQL3 Varchar(8000)
  135770.     Declare @SSQL4 Varchar(8000)
  135771.     Declare @SSQL5 Varchar(8000)
  135772.     create         Table #tSostav
  135773.     (    Sifra_Art Varchar(20),
  135774.         Sifra_Sur Varchar(20),
  135775.         Ima_Kolic Decimal(18,6),
  135776.         Cena Decimal(18,6),
  135777.         VkCena Decimal(18,6)
  135778.     )
  135779.     If @RazbijSostav = 'D'
  135780.         Begin
  135781.             Set @SSQL = 'Insert #tSostav
  135782.                     Select S.Sifra_Art, S.Sifra_Sur, S.Ima_Kolic, S.Cena, S.VkCena  From Sostav S 
  135783.                     Inner Join Katart K On S.Sifra_Art=K.Sifra_Art '
  135784.             Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  135785.             Exec(@SSQL)
  135786.         End
  135787.     Set @SSQL = 'Insert #tSostav
  135788.         Select K.Sifra_Art, K.Sifra_Art, 1, 1, 1
  135789.         From Katart K '
  135790.     Set @SSQL = @SSQL + 'Where K.Iskluci <> ''D'' '
  135791.     If @RazbijSostav = 'D'
  135792.         Set @SSQL = @SSQL + 'And K.Sifra_Art Not In (Select Distinct Sifra_Art From Sostav) '
  135793.     Exec(@SSQL)
  135794.  
  135795.     If @GrKup Is Not Null
  135796.     Begin
  135797.     CREATE   Table #KupObj
  135798.         (
  135799.             Sifra_Kup    char(6),
  135800.             Sifra_Obj    smallint
  135801.         )
  135802.         CREATE   Table #KupObj1
  135803.         (
  135804.             Sifra_Kup    char(6),
  135805.             Sifra_Obj    smallint
  135806.         )
  135807.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj) Select Distinct Sifra_Kup, Sifra_Obj From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Not Null '
  135808.         Exec(@SSQL)
  135809.  
  135810.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup, Sifra_Obj)
  135811.                 Select Distinct GK.Sifra_Kup, KO.Sifra_Obj 
  135812.                 From SGrKupObj GK 
  135813.                 Inner Join Kobjekti KO On GK.Sifra_Kup = KO.Sifra_Kup
  135814.                 Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Obj Is Null '
  135815.                 --Where GK.Sif_GrKup In (' + @GrKup + ') And GK.Sifra_Kup+Cast(KO.Sifra_Obj as char(4)) Not In (Select Sifra_Kup+Cast(Sifra_Obj as char(6)) From #KupObj) And GK.Sifra_Obj Is Null '
  135816.         Exec(@SSQL)
  135817.  
  135818.         Set @SSQL = ' Insert Into #KupObj1 (Sifra_Kup) Select Distinct Sifra_Kup From SGrKupObj Where Sif_GrKup In (' + @GrKup + ') And Sifra_Obj Is Null '
  135819.         Exec(@SSQL)
  135820.         INSERT INTO #KupObj SELECT DISTINCT Sifra_Kup, Sifra_Obj FROM #KupObj1
  135821.     End
  135822.  
  135823.     If @GrArt Is Not Null
  135824.     Begin
  135825.         Create Table #GrArt
  135826.         (
  135827.             Sifra_Art    varchar(20)
  135828.         )
  135829.         Create NonClustered Index IX_Art On #GrArt (Sifra_Art)
  135830.  
  135831.         Set @SSQL = 'Insert Into #GrArt Select DISTINCT Sifra_Art From SGrArt Where Sif_GrArt In (' + @GrArt + ') '
  135832.         Exec(@SSQL)
  135833.     End
  135834.  
  135835.  
  135836.     Set @Podelba = Upper(@Podelba)
  135837.     If @Podelba = 'D1'
  135838.         Set @SSQL1 = 'Select KUP.KDrugo1 Tip, KD1.Ime_1K Ime, '
  135839.     Else If @Podelba = 'D2'
  135840.         Set @SSQL1 = 'Select KUP.KDrugo2 Tip, KD2.Ime_2K Ime, '
  135841.     Else If @Podelba = 'D3'
  135842.         Set @SSQL1 = 'Select KUP.KDrugo3 Tip, KD3.Ime_3K Ime, '
  135843.     Else If @Podelba = 'D4'
  135844.         Set @SSQL1 = 'Select KUP.KDrugo4 Tip, KD4.Ime_4K Ime, '
  135845.     Else If @Podelba = 'D5'
  135846.         Set @SSQL1 = 'Select KUP.KDrugo5 Tip, KD5.Ime_5K Ime, '
  135847.     Else If @Podelba = 'D6'
  135848.         Set @SSQL1 = 'Select KUP.KDrugo6 Tip, KD6.Ime_6K Ime, '
  135849.     Else If @Podelba = 'D7'
  135850.         Set @SSQL1 = 'Select KUP.KDrugo7 Tip, KD7.Ime_7K Ime, '
  135851.     Else If @Podelba = 'TK'
  135852.         Set @SSQL1 = 'Select KUP.TipKup Tip, GT.ImeTipKup Ime, '
  135853.     Else If @Podelba = 'NI'
  135854.         Set @SSQL1 = 'Select KUP.Sifra_Nivo Tip, NI.ImeNivo Ime, '
  135855.     Else If @Podelba = 'GR'
  135856.         Set @SSQL1 = 'Select KUP.Sifra_Grad Tip, GR.ImeGrad Ime, '
  135857.     Else If @Podelba = 'RE'
  135858.         Set @SSQL1 = 'Select KUP.Sifra_Reg Tip, RE.ImeRegion Ime, '
  135859.     Else If @Podelba = 'ST'
  135860.         Set @SSQL1 = 'Select KUP.Sifra_Tip Tip, TK.ImeTip Ime, '
  135861.     Else If @Podelba = 'PT'
  135862.         Set @SSQL1 = 'Select KUP.Sifra_Pat Tip, Pat.ImePat Ime, '
  135863.     Else If @Podelba = 'PI'
  135864.         Set @SSQL1 = 'Select D.Sifra_Pat Tip, Pat.ImePat Ime, '
  135865.     Else If @Podelba = 'OE'
  135866.         Set @SSQL1 = 'Select S.Sifra_Oe Tip, Oe.ImeOrg Ime, '
  135867.     Else If @Podelba = 'KO'
  135868.         Set @SSQL1 = 'Select D.Sifra_Kup Tip, Kup.ImeKup Ime, '
  135869.     Else If @Podelba = 'VP'
  135870.         Set @SSQL1 = 'Select KUP.Sifra_Vpj Tip, VPJ.Ime_Vpj Ime, '
  135871.     Else If @Podelba = 'ME'
  135872.         Set @SSQL1 = 'Select (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)) Tip, Null Ime, '
  135873.     Else If @Podelba = 'TD'
  135874.         Set @SSQL1 = 'Select S.Sifra_Dok Tip, (Case When S.Sifra_Dok < 10 Then ''00'' When S.Sifra_Dok >=10 And S.Sifra_Dok < 100 Then ''0'' Else '''' End) + Cast(S.Sifra_Dok as varchar(6)) + '' '' + TD.ImeDok Ime, '
  135875.  
  135876.     Set @SSQL = ' TS.Sifra_Sur Sifra_art, K.ImeArt, D.Sifra_Kup, D.Sifra_Obj,
  135877.             Round(Sum(S.Kolic),4) as Kolicina
  135878.         From #tSostav TS
  135879.         Inner Join Stavr S On TS.Sifra_Art=S.Sifra_Art
  135880.         Inner Join KatArt K ON TS.Sifra_Sur=K.Sifra_Art
  135881.         Inner Join Dokr D ON S.DokrID=D.DokrID  And D.Sifra_Za=1 
  135882.         Left Outer Join Komint KUP ON D.Sifra_Kup=KUP.Sifra_Kup
  135883.         Left Outer Join KObjekti KO ON D.Sifra_obj=KO.Sifra_obj and D.Sifra_kup=KO.Sifra_kup '
  135884.     If @GrKup Is Not Null
  135885.         Set @SSQL = @SSQL + ' Inner Join #KupObj GK On GK.Sifra_Kup=D.Sifra_Kup 
  135886.                     And (Case When D.Sifra_Obj Is Not Null Then D.Sifra_Obj Else 1234 End) = (Case When GK.Sifra_Obj Is Not Null Then GK.Sifra_Obj Else 1234 End)  '
  135887.     If @GrArt Is Not Null
  135888.         Set @SSQL = @SSQL + ' Inner Join #GrArt GA On GA.Sifra_Art=K.Sifra_Art '
  135889.  
  135890.     If @Podelba = 'D1'
  135891.         Set @SSQL2 = 'Left Outer Join KDrugo1 KD1 ON KUP.KDrugo1=KD1.Sifra_1K '
  135892.     Else If @Podelba = 'D2'
  135893.         Set @SSQL2 = 'Left Outer Join KDrugo2 KD2 ON KUP.KDrugo2=KD2.Sifra_2K '
  135894.     Else If @Podelba = 'D3'
  135895.         Set @SSQL2 = 'Left Outer Join KDrugo3 KD3 ON KUP.KDrugo3=KD3.Sifra_3K '
  135896.     Else If @Podelba = 'D4'
  135897.         Set @SSQL2 = 'Left Outer Join KDrugo4 KD4 ON KUP.KDrugo4=KD4.Sifra_4K '
  135898.     Else If @Podelba = 'D5'
  135899.         Set @SSQL2 = 'Left Outer Join KDrugo5 KD5 ON KUP.KDrugo5=KD5.Sifra_5K '
  135900.     Else If @Podelba = 'D6'
  135901.         Set @SSQL2 = 'Left Outer Join KDrugo6 KD6 ON KUP.KDrugo6=KD6.Sifra_6K '
  135902.     Else If @Podelba = 'D7'
  135903.         Set @SSQL2 = 'Left Outer Join KDrugo7 KD7 ON KUP.KDrugo7=KD7.Sifra_7K '
  135904.     Else If @Podelba = 'TK'
  135905.         Set @SSQL2 = 'Left Outer Join GTipKup GT ON KUP.TipKup=GT.TipKup '
  135906.     Else If @Podelba = 'GR'
  135907.         Set @SSQL2 = 'Left Outer Join Grad GR ON KUP.Sifra_Grad=GR.Sifra_Grad '
  135908.     Else If @Podelba = 'RE'
  135909.         Set @SSQL2 = 'Left Outer Join GREGION RE ON KUP.Sifra_Reg=RE.Sifra_Reg '
  135910.     Else If @Podelba = 'NI'
  135911.         Set @SSQL2 = 'Left Outer Join NIVO NI ON KUP.Sifra_Nivo=NI.Sifra_Nivo '
  135912.     Else If @Podelba = 'ST'
  135913.         Set @SSQL2 = 'Left Outer Join TipKomint TK ON KUP.Sifra_Tip=TK.Sifra_Tip '
  135914.     Else If @Podelba = 'PT'
  135915.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON KUP.Sifra_Pat=Pat.Sifra_Pat '
  135916.     Else If @Podelba = 'PI'
  135917.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON D.Sifra_Pat=Pat.Sifra_Pat '
  135918.     Else If @Podelba = 'OE'
  135919.         Set @SSQL2 = 'Left Outer Join Orged OE ON Oe.Sifra_Oe=S.Sifra_Oe '
  135920.     Else If @Podelba = 'VP'
  135921.         Set @SSQL2 = 'Left Outer Join VidProdObj VPJ On VPJ.Sifra_Vpj=Kup.Sifra_Vpj '
  135922.     Else If @Podelba = 'TD'
  135923.         Set @SSQL2 = 'Left Outer Join TipDok TD ON TD.Sifra_Dok=S.Sifra_Dok '
  135924.     Set @SSQL3 = ''
  135925.     If @Sifra_Gr Is Not Null
  135926.         Set @SSQL3 = @SSQL3 + 'Inner Join PodGrupi P ON K.Sifra_Podg=P.Sifra_Podg '
  135927.     Set @SSQL3 = @SSQL3 + 'Where K.Iskluci <> ''D'' '
  135928.     If @Sifra_Art_Od Is Not NULL        --POSLE OVDE PROSIRI KAKO STO E ZA GRADOVI, REGIONI
  135929.         Set @SSQL3 = @SSQL3 + ' And K.Sifra_Art >=''' + @Sifra_Art_Od + ''' '
  135930.     If @Sifra_Art_Do Is Not NULL
  135931.         Set @SSQL3 = @SSQL3 + ' And K.Sifra_Art <=''' + @Sifra_Art_Do + ''' '
  135932.     If @TipKup Is Not NULL
  135933.         Set @SSQL3 = @SSQL3 + ' And KUP.TipKup In (' + @TipKup + ') '
  135934.     If @TipDokProd is not null
  135935.         Set @SSQL3 = @SSQL3 + ' And S.Sifra_Dok IN (' + @TipDokProd + ') '
  135936.     If @Pod1 Is Not NULL
  135937.         If @KFPod1 = 'D'
  135938.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ')
  135939.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 <> ' + Cast(@Pod1 As Varchar(6)) + ') Or (KO.KDrugo1 Is Null And Kup.KDrugo1 Is Null)) '
  135940.         Else
  135941.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo1 Is Not Null And KO.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')
  135942.                           Or (KO.KDrugo1 Is Null And Kup.KDrugo1 = ' + Cast(@Pod1 As Varchar(6)) + ')) '
  135943.     If @Pod2 Is Not NULL
  135944.         If @KFPod2 = 'D'
  135945.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ')
  135946.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 <> ' + Cast(@Pod2 As Varchar(6)) + ') Or (KO.KDrugo2 Is Null And Kup.KDrugo2 Is Null)) '
  135947.         Else
  135948.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo2 Is Not Null And KO.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')
  135949.                           Or (KO.KDrugo2 Is Null And Kup.KDrugo2 = ' + Cast(@Pod2 As Varchar(6)) + ')) '
  135950.     If @Pod3 Is Not NULL
  135951.         If @KFPod3 = 'D'
  135952.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ')
  135953.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 <> ' + Cast(@Pod3 As Varchar(6)) + ') Or (KO.KDrugo3 Is Null And Kup.KDrugo3 Is Null)) '
  135954.         Else
  135955.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo3 Is Not Null And KO.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')
  135956.                           Or (KO.KDrugo3 Is Null And Kup.KDrugo3 = ' + Cast(@Pod3 As Varchar(6)) + ')) '
  135957.     If @Pod4 Is Not NULL
  135958.         If @KFPod4 = 'D'
  135959.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ')
  135960.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 <> ' + Cast(@Pod4 As Varchar(6)) + ') Or (KO.KDrugo4 Is Null And Kup.KDrugo4 Is Null)) '
  135961.         Else
  135962.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo4 Is Not Null And KO.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')
  135963.                           Or (KO.KDrugo4 Is Null And Kup.KDrugo4 = ' + Cast(@Pod4 As Varchar(6)) + ')) '
  135964.     If @Pod5 Is Not NULL
  135965.         If @KFPod5 = 'D'
  135966.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ')
  135967.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 <> ' + Cast(@Pod5 As Varchar(6)) + ') Or (KO.KDrugo5 Is Null And Kup.KDrugo5 Is Null)) '
  135968.         Else
  135969.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo5 Is Not Null And KO.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')
  135970.                           Or (KO.KDrugo5 Is Null And Kup.KDrugo5 = ' + Cast(@Pod5 As Varchar(6)) + ')) '
  135971.     If @Pod6 Is Not NULL
  135972.         If @KFPod6 = 'D'
  135973.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ')
  135974.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 <> ' + Cast(@Pod6 As Varchar(6)) + ') Or (KO.KDrugo6 Is Null And Kup.KDrugo6 Is Null)) '
  135975.         Else
  135976.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo6 Is Not Null And KO.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')
  135977.                           Or (KO.KDrugo6 Is Null And Kup.KDrugo6 = ' + Cast(@Pod6 As Varchar(6)) + ')) '
  135978.     If @Pod7 Is Not NULL
  135979.         If @KFPod7 = 'D'
  135980.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ')
  135981.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 <> ' + Cast(@Pod7 As Varchar(6)) + ') Or (KO.KDrugo7 Is Null And Kup.KDrugo7 Is Null)) '
  135982.         Else
  135983.             Set @SSQL3 = @SSQL3 + ' And ((KO.KDrugo7 Is Not Null And KO.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')
  135984.                           Or (KO.KDrugo7 Is Null And Kup.KDrugo7 = ' + Cast(@Pod7 As Varchar(6)) + ')) '
  135985.     If @Sifra_Tip Is Not NULL
  135986.         Set @SSQL3 = @SSQL3 + ' And Kup.Sifra_Tip = ' + Cast(@Sifra_Tip As Varchar(6)) + ' '
  135987.     If @Sifra_VPJ Is Not NULL
  135988.            Begin
  135989.         Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_VPJ Is Not Null And KO.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(6)) + ')
  135990.                       Or (KO.Sifra_VPJ Is Null And Kup.Sifra_VPJ = ' + Cast(@Sifra_VPJ As Varchar(6)) + ')) '
  135991.            End
  135992.     If @Sifra_Nivo Is Not NULL
  135993.         Set @SSQL3 = @SSQL3 + ' And KUP.Sifra_Nivo=''' + @Sifra_Nivo + ''' '
  135994.     If @Lokacija Is Not NULL
  135995.         Set @SSQL3 = @SSQL3 + ' And K.Lokacija=''' + @Lokacija + ''' '
  135996.     If @Kto Is Not NULL
  135997.         Set @SSQL3 = @SSQL3 + ' And K.Kto=' + @Kto + ' '
  135998.     If @Sifra_Podg Is Not Null
  135999.         If @PocnuvaSo = 'D'
  136000.             Set @SSQL3 = @SSQL3 + ' And K.Sifra_Podg Like ''' + Rtrim(@Sifra_Podg) + '%'' '
  136001.         Else 
  136002.             Set @SSQL3 = @SSQL3 + ' And K.Sifra_Podg=' + @Sifra_Podg + ' '
  136003.     If @Sifra_Gr Is Not NULL
  136004.         Set @SSQL3 = @SSQL3 + ' And P.Sifra_Gr=' + @Sifra_Gr + ' '
  136005.     If @PoKojDatum = 'V'
  136006.     Begin
  136007.         If @Datum_Od Is Not NULL
  136008.             Set @SSQL3 = @SSQL3 + ' And D.Datum_Vnes>=''' + Cast(@Datum_Od As Varchar(30)) + ''' '
  136009.         If @Datum_Do Is Not NULL
  136010.             Set @SSQL3 = @SSQL3 + ' And D.Datum_Vnes<''' + Cast(@Datum_Do + 1 As Varchar(30)) + ''' '
  136011.     End
  136012.     Else 
  136013.     Begin
  136014.         If @Datum_Od Is Not NULL
  136015.             Set @SSQL3 = @SSQL3 + ' And S.Datum_Dok>=''' + cast(@Datum_Od As Varchar(30)) + ''' '
  136016.         If @Datum_Do Is Not NULL
  136017.             Set @SSQL3 = @SSQL3 + ' And S.Datum_Dok<=''' + Cast(@Datum_Do As Varchar(30)) + ''' '
  136018.     End
  136019. --    If @Datum_Od Is NOT Null
  136020. --        Set @SSQL3 = @SSQL3 + ' AND S.Datum_Dok >=''' + Cast(@Datum_Od As Varchar(35))+ ''' '
  136021. --    If @Datum_Do Is NOT Null
  136022. --        Set @SSQL3 = @SSQL3 + ' AND S.Datum_Dok <=''' + Cast(@Datum_Do As Varchar(35))+ ''' '
  136023.     If @Sifra_Kup_Od Is Not NULL
  136024.         Set @SSQL3 = @SSQL3 + ' And D.Sifra_Kup>=' + Cast(@Sifra_Kup_Od As Varchar(6)) + ' '
  136025.     If @Sifra_Kup_Do Is Not NULL
  136026.         Set @SSQL3 = @SSQL3 + ' And D.Sifra_Kup<=' + Cast(@Sifra_Kup_Do As Varchar(6)) + ' '
  136027.     If @Sifra_Brand Is Not NULL
  136028.         Set @SSQL3 = @SSQL3 + 'And K.Sifra_Drg=''' + Cast(@Sifra_Brand As Varchar(5)) + ''' '
  136029.     If @APod1 Is Not NULL
  136030.         Set @SSQL3 = @SSQL3 + 'And K.Drugo1=' + Cast(@APod1 As Varchar(5)) + ' '
  136031.     If @APod2 Is Not NULL
  136032.         Set @SSQL3 = @SSQL3 + 'And K.Drugo2=' + Cast(@APod2 As Varchar(5)) + ' '
  136033.     If @APod3 Is Not NULL
  136034.         Set @SSQL3 = @SSQL3 + 'And K.Drugo3=' + Cast(@APod3 As Varchar(5)) + ' '
  136035.     If @APod4 Is Not NULL
  136036.         Set @SSQL3 = @SSQL3 + 'And K.Drugo4=' + Cast(@APod4 As Varchar(5)) + ' '
  136037.     If @APod5 Is Not NULL
  136038.         Set @SSQL3 = @SSQL3 + 'And K.Drugo5=' + Cast(@APod5 As Varchar(5)) + ' '
  136039.     If @APod6 Is Not NULL
  136040.         Set @SSQL3 = @SSQL3 + 'And K.Drugo6=' + Cast(@APod6 As Varchar(5)) + ' '
  136041.     If @APod7 Is Not NULL
  136042.         Set @SSQL3 = @SSQL3 + 'And K.Drugo7=' + Cast(@APod7 As Varchar(5)) + ' '
  136043.     If @Sifra_Div Is Not NULL
  136044.         Set @SSQL3 = @SSQL3 + 'And K.Sifra_Div=' + Cast(@Sifra_Div As Varchar(5)) + ' '
  136045.     If @Sifra_OE Is Not NULL    
  136046.         Set @SSQL3  = @SSQL3 + ' And S.Sifra_OE=' + Cast(@Sifra_OE As Varchar(5)) + ' '
  136047.     If @KoiOE Is Not NULL
  136048.              Set @SSQL3 = @SSQL3 + ' And S.Sifra_OE IN (' + @KoiOE + ') '
  136049.     If @Koi_Gradovi Is Not NULL    
  136050.         Begin
  136051.             Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_Grad Is Not Null And KO.Sifra_Grad In (' + @Koi_Gradovi + ')) 
  136052.             OR ( KO.Sifra_Grad Is Null and KUP.Sifra_Grad In ( ' + @Koi_Gradovi + '))) '     
  136053.         End
  136054.     If @Koi_Regioni Is Not NULL    
  136055.         Begin
  136056.             Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_Reg Is Not Null And KO.Sifra_Reg In (' + @Koi_Regioni + ')) 
  136057.             OR ( KO.Sifra_Reg Is Null and KUP.Sifra_Reg In ( ' + @Koi_Regioni + '))) '     
  136058.         End
  136059.        If @KomercKako = 'I'
  136060.         If @KoiPat IS NOT NULL
  136061.             SET @SSQL3 = @SSQL3 + ' AND D.Sifra_Pat In (' + @KoiPat + ') '
  136062.        If @KomercKako = 'T'
  136063.         If @KoiPat IS NOT NULL
  136064.             Set @SSQL3 = @SSQL3 + ' And ((KO.Sifra_Pat Is Not Null And KO.Sifra_Pat In (' + @KoiPat + ')) 
  136065.                             OR ( KO.Sifra_Pat Is Null and KUP.Sifra_Pat In (' + @KoiPat + '))) '
  136066.     If @Podelba = 'D1'
  136067.         Set @SSQL4 = 'Group By KUP.KDrugo1, KD1.Ime_1k, '
  136068.     Else If @Podelba = 'D2'
  136069.         Set @SSQL4 = 'Group By KUP.KDrugo2, KD2.Ime_2K, '
  136070.     Else If @Podelba = 'D3'
  136071.         Set @SSQL4 = 'Group By KUP.KDrugo3, KD3.Ime_3K, '
  136072.     Else If @Podelba = 'D4'
  136073.         Set @SSQL4 = 'Group By KUP.KDrugo4, KD4.Ime_4K, '
  136074.     Else If @Podelba = 'D5'
  136075.         Set @SSQL4 = 'Group By KUP.KDrugo5, KD5.Ime_5K, '
  136076.     Else If @Podelba = 'D6'
  136077.         Set @SSQL4 = 'Group By KUP.KDrugo6, KD6.Ime_6K, '
  136078.     Else If @Podelba = 'D7'
  136079.         Set @SSQL4 = 'Group By KUP.KDrugo7, KD7.Ime_7K, '
  136080.     Else If @Podelba = 'TK'
  136081.         Set @SSQL4 = 'Group By KUP.TipKup, GT.ImeTipKup, '
  136082.     Else If @Podelba = 'NI'
  136083.         Set @SSQL4 = 'Group By KUP.Sifra_Nivo, NI.ImeNivo, '
  136084.     Else If @Podelba = 'GR'
  136085.         Set @SSQL4 = 'Group By KUP.Sifra_Grad, GR.ImeGrad, '
  136086.     Else If @Podelba = 'RE'
  136087.         Set @SSQL4 = 'Group By KUP.Sifra_Reg, RE.ImeRegion, '
  136088.     Else If @Podelba = 'ST'
  136089.         Set @SSQL4 = 'Group By KUP.Sifra_Tip, TK.ImeTip, '
  136090.     Else If @Podelba = 'PT'
  136091.         Set @SSQL4 = 'Group By KUP.Sifra_Pat, Pat.ImePat, '
  136092.     Else If @Podelba = 'PI'
  136093.         Set @SSQL4 = 'Group By D.Sifra_Pat, Pat.ImePat, '
  136094.     Else If @Podelba = 'OE'
  136095.         Set @SSQL4 = 'Group By S.Sifra_Oe, Oe.ImeOrg, '
  136096.     Else If @Podelba = 'KO'
  136097.         Set @SSQL4 = 'Group By D.Sifra_Kup, Kup.ImeKup, '
  136098.     Else If @Podelba = 'VP'
  136099.         Set @SSQL4 = 'Group By KUP.Sifra_Vpj, VPJ.Ime_Vpj, '
  136100.     Else If @Podelba = 'ME'
  136101.         Set @SSQL4 = 'Group By (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)), '
  136102.     Else If @Podelba = 'TD'
  136103.         Set @SSQL4 = 'Group By S.Sifra_Dok, TD.ImeDok, '
  136104.     Set @SSQL5 = ' TS.Sifra_Sur, K.ImeArt, D.Sifra_Kup, D.Sifra_Obj '
  136105.  
  136106.     Create Table #Rezultati 
  136107.     (
  136108.     Tip         varchar(20),
  136109.     Ime        varchar(40),
  136110.     Sifra_Art    varchar(20),
  136111.     ImeArt        char(40),
  136112.     Sifra_Kup    char(6),
  136113.     Sifra_Obj    smallint,
  136114.     Kolicina        decimal(18,6)
  136115.     )
  136116.     Insert Into #Rezultati(Tip, Ime, Sifra_Art, ImeArt, Sifra_Kup, Sifra_Obj, Kolicina)
  136117.     Exec(@SSQL1+@SSQL+@SSQL2+@SSQL3+' And D.Sifra_Obj IS NULL '+@SSQL4+@SSQL5)
  136118. ---///////   Zatoa sto filterot po podelbi na komitenti i objekti gleda i od komintenti i od objekti sledniot del od procedurata moze da otpadne
  136119. --///////   ----------------------------------------------------------------------------- 19.07.2004
  136120. --///////  Ne moze da otpadne zatoa sto vo toj slucaj podelbite na objektite ke se zemaat samo od Komintentot a ne od podobjektot -------  16.09.2004
  136121.     If @Podelba = 'D1'
  136122.         Set @SSQL1 = 'Select KO.KDrugo1 Tip, KD1.Ime_1K Ime, '
  136123.     Else If @Podelba = 'D2'
  136124.         Set @SSQL1 = 'Select KO.KDrugo2 Tip, KD2.Ime_2K Ime, '
  136125.     Else If @Podelba = 'D3'
  136126.         Set @SSQL1 = 'Select KO.KDrugo3 Tip, KD3.Ime_3K Ime, '
  136127.     Else If @Podelba = 'D4'
  136128.         Set @SSQL1 = 'Select KO.KDrugo4 Tip, KD4.Ime_4K Ime, '
  136129.     Else If @Podelba = 'D5'
  136130.         Set @SSQL1 = 'Select KO.KDrugo5 Tip, KD5.Ime_5K Ime, '
  136131.     Else If @Podelba = 'D6'
  136132.         Set @SSQL1 = 'Select KO.KDrugo6 Tip, KD6.Ime_6K Ime, '
  136133.     Else If @Podelba = 'D7'
  136134.         Set @SSQL1 = 'Select KO.KDrugo7 Tip, KD7.Ime_7K Ime, '
  136135.     Else If @Podelba = 'TK'
  136136.         Set @SSQL1 = 'Select KO.TipKup Tip, GT.ImeTipKup Ime, '
  136137.     Else If @Podelba = 'NI'
  136138.         Set @SSQL1 = 'Select KO.Sifra_Nivo Tip, NI.ImeNivo Ime, '
  136139.     Else If @Podelba = 'GR'
  136140.         Set @SSQL1 = 'Select KO.Sifra_Grad Tip, GR.ImeGrad Ime, '
  136141.     Else If @Podelba = 'RE'
  136142.         Set @SSQL1 = 'Select KO.Sifra_Reg Tip, RE.ImeRegion Ime, '
  136143. --    Else If @Podelba = 'ST'
  136144. --        Set @SSQL1 = 'Select KO.Sifra_Tip Tip, TK.ImeTip Ime, '
  136145.     Else If @Podelba = 'ST'
  136146.         Set @SSQL1 = 'Select Kup.Sifra_Tip Tip, TK.ImeTip Ime, '
  136147.     Else If @Podelba = 'PT'
  136148.         Set @SSQL1 = 'Select KO.Sifra_Pat Tip, Pat.ImePat Ime, '
  136149.     Else If @Podelba = 'PI'
  136150.         Set @SSQL1 = 'Select D.Sifra_Pat Tip, Pat.ImePat Ime, '
  136151.     Else If @Podelba = 'OE'
  136152.         Set @SSQL1 = 'Select S.Sifra_Oe Tip, Oe.ImeOrg Ime, '
  136153.     Else If @Podelba = 'KO'
  136154.         Set @SSQL1 = 'Select D.Sifra_Kup Tip, Kup.ImeKup Ime, '
  136155.     Else If @Podelba = 'VP'
  136156.         Set @SSQL1 = 'Select KO.Sifra_Vpj Tip, VPJ.Ime_Vpj Ime, '
  136157.     Else If @Podelba = 'ME'
  136158.         Set @SSQL1 = 'Select (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)) Tip, Null as Ime, '
  136159.     Else If @Podelba = 'TD'
  136160.         Set @SSQL1 = 'Select S.Sifra_Dok Tip, (Case When S.Sifra_Dok < 10 Then ''00'' When S.Sifra_Dok >=10 And S.Sifra_Dok < 100 Then ''0'' Else '''' End) + Cast(S.Sifra_Dok as varchar(6)) + '' '' + TD.ImeDok Ime, '
  136161.     If @Podelba = 'D1'
  136162.         Set @SSQL2 = 'Left Outer Join KDrugo1 KD1 ON KO.KDrugo1=KD1.Sifra_1K '
  136163.     Else If @Podelba = 'D2'
  136164.         Set @SSQL2 = 'Left Outer Join KDrugo2 KD2 ON KO.KDrugo2=KD2.Sifra_2K '
  136165.     Else If @Podelba = 'D3'
  136166.         Set @SSQL2 = 'Left Outer Join KDrugo3 KD3 ON KO.KDrugo3=KD3.Sifra_3K '
  136167.     Else If @Podelba = 'D4'
  136168.         Set @SSQL2 = 'Left Outer Join KDrugo4 KD4 ON KO.KDrugo4=KD4.Sifra_4K '
  136169.     Else If @Podelba = 'D5'
  136170.         Set @SSQL2 = 'Left Outer Join KDrugo5 KD5 ON KO.KDrugo5=KD5.Sifra_5K '
  136171.     Else If @Podelba = 'D6'
  136172.         Set @SSQL2 = 'Left Outer Join KDrugo6 KD6 ON KO.KDrugo6=KD6.Sifra_6K '
  136173.     Else If @Podelba = 'D7'
  136174.         Set @SSQL2 = 'Left Outer Join KDrugo7 KD7 ON KO.KDrugo7=KD7.Sifra_7K '
  136175.     Else If @Podelba = 'TK'
  136176.         Set @SSQL2 = 'Left Outer Join GTipKup GT ON KO.TipKup=GT.TipKup '
  136177.     Else If @Podelba = 'GR'
  136178.         Set @SSQL2 = 'Left Outer Join Grad GR ON KO.Sifra_Grad=GR.Sifra_Grad '
  136179.     Else If @Podelba = 'RE'
  136180.         Set @SSQL2 = 'Left Outer Join GREGION RE ON KO.Sifra_Reg=RE.Sifra_Reg '
  136181.     Else If @Podelba = 'NI'
  136182.         Set @SSQL2 = 'Left Outer Join NIVO NI ON KO.Sifra_Nivo=NI.Sifra_Nivo '
  136183.     Else If @Podelba = 'ST'
  136184.         Set @SSQL2 = 'Left Outer Join TipKomint TK ON Kup.Sifra_Tip=TK.Sifra_Tip '
  136185. --    Else If @Podelba = 'ST'
  136186. --        Set @SSQL2 = 'Left Outer Join TipKomint TK ON KO.Sifra_Tip=TK.Sifra_Tip '
  136187.     Else If @Podelba = 'PT'
  136188.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON KO.Sifra_Pat=Pat.Sifra_Pat '
  136189.     Else If @Podelba = 'PI'
  136190.         Set @SSQL2 = 'Left Outer Join Patnici Pat ON D.Sifra_Pat=Pat.Sifra_Pat '
  136191.     Else If @Podelba = 'OE'
  136192.         Set @SSQL2 = 'Left Outer Join Orged OE ON OE.Sifra_Oe=S.Sifra_Oe '
  136193.     Else If @Podelba = 'VP'
  136194.         Set @SSQL2 = 'Left Outer Join VidProdObj VPJ ON KO.Sifra_Vpj=VPJ.Sifra_Vpj '
  136195.     Else If @Podelba = 'TD'
  136196.         Set @SSQL2 = 'Left Outer Join TipDok TD ON TD.Sifra_Dok=S.Sifra_Dok '
  136197.     If @Podelba = 'D1'
  136198.         Set @SSQL4 = 'Group By KO.KDrugo1, KD1.Ime_1k, '
  136199.     Else If @Podelba = 'D2'
  136200.         Set @SSQL4 = 'Group By KO.KDrugo2, KD2.Ime_2K, '
  136201.     Else If @Podelba = 'D3'
  136202.         Set @SSQL4 = 'Group By KO.KDrugo3, KD3.Ime_3K, '
  136203.     Else If @Podelba = 'D4'
  136204.         Set @SSQL4 = 'Group By KO.KDrugo4, KD4.Ime_4K, '
  136205.     Else If @Podelba = 'D5'
  136206.         Set @SSQL4 = 'Group By KO.KDrugo5, KD5.Ime_5K, '
  136207.     Else If @Podelba = 'D6'
  136208.         Set @SSQL4 = 'Group By KO.KDrugo6, KD6.Ime_6K, '
  136209.     Else If @Podelba = 'D7'
  136210.         Set @SSQL4 = 'Group By KO.KDrugo7, KD7.Ime_7K, '
  136211.     Else If @Podelba = 'TK'
  136212.         Set @SSQL4 = 'Group By KO.TipKup, GT.ImeTipKup, '
  136213.     Else If @Podelba = 'NI'
  136214.         Set @SSQL4 = 'Group By KO.Sifra_Nivo, NI.ImeNivo, '
  136215.     Else If @Podelba = 'GR'
  136216.         Set @SSQL4 = 'Group By KO.Sifra_Grad, GR.ImeGrad, '
  136217.     Else If @Podelba = 'RE'
  136218.         Set @SSQL4 = 'Group By KO.Sifra_Reg, RE.ImeRegion, '
  136219. --    Else If @Podelba = 'ST'
  136220. --        Set @SSQL4 = 'Group By KO.Sifra_Tip, TK.ImeTip, '
  136221.     Else If @Podelba = 'ST'
  136222.         Set @SSQL4 = 'Group By Kup.Sifra_Tip, TK.ImeTip, '
  136223.     Else If @Podelba = 'PT'
  136224.         Set @SSQL4 = 'Group By KO.Sifra_Pat, Pat.ImePat, '
  136225.     Else If @Podelba = 'PI'
  136226.         Set @SSQL4 = 'Group By D.Sifra_Pat, Pat.ImePat, '
  136227.     Else If @Podelba = 'OE'
  136228.         Set @SSQL4 = 'Group By S.Sifra_Oe, Oe.ImeOrg, '
  136229.     Else If @Podelba = 'KO'
  136230.         Set @SSQL4 = 'Group By D.Sifra_Kup, Kup.ImeKup, '
  136231.     Else If @Podelba = 'VP'
  136232.         Set @SSQL4 = 'Group By KO.Sifra_Vpj, VPJ.Ime_Vpj, '
  136233.     Else If @Podelba = 'ME'
  136234.         Set @SSQL4 = 'Group By (Case When Month(D.Datum_Dok) < 10 Then ''0'' Else '''' End) + Cast(Month(D.Datum_Dok) as varchar(2)) + ''/'' + Cast(Year(D.Datum_Dok) as varchar(4)), '
  136235.     Else If @Podelba = 'TD'
  136236.         Set @SSQL4 = 'Group By S.Sifra_Dok, TD.ImeDok, '